patternfly-sass 0.0.0.pre.semantically.pre.released
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CODE_OF_CONDUCT.md +4 -0
- data/LICENSE.txt +205 -0
- data/OPEN_SOURCE_LICENCES.txt +1366 -0
- data/QUICKSTART.md +210 -0
- data/README.md +438 -0
- data/dist/fonts/FontAwesome.otf +0 -0
- data/dist/fonts/OpenSans-Bold-webfont.eot +0 -0
- data/dist/fonts/OpenSans-Bold-webfont.svg +19028 -0
- data/dist/fonts/OpenSans-Bold-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-Bold-webfont.woff +0 -0
- data/dist/fonts/OpenSans-Bold-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
- data/dist/fonts/OpenSans-BoldItalic-webfont.svg +19036 -0
- data/dist/fonts/OpenSans-BoldItalic-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
- data/dist/fonts/OpenSans-BoldItalic-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-ExtraBold-webfont.eot +0 -0
- data/dist/fonts/OpenSans-ExtraBold-webfont.svg +19030 -0
- data/dist/fonts/OpenSans-ExtraBold-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-ExtraBold-webfont.woff +0 -0
- data/dist/fonts/OpenSans-ExtraBold-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.eot +0 -0
- data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.svg +19036 -0
- data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.woff +0 -0
- data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-Italic-webfont.eot +0 -0
- data/dist/fonts/OpenSans-Italic-webfont.svg +19043 -0
- data/dist/fonts/OpenSans-Italic-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-Italic-webfont.woff +0 -0
- data/dist/fonts/OpenSans-Italic-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-Light-webfont.eot +0 -0
- data/dist/fonts/OpenSans-Light-webfont.svg +19026 -0
- data/dist/fonts/OpenSans-Light-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-Light-webfont.woff +0 -0
- data/dist/fonts/OpenSans-Light-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-LightItalic-webfont.eot +0 -0
- data/dist/fonts/OpenSans-LightItalic-webfont.svg +19039 -0
- data/dist/fonts/OpenSans-LightItalic-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-LightItalic-webfont.woff +0 -0
- data/dist/fonts/OpenSans-LightItalic-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-Regular-webfont.eot +0 -0
- data/dist/fonts/OpenSans-Regular-webfont.svg +19030 -0
- data/dist/fonts/OpenSans-Regular-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-Regular-webfont.woff +0 -0
- data/dist/fonts/OpenSans-Regular-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-Semibold-webfont.eot +0 -0
- data/dist/fonts/OpenSans-Semibold-webfont.svg +19030 -0
- data/dist/fonts/OpenSans-Semibold-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-Semibold-webfont.woff +0 -0
- data/dist/fonts/OpenSans-Semibold-webfont.woff2 +0 -0
- data/dist/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
- data/dist/fonts/OpenSans-SemiboldItalic-webfont.svg +19043 -0
- data/dist/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
- data/dist/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
- data/dist/fonts/OpenSans-SemiboldItalic-webfont.woff2 +0 -0
- data/dist/fonts/PatternFlyIcons-webfont.eot +0 -0
- data/dist/fonts/PatternFlyIcons-webfont.svg +140 -0
- data/dist/fonts/PatternFlyIcons-webfont.ttf +0 -0
- data/dist/fonts/PatternFlyIcons-webfont.woff +0 -0
- data/dist/fonts/fontawesome-webfont.eot +0 -0
- data/dist/fonts/fontawesome-webfont.svg +2671 -0
- data/dist/fonts/fontawesome-webfont.ttf +0 -0
- data/dist/fonts/fontawesome-webfont.woff +0 -0
- data/dist/fonts/fontawesome-webfont.woff2 +0 -0
- data/dist/fonts/glyphicons-halflings-regular.eot +0 -0
- data/dist/fonts/glyphicons-halflings-regular.svg +288 -0
- data/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/dist/fonts/glyphicons-halflings-regular.woff +0 -0
- data/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
- data/dist/img/Logo_Horizontal_Reversed.svg +49 -0
- data/dist/img/OpenShift-Logo-NoText.svg +51 -0
- data/dist/img/OpenShift-Logo-Text.svg +95 -0
- data/dist/img/OpenShift-logo.svg +69 -0
- data/dist/img/RH_Atomic-Logo-NoText.svg +53 -0
- data/dist/img/RH_Atomic-Logo-Text.svg +91 -0
- data/dist/img/RH_atomic.svg +88 -0
- data/dist/img/apple-touch-icon-precomposed-114.png +0 -0
- data/dist/img/apple-touch-icon-precomposed-144.png +0 -0
- data/dist/img/apple-touch-icon-precomposed-152.png +0 -0
- data/dist/img/apple-touch-icon-precomposed-180.png +0 -0
- data/dist/img/apple-touch-icon-precomposed-57.png +0 -0
- data/dist/img/apple-touch-icon-precomposed-72.png +0 -0
- data/dist/img/apple-touch-icon-precomposed-76.png +0 -0
- data/dist/img/bg-login-2.png +0 -0
- data/dist/img/bg-login.jpg +0 -0
- data/dist/img/bg-login.png +0 -0
- data/dist/img/bg-modal-about-pf.png +0 -0
- data/dist/img/bg-navbar-pf-alt.svg +9 -0
- data/dist/img/brand-alt.svg +88 -0
- data/dist/img/brand.svg +87 -0
- data/dist/img/dropbox-logo.svg +15 -0
- data/dist/img/facebook-logo.svg +12 -0
- data/dist/img/favicon.ico +0 -0
- data/dist/img/fedora-logo.png +0 -0
- data/dist/img/git-logo.svg +21 -0
- data/dist/img/github-logo.svg +17 -0
- data/dist/img/gmail.svg +23 -0
- data/dist/img/google-calendar.svg +26 -0
- data/dist/img/google-drive.svg +17 -0
- data/dist/img/google-logo.svg +19 -0
- data/dist/img/instagram-logo.png +0 -0
- data/dist/img/kubernetes-Logo.svg +60 -0
- data/dist/img/kubernetes.svg +8 -0
- data/dist/img/linkedin-logo.svg +13 -0
- data/dist/img/logo-alt.svg +18 -0
- data/dist/img/logo.svg +22 -0
- data/dist/img/open-id-logo.svg +19 -0
- data/dist/img/rcue-full.svg +221 -0
- data/dist/img/rcue.svg +92 -0
- data/dist/img/redhat_reverse.png +0 -0
- data/dist/img/skype-logo.svg +23 -0
- data/dist/img/spinner-inverse-lg.gif +0 -0
- data/dist/img/spinner-inverse-sm.gif +0 -0
- data/dist/img/spinner-inverse-xs.gif +0 -0
- data/dist/img/spinner-inverse.gif +0 -0
- data/dist/img/spinner-lg.gif +0 -0
- data/dist/img/spinner-sm.gif +0 -0
- data/dist/img/spinner-xs.gif +0 -0
- data/dist/img/spinner.gif +0 -0
- data/dist/img/stack-exchange-logo.svg +21 -0
- data/dist/img/twitter-logo.svg +19 -0
- data/dist/js/patternfly-functions-base.js +7 -0
- data/dist/js/patternfly-functions-charts.js +13 -0
- data/dist/js/patternfly-functions-colors.js +8 -0
- data/dist/js/patternfly-functions-count-chars.js +59 -0
- data/dist/js/patternfly-functions-data-tables.js +149 -0
- data/dist/js/patternfly-functions-fixed-heights.js +109 -0
- data/dist/js/patternfly-functions-list.js +79 -0
- data/dist/js/patternfly-functions-navigation.js +113 -0
- data/dist/js/patternfly-functions-popovers.js +37 -0
- data/dist/js/patternfly-functions-sidebar.js +31 -0
- data/dist/js/patternfly-functions-tree-grid.js +82 -0
- data/dist/js/patternfly-functions-vertical-nav.js +610 -0
- data/dist/js/patternfly-functions.js +1307 -0
- data/dist/js/patternfly-functions.min.js +1 -0
- data/dist/js/patternfly-settings-base.d.ts +9 -0
- data/dist/js/patternfly-settings-base.js +16 -0
- data/dist/js/patternfly-settings-charts.d.ts +92 -0
- data/dist/js/patternfly-settings-charts.js +449 -0
- data/dist/js/patternfly-settings-colors.d.ts +88 -0
- data/dist/js/patternfly-settings-colors.js +91 -0
- data/dist/js/patternfly-settings.d.ts +3 -0
- data/dist/js/patternfly-settings.js +558 -0
- data/dist/js/patternfly-settings.min.js +1 -0
- data/dist/js/patternfly.dataTables.pfColVis.js +151 -0
- data/dist/js/patternfly.dataTables.pfEmpty.js +253 -0
- data/dist/js/patternfly.dataTables.pfEmpty.min.js +1 -0
- data/dist/js/patternfly.dataTables.pfFilter.js +429 -0
- data/dist/js/patternfly.dataTables.pfFilter.min.js +1 -0
- data/dist/js/patternfly.dataTables.pfPagination.js +401 -0
- data/dist/js/patternfly.dataTables.pfPagination.min.js +1 -0
- data/dist/js/patternfly.dataTables.pfResize.js +214 -0
- data/dist/js/patternfly.dataTables.pfResize.min.js +1 -0
- data/dist/js/patternfly.dataTables.pfSelect.js +281 -0
- data/dist/js/patternfly.dataTables.pfSelect.min.js +1 -0
- data/dist/js/patternfly.js +1866 -0
- data/dist/js/patternfly.min.js +2 -0
- data/dist/sass/_patternfly-compass.scss +3 -0
- data/dist/sass/_patternfly-sprockets.scss +3 -0
- data/dist/sass/_patternfly.scss +147 -0
- data/dist/sass/patternfly/_about-modal.scss +44 -0
- data/dist/sass/patternfly/_accordion.scss +18 -0
- data/dist/sass/patternfly/_alerts.scss +44 -0
- data/dist/sass/patternfly/_application-launcher.scss +213 -0
- data/dist/sass/patternfly/_badges.scss +11 -0
- data/dist/sass/patternfly/_blank-slate.scss +52 -0
- data/dist/sass/patternfly/_bootstrap-combobox.scss +35 -0
- data/dist/sass/patternfly/_bootstrap-datepicker.scss +132 -0
- data/dist/sass/patternfly/_bootstrap-mixin-overrides.scss +33 -0
- data/dist/sass/patternfly/_bootstrap-select.scss +108 -0
- data/dist/sass/patternfly/_bootstrap-slider.scss +66 -0
- data/dist/sass/patternfly/_bootstrap-switch.scss +19 -0
- data/dist/sass/patternfly/_bootstrap-touchspin.scss +31 -0
- data/dist/sass/patternfly/_bootstrap-treeview.scss +89 -0
- data/dist/sass/patternfly/_breadcrumbs.scss +20 -0
- data/dist/sass/patternfly/_buttons.scss +50 -0
- data/dist/sass/patternfly/_card-view.scss +105 -0
- data/dist/sass/patternfly/_cards.scss +238 -0
- data/dist/sass/patternfly/_charts.scss +388 -0
- data/dist/sass/patternfly/_close.scss +16 -0
- data/dist/sass/patternfly/_color-variables.scss +85 -0
- data/dist/sass/patternfly/_context-selector.scss +125 -0
- data/dist/sass/patternfly/_datatables.scss +186 -0
- data/dist/sass/patternfly/_date-and-time.scss +35 -0
- data/dist/sass/patternfly/_dropdowns.scss +235 -0
- data/dist/sass/patternfly/_experimental-features.scss +48 -0
- data/dist/sass/patternfly/_filter.scss +42 -0
- data/dist/sass/patternfly/_fonts.scss +124 -0
- data/dist/sass/patternfly/_footer.scss +19 -0
- data/dist/sass/patternfly/_forms.scss +192 -0
- data/dist/sass/patternfly/_icons.scss +371 -0
- data/dist/sass/patternfly/_infotip.scss +145 -0
- data/dist/sass/patternfly/_labels.scss +17 -0
- data/dist/sass/patternfly/_layouts.scss +140 -0
- data/dist/sass/patternfly/_links.scss +5 -0
- data/dist/sass/patternfly/_list-group.scss +23 -0
- data/dist/sass/patternfly/_list-pf.scss +178 -0
- data/dist/sass/patternfly/_list-view-dnd.scss +53 -0
- data/dist/sass/patternfly/_list-view.scss +390 -0
- data/dist/sass/patternfly/_login.scss +341 -0
- data/dist/sass/patternfly/_mixins.scss +81 -0
- data/dist/sass/patternfly/_modals.scss +49 -0
- data/dist/sass/patternfly/_nav-vertical-alt.scss +168 -0
- data/dist/sass/patternfly/_navbar-alt.scss +141 -0
- data/dist/sass/patternfly/_navbar-vertical.scss +168 -0
- data/dist/sass/patternfly/_navbar.scss +579 -0
- data/dist/sass/patternfly/_notifications-drawer.scss +250 -0
- data/dist/sass/patternfly/_pager.scss +68 -0
- data/dist/sass/patternfly/_pagination.scss +121 -0
- data/dist/sass/patternfly/_panels.scss +134 -0
- data/dist/sass/patternfly/_popovers.scss +52 -0
- data/dist/sass/patternfly/_progress-bars.scss +121 -0
- data/dist/sass/patternfly/_rcue-about-modal.scss +45 -0
- data/dist/sass/patternfly/_rcue-additions.scss +11 -0
- data/dist/sass/patternfly/_rcue-login.scss +75 -0
- data/dist/sass/patternfly/_rcue-variables.scss +57 -0
- data/dist/sass/patternfly/_rcue.scss +6 -0
- data/dist/sass/patternfly/_search.scss +64 -0
- data/dist/sass/patternfly/_sidebar.scss +176 -0
- data/dist/sass/patternfly/_skip-to-content.scss +12 -0
- data/dist/sass/patternfly/_spinner.scss +72 -0
- data/dist/sass/patternfly/_syntax-highlighting.scss +36 -0
- data/dist/sass/patternfly/_table-view.scss +188 -0
- data/dist/sass/patternfly/_tables.scss +90 -0
- data/dist/sass/patternfly/_tabs.scss +118 -0
- data/dist/sass/patternfly/_time-picker.scss +98 -0
- data/dist/sass/patternfly/_toast.scss +75 -0
- data/dist/sass/patternfly/_toolbar.scss +190 -0
- data/dist/sass/patternfly/_tooltip.scss +15 -0
- data/dist/sass/patternfly/_tree-list-view.scss +83 -0
- data/dist/sass/patternfly/_type.scss +29 -0
- data/dist/sass/patternfly/_variables.scss +595 -0
- data/dist/sass/patternfly/_vertical-nav.scss +944 -0
- data/dist/sass/patternfly/_wizard.scss +665 -0
- data/dist/sass/patternfly/dependencies/bootstrap-combobox/combobox.scss +57 -0
- data/dist/sass/patternfly/dependencies/bootstrap-datepicker/datepicker.scss +242 -0
- data/dist/sass/patternfly/dependencies/bootstrap-datepicker/datepicker3.scss +257 -0
- data/dist/sass/patternfly/dependencies/bootstrap-select/bootstrap-select.scss +389 -0
- data/dist/sass/patternfly/dependencies/bootstrap-select/variables.scss +9 -0
- data/dist/sass/patternfly/dependencies/bootstrap-slider/_mixins.scss +25 -0
- data/dist/sass/patternfly/dependencies/bootstrap-slider/_rules.scss +246 -0
- data/dist/sass/patternfly/dependencies/bootstrap-slider/_variables.scss +28 -0
- data/dist/sass/patternfly/dependencies/bootstrap-slider/bootstrap-slider.scss +42 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/bootstrap-switch.scss +195 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/build.scss +3 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/alerts.scss +14 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/background-variant.scss +9 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/border-radius.scss +18 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/buttons.scss +68 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/center-block.scss +7 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/clearfix.scss +22 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/forms.scss +85 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/gradients.scss +59 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/grid-framework.scss +98 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/grid.scss +122 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/hide-text.scss +21 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/image.scss +33 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/labels.scss +12 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/list-group.scss +29 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/nav-divider.scss +10 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/nav-vertical-align.scss +9 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/opacity.scss +8 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/pagination.scss +23 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/panels.scss +24 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/progress-bar.scss +10 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/reset-filter.scss +8 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/reset-text.scss +18 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/resize.scss +6 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/responsive-visibility.scss +15 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/size.scss +10 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/tab-focus.scss +9 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/table-row.scss +28 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/text-emphasis.scss +9 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/text-overflow.scss +8 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/vendor-prefixes.scss +227 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins.scss +40 -0
- data/dist/sass/patternfly/dependencies/bootstrap-switch/variables.scss +862 -0
- data/dist/sass/patternfly/dependencies/bootstrap-touchspin/_jquery.bootstrap-touchspin.scss +45 -0
- data/dist/sass/patternfly/dependencies/c3/_c3.scss +178 -0
- data/dist/sass/patternfly/dependencies/eonasdan-bootstrap-datetimepicker/_bootstrap-datetimepicker.scss +344 -0
- data/dist/sass/patternfly/dependencies/eonasdan-bootstrap-datetimepicker/bootstrap-datetimepicker-build.scss +16 -0
- data/dist/sass/rcue/_about-modal.scss +44 -0
- data/dist/sass/rcue/_accordion.scss +18 -0
- data/dist/sass/rcue/_alerts.scss +44 -0
- data/dist/sass/rcue/_badges.scss +11 -0
- data/dist/sass/rcue/_blank-slate.scss +52 -0
- data/dist/sass/rcue/_bootstrap-combobox.scss +35 -0
- data/dist/sass/rcue/_bootstrap-datepicker.scss +132 -0
- data/dist/sass/rcue/_bootstrap-mixin-overrides.scss +33 -0
- data/dist/sass/rcue/_bootstrap-select.scss +108 -0
- data/dist/sass/rcue/_bootstrap-slider.scss +66 -0
- data/dist/sass/rcue/_bootstrap-switch.scss +19 -0
- data/dist/sass/rcue/_bootstrap-touchspin.scss +31 -0
- data/dist/sass/rcue/_bootstrap-treeview.scss +89 -0
- data/dist/sass/rcue/_breadcrumbs.scss +20 -0
- data/dist/sass/rcue/_buttons.scss +50 -0
- data/dist/sass/rcue/_card-view.scss +105 -0
- data/dist/sass/rcue/_cards.scss +238 -0
- data/dist/sass/rcue/_charts.scss +388 -0
- data/dist/sass/rcue/_close.scss +16 -0
- data/dist/sass/rcue/_color-variables.scss +85 -0
- data/dist/sass/rcue/_context-selector.scss +125 -0
- data/dist/sass/rcue/_datatables.scss +186 -0
- data/dist/sass/rcue/_date-and-time.scss +35 -0
- data/dist/sass/rcue/_dropdowns.scss +235 -0
- data/dist/sass/rcue/_experimental-features.scss +48 -0
- data/dist/sass/rcue/_filter.scss +42 -0
- data/dist/sass/rcue/_fonts.scss +124 -0
- data/dist/sass/rcue/_footer.scss +19 -0
- data/dist/sass/rcue/_forms.scss +192 -0
- data/dist/sass/rcue/_icons.scss +371 -0
- data/dist/sass/rcue/_infotip.scss +145 -0
- data/dist/sass/rcue/_labels.scss +17 -0
- data/dist/sass/rcue/_layouts.scss +140 -0
- data/dist/sass/rcue/_links.scss +5 -0
- data/dist/sass/rcue/_list-group.scss +23 -0
- data/dist/sass/rcue/_list-pf.scss +178 -0
- data/dist/sass/rcue/_list-view-dnd.scss +53 -0
- data/dist/sass/rcue/_list-view.scss +390 -0
- data/dist/sass/rcue/_login.scss +341 -0
- data/dist/sass/rcue/_mixins.scss +81 -0
- data/dist/sass/rcue/_modals.scss +49 -0
- data/dist/sass/rcue/_nav-vertical-alt.scss +168 -0
- data/dist/sass/rcue/_navbar-alt.scss +141 -0
- data/dist/sass/rcue/_navbar-vertical.scss +168 -0
- data/dist/sass/rcue/_navbar.scss +579 -0
- data/dist/sass/rcue/_notifications-drawer.scss +250 -0
- data/dist/sass/rcue/_pager.scss +68 -0
- data/dist/sass/rcue/_pagination.scss +121 -0
- data/dist/sass/rcue/_panels.scss +134 -0
- data/dist/sass/rcue/_patternfly-additions.scss +76 -0
- data/dist/sass/rcue/_patternfly.scss +31 -0
- data/dist/sass/rcue/_popovers.scss +52 -0
- data/dist/sass/rcue/_progress-bars.scss +121 -0
- data/dist/sass/rcue/_rcue-about-modal.scss +45 -0
- data/dist/sass/rcue/_rcue-login.scss +75 -0
- data/dist/sass/rcue/_rcue-variables.scss +57 -0
- data/dist/sass/rcue/_search.scss +64 -0
- data/dist/sass/rcue/_sidebar.scss +176 -0
- data/dist/sass/rcue/_skip-to-content.scss +12 -0
- data/dist/sass/rcue/_spinner.scss +72 -0
- data/dist/sass/rcue/_syntax-highlighting.scss +36 -0
- data/dist/sass/rcue/_table-view.scss +188 -0
- data/dist/sass/rcue/_tables.scss +90 -0
- data/dist/sass/rcue/_tabs.scss +118 -0
- data/dist/sass/rcue/_time-picker.scss +98 -0
- data/dist/sass/rcue/_toast.scss +75 -0
- data/dist/sass/rcue/_toolbar.scss +190 -0
- data/dist/sass/rcue/_tooltip.scss +15 -0
- data/dist/sass/rcue/_tree-list-view.scss +83 -0
- data/dist/sass/rcue/_type.scss +29 -0
- data/dist/sass/rcue/_variables.scss +595 -0
- data/dist/sass/rcue/_vertical-nav.scss +944 -0
- data/dist/sass/rcue/_wizard.scss +665 -0
- data/lib/patternfly-sass/engine.rb +11 -0
- data/lib/patternfly-sass/version.rb +3 -0
- data/lib/patternfly-sass.rb +92 -0
- data/patternfly-sass.gemspec +31 -0
- metadata +445 -0
data/QUICKSTART.md
ADDED
@@ -0,0 +1,210 @@
|
|
1
|
+
# Using [PatternFly](https://www.patternfly.org) - Quick Start Guide
|
2
|
+
|
3
|
+
This reference implementation of PatternFly is based on [Bootstrap v3](http://getbootstrap.com/). Think of PatternFly as a "skinned" version of Bootstrap with additional components and customizations. PatternFly is meant to be used as a replacement for Bootstrap, so please don't include the Bootstrap CSS if you are including the PatternFly CSS in your project.
|
4
|
+
|
5
|
+
### What's Included
|
6
|
+
|
7
|
+
Within the download you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations. You'll see something like this:
|
8
|
+
|
9
|
+
```
|
10
|
+
patternfly/
|
11
|
+
└── dist/
|
12
|
+
├── css/
|
13
|
+
│ │── patternfly.min.css (* need to include)
|
14
|
+
│ └── patternfly-additions.min.css (* need to include)
|
15
|
+
├── fonts/
|
16
|
+
│ └── font and icon libraries (included via above CSS)
|
17
|
+
├── img/
|
18
|
+
│ └── branding materials and loading indicators
|
19
|
+
├── js/
|
20
|
+
│ └── patternfly.min.js (may need to include if you are using PatternFly jQuery Sidebar, Popovers or Datatables)
|
21
|
+
├── less/
|
22
|
+
│ └── variables, mixin, and component Less files (may need to include if you want to customize the already built CSS)
|
23
|
+
├── sass/
|
24
|
+
│ └── variables, mixin, and component Sass files (may need to include if you want to customize the already built CSS)
|
25
|
+
└── tests/
|
26
|
+
└── example markup source files
|
27
|
+
```
|
28
|
+
|
29
|
+
We provide compiled CSS and JS (`patternfly.*`), as well as compiled and minified CSS and JS (`patternfly.min.*`). CSS [source maps](https://developer.chrome.com/devtools/docs/css-preprocessors) (`patternfly.*.map`) are available for use with certain browsers' developer tools. Fonts from OpenSans, FontAwesome, PatternFly Icons are included, as well as numerous other 3rd party JS components and libraries.
|
30
|
+
|
31
|
+
## Using PatternFly In Your Application
|
32
|
+
|
33
|
+
1. Ensure you have installed the following utilities:
|
34
|
+
- [Git](http://git-scm.com/downloads): a free and open source distributed version control system.
|
35
|
+
- Unfamiliar with Git? Try using [GitHub for Windows](https://windows.github.com/) or [GitHub for Mac](https://mac.github.com/).
|
36
|
+
- [Node.js](http://nodejs.org/download/): a software platform that is used to build server-side applications.
|
37
|
+
- [Grunt](http://gruntjs.com/getting-started): a JavaScript task runner.
|
38
|
+
|
39
|
+
$ sudo npm install -g grunt-cli
|
40
|
+
|
41
|
+
|
42
|
+
2. Add PatternFly as a dependency for your project and you'll receive all the libraries you'll need:
|
43
|
+
|
44
|
+
$ npm install patternfly --save
|
45
|
+
|
46
|
+
For full install options see the [README](README.md)
|
47
|
+
|
48
|
+
3. Add the following CSS includes to your HTML file(s), adjusting path where needed:
|
49
|
+
|
50
|
+
<!-- PatternFly Styles -->
|
51
|
+
<!-- Note: No other CSS files are needed regardless of what other JS packages located in patternfly/components that you decide to pull in -->
|
52
|
+
<link rel="stylesheet" href="node_modules/patternfly/dist/css/patternfly.min.css">
|
53
|
+
<link rel="stylesheet" href="node_modules/patternfly/dist/css/patternfly-additions.min.css">
|
54
|
+
|
55
|
+
4. Add the following script includes to your HTML file(s), adjusting where necessary to pull in only what you need:
|
56
|
+
|
57
|
+
<!-- jQuery -->
|
58
|
+
<script src="node_modules/patternfly/node_modules/jquery/dist/jquery.min.js"></script>
|
59
|
+
|
60
|
+
<!-- Bootstrap JS -->
|
61
|
+
<script src="node_modules/patternfly/node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
|
62
|
+
|
63
|
+
<!-- C3, D3 - Charting Libraries -->
|
64
|
+
<script src="node_modules/patternfly/node_modules/c3/c3.min.js"></script>
|
65
|
+
<script src="node_modules/patternfly/node_modules/d3/d3.min.js"></script>
|
66
|
+
|
67
|
+
<!-- Datatables, jQuery Grid Component -->
|
68
|
+
<!-- Note: jquery.dataTables.js must occur in the html source before patternfly*.js.-->
|
69
|
+
<script src="node_modules/patternfly/node_modules/datatables/media/js/jquery.dataTables.min.js"></script>
|
70
|
+
<script src="node_modules/patternfly/node_modules/drmonty-datatables-colvis/js/dataTables.colVis.js"></script>
|
71
|
+
<script src="node_modules/patternfly/node_modules/datatables.net-colreorder/js/dataTables.colReorder.js"></script>
|
72
|
+
|
73
|
+
<!-- PatternFly Custom Componets - Sidebar, Popovers and Datatables Customizations -->
|
74
|
+
<!-- Note: jquery.dataTables.js must occur in the html source before patternfly*.js.-->
|
75
|
+
<script src="node_modules/patternfly/node_modules/patternfly/dist/js/patternfly.min.js"></script>
|
76
|
+
|
77
|
+
<!-- Bootstrap Combobox -->
|
78
|
+
<script src="node_modules/patternfly/node_modules/patternfly-bootstrap-combobox/js/bootstrap-combobox.js"></script>
|
79
|
+
|
80
|
+
<!-- Bootstrap Date Picker -->
|
81
|
+
<script src="node_modules/patternfly/node_modules/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
|
82
|
+
|
83
|
+
<!-- Moment - required by Bootstrap Date Time Picker -->
|
84
|
+
<script src="node_modules/patternfly/node_modules/moment/min/moment.min.js"></script>
|
85
|
+
|
86
|
+
<!-- Bootstrap Date Time Picker - requires Moment -->
|
87
|
+
<script src="node_modules/patternfly/node_modules/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js"></script>
|
88
|
+
|
89
|
+
<!-- Bootstrap Select -->
|
90
|
+
<script src="node_modules/patternfly/node_modules/bootstrap-select/dist/js/bootstrap-select.min.js"></script>
|
91
|
+
|
92
|
+
<!-- Bootstrap Switch -->
|
93
|
+
<script src="node_modules/patternfly/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"></script>
|
94
|
+
|
95
|
+
<!-- Bootstrap Touchspin -->
|
96
|
+
<script src="node_modules/patternfly/node_modules/bootstrap-touchspin/dist/jquery.bootstrap-touchspin.min.js"></script>
|
97
|
+
|
98
|
+
<!-- Bootstrap Tree View -->
|
99
|
+
<script src="node_modules/patternfly/node_modules/patternfly-bootstrap-treeview/dist/bootstrap-treeview.min.js"></script>
|
100
|
+
|
101
|
+
<!-- Google Code Prettify - Syntax highlighting of code snippets -->
|
102
|
+
<script src="node_modules/patternfly/node_modules/google-code-prettify/bin/prettify.min.js"></script>
|
103
|
+
|
104
|
+
<!-- MatchHeight - Used to make sure dashboard cards are the same height -->
|
105
|
+
<script src="node_modules/patternfly/node_modules/jquery-match-height/jquery.matchHeight-min.js"></script>
|
106
|
+
|
107
|
+
<!-- Angular Application? You May Want to Consider Pulling Angular-PatternFly And Angular-UI Bootstrap instead of bootstrap.js -->
|
108
|
+
<!-- See https://github.com/patternfly/angular-patternfly for more information -->
|
109
|
+
|
110
|
+
5. Prefer to use Bower? You can install patternfly using Bower (although NPM is recommended). Add the following style and script includes from `bower_components` to your HTML file(s), adjusting where necessary to pull in only what you need:
|
111
|
+
|
112
|
+
<!-- PatternFly Styles -->
|
113
|
+
<!-- Note: No other CSS files are needed regardless of what other JS packages located in patternfly/components that you decide to pull in -->
|
114
|
+
<link rel="stylesheet" href="bower_components/patternfly/dist/css/patternfly.min.css">
|
115
|
+
<link rel="stylesheet" href="bower_components/patternfly/dist/css/patternfly-additions.min.css">
|
116
|
+
|
117
|
+
<!-- jQuery -->
|
118
|
+
<script src="bower_components/jquery/dist/jquery.min.js"></script>
|
119
|
+
|
120
|
+
<!-- Bootstrap JS -->
|
121
|
+
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
|
122
|
+
|
123
|
+
<!-- C3, D3 - Charting Libraries -->
|
124
|
+
<script src="bower_components/c3/c3.min.js"></script>
|
125
|
+
<script src="bower_components/d3/d3.min.js"></script>
|
126
|
+
|
127
|
+
<!-- Datatables, jQuery Grid Component -->
|
128
|
+
<!-- Note: jquery.dataTables.js must occur in the html source before patternfly*.js.-->
|
129
|
+
<script src="bower_components/datatables/media/js/jquery.dataTables.min.js"></script>
|
130
|
+
<script src="bower_components/datatables-colvis/js/dataTables.colVis.js"></script>
|
131
|
+
<script src="bower_components/datatables-colreorder/js/dataTables.colReorder.js"></script>
|
132
|
+
|
133
|
+
<!-- PatternFly Custom Componets - Sidebar, Popovers and Datatables Customizations -->
|
134
|
+
<!-- Note: jquery.dataTables.js must occur in the html source before patternfly*.js.-->
|
135
|
+
<script src="bower_components/patternfly/dist/js/patternfly.min.js"></script>
|
136
|
+
|
137
|
+
<!-- Bootstrap Combobox -->
|
138
|
+
<script src="bower_components/bootstrap-combobox/js/bootstrap-combobox.js"></script>
|
139
|
+
|
140
|
+
<!-- Bootstrap Date Time Picker - requires Moment -->
|
141
|
+
<script src="bower_components/moment/min/moment.min.js"></script>
|
142
|
+
|
143
|
+
<!-- Bootstrap Date Picker -->
|
144
|
+
<script src="bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
|
145
|
+
|
146
|
+
<!-- Bootstrap Select -->
|
147
|
+
<script src="bower_components/bootstrap-select/dist/js/bootstrap-select.min.js"></script>
|
148
|
+
|
149
|
+
<!-- Bootstrap Switch -->
|
150
|
+
<script src="bower_components/bootstrap-switch/dist/js/bootstrap-switch.min.js"></script>
|
151
|
+
|
152
|
+
<!-- Bootstrap Touchspin -->
|
153
|
+
<script src="bower_components/bootstrap-touchspin/dist/jquery.bootstrap-touchspin.min.js"></script>
|
154
|
+
|
155
|
+
<!-- Bootstrap Tree View -->
|
156
|
+
<script src="bower_components/patternfly-bootstrap-treeview/dist/bootstrap-treeview.min.js"></script>
|
157
|
+
|
158
|
+
<!-- Google Code Prettify - Syntax highlighting of code snippets -->
|
159
|
+
<script src="bower_components/google-code-prettify/bin/prettify.min.js"></script>
|
160
|
+
|
161
|
+
<!-- MatchHeight - Used to make sure dashboard cards are the same height -->
|
162
|
+
<script src="bower_components/matchHeight/jquery.matchHeight-min.js"></script>
|
163
|
+
|
164
|
+
<!-- Angular Application? You May Want to Consider Pulling Angular-PatternFly And Angular-UI Bootstrap instead of bootstrap.js -->
|
165
|
+
<!-- See https://github.com/patternfly/angular-patternfly for more information -->
|
166
|
+
|
167
|
+
6. Enjoy!!!
|
168
|
+
|
169
|
+
## Consuming PatternFly LESS or SASS
|
170
|
+
|
171
|
+
PatternFly includes LESS and SASS files for those that need to add their own customizations. When importing PatternFly LESS or SASS into your application, there are a few configuration steps that need to be made to ensure that paths to all resources are properly resolved.
|
172
|
+
|
173
|
+
> If you used bower to install PatternFly, then you will need to replace `node_modules` paths from these instructions with the equivalent `bower_components` path.
|
174
|
+
|
175
|
+
### Consuming PatternFly LESS
|
176
|
+
1. Import the two main PatternFly LESS files:
|
177
|
+
|
178
|
+
@import 'patternfly/dist/less/patternfly.less';
|
179
|
+
@import 'patternfly/dist/less/patternfly-additions.less';
|
180
|
+
|
181
|
+
1. Add `node_modules/` to the LESS compiler's search path options.
|
182
|
+
|
183
|
+
1. LESS compiler references for a few common build tools:
|
184
|
+
- [Grunt](https://github.com/gruntjs/grunt-contrib-less)
|
185
|
+
- [Gulp](https://github.com/stevelacy/gulp-less)
|
186
|
+
- [Node](http://lesscss.org/usage/)
|
187
|
+
- [Webpack](https://github.com/webpack-contrib/less-loader)
|
188
|
+
|
189
|
+
### Consuming PatternFly SASS
|
190
|
+
1. Import the main PatternFly SASS file:
|
191
|
+
|
192
|
+
@import 'patternfly';
|
193
|
+
|
194
|
+
1. Add the following paths to the SASS compiler's search path options:
|
195
|
+
- `node_modules/patternfly/dist/sass`
|
196
|
+
- `node_modules/bootstrap-sass/assets/stylesheets`
|
197
|
+
- ** If installed in PatternFly private dependency tree: `node_modules/patternfly/node_modules/bootstrap-sass/assets/stylesheets`
|
198
|
+
- `node_modules/font-awesome-sass/assets/stylesheets`
|
199
|
+
- ** If installed in PatternFly private dependency tree:``node_modules/patternfly/node_modules/font-awesome-sass/assets/stylesheets`
|
200
|
+
|
201
|
+
> ** In some cases, bootstrap-sass and font-awesome-sass might be installed into a private dependency tree within `node_modules/patternfly`. If this is the case, adjust the path to those dependencies accordingly.
|
202
|
+
|
203
|
+
1. SASS compiler references for a few common build tools:
|
204
|
+
- [Grunt](https://github.com/gruntjs/grunt-contrib-sass)
|
205
|
+
- [Gulp](https://github.com/dlmanning/gulp-sass)
|
206
|
+
- [Node](https://github.com/sass/node-sass)
|
207
|
+
- [Webpack](https://github.com/webpack-contrib/sass-loader)
|
208
|
+
|
209
|
+
### Resolving Static Files
|
210
|
+
PatternFly uses some static font and image files. If you see 404 errors in your browser relating to these files, you may need to make some adjustments to ensure path references in the compiled css are correct. In our LESS and SASS, the `font-path` and `img-path` variables are used to define relative paths to these static files. The default values of these variables are `../fonts` and `../img`, respectively. These relative paths may not resolve in the context of your application, so you may need to override these variables or copy the PatternFly static files as part of your build.
|
data/README.md
ADDED
@@ -0,0 +1,438 @@
|
|
1
|
+
[![Build Status](https://travis-ci.org/patternfly/patternfly.svg?branch=master)](https://travis-ci.org/patternfly/patternfly)
|
2
|
+
[![Dependency Status](https://gemnasium.com/badges/github.com/patternfly/patternfly.svg)](https://gemnasium.com/github.com/patternfly/patternfly)
|
3
|
+
[![Code Climate](https://codeclimate.com/github/patternfly/patternfly/badges/gpa.svg)](https://codeclimate.com/github/patternfly/patternfly)
|
4
|
+
[![NSP Status](https://nodesecurity.io/orgs/patternfly/projects/d8289b24-4ec5-4f7c-86c1-02aa2e6cf73d/badge)](https://nodesecurity.io/orgs/patternfly/projects/d8289b24-4ec5-4f7c-86c1-02aa2e6cf73d)
|
5
|
+
[![npm version](https://badge.fury.io/js/patternfly.svg)](https://badge.fury.io/js/patternfly)
|
6
|
+
|
7
|
+
[![Gitter](https://badges.gitter.im/patternfly/patternfly.svg)](https://gitter.im/patternfly/patternfly?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
8
|
+
|
9
|
+
|
10
|
+
# [PatternFly](https://www.patternfly.org) reference implementation
|
11
|
+
|
12
|
+
This reference implementation of PatternFly is based on [Bootstrap v3](http://getbootstrap.com/). Think of PatternFly as a "skinned" version of Bootstrap with additional components and customizations. For information on how to quickly get started using PatternFly, see the [Quick Start Guide](QUICKSTART.md). Looking for RCUE (Red Hat Common User Experience) information? See the [RCUE Quick Start Guide](RCUE-QUICKSTART.md).
|
13
|
+
|
14
|
+
If you wish to contribute to PatternFly, please follow the instructions under "Contributing to PatternFly".
|
15
|
+
|
16
|
+
|
17
|
+
# Installation
|
18
|
+
|
19
|
+
### Install with NPM
|
20
|
+
|
21
|
+
PatternFly can be installed and managed through [NPM](https://www.npmjs.com/). To do so, either add `patternfly` as a dependency in your `package.json` or run the following:
|
22
|
+
|
23
|
+
```
|
24
|
+
npm install patternfly --save
|
25
|
+
```
|
26
|
+
|
27
|
+
PatternFly stays up to date with the Node LTS [Release Schedule](https://github.com/nodejs/LTS#lts_schedule). If you're using PatternFly downstream, we suggest the use of an actively supported version of Node/NPM, although prior versions of Node may work.
|
28
|
+
|
29
|
+
### Install with Bower
|
30
|
+
|
31
|
+
PatternFly can be installed and managed through [Bower](http://bower.io/). To do so, either add `patternfly` as a dependency in your `bower.json` or run the following:
|
32
|
+
|
33
|
+
```
|
34
|
+
bower install patternfly --save
|
35
|
+
```
|
36
|
+
|
37
|
+
#### Using Wiredep?
|
38
|
+
|
39
|
+
Are you using [Wiredep](https://github.com/taptapship/wiredep)? PatternFly's CSS includes the CSS of its dependencies. As a result, you'll want to add the following to your [Wiredep configuration](https://github.com/taptapship/wiredep#configuration) so you don't end up with duplicate CSS.
|
40
|
+
|
41
|
+
```
|
42
|
+
exclude: [
|
43
|
+
"node_modules/patternfly/node_modules/patternfly-bootstrap-combobox/css/bootstrap-combobox.css",
|
44
|
+
"node_modules/patternfly/node_modules/bootstrap-datepicker/dist/css/bootstrap-datepicker.css",
|
45
|
+
"node_modules/patternfly/node_modules/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css",
|
46
|
+
"node_modules/patternfly/node_modules/bootstrap-select/dist/css/bootstrap-select.css",
|
47
|
+
"node_modules/patternfly/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.css",
|
48
|
+
"node_modules/patternfly/node_modules/patternfly-bootstrap-treeview/dist/bootstrap-treeview.min.css",
|
49
|
+
"node_modules/patternfly/node_modules/c3/c3.css",
|
50
|
+
"node_modules/patternfly/node_modules/datatables/media/css/jquery.dataTables.css",
|
51
|
+
"node_modules/patternfly/node_modules/datatables.net-colreorder-bs/css/colReorder.bootstrap.css",
|
52
|
+
"node_modules/patternfly/node_modules/drmonty-datatables-colvis/css/dataTables.colVis.css",
|
53
|
+
"node_modules/patternfly/node_modules/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css",
|
54
|
+
"node_modules/patternfly/node_modules/font-awesome/css/font-awesome.css",
|
55
|
+
"node_modules/patternfly/node_modules/google-code-prettify/bin/prettify.min.css"
|
56
|
+
],
|
57
|
+
```
|
58
|
+
|
59
|
+
### Sass and/or Rails
|
60
|
+
|
61
|
+
**Patternfly now supports Sass natively!**
|
62
|
+
Sass is included in the `dist/sass` directory. Just add `node_modules` to your build tool's Sass include paths then `@import 'patternfly/dist/sass/patternfly';` in your Sass to get started!
|
63
|
+
|
64
|
+
Please note that the [patternfly-sass](https://github.com/patternfly/patternfly-sass) is no longer supported and will not include any features or fixes introduced after Patternfly 3.23.2. However, the [patternfly-sass](https://rubygems.org/gems/patternfly-sass) Rubygem is maintained further and built from this repository.
|
65
|
+
|
66
|
+
### AngularJS
|
67
|
+
|
68
|
+
A set of [common AngularJS directives](https://github.com/patternfly/angular-patternfly) for use with PatternFly is available.
|
69
|
+
|
70
|
+
# Contributing to PatternFly
|
71
|
+
|
72
|
+
The following sections provide information on how to get started as a developer or designer in the PatternFly codebase. In order to set up your environment, two different types of dependencies will need to be set up. Please follow the instructions under "Development - Build Dependencies" (Node.js/Ruby) and "Development - Code Dependencies" below. If you wish to use PatternFly in your project, please follow the [Quick Start Guide](QUICKSTART.md) instead.
|
73
|
+
|
74
|
+
## Development - Build Dependencies
|
75
|
+
|
76
|
+
Development setup requires Node.js and Ruby. If you do not already have Node.js, npm, and Ruby installed on your system, see https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager and https://www.ruby-lang.org/en/downloads.
|
77
|
+
|
78
|
+
## Development - Code Dependencies
|
79
|
+
|
80
|
+
The PatternFly code includes a number of dependencies that are not committed to this repository. To add them, follow the instructions below under "Install NPM Dependencies". Please make sure you keep them updated (see [Keeping NPM Dependencies Updated](#keeping-npm-dependencies-updated)).
|
81
|
+
|
82
|
+
## Development - Updating Dependencies
|
83
|
+
|
84
|
+
The npm-check-updates tool is available and configured to apply dependency updates to the project by running the command `npm run ncu`. The package.json changes will have to be committed and a PR created.
|
85
|
+
|
86
|
+
## Autoprefixer
|
87
|
+
|
88
|
+
Patternfly uses [Autoprefixer](https://github.com/postcss/autoprefixer) to auto add prefixes to its output CSS. Since Patternfly extends some of the core Bootstrap3 less which contains prefixes, we also explicitly add prefixes in these cases to ensure backwards compatibility with Bootstrap3. If consuming Patternfly LESS and compiling, you can define your own target prefixes using [browserlist](https://github.com/ai/browserslist).
|
89
|
+
|
90
|
+
### Install NPM Dependencies
|
91
|
+
|
92
|
+
The development includes the use of a number of helpful tasks. In order to setup your development environment to allow running of these tasks, you need to install the local nodejs packages declared in `package.json`.
|
93
|
+
|
94
|
+
To do this clone, and change directories into PatternFly:
|
95
|
+
|
96
|
+
```
|
97
|
+
cd [PathToYourRepository]
|
98
|
+
```
|
99
|
+
|
100
|
+
then
|
101
|
+
|
102
|
+
```
|
103
|
+
npm install
|
104
|
+
```
|
105
|
+
|
106
|
+
This should take care of the majority of dependencies.
|
107
|
+
|
108
|
+
Since PatternFly is shrink wrapped, npm 3 will install all necessary development packages into `node_modules/patternfly/node_modules`. At this point, the gruntjs tasks are available for use such as starting a local development server or building the master CSS file.
|
109
|
+
|
110
|
+
If you prefer a flat dependency structure, you can define your own dependencies explicitly. That will flatten out the node_modules structure and place dependencies in the root node_modules directory.
|
111
|
+
|
112
|
+
Additionally you may need to install the grunt command line utility. To do this run:
|
113
|
+
|
114
|
+
npm install -g grunt-cli
|
115
|
+
|
116
|
+
Test pages are optionally generated using [Jekyll](http://jekyllrb.com/). To use jekyll to build the test pages, ensure Ruby is installed and available then run:
|
117
|
+
|
118
|
+
```
|
119
|
+
npm run jekyll
|
120
|
+
```
|
121
|
+
|
122
|
+
or
|
123
|
+
|
124
|
+
```
|
125
|
+
gem install bundle
|
126
|
+
bundle install
|
127
|
+
```
|
128
|
+
|
129
|
+
During the install you may be asked for your password as part of the [Ruby](https://www.ruby-lang.org/en/documentation/installation/) installation process.
|
130
|
+
|
131
|
+
Next, set the environment variable PF_PAGE_BUILDER=jekyll. eg.:
|
132
|
+
PF_PAGE_BUILDER=jekyll grunt build
|
133
|
+
|
134
|
+
#### Keeping NPM Dependencies Updated
|
135
|
+
|
136
|
+
Anytime you pull a new version of PatternFly, make sure you also run
|
137
|
+
|
138
|
+
```
|
139
|
+
npm update
|
140
|
+
```
|
141
|
+
|
142
|
+
so you get the latest version of the dependencies specified in package.json.
|
143
|
+
|
144
|
+
### Live Reload Server
|
145
|
+
|
146
|
+
A local development server can be quickly fired up by using the Gruntjs serve task:
|
147
|
+
|
148
|
+
```
|
149
|
+
npm start
|
150
|
+
```
|
151
|
+
|
152
|
+
or
|
153
|
+
|
154
|
+
```
|
155
|
+
grunt serve # will build first by default
|
156
|
+
grunt serve --skipRebuild # flag would allow you to skip the rebuild to save some time
|
157
|
+
```
|
158
|
+
|
159
|
+
This local static asset server (i.e., [http://localhost:9000](http://localhost:9000)) has the advantage of having livereload integration. Thus, if you start the Gruntjs server, any changes you make to `.html` or `.less` files will be automatically reloaded into your browser and the changes reflected almost immediately. This has the obvious benefit of not having to refresh your browser and still be able to see the changes as you add or remove them from your development files. Additionally, any changes made to Jekyll source files (`tests/pages/`) will trigger a Jekyll build.
|
160
|
+
|
161
|
+
### Coding Style
|
162
|
+
|
163
|
+
See [http://codeguide.patternfly.org/](http://codeguide.patternfly.org/).
|
164
|
+
|
165
|
+
### Commiting changes
|
166
|
+
|
167
|
+
PatternFly uses the [semantic-release tool](https://github.com/semantic-release/semantic-release) to provide a continuous release mechanism for PatternFly. In order for this tool to correctly increment the project version, and include your changes in the generated release notes, you will have to format your commit messages according to a well-defined commit message format.
|
168
|
+
|
169
|
+
We have configured the [commitizen tool](https://github.com/commitizen/cz-cli) to assist you in formatting your commit messages corrctly. To use this tool run the following command instead of `git commit`:
|
170
|
+
|
171
|
+
```
|
172
|
+
npm run commit
|
173
|
+
```
|
174
|
+
|
175
|
+
#### Git Commit Guidelines
|
176
|
+
|
177
|
+
Alternatively, if you are familiar with the commititzen message format you can format the message manually. A summary of the commit message format is as follows:
|
178
|
+
|
179
|
+
Each commit message consists of a **header**, a **body** and a **footer**. The header has a special
|
180
|
+
format that includes a **type**, a **scope** and a **subject** ([full explanation](https://github.com/stevemao/conventional-changelog-angular/blob/master/convention.md)):
|
181
|
+
|
182
|
+
```
|
183
|
+
<type>(<scope>): <subject>
|
184
|
+
<BLANK LINE>
|
185
|
+
<body>
|
186
|
+
<BLANK LINE>
|
187
|
+
<footer>
|
188
|
+
```
|
189
|
+
|
190
|
+
##### Patch Release
|
191
|
+
|
192
|
+
```
|
193
|
+
fix(pencil): stop graphite breaking when too much pressure applied
|
194
|
+
```
|
195
|
+
|
196
|
+
##### Feature Release
|
197
|
+
|
198
|
+
```
|
199
|
+
feat(pencil): add 'graphiteWidth' option
|
200
|
+
```
|
201
|
+
|
202
|
+
##### Breaking Release
|
203
|
+
|
204
|
+
```
|
205
|
+
perf(pencil): remove graphiteWidth option
|
206
|
+
```
|
207
|
+
The tool will prompt you with several questions that it will use to correctly format your commit message. You can then proceed with your PR as you normally would.
|
208
|
+
|
209
|
+
## Build
|
210
|
+
|
211
|
+
### CSS
|
212
|
+
|
213
|
+
In development, styling is written and managed through multiple Less files. In order to generate a CSS file of all styling, run the build Gruntjs task:
|
214
|
+
|
215
|
+
```
|
216
|
+
npm run build
|
217
|
+
```
|
218
|
+
|
219
|
+
or
|
220
|
+
|
221
|
+
```
|
222
|
+
grunt build
|
223
|
+
```
|
224
|
+
|
225
|
+
This task will compile and minify the Less files into CSS files located at `dist/css/patternfly.min.css` and `dist/css/patternfly-additions.min.css`.
|
226
|
+
|
227
|
+
### Less to Sass Conversion
|
228
|
+
Any time style changes are introduced, the Sass code will need to be updated to reflect those changes. The conversion is accomplished as part of the build, but in order to test the CSS you will need to build it from Sass:
|
229
|
+
|
230
|
+
```
|
231
|
+
npm start -- --sass
|
232
|
+
```
|
233
|
+
*Note the extra ` -- ` between `npm start` and the `--sass` flag. This syntax passes the flag on to the underlying grunt process instead of the npm command itself.*
|
234
|
+
|
235
|
+
or
|
236
|
+
|
237
|
+
```
|
238
|
+
grunt build --sass
|
239
|
+
```
|
240
|
+
|
241
|
+
These tasks will run a Less to Sass conversion, then compile and minify the resulting Sass into CSS, creating a `dist/css/patternfly.css` file. Note that building from Sass does not create the `dist/css/patternfly-additions.css` file, which is the expected behavior.
|
242
|
+
|
243
|
+
The Less to Sass Conversion step will be accomplished and managed as a part of any Pull Request which includes Less file changes. Although contributors may want to build and test their style changes with Sass before submitting a Pull Request, this step should always be tested and validated by reviewers before a style change is merged and released. If a contributor is having issues with Sass conversion that they cannot resolve, Pull Request reviewers will need to ensure that the Sass conversion step is successfully accomplished, tested, and included in the Pull Request before it is approved and merged.
|
244
|
+
|
245
|
+
### Scenarios to Avoid when Making Less Style Updates
|
246
|
+
|
247
|
+
Sass and Less do not have perfect feature parity, which can sometimes throw a wrench into the conversion process described above. Furthermore, a failed conversion may be somewhat transparent since it may create Sass that will compile to unexpected, but valid CSS. The following are a few known scenarios that can be easily avoided to prevent failures in the Less to Sass conversion process.
|
248
|
+
|
249
|
+
#### Non-parametric Mixins
|
250
|
+
Sass does not support non-parametric mixins in the same way that Less does. Mixins must be explictly declared in Sass, whereas any class definition in Less can be used as a non-parametric mixin. Sass does not have a feature that perfectly parallels this behavior, so we have to use the closest thing which is the `@extend` statement. However, an edge case exists where `@extend` statements are not allowed within media queries in Sass. This creates a scenario where uncompilable Sass code can be generated from perfectly acceptable Less. For example:
|
251
|
+
**Less:**
|
252
|
+
```
|
253
|
+
.applauncher-pf {
|
254
|
+
.applauncher-pf-title {
|
255
|
+
.sr-only();
|
256
|
+
}
|
257
|
+
}
|
258
|
+
|
259
|
+
@media (min-width: @screen-sm-min) {
|
260
|
+
.applauncher-pf;
|
261
|
+
}
|
262
|
+
```
|
263
|
+
|
264
|
+
**Converts to Sass:**
|
265
|
+
```
|
266
|
+
.applauncher-pf {
|
267
|
+
.applauncher-pf-title {
|
268
|
+
@extend .sr-only;
|
269
|
+
}
|
270
|
+
}
|
271
|
+
|
272
|
+
@media (min-width: @screen-sm-min) {
|
273
|
+
@extend applauncher-pf; //Invalid Sass
|
274
|
+
}
|
275
|
+
```
|
276
|
+
|
277
|
+
This breaks for two reasons. We cannot use the `@extend` statement directly inside a media query, and even if we are able to work around that by making applauncher-pf into a mixin and using the `@include` directive, `.applauncher-pf .applauncher-pf-title` uses the `@extend` directive, which would still fall within the media query via the mixin invocation. To fix this, the Less would need to be adjusted like this:
|
278
|
+
|
279
|
+
**Less**
|
280
|
+
```
|
281
|
+
// Explicitly define a non-parametric sr-only mixin.
|
282
|
+
.sr-only() {
|
283
|
+
// sr-only rules;
|
284
|
+
}
|
285
|
+
|
286
|
+
// Explicitly define a non-parametric applauncher-pf mixin.
|
287
|
+
.applauncher-pf() {
|
288
|
+
.applauncher-pf-title {
|
289
|
+
// Explicitly invoke sr-only mixin.
|
290
|
+
.sr-only();
|
291
|
+
}
|
292
|
+
}
|
293
|
+
|
294
|
+
// Define the .applauncher-pf class and explicitly invoke the applauncher-pf
|
295
|
+
// mixin.
|
296
|
+
.applauncher-pf {
|
297
|
+
.applauncher-pf();
|
298
|
+
}
|
299
|
+
|
300
|
+
@media (min-width: @screen-sm-min) {
|
301
|
+
// Explicitly invoke applauncher-pf mixin inside of media query
|
302
|
+
.applauncher-pf();
|
303
|
+
}
|
304
|
+
```
|
305
|
+
|
306
|
+
**Converts to Sass:**
|
307
|
+
```
|
308
|
+
@mixin sr-only() {
|
309
|
+
// sr-only rules
|
310
|
+
}
|
311
|
+
|
312
|
+
@mixin applauncher-pf() {
|
313
|
+
.applauncher-pf-title {
|
314
|
+
@include sr-only();
|
315
|
+
}
|
316
|
+
}
|
317
|
+
|
318
|
+
.applauncher-pf {
|
319
|
+
@include applauncher-pf();
|
320
|
+
}
|
321
|
+
|
322
|
+
@media (min-width: @screen-sm-min) {
|
323
|
+
@include applauncher-pf();
|
324
|
+
}
|
325
|
+
```
|
326
|
+
|
327
|
+
#### Tilde-Escaped Strings
|
328
|
+
Strings that are escaped using the tilde in Less get converted to the Sass `unquote()` function. This causes Sass compilation issues when using escaped strings inside native CSS functions like `calc()`. Here is what happens:
|
329
|
+
Less:
|
330
|
+
```
|
331
|
+
height: calc(~"100vh - 20px");
|
332
|
+
```
|
333
|
+
Converts to Sass:
|
334
|
+
```
|
335
|
+
height: calc(unqoute("100vh - 20px")):
|
336
|
+
```
|
337
|
+
Which compiles directly to CSS and does not work as expected:
|
338
|
+
```
|
339
|
+
height: calc(unqoute("100vh - 20px")):
|
340
|
+
```
|
341
|
+
|
342
|
+
To fix this, move the tilde operator outside of the `calc()` statement:
|
343
|
+
|
344
|
+
Less:
|
345
|
+
```
|
346
|
+
height: ~"calc(100vh - 20px)";
|
347
|
+
```
|
348
|
+
Converts to Sass:
|
349
|
+
```
|
350
|
+
height: unqoute("calc(100vh - 20px)");
|
351
|
+
```
|
352
|
+
Compiles to CSS:
|
353
|
+
```
|
354
|
+
height: calc(100vh - 20px);
|
355
|
+
```
|
356
|
+
|
357
|
+
#### Comma Separated CSS Rules
|
358
|
+
Using complex, comma separated rules in things like box shadows or backgrounds will cause conversion problems if they are not properly escaped. These rules should be escaped, and mixins and variables should not be used inline. For example, this statement should not be used in Less:
|
359
|
+
```
|
360
|
+
box-shadow: inset 0 1px 1px fade(@color-pf-black, 7.5%), 0 0 6px lighten(@state-danger-text, 20%);
|
361
|
+
```
|
362
|
+
|
363
|
+
Instead, mixins should be assigned to variables, and variables should be interpolated in an escaped string like this:
|
364
|
+
|
365
|
+
```
|
366
|
+
@color1: fade(@color-pf-black, 7.5%);
|
367
|
+
@color2: lighten(@state-danger-text, 20%);
|
368
|
+
box-shadow: ~"inset 0 1px 1px @{color1}, 0 0 6px @{color2}";
|
369
|
+
```
|
370
|
+
|
371
|
+
This is especially important when passing a complex rule to a mixin.
|
372
|
+
|
373
|
+
### PatternFlyIcons Font
|
374
|
+
|
375
|
+
PatternFlyIcons font is generated using [IcoMoon](http://icomoon.io/app). Go to [manage projects](https://icomoon.io/app/#/projects) and import the project `PatternFlyIcons-webfont.json`. Load it and update as necessary. When finished, return to manage projects, and download the updated `PatternFlyIcons-webfont.json` file. Also generate the fonts. Please commit the updated `PatternFlyIcons-webfont.json` file, the updated font files and supporting LESS/CSS changes.
|
376
|
+
For detailed instructions, please see our [PatternFly Icon Guide](PFICONS.md)
|
377
|
+
|
378
|
+
## Tests
|
379
|
+
|
380
|
+
The `tests/` directory contains HTML pages with component and pattern examples in order to facilitate development. Please consult the official documentation (see below) for full details on how to use PatternFly. The latest PatternFly test directory examples can be seen at [https://rawgit.com/patternfly/patternfly/master-dist/dist/tests/](https://rawgit.com/patternfly/patternfly/master-dist/dist/tests/).
|
381
|
+
|
382
|
+
If you are developing on PatternFly and would like to provide a link to a test directory from your fork, TravisCI can be configured to create a copy of your branch with the dist files generated for you. No code changes are necessary to enable this, all that is needed is to login to [TravisCI](https://travis-ci.org/) and configure it to point at your PatternFly fork. The first three steps at their [Getting Started page](https://docs.travis-ci.com/user/for-beginners) provide instructions on how to do this. You will also need to add an AUTH_TOKEN variable to Travis generated in your GitHub account to allow Travis to connect to your fork.
|
383
|
+
|
384
|
+
The HTML pages in `dist/tests` are generated using Jekyll. Do *not* edit these files directly. See `tests/pages` to change these files.
|
385
|
+
|
386
|
+
### Unit Testing
|
387
|
+
Unit tests are written for [Karma test server] (https://karma-runner.github.io/1.0/index.html) with [Jasmine](http://jasmine.github.io/)
|
388
|
+
|
389
|
+
```
|
390
|
+
npm test
|
391
|
+
```
|
392
|
+
|
393
|
+
or
|
394
|
+
|
395
|
+
```
|
396
|
+
grunt karma
|
397
|
+
```
|
398
|
+
### Visual Regression Testing
|
399
|
+
|
400
|
+
*Visual regression tests require Jekyll to be installed*
|
401
|
+
|
402
|
+
Visual regression tests provide a way to detect if unintended visual changes have
|
403
|
+
occured as a result of changes in the code. They work by taking screenshots of
|
404
|
+
what components or pages should look like in a browser (known as references), and then comparing the references to screenshots of those components or pages with your code changes applied. Once the tests are complete, you will be a shown the test results in a browser.
|
405
|
+
|
406
|
+
You can run all of the test scenarios with `npm run regressions`.
|
407
|
+
|
408
|
+
You can run specific test scenarios with `npm run regressions <scenario-name>`. This
|
409
|
+
will probably be most useful while you are doing active development and only want
|
410
|
+
to check a few scenarios without running the entire suite.
|
411
|
+
(Ex. `npm run regressions alerts buttons`)
|
412
|
+
|
413
|
+
To approve conflicts run: `npm run approve-conflicts`. This is the command you want to run
|
414
|
+
when the tests find conflicts, but the conflicts are intended. This command
|
415
|
+
will replace the base image, so if you run the regression tests again, the
|
416
|
+
tests should pass.
|
417
|
+
|
418
|
+
## Documentation
|
419
|
+
|
420
|
+
See [https://www.patternfly.org](https://www.patternfly.org) and [http://getbootstrap.com/](http://getbootstrap.com/).
|
421
|
+
|
422
|
+
### Browser and Device Support
|
423
|
+
|
424
|
+
Since PatternFly is based on Bootstrap, PatternFly supports [the same browsers as Bootstrap](http://getbootstrap.com/getting-started/#support) **excluding Internet Explorer 8**, plus the latest version of [Firefox for Linux](https://support.mozilla.org/en-US/kb/install-firefox-linux).
|
425
|
+
|
426
|
+
*Important:* starting with the v2.0.0 release, **PatternFly no longer supports Internet Explorer 8**.
|
427
|
+
|
428
|
+
### Product Backlog
|
429
|
+
|
430
|
+
See [https://patternfly.atlassian.net/secure/RapidBoard.jspa?projectKey=PTNFLY&rapidView=4&view=planning](https://patternfly.atlassian.net/secure/RapidBoard.jspa?projectKey=PTNFLY&rapidView=4&view=planning).
|
431
|
+
|
432
|
+
### Bug List
|
433
|
+
|
434
|
+
Official tracking of bugs occurs in Jira. See https://patternfly.atlassian.net/issues/?filter=10304
|
435
|
+
|
436
|
+
## License
|
437
|
+
|
438
|
+
Modifications to Bootstrap are copyright 2013 Red Hat, Inc. and licensed under the [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.html).
|
Binary file
|
Binary file
|