patternfly-sass 0.0.0.pre.semantically.pre.released

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. checksums.yaml +7 -0
  2. data/CODE_OF_CONDUCT.md +4 -0
  3. data/LICENSE.txt +205 -0
  4. data/OPEN_SOURCE_LICENCES.txt +1366 -0
  5. data/QUICKSTART.md +210 -0
  6. data/README.md +438 -0
  7. data/dist/fonts/FontAwesome.otf +0 -0
  8. data/dist/fonts/OpenSans-Bold-webfont.eot +0 -0
  9. data/dist/fonts/OpenSans-Bold-webfont.svg +19028 -0
  10. data/dist/fonts/OpenSans-Bold-webfont.ttf +0 -0
  11. data/dist/fonts/OpenSans-Bold-webfont.woff +0 -0
  12. data/dist/fonts/OpenSans-Bold-webfont.woff2 +0 -0
  13. data/dist/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  14. data/dist/fonts/OpenSans-BoldItalic-webfont.svg +19036 -0
  15. data/dist/fonts/OpenSans-BoldItalic-webfont.ttf +0 -0
  16. data/dist/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  17. data/dist/fonts/OpenSans-BoldItalic-webfont.woff2 +0 -0
  18. data/dist/fonts/OpenSans-ExtraBold-webfont.eot +0 -0
  19. data/dist/fonts/OpenSans-ExtraBold-webfont.svg +19030 -0
  20. data/dist/fonts/OpenSans-ExtraBold-webfont.ttf +0 -0
  21. data/dist/fonts/OpenSans-ExtraBold-webfont.woff +0 -0
  22. data/dist/fonts/OpenSans-ExtraBold-webfont.woff2 +0 -0
  23. data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.eot +0 -0
  24. data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.svg +19036 -0
  25. data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.ttf +0 -0
  26. data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.woff +0 -0
  27. data/dist/fonts/OpenSans-ExtraBoldItalic-webfont.woff2 +0 -0
  28. data/dist/fonts/OpenSans-Italic-webfont.eot +0 -0
  29. data/dist/fonts/OpenSans-Italic-webfont.svg +19043 -0
  30. data/dist/fonts/OpenSans-Italic-webfont.ttf +0 -0
  31. data/dist/fonts/OpenSans-Italic-webfont.woff +0 -0
  32. data/dist/fonts/OpenSans-Italic-webfont.woff2 +0 -0
  33. data/dist/fonts/OpenSans-Light-webfont.eot +0 -0
  34. data/dist/fonts/OpenSans-Light-webfont.svg +19026 -0
  35. data/dist/fonts/OpenSans-Light-webfont.ttf +0 -0
  36. data/dist/fonts/OpenSans-Light-webfont.woff +0 -0
  37. data/dist/fonts/OpenSans-Light-webfont.woff2 +0 -0
  38. data/dist/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  39. data/dist/fonts/OpenSans-LightItalic-webfont.svg +19039 -0
  40. data/dist/fonts/OpenSans-LightItalic-webfont.ttf +0 -0
  41. data/dist/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  42. data/dist/fonts/OpenSans-LightItalic-webfont.woff2 +0 -0
  43. data/dist/fonts/OpenSans-Regular-webfont.eot +0 -0
  44. data/dist/fonts/OpenSans-Regular-webfont.svg +19030 -0
  45. data/dist/fonts/OpenSans-Regular-webfont.ttf +0 -0
  46. data/dist/fonts/OpenSans-Regular-webfont.woff +0 -0
  47. data/dist/fonts/OpenSans-Regular-webfont.woff2 +0 -0
  48. data/dist/fonts/OpenSans-Semibold-webfont.eot +0 -0
  49. data/dist/fonts/OpenSans-Semibold-webfont.svg +19030 -0
  50. data/dist/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  51. data/dist/fonts/OpenSans-Semibold-webfont.woff +0 -0
  52. data/dist/fonts/OpenSans-Semibold-webfont.woff2 +0 -0
  53. data/dist/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  54. data/dist/fonts/OpenSans-SemiboldItalic-webfont.svg +19043 -0
  55. data/dist/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  56. data/dist/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  57. data/dist/fonts/OpenSans-SemiboldItalic-webfont.woff2 +0 -0
  58. data/dist/fonts/PatternFlyIcons-webfont.eot +0 -0
  59. data/dist/fonts/PatternFlyIcons-webfont.svg +140 -0
  60. data/dist/fonts/PatternFlyIcons-webfont.ttf +0 -0
  61. data/dist/fonts/PatternFlyIcons-webfont.woff +0 -0
  62. data/dist/fonts/fontawesome-webfont.eot +0 -0
  63. data/dist/fonts/fontawesome-webfont.svg +2671 -0
  64. data/dist/fonts/fontawesome-webfont.ttf +0 -0
  65. data/dist/fonts/fontawesome-webfont.woff +0 -0
  66. data/dist/fonts/fontawesome-webfont.woff2 +0 -0
  67. data/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  68. data/dist/fonts/glyphicons-halflings-regular.svg +288 -0
  69. data/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  70. data/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  71. data/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  72. data/dist/img/Logo_Horizontal_Reversed.svg +49 -0
  73. data/dist/img/OpenShift-Logo-NoText.svg +51 -0
  74. data/dist/img/OpenShift-Logo-Text.svg +95 -0
  75. data/dist/img/OpenShift-logo.svg +69 -0
  76. data/dist/img/RH_Atomic-Logo-NoText.svg +53 -0
  77. data/dist/img/RH_Atomic-Logo-Text.svg +91 -0
  78. data/dist/img/RH_atomic.svg +88 -0
  79. data/dist/img/apple-touch-icon-precomposed-114.png +0 -0
  80. data/dist/img/apple-touch-icon-precomposed-144.png +0 -0
  81. data/dist/img/apple-touch-icon-precomposed-152.png +0 -0
  82. data/dist/img/apple-touch-icon-precomposed-180.png +0 -0
  83. data/dist/img/apple-touch-icon-precomposed-57.png +0 -0
  84. data/dist/img/apple-touch-icon-precomposed-72.png +0 -0
  85. data/dist/img/apple-touch-icon-precomposed-76.png +0 -0
  86. data/dist/img/bg-login-2.png +0 -0
  87. data/dist/img/bg-login.jpg +0 -0
  88. data/dist/img/bg-login.png +0 -0
  89. data/dist/img/bg-modal-about-pf.png +0 -0
  90. data/dist/img/bg-navbar-pf-alt.svg +9 -0
  91. data/dist/img/brand-alt.svg +88 -0
  92. data/dist/img/brand.svg +87 -0
  93. data/dist/img/dropbox-logo.svg +15 -0
  94. data/dist/img/facebook-logo.svg +12 -0
  95. data/dist/img/favicon.ico +0 -0
  96. data/dist/img/fedora-logo.png +0 -0
  97. data/dist/img/git-logo.svg +21 -0
  98. data/dist/img/github-logo.svg +17 -0
  99. data/dist/img/gmail.svg +23 -0
  100. data/dist/img/google-calendar.svg +26 -0
  101. data/dist/img/google-drive.svg +17 -0
  102. data/dist/img/google-logo.svg +19 -0
  103. data/dist/img/instagram-logo.png +0 -0
  104. data/dist/img/kubernetes-Logo.svg +60 -0
  105. data/dist/img/kubernetes.svg +8 -0
  106. data/dist/img/linkedin-logo.svg +13 -0
  107. data/dist/img/logo-alt.svg +18 -0
  108. data/dist/img/logo.svg +22 -0
  109. data/dist/img/open-id-logo.svg +19 -0
  110. data/dist/img/rcue-full.svg +221 -0
  111. data/dist/img/rcue.svg +92 -0
  112. data/dist/img/redhat_reverse.png +0 -0
  113. data/dist/img/skype-logo.svg +23 -0
  114. data/dist/img/spinner-inverse-lg.gif +0 -0
  115. data/dist/img/spinner-inverse-sm.gif +0 -0
  116. data/dist/img/spinner-inverse-xs.gif +0 -0
  117. data/dist/img/spinner-inverse.gif +0 -0
  118. data/dist/img/spinner-lg.gif +0 -0
  119. data/dist/img/spinner-sm.gif +0 -0
  120. data/dist/img/spinner-xs.gif +0 -0
  121. data/dist/img/spinner.gif +0 -0
  122. data/dist/img/stack-exchange-logo.svg +21 -0
  123. data/dist/img/twitter-logo.svg +19 -0
  124. data/dist/js/patternfly-functions-base.js +7 -0
  125. data/dist/js/patternfly-functions-charts.js +13 -0
  126. data/dist/js/patternfly-functions-colors.js +8 -0
  127. data/dist/js/patternfly-functions-count-chars.js +59 -0
  128. data/dist/js/patternfly-functions-data-tables.js +149 -0
  129. data/dist/js/patternfly-functions-fixed-heights.js +109 -0
  130. data/dist/js/patternfly-functions-list.js +79 -0
  131. data/dist/js/patternfly-functions-navigation.js +113 -0
  132. data/dist/js/patternfly-functions-popovers.js +37 -0
  133. data/dist/js/patternfly-functions-sidebar.js +31 -0
  134. data/dist/js/patternfly-functions-tree-grid.js +82 -0
  135. data/dist/js/patternfly-functions-vertical-nav.js +610 -0
  136. data/dist/js/patternfly-functions.js +1307 -0
  137. data/dist/js/patternfly-functions.min.js +1 -0
  138. data/dist/js/patternfly-settings-base.d.ts +9 -0
  139. data/dist/js/patternfly-settings-base.js +16 -0
  140. data/dist/js/patternfly-settings-charts.d.ts +92 -0
  141. data/dist/js/patternfly-settings-charts.js +449 -0
  142. data/dist/js/patternfly-settings-colors.d.ts +88 -0
  143. data/dist/js/patternfly-settings-colors.js +91 -0
  144. data/dist/js/patternfly-settings.d.ts +3 -0
  145. data/dist/js/patternfly-settings.js +558 -0
  146. data/dist/js/patternfly-settings.min.js +1 -0
  147. data/dist/js/patternfly.dataTables.pfColVis.js +151 -0
  148. data/dist/js/patternfly.dataTables.pfEmpty.js +253 -0
  149. data/dist/js/patternfly.dataTables.pfEmpty.min.js +1 -0
  150. data/dist/js/patternfly.dataTables.pfFilter.js +429 -0
  151. data/dist/js/patternfly.dataTables.pfFilter.min.js +1 -0
  152. data/dist/js/patternfly.dataTables.pfPagination.js +401 -0
  153. data/dist/js/patternfly.dataTables.pfPagination.min.js +1 -0
  154. data/dist/js/patternfly.dataTables.pfResize.js +214 -0
  155. data/dist/js/patternfly.dataTables.pfResize.min.js +1 -0
  156. data/dist/js/patternfly.dataTables.pfSelect.js +281 -0
  157. data/dist/js/patternfly.dataTables.pfSelect.min.js +1 -0
  158. data/dist/js/patternfly.js +1866 -0
  159. data/dist/js/patternfly.min.js +2 -0
  160. data/dist/sass/_patternfly-compass.scss +3 -0
  161. data/dist/sass/_patternfly-sprockets.scss +3 -0
  162. data/dist/sass/_patternfly.scss +147 -0
  163. data/dist/sass/patternfly/_about-modal.scss +44 -0
  164. data/dist/sass/patternfly/_accordion.scss +18 -0
  165. data/dist/sass/patternfly/_alerts.scss +44 -0
  166. data/dist/sass/patternfly/_application-launcher.scss +213 -0
  167. data/dist/sass/patternfly/_badges.scss +11 -0
  168. data/dist/sass/patternfly/_blank-slate.scss +52 -0
  169. data/dist/sass/patternfly/_bootstrap-combobox.scss +35 -0
  170. data/dist/sass/patternfly/_bootstrap-datepicker.scss +132 -0
  171. data/dist/sass/patternfly/_bootstrap-mixin-overrides.scss +33 -0
  172. data/dist/sass/patternfly/_bootstrap-select.scss +108 -0
  173. data/dist/sass/patternfly/_bootstrap-slider.scss +66 -0
  174. data/dist/sass/patternfly/_bootstrap-switch.scss +19 -0
  175. data/dist/sass/patternfly/_bootstrap-touchspin.scss +31 -0
  176. data/dist/sass/patternfly/_bootstrap-treeview.scss +89 -0
  177. data/dist/sass/patternfly/_breadcrumbs.scss +20 -0
  178. data/dist/sass/patternfly/_buttons.scss +50 -0
  179. data/dist/sass/patternfly/_card-view.scss +105 -0
  180. data/dist/sass/patternfly/_cards.scss +238 -0
  181. data/dist/sass/patternfly/_charts.scss +388 -0
  182. data/dist/sass/patternfly/_close.scss +16 -0
  183. data/dist/sass/patternfly/_color-variables.scss +85 -0
  184. data/dist/sass/patternfly/_context-selector.scss +125 -0
  185. data/dist/sass/patternfly/_datatables.scss +186 -0
  186. data/dist/sass/patternfly/_date-and-time.scss +35 -0
  187. data/dist/sass/patternfly/_dropdowns.scss +235 -0
  188. data/dist/sass/patternfly/_experimental-features.scss +48 -0
  189. data/dist/sass/patternfly/_filter.scss +42 -0
  190. data/dist/sass/patternfly/_fonts.scss +124 -0
  191. data/dist/sass/patternfly/_footer.scss +19 -0
  192. data/dist/sass/patternfly/_forms.scss +192 -0
  193. data/dist/sass/patternfly/_icons.scss +371 -0
  194. data/dist/sass/patternfly/_infotip.scss +145 -0
  195. data/dist/sass/patternfly/_labels.scss +17 -0
  196. data/dist/sass/patternfly/_layouts.scss +140 -0
  197. data/dist/sass/patternfly/_links.scss +5 -0
  198. data/dist/sass/patternfly/_list-group.scss +23 -0
  199. data/dist/sass/patternfly/_list-pf.scss +178 -0
  200. data/dist/sass/patternfly/_list-view-dnd.scss +53 -0
  201. data/dist/sass/patternfly/_list-view.scss +390 -0
  202. data/dist/sass/patternfly/_login.scss +341 -0
  203. data/dist/sass/patternfly/_mixins.scss +81 -0
  204. data/dist/sass/patternfly/_modals.scss +49 -0
  205. data/dist/sass/patternfly/_nav-vertical-alt.scss +168 -0
  206. data/dist/sass/patternfly/_navbar-alt.scss +141 -0
  207. data/dist/sass/patternfly/_navbar-vertical.scss +168 -0
  208. data/dist/sass/patternfly/_navbar.scss +579 -0
  209. data/dist/sass/patternfly/_notifications-drawer.scss +250 -0
  210. data/dist/sass/patternfly/_pager.scss +68 -0
  211. data/dist/sass/patternfly/_pagination.scss +121 -0
  212. data/dist/sass/patternfly/_panels.scss +134 -0
  213. data/dist/sass/patternfly/_popovers.scss +52 -0
  214. data/dist/sass/patternfly/_progress-bars.scss +121 -0
  215. data/dist/sass/patternfly/_rcue-about-modal.scss +45 -0
  216. data/dist/sass/patternfly/_rcue-additions.scss +11 -0
  217. data/dist/sass/patternfly/_rcue-login.scss +75 -0
  218. data/dist/sass/patternfly/_rcue-variables.scss +57 -0
  219. data/dist/sass/patternfly/_rcue.scss +6 -0
  220. data/dist/sass/patternfly/_search.scss +64 -0
  221. data/dist/sass/patternfly/_sidebar.scss +176 -0
  222. data/dist/sass/patternfly/_skip-to-content.scss +12 -0
  223. data/dist/sass/patternfly/_spinner.scss +72 -0
  224. data/dist/sass/patternfly/_syntax-highlighting.scss +36 -0
  225. data/dist/sass/patternfly/_table-view.scss +188 -0
  226. data/dist/sass/patternfly/_tables.scss +90 -0
  227. data/dist/sass/patternfly/_tabs.scss +118 -0
  228. data/dist/sass/patternfly/_time-picker.scss +98 -0
  229. data/dist/sass/patternfly/_toast.scss +75 -0
  230. data/dist/sass/patternfly/_toolbar.scss +190 -0
  231. data/dist/sass/patternfly/_tooltip.scss +15 -0
  232. data/dist/sass/patternfly/_tree-list-view.scss +83 -0
  233. data/dist/sass/patternfly/_type.scss +29 -0
  234. data/dist/sass/patternfly/_variables.scss +595 -0
  235. data/dist/sass/patternfly/_vertical-nav.scss +944 -0
  236. data/dist/sass/patternfly/_wizard.scss +665 -0
  237. data/dist/sass/patternfly/dependencies/bootstrap-combobox/combobox.scss +57 -0
  238. data/dist/sass/patternfly/dependencies/bootstrap-datepicker/datepicker.scss +242 -0
  239. data/dist/sass/patternfly/dependencies/bootstrap-datepicker/datepicker3.scss +257 -0
  240. data/dist/sass/patternfly/dependencies/bootstrap-select/bootstrap-select.scss +389 -0
  241. data/dist/sass/patternfly/dependencies/bootstrap-select/variables.scss +9 -0
  242. data/dist/sass/patternfly/dependencies/bootstrap-slider/_mixins.scss +25 -0
  243. data/dist/sass/patternfly/dependencies/bootstrap-slider/_rules.scss +246 -0
  244. data/dist/sass/patternfly/dependencies/bootstrap-slider/_variables.scss +28 -0
  245. data/dist/sass/patternfly/dependencies/bootstrap-slider/bootstrap-slider.scss +42 -0
  246. data/dist/sass/patternfly/dependencies/bootstrap-switch/bootstrap-switch.scss +195 -0
  247. data/dist/sass/patternfly/dependencies/bootstrap-switch/build.scss +3 -0
  248. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/alerts.scss +14 -0
  249. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/background-variant.scss +9 -0
  250. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/border-radius.scss +18 -0
  251. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/buttons.scss +68 -0
  252. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/center-block.scss +7 -0
  253. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/clearfix.scss +22 -0
  254. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/forms.scss +85 -0
  255. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/gradients.scss +59 -0
  256. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/grid-framework.scss +98 -0
  257. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/grid.scss +122 -0
  258. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/hide-text.scss +21 -0
  259. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/image.scss +33 -0
  260. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/labels.scss +12 -0
  261. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/list-group.scss +29 -0
  262. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/nav-divider.scss +10 -0
  263. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/nav-vertical-align.scss +9 -0
  264. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/opacity.scss +8 -0
  265. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/pagination.scss +23 -0
  266. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/panels.scss +24 -0
  267. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/progress-bar.scss +10 -0
  268. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/reset-filter.scss +8 -0
  269. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/reset-text.scss +18 -0
  270. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/resize.scss +6 -0
  271. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/responsive-visibility.scss +15 -0
  272. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/size.scss +10 -0
  273. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/tab-focus.scss +9 -0
  274. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/table-row.scss +28 -0
  275. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/text-emphasis.scss +9 -0
  276. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/text-overflow.scss +8 -0
  277. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins/vendor-prefixes.scss +227 -0
  278. data/dist/sass/patternfly/dependencies/bootstrap-switch/mixins.scss +40 -0
  279. data/dist/sass/patternfly/dependencies/bootstrap-switch/variables.scss +862 -0
  280. data/dist/sass/patternfly/dependencies/bootstrap-touchspin/_jquery.bootstrap-touchspin.scss +45 -0
  281. data/dist/sass/patternfly/dependencies/c3/_c3.scss +178 -0
  282. data/dist/sass/patternfly/dependencies/eonasdan-bootstrap-datetimepicker/_bootstrap-datetimepicker.scss +344 -0
  283. data/dist/sass/patternfly/dependencies/eonasdan-bootstrap-datetimepicker/bootstrap-datetimepicker-build.scss +16 -0
  284. data/dist/sass/rcue/_about-modal.scss +44 -0
  285. data/dist/sass/rcue/_accordion.scss +18 -0
  286. data/dist/sass/rcue/_alerts.scss +44 -0
  287. data/dist/sass/rcue/_badges.scss +11 -0
  288. data/dist/sass/rcue/_blank-slate.scss +52 -0
  289. data/dist/sass/rcue/_bootstrap-combobox.scss +35 -0
  290. data/dist/sass/rcue/_bootstrap-datepicker.scss +132 -0
  291. data/dist/sass/rcue/_bootstrap-mixin-overrides.scss +33 -0
  292. data/dist/sass/rcue/_bootstrap-select.scss +108 -0
  293. data/dist/sass/rcue/_bootstrap-slider.scss +66 -0
  294. data/dist/sass/rcue/_bootstrap-switch.scss +19 -0
  295. data/dist/sass/rcue/_bootstrap-touchspin.scss +31 -0
  296. data/dist/sass/rcue/_bootstrap-treeview.scss +89 -0
  297. data/dist/sass/rcue/_breadcrumbs.scss +20 -0
  298. data/dist/sass/rcue/_buttons.scss +50 -0
  299. data/dist/sass/rcue/_card-view.scss +105 -0
  300. data/dist/sass/rcue/_cards.scss +238 -0
  301. data/dist/sass/rcue/_charts.scss +388 -0
  302. data/dist/sass/rcue/_close.scss +16 -0
  303. data/dist/sass/rcue/_color-variables.scss +85 -0
  304. data/dist/sass/rcue/_context-selector.scss +125 -0
  305. data/dist/sass/rcue/_datatables.scss +186 -0
  306. data/dist/sass/rcue/_date-and-time.scss +35 -0
  307. data/dist/sass/rcue/_dropdowns.scss +235 -0
  308. data/dist/sass/rcue/_experimental-features.scss +48 -0
  309. data/dist/sass/rcue/_filter.scss +42 -0
  310. data/dist/sass/rcue/_fonts.scss +124 -0
  311. data/dist/sass/rcue/_footer.scss +19 -0
  312. data/dist/sass/rcue/_forms.scss +192 -0
  313. data/dist/sass/rcue/_icons.scss +371 -0
  314. data/dist/sass/rcue/_infotip.scss +145 -0
  315. data/dist/sass/rcue/_labels.scss +17 -0
  316. data/dist/sass/rcue/_layouts.scss +140 -0
  317. data/dist/sass/rcue/_links.scss +5 -0
  318. data/dist/sass/rcue/_list-group.scss +23 -0
  319. data/dist/sass/rcue/_list-pf.scss +178 -0
  320. data/dist/sass/rcue/_list-view-dnd.scss +53 -0
  321. data/dist/sass/rcue/_list-view.scss +390 -0
  322. data/dist/sass/rcue/_login.scss +341 -0
  323. data/dist/sass/rcue/_mixins.scss +81 -0
  324. data/dist/sass/rcue/_modals.scss +49 -0
  325. data/dist/sass/rcue/_nav-vertical-alt.scss +168 -0
  326. data/dist/sass/rcue/_navbar-alt.scss +141 -0
  327. data/dist/sass/rcue/_navbar-vertical.scss +168 -0
  328. data/dist/sass/rcue/_navbar.scss +579 -0
  329. data/dist/sass/rcue/_notifications-drawer.scss +250 -0
  330. data/dist/sass/rcue/_pager.scss +68 -0
  331. data/dist/sass/rcue/_pagination.scss +121 -0
  332. data/dist/sass/rcue/_panels.scss +134 -0
  333. data/dist/sass/rcue/_patternfly-additions.scss +76 -0
  334. data/dist/sass/rcue/_patternfly.scss +31 -0
  335. data/dist/sass/rcue/_popovers.scss +52 -0
  336. data/dist/sass/rcue/_progress-bars.scss +121 -0
  337. data/dist/sass/rcue/_rcue-about-modal.scss +45 -0
  338. data/dist/sass/rcue/_rcue-login.scss +75 -0
  339. data/dist/sass/rcue/_rcue-variables.scss +57 -0
  340. data/dist/sass/rcue/_search.scss +64 -0
  341. data/dist/sass/rcue/_sidebar.scss +176 -0
  342. data/dist/sass/rcue/_skip-to-content.scss +12 -0
  343. data/dist/sass/rcue/_spinner.scss +72 -0
  344. data/dist/sass/rcue/_syntax-highlighting.scss +36 -0
  345. data/dist/sass/rcue/_table-view.scss +188 -0
  346. data/dist/sass/rcue/_tables.scss +90 -0
  347. data/dist/sass/rcue/_tabs.scss +118 -0
  348. data/dist/sass/rcue/_time-picker.scss +98 -0
  349. data/dist/sass/rcue/_toast.scss +75 -0
  350. data/dist/sass/rcue/_toolbar.scss +190 -0
  351. data/dist/sass/rcue/_tooltip.scss +15 -0
  352. data/dist/sass/rcue/_tree-list-view.scss +83 -0
  353. data/dist/sass/rcue/_type.scss +29 -0
  354. data/dist/sass/rcue/_variables.scss +595 -0
  355. data/dist/sass/rcue/_vertical-nav.scss +944 -0
  356. data/dist/sass/rcue/_wizard.scss +665 -0
  357. data/lib/patternfly-sass/engine.rb +11 -0
  358. data/lib/patternfly-sass/version.rb +3 -0
  359. data/lib/patternfly-sass.rb +92 -0
  360. data/patternfly-sass.gemspec +31 -0
  361. 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});