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
@@ -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});
|