Difference between revisions of "Bower"
From OpenEMR Project Wiki
Bradymiller (talk | contribs) |
Bradymiller (talk | contribs) |
||
Line 47: | Line 47: | ||
=Current Assets= | =Current Assets= | ||
===AnythingSlider-1-9-4 (pending Ray's optho form)=== | ===AnythingSlider-1-9-4 (pending Ray's optho form)=== | ||
===bootstrap-3-3-4 (pending Ray's optho form)=== | ===bootstrap-3-3-4 (pending Ray's optho form)=== | ||
===bootstrap-rtl-3-3-4=== | ===bootstrap-rtl-3-3-4=== | ||
===Chart.js-2-1-3 (pending Ray's optho form)=== | ===Chart.js-2-1-3 (pending Ray's optho form)=== | ||
===datatables.net-1-10-11=== | ===datatables.net-1-10-11=== | ||
===datatables.net-jqui-1-10-11=== | ===datatables.net-jqui-1-10-11=== | ||
:*This is the jquery-ui styling for datatables-1-10-11. | :*This is the jquery-ui styling for datatables-1-10-11. | ||
===datatables.net-scroller-1-4-1=== | ===datatables.net-scroller-1-4-1=== | ||
:*This is an extension for datatables-1-10-11. | :*This is an extension for datatables-1-10-11. | ||
Line 63: | Line 58: | ||
:*This is the jquery-ui styling for datatables.net-scroller-1-4-1. | :*This is the jquery-ui styling for datatables.net-scroller-1-4-1. | ||
===font-awesome-4-6-3=== | ===font-awesome-4-6-3=== | ||
===jquery.gritter-1-7-4=== | ===jquery.gritter-1-7-4=== | ||
===jquery-min-*=== | ===jquery-min-*=== | ||
:*Contain the jquery library files. This is brought in via bower by direct html download since the old versions are not available in repo (need to be built) and only 1 file is needed for these numerous different versions of jquery. | :*Contain the jquery library files. This is brought in via bower by direct html download since the old versions are not available in repo (need to be built) and only 1 file is needed for these numerous different versions of jquery. | ||
:*jquery-min-1-10-2 is used by datatables.net-1-10-11 | :*jquery-min-1-10-2 is used by datatables.net-1-10-11 | ||
:*jquery-min-1-11-1 will be used by Ray's eye form | :*jquery-min-1-11-1 will be used by Ray's eye form | ||
===jquery-modern-blink-0-1-3=== | ===jquery-modern-blink-0-1-3=== | ||
===jquery-panelslider-0-1-1 (pending Ray's optho form)=== | ===jquery-panelslider-0-1-1 (pending Ray's optho form)=== | ||
===jquery-ui-1-10-4=== | ===jquery-ui-1-10-4=== | ||
===jquery-ui-1-11-4 (pending Ray's optho form)=== | ===jquery-ui-1-11-4 (pending Ray's optho form)=== | ||
===jscolor-1-4-5=== | ===jscolor-1-4-5=== | ||
===knockout-3-4-0=== | ===knockout-3-4-0=== | ||
===literallycanvas-0-4-13=== | ===literallycanvas-0-4-13=== | ||
===moment-2-13-0=== | ===moment-2-13-0=== | ||
===numeral-1-5-3 (requested by Matrix, but not used yet)=== | ===numeral-1-5-3 (requested by Matrix, but not used yet)=== | ||
===pure-0-5-0 (pending Ray's optho form)=== | ===pure-0-5-0 (pending Ray's optho form)=== | ||
===qtip2-2-2-1 (pending Ray's optho form)=== | ===qtip2-2-2-1 (pending Ray's optho form)=== | ||
Line 98: | Line 78: | ||
:*Not supported by bower, so brought in manually to the ''manual-added-packages'' sub-directory. | :*Not supported by bower, so brought in manually to the ''manual-added-packages'' sub-directory. | ||
:*In future, can likely bring this in via bower via http method. | :*In future, can likely bring this in via bower via http method. | ||
===typicons-2-0-7=== | ===typicons-2-0-7=== | ||
===undone.js-0-0-1 (pending Ray's optho form)=== | ===undone.js-0-0-1 (pending Ray's optho form)=== | ||
===validate.js-0-10-0 (requested by Matrix, but not used yet)=== | ===validate.js-0-10-0 (requested by Matrix, but not used yet)=== | ||
Revision as of 09:43, 12 September 2016
Overview
End Goals
- Centralize and organize all front-end assets in one flexible path (ie. can move entire path to the assets without breaking scripts).
- Use bower to collect and organize the front-end assets.
- Migrate all the front-end assets(of which there are multiple versions of many of the front-end assets) to most current version.
- Ability to install all front assets via bower (if ever decide to not include them in the codebase).
- Centralize and organize all front-end assets in one flexible path (ie. can move entire path to the assets without breaking scripts).
More Details
- Assets that are collected via bower are stored at public/assets; note this location is flexible since we are not sure where we will be storing these in the future as migrate to MVC architecture.
- The path is set to a global ($GLOBALS['assets_static_relative']) here in the codebase(so the path will be easy to change in the future) and also would need to be changed in the .bowerrc file):
- https://github.com/openemr/openemr/commit/b63b0da6a5eae6f8051234bff104a06cb37db167
- (also see above commit for a example on using the global/path)
- Incorporating the versions in the paths of the libraries.
ignoredDependencies setting in .bowerrc file.
- Using "ignoredDependencies" in .bowerrc file to ignore sub-dependencies which makes things messy(would bring in paths without versions of which would be a redundant library).
- bootstrap
- datatables
- datatables.net-jqui
- datatables.net-scroller
- datatables.net
- jquery
- imagesloaded
- react
scripts that required hard-coded path to the assets
- These are scripts where was unable to use the globals path for the assets directory(thus if move the assets directory, then would need to adjust these scripts).
- acknowledge_license_cert.html
Add New Asset
Bower Method (preferred)
- Add entry to the bower.json file.
- 'bower install' command
- Remove .gitignore and .gitattributes files(if they are present) from the installed package.
- Remove test scripts or anything that may cause a vulnerability (such as example scripts that allow file uploading; note this is very unlikely to be the case, but good to check).
- Add to below list of assets (and document there if removed any files).
Manual Method (only if bower method is not supported by package)
- If there is no bower support and package is not a supported git repo, then will need to bring in manually into the manual-added-packages sub-directory. See below shortcut.js-2-01-B asset for example.
- Remove .gitignore and .gitattributes files(if they are present) from the installed package.
- Remove test scripts or anything that may cause a vulnerability (such as example scripts that allow file uploading; note this is very unlikely to be the case, but good to check).
- Add to below list of assets (and document there if removed any files).
Current Assets
AnythingSlider-1-9-4 (pending Ray's optho form)
bootstrap-3-3-4 (pending Ray's optho form)
bootstrap-rtl-3-3-4
Chart.js-2-1-3 (pending Ray's optho form)
datatables.net-1-10-11
datatables.net-jqui-1-10-11
- This is the jquery-ui styling for datatables-1-10-11.
datatables.net-scroller-1-4-1
- This is an extension for datatables-1-10-11.
datatables.net-scroller-jqui-1-4-1
- This is the jquery-ui styling for datatables.net-scroller-1-4-1.
font-awesome-4-6-3
jquery.gritter-1-7-4
jquery-min-*
- Contain the jquery library files. This is brought in via bower by direct html download since the old versions are not available in repo (need to be built) and only 1 file is needed for these numerous different versions of jquery.
- jquery-min-1-10-2 is used by datatables.net-1-10-11
- jquery-min-1-11-1 will be used by Ray's eye form
jquery-modern-blink-0-1-3
jquery-panelslider-0-1-1 (pending Ray's optho form)
jquery-ui-1-10-4
jquery-ui-1-11-4 (pending Ray's optho form)
jscolor-1-4-5
knockout-3-4-0
literallycanvas-0-4-13
moment-2-13-0
numeral-1-5-3 (requested by Matrix, but not used yet)
pure-0-5-0 (pending Ray's optho form)
qtip2-2-2-1 (pending Ray's optho form)
react-15-1-0
shortcut.js-2-01-B (pending Ray's optho form)
- Not supported by bower, so brought in manually to the manual-added-packages sub-directory.
- In future, can likely bring this in via bower via http method.
typicons-2-0-7
undone.js-0-0-1 (pending Ray's optho form)
validate.js-0-10-0 (requested by Matrix, but not used yet)
Questions
- Development is ongoing for this project:
- Ideal directory for this stuff (this is why we have made it flexible so can easily change this in the future)
- Ideal syntax of the bower openemr package