patternfly-sass 0.0.0.pre.semantically.pre.released
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
@@ -0,0 +1,401 @@
|
|
1
|
+
/**
|
2
|
+
* @summary pfPagination for DataTables
|
3
|
+
* @description A collection of API methods providing functionality to paginate DataTables data. This ensures
|
4
|
+
* DataTables meets the Patternfly design pattern while maintaining accessibility.
|
5
|
+
*
|
6
|
+
* The pagination layout is expected to contain the classes as shown in the example below.
|
7
|
+
*
|
8
|
+
* Example:
|
9
|
+
*
|
10
|
+
* <!-- NOTE: Some configuration may be omitted for clarity -->
|
11
|
+
* <table class="table table-striped table-bordered table-hover" id="table1">
|
12
|
+
* <thead>
|
13
|
+
* <tr>
|
14
|
+
* <th><input type="checkbox" name="selectAll"></th>
|
15
|
+
* <th>Rendering Engine</th>
|
16
|
+
* <th>Browser</th>
|
17
|
+
* </tr>
|
18
|
+
* </thead>
|
19
|
+
* </table>
|
20
|
+
* <form class="content-view-pf-pagination table-view-pf-pagination clearfix" id="pagination1">
|
21
|
+
* <div class="form-group">
|
22
|
+
* <select class="selectpicker pagination-pf-pagesize">
|
23
|
+
* <option value="6">6</option>
|
24
|
+
* <option value="10">10</option>
|
25
|
+
* <option value="15" selected="selected">15</option>
|
26
|
+
* <option value="25">25</option>
|
27
|
+
* <option value="50">50</option>
|
28
|
+
* </select>
|
29
|
+
* <span>per page</span>
|
30
|
+
* </div>
|
31
|
+
* <div class="form-group">
|
32
|
+
* <span><span class="pagination-pf-items-current">1-15</span> of <span class="pagination-pf-items-total">75</span></span>
|
33
|
+
* <ul class="pagination pagination-pf-back">
|
34
|
+
* <li><a href="#" onclick="return false;" title="First Page"><span class="i fa fa-angle-double-left"></span></a></li>
|
35
|
+
* <li><a href="#" onclick="return false;" title="Previous Page"><span class="i fa fa-angle-left"></span></a></li>
|
36
|
+
* </ul>
|
37
|
+
* <label for="pagination1-page" class="sr-only">Current Page</label>
|
38
|
+
* <input class="pagination-pf-page" type="text" value="1" id="pagination1-page"/>
|
39
|
+
* <span>of <span class="pagination-pf-pages">5</span></span>
|
40
|
+
* <ul class="pagination pagination-pf-forward">
|
41
|
+
* <li><a href="#" onclick="return false;" title="Next Page"><span class="i fa fa-angle-right"></span></a></li>
|
42
|
+
* <li><a href="#" onclick="return false;" title="Last Page"><span class="i fa fa-angle-double-right"></span></a></li>
|
43
|
+
* </ul>
|
44
|
+
* </div>
|
45
|
+
* </form>
|
46
|
+
* <script>
|
47
|
+
* // NOTE: Some properties may be omitted for clarity
|
48
|
+
* $(document).ready(function() {
|
49
|
+
* var dt = $("#table1").DataTable({
|
50
|
+
* columns: [
|
51
|
+
* { data: null, ... },
|
52
|
+
* { data: "engine" },
|
53
|
+
* { data: "browser" }
|
54
|
+
* ],
|
55
|
+
* data: null,
|
56
|
+
* dom: "t",
|
57
|
+
* pfConfig: {
|
58
|
+
* ...
|
59
|
+
* pageSize: 15,
|
60
|
+
* paginationSelector: "#pagination1",
|
61
|
+
* }
|
62
|
+
* });
|
63
|
+
* dt.table().pfPagination.next(); // Optional API to navigate to the next page
|
64
|
+
* dt.table().pfPagination.previous(); // Optional API to navigate to the previous page
|
65
|
+
* });
|
66
|
+
* </script>
|
67
|
+
*/
|
68
|
+
(function (factory) {
|
69
|
+
"use strict";
|
70
|
+
if (typeof define === "function" && define.amd ) {
|
71
|
+
// AMD
|
72
|
+
define (["jquery", "datatables.net"], function ($) {
|
73
|
+
return factory ($, window, document);
|
74
|
+
});
|
75
|
+
} else if (typeof exports === "object") {
|
76
|
+
// CommonJS
|
77
|
+
module.exports = function (root, $) {
|
78
|
+
if (!root) {
|
79
|
+
root = window;
|
80
|
+
}
|
81
|
+
if (!$ || !$.fn.dataTable) {
|
82
|
+
$ = require("datatables.net")(root, $).$;
|
83
|
+
}
|
84
|
+
return factory($, root, root.document);
|
85
|
+
};
|
86
|
+
} else {
|
87
|
+
// Browser
|
88
|
+
factory(jQuery, window, document);
|
89
|
+
}
|
90
|
+
}(function ($, window, document, undefined) {
|
91
|
+
"use strict";
|
92
|
+
var DataTable = $.fn.dataTable;
|
93
|
+
var BACK_ACTIONS_SELECTOR = ".pagination-pf-back"; // Back navigation actions
|
94
|
+
var CURRENT_ITEMS_SELECTOR = ".pagination-pf-items-current"; // Current items text (e.g., 1-15)
|
95
|
+
var CURRENT_PAGE_SELECTOR = ".pagination-pf-page"; // Current page input
|
96
|
+
var FIRST_PAGE_SELECTOR = ".pagination-pf-back .fa-angle-double-left"; // First page button
|
97
|
+
var FORWARD_ACTIONS_SELECTOR = ".pagination-pf-forward"; // Forward navigation actions
|
98
|
+
var LAST_PAGE_SELECTOR = ".pagination-pf-forward .fa-angle-double-right"; // Last page button
|
99
|
+
var PAGE_SIZE_SELECTOR = "select.pagination-pf-pagesize"; // Page size selection
|
100
|
+
var TOTAL_ITEMS_SELECTOR = ".pagination-pf-items-total"; // Total items
|
101
|
+
var TOTAL_PAGES_SELECTOR = ".pagination-pf-pages"; // Total pages text
|
102
|
+
var PREVIOUS_PAGE_SELECTOR = ".pagination-pf-back .fa-angle-left"; // Previous page button
|
103
|
+
var NEXT_PAGE_SELECTOR = ".pagination-pf-forward .fa-angle-right"; // Next page button
|
104
|
+
|
105
|
+
DataTable.pfPagination = {};
|
106
|
+
|
107
|
+
/**
|
108
|
+
* Initialize
|
109
|
+
*
|
110
|
+
* @param {DataTable.Api} dt DataTable
|
111
|
+
* @private
|
112
|
+
*/
|
113
|
+
DataTable.pfPagination.init = function (dt) {
|
114
|
+
var ctx = dt.settings()[0];
|
115
|
+
var opts = (ctx.oInit.pfConfig) ? ctx.oInit.pfConfig : {};
|
116
|
+
|
117
|
+
ctx._pfPagination = {};
|
118
|
+
ctx._pfPagination.backActions = $(BACK_ACTIONS_SELECTOR, opts.paginationSelector); // Back navigation actions
|
119
|
+
ctx._pfPagination.currentItems = $(CURRENT_ITEMS_SELECTOR, opts.paginationSelector); // Current items
|
120
|
+
ctx._pfPagination.currentPage = $(CURRENT_PAGE_SELECTOR, opts.paginationSelector); // Current page
|
121
|
+
ctx._pfPagination.firstPage = $(FIRST_PAGE_SELECTOR, opts.paginationSelector); // First page button
|
122
|
+
ctx._pfPagination.forwardActions = $(FORWARD_ACTIONS_SELECTOR, opts.paginationSelector); // Forward navigation actions
|
123
|
+
ctx._pfPagination.lastPage = $(LAST_PAGE_SELECTOR, opts.paginationSelector); // Last page button
|
124
|
+
ctx._pfPagination.nextPage = $(NEXT_PAGE_SELECTOR, opts.paginationSelector); // Next page button
|
125
|
+
ctx._pfPagination.pageSize = $(PAGE_SIZE_SELECTOR, opts.paginationSelector); // Page size selection
|
126
|
+
ctx._pfPagination.previousPage = $(PREVIOUS_PAGE_SELECTOR, opts.paginationSelector); // Next page button
|
127
|
+
ctx._pfPagination.totalItems = $(TOTAL_ITEMS_SELECTOR, opts.paginationSelector); // Total items
|
128
|
+
ctx._pfPagination.totalPages = $(TOTAL_PAGES_SELECTOR, opts.paginationSelector); // Total pages
|
129
|
+
|
130
|
+
// Set initial page size
|
131
|
+
ctx._pfPagination.currentPageSize = (opts.pageSize !== undefined) ? opts.pageSize : 15;
|
132
|
+
|
133
|
+
// Handle page navigation
|
134
|
+
handleCurrentPage(dt);
|
135
|
+
handleFirstPage(dt);
|
136
|
+
handleLastPage(dt);
|
137
|
+
handlePageSize(dt);
|
138
|
+
handleNextPage(dt);
|
139
|
+
handlePreviousPage(dt);
|
140
|
+
|
141
|
+
// Update table on DataTables draw event
|
142
|
+
dt.on("draw.page", function () {
|
143
|
+
updateCurrentPage(dt);
|
144
|
+
updateCurrentItems(dt);
|
145
|
+
updateTotalItems(dt);
|
146
|
+
updateTotalPages(dt);
|
147
|
+
updateBackActions(dt);
|
148
|
+
updateForwardActions(dt);
|
149
|
+
});
|
150
|
+
|
151
|
+
// Initialize page info
|
152
|
+
dt.table().page.len(ctx._pfPagination.currentPageSize);
|
153
|
+
dt.table().draw('page');
|
154
|
+
};
|
155
|
+
|
156
|
+
// Local functions
|
157
|
+
|
158
|
+
/**
|
159
|
+
* Handle page navigation when enter is pressed
|
160
|
+
*
|
161
|
+
* @param {DataTable.Api} dt DataTable
|
162
|
+
* @private
|
163
|
+
*/
|
164
|
+
function handleCurrentPage (dt) {
|
165
|
+
var ctx = dt.settings()[0];
|
166
|
+
if (ctx._pfPagination.currentPage === undefined || ctx._pfPagination.currentPage.length === 0) {
|
167
|
+
return;
|
168
|
+
}
|
169
|
+
ctx._pfPagination.currentPage.on("keypress", function (e) {
|
170
|
+
var page, pageInfo = dt.table().page.info();
|
171
|
+
var keycode = (e.keyCode ? e.keyCode : e.which);
|
172
|
+
if (keycode === 13) {
|
173
|
+
e.preventDefault();
|
174
|
+
page = parseInt(this.value) - 1;
|
175
|
+
if (page >= 0 && page < pageInfo.pages) {
|
176
|
+
dt.table().page(page).draw('page');
|
177
|
+
} else {
|
178
|
+
updateCurrentPage(dt); // Always update to replace bad values
|
179
|
+
}
|
180
|
+
return false;
|
181
|
+
}
|
182
|
+
return true;
|
183
|
+
});
|
184
|
+
}
|
185
|
+
|
186
|
+
/**
|
187
|
+
* Handle page navigation when first button is selected
|
188
|
+
*
|
189
|
+
* @param {DataTable.Api} dt DataTable
|
190
|
+
* @private
|
191
|
+
*/
|
192
|
+
function handleFirstPage (dt) {
|
193
|
+
var ctx = dt.settings()[0];
|
194
|
+
if (ctx._pfPagination.firstPage === undefined || ctx._pfPagination.firstPage.length === 0) {
|
195
|
+
return;
|
196
|
+
}
|
197
|
+
$(ctx._pfPagination.firstPage).closest('li').on("click", function (e) {
|
198
|
+
dt.table().page('first').draw('page');
|
199
|
+
});
|
200
|
+
}
|
201
|
+
|
202
|
+
/**
|
203
|
+
* Handle page navigation when last button is selected
|
204
|
+
*
|
205
|
+
* @param {DataTable.Api} dt DataTable
|
206
|
+
* @private
|
207
|
+
*/
|
208
|
+
function handleLastPage (dt) {
|
209
|
+
var ctx = dt.settings()[0];
|
210
|
+
if (ctx._pfPagination.lastPage === undefined || ctx._pfPagination.lastPage.length === 0) {
|
211
|
+
return;
|
212
|
+
}
|
213
|
+
$(ctx._pfPagination.lastPage).closest('li').on("click", function (e) {
|
214
|
+
dt.table().page('last').draw('page');
|
215
|
+
});
|
216
|
+
}
|
217
|
+
|
218
|
+
/**
|
219
|
+
* Handle page navigation when next button is selected
|
220
|
+
*
|
221
|
+
* @param {DataTable.Api} dt DataTable
|
222
|
+
* @private
|
223
|
+
*/
|
224
|
+
function handleNextPage (dt) {
|
225
|
+
var ctx = dt.settings()[0];
|
226
|
+
if (ctx._pfPagination.nextPage === undefined || ctx._pfPagination.nextPage.length === 0) {
|
227
|
+
return;
|
228
|
+
}
|
229
|
+
$(ctx._pfPagination.nextPage).closest('a').on("click", function (e) {
|
230
|
+
dt.table().page('next').draw('page');
|
231
|
+
});
|
232
|
+
}
|
233
|
+
|
234
|
+
/**
|
235
|
+
* Handle page size when selected
|
236
|
+
*
|
237
|
+
* @param {DataTable.Api} dt DataTable
|
238
|
+
* @private
|
239
|
+
*/
|
240
|
+
function handlePageSize (dt) {
|
241
|
+
var ctx = dt.settings()[0];
|
242
|
+
if (ctx._pfPagination.pageSize === undefined || ctx._pfPagination.pageSize.length === 0) {
|
243
|
+
return;
|
244
|
+
}
|
245
|
+
ctx._pfPagination.pageSize.on("change", function (e) {
|
246
|
+
ctx._pfPagination.currentPageSize = parseInt(this.value);
|
247
|
+
dt.table().page.len(ctx._pfPagination.currentPageSize).draw('page');
|
248
|
+
});
|
249
|
+
}
|
250
|
+
|
251
|
+
/**
|
252
|
+
* Handle page navigation when previous button is selected
|
253
|
+
*
|
254
|
+
* @param {DataTable.Api} dt DataTable
|
255
|
+
* @private
|
256
|
+
*/
|
257
|
+
function handlePreviousPage (dt) {
|
258
|
+
var ctx = dt.settings()[0];
|
259
|
+
if (ctx._pfPagination.previousPage === undefined || ctx._pfPagination.previousPage.length === 0) {
|
260
|
+
return;
|
261
|
+
}
|
262
|
+
$(ctx._pfPagination.previousPage).closest('a').on("click", function (e) {
|
263
|
+
dt.table().page('previous').draw('page');
|
264
|
+
});
|
265
|
+
}
|
266
|
+
|
267
|
+
/**
|
268
|
+
* Update current page
|
269
|
+
*
|
270
|
+
* @param {DataTable.Api} dt DataTable
|
271
|
+
* @private
|
272
|
+
*/
|
273
|
+
function updateCurrentPage (dt) {
|
274
|
+
var ctx = dt.settings()[0];
|
275
|
+
var pageInfo = dt.table().page.info();
|
276
|
+
var page = (pageInfo.recordsDisplay === 0) ? 0 : pageInfo.page + 1;
|
277
|
+
if (ctx._pfPagination.currentPage === undefined || ctx._pfPagination.currentPage.length === 0) {
|
278
|
+
return;
|
279
|
+
}
|
280
|
+
// Disable if pagination is not available due to filtering
|
281
|
+
if (pageInfo.recordsDisplay > pageInfo.length) {
|
282
|
+
$(ctx._pfPagination.currentPage).prop("disabled", false);
|
283
|
+
} else {
|
284
|
+
$(ctx._pfPagination.currentPage).prop("disabled", true);
|
285
|
+
}
|
286
|
+
// Set current page value
|
287
|
+
$(ctx._pfPagination.currentPage).val(page);
|
288
|
+
}
|
289
|
+
|
290
|
+
/**
|
291
|
+
* Update back navigation actions
|
292
|
+
*
|
293
|
+
* @param {DataTable.Api} dt DataTable
|
294
|
+
* @private
|
295
|
+
*/
|
296
|
+
function updateBackActions (dt) {
|
297
|
+
var ctx = dt.settings()[0];
|
298
|
+
var pageInfo = dt.table().page.info();
|
299
|
+
if (pageInfo.page === 0) {
|
300
|
+
$("li", ctx._pfPagination.backActions).each(function () {
|
301
|
+
$(this).addClass("disabled");
|
302
|
+
});
|
303
|
+
} else {
|
304
|
+
$("li", ctx._pfPagination.backActions).each(function () {
|
305
|
+
$(this).removeClass("disabled");
|
306
|
+
});
|
307
|
+
}
|
308
|
+
}
|
309
|
+
|
310
|
+
/**
|
311
|
+
* Update current items
|
312
|
+
*
|
313
|
+
* @param {DataTable.Api} dt DataTable
|
314
|
+
* @private
|
315
|
+
*/
|
316
|
+
function updateCurrentItems (dt) {
|
317
|
+
var ctx = dt.settings()[0];
|
318
|
+
var pageInfo = dt.table().page.info();
|
319
|
+
var start = (pageInfo.recordsDisplay === 0) ? 0 : pageInfo.start + 1;
|
320
|
+
ctx._pfPagination.currentItems.html(start + "-" + pageInfo.end);
|
321
|
+
}
|
322
|
+
|
323
|
+
/**
|
324
|
+
* Update forward navigation actions
|
325
|
+
*
|
326
|
+
* @param {DataTable.Api} dt DataTable
|
327
|
+
* @private
|
328
|
+
*/
|
329
|
+
function updateForwardActions (dt) {
|
330
|
+
var ctx = dt.settings()[0];
|
331
|
+
var pageInfo = dt.table().page.info();
|
332
|
+
if (pageInfo.recordsDisplay === 0 || pageInfo.page === pageInfo.pages - 1) {
|
333
|
+
$("li", ctx._pfPagination.forwardActions).each(function () {
|
334
|
+
$(this).addClass("disabled");
|
335
|
+
});
|
336
|
+
} else {
|
337
|
+
$("li", ctx._pfPagination.forwardActions).each(function () {
|
338
|
+
$(this).removeClass("disabled");
|
339
|
+
});
|
340
|
+
}
|
341
|
+
}
|
342
|
+
|
343
|
+
/**
|
344
|
+
* Update total items
|
345
|
+
*
|
346
|
+
* @param {DataTable.Api} dt DataTable
|
347
|
+
* @private
|
348
|
+
*/
|
349
|
+
function updateTotalItems (dt) {
|
350
|
+
var ctx = dt.settings()[0];
|
351
|
+
var pageInfo = dt.table().page.info();
|
352
|
+
|
353
|
+
ctx._pfPagination.totalItems.html(pageInfo.recordsDisplay);
|
354
|
+
}
|
355
|
+
|
356
|
+
/**
|
357
|
+
* Update total pages
|
358
|
+
*
|
359
|
+
* @param {DataTable.Api} dt DataTable
|
360
|
+
* @private
|
361
|
+
*/
|
362
|
+
function updateTotalPages (dt) {
|
363
|
+
var ctx = dt.settings()[0];
|
364
|
+
var pageInfo = dt.table().page.info();
|
365
|
+
|
366
|
+
ctx._pfPagination.totalPages.html(pageInfo.pages);
|
367
|
+
}
|
368
|
+
|
369
|
+
// DataTables API
|
370
|
+
|
371
|
+
/**
|
372
|
+
* Navigate to next page
|
373
|
+
*
|
374
|
+
* Example: dt.table().pfPagination.next();
|
375
|
+
*/
|
376
|
+
DataTable.Api.register("pfPagination.next()", function () {
|
377
|
+
return this.iterator("table", function (ctx) {
|
378
|
+
handleNextPage(new DataTable.Api(ctx));
|
379
|
+
});
|
380
|
+
});
|
381
|
+
|
382
|
+
/**
|
383
|
+
* Navigate to previous page
|
384
|
+
*
|
385
|
+
* Example: dt.table().pfPagination.previous();
|
386
|
+
*/
|
387
|
+
DataTable.Api.register("pfPagination.previous()", function () {
|
388
|
+
return this.iterator("table", function (ctx) {
|
389
|
+
handlePreviousPage(new DataTable.Api(ctx));
|
390
|
+
});
|
391
|
+
});
|
392
|
+
|
393
|
+
// DataTables creation
|
394
|
+
$(document).on("init.dt", function (e, ctx, json) {
|
395
|
+
if (e.namespace !== "dt") {
|
396
|
+
return;
|
397
|
+
}
|
398
|
+
DataTable.pfPagination.init(new DataTable.Api(ctx));
|
399
|
+
});
|
400
|
+
return DataTable.pfPagination;
|
401
|
+
}));
|
@@ -0,0 +1 @@
|
|
1
|
+
!function(factory){"use strict";"function"==typeof define&&define.amd?define(["jquery","datatables.net"],function($){return factory($,window,document)}):"object"==typeof exports?module.exports=function(root,$){return root||(root=window),$&&$.fn.dataTable||($=require("datatables.net")(root,$).$),factory($,root,root.document)}:factory(jQuery,window,document)}(function($,window,document,undefined){"use strict";function handleCurrentPage(dt){var ctx=dt.settings()[0];ctx._pfPagination.currentPage!==undefined&&0!==ctx._pfPagination.currentPage.length&&ctx._pfPagination.currentPage.on("keypress",function(e){var page,pageInfo=dt.table().page.info();return 13!==(e.keyCode?e.keyCode:e.which)||(e.preventDefault(),page=parseInt(this.value)-1,page>=0&&page<pageInfo.pages?dt.table().page(page).draw("page"):updateCurrentPage(dt),!1)})}function handleFirstPage(dt){var ctx=dt.settings()[0];ctx._pfPagination.firstPage!==undefined&&0!==ctx._pfPagination.firstPage.length&&$(ctx._pfPagination.firstPage).closest("li").on("click",function(e){dt.table().page("first").draw("page")})}function handleLastPage(dt){var ctx=dt.settings()[0];ctx._pfPagination.lastPage!==undefined&&0!==ctx._pfPagination.lastPage.length&&$(ctx._pfPagination.lastPage).closest("li").on("click",function(e){dt.table().page("last").draw("page")})}function handleNextPage(dt){var ctx=dt.settings()[0];ctx._pfPagination.nextPage!==undefined&&0!==ctx._pfPagination.nextPage.length&&$(ctx._pfPagination.nextPage).closest("a").on("click",function(e){dt.table().page("next").draw("page")})}function handlePageSize(dt){var ctx=dt.settings()[0];ctx._pfPagination.pageSize!==undefined&&0!==ctx._pfPagination.pageSize.length&&ctx._pfPagination.pageSize.on("change",function(e){ctx._pfPagination.currentPageSize=parseInt(this.value),dt.table().page.len(ctx._pfPagination.currentPageSize).draw("page")})}function handlePreviousPage(dt){var ctx=dt.settings()[0];ctx._pfPagination.previousPage!==undefined&&0!==ctx._pfPagination.previousPage.length&&$(ctx._pfPagination.previousPage).closest("a").on("click",function(e){dt.table().page("previous").draw("page")})}function updateCurrentPage(dt){var ctx=dt.settings()[0],pageInfo=dt.table().page.info(),page=0===pageInfo.recordsDisplay?0:pageInfo.page+1;ctx._pfPagination.currentPage!==undefined&&0!==ctx._pfPagination.currentPage.length&&(pageInfo.recordsDisplay>pageInfo.length?$(ctx._pfPagination.currentPage).prop("disabled",!1):$(ctx._pfPagination.currentPage).prop("disabled",!0),$(ctx._pfPagination.currentPage).val(page))}function updateBackActions(dt){var ctx=dt.settings()[0];0===dt.table().page.info().page?$("li",ctx._pfPagination.backActions).each(function(){$(this).addClass("disabled")}):$("li",ctx._pfPagination.backActions).each(function(){$(this).removeClass("disabled")})}function updateCurrentItems(dt){var ctx=dt.settings()[0],pageInfo=dt.table().page.info(),start=0===pageInfo.recordsDisplay?0:pageInfo.start+1;ctx._pfPagination.currentItems.html(start+"-"+pageInfo.end)}function updateForwardActions(dt){var ctx=dt.settings()[0],pageInfo=dt.table().page.info();0===pageInfo.recordsDisplay||pageInfo.page===pageInfo.pages-1?$("li",ctx._pfPagination.forwardActions).each(function(){$(this).addClass("disabled")}):$("li",ctx._pfPagination.forwardActions).each(function(){$(this).removeClass("disabled")})}function updateTotalItems(dt){var ctx=dt.settings()[0],pageInfo=dt.table().page.info();ctx._pfPagination.totalItems.html(pageInfo.recordsDisplay)}function updateTotalPages(dt){var ctx=dt.settings()[0],pageInfo=dt.table().page.info();ctx._pfPagination.totalPages.html(pageInfo.pages)}var DataTable=$.fn.dataTable;return DataTable.pfPagination={},DataTable.pfPagination.init=function(dt){var ctx=dt.settings()[0],opts=ctx.oInit.pfConfig?ctx.oInit.pfConfig:{};ctx._pfPagination={},ctx._pfPagination.backActions=$(".pagination-pf-back",opts.paginationSelector),ctx._pfPagination.currentItems=$(".pagination-pf-items-current",opts.paginationSelector),ctx._pfPagination.currentPage=$(".pagination-pf-page",opts.paginationSelector),ctx._pfPagination.firstPage=$(".pagination-pf-back .fa-angle-double-left",opts.paginationSelector),ctx._pfPagination.forwardActions=$(".pagination-pf-forward",opts.paginationSelector),ctx._pfPagination.lastPage=$(".pagination-pf-forward .fa-angle-double-right",opts.paginationSelector),ctx._pfPagination.nextPage=$(".pagination-pf-forward .fa-angle-right",opts.paginationSelector),ctx._pfPagination.pageSize=$("select.pagination-pf-pagesize",opts.paginationSelector),ctx._pfPagination.previousPage=$(".pagination-pf-back .fa-angle-left",opts.paginationSelector),ctx._pfPagination.totalItems=$(".pagination-pf-items-total",opts.paginationSelector),ctx._pfPagination.totalPages=$(".pagination-pf-pages",opts.paginationSelector),ctx._pfPagination.currentPageSize=opts.pageSize!==undefined?opts.pageSize:15,handleCurrentPage(dt),handleFirstPage(dt),handleLastPage(dt),handlePageSize(dt),handleNextPage(dt),handlePreviousPage(dt),dt.on("draw.page",function(){updateCurrentPage(dt),updateCurrentItems(dt),updateTotalItems(dt),updateTotalPages(dt),updateBackActions(dt),updateForwardActions(dt)}),dt.table().page.len(ctx._pfPagination.currentPageSize),dt.table().draw("page")},DataTable.Api.register("pfPagination.next()",function(){return this.iterator("table",function(ctx){handleNextPage(new DataTable.Api(ctx))})}),DataTable.Api.register("pfPagination.previous()",function(){return this.iterator("table",function(ctx){handlePreviousPage(new DataTable.Api(ctx))})}),$(document).on("init.dt",function(e,ctx,json){"dt"===e.namespace&&DataTable.pfPagination.init(new DataTable.Api(ctx))}),DataTable.pfPagination});
|
@@ -0,0 +1,214 @@
|
|
1
|
+
/**
|
2
|
+
* @summary pfResize for DataTables
|
3
|
+
* @description A collection of API methods providing resize functionality in DataTables. This ensures DataTables
|
4
|
+
* meets the Patternfly design pattern for IE browsers. Inline actions are typically located in the last column of
|
5
|
+
* DataTables and expected to be styled with table-view-pf-actions. Inline action buttons must also be wrapped with the
|
6
|
+
* table-view-pf-btn class.
|
7
|
+
*
|
8
|
+
* Example:
|
9
|
+
*
|
10
|
+
* <!-- NOTE: Some configuration may be omitted for clarity -->
|
11
|
+
* ...
|
12
|
+
* <table class="table table-striped table-bordered table-hover" id="table1">
|
13
|
+
* <thead>
|
14
|
+
* <tr>
|
15
|
+
* <th><input type="checkbox" name="selectAll"></th>
|
16
|
+
* <th>Rendering Engine</th>
|
17
|
+
* <th>Browser</th>
|
18
|
+
* <th colspan="2">Actions</th>
|
19
|
+
* </tr>
|
20
|
+
* </thead>
|
21
|
+
* </table>
|
22
|
+
* ...
|
23
|
+
* <script>
|
24
|
+
* // NOTE: Some properties may be omitted for clarity
|
25
|
+
* $(document).ready(function() {
|
26
|
+
* var dt = $("#table1").DataTable({
|
27
|
+
* columns: [
|
28
|
+
* { data: null, ... },
|
29
|
+
* { data: "engine" },
|
30
|
+
* { data: "browser" }
|
31
|
+
* { data: null,
|
32
|
+
* className: "table-view-pf-actions",
|
33
|
+
* render: function (data, type, full, meta) {
|
34
|
+
* // Inline action button renderer
|
35
|
+
* return '<div class="table-view-pf-btn"><button class="btn btn-default" type="button">Actions</button></div>';
|
36
|
+
* }
|
37
|
+
* }, {
|
38
|
+
* data: null,
|
39
|
+
* className: "table-view-pf-actions",
|
40
|
+
* render: function (data, type, full, meta) {
|
41
|
+
* // Inline action kebab renderer
|
42
|
+
* return '<div class="dropdown dropdown-kebab-pf">' +
|
43
|
+
* '<button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">' +
|
44
|
+
* '<span class="fa fa-ellipsis-v"></span></button>' +
|
45
|
+
* '<ul class="dropdown-menu dropdown-menu-right" aria-labelledby="dropdownKebabRight">' +
|
46
|
+
* '<li><a href="#">Action</a></li>' +
|
47
|
+
* '<li><a href="#">Another action</a></li>' +
|
48
|
+
* '<li><a href="#">Something else here</a></li>' +
|
49
|
+
* '<li role="separator" class="divider"></li>' +
|
50
|
+
* '<li><a href="#">Separated link</a></li></ul></div>';
|
51
|
+
* }
|
52
|
+
* }
|
53
|
+
* ],
|
54
|
+
* data: [
|
55
|
+
* { engine: "Gecko", browser: "Firefox" }
|
56
|
+
* { engine: "Trident", browser: "Mozilla" }
|
57
|
+
* ],
|
58
|
+
* dom: "t",
|
59
|
+
* pfConfig: {
|
60
|
+
* ...
|
61
|
+
* }
|
62
|
+
* });
|
63
|
+
* dt.table().pfResize.resize(); // Optional API to force resize
|
64
|
+
* });
|
65
|
+
* </script>
|
66
|
+
*
|
67
|
+
* Note: This functionality requires the following Javascript library files to be loaded:
|
68
|
+
*
|
69
|
+
* https://cdn.datatables.net/select/1.2.0/js/dataTables.select.min.js
|
70
|
+
*/
|
71
|
+
(function (factory) {
|
72
|
+
"use strict";
|
73
|
+
if (typeof define === "function" && define.amd ) {
|
74
|
+
// AMD
|
75
|
+
define (["jquery", "datatables.net"], function ($) {
|
76
|
+
return factory ($, window, document);
|
77
|
+
});
|
78
|
+
} else if (typeof exports === "object") {
|
79
|
+
// CommonJS
|
80
|
+
module.exports = function (root, $) {
|
81
|
+
if (!root) {
|
82
|
+
root = window;
|
83
|
+
}
|
84
|
+
if (!$ || !$.fn.dataTable) {
|
85
|
+
$ = require("datatables.net")(root, $).$;
|
86
|
+
}
|
87
|
+
return factory($, root, root.document);
|
88
|
+
};
|
89
|
+
} else {
|
90
|
+
// Browser
|
91
|
+
factory(jQuery, window, document);
|
92
|
+
}
|
93
|
+
}(function ($, window, document, undefined) {
|
94
|
+
"use strict";
|
95
|
+
var DataTable = $.fn.dataTable;
|
96
|
+
var BUTTON_ACTIONS_SELECTOR = "td.table-view-pf-actions .table-view-pf-btn";
|
97
|
+
var KEBAB_ACTIONS_SELECTOR = "td.table-view-pf-actions .dropdown";
|
98
|
+
|
99
|
+
DataTable.pfResize = {};
|
100
|
+
|
101
|
+
/**
|
102
|
+
* Initialize
|
103
|
+
*
|
104
|
+
* @param {DataTable.Api} dt DataTable
|
105
|
+
* @private
|
106
|
+
*/
|
107
|
+
DataTable.pfResize.init = function (dt) {
|
108
|
+
var ctx = dt.settings()[0];
|
109
|
+
|
110
|
+
ctx._pfResize = {};
|
111
|
+
|
112
|
+
if (isIE()) {
|
113
|
+
// Resize buttons to fill table cells.
|
114
|
+
$(window).on("resize", function () {
|
115
|
+
resize(dt);
|
116
|
+
});
|
117
|
+
|
118
|
+
// Initialize
|
119
|
+
resize(dt);
|
120
|
+
}
|
121
|
+
};
|
122
|
+
|
123
|
+
// Local functions
|
124
|
+
|
125
|
+
/**
|
126
|
+
* Get inline actions
|
127
|
+
*
|
128
|
+
* @param {DataTable.Api} dt DataTable
|
129
|
+
* @private
|
130
|
+
*/
|
131
|
+
function getActions (dt) {
|
132
|
+
return $(BUTTON_ACTIONS_SELECTOR + ", " + KEBAB_ACTIONS_SELECTOR, dt.table().container());
|
133
|
+
}
|
134
|
+
|
135
|
+
/**
|
136
|
+
* Detect IE
|
137
|
+
*
|
138
|
+
* @return {boolean} True if IE is detected
|
139
|
+
* @private
|
140
|
+
*/
|
141
|
+
function isIE () {
|
142
|
+
return /(MSIE|Trident\/|Edge\/)/i.test(window.navigator.userAgent);
|
143
|
+
}
|
144
|
+
|
145
|
+
/**
|
146
|
+
* Reset table cell height prior to resizing inline actions
|
147
|
+
*
|
148
|
+
* @param {DataTable.Api} dt DataTable
|
149
|
+
* @param {Object} actions Inline actions to reset height
|
150
|
+
* @private
|
151
|
+
*/
|
152
|
+
function resetTableCells (dt, actions) {
|
153
|
+
if (actions === undefined || actions.length === 0) {
|
154
|
+
return;
|
155
|
+
}
|
156
|
+
$(actions).each(function (index, el) {
|
157
|
+
$(el).css({height: "auto"});
|
158
|
+
});
|
159
|
+
}
|
160
|
+
|
161
|
+
/**
|
162
|
+
* Resize inline actions
|
163
|
+
*
|
164
|
+
* @param {DataTable.Api} dt DataTable
|
165
|
+
* @private
|
166
|
+
*/
|
167
|
+
function resize (dt) {
|
168
|
+
var actions = $(BUTTON_ACTIONS_SELECTOR + ", " + KEBAB_ACTIONS_SELECTOR, dt.table().container());
|
169
|
+
resetTableCells(dt, actions);
|
170
|
+
resizeInlineActions(dt, actions);
|
171
|
+
}
|
172
|
+
|
173
|
+
/**
|
174
|
+
* Resize inline actions to fill table cells
|
175
|
+
*
|
176
|
+
* @param {DataTable.Api} dt DataTable
|
177
|
+
* @param {Object} actions Inline actions to resize
|
178
|
+
* @private
|
179
|
+
*/
|
180
|
+
function resizeInlineActions (dt, actions) {
|
181
|
+
if (actions === undefined || actions.length === 0) {
|
182
|
+
return;
|
183
|
+
}
|
184
|
+
$(actions).each(function (index, el) {
|
185
|
+
var parent = $(el).parent("td");
|
186
|
+
if (parent === undefined || parent.length === 0) {
|
187
|
+
return;
|
188
|
+
}
|
189
|
+
$(el).css({height: parent[0].clientHeight});
|
190
|
+
});
|
191
|
+
}
|
192
|
+
|
193
|
+
// DataTables API
|
194
|
+
|
195
|
+
/**
|
196
|
+
* Resize inline actions
|
197
|
+
*
|
198
|
+
* Example: dt.table().pfResize.resize();
|
199
|
+
*/
|
200
|
+
DataTable.Api.register("pfResize.resize()", function () {
|
201
|
+
return this.iterator("table", function (ctx) {
|
202
|
+
resize(new DataTable.Api(ctx));
|
203
|
+
});
|
204
|
+
});
|
205
|
+
|
206
|
+
// DataTables creation
|
207
|
+
$(document).on("init.dt", function (e, ctx, json) {
|
208
|
+
if (e.namespace !== "dt") {
|
209
|
+
return;
|
210
|
+
}
|
211
|
+
DataTable.pfResize.init(new DataTable.Api(ctx));
|
212
|
+
});
|
213
|
+
return DataTable.pfResize;
|
214
|
+
}));
|
@@ -0,0 +1 @@
|
|
1
|
+
!function(factory){"use strict";"function"==typeof define&&define.amd?define(["jquery","datatables.net"],function($){return factory($,window,document)}):"object"==typeof exports?module.exports=function(root,$){return root||(root=window),$&&$.fn.dataTable||($=require("datatables.net")(root,$).$),factory($,root,root.document)}:factory(jQuery,window,document)}(function($,window,document,undefined){"use strict";function isIE(){return/(MSIE|Trident\/|Edge\/)/i.test(window.navigator.userAgent)}function resetTableCells(dt,actions){actions!==undefined&&0!==actions.length&&$(actions).each(function(index,el){$(el).css({height:"auto"})})}function resize(dt){var actions=$(BUTTON_ACTIONS_SELECTOR+", "+KEBAB_ACTIONS_SELECTOR,dt.table().container());resetTableCells(dt,actions),resizeInlineActions(dt,actions)}function resizeInlineActions(dt,actions){actions!==undefined&&0!==actions.length&&$(actions).each(function(index,el){var parent=$(el).parent("td");parent!==undefined&&0!==parent.length&&$(el).css({height:parent[0].clientHeight})})}var DataTable=$.fn.dataTable,BUTTON_ACTIONS_SELECTOR="td.table-view-pf-actions .table-view-pf-btn",KEBAB_ACTIONS_SELECTOR="td.table-view-pf-actions .dropdown";return DataTable.pfResize={},DataTable.pfResize.init=function(dt){dt.settings()[0]._pfResize={},isIE()&&($(window).on("resize",function(){resize(dt)}),resize(dt))},DataTable.Api.register("pfResize.resize()",function(){return this.iterator("table",function(ctx){resize(new DataTable.Api(ctx))})}),$(document).on("init.dt",function(e,ctx,json){"dt"===e.namespace&&DataTable.pfResize.init(new DataTable.Api(ctx))}),DataTable.pfResize});
|