@flywheel-io/vision 2.0.0-beta.8 → 2.0.0

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 (269) hide show
  1. package/color.utils.d.ts +2 -0
  2. package/components/alert/alert.component.d.ts +1 -1
  3. package/components/app-icon/app-icon.component.d.ts +1 -1
  4. package/components/avatar/avatar.component.d.ts +7 -2
  5. package/components/badge/badge.component.d.ts +1 -1
  6. package/components/breadcrumbs/crumb.component.d.ts +1 -1
  7. package/components/button/button.component.d.ts +1 -1
  8. package/components/button-group/button-group.component.d.ts +1 -1
  9. package/components/button-toggle/button-toggle-item/button-toggle-item.component.d.ts +1 -1
  10. package/components/button-toggle/button-toggle.component.d.ts +1 -1
  11. package/components/card/card-attribute/card-attribute.component.d.ts +1 -1
  12. package/components/card/card-author/card-author.component.d.ts +1 -1
  13. package/components/card/card-header/card-header.component.d.ts +1 -1
  14. package/components/card/card.component.d.ts +1 -1
  15. package/components/checkbox/checkbox.component.d.ts +1 -1
  16. package/components/chip/chip.component.d.ts +1 -1
  17. package/components/contained-input/contained-input.component.d.ts +1 -1
  18. package/components/date-input/date-input.component.d.ts +1 -1
  19. package/components/dialog/dialog-confirm.component.d.ts +1 -1
  20. package/components/dialog/dialog-content.component.d.ts +1 -1
  21. package/components/dialog/dialog-simple.component.d.ts +1 -1
  22. package/components/dialog/dialog.component.d.ts +1 -1
  23. package/components/form-heading/form-heading.component.d.ts +1 -1
  24. package/components/icon/icon.component.d.ts +1 -1
  25. package/components/icon/icon.types.d.ts +1 -1
  26. package/components/icon-button/icon-button.component.d.ts +1 -1
  27. package/components/layouts/context/context.component.d.ts +1 -1
  28. package/components/layouts/grid/grid.component.d.ts +1 -1
  29. package/components/layouts/layout-group.component.d.ts +1 -1
  30. package/components/layouts/panel/panel.component.d.ts +1 -1
  31. package/components/layouts/sidebar/sidebar.component.d.ts +1 -1
  32. package/components/layouts/toolbar/toolbar.component.d.ts +1 -1
  33. package/components/menu/menu-container/menu-container.component.d.ts +26 -11
  34. package/components/menu/menu-item/menu-item.component.d.ts +5 -6
  35. package/components/menu/menu-item-group/menu-item-group.component.d.ts +1 -1
  36. package/components/menu/menu-sub-item/menu-sub-item.component.d.ts +1 -5
  37. package/components/menu/menu.component.d.ts +3 -23
  38. package/components/navbar/navbar-item/navbar-item.component.d.ts +1 -1
  39. package/components/navbar/navbar-sub-item/navbar-sub-item.component.d.ts +1 -1
  40. package/components/navbar/navbar.component.d.ts +1 -1
  41. package/components/number-input/number-input.component.d.ts +1 -1
  42. package/components/paginator/paginator-advanced/paginator-advanced.component.d.ts +1 -1
  43. package/components/paginator/paginator.component.d.ts +6 -3
  44. package/components/phone-input/phone-input.component.d.ts +1 -1
  45. package/components/phone-input/phone-input.model.d.ts +1 -1
  46. package/components/popover/popover-panel/popover-panel.component.d.ts +1 -1
  47. package/components/popover/popover.component.d.ts +1 -1
  48. package/components/progress/bar/bar.component.d.ts +1 -1
  49. package/components/progress/spinner/spinner.component.d.ts +1 -1
  50. package/components/radio/radio-group.component.d.ts +1 -1
  51. package/components/radio/radio.component.d.ts +1 -1
  52. package/components/section-heading/back-button/back-button.component.d.ts +1 -1
  53. package/components/section-heading/section-heading.component.d.ts +1 -1
  54. package/components/section-heading/subsection-heading/subsection-heading.component.d.ts +1 -1
  55. package/components/select-menu/multi-select-menu/multi-select-menu.component.d.ts +39 -22
  56. package/components/select-menu/select-menu.component.d.ts +1 -1
  57. package/components/select-menu/select-menu.module.d.ts +7 -6
  58. package/components/snackbar/snackbar/snackbar.component.d.ts +1 -1
  59. package/components/stepper/step.component.d.ts +1 -1
  60. package/components/stepper/stepper.component.d.ts +1 -1
  61. package/components/switch/switch.component.d.ts +1 -1
  62. package/components/table/cell.d.ts +1 -1
  63. package/components/table/row.d.ts +3 -5
  64. package/components/tabs/tab/tab.component.d.ts +1 -1
  65. package/components/tabs/tab-panel/tab-panel.component.d.ts +1 -1
  66. package/components/tabs/tabs.component.d.ts +1 -1
  67. package/components/text-input/text-input.component.d.ts +9 -6
  68. package/components/textarea-input/textarea-input.component.d.ts +1 -1
  69. package/components/tooltip/tooltip-panel/tooltip-panel.component.d.ts +1 -1
  70. package/components/tooltip/tooltip.component.d.ts +1 -1
  71. package/components/wrapped-input/wrapped-input.component.d.ts +1 -1
  72. package/esm2022/color.utils.mjs +45 -0
  73. package/{esm2020 → esm2022}/components/alert/alert.component.mjs +4 -4
  74. package/{esm2020 → esm2022}/components/alert/alert.module.mjs +9 -9
  75. package/{esm2020 → esm2022}/components/app-icon/app-icon.component.mjs +4 -4
  76. package/{esm2020 → esm2022}/components/app-icon/app-icon.module.mjs +7 -7
  77. package/esm2022/components/avatar/avatar.component.mjs +66 -0
  78. package/{esm2020 → esm2022}/components/avatar/avatar.module.mjs +7 -7
  79. package/esm2022/components/badge/badge.component.mjs +45 -0
  80. package/{esm2020 → esm2022}/components/badge/badge.module.mjs +5 -5
  81. package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +22 -0
  82. package/{esm2020 → esm2022}/components/breadcrumbs/breadcrumbs.module.mjs +9 -9
  83. package/esm2022/components/breadcrumbs/crumb.component.mjs +34 -0
  84. package/{esm2020 → esm2022}/components/button/button.component.mjs +4 -4
  85. package/esm2022/components/button/button.directives.mjs +129 -0
  86. package/{esm2020 → esm2022}/components/button/button.module.mjs +21 -21
  87. package/esm2022/components/button-group/button-group.component.mjs +131 -0
  88. package/{esm2020 → esm2022}/components/button-group/button-group.module.mjs +9 -9
  89. package/esm2022/components/button-toggle/button-toggle-item/button-toggle-item.component.mjs +54 -0
  90. package/esm2022/components/button-toggle/button-toggle.component.mjs +137 -0
  91. package/{esm2020 → esm2022}/components/button-toggle/button-toggle.module.mjs +9 -9
  92. package/{esm2020 → esm2022}/components/card/card-attribute/card-attribute.component.mjs +4 -4
  93. package/{esm2020 → esm2022}/components/card/card-author/card-author.component.mjs +4 -4
  94. package/{esm2020 → esm2022}/components/card/card-content/card-content.component.mjs +4 -4
  95. package/{esm2020 → esm2022}/components/card/card-footer/card-footer.component.mjs +8 -8
  96. package/{esm2020 → esm2022}/components/card/card-header/card-header.component.mjs +4 -4
  97. package/{esm2020 → esm2022}/components/card/card.component.mjs +4 -4
  98. package/{esm2020 → esm2022}/components/card/card.module.mjs +19 -19
  99. package/esm2022/components/checkbox/checkbox.component.mjs +79 -0
  100. package/{esm2020 → esm2022}/components/checkbox/checkbox.module.mjs +9 -9
  101. package/esm2022/components/chip/chip.component.mjs +52 -0
  102. package/{esm2020 → esm2022}/components/chip/chip.module.mjs +9 -9
  103. package/esm2022/components/contained-input/contained-input.component.mjs +86 -0
  104. package/{esm2020 → esm2022}/components/contained-input/contained-input.module.mjs +13 -13
  105. package/esm2022/components/date-input/date-input.component.mjs +139 -0
  106. package/{esm2020 → esm2022}/components/date-input/date-input.module.mjs +9 -9
  107. package/{esm2020 → esm2022}/components/dialog/dialog-actions.component.mjs +9 -9
  108. package/{esm2020 → esm2022}/components/dialog/dialog-confirm.component.mjs +6 -6
  109. package/esm2022/components/dialog/dialog-content.component.mjs +38 -0
  110. package/{esm2020 → esm2022}/components/dialog/dialog-header.component.mjs +9 -9
  111. package/{esm2020 → esm2022}/components/dialog/dialog-simple.component.mjs +6 -6
  112. package/{esm2020 → esm2022}/components/dialog/dialog.component.mjs +7 -7
  113. package/{esm2020 → esm2022}/components/dialog/dialog.service.mjs +6 -6
  114. package/{esm2020 → esm2022}/components/dialog/dialogs.module.mjs +27 -27
  115. package/{esm2020 → esm2022}/components/form-heading/form-heading.component.mjs +5 -5
  116. package/{esm2020 → esm2022}/components/form-heading/form-heading.module.mjs +9 -9
  117. package/esm2022/components/forms/validators.mjs +81 -0
  118. package/esm2022/components/icon/icon.component.mjs +61 -0
  119. package/{esm2020 → esm2022}/components/icon/icon.module.mjs +5 -5
  120. package/{esm2020 → esm2022}/components/icon-button/icon-button.component.mjs +4 -4
  121. package/{esm2020 → esm2022}/components/icon-button/icon-button.module.mjs +7 -7
  122. package/esm2022/components/layouts/context/context.component.mjs +46 -0
  123. package/{esm2020 → esm2022}/components/layouts/grid/grid.component.mjs +7 -7
  124. package/esm2022/components/layouts/layout-group.component.mjs +36 -0
  125. package/{esm2020 → esm2022}/components/layouts/layouts.module.mjs +19 -19
  126. package/{esm2020 → esm2022}/components/layouts/panel/panel.component.mjs +5 -5
  127. package/{esm2020 → esm2022}/components/layouts/sidebar/sidebar.component.mjs +4 -4
  128. package/{esm2020 → esm2022}/components/layouts/toolbar/toolbar.component.mjs +4 -4
  129. package/esm2022/components/menu/menu-close-triggers.directive.mjs +38 -0
  130. package/esm2022/components/menu/menu-container/menu-container.component.mjs +126 -0
  131. package/{esm2020 → esm2022}/components/menu/menu-header/menu-header.component.mjs +4 -4
  132. package/esm2022/components/menu/menu-item/menu-item.component.mjs +134 -0
  133. package/{esm2020 → esm2022}/components/menu/menu-item-group/menu-item-group.component.mjs +5 -5
  134. package/{esm2020 → esm2022}/components/menu/menu-separator/menu-separator.component.mjs +4 -4
  135. package/esm2022/components/menu/menu-sub-item/menu-sub-item.component.mjs +103 -0
  136. package/esm2022/components/menu/menu.component.mjs +129 -0
  137. package/{esm2020 → esm2022}/components/menu/menu.module.mjs +37 -37
  138. package/{esm2020 → esm2022}/components/navbar/navbar-header/navbar-header.component.mjs +4 -4
  139. package/esm2022/components/navbar/navbar-item/navbar-item.component.mjs +95 -0
  140. package/esm2022/components/navbar/navbar-sub-item/navbar-sub-item.component.mjs +76 -0
  141. package/esm2022/components/navbar/navbar.component.mjs +75 -0
  142. package/{esm2020 → esm2022}/components/navbar/navbar.module.mjs +25 -25
  143. package/esm2022/components/number-input/number-input.component.mjs +122 -0
  144. package/{esm2020 → esm2022}/components/number-input/number-input.module.mjs +9 -9
  145. package/esm2022/components/paginator/paginator-advanced/paginator-advanced.component.mjs +123 -0
  146. package/esm2022/components/paginator/paginator.component.mjs +133 -0
  147. package/{esm2020 → esm2022}/components/paginator/paginator.module.mjs +17 -17
  148. package/esm2022/components/phone-input/phone-input.component.mjs +285 -0
  149. package/{esm2020 → esm2022}/components/phone-input/phone-input.module.mjs +17 -17
  150. package/{esm2020 → esm2022}/components/popover/popover-panel/popover-panel.component.mjs +4 -4
  151. package/esm2022/components/popover/popover.component.mjs +76 -0
  152. package/{esm2020 → esm2022}/components/popover/popover.module.mjs +13 -13
  153. package/{esm2020 → esm2022}/components/progress/bar/bar.component.mjs +5 -5
  154. package/{esm2020 → esm2022}/components/progress/progress.module.mjs +7 -7
  155. package/esm2022/components/progress/spinner/spinner.component.mjs +101 -0
  156. package/esm2022/components/radio/radio-group.component.mjs +117 -0
  157. package/esm2022/components/radio/radio.component.mjs +51 -0
  158. package/{esm2020 → esm2022}/components/radio/radio.module.mjs +11 -11
  159. package/esm2022/components/section-heading/back-button/back-button.component.mjs +30 -0
  160. package/{esm2020 → esm2022}/components/section-heading/section-heading.component.mjs +5 -5
  161. package/{esm2020 → esm2022}/components/section-heading/section-heading.module.mjs +13 -13
  162. package/{esm2020 → esm2022}/components/section-heading/subsection-heading/subsection-heading.component.mjs +5 -5
  163. package/esm2022/components/select-menu/multi-select-menu/multi-select-menu.component.mjs +354 -0
  164. package/esm2022/components/select-menu/select-menu.component.mjs +332 -0
  165. package/esm2022/components/select-menu/select-menu.module.mjs +60 -0
  166. package/esm2022/components/shared/pipes/pipes.module.mjs +36 -0
  167. package/esm2022/components/shared/pipes/translate.pipe.mjs +40 -0
  168. package/{esm2020 → esm2022}/components/shared/pipes/trusthtml.pipe.mjs +5 -5
  169. package/esm2022/components/shared/services/menu-manager.service.mjs +27 -0
  170. package/esm2022/components/shared/translation.service.mjs +26 -0
  171. package/esm2022/components/snackbar/snackbar/snackbar.component.mjs +111 -0
  172. package/esm2022/components/snackbar/snackbar-container/snackbar-container.component.mjs +63 -0
  173. package/{esm2020 → esm2022}/components/snackbar/snackbar.module.mjs +15 -15
  174. package/esm2022/components/snackbar/snackbar.service.mjs +36 -0
  175. package/esm2022/components/stepper/step.component.mjs +113 -0
  176. package/esm2022/components/stepper/stepper.component.mjs +95 -0
  177. package/{esm2020 → esm2022}/components/stepper/stepper.module.mjs +13 -13
  178. package/esm2022/components/switch/switch.component.mjs +73 -0
  179. package/{esm2020 → esm2022}/components/switch/switch.module.mjs +5 -5
  180. package/{esm2020 → esm2022}/components/table/cell.mjs +24 -24
  181. package/esm2022/components/table/row.mjs +164 -0
  182. package/esm2022/components/table/table-dense.component.mjs +38 -0
  183. package/esm2022/components/table/table.component.mjs +38 -0
  184. package/{esm2020 → esm2022}/components/table/table.module.mjs +37 -37
  185. package/esm2022/components/tabs/tab/tab.component.mjs +79 -0
  186. package/{esm2020 → esm2022}/components/tabs/tab-panel/tab-panel.component.mjs +4 -4
  187. package/esm2022/components/tabs/tabs.component.mjs +68 -0
  188. package/{esm2020 → esm2022}/components/tabs/tabs.module.mjs +11 -11
  189. package/esm2022/components/text-input/text-input.component.mjs +125 -0
  190. package/{esm2020 → esm2022}/components/text-input/text-input.module.mjs +9 -9
  191. package/esm2022/components/textarea-input/textarea-input.component.mjs +86 -0
  192. package/{esm2020 → esm2022}/components/textarea-input/textarea-input.module.mjs +11 -11
  193. package/{esm2020 → esm2022}/components/tooltip/tooltip-panel/tooltip-panel.component.mjs +4 -4
  194. package/{esm2020 → esm2022}/components/tooltip/tooltip.component.mjs +5 -5
  195. package/{esm2020 → esm2022}/components/tooltip/tooltip.module.mjs +13 -13
  196. package/{esm2020 → esm2022}/components/wrapped-input/wrapped-input.component.mjs +4 -4
  197. package/{esm2020 → esm2022}/components/wrapped-input/wrapped-input.module.mjs +7 -7
  198. package/{esm2020 → esm2022}/directives/menu-register.directive.mjs +6 -6
  199. package/{fesm2020 → fesm2022}/flywheel-io-vision.mjs +1512 -1505
  200. package/fesm2022/flywheel-io-vision.mjs.map +1 -0
  201. package/global.scss +1 -0
  202. package/package.json +9 -12
  203. package/styles.css +5 -0
  204. package/esm2020/components/avatar/avatar.component.mjs +0 -53
  205. package/esm2020/components/badge/badge.component.mjs +0 -45
  206. package/esm2020/components/breadcrumbs/breadcrumbs.component.mjs +0 -22
  207. package/esm2020/components/breadcrumbs/crumb.component.mjs +0 -34
  208. package/esm2020/components/button/button.directives.mjs +0 -129
  209. package/esm2020/components/button-group/button-group.component.mjs +0 -131
  210. package/esm2020/components/button-toggle/button-toggle-item/button-toggle-item.component.mjs +0 -54
  211. package/esm2020/components/button-toggle/button-toggle.component.mjs +0 -137
  212. package/esm2020/components/checkbox/checkbox.component.mjs +0 -79
  213. package/esm2020/components/chip/chip.component.mjs +0 -52
  214. package/esm2020/components/contained-input/contained-input.component.mjs +0 -86
  215. package/esm2020/components/date-input/date-input.component.mjs +0 -139
  216. package/esm2020/components/dialog/dialog-content.component.mjs +0 -38
  217. package/esm2020/components/forms/validators.mjs +0 -81
  218. package/esm2020/components/icon/icon.component.mjs +0 -61
  219. package/esm2020/components/layouts/context/context.component.mjs +0 -46
  220. package/esm2020/components/layouts/layout-group.component.mjs +0 -36
  221. package/esm2020/components/menu/menu-close-triggers.directive.mjs +0 -38
  222. package/esm2020/components/menu/menu-container/menu-container.component.mjs +0 -90
  223. package/esm2020/components/menu/menu-item/menu-item.component.mjs +0 -136
  224. package/esm2020/components/menu/menu-sub-item/menu-sub-item.component.mjs +0 -109
  225. package/esm2020/components/menu/menu.component.mjs +0 -212
  226. package/esm2020/components/navbar/navbar-item/navbar-item.component.mjs +0 -95
  227. package/esm2020/components/navbar/navbar-sub-item/navbar-sub-item.component.mjs +0 -76
  228. package/esm2020/components/navbar/navbar.component.mjs +0 -75
  229. package/esm2020/components/number-input/number-input.component.mjs +0 -122
  230. package/esm2020/components/paginator/paginator-advanced/paginator-advanced.component.mjs +0 -123
  231. package/esm2020/components/paginator/paginator.component.mjs +0 -133
  232. package/esm2020/components/phone-input/phone-input.component.mjs +0 -285
  233. package/esm2020/components/popover/popover.component.mjs +0 -76
  234. package/esm2020/components/progress/spinner/spinner.component.mjs +0 -101
  235. package/esm2020/components/radio/radio-group.component.mjs +0 -117
  236. package/esm2020/components/radio/radio.component.mjs +0 -51
  237. package/esm2020/components/section-heading/back-button/back-button.component.mjs +0 -30
  238. package/esm2020/components/select-menu/multi-select-menu/multi-select-menu.component.mjs +0 -357
  239. package/esm2020/components/select-menu/select-menu.component.mjs +0 -332
  240. package/esm2020/components/select-menu/select-menu.module.mjs +0 -56
  241. package/esm2020/components/shared/pipes/pipes.module.mjs +0 -36
  242. package/esm2020/components/shared/pipes/translate.pipe.mjs +0 -40
  243. package/esm2020/components/shared/services/menu-manager.service.mjs +0 -27
  244. package/esm2020/components/shared/translation.service.mjs +0 -26
  245. package/esm2020/components/snackbar/snackbar/snackbar.component.mjs +0 -111
  246. package/esm2020/components/snackbar/snackbar-container/snackbar-container.component.mjs +0 -63
  247. package/esm2020/components/snackbar/snackbar.service.mjs +0 -36
  248. package/esm2020/components/stepper/step.component.mjs +0 -113
  249. package/esm2020/components/stepper/stepper.component.mjs +0 -95
  250. package/esm2020/components/switch/switch.component.mjs +0 -73
  251. package/esm2020/components/table/row.mjs +0 -170
  252. package/esm2020/components/table/table-dense.component.mjs +0 -38
  253. package/esm2020/components/table/table.component.mjs +0 -38
  254. package/esm2020/components/tabs/tab/tab.component.mjs +0 -79
  255. package/esm2020/components/tabs/tabs.component.mjs +0 -68
  256. package/esm2020/components/text-input/text-input.component.mjs +0 -112
  257. package/esm2020/components/textarea-input/textarea-input.component.mjs +0 -86
  258. package/fesm2015/flywheel-io-vision.mjs +0 -8126
  259. package/fesm2015/flywheel-io-vision.mjs.map +0 -1
  260. package/fesm2020/flywheel-io-vision.mjs.map +0 -1
  261. package/flywheel-io-vision-2.0.0-beta.8.tgz +0 -0
  262. /package/{esm2020 → esm2022}/components/icon/icon.types.mjs +0 -0
  263. /package/{esm2020 → esm2022}/components/paginator/paginator.model.mjs +0 -0
  264. /package/{esm2020 → esm2022}/components/phone-input/country-code.data.mjs +0 -0
  265. /package/{esm2020 → esm2022}/components/phone-input/phone-input.model.mjs +0 -0
  266. /package/{esm2020 → esm2022}/components/snackbar/snackbar-message.model.mjs +0 -0
  267. /package/{esm2020 → esm2022}/components/snackbar/snackbar-timer.service.mjs +0 -0
  268. /package/{esm2020 → esm2022}/flywheel-io-vision.mjs +0 -0
  269. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -1,122 +0,0 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output, ViewChild } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "../icon/icon.component";
6
- export class FwNumberInputComponent {
7
- constructor() {
8
- this.disabled = false;
9
- this.useActionableIcons = false;
10
- this.leftIconAction = new EventEmitter();
11
- this.rightIconAction = new EventEmitter();
12
- this.size = 'medium';
13
- // we bind this to host because that's where angular form apis put the error classes
14
- this.error = false;
15
- this.externalControl = null;
16
- this.onTouch = () => {
17
- };
18
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
19
- this.onChange = (value) => {
20
- };
21
- }
22
- writeValue(obj) {
23
- this.value = obj;
24
- }
25
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
26
- registerOnChange(fn) {
27
- this.onChange = fn;
28
- }
29
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
- registerOnTouched(fn) {
31
- this.onTouch = fn;
32
- }
33
- setDisabledState(isDisabled) {
34
- this.disabled = isDisabled;
35
- }
36
- changeHandler(event) {
37
- if (this.numberType === 'float') {
38
- this.value = parseFloat(event.target.value);
39
- }
40
- else {
41
- this.value = parseInt(event.target.value);
42
- }
43
- this.onChange(this.value);
44
- this.onTouch();
45
- }
46
- blurHandler() {
47
- this.onTouch();
48
- }
49
- onLeftIconClick() {
50
- this.leftIconAction.emit();
51
- }
52
- onRightIconClick() {
53
- this.rightIconAction.emit();
54
- }
55
- handleDecrement() {
56
- this.numberInput.nativeElement.stepDown();
57
- }
58
- handleIncrement() {
59
- this.numberInput.nativeElement.stepUp();
60
- }
61
- }
62
- FwNumberInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwNumberInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
63
- FwNumberInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwNumberInputComponent, selector: "fw-number-input", inputs: { disabled: "disabled", useActionableIcons: "useActionableIcons", leftIcon: "leftIcon", rightIcon: "rightIcon", prefix: "prefix", context: "context", placeholder: "placeholder", readOnly: "readOnly", size: "size", min: "min", max: "max", step: "step", arrows: "arrows", numberType: "numberType", autofocus: "autofocus", autocomplete: "autocomplete", error: "error", value: "value" }, outputs: { leftIconAction: "leftIconAction", rightIconAction: "rightIconAction" }, host: { properties: { "class.errored": "this.error" } }, providers: [{
64
- provide: NG_VALUE_ACCESSOR,
65
- useExisting: FwNumberInputComponent,
66
- multi: true,
67
- }], viewQueries: [{ propertyName: "numberInput", first: true, predicate: ["numberInput"], descendants: true }], ngImport: i0, template: "<div class=\"full-container\" [ngClass]=\"{'disabled': disabled}\">\n <div class=\"input-container\" [class]=\"size\">\n <button *ngIf=\"arrows === 'plus-minus'\" (click)=\"handleDecrement()\">-</button>\n <fw-icon\n *ngIf=\"!!leftIcon\"\n (click)=\"useActionableIcons?onLeftIconClick():null\"\n [ngClass]=\"useActionableIcons?'actionable':''\">{{ leftIcon }}\n </fw-icon>\n <p class=\"vision-p2 context\" *ngIf=\"!!prefix\">{{ prefix }}</p>\n\n <input\n #numberInput\n [class]=\"arrows\"\n (keyup)=\"changeHandler($event)\"\n (blur)=\"blurHandler()\"\n [value]=\"value\"\n type=\"number\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [placeholder]=\"placeholder || ''\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [autocomplete]=\"autocomplete\"\n >\n <ng-content select=\"input\"></ng-content>\n <p class=\"vision-p2 context\" *ngIf=\"!!context\">{{ context }}</p>\n\n <fw-icon class=\"error-icon\">warning-circle</fw-icon>\n <fw-icon\n *ngIf=\"!!rightIcon\"\n (click)=\"useActionableIcons?onRightIconClick():null\"\n [ngClass]=\"useActionableIcons?'actionable':''\">{{ rightIcon }}\n </fw-icon>\n <button *ngIf=\"arrows === 'plus-minus'\" (click)=\"handleIncrement()\">+</button>\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700\";.vision-h1{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:22px}.vision-h2{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:18px}.vision-h3{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:16px}.vision-h4{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:14px}.vision-h5{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:12px;line-height:130%}.vision-p1{font-size:18px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-p2{font-size:14px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-p3{font-size:12px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-p4{font-size:10px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-link{text-decoration:underline;color:var(--primary-base);cursor:pointer}.vision-link:hover{text-decoration:none}.vision-link:active{text-decoration:none;outline:2px solid var(--primary-dark);border-radius:4px}.vision-link:visited{color:var(--secondary-base)}.vision-link-inherited{text-decoration:underline;color:var(--primary-base);cursor:pointer;color:inherit}.vision-link-inherited:hover{text-decoration:none}.vision-link-inherited:active{text-decoration:none;outline:2px solid var(--primary-dark);border-radius:4px}.vision-link-inherited:visited{color:var(--secondary-base)}.vision-link-inherited:visited{color:inherit}.vision-link-no-visited{text-decoration:underline;color:var(--primary-base);cursor:pointer}.vision-link-no-visited:hover{text-decoration:none}.vision-link-no-visited:active{text-decoration:none;outline:2px solid var(--primary-dark);border-radius:4px}.vision-link-no-visited:visited{color:var(--secondary-base)}.vision-link-no-visited:visited{color:var(--primary-base)}.full-container{display:flex;flex-direction:column;line-height:21px}.full-container.disabled{cursor:not-allowed}.full-container.disabled fw-icon{cursor:not-allowed!important}.full-container .input-container{box-sizing:border-box;color:var(--typography-light);background:var(--page-light);display:flex;padding:8px;align-items:center;gap:5px;border-radius:6px;border:1px solid var(--separations-input);font-family:Inter,sans-serif}.full-container .input-container:focus-within{border:1px solid var(--primary-base)}.full-container .input-container input{min-width:0;font-size:14px;flex-grow:1;color:var(--typography-base);background:var(--page-light);border:none}.full-container .input-container input:focus{outline:none;border:none}.full-container .input-container input.native[type=number]::-webkit-inner-spin-button,.full-container .input-container input.native[type=number]::-webkit-outer-spin-button{opacity:1;filter:brightness(1.1)}.full-container .input-container input.none::-webkit-outer-spin-button,.full-container .input-container input.none::-webkit-inner-spin-button,.full-container .input-container input.plus-minus::-webkit-outer-spin-button,.full-container .input-container input.plus-minus::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.full-container .input-container input.none[type=number],.full-container .input-container input.plus-minus[type=number]{-moz-appearance:textfield}.full-container .input-container input::placeholder{color:var(--typography-light)}.full-container .input-container .context{color:var(--typography-light)}.full-container .input-container button{background:transparent;border:none;cursor:pointer;padding:0;margin:0;aspect-ratio:1}.full-container .error-icon{display:none}.full-container .helper-text,.full-container .error-text{margin-top:4px;color:var(--typography-light);line-height:13px;margin-left:6px;margin-bottom:0}.full-container .error-text{text-align:left;color:var(--red-base);display:none}fw-icon.actionable{cursor:pointer}fw-icon.actionable:hover{color:var(--primary-base);background-color:var(--primary-hover);border-radius:50%}.small{height:30px}.small>fw-icon{font-size:18px;min-width:18px;width:18px}.medium{height:36px}.medium>fw-icon{font-size:20px;min-width:20px;width:20px}.large{height:40px}.large>fw-icon{font-size:24px;min-width:24px;width:24px}:host.errored .input-container,:host.ng-touched.ng-invalid .input-container{border:1px solid var(--red-base)}:host.errored .error-icon,:host.ng-touched.ng-invalid .error-icon{color:var(--red-base);display:inline!important}:host.errored .helper-text,:host.errored .full-container .error-text,:host.ng-touched.ng-invalid .helper-text,:host.ng-touched.ng-invalid .full-container .error-text{display:none}:host.errored .error-text,:host.ng-touched.ng-invalid .error-text{display:block!important}:disabled{opacity:.4;cursor:not-allowed}.disabled .actionable:hover{color:var(--typography-light);background-color:transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconComponent, selector: "fw-icon", inputs: ["size", "color"] }] });
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwNumberInputComponent, decorators: [{
69
- type: Component,
70
- args: [{ selector: 'fw-number-input', providers: [{
71
- provide: NG_VALUE_ACCESSOR,
72
- useExisting: FwNumberInputComponent,
73
- multi: true,
74
- }], template: "<div class=\"full-container\" [ngClass]=\"{'disabled': disabled}\">\n <div class=\"input-container\" [class]=\"size\">\n <button *ngIf=\"arrows === 'plus-minus'\" (click)=\"handleDecrement()\">-</button>\n <fw-icon\n *ngIf=\"!!leftIcon\"\n (click)=\"useActionableIcons?onLeftIconClick():null\"\n [ngClass]=\"useActionableIcons?'actionable':''\">{{ leftIcon }}\n </fw-icon>\n <p class=\"vision-p2 context\" *ngIf=\"!!prefix\">{{ prefix }}</p>\n\n <input\n #numberInput\n [class]=\"arrows\"\n (keyup)=\"changeHandler($event)\"\n (blur)=\"blurHandler()\"\n [value]=\"value\"\n type=\"number\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [placeholder]=\"placeholder || ''\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [autocomplete]=\"autocomplete\"\n >\n <ng-content select=\"input\"></ng-content>\n <p class=\"vision-p2 context\" *ngIf=\"!!context\">{{ context }}</p>\n\n <fw-icon class=\"error-icon\">warning-circle</fw-icon>\n <fw-icon\n *ngIf=\"!!rightIcon\"\n (click)=\"useActionableIcons?onRightIconClick():null\"\n [ngClass]=\"useActionableIcons?'actionable':''\">{{ rightIcon }}\n </fw-icon>\n <button *ngIf=\"arrows === 'plus-minus'\" (click)=\"handleIncrement()\">+</button>\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700\";.vision-h1{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:22px}.vision-h2{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:18px}.vision-h3{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:16px}.vision-h4{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:14px}.vision-h5{font-family:Inter,sans-serif;color:var(--typography-base);font-weight:500;font-size:12px;line-height:130%}.vision-p1{font-size:18px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-p2{font-size:14px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-p3{font-size:12px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-p4{font-size:10px;font-family:Inter,sans-serif;color:var(--typography-base);font-weight:400}.vision-link{text-decoration:underline;color:var(--primary-base);cursor:pointer}.vision-link:hover{text-decoration:none}.vision-link:active{text-decoration:none;outline:2px solid var(--primary-dark);border-radius:4px}.vision-link:visited{color:var(--secondary-base)}.vision-link-inherited{text-decoration:underline;color:var(--primary-base);cursor:pointer;color:inherit}.vision-link-inherited:hover{text-decoration:none}.vision-link-inherited:active{text-decoration:none;outline:2px solid var(--primary-dark);border-radius:4px}.vision-link-inherited:visited{color:var(--secondary-base)}.vision-link-inherited:visited{color:inherit}.vision-link-no-visited{text-decoration:underline;color:var(--primary-base);cursor:pointer}.vision-link-no-visited:hover{text-decoration:none}.vision-link-no-visited:active{text-decoration:none;outline:2px solid var(--primary-dark);border-radius:4px}.vision-link-no-visited:visited{color:var(--secondary-base)}.vision-link-no-visited:visited{color:var(--primary-base)}.full-container{display:flex;flex-direction:column;line-height:21px}.full-container.disabled{cursor:not-allowed}.full-container.disabled fw-icon{cursor:not-allowed!important}.full-container .input-container{box-sizing:border-box;color:var(--typography-light);background:var(--page-light);display:flex;padding:8px;align-items:center;gap:5px;border-radius:6px;border:1px solid var(--separations-input);font-family:Inter,sans-serif}.full-container .input-container:focus-within{border:1px solid var(--primary-base)}.full-container .input-container input{min-width:0;font-size:14px;flex-grow:1;color:var(--typography-base);background:var(--page-light);border:none}.full-container .input-container input:focus{outline:none;border:none}.full-container .input-container input.native[type=number]::-webkit-inner-spin-button,.full-container .input-container input.native[type=number]::-webkit-outer-spin-button{opacity:1;filter:brightness(1.1)}.full-container .input-container input.none::-webkit-outer-spin-button,.full-container .input-container input.none::-webkit-inner-spin-button,.full-container .input-container input.plus-minus::-webkit-outer-spin-button,.full-container .input-container input.plus-minus::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.full-container .input-container input.none[type=number],.full-container .input-container input.plus-minus[type=number]{-moz-appearance:textfield}.full-container .input-container input::placeholder{color:var(--typography-light)}.full-container .input-container .context{color:var(--typography-light)}.full-container .input-container button{background:transparent;border:none;cursor:pointer;padding:0;margin:0;aspect-ratio:1}.full-container .error-icon{display:none}.full-container .helper-text,.full-container .error-text{margin-top:4px;color:var(--typography-light);line-height:13px;margin-left:6px;margin-bottom:0}.full-container .error-text{text-align:left;color:var(--red-base);display:none}fw-icon.actionable{cursor:pointer}fw-icon.actionable:hover{color:var(--primary-base);background-color:var(--primary-hover);border-radius:50%}.small{height:30px}.small>fw-icon{font-size:18px;min-width:18px;width:18px}.medium{height:36px}.medium>fw-icon{font-size:20px;min-width:20px;width:20px}.large{height:40px}.large>fw-icon{font-size:24px;min-width:24px;width:24px}:host.errored .input-container,:host.ng-touched.ng-invalid .input-container{border:1px solid var(--red-base)}:host.errored .error-icon,:host.ng-touched.ng-invalid .error-icon{color:var(--red-base);display:inline!important}:host.errored .helper-text,:host.errored .full-container .error-text,:host.ng-touched.ng-invalid .helper-text,:host.ng-touched.ng-invalid .full-container .error-text{display:none}:host.errored .error-text,:host.ng-touched.ng-invalid .error-text{display:block!important}:disabled{opacity:.4;cursor:not-allowed}.disabled .actionable:hover{color:var(--typography-light);background-color:transparent}\n"] }]
75
- }], propDecorators: { disabled: [{
76
- type: Input
77
- }], useActionableIcons: [{
78
- type: Input
79
- }], leftIcon: [{
80
- type: Input
81
- }], leftIconAction: [{
82
- type: Output
83
- }], rightIcon: [{
84
- type: Input
85
- }], rightIconAction: [{
86
- type: Output
87
- }], prefix: [{
88
- type: Input
89
- }], context: [{
90
- type: Input
91
- }], placeholder: [{
92
- type: Input
93
- }], readOnly: [{
94
- type: Input
95
- }], size: [{
96
- type: Input
97
- }], min: [{
98
- type: Input
99
- }], max: [{
100
- type: Input
101
- }], step: [{
102
- type: Input
103
- }], arrows: [{
104
- type: Input
105
- }], numberType: [{
106
- type: Input
107
- }], autofocus: [{
108
- type: Input
109
- }], autocomplete: [{
110
- type: Input
111
- }], numberInput: [{
112
- type: ViewChild,
113
- args: ['numberInput']
114
- }], error: [{
115
- type: HostBinding,
116
- args: ['class.errored']
117
- }, {
118
- type: Input
119
- }], value: [{
120
- type: Input
121
- }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFxQyxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBY3RGLE1BQU0sT0FBTyxzQkFBc0I7SUFWbkM7UUFZVyxhQUFRLEdBQWEsS0FBSyxDQUFDO1FBQzNCLHVCQUFrQixHQUFhLEtBQUssQ0FBQztRQUVwQyxtQkFBYyxHQUF3QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRS9ELG9CQUFlLEdBQXdCLElBQUksWUFBWSxFQUFRLENBQUM7UUFLakUsU0FBSSxHQUFrQyxRQUFRLENBQUM7UUFTeEQsb0ZBQW9GO1FBQzdDLFVBQUssR0FBYSxLQUFLLENBQUM7UUFHL0Qsb0JBQWUsR0FBZ0IsSUFBSSxDQUFDO1FBRTdCLFlBQU8sR0FBRyxHQUFTLEVBQUU7UUFDNUIsQ0FBQyxDQUFDO1FBQ0YsNkRBQTZEO1FBQ3RELGFBQVEsR0FBRyxDQUFDLEtBQWEsRUFBUSxFQUFFO1FBQzFDLENBQUMsQ0FBQztLQWlESDtJQS9DQyxVQUFVLENBQUMsR0FBVztRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztJQUNuQixDQUFDO0lBRUQsOERBQThEO0lBQzlELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELDhEQUE4RDtJQUM5RCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQW9CO1FBQ2hDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxPQUFPLEVBQUU7WUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUUsS0FBSyxDQUFDLE1BQTJCLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbkU7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFFLEtBQUssQ0FBQyxNQUEyQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2pFO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDMUMsQ0FBQzs7b0hBL0VVLHNCQUFzQjt3R0FBdEIsc0JBQXNCLDhqQkFOdEIsQ0FBQztZQUNWLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLHNCQUFzQjtZQUNuQyxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsc0lDYkoseTRDQXVDQTs0RkR4QmEsc0JBQXNCO2tCQVZsQyxTQUFTOytCQUNFLGlCQUFpQixhQUdoQixDQUFDOzRCQUNWLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsd0JBQXdCOzRCQUNuQyxLQUFLLEVBQUUsSUFBSTt5QkFDWixDQUFDOzhCQUlPLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0UsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDb0IsV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhO2dCQUVlLEtBQUs7c0JBQTNDLFdBQVc7dUJBQUMsZUFBZTs7c0JBQUcsS0FBSztnQkFFM0IsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEljb25UeXBlIH0gZnJvbSAnLi4vaWNvbi9pY29uLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctbnVtYmVyLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL251bWJlci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL251bWJlci1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IEZ3TnVtYmVySW5wdXRDb21wb25lbnQsXG4gICAgbXVsdGk6IHRydWUsXG4gIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBGd051bWJlcklucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXG4gIEBJbnB1dCgpIGRpc2FibGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB1c2VBY3Rpb25hYmxlSWNvbnM/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGxlZnRJY29uPzogSWNvblR5cGU7XG4gIEBPdXRwdXQoKSBsZWZ0SWNvbkFjdGlvbj86IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQElucHV0KCkgcmlnaHRJY29uPzogc3RyaW5nO1xuICBAT3V0cHV0KCkgcmlnaHRJY29uQWN0aW9uPzogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBASW5wdXQoKSBwcmVmaXg/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbnRleHQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICBASW5wdXQoKSByZWFkT25seT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNpemU/OiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnID0gJ21lZGl1bSc7XG4gIEBJbnB1dCgpIG1pbj86IG51bWJlcjtcbiAgQElucHV0KCkgbWF4PzogbnVtYmVyO1xuICBASW5wdXQoKSBzdGVwPzogbnVtYmVyO1xuICBASW5wdXQoKSBhcnJvd3M/OiAnbmF0aXZlJyB8ICdwbHVzLW1pbnVzJyB8ICdub25lJztcbiAgQElucHV0KCkgbnVtYmVyVHlwZT86ICdpbnRlZ2VyJyB8ICdmbG9hdCc7XG4gIEBJbnB1dCgpIGF1dG9mb2N1cz86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGF1dG9jb21wbGV0ZT86IGJvb2xlYW47XG4gIEBWaWV3Q2hpbGQoJ251bWJlcklucHV0JykgbnVtYmVySW5wdXQ7XG4gIC8vIHdlIGJpbmQgdGhpcyB0byBob3N0IGJlY2F1c2UgdGhhdCdzIHdoZXJlIGFuZ3VsYXIgZm9ybSBhcGlzIHB1dCB0aGUgZXJyb3IgY2xhc3Nlc1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmVycm9yZWQnKSBASW5wdXQoKSBlcnJvcj86IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSB2YWx1ZTogbnVtYmVyO1xuICBleHRlcm5hbENvbnRyb2w6IEZvcm1Db250cm9sID0gbnVsbDtcblxuICBwdWJsaWMgb25Ub3VjaCA9ICgpOiB2b2lkID0+IHtcbiAgfTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBwdWJsaWMgb25DaGFuZ2UgPSAodmFsdWU6IG51bWJlcik6IHZvaWQgPT4ge1xuICB9O1xuXG4gIHdyaXRlVmFsdWUob2JqOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gb2JqO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBjaGFuZ2VIYW5kbGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubnVtYmVyVHlwZSA9PT0gJ2Zsb2F0Jykge1xuICAgICAgdGhpcy52YWx1ZSA9IHBhcnNlRmxvYXQoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSBwYXJzZUludCgoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICB0aGlzLm9uVG91Y2goKTtcbiAgfVxuXG4gIGJsdXJIYW5kbGVyKCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaCgpO1xuICB9XG5cbiAgb25MZWZ0SWNvbkNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMubGVmdEljb25BY3Rpb24uZW1pdCgpO1xuICB9XG5cbiAgb25SaWdodEljb25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnJpZ2h0SWNvbkFjdGlvbi5lbWl0KCk7XG4gIH1cblxuICBoYW5kbGVEZWNyZW1lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5udW1iZXJJbnB1dC5uYXRpdmVFbGVtZW50LnN0ZXBEb3duKCk7XG4gIH1cblxuICBoYW5kbGVJbmNyZW1lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5udW1iZXJJbnB1dC5uYXRpdmVFbGVtZW50LnN0ZXBVcCgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZnVsbC1jb250YWluZXJcIiBbbmdDbGFzc109XCJ7J2Rpc2FibGVkJzogZGlzYWJsZWR9XCI+XG4gIDxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIiBbY2xhc3NdPVwic2l6ZVwiPlxuICAgIDxidXR0b24gKm5nSWY9XCJhcnJvd3MgPT09ICdwbHVzLW1pbnVzJ1wiIChjbGljayk9XCJoYW5kbGVEZWNyZW1lbnQoKVwiPi08L2J1dHRvbj5cbiAgICA8ZnctaWNvblxuICAgICAgKm5nSWY9XCIhIWxlZnRJY29uXCJcbiAgICAgIChjbGljayk9XCJ1c2VBY3Rpb25hYmxlSWNvbnM/b25MZWZ0SWNvbkNsaWNrKCk6bnVsbFwiXG4gICAgICBbbmdDbGFzc109XCJ1c2VBY3Rpb25hYmxlSWNvbnM/J2FjdGlvbmFibGUnOicnXCI+e3sgbGVmdEljb24gfX1cbiAgICA8L2Z3LWljb24+XG4gICAgPHAgY2xhc3M9XCJ2aXNpb24tcDIgY29udGV4dFwiICpuZ0lmPVwiISFwcmVmaXhcIj57eyBwcmVmaXggfX08L3A+XG5cbiAgICA8aW5wdXRcbiAgICAgICNudW1iZXJJbnB1dFxuICAgICAgW2NsYXNzXT1cImFycm93c1wiXG4gICAgICAoa2V5dXApPVwiY2hhbmdlSGFuZGxlcigkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cImJsdXJIYW5kbGVyKClcIlxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgW21pbl09XCJtaW5cIlxuICAgICAgW21heF09XCJtYXhcIlxuICAgICAgW3N0ZXBdPVwic3RlcFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfHwgJydcIlxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImlucHV0XCI+PC9uZy1jb250ZW50PlxuICAgIDxwIGNsYXNzPVwidmlzaW9uLXAyIGNvbnRleHRcIiAqbmdJZj1cIiEhY29udGV4dFwiPnt7IGNvbnRleHQgfX08L3A+XG5cbiAgICA8ZnctaWNvbiBjbGFzcz1cImVycm9yLWljb25cIj53YXJuaW5nLWNpcmNsZTwvZnctaWNvbj5cbiAgICA8ZnctaWNvblxuICAgICAgKm5nSWY9XCIhIXJpZ2h0SWNvblwiXG4gICAgICAoY2xpY2spPVwidXNlQWN0aW9uYWJsZUljb25zP29uUmlnaHRJY29uQ2xpY2soKTpudWxsXCJcbiAgICAgIFtuZ0NsYXNzXT1cInVzZUFjdGlvbmFibGVJY29ucz8nYWN0aW9uYWJsZSc6JydcIj57eyByaWdodEljb24gfX1cbiAgICA8L2Z3LWljb24+XG4gICAgPGJ1dHRvbiAqbmdJZj1cImFycm93cyA9PT0gJ3BsdXMtbWludXMnXCIgKGNsaWNrKT1cImhhbmRsZUluY3JlbWVudCgpXCI+KzwvYnV0dG9uPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,123 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "@angular/forms";
5
- import * as i3 from "../../icon/icon.component";
6
- import * as i4 from "../../menu/menu-item/menu-item.component";
7
- import * as i5 from "../../select-menu/select-menu.component";
8
- export class FwPaginatorAdvancedComponent {
9
- constructor() {
10
- this.disabled = false;
11
- this.showNext = true;
12
- this.showPrevious = true;
13
- this.showFirst = false;
14
- this.showLast = false;
15
- this.pageIndex = 0;
16
- this.pageSizeOptions = [10, 25, 50, 100];
17
- this.length = 0;
18
- this.alignment = 'center';
19
- this.selectorTitle = 'Items per page:';
20
- this._pageSize = 10;
21
- this.page = new EventEmitter();
22
- }
23
- get pageSize() {
24
- return this._pageSize;
25
- }
26
- set pageSize(newSize) {
27
- this._pageSize = parseInt(newSize.toString());
28
- this.pageIndex = 0;
29
- const pageEvt = this.buildPageEvent(0);
30
- this.page.emit(pageEvt);
31
- }
32
- buildPageEvent(pageIndex) {
33
- return {
34
- length: this.length,
35
- pageSize: this.pageSize,
36
- pageIndex: pageIndex,
37
- previousPageIndex: this.pageIndex,
38
- rowIndexStart: this.getRowIndexStart(pageIndex),
39
- rowIndexEnd: this.getRowIndexEnd(pageIndex),
40
- };
41
- }
42
- firstPage() {
43
- const evt = this.buildPageEvent(1);
44
- this.pageIndex = 0;
45
- this.page.emit(evt);
46
- }
47
- lastPage() {
48
- const evt = this.buildPageEvent(this.getNumberOfPages());
49
- this.pageIndex = this.getNumberOfPages() - 1;
50
- this.page.emit(evt);
51
- }
52
- nextPage() {
53
- if (this.hasNextPage()) {
54
- const evt = this.buildPageEvent(this.pageIndex + 1);
55
- this.pageIndex++;
56
- this.page.emit(evt);
57
- }
58
- }
59
- previousPage() {
60
- if (this.hasPreviousPage()) {
61
- const evt = this.buildPageEvent(this.pageIndex - 1);
62
- this.pageIndex--;
63
- this.page.emit(evt);
64
- }
65
- }
66
- setPage(pageNumber) {
67
- const evt = this.buildPageEvent(pageNumber);
68
- this.pageIndex = pageNumber;
69
- this.page.emit(evt);
70
- }
71
- getNumberOfPages() {
72
- return Math.ceil(this.length / this.pageSize);
73
- }
74
- getRowIndexStart(pageIndex) {
75
- const index = pageIndex !== undefined ? pageIndex : this.pageIndex;
76
- return index * this.pageSize;
77
- }
78
- getRowIndexEnd(pageIndex) {
79
- const index = pageIndex !== undefined ? pageIndex : this.pageIndex;
80
- let indexEnd = (index * this.pageSize) + this.pageSize - 1;
81
- if (indexEnd > this.length) {
82
- indexEnd = this.length - 1;
83
- }
84
- return indexEnd;
85
- }
86
- hasNextPage() {
87
- return (this.pageIndex !== this.getNumberOfPages() - 1);
88
- }
89
- hasPreviousPage() {
90
- return (this.pageIndex > 0);
91
- }
92
- }
93
- FwPaginatorAdvancedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwPaginatorAdvancedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
94
- FwPaginatorAdvancedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwPaginatorAdvancedComponent, selector: "fw-paginator-advanced", inputs: { disabled: "disabled", showNext: "showNext", showPrevious: "showPrevious", showFirst: "showFirst", showLast: "showLast", pageIndex: "pageIndex", pageSizeOptions: "pageSizeOptions", length: "length", alignment: "alignment", selectorTitle: "selectorTitle", pageSize: "pageSize" }, outputs: { page: "page" }, ngImport: i0, template: "<div [ngClass]=\"['paginator', alignment]\">\n <div class=\"pages-selector\">\n <div>\n <p class=\"vision-p2\" [ngClass]=\"disabled?'disabled':''\">{{ selectorTitle }}</p>\n &nbsp;\n <fw-select\n [disabled]=\"disabled\" width=\"80px\" placeholder=\"Size\"\n [(ngModel)]=\"pageSize\">\n <fw-menu-item\n *ngFor=\"let size of pageSizeOptions\"\n [value]=\"size.toString()\"\n [title]=\"size.toString()\"\n [selected]=\"pageSize.toString()===size.toString()\"\n [disabled]=\"disabled\"\n ></fw-menu-item>\n </fw-select>\n </div>\n <p class=\"vision-p2 record-count\" [ngClass]=\"disabled?'disabled':''\">\n {{ getRowIndexStart() + 1 }}-{{ getRowIndexEnd() + 1 }}\n of {{ length }}</p>\n <div>\n <button\n *ngIf=\"showFirst\"\n class=\"page-item page-action page-first\" [disabled]=\"!hasPreviousPage() || disabled\" (click)=\"firstPage()\">\n <fw-icon>arrow-back-collapse</fw-icon>\n </button>\n <button\n *ngIf=\"showPrevious\"\n class=\"page-item page-action page-previous\" [disabled]=\"!hasPreviousPage() || disabled\"\n (click)=\"previousPage()\">\n <fw-icon>chevron-back</fw-icon>\n </button>\n <button\n *ngIf=\"showNext\" class=\"page-item page-action page-next\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"nextPage()\">\n <fw-icon>chevron-forward</fw-icon>\n </button>\n <button\n *ngIf=\"showLast\" class=\"page-item page-action page-last\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"lastPage()\">\n <fw-icon>arrow-forward-collapse</fw-icon>\n </button>\n </div>\n </div>\n</div>\n", styles: [":host .paginator{display:flex}:host .paginator button{border:none;background-color:transparent}:host .paginator .page-item{box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px}:host .paginator .page-item:disabled{color:var(--typography-muted);cursor:not-allowed}:host .paginator .page-item:disabled h4{opacity:.4}:host .paginator .page-action fw-icon{font-size:22px;color:var(--typography-base)}:host .paginator .page-action:disabled{opacity:.4}:host .paginator .pages-list{box-sizing:border-box;display:flex;gap:4px}:host .paginator .pages-list .page-number h4{margin:0;color:var(--typography-base)}:host .paginator .pages-list .page-number:disabled h4{color:var(--slate-base)!important}:host .paginator .pages-list .page-active{background-color:var(--slate-focus)}:host .paginator .pages-list .page-active:disabled{background-color:transparent}:host .paginator.start{justify-content:flex-start}:host .paginator.center{justify-content:center}:host .paginator.end{justify-content:flex-end}:host .paginator.large .page-item{width:40px;height:40px}:host .paginator.medium .page-item{width:32px;height:32px}:host .paginator.small .page-item{width:26px;height:26px}:host .paginator.primary .page-active:not(:disabled){background-color:var(--primary-base)!important}:host .paginator.primary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.secondary .page-active:not(:disabled){background-color:var(--secondary-base)!important}:host .paginator.secondary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.outline .page-item{border:1px solid var(--slate-border)}:host .paginator.outline .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.primary .page-active{background-color:var(--primary-hover)!important;border-color:var(--primary-border)!important}:host .paginator.outline.primary .page-active h4{color:var(--primary-base)!important}:host .paginator.outline.primary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.secondary .page-active{background-color:var(--secondary-hover)!important;border-color:var(--secondary-border)!important}:host .paginator.outline.secondary .page-active h4{color:var(--secondary-base)!important}:host .paginator.outline.secondary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.solid .page-item{border:1px solid var(--slate-border);background-color:var(--card-background)}:host .paginator.solid .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:var(--card-background)!important;opacity:.4}:host .paginator.solid .page-number:disabled h4{opacity:1}:host .paginator.circle .page-number{border-radius:999px!important}:host .paginator .pages-selector{display:flex;align-items:center;justify-content:flex-end;gap:16px}:host .paginator .pages-selector>div{display:flex;align-items:center}:host .paginator .pages-selector fw-icon{font-size:22px}:host .paginator .pages-selector .record-count{min-width:130px;text-align:center}:host .paginator .pages-selector p.disabled{color:var(--typography-light)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.FwIconComponent, selector: "fw-icon", inputs: ["size", "color"] }, { kind: "component", type: i4.FwMenuItemComponent, selector: "fw-menu-item", inputs: ["value", "size", "title", "description", "icon", "iconColor", "disabled", "showCheckbox", "checkboxColor", "multiSelect", "hidden", "collapsed", "href", "target", "subItemsOpen", "focused", "selected", "variant"], outputs: ["click"] }, { kind: "component", type: i5.FwSelectMenuComponent, selector: "fw-select", inputs: ["options", "valueProperty", "useFullOptionAsValue", "titleProperty", "iconProperty", "staticIcon", "descriptionProperty", "showFilter", "showReset", "disabled", "errored", "width", "optionsWidth", "minOptionsHeight", "maxOptionsHeight", "size", "placeholder", "value"], outputs: ["change", "filterChanged"] }] });
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwPaginatorAdvancedComponent, decorators: [{
96
- type: Component,
97
- args: [{ selector: 'fw-paginator-advanced', template: "<div [ngClass]=\"['paginator', alignment]\">\n <div class=\"pages-selector\">\n <div>\n <p class=\"vision-p2\" [ngClass]=\"disabled?'disabled':''\">{{ selectorTitle }}</p>\n &nbsp;\n <fw-select\n [disabled]=\"disabled\" width=\"80px\" placeholder=\"Size\"\n [(ngModel)]=\"pageSize\">\n <fw-menu-item\n *ngFor=\"let size of pageSizeOptions\"\n [value]=\"size.toString()\"\n [title]=\"size.toString()\"\n [selected]=\"pageSize.toString()===size.toString()\"\n [disabled]=\"disabled\"\n ></fw-menu-item>\n </fw-select>\n </div>\n <p class=\"vision-p2 record-count\" [ngClass]=\"disabled?'disabled':''\">\n {{ getRowIndexStart() + 1 }}-{{ getRowIndexEnd() + 1 }}\n of {{ length }}</p>\n <div>\n <button\n *ngIf=\"showFirst\"\n class=\"page-item page-action page-first\" [disabled]=\"!hasPreviousPage() || disabled\" (click)=\"firstPage()\">\n <fw-icon>arrow-back-collapse</fw-icon>\n </button>\n <button\n *ngIf=\"showPrevious\"\n class=\"page-item page-action page-previous\" [disabled]=\"!hasPreviousPage() || disabled\"\n (click)=\"previousPage()\">\n <fw-icon>chevron-back</fw-icon>\n </button>\n <button\n *ngIf=\"showNext\" class=\"page-item page-action page-next\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"nextPage()\">\n <fw-icon>chevron-forward</fw-icon>\n </button>\n <button\n *ngIf=\"showLast\" class=\"page-item page-action page-last\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"lastPage()\">\n <fw-icon>arrow-forward-collapse</fw-icon>\n </button>\n </div>\n </div>\n</div>\n", styles: [":host .paginator{display:flex}:host .paginator button{border:none;background-color:transparent}:host .paginator .page-item{box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px}:host .paginator .page-item:disabled{color:var(--typography-muted);cursor:not-allowed}:host .paginator .page-item:disabled h4{opacity:.4}:host .paginator .page-action fw-icon{font-size:22px;color:var(--typography-base)}:host .paginator .page-action:disabled{opacity:.4}:host .paginator .pages-list{box-sizing:border-box;display:flex;gap:4px}:host .paginator .pages-list .page-number h4{margin:0;color:var(--typography-base)}:host .paginator .pages-list .page-number:disabled h4{color:var(--slate-base)!important}:host .paginator .pages-list .page-active{background-color:var(--slate-focus)}:host .paginator .pages-list .page-active:disabled{background-color:transparent}:host .paginator.start{justify-content:flex-start}:host .paginator.center{justify-content:center}:host .paginator.end{justify-content:flex-end}:host .paginator.large .page-item{width:40px;height:40px}:host .paginator.medium .page-item{width:32px;height:32px}:host .paginator.small .page-item{width:26px;height:26px}:host .paginator.primary .page-active:not(:disabled){background-color:var(--primary-base)!important}:host .paginator.primary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.secondary .page-active:not(:disabled){background-color:var(--secondary-base)!important}:host .paginator.secondary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.outline .page-item{border:1px solid var(--slate-border)}:host .paginator.outline .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.primary .page-active{background-color:var(--primary-hover)!important;border-color:var(--primary-border)!important}:host .paginator.outline.primary .page-active h4{color:var(--primary-base)!important}:host .paginator.outline.primary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.secondary .page-active{background-color:var(--secondary-hover)!important;border-color:var(--secondary-border)!important}:host .paginator.outline.secondary .page-active h4{color:var(--secondary-base)!important}:host .paginator.outline.secondary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.solid .page-item{border:1px solid var(--slate-border);background-color:var(--card-background)}:host .paginator.solid .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:var(--card-background)!important;opacity:.4}:host .paginator.solid .page-number:disabled h4{opacity:1}:host .paginator.circle .page-number{border-radius:999px!important}:host .paginator .pages-selector{display:flex;align-items:center;justify-content:flex-end;gap:16px}:host .paginator .pages-selector>div{display:flex;align-items:center}:host .paginator .pages-selector fw-icon{font-size:22px}:host .paginator .pages-selector .record-count{min-width:130px;text-align:center}:host .paginator .pages-selector p.disabled{color:var(--typography-light)}\n"] }]
98
- }], propDecorators: { disabled: [{
99
- type: Input
100
- }], showNext: [{
101
- type: Input
102
- }], showPrevious: [{
103
- type: Input
104
- }], showFirst: [{
105
- type: Input
106
- }], showLast: [{
107
- type: Input
108
- }], pageIndex: [{
109
- type: Input
110
- }], pageSizeOptions: [{
111
- type: Input
112
- }], length: [{
113
- type: Input
114
- }], alignment: [{
115
- type: Input
116
- }], selectorTitle: [{
117
- type: Input
118
- }], pageSize: [{
119
- type: Input
120
- }], page: [{
121
- type: Output
122
- }] } });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLWFkdmFuY2VkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2luYXRvci9wYWdpbmF0b3ItYWR2YW5jZWQvcGFnaW5hdG9yLWFkdmFuY2VkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2luYXRvci9wYWdpbmF0b3ItYWR2YW5jZWQvcGFnaW5hdG9yLWFkdmFuY2VkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFTdkUsTUFBTSxPQUFPLDRCQUE0QjtJQUx6QztRQU1XLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN6QixpQkFBWSxHQUFZLElBQUksQ0FBQztRQUM3QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixvQkFBZSxHQUFhLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDOUMsV0FBTSxHQUFXLENBQUMsQ0FBQztRQUNuQixjQUFTLEdBQStCLFFBQVEsQ0FBQztRQUNqRCxrQkFBYSxHQUFXLGlCQUFpQixDQUFDO1FBYzNDLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDckIsU0FBSSxHQUFtQyxJQUFJLFlBQVksRUFBb0IsQ0FBQztLQXdFdkY7SUFyRkMsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxPQUFlO1FBQzFCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUtPLGNBQWMsQ0FBQyxTQUFpQjtRQUN0QyxPQUFPO1lBQ0wsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixTQUFTLEVBQUUsU0FBUztZQUNwQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsU0FBUztZQUNqQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztZQUMvQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUM7U0FDNUMsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTO1FBQ1AsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3RCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLFVBQWtCO1FBQ3hCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUM7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsU0FBa0I7UUFDakMsTUFBTSxLQUFLLEdBQUcsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ25FLE9BQU8sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVELGNBQWMsQ0FBQyxTQUFrQjtRQUMvQixNQUFNLEtBQUssR0FBRyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbkUsSUFBSSxRQUFRLEdBQUcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQzNELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDMUIsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQzVCO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OzBIQWhHVSw0QkFBNEI7OEdBQTVCLDRCQUE0Qix3WENUekMsbXVEQTZDQTs0RkRwQ2EsNEJBQTRCO2tCQUx4QyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFLeEIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdGLFFBQVE7c0JBRFgsS0FBSztnQkFhSSxJQUFJO3NCQUFiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGd1BhZ2luYXRvckV2ZW50IH0gZnJvbSAnLi4vcGFnaW5hdG9yLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctcGFnaW5hdG9yLWFkdmFuY2VkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRvci1hZHZhbmNlZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhZ2luYXRvci1hZHZhbmNlZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGd1BhZ2luYXRvckFkdmFuY2VkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd05leHQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93UHJldmlvdXM6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93Rmlyc3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd0xhc3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcGFnZUluZGV4OiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBwYWdlU2l6ZU9wdGlvbnM6IG51bWJlcltdID0gWzEwLCAyNSwgNTAsIDEwMF07XG4gIEBJbnB1dCgpIGxlbmd0aDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgYWxpZ25tZW50OiAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJyA9ICdjZW50ZXInO1xuICBASW5wdXQoKSBzZWxlY3RvclRpdGxlOiBzdHJpbmcgPSAnSXRlbXMgcGVyIHBhZ2U6JztcblxuICBASW5wdXQoKVxuICBnZXQgcGFnZVNpemUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fcGFnZVNpemU7XG4gIH1cblxuICBzZXQgcGFnZVNpemUobmV3U2l6ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fcGFnZVNpemUgPSBwYXJzZUludChuZXdTaXplLnRvU3RyaW5nKCkpO1xuICAgIHRoaXMucGFnZUluZGV4ID0gMDtcbiAgICBjb25zdCBwYWdlRXZ0ID0gdGhpcy5idWlsZFBhZ2VFdmVudCgwKTtcbiAgICB0aGlzLnBhZ2UuZW1pdChwYWdlRXZ0KTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhZ2VTaXplOiBudW1iZXIgPSAxMDtcbiAgQE91dHB1dCgpIHBhZ2U6IEV2ZW50RW1pdHRlcjxGd1BhZ2luYXRvckV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RndQYWdpbmF0b3JFdmVudD4oKTtcblxuICBwcml2YXRlIGJ1aWxkUGFnZUV2ZW50KHBhZ2VJbmRleDogbnVtYmVyKTogRndQYWdpbmF0b3JFdmVudCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxlbmd0aDogdGhpcy5sZW5ndGgsXG4gICAgICBwYWdlU2l6ZTogdGhpcy5wYWdlU2l6ZSxcbiAgICAgIHBhZ2VJbmRleDogcGFnZUluZGV4LFxuICAgICAgcHJldmlvdXNQYWdlSW5kZXg6IHRoaXMucGFnZUluZGV4LFxuICAgICAgcm93SW5kZXhTdGFydDogdGhpcy5nZXRSb3dJbmRleFN0YXJ0KHBhZ2VJbmRleCksXG4gICAgICByb3dJbmRleEVuZDogdGhpcy5nZXRSb3dJbmRleEVuZChwYWdlSW5kZXgpLFxuICAgIH07XG4gIH1cblxuICBmaXJzdFBhZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgZXZ0ID0gdGhpcy5idWlsZFBhZ2VFdmVudCgxKTtcbiAgICB0aGlzLnBhZ2VJbmRleCA9IDA7XG4gICAgdGhpcy5wYWdlLmVtaXQoZXZ0KTtcbiAgfVxuXG4gIGxhc3RQYWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IGV2dCA9IHRoaXMuYnVpbGRQYWdlRXZlbnQodGhpcy5nZXROdW1iZXJPZlBhZ2VzKCkpO1xuICAgIHRoaXMucGFnZUluZGV4ID0gdGhpcy5nZXROdW1iZXJPZlBhZ2VzKCkgLSAxO1xuICAgIHRoaXMucGFnZS5lbWl0KGV2dCk7XG4gIH1cblxuICBuZXh0UGFnZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oYXNOZXh0UGFnZSgpKSB7XG4gICAgICBjb25zdCBldnQgPSB0aGlzLmJ1aWxkUGFnZUV2ZW50KHRoaXMucGFnZUluZGV4ICsgMSk7XG4gICAgICB0aGlzLnBhZ2VJbmRleCsrO1xuICAgICAgdGhpcy5wYWdlLmVtaXQoZXZ0KTtcbiAgICB9XG4gIH1cblxuICBwcmV2aW91c1BhZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaGFzUHJldmlvdXNQYWdlKCkpIHtcbiAgICAgIGNvbnN0IGV2dCA9IHRoaXMuYnVpbGRQYWdlRXZlbnQodGhpcy5wYWdlSW5kZXggLSAxKTtcbiAgICAgIHRoaXMucGFnZUluZGV4LS07XG4gICAgICB0aGlzLnBhZ2UuZW1pdChldnQpO1xuICAgIH1cbiAgfVxuXG4gIHNldFBhZ2UocGFnZU51bWJlcjogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgZXZ0ID0gdGhpcy5idWlsZFBhZ2VFdmVudChwYWdlTnVtYmVyKTtcbiAgICB0aGlzLnBhZ2VJbmRleCA9IHBhZ2VOdW1iZXI7XG4gICAgdGhpcy5wYWdlLmVtaXQoZXZ0KTtcbiAgfVxuXG4gIGdldE51bWJlck9mUGFnZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5jZWlsKHRoaXMubGVuZ3RoIC8gdGhpcy5wYWdlU2l6ZSk7XG4gIH1cblxuICBnZXRSb3dJbmRleFN0YXJ0KHBhZ2VJbmRleD86IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgaW5kZXggPSBwYWdlSW5kZXggIT09IHVuZGVmaW5lZCA/IHBhZ2VJbmRleCA6IHRoaXMucGFnZUluZGV4O1xuICAgIHJldHVybiBpbmRleCAqIHRoaXMucGFnZVNpemU7XG4gIH1cblxuICBnZXRSb3dJbmRleEVuZChwYWdlSW5kZXg/OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGluZGV4ID0gcGFnZUluZGV4ICE9PSB1bmRlZmluZWQgPyBwYWdlSW5kZXggOiB0aGlzLnBhZ2VJbmRleDtcbiAgICBsZXQgaW5kZXhFbmQgPSAoaW5kZXggKiB0aGlzLnBhZ2VTaXplKSArIHRoaXMucGFnZVNpemUgLSAxO1xuICAgIGlmIChpbmRleEVuZCA+IHRoaXMubGVuZ3RoKSB7XG4gICAgICBpbmRleEVuZCA9IHRoaXMubGVuZ3RoIC0gMTtcbiAgICB9XG4gICAgcmV0dXJuIGluZGV4RW5kO1xuICB9XG5cbiAgaGFzTmV4dFBhZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLnBhZ2VJbmRleCAhPT0gdGhpcy5nZXROdW1iZXJPZlBhZ2VzKCkgLSAxKTtcbiAgfVxuXG4gIGhhc1ByZXZpb3VzUGFnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKHRoaXMucGFnZUluZGV4ID4gMCk7XG4gIH1cbn1cbiIsIjxkaXYgW25nQ2xhc3NdPVwiWydwYWdpbmF0b3InLCBhbGlnbm1lbnRdXCI+XG4gIDxkaXYgY2xhc3M9XCJwYWdlcy1zZWxlY3RvclwiPlxuICAgIDxkaXY+XG4gICAgICA8cCBjbGFzcz1cInZpc2lvbi1wMlwiIFtuZ0NsYXNzXT1cImRpc2FibGVkPydkaXNhYmxlZCc6JydcIj57eyBzZWxlY3RvclRpdGxlIH19PC9wPlxuICAgICAgJm5ic3A7XG4gICAgICA8Znctc2VsZWN0XG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIHdpZHRoPVwiODBweFwiIHBsYWNlaG9sZGVyPVwiU2l6ZVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwicGFnZVNpemVcIj5cbiAgICAgICAgPGZ3LW1lbnUtaXRlbVxuICAgICAgICAgICpuZ0Zvcj1cImxldCBzaXplIG9mIHBhZ2VTaXplT3B0aW9uc1wiXG4gICAgICAgICAgW3ZhbHVlXT1cInNpemUudG9TdHJpbmcoKVwiXG4gICAgICAgICAgW3RpdGxlXT1cInNpemUudG9TdHJpbmcoKVwiXG4gICAgICAgICAgW3NlbGVjdGVkXT1cInBhZ2VTaXplLnRvU3RyaW5nKCk9PT1zaXplLnRvU3RyaW5nKClcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgID48L2Z3LW1lbnUtaXRlbT5cbiAgICAgIDwvZnctc2VsZWN0PlxuICAgIDwvZGl2PlxuICAgIDxwIGNsYXNzPVwidmlzaW9uLXAyIHJlY29yZC1jb3VudFwiIFtuZ0NsYXNzXT1cImRpc2FibGVkPydkaXNhYmxlZCc6JydcIj5cbiAgICAgIHt7IGdldFJvd0luZGV4U3RhcnQoKSArIDEgfX0te3sgZ2V0Um93SW5kZXhFbmQoKSArIDEgfX1cbiAgICAgIG9mIHt7IGxlbmd0aCB9fTwvcD5cbiAgICA8ZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cInNob3dGaXJzdFwiXG4gICAgICAgIGNsYXNzPVwicGFnZS1pdGVtIHBhZ2UtYWN0aW9uIHBhZ2UtZmlyc3RcIiBbZGlzYWJsZWRdPVwiIWhhc1ByZXZpb3VzUGFnZSgpIHx8ICBkaXNhYmxlZFwiIChjbGljayk9XCJmaXJzdFBhZ2UoKVwiPlxuICAgICAgICA8ZnctaWNvbj5hcnJvdy1iYWNrLWNvbGxhcHNlPC9mdy1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwic2hvd1ByZXZpb3VzXCJcbiAgICAgICAgY2xhc3M9XCJwYWdlLWl0ZW0gcGFnZS1hY3Rpb24gcGFnZS1wcmV2aW91c1wiIFtkaXNhYmxlZF09XCIhaGFzUHJldmlvdXNQYWdlKCkgfHwgZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwicHJldmlvdXNQYWdlKClcIj5cbiAgICAgICAgPGZ3LWljb24+Y2hldnJvbi1iYWNrPC9mdy1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwic2hvd05leHRcIiBjbGFzcz1cInBhZ2UtaXRlbSBwYWdlLWFjdGlvbiBwYWdlLW5leHRcIiBbZGlzYWJsZWRdPVwiIWhhc05leHRQYWdlKCkgfHwgZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwibmV4dFBhZ2UoKVwiPlxuICAgICAgICA8ZnctaWNvbj5jaGV2cm9uLWZvcndhcmQ8L2Z3LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJzaG93TGFzdFwiIGNsYXNzPVwicGFnZS1pdGVtIHBhZ2UtYWN0aW9uIHBhZ2UtbGFzdFwiIFtkaXNhYmxlZF09XCIhaGFzTmV4dFBhZ2UoKSB8fCBkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJsYXN0UGFnZSgpXCI+XG4gICAgICAgIDxmdy1pY29uPmFycm93LWZvcndhcmQtY29sbGFwc2U8L2Z3LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,133 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "../icon/icon.component";
5
- export class FwPaginatorComponent {
6
- constructor() {
7
- this.size = 'medium';
8
- this.color = 'slate';
9
- this.shape = 'rounded';
10
- this.variant = 'ghost';
11
- this.disabled = false;
12
- this.showNext = true;
13
- this.showPrevious = true;
14
- this.showFirst = false;
15
- this.showLast = false;
16
- this.pageIndex = 0;
17
- this.pageSize = 10;
18
- this.maxPagesShown = 10;
19
- this.length = 0;
20
- this.alignment = 'center';
21
- this.selectorTitle = 'Items per page:';
22
- this.page = new EventEmitter();
23
- }
24
- buildPageEvent(pageIndex) {
25
- return {
26
- length: this.length,
27
- pageSize: this.pageSize,
28
- pageIndex: pageIndex,
29
- previousPageIndex: this.pageIndex,
30
- rowIndexStart: this.getRowIndexStart(pageIndex),
31
- rowIndexEnd: this.getRowIndexEnd(pageIndex),
32
- };
33
- }
34
- firstPage() {
35
- const evt = this.buildPageEvent(0);
36
- this.pageIndex = 0;
37
- this.page.emit(evt);
38
- }
39
- lastPage() {
40
- const evt = this.buildPageEvent(this.getNumberOfPages());
41
- this.pageIndex = this.getNumberOfPages() - 1;
42
- this.page.emit(evt);
43
- }
44
- nextPage() {
45
- if (this.hasNextPage()) {
46
- const evt = this.buildPageEvent(this.pageIndex + 1);
47
- this.pageIndex++;
48
- this.page.emit(evt);
49
- }
50
- }
51
- previousPage() {
52
- if (this.hasPreviousPage()) {
53
- const evt = this.buildPageEvent(this.pageIndex - 1);
54
- this.pageIndex--;
55
- this.page.emit(evt);
56
- }
57
- }
58
- setPage(pageIndex) {
59
- const evt = this.buildPageEvent(pageIndex);
60
- this.pageIndex = pageIndex;
61
- this.page.emit(evt);
62
- }
63
- getPages() {
64
- const pages = [];
65
- const currentSet = Math.ceil((this.pageIndex + 1) / this.maxPagesShown);
66
- for (let i = 0; i < this.getNumberOfPages(); i++) {
67
- if (currentSet === Math.ceil((i + 1) / this.maxPagesShown)) {
68
- pages.push({ pageIndex: i, number: i + 1, active: this.pageIndex === i });
69
- }
70
- }
71
- return pages;
72
- }
73
- getNumberOfPages() {
74
- return Math.ceil(this.length / this.pageSize);
75
- }
76
- getRowIndexStart(pageIndex) {
77
- const index = pageIndex !== undefined ? pageIndex : this.pageIndex;
78
- return index * this.pageSize;
79
- }
80
- getRowIndexEnd(pageIndex) {
81
- const index = pageIndex !== undefined ? pageIndex : this.pageIndex;
82
- let indexEnd = (index * this.pageSize) + this.pageSize - 1;
83
- if (indexEnd >= this.length) {
84
- indexEnd = this.length - 1;
85
- }
86
- return indexEnd;
87
- }
88
- hasNextPage() {
89
- return (this.pageIndex !== this.getNumberOfPages() - 1);
90
- }
91
- hasPreviousPage() {
92
- return (this.pageIndex > 0);
93
- }
94
- }
95
- FwPaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwPaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
96
- FwPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwPaginatorComponent, selector: "fw-paginator", inputs: { size: "size", color: "color", shape: "shape", variant: "variant", disabled: "disabled", showNext: "showNext", showPrevious: "showPrevious", showFirst: "showFirst", showLast: "showLast", pageIndex: "pageIndex", pageSize: "pageSize", maxPagesShown: "maxPagesShown", length: "length", alignment: "alignment", selectorTitle: "selectorTitle" }, outputs: { page: "page" }, ngImport: i0, template: "<div [ngClass]=\"['paginator', variant, color, size, shape, alignment]\">\n <div class=\"pages-list\">\n <button\n *ngIf=\"showFirst\" class=\"page-item page-action page-first\" [disabled]=\"!hasPreviousPage() || disabled\"\n (click)=\"firstPage()\">\n <fw-icon size=\"small\" color=\"typography\">arrow-back-collapse</fw-icon>\n </button>\n <button\n *ngIf=\"showPrevious\"\n class=\"page-item page-action page-previous\" [disabled]=\"!hasPreviousPage() || disabled\" (click)=\"previousPage()\">\n <fw-icon size=\"small\" color=\"typography\">chevron-back</fw-icon>\n </button>\n <button\n [ngClass]=\"['page-item', 'page-number', page.active ? 'page-active': '']\"\n [disabled]=\"disabled\"\n *ngFor=\"let page of getPages()\"\n (click)=\"setPage(page.pageIndex)\"\n >\n <h4 class=\"vision-h4\">{{ page.number }}</h4>\n </button>\n <button\n *ngIf=\"showNext\" class=\"page-item page-action page-next\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"nextPage()\">\n <fw-icon size=\"small\" color=\"typography\">chevron-forward</fw-icon>\n </button>\n <button\n *ngIf=\"showLast\" class=\"page-item page-action page-last\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"lastPage()\">\n <fw-icon size=\"small\" color=\"typography\">arrow-forward-collapse</fw-icon>\n </button>\n </div>\n</div>\n", styles: [":host .paginator{display:flex}:host .paginator button{border:none;background-color:transparent}:host .paginator .page-item{box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px}:host .paginator .page-item:disabled{color:var(--typography-muted);cursor:not-allowed}:host .paginator .page-item:disabled h4{opacity:.4}:host .paginator .page-action:disabled{opacity:.4}:host .paginator .pages-list{box-sizing:border-box;display:flex;gap:4px}:host .paginator .pages-list .page-number h4{margin:0;color:var(--typography-base)}:host .paginator .pages-list .page-number:disabled h4{color:var(--slate-base)!important}:host .paginator .pages-list .page-active{background-color:var(--slate-focus)}:host .paginator .pages-list .page-active:disabled{background-color:transparent}:host .paginator.start{justify-content:flex-start}:host .paginator.center{justify-content:center}:host .paginator.end{justify-content:flex-end}:host .paginator.large .page-item{width:40px;height:40px}:host .paginator.medium .page-item{width:32px;height:32px}:host .paginator.small .page-item{width:26px;height:26px}:host .paginator.primary .page-active:not(:disabled){background-color:var(--primary-base)!important}:host .paginator.primary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.secondary .page-active:not(:disabled){background-color:var(--secondary-base)!important}:host .paginator.secondary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.outline .page-item{border:1px solid var(--slate-border)}:host .paginator.outline .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.primary .page-active{background-color:var(--primary-hover)!important;border-color:var(--primary-border)!important}:host .paginator.outline.primary .page-active h4{color:var(--primary-base)!important}:host .paginator.outline.primary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.secondary .page-active{background-color:var(--secondary-hover)!important;border-color:var(--secondary-border)!important}:host .paginator.outline.secondary .page-active h4{color:var(--secondary-base)!important}:host .paginator.outline.secondary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.solid .page-item{border:1px solid var(--slate-border);background-color:var(--card-background)}:host .paginator.solid .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:var(--card-background)!important;opacity:.4}:host .paginator.solid .page-number:disabled h4{opacity:1}:host .paginator.circle .page-number{border-radius:999px!important}:host .paginator .pages-selector{display:flex;align-items:center;justify-content:flex-end;gap:16px}:host .paginator .pages-selector>div{display:flex;align-items:center}:host .paginator .pages-selector fw-icon{font-size:22px}:host .paginator .pages-selector .record-count{min-width:130px;text-align:center}:host .paginator .pages-selector p.disabled{color:var(--typography-light)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconComponent, selector: "fw-icon", inputs: ["size", "color"] }] });
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwPaginatorComponent, decorators: [{
98
- type: Component,
99
- args: [{ selector: 'fw-paginator', template: "<div [ngClass]=\"['paginator', variant, color, size, shape, alignment]\">\n <div class=\"pages-list\">\n <button\n *ngIf=\"showFirst\" class=\"page-item page-action page-first\" [disabled]=\"!hasPreviousPage() || disabled\"\n (click)=\"firstPage()\">\n <fw-icon size=\"small\" color=\"typography\">arrow-back-collapse</fw-icon>\n </button>\n <button\n *ngIf=\"showPrevious\"\n class=\"page-item page-action page-previous\" [disabled]=\"!hasPreviousPage() || disabled\" (click)=\"previousPage()\">\n <fw-icon size=\"small\" color=\"typography\">chevron-back</fw-icon>\n </button>\n <button\n [ngClass]=\"['page-item', 'page-number', page.active ? 'page-active': '']\"\n [disabled]=\"disabled\"\n *ngFor=\"let page of getPages()\"\n (click)=\"setPage(page.pageIndex)\"\n >\n <h4 class=\"vision-h4\">{{ page.number }}</h4>\n </button>\n <button\n *ngIf=\"showNext\" class=\"page-item page-action page-next\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"nextPage()\">\n <fw-icon size=\"small\" color=\"typography\">chevron-forward</fw-icon>\n </button>\n <button\n *ngIf=\"showLast\" class=\"page-item page-action page-last\" [disabled]=\"!hasNextPage() || disabled\"\n (click)=\"lastPage()\">\n <fw-icon size=\"small\" color=\"typography\">arrow-forward-collapse</fw-icon>\n </button>\n </div>\n</div>\n", styles: [":host .paginator{display:flex}:host .paginator button{border:none;background-color:transparent}:host .paginator .page-item{box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px}:host .paginator .page-item:disabled{color:var(--typography-muted);cursor:not-allowed}:host .paginator .page-item:disabled h4{opacity:.4}:host .paginator .page-action:disabled{opacity:.4}:host .paginator .pages-list{box-sizing:border-box;display:flex;gap:4px}:host .paginator .pages-list .page-number h4{margin:0;color:var(--typography-base)}:host .paginator .pages-list .page-number:disabled h4{color:var(--slate-base)!important}:host .paginator .pages-list .page-active{background-color:var(--slate-focus)}:host .paginator .pages-list .page-active:disabled{background-color:transparent}:host .paginator.start{justify-content:flex-start}:host .paginator.center{justify-content:center}:host .paginator.end{justify-content:flex-end}:host .paginator.large .page-item{width:40px;height:40px}:host .paginator.medium .page-item{width:32px;height:32px}:host .paginator.small .page-item{width:26px;height:26px}:host .paginator.primary .page-active:not(:disabled){background-color:var(--primary-base)!important}:host .paginator.primary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.secondary .page-active:not(:disabled){background-color:var(--secondary-base)!important}:host .paginator.secondary .page-active:not(:disabled) h4{color:var(--typography-contrast)!important}:host .paginator.outline .page-item{border:1px solid var(--slate-border)}:host .paginator.outline .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.primary .page-active{background-color:var(--primary-hover)!important;border-color:var(--primary-border)!important}:host .paginator.outline.primary .page-active h4{color:var(--primary-base)!important}:host .paginator.outline.primary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.outline.secondary .page-active{background-color:var(--secondary-hover)!important;border-color:var(--secondary-border)!important}:host .paginator.outline.secondary .page-active h4{color:var(--secondary-base)!important}:host .paginator.outline.secondary .page-active:disabled{border:1px solid var(--slate-border)!important;background-color:transparent!important}:host .paginator.solid .page-item{border:1px solid var(--slate-border);background-color:var(--card-background)}:host .paginator.solid .page-number:disabled{border:1px solid var(--slate-border)!important;background-color:var(--card-background)!important;opacity:.4}:host .paginator.solid .page-number:disabled h4{opacity:1}:host .paginator.circle .page-number{border-radius:999px!important}:host .paginator .pages-selector{display:flex;align-items:center;justify-content:flex-end;gap:16px}:host .paginator .pages-selector>div{display:flex;align-items:center}:host .paginator .pages-selector fw-icon{font-size:22px}:host .paginator .pages-selector .record-count{min-width:130px;text-align:center}:host .paginator .pages-selector p.disabled{color:var(--typography-light)}\n"] }]
100
- }], propDecorators: { size: [{
101
- type: Input
102
- }], color: [{
103
- type: Input
104
- }], shape: [{
105
- type: Input
106
- }], variant: [{
107
- type: Input
108
- }], disabled: [{
109
- type: Input
110
- }], showNext: [{
111
- type: Input
112
- }], showPrevious: [{
113
- type: Input
114
- }], showFirst: [{
115
- type: Input
116
- }], showLast: [{
117
- type: Input
118
- }], pageIndex: [{
119
- type: Input
120
- }], pageSize: [{
121
- type: Input
122
- }], maxPagesShown: [{
123
- type: Input
124
- }], length: [{
125
- type: Input
126
- }], alignment: [{
127
- type: Input
128
- }], selectorTitle: [{
129
- type: Input
130
- }], page: [{
131
- type: Output
132
- }] } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2luYXRvci9wYWdpbmF0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBZXZFLE1BQU0sT0FBTyxvQkFBb0I7SUFMakM7UUFNVyxTQUFJLEdBQWlDLFFBQVEsQ0FBQztRQUM5QyxVQUFLLEdBQXNDLE9BQU8sQ0FBQztRQUNuRCxVQUFLLEdBQXlCLFNBQVMsQ0FBQztRQUN4QyxZQUFPLEdBQWtDLE9BQU8sQ0FBQztRQUNqRCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFDekIsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFDN0IsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixrQkFBYSxHQUFXLEVBQUUsQ0FBQztRQUMzQixXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ25CLGNBQVMsR0FBK0IsUUFBUSxDQUFDO1FBQ2pELGtCQUFhLEdBQVcsaUJBQWlCLENBQUM7UUFDekMsU0FBSSxHQUFtQyxJQUFJLFlBQVksRUFBb0IsQ0FBQztLQW1GdkY7SUFqRlMsY0FBYyxDQUFDLFNBQWlCO1FBQ3RDLE9BQU87WUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLGlCQUFp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UTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksSUFBSTtzQkFBYixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRndQYWdpbmF0b3JFdmVudCB9IGZyb20gJy4vcGFnaW5hdG9yLm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0aW9uUGFnZSB7XG4gIHBhZ2VJbmRleDogbnVtYmVyO1xuICBudW1iZXI6IG51bWJlcjtcbiAgYWN0aXZlOiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1wYWdpbmF0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdG9yLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZ3UGFnaW5hdG9yQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc2l6ZTogJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyA9ICdtZWRpdW0nO1xuICBASW5wdXQoKSBjb2xvcjogJ3NsYXRlJyB8ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknID0gJ3NsYXRlJztcbiAgQElucHV0KCkgc2hhcGU6ICdyb3VuZGVkJyB8ICdjaXJjbGUnID0gJ3JvdW5kZWQnO1xuICBASW5wdXQoKSB2YXJpYW50OiAnZ2hvc3QnIHwgJ291dGxpbmUnIHwgJ3NvbGlkJyA9ICdnaG9zdCc7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dOZXh0OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd1ByZXZpb3VzOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0ZpcnN0OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dMYXN0OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDEwO1xuICBASW5wdXQoKSBtYXhQYWdlc1Nob3duOiBudW1iZXIgPSAxMDtcbiAgQElucHV0KCkgbGVuZ3RoOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBhbGlnbm1lbnQ6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ2NlbnRlcic7XG4gIEBJbnB1dCgpIHNlbGVjdG9yVGl0bGU6IHN0cmluZyA9ICdJdGVtcyBwZXIgcGFnZTonO1xuICBAT3V0cHV0KCkgcGFnZTogRXZlbnRFbWl0dGVyPEZ3UGFnaW5hdG9yRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxGd1BhZ2luYXRvckV2ZW50PigpO1xuXG4gIHByaXZhdGUgYnVpbGRQYWdlRXZlbnQocGFnZUluZGV4OiBudW1iZXIpOiBGd1BhZ2luYXRvckV2ZW50IHtcbiAgICByZXR1cm4ge1xuICAgICAgbGVuZ3RoOiB0aGlzLmxlbmd0aCxcbiAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLFxuICAgICAgcGFnZUluZGV4OiBwYWdlSW5kZXgsXG4gICAgICBwcmV2aW91c1BhZ2VJbmRleDogdGhpcy5wYWdlSW5kZXgsXG4gICAgICByb3dJbmRleFN0YXJ0OiB0aGlzLmdldFJvd0luZGV4U3RhcnQocGFnZUluZGV4KSxcbiAgICAgIHJvd0luZGV4RW5kOiB0aGlzLmdldFJvd0luZGV4RW5kKHBhZ2VJbmRleCksXG4gICAgfTtcbiAgfVxuXG4gIGZpcnN0UGFnZSgpOiB2b2lkIHtcbiAgICBjb25zdCBldnQgPSB0aGlzLmJ1aWxkUGFnZUV2ZW50KDApO1xuICAgIHRoaXMucGFnZUluZGV4ID0gMDtcbiAgICB0aGlzLnBhZ2UuZW1pdChldnQpO1xuICB9XG5cbiAgbGFzdFBhZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgZXZ0ID0gdGhpcy5idWlsZFBhZ2VFdmVudCh0aGlzLmdldE51bWJlck9mUGFnZXMoKSk7XG4gICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLmdldE51bWJlck9mUGFnZXMoKSAtIDE7XG4gICAgdGhpcy5wYWdlLmVtaXQoZXZ0KTtcbiAgfVxuXG4gIG5leHRQYWdlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhhc05leHRQYWdlKCkpIHtcbiAgICAgIGNvbnN0IGV2dCA9IHRoaXMuYnVpbGRQYWdlRXZlbnQodGhpcy5wYWdlSW5kZXggKyAxKTtcbiAgICAgIHRoaXMucGFnZUluZGV4Kys7XG4gICAgICB0aGlzLnBhZ2UuZW1pdChldnQpO1xuICAgIH1cbiAgfVxuXG4gIHByZXZpb3VzUGFnZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oYXNQcmV2aW91c1BhZ2UoKSkge1xuICAgICAgY29uc3QgZXZ0ID0gdGhpcy5idWlsZFBhZ2VFdmVudCh0aGlzLnBhZ2VJbmRleCAtIDEpO1xuICAgICAgdGhpcy5wYWdlSW5kZXgtLTtcbiAgICAgIHRoaXMucGFnZS5lbWl0KGV2dCk7XG4gICAgfVxuICB9XG5cbiAgc2V0UGFnZShwYWdlSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGV2dCA9IHRoaXMuYnVpbGRQYWdlRXZlbnQocGFnZUluZGV4KTtcbiAgICB0aGlzLnBhZ2VJbmRleCA9IHBhZ2VJbmRleDtcbiAgICB0aGlzLnBhZ2UuZW1pdChldnQpO1xuICB9XG5cbiAgZ2V0UGFnZXMoKTogUGFnaW5hdGlvblBhZ2VbXSB7XG4gICAgY29uc3QgcGFnZXM6IFBhZ2luYXRpb25QYWdlW10gPSBbXTtcbiAgICBjb25zdCBjdXJyZW50U2V0ID0gTWF0aC5jZWlsKCh0aGlzLnBhZ2VJbmRleCArIDEpIC8gdGhpcy5tYXhQYWdlc1Nob3duKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZ2V0TnVtYmVyT2ZQYWdlcygpOyBpKyspIHtcbiAgICAgIGlmIChjdXJyZW50U2V0ID09PSBNYXRoLmNlaWwoKGkgKyAxKSAvIHRoaXMubWF4UGFnZXNTaG93bikpIHtcbiAgICAgICAgcGFnZXMucHVzaCh7IHBhZ2VJbmRleDogaSwgbnVtYmVyOiBpICsgMSwgYWN0aXZlOiB0aGlzLnBhZ2VJbmRleCA9PT0gaSB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHBhZ2VzO1xuICB9XG5cbiAgZ2V0TnVtYmVyT2ZQYWdlcygpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmNlaWwodGhpcy5sZW5ndGggLyB0aGlzLnBhZ2VTaXplKTtcbiAgfVxuXG4gIGdldFJvd0luZGV4U3RhcnQocGFnZUluZGV4PzogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbmRleCA9IHBhZ2VJbmRleCAhPT0gdW5kZWZpbmVkID8gcGFnZUluZGV4IDogdGhpcy5wYWdlSW5kZXg7XG4gICAgcmV0dXJuIGluZGV4ICogdGhpcy5wYWdlU2l6ZTtcbiAgfVxuXG4gIGdldFJvd0luZGV4RW5kKHBhZ2VJbmRleD86IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgaW5kZXggPSBwYWdlSW5kZXggIT09IHVuZGVmaW5lZCA/IHBhZ2VJbmRleCA6IHRoaXMucGFnZUluZGV4O1xuICAgIGxldCBpbmRleEVuZCA9IChpbmRleCAqIHRoaXMucGFnZVNpemUpICsgdGhpcy5wYWdlU2l6ZSAtIDE7XG4gICAgaWYgKGluZGV4RW5kID49IHRoaXMubGVuZ3RoKSB7XG4gICAgICBpbmRleEVuZCA9IHRoaXMubGVuZ3RoIC0gMTtcbiAgICB9XG4gICAgcmV0dXJuIGluZGV4RW5kO1xuICB9XG5cbiAgaGFzTmV4dFBhZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLnBhZ2VJbmRleCAhPT0gdGhpcy5nZXROdW1iZXJPZlBhZ2VzKCkgLSAxKTtcbiAgfVxuXG4gIGhhc1ByZXZpb3VzUGFnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKHRoaXMucGFnZUluZGV4ID4gMCk7XG4gIH1cbn1cbiIsIjxkaXYgW25nQ2xhc3NdPVwiWydwYWdpbmF0b3InLCB2YXJpYW50LCBjb2xvciwgc2l6ZSwgc2hhcGUsIGFsaWdubWVudF1cIj5cbiAgPGRpdiBjbGFzcz1cInBhZ2VzLWxpc3RcIj5cbiAgICA8YnV0dG9uXG4gICAgICAqbmdJZj1cInNob3dGaXJzdFwiIGNsYXNzPVwicGFnZS1pdGVtIHBhZ2UtYWN0aW9uIHBhZ2UtZmlyc3RcIiBbZGlzYWJsZWRdPVwiIWhhc1ByZXZpb3VzUGFnZSgpIHx8ICBkaXNhYmxlZFwiXG4gICAgICAoY2xpY2spPVwiZmlyc3RQYWdlKClcIj5cbiAgICAgIDxmdy1pY29uIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwidHlwb2dyYXBoeVwiPmFycm93LWJhY2stY29sbGFwc2U8L2Z3LWljb24+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nSWY9XCJzaG93UHJldmlvdXNcIlxuICAgICAgY2xhc3M9XCJwYWdlLWl0ZW0gcGFnZS1hY3Rpb24gcGFnZS1wcmV2aW91c1wiIFtkaXNhYmxlZF09XCIhaGFzUHJldmlvdXNQYWdlKCkgfHwgZGlzYWJsZWRcIiAoY2xpY2spPVwicHJldmlvdXNQYWdlKClcIj5cbiAgICAgIDxmdy1pY29uIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwidHlwb2dyYXBoeVwiPmNoZXZyb24tYmFjazwvZnctaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBbbmdDbGFzc109XCJbJ3BhZ2UtaXRlbScsICdwYWdlLW51bWJlcicsIHBhZ2UuYWN0aXZlID8gJ3BhZ2UtYWN0aXZlJzogJyddXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAqbmdGb3I9XCJsZXQgcGFnZSBvZiBnZXRQYWdlcygpXCJcbiAgICAgIChjbGljayk9XCJzZXRQYWdlKHBhZ2UucGFnZUluZGV4KVwiXG4gICAgPlxuICAgICAgPGg0IGNsYXNzPVwidmlzaW9uLWg0XCI+e3sgcGFnZS5udW1iZXIgfX08L2g0PlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwic2hvd05leHRcIiBjbGFzcz1cInBhZ2UtaXRlbSBwYWdlLWFjdGlvbiBwYWdlLW5leHRcIiBbZGlzYWJsZWRdPVwiIWhhc05leHRQYWdlKCkgfHwgZGlzYWJsZWRcIlxuICAgICAgKGNsaWNrKT1cIm5leHRQYWdlKClcIj5cbiAgICAgIDxmdy1pY29uIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwidHlwb2dyYXBoeVwiPmNoZXZyb24tZm9yd2FyZDwvZnctaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICAqbmdJZj1cInNob3dMYXN0XCIgY2xhc3M9XCJwYWdlLWl0ZW0gcGFnZS1hY3Rpb24gcGFnZS1sYXN0XCIgW2Rpc2FibGVkXT1cIiFoYXNOZXh0UGFnZSgpIHx8IGRpc2FibGVkXCJcbiAgICAgIChjbGljayk9XCJsYXN0UGFnZSgpXCI+XG4gICAgICA8ZnctaWNvbiBzaXplPVwic21hbGxcIiBjb2xvcj1cInR5cG9ncmFwaHlcIj5hcnJvdy1mb3J3YXJkLWNvbGxhcHNlPC9mdy1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19