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,429 @@
|
|
1
|
+
/**
|
2
|
+
* @summary pfFilter for DataTables
|
3
|
+
* @description A collection of API methods providing simple filter functionality for DataTables. This ensures
|
4
|
+
* DataTables meets the Patternfly design pattern with a toolbar.
|
5
|
+
*
|
6
|
+
* To apply a filter, the user must press enter in the given filter input. The user may apply a filter to a different
|
7
|
+
* column via the given filter drop down. After a filter has been applied, the filter results text, active filter
|
8
|
+
* controls, and a clear all control are shown.
|
9
|
+
*
|
10
|
+
* The toolbar and empty state layouts are expected to contain the classes as shown in the example below.
|
11
|
+
*
|
12
|
+
* Example:
|
13
|
+
*
|
14
|
+
* <!-- NOTE: Some configuration may be omitted for clarity -->
|
15
|
+
* <div class="row toolbar-pf table-view-pf-toolbar" id="toolbar1">
|
16
|
+
* <div class="col-sm-12">
|
17
|
+
* <form class="toolbar-pf-actions">
|
18
|
+
* <div class="form-group toolbar-pf-filter">
|
19
|
+
* <label class="sr-only" for="filter">Rendering Engine</label>
|
20
|
+
* <div class="input-group">
|
21
|
+
* <div class="input-group-btn">
|
22
|
+
* <button type="button" class="btn btn-default dropdown-toggle" id="filter" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Rendering Engine <span class="caret"></span></button>
|
23
|
+
* <ul class="dropdown-menu">
|
24
|
+
* <li><a href="#" id="filter1">Rendering Engine</a></li>
|
25
|
+
* <li><a href="#" id="filter2">Browser</a></li>
|
26
|
+
* </ul>
|
27
|
+
* </div>
|
28
|
+
* <input type="text" class="form-control" placeholder="Filter By Rendering Engine..." autocomplete="off" id="filterInput">
|
29
|
+
* </div>
|
30
|
+
* </div>
|
31
|
+
* ...
|
32
|
+
* </form>
|
33
|
+
* <div class="row toolbar-pf-results">
|
34
|
+
* <div class="col-sm-9">
|
35
|
+
* <div class="hidden">
|
36
|
+
* <h5>0 Results</h5>
|
37
|
+
* <p>Active filters:</p>
|
38
|
+
* <ul class="list-inline"></ul>
|
39
|
+
* <p><a href="#">Clear All Filters</a></p>
|
40
|
+
* </div>
|
41
|
+
* </div>
|
42
|
+
* <div class="col-sm-3 table-view-pf-select-results">
|
43
|
+
* <strong>0</strong> of <strong>0</strong> selected
|
44
|
+
* </div>
|
45
|
+
* </div>
|
46
|
+
* </div>
|
47
|
+
* </div>
|
48
|
+
* <table class="table table-striped table-bordered table-hover" id="table1">
|
49
|
+
* <thead>
|
50
|
+
* <tr>
|
51
|
+
* <th><input type="checkbox" name="selectAll"></th>
|
52
|
+
* <th>Rendering Engine</th>
|
53
|
+
* <th>Browser</th>
|
54
|
+
* </tr>
|
55
|
+
* </thead>
|
56
|
+
* </table>
|
57
|
+
* ...
|
58
|
+
* <script>
|
59
|
+
* // NOTE: Some properties may be omitted for clarity
|
60
|
+
* $(document).ready(function() {
|
61
|
+
* var dt = $("#table1").DataTable({
|
62
|
+
* columns: [
|
63
|
+
* { data: null, ... },
|
64
|
+
* { data: "engine" },
|
65
|
+
* { data: "browser" }
|
66
|
+
* ],
|
67
|
+
* data: [
|
68
|
+
* { engine: "Gecko", browser: "Firefox" }
|
69
|
+
* { engine: "Trident", browser: "Mozilla" }
|
70
|
+
* ],
|
71
|
+
* dom: "t",
|
72
|
+
* pfConfig: {
|
73
|
+
* ...
|
74
|
+
* filterCaseInsensitive: true,
|
75
|
+
* filterCols: [
|
76
|
+
* null,
|
77
|
+
* {
|
78
|
+
* default: true,
|
79
|
+
* optionSelector: "#filter1",
|
80
|
+
* placeholder: "Filter By Rendering Engine..."
|
81
|
+
* }, {
|
82
|
+
* optionSelector: "#filter2",
|
83
|
+
* placeholder: "Filter By Browser..."
|
84
|
+
* }
|
85
|
+
* ],
|
86
|
+
* toolbarSelector: "#toolbar1"
|
87
|
+
* }
|
88
|
+
* });
|
89
|
+
* // Optional API to clear filters
|
90
|
+
* dt.table().pfFilter.clearFilters();
|
91
|
+
*
|
92
|
+
* // Optional API to add filter
|
93
|
+
* dt.table().pfFilter.addFilter({
|
94
|
+
* column: 2,
|
95
|
+
* name: "Browser",
|
96
|
+
* value: "Firefox"
|
97
|
+
* });
|
98
|
+
* });
|
99
|
+
* </script>
|
100
|
+
*
|
101
|
+
* Note: This functionality requires the following Javascript library files to be loaded:
|
102
|
+
*
|
103
|
+
* https://cdn.datatables.net/select/1.2.0/js/dataTables.select.min.js
|
104
|
+
*/
|
105
|
+
(function (factory) {
|
106
|
+
"use strict";
|
107
|
+
if (typeof define === "function" && define.amd ) {
|
108
|
+
// AMD
|
109
|
+
define (["jquery", "datatables.net"], function ($) {
|
110
|
+
return factory ($, window, document);
|
111
|
+
});
|
112
|
+
} else if (typeof exports === "object") {
|
113
|
+
// CommonJS
|
114
|
+
module.exports = function (root, $) {
|
115
|
+
if (!root) {
|
116
|
+
root = window;
|
117
|
+
}
|
118
|
+
if (!$ || !$.fn.dataTable) {
|
119
|
+
$ = require("datatables.net")(root, $).$;
|
120
|
+
}
|
121
|
+
return factory($, root, root.document);
|
122
|
+
};
|
123
|
+
} else {
|
124
|
+
// Browser
|
125
|
+
factory(jQuery, window, document);
|
126
|
+
}
|
127
|
+
}(function ($, window, document, undefined) {
|
128
|
+
"use strict";
|
129
|
+
var DataTable = $.fn.dataTable;
|
130
|
+
var ACTIVE_FILTER_CONTROLS_SELECTOR = ".list-inline"; // Active filter controls
|
131
|
+
var CLEAR_FILTERS_SELECTOR = ".toolbar-pf-results a"; // Clear filters control
|
132
|
+
var FILTER_SELECTOR = ".toolbar-pf-filter"; // Filter input
|
133
|
+
var FILTER_BUTTON_SELECTOR = FILTER_SELECTOR + " button"; // Filter button
|
134
|
+
var FILTER_INPUT_SELECTOR = FILTER_SELECTOR + " input"; // Filter input
|
135
|
+
var FILTER_LABEL_SELECTOR = FILTER_SELECTOR + " label"; // Filter label
|
136
|
+
var RESULTS_SELECTOR = ".toolbar-pf-results"; // Toolbar results row
|
137
|
+
var FILTER_RESULTS_SELECTOR = RESULTS_SELECTOR + " h5"; // Toolbar filter results
|
138
|
+
|
139
|
+
DataTable.pfFilter = {};
|
140
|
+
|
141
|
+
/**
|
142
|
+
* Initialize
|
143
|
+
*
|
144
|
+
* @param {DataTable.Api} dt DataTable
|
145
|
+
* @private
|
146
|
+
*/
|
147
|
+
DataTable.pfFilter.init = function (dt) {
|
148
|
+
var i;
|
149
|
+
var ctx = dt.settings()[0];
|
150
|
+
var opts = (ctx.oInit.pfConfig) ? ctx.oInit.pfConfig : {};
|
151
|
+
|
152
|
+
ctx._pfFilter = {};
|
153
|
+
ctx._pfFilter.filterButton = $(FILTER_BUTTON_SELECTOR, opts.toolbarSelector); // Filter button
|
154
|
+
ctx._pfFilter.filterCols = opts.filterCols; // Filter colums config
|
155
|
+
ctx._pfFilter.filterLabel = $(FILTER_LABEL_SELECTOR, opts.toolbarSelector); // Filter label
|
156
|
+
ctx._pfFilter.filterInput = $(FILTER_INPUT_SELECTOR, opts.toolbarSelector); // Filter input
|
157
|
+
ctx._pfFilter.filters = []; // Applied filters array
|
158
|
+
ctx._pfFilter.activeFilterControls = $(ACTIVE_FILTER_CONTROLS_SELECTOR, opts.toolbarSelector); // Active filter controls
|
159
|
+
ctx._pfFilter.activeFilters = ctx._pfFilter.activeFilterControls.closest("div"); // Active filters container
|
160
|
+
ctx._pfFilter.clearFilters = $(CLEAR_FILTERS_SELECTOR, opts.toolbarSelector); // Clear filters control
|
161
|
+
ctx._pfFilter.results = $(RESULTS_SELECTOR, opts.toolbarSelector); // Toolbar results row
|
162
|
+
ctx._pfFilter.filterCaseInsensitive = opts.filterCaseInsensitive; // Filter filter case insensitive
|
163
|
+
ctx._pfFilter.filterResults = $(FILTER_RESULTS_SELECTOR, opts.toolbarSelector); // Toolbar filter results
|
164
|
+
|
165
|
+
if (ctx._pfFilter.filterCols === undefined) {
|
166
|
+
return;
|
167
|
+
}
|
168
|
+
|
169
|
+
// Set default filter properties
|
170
|
+
for (i = 0; i < ctx._pfFilter.filterCols.length; i++) {
|
171
|
+
if (ctx._pfFilter.filterCols[i] === null) {
|
172
|
+
continue;
|
173
|
+
}
|
174
|
+
ctx._pfFilter.filterColumn = i; // Current filter column
|
175
|
+
ctx._pfFilter.filterName = $(ctx._pfFilter.filterCols[i].optionSelector).text(); // Name of current filter
|
176
|
+
if (ctx._pfFilter.filterCols[i].default === true) {
|
177
|
+
break;
|
178
|
+
}
|
179
|
+
}
|
180
|
+
|
181
|
+
// Handle click on filter menu to set current filter column and name
|
182
|
+
for (i = 0; i < ctx._pfFilter.filterCols.length; i++) {
|
183
|
+
handleFilterOption(dt, i); // Need to pass value of i as a function
|
184
|
+
}
|
185
|
+
|
186
|
+
// Handle actions when enter is pressed within filter input
|
187
|
+
handleFilterInput(dt);
|
188
|
+
|
189
|
+
// Handle actions when clear filters control is selected
|
190
|
+
handleClearFilters(dt);
|
191
|
+
|
192
|
+
// Simple filter
|
193
|
+
$.fn.dataTable.ext.search.push(function (ctx, data, dataIndex) {
|
194
|
+
var showThisRow = true;
|
195
|
+
// Must match all filters
|
196
|
+
if (ctx._pfFilter) {
|
197
|
+
$.each(ctx._pfFilter.filters, function (index, filter) {
|
198
|
+
if (ctx._pfFilter.filterCaseInsensitive !== undefined && ctx._pfFilter.filterCaseInsensitive === true) {
|
199
|
+
if (data[filter.column].toLowerCase().indexOf(filter.value.toLowerCase()) === -1) {
|
200
|
+
showThisRow = false;
|
201
|
+
}
|
202
|
+
} else {
|
203
|
+
if (data[filter.column].indexOf(filter.value) === -1) {
|
204
|
+
showThisRow = false;
|
205
|
+
}
|
206
|
+
}
|
207
|
+
});
|
208
|
+
}
|
209
|
+
return showThisRow;
|
210
|
+
});
|
211
|
+
};
|
212
|
+
|
213
|
+
// Local functions
|
214
|
+
|
215
|
+
/**
|
216
|
+
* Add active filter control
|
217
|
+
*
|
218
|
+
* @param {DataTable.Api} dt DataTable
|
219
|
+
* @param {object} filter Properties associated with a new filter
|
220
|
+
* @param {string} filter.column - Column associated with DataTable
|
221
|
+
* @param {string} filter.name - Name of the filter
|
222
|
+
* @param {string} filter.value - Value of the filter
|
223
|
+
* @private
|
224
|
+
*/
|
225
|
+
function addActiveFilterControl (dt, filter) {
|
226
|
+
var ctx = dt.settings()[0];
|
227
|
+
var i;
|
228
|
+
|
229
|
+
// Append active filter control
|
230
|
+
ctx._pfFilter.activeFilterControls.append('<li><span class="label label-info">' + filter.name + ': ' +
|
231
|
+
filter.value + '<a href="#"><span class="pficon pficon-close"/></a></span></li>');
|
232
|
+
|
233
|
+
// Handle click to clear active filter
|
234
|
+
$("a", ctx._pfFilter.activeFilterControls).last().on("click", function (e) {
|
235
|
+
// Find existing filter and remove
|
236
|
+
for (i = 0; i < ctx._pfFilter.filters.length; i++) {
|
237
|
+
if (ctx._pfFilter.filters[i].column === filter.column && ctx._pfFilter.filters[i].value === filter.value) {
|
238
|
+
ctx._pfFilter.filters.splice(i, 1);
|
239
|
+
$(this).parents("li").remove();
|
240
|
+
break;
|
241
|
+
}
|
242
|
+
}
|
243
|
+
if (ctx._pfFilter.filters.length === 0) {
|
244
|
+
ctx._pfFilter.activeFilters.addClass("hidden"); // Hide
|
245
|
+
}
|
246
|
+
dt.draw();
|
247
|
+
updateFilterResults(dt);
|
248
|
+
});
|
249
|
+
// Show active filters
|
250
|
+
ctx._pfFilter.activeFilters.removeClass("hidden");
|
251
|
+
}
|
252
|
+
|
253
|
+
/**
|
254
|
+
* Add filter
|
255
|
+
*
|
256
|
+
* @param {DataTable.Api} dt DataTable
|
257
|
+
* @param {object} filter Properties associated with a new filter
|
258
|
+
* @param {string} filter.column - Column associated with DataTable
|
259
|
+
* @param {string} filter.name - Name of the filter
|
260
|
+
* @param {string} filter.value - Value of the filter
|
261
|
+
* @private
|
262
|
+
*/
|
263
|
+
function addFilter (dt, filter) {
|
264
|
+
var ctx = dt.settings()[0];
|
265
|
+
var found = false;
|
266
|
+
|
267
|
+
// Find existing entry
|
268
|
+
$.grep(ctx._pfFilter.filters, function (f) {
|
269
|
+
if (f.column === filter.column && f.value === filter.value) {
|
270
|
+
found = true;
|
271
|
+
}
|
272
|
+
});
|
273
|
+
|
274
|
+
// Add new filter
|
275
|
+
if (!found) {
|
276
|
+
ctx._pfFilter.filters.push(filter);
|
277
|
+
dt.draw();
|
278
|
+
addActiveFilterControl(dt, filter);
|
279
|
+
updateFilterResults(dt);
|
280
|
+
}
|
281
|
+
ctx._pfFilter.filterInput.val(""); // Clear input
|
282
|
+
}
|
283
|
+
|
284
|
+
/**
|
285
|
+
* Clear filters
|
286
|
+
*
|
287
|
+
* @param {DataTable.Api} dt DataTable
|
288
|
+
* @private
|
289
|
+
*/
|
290
|
+
function clearFilters (dt) {
|
291
|
+
var ctx = dt.settings()[0];
|
292
|
+
ctx._pfFilter.filters.length = 0; // Reset filters
|
293
|
+
ctx._pfFilter.activeFilterControls.html(""); // Remove active filter controls
|
294
|
+
ctx._pfFilter.activeFilters.addClass("hidden"); // Hide active filters area
|
295
|
+
dt.draw();
|
296
|
+
}
|
297
|
+
|
298
|
+
/**
|
299
|
+
* Handle actions when clear filters control is selected
|
300
|
+
*
|
301
|
+
* @param {DataTable.Api} dt DataTable
|
302
|
+
* @private
|
303
|
+
*/
|
304
|
+
function handleClearFilters (dt) {
|
305
|
+
var ctx = dt.settings()[0];
|
306
|
+
if (ctx._pfFilter.clearFilters === undefined || ctx._pfFilter.clearFilters.length === 0) {
|
307
|
+
return;
|
308
|
+
}
|
309
|
+
ctx._pfFilter.clearFilters.on("click", function (e) {
|
310
|
+
clearFilters(dt);
|
311
|
+
});
|
312
|
+
}
|
313
|
+
|
314
|
+
/**
|
315
|
+
* Handle actions when enter is pressed within filter input
|
316
|
+
*
|
317
|
+
* @param {DataTable.Api} dt DataTable
|
318
|
+
* @private
|
319
|
+
*/
|
320
|
+
function handleFilterInput (dt) {
|
321
|
+
var ctx = dt.settings()[0];
|
322
|
+
if (ctx._pfFilter.filterInput === undefined || ctx._pfFilter.filterInput.length === 0) {
|
323
|
+
return;
|
324
|
+
}
|
325
|
+
ctx._pfFilter.filterInput.on("keypress", function (e) {
|
326
|
+
var keycode = (e.keyCode ? e.keyCode : e.which);
|
327
|
+
if (keycode === 13) {
|
328
|
+
e.preventDefault();
|
329
|
+
if (this.value.trim().length > 0) {
|
330
|
+
addFilter(dt, {
|
331
|
+
column: ctx._pfFilter.filterColumn,
|
332
|
+
name: ctx._pfFilter.filterName,
|
333
|
+
value: this.value
|
334
|
+
});
|
335
|
+
}
|
336
|
+
return false;
|
337
|
+
}
|
338
|
+
return true;
|
339
|
+
});
|
340
|
+
}
|
341
|
+
|
342
|
+
/**
|
343
|
+
* Handle actions when filter options are selected
|
344
|
+
*
|
345
|
+
* @param {DataTable.Api} dt DataTable
|
346
|
+
* @param {number} i The column associated with this handler
|
347
|
+
* @private
|
348
|
+
*/
|
349
|
+
function handleFilterOption (dt, i) {
|
350
|
+
var ctx = dt.settings()[0];
|
351
|
+
if (ctx._pfFilter.filterCols[i] === null || ctx._pfFilter.filterCols[i].optionSelector === undefined) {
|
352
|
+
return;
|
353
|
+
}
|
354
|
+
$(ctx._pfFilter.filterCols[i].optionSelector).on("click", function (e) {
|
355
|
+
// Set input placeholder
|
356
|
+
if (ctx._pfFilter.filterInput !== undefined && ctx._pfFilter.filterInput.length !== 0) {
|
357
|
+
ctx._pfFilter.filterInput.get(0).placeholder = ctx._pfFilter.filterCols[i].placeholder;
|
358
|
+
}
|
359
|
+
// Set filter label
|
360
|
+
if (ctx._pfFilter.filterLabel !== undefined && ctx._pfFilter.filterLabel.length !== 0) {
|
361
|
+
ctx._pfFilter.filterLabel.html($(this).text());
|
362
|
+
}
|
363
|
+
// Set filter button
|
364
|
+
if (ctx._pfFilter.filterButton !== undefined && ctx._pfFilter.filterButton.length !== 0) {
|
365
|
+
ctx._pfFilter.filterButton.html($(this).text() + ' <span class="caret"></span>');
|
366
|
+
}
|
367
|
+
ctx._pfFilter.filterColumn = i; // Save filter column when applying filter
|
368
|
+
ctx._pfFilter.filterName = $(this).text(); // Save filter name for active filter control
|
369
|
+
});
|
370
|
+
}
|
371
|
+
|
372
|
+
/**
|
373
|
+
* Update active filter results
|
374
|
+
*
|
375
|
+
* @param {DataTable.Api} dt DataTable
|
376
|
+
* @private
|
377
|
+
*/
|
378
|
+
function updateFilterResults (dt) {
|
379
|
+
var ctx = dt.settings()[0];
|
380
|
+
var filteredRows = dt.rows({"page": "current", "search": "applied"}).flatten().length;
|
381
|
+
if (ctx._pfFilter.filterResults === undefined || ctx._pfFilter.filterResults.length === 0) {
|
382
|
+
return;
|
383
|
+
}
|
384
|
+
ctx._pfFilter.filterResults.html(filteredRows + " Results");
|
385
|
+
}
|
386
|
+
|
387
|
+
// DataTables API
|
388
|
+
|
389
|
+
/**
|
390
|
+
* Add filter
|
391
|
+
*
|
392
|
+
* Example: dt.table().pfFilter.addFilter({
|
393
|
+
* column: 2,
|
394
|
+
* name: "Browser",
|
395
|
+
* value: "Firefox"
|
396
|
+
* });
|
397
|
+
*
|
398
|
+
* @param {object} filter Properties associated with a new filter
|
399
|
+
* @param {string} filter.column - Column associated with DataTable
|
400
|
+
* @param {string} filter.name - Name of the filter
|
401
|
+
* @param {string} filter.value - Value of the filter
|
402
|
+
*/
|
403
|
+
DataTable.Api.register("pfFilter.addFilter()", function (filter) {
|
404
|
+
return this.iterator("table", function (ctx) {
|
405
|
+
addFilter(new DataTable.Api(ctx), filter);
|
406
|
+
});
|
407
|
+
});
|
408
|
+
|
409
|
+
/**
|
410
|
+
* Clear filters
|
411
|
+
*
|
412
|
+
* Example: dt.table().pfFilter.clearFilters();
|
413
|
+
*
|
414
|
+
*/
|
415
|
+
DataTable.Api.register("pfFilter.clearFilters()", function () {
|
416
|
+
return this.iterator("table", function (ctx) {
|
417
|
+
clearFilters(new DataTable.Api(ctx));
|
418
|
+
});
|
419
|
+
});
|
420
|
+
|
421
|
+
// DataTables creation
|
422
|
+
$(document).on("init.dt", function (e, ctx, json) {
|
423
|
+
if (e.namespace !== "dt") {
|
424
|
+
return;
|
425
|
+
}
|
426
|
+
DataTable.pfFilter.init(new DataTable.Api(ctx));
|
427
|
+
});
|
428
|
+
return DataTable.pfFilter;
|
429
|
+
}));
|
@@ -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 addActiveFilterControl(dt,filter){var i,ctx=dt.settings()[0];ctx._pfFilter.activeFilterControls.append('<li><span class="label label-info">'+filter.name+": "+filter.value+'<a href="#"><span class="pficon pficon-close"/></a></span></li>'),$("a",ctx._pfFilter.activeFilterControls).last().on("click",function(e){for(i=0;i<ctx._pfFilter.filters.length;i++)if(ctx._pfFilter.filters[i].column===filter.column&&ctx._pfFilter.filters[i].value===filter.value){ctx._pfFilter.filters.splice(i,1),$(this).parents("li").remove();break}0===ctx._pfFilter.filters.length&&ctx._pfFilter.activeFilters.addClass("hidden"),dt.draw(),updateFilterResults(dt)}),ctx._pfFilter.activeFilters.removeClass("hidden")}function addFilter(dt,filter){var ctx=dt.settings()[0],found=!1;$.grep(ctx._pfFilter.filters,function(f){f.column===filter.column&&f.value===filter.value&&(found=!0)}),found||(ctx._pfFilter.filters.push(filter),dt.draw(),addActiveFilterControl(dt,filter),updateFilterResults(dt)),ctx._pfFilter.filterInput.val("")}function clearFilters(dt){var ctx=dt.settings()[0];ctx._pfFilter.filters.length=0,ctx._pfFilter.activeFilterControls.html(""),ctx._pfFilter.activeFilters.addClass("hidden"),dt.draw()}function handleClearFilters(dt){var ctx=dt.settings()[0];ctx._pfFilter.clearFilters!==undefined&&0!==ctx._pfFilter.clearFilters.length&&ctx._pfFilter.clearFilters.on("click",function(e){clearFilters(dt)})}function handleFilterInput(dt){var ctx=dt.settings()[0];ctx._pfFilter.filterInput!==undefined&&0!==ctx._pfFilter.filterInput.length&&ctx._pfFilter.filterInput.on("keypress",function(e){return 13!==(e.keyCode?e.keyCode:e.which)||(e.preventDefault(),this.value.trim().length>0&&addFilter(dt,{column:ctx._pfFilter.filterColumn,name:ctx._pfFilter.filterName,value:this.value}),!1)})}function handleFilterOption(dt,i){var ctx=dt.settings()[0];null!==ctx._pfFilter.filterCols[i]&&ctx._pfFilter.filterCols[i].optionSelector!==undefined&&$(ctx._pfFilter.filterCols[i].optionSelector).on("click",function(e){ctx._pfFilter.filterInput!==undefined&&0!==ctx._pfFilter.filterInput.length&&(ctx._pfFilter.filterInput.get(0).placeholder=ctx._pfFilter.filterCols[i].placeholder),ctx._pfFilter.filterLabel!==undefined&&0!==ctx._pfFilter.filterLabel.length&&ctx._pfFilter.filterLabel.html($(this).text()),ctx._pfFilter.filterButton!==undefined&&0!==ctx._pfFilter.filterButton.length&&ctx._pfFilter.filterButton.html($(this).text()+' <span class="caret"></span>'),ctx._pfFilter.filterColumn=i,ctx._pfFilter.filterName=$(this).text()})}function updateFilterResults(dt){var ctx=dt.settings()[0],filteredRows=dt.rows({page:"current",search:"applied"}).flatten().length;ctx._pfFilter.filterResults!==undefined&&0!==ctx._pfFilter.filterResults.length&&ctx._pfFilter.filterResults.html(filteredRows+" Results")}var DataTable=$.fn.dataTable;return DataTable.pfFilter={},DataTable.pfFilter.init=function(dt){var i,ctx=dt.settings()[0],opts=ctx.oInit.pfConfig?ctx.oInit.pfConfig:{};if(ctx._pfFilter={},ctx._pfFilter.filterButton=$(".toolbar-pf-filter button",opts.toolbarSelector),ctx._pfFilter.filterCols=opts.filterCols,ctx._pfFilter.filterLabel=$(".toolbar-pf-filter label",opts.toolbarSelector),ctx._pfFilter.filterInput=$(".toolbar-pf-filter input",opts.toolbarSelector),ctx._pfFilter.filters=[],ctx._pfFilter.activeFilterControls=$(".list-inline",opts.toolbarSelector),ctx._pfFilter.activeFilters=ctx._pfFilter.activeFilterControls.closest("div"),ctx._pfFilter.clearFilters=$(".toolbar-pf-results a",opts.toolbarSelector),ctx._pfFilter.results=$(".toolbar-pf-results",opts.toolbarSelector),ctx._pfFilter.filterCaseInsensitive=opts.filterCaseInsensitive,ctx._pfFilter.filterResults=$(".toolbar-pf-results h5",opts.toolbarSelector),ctx._pfFilter.filterCols!==undefined){for(i=0;i<ctx._pfFilter.filterCols.length&&(null===ctx._pfFilter.filterCols[i]||(ctx._pfFilter.filterColumn=i,ctx._pfFilter.filterName=$(ctx._pfFilter.filterCols[i].optionSelector).text(),!0!==ctx._pfFilter.filterCols[i].default));i++);for(i=0;i<ctx._pfFilter.filterCols.length;i++)handleFilterOption(dt,i);handleFilterInput(dt),handleClearFilters(dt),$.fn.dataTable.ext.search.push(function(ctx,data,dataIndex){var showThisRow=!0;return ctx._pfFilter&&$.each(ctx._pfFilter.filters,function(index,filter){ctx._pfFilter.filterCaseInsensitive!==undefined&&!0===ctx._pfFilter.filterCaseInsensitive?-1===data[filter.column].toLowerCase().indexOf(filter.value.toLowerCase())&&(showThisRow=!1):-1===data[filter.column].indexOf(filter.value)&&(showThisRow=!1)}),showThisRow})}},DataTable.Api.register("pfFilter.addFilter()",function(filter){return this.iterator("table",function(ctx){addFilter(new DataTable.Api(ctx),filter)})}),DataTable.Api.register("pfFilter.clearFilters()",function(){return this.iterator("table",function(ctx){clearFilters(new DataTable.Api(ctx))})}),$(document).on("init.dt",function(e,ctx,json){"dt"===e.namespace&&DataTable.pfFilter.init(new DataTable.Api(ctx))}),DataTable.pfFilter});
|