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.
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,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});