@sebgroup/green-angular 6.8.0 → 7.0.0-rc.20251125130141487

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 (516) hide show
  1. package/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs +13 -13
  2. package/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs.map +1 -1
  3. package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs +9 -8
  4. package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs.map +1 -1
  5. package/fesm2022/sebgroup-green-angular-src-lib-button.mjs +9 -8
  6. package/fesm2022/sebgroup-green-angular-src-lib-button.mjs.map +1 -1
  7. package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs +17 -15
  8. package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs.map +1 -1
  9. package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs +9 -9
  10. package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs.map +1 -1
  11. package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs +9 -9
  12. package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs.map +1 -1
  13. package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs +17 -15
  14. package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs.map +1 -1
  15. package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs +9 -9
  16. package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs.map +1 -1
  17. package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs +30 -28
  18. package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs.map +1 -1
  19. package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs +9 -9
  20. package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs.map +1 -1
  21. package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs +9 -9
  22. package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs.map +1 -1
  23. package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs +9 -9
  24. package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs.map +1 -1
  25. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +43 -38
  26. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
  27. package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs +9 -9
  28. package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs.map +1 -1
  29. package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs +9 -9
  30. package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs.map +1 -1
  31. package/fesm2022/sebgroup-green-angular-src-v-angular-account-number.mjs +7 -7
  32. package/fesm2022/sebgroup-green-angular-src-v-angular-account-number.mjs.map +1 -1
  33. package/fesm2022/sebgroup-green-angular-src-v-angular-alert.mjs +9 -9
  34. package/fesm2022/sebgroup-green-angular-src-v-angular-alert.mjs.map +1 -1
  35. package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +13 -10
  36. package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs.map +1 -1
  37. package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +9 -9
  38. package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs.map +1 -1
  39. package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs +9 -9
  40. package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs.map +1 -1
  41. package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs +8 -8
  42. package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs.map +1 -1
  43. package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs +9 -8
  44. package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs.map +1 -1
  45. package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs +9 -9
  46. package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs.map +1 -1
  47. package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs +3 -3
  48. package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs.map +1 -1
  49. package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs +52 -43
  50. package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs.map +1 -1
  51. package/fesm2022/sebgroup-green-angular-src-v-angular-drag-drop.mjs +19 -16
  52. package/fesm2022/sebgroup-green-angular-src-v-angular-drag-drop.mjs.map +1 -1
  53. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +32 -32
  54. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
  55. package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs +9 -8
  56. package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs.map +1 -1
  57. package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs +19 -16
  58. package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs.map +1 -1
  59. package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs +9 -9
  60. package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs.map +1 -1
  61. package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs +13 -11
  62. package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs.map +1 -1
  63. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +9 -9
  64. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -1
  65. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +22 -21
  66. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -1
  67. package/fesm2022/sebgroup-green-angular-src-v-angular-pagination.mjs +9 -9
  68. package/fesm2022/sebgroup-green-angular-src-v-angular-pagination.mjs.map +1 -1
  69. package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs +16 -16
  70. package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs.map +1 -1
  71. package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs +8 -7
  72. package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs.map +1 -1
  73. package/fesm2022/sebgroup-green-angular-src-v-angular-table.mjs +28 -24
  74. package/fesm2022/sebgroup-green-angular-src-v-angular-table.mjs.map +1 -1
  75. package/fesm2022/sebgroup-green-angular-src-v-angular-tabs.mjs +13 -12
  76. package/fesm2022/sebgroup-green-angular-src-v-angular-tabs.mjs.map +1 -1
  77. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +9 -9
  78. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -1
  79. package/fesm2022/sebgroup-green-angular-src-v-angular-toast.mjs +12 -12
  80. package/fesm2022/sebgroup-green-angular-src-v-angular-toast.mjs.map +1 -1
  81. package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs +9 -8
  82. package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs.map +1 -1
  83. package/fesm2022/sebgroup-green-angular-v-angular.mjs +347 -317
  84. package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
  85. package/fesm2022/sebgroup-green-angular.mjs +201 -188
  86. package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
  87. package/package.json +8 -94
  88. package/src/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.d.ts +1 -1
  89. package/src/v-angular/drag-drop/drag-drop.component.d.ts +3 -3
  90. package/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.d.ts +1 -1
  91. package/v-angular/drag-drop/drag-drop.component.d.ts +3 -3
  92. package/esm2022/index.mjs +0 -18
  93. package/esm2022/lib/accordion/accordion-list-item.component.mjs +0 -50
  94. package/esm2022/lib/accordion/accordion.component.mjs +0 -77
  95. package/esm2022/lib/accordion/accordion.module.mjs +0 -24
  96. package/esm2022/lib/accordion/index.mjs +0 -4
  97. package/esm2022/lib/badge/badge.component.mjs +0 -85
  98. package/esm2022/lib/badge/badge.module.mjs +0 -23
  99. package/esm2022/lib/badge/index.mjs +0 -3
  100. package/esm2022/lib/button/button.component.mjs +0 -28
  101. package/esm2022/lib/button/button.module.mjs +0 -18
  102. package/esm2022/lib/button/index.mjs +0 -3
  103. package/esm2022/lib/cell-table/cell-table-item.component.mjs +0 -91
  104. package/esm2022/lib/cell-table/cell-table.component.mjs +0 -97
  105. package/esm2022/lib/cell-table/cell-table.module.mjs +0 -26
  106. package/esm2022/lib/cell-table/cell-table.types.mjs +0 -7
  107. package/esm2022/lib/cell-table/cell-underline.directive.mjs +0 -55
  108. package/esm2022/lib/cell-table/index.mjs +0 -4
  109. package/esm2022/lib/context-menu/context-menu.component.mjs +0 -79
  110. package/esm2022/lib/context-menu/context-menu.module.mjs +0 -37
  111. package/esm2022/lib/context-menu/index.mjs +0 -3
  112. package/esm2022/lib/datepicker/datepicker.component.mjs +0 -144
  113. package/esm2022/lib/datepicker/datepicker.module.mjs +0 -37
  114. package/esm2022/lib/datepicker/index.mjs +0 -3
  115. package/esm2022/lib/dropdown/dropdown-button.directive.mjs +0 -16
  116. package/esm2022/lib/dropdown/dropdown-option.directive.mjs +0 -16
  117. package/esm2022/lib/dropdown/dropdown.component.mjs +0 -248
  118. package/esm2022/lib/dropdown/dropdown.module.mjs +0 -51
  119. package/esm2022/lib/dropdown/index.mjs +0 -5
  120. package/esm2022/lib/green-angular.module.mjs +0 -72
  121. package/esm2022/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +0 -61
  122. package/esm2022/lib/in-page-wizard/in-page-wizard.module.mjs +0 -18
  123. package/esm2022/lib/in-page-wizard/index.mjs +0 -3
  124. package/esm2022/lib/modal/index.mjs +0 -5
  125. package/esm2022/lib/modal/modal-footer.directive.mjs +0 -16
  126. package/esm2022/lib/modal/modal-header.directive.mjs +0 -16
  127. package/esm2022/lib/modal/modal.component.mjs +0 -317
  128. package/esm2022/lib/modal/modal.module.mjs +0 -44
  129. package/esm2022/lib/pagination/index.mjs +0 -3
  130. package/esm2022/lib/pagination/pagination.component.mjs +0 -175
  131. package/esm2022/lib/pagination/pagination.module.mjs +0 -18
  132. package/esm2022/lib/progress-circle/index.mjs +0 -3
  133. package/esm2022/lib/progress-circle/progress-circle.component.mjs +0 -41
  134. package/esm2022/lib/progress-circle/progress-circle.module.mjs +0 -18
  135. package/esm2022/lib/segmented-control/index.mjs +0 -3
  136. package/esm2022/lib/segmented-control/segmented-control.component.mjs +0 -38
  137. package/esm2022/lib/segmented-control/segmented-control.module.mjs +0 -22
  138. package/esm2022/lib/shared/core-control/core-checkbox.directive.mjs +0 -39
  139. package/esm2022/lib/shared/core-control/core-control.directive.mjs +0 -94
  140. package/esm2022/lib/shared/core-control/core-control.module.mjs +0 -20
  141. package/esm2022/lib/shared/core-control/index.mjs +0 -4
  142. package/esm2022/lib/shared/core-element/core-element.directive.mjs +0 -34
  143. package/esm2022/lib/shared/core-element/core-element.module.mjs +0 -18
  144. package/esm2022/lib/shared/core-element/index.mjs +0 -3
  145. package/esm2022/lib/shared/core-renderer/core-renderer.mjs +0 -152
  146. package/esm2022/lib/shared/core-renderer/index.mjs +0 -2
  147. package/esm2022/lib/shared/core-router-link/core-router-link.directive.mjs +0 -53
  148. package/esm2022/lib/shared/core-router-link/core-router-link.module.mjs +0 -16
  149. package/esm2022/lib/shared/core-router-link/index.mjs +0 -3
  150. package/esm2022/lib/shared/index.mjs +0 -7
  151. package/esm2022/lib/shared/on-scroll.directive.mjs +0 -47
  152. package/esm2022/lib/shared/scope-resolver.mjs +0 -9
  153. package/esm2022/lib/shared/shared.module.mjs +0 -19
  154. package/esm2022/lib/slider/index.mjs +0 -3
  155. package/esm2022/lib/slider/slider.component.mjs +0 -116
  156. package/esm2022/lib/slider/slider.module.mjs +0 -19
  157. package/esm2022/lib/sortable-list/index.mjs +0 -3
  158. package/esm2022/lib/sortable-list/sortable-list.component.mjs +0 -181
  159. package/esm2022/lib/sortable-list/sortable-list.module.mjs +0 -20
  160. package/esm2022/sebgroup-green-angular.mjs +0 -5
  161. package/esm2022/src/lib/accordion/accordion-list-item.component.mjs +0 -50
  162. package/esm2022/src/lib/accordion/accordion.component.mjs +0 -77
  163. package/esm2022/src/lib/accordion/accordion.module.mjs +0 -24
  164. package/esm2022/src/lib/accordion/index.mjs +0 -4
  165. package/esm2022/src/lib/accordion/sebgroup-green-angular-src-lib-accordion.mjs +0 -5
  166. package/esm2022/src/lib/badge/badge.component.mjs +0 -85
  167. package/esm2022/src/lib/badge/badge.module.mjs +0 -23
  168. package/esm2022/src/lib/badge/index.mjs +0 -3
  169. package/esm2022/src/lib/badge/sebgroup-green-angular-src-lib-badge.mjs +0 -5
  170. package/esm2022/src/lib/button/button.component.mjs +0 -28
  171. package/esm2022/src/lib/button/button.module.mjs +0 -18
  172. package/esm2022/src/lib/button/index.mjs +0 -3
  173. package/esm2022/src/lib/button/sebgroup-green-angular-src-lib-button.mjs +0 -5
  174. package/esm2022/src/lib/cell-table/cell-table-item.component.mjs +0 -91
  175. package/esm2022/src/lib/cell-table/cell-table.component.mjs +0 -97
  176. package/esm2022/src/lib/cell-table/cell-table.module.mjs +0 -26
  177. package/esm2022/src/lib/cell-table/cell-table.types.mjs +0 -7
  178. package/esm2022/src/lib/cell-table/cell-underline.directive.mjs +0 -55
  179. package/esm2022/src/lib/cell-table/index.mjs +0 -4
  180. package/esm2022/src/lib/cell-table/sebgroup-green-angular-src-lib-cell-table.mjs +0 -5
  181. package/esm2022/src/lib/context-menu/context-menu.component.mjs +0 -79
  182. package/esm2022/src/lib/context-menu/context-menu.module.mjs +0 -37
  183. package/esm2022/src/lib/context-menu/index.mjs +0 -3
  184. package/esm2022/src/lib/context-menu/sebgroup-green-angular-src-lib-context-menu.mjs +0 -5
  185. package/esm2022/src/lib/datepicker/datepicker.component.mjs +0 -144
  186. package/esm2022/src/lib/datepicker/datepicker.module.mjs +0 -37
  187. package/esm2022/src/lib/datepicker/index.mjs +0 -3
  188. package/esm2022/src/lib/datepicker/sebgroup-green-angular-src-lib-datepicker.mjs +0 -5
  189. package/esm2022/src/lib/dropdown/dropdown-button.directive.mjs +0 -16
  190. package/esm2022/src/lib/dropdown/dropdown-option.directive.mjs +0 -16
  191. package/esm2022/src/lib/dropdown/dropdown.component.mjs +0 -248
  192. package/esm2022/src/lib/dropdown/dropdown.module.mjs +0 -51
  193. package/esm2022/src/lib/dropdown/index.mjs +0 -5
  194. package/esm2022/src/lib/dropdown/sebgroup-green-angular-src-lib-dropdown.mjs +0 -5
  195. package/esm2022/src/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +0 -61
  196. package/esm2022/src/lib/in-page-wizard/in-page-wizard.module.mjs +0 -18
  197. package/esm2022/src/lib/in-page-wizard/index.mjs +0 -3
  198. package/esm2022/src/lib/in-page-wizard/sebgroup-green-angular-src-lib-in-page-wizard.mjs +0 -5
  199. package/esm2022/src/lib/modal/index.mjs +0 -5
  200. package/esm2022/src/lib/modal/modal-footer.directive.mjs +0 -16
  201. package/esm2022/src/lib/modal/modal-header.directive.mjs +0 -16
  202. package/esm2022/src/lib/modal/modal.component.mjs +0 -317
  203. package/esm2022/src/lib/modal/modal.module.mjs +0 -44
  204. package/esm2022/src/lib/modal/sebgroup-green-angular-src-lib-modal.mjs +0 -5
  205. package/esm2022/src/lib/pagination/index.mjs +0 -3
  206. package/esm2022/src/lib/pagination/pagination.component.mjs +0 -175
  207. package/esm2022/src/lib/pagination/pagination.module.mjs +0 -18
  208. package/esm2022/src/lib/pagination/sebgroup-green-angular-src-lib-pagination.mjs +0 -5
  209. package/esm2022/src/lib/progress-circle/index.mjs +0 -3
  210. package/esm2022/src/lib/progress-circle/progress-circle.component.mjs +0 -41
  211. package/esm2022/src/lib/progress-circle/progress-circle.module.mjs +0 -18
  212. package/esm2022/src/lib/progress-circle/sebgroup-green-angular-src-lib-progress-circle.mjs +0 -5
  213. package/esm2022/src/lib/segmented-control/index.mjs +0 -3
  214. package/esm2022/src/lib/segmented-control/sebgroup-green-angular-src-lib-segmented-control.mjs +0 -5
  215. package/esm2022/src/lib/segmented-control/segmented-control.component.mjs +0 -38
  216. package/esm2022/src/lib/segmented-control/segmented-control.module.mjs +0 -22
  217. package/esm2022/src/lib/shared/core-control/core-checkbox.directive.mjs +0 -39
  218. package/esm2022/src/lib/shared/core-control/core-control.directive.mjs +0 -94
  219. package/esm2022/src/lib/shared/core-control/core-control.module.mjs +0 -20
  220. package/esm2022/src/lib/shared/core-control/index.mjs +0 -4
  221. package/esm2022/src/lib/shared/core-element/core-element.directive.mjs +0 -34
  222. package/esm2022/src/lib/shared/core-element/core-element.module.mjs +0 -18
  223. package/esm2022/src/lib/shared/core-element/index.mjs +0 -3
  224. package/esm2022/src/lib/shared/core-renderer/core-renderer.mjs +0 -152
  225. package/esm2022/src/lib/shared/core-renderer/index.mjs +0 -2
  226. package/esm2022/src/lib/shared/core-router-link/core-router-link.directive.mjs +0 -53
  227. package/esm2022/src/lib/shared/core-router-link/core-router-link.module.mjs +0 -16
  228. package/esm2022/src/lib/shared/core-router-link/index.mjs +0 -3
  229. package/esm2022/src/lib/shared/index.mjs +0 -7
  230. package/esm2022/src/lib/shared/on-scroll.directive.mjs +0 -47
  231. package/esm2022/src/lib/shared/scope-resolver.mjs +0 -9
  232. package/esm2022/src/lib/shared/sebgroup-green-angular-src-lib-shared.mjs +0 -5
  233. package/esm2022/src/lib/shared/shared.module.mjs +0 -19
  234. package/esm2022/src/lib/slider/index.mjs +0 -3
  235. package/esm2022/src/lib/slider/sebgroup-green-angular-src-lib-slider.mjs +0 -5
  236. package/esm2022/src/lib/slider/slider.component.mjs +0 -116
  237. package/esm2022/src/lib/slider/slider.module.mjs +0 -19
  238. package/esm2022/src/lib/sortable-list/index.mjs +0 -3
  239. package/esm2022/src/lib/sortable-list/sebgroup-green-angular-src-lib-sortable-list.mjs +0 -5
  240. package/esm2022/src/lib/sortable-list/sortable-list.component.mjs +0 -181
  241. package/esm2022/src/lib/sortable-list/sortable-list.module.mjs +0 -20
  242. package/esm2022/src/v-angular/account-number/account-number.module.mjs +0 -18
  243. package/esm2022/src/v-angular/account-number/account-number.pipe.mjs +0 -55
  244. package/esm2022/src/v-angular/account-number/index.mjs +0 -3
  245. package/esm2022/src/v-angular/account-number/sebgroup-green-angular-src-v-angular-account-number.mjs +0 -5
  246. package/esm2022/src/v-angular/alert/alert.component.mjs +0 -49
  247. package/esm2022/src/v-angular/alert/alert.models.mjs +0 -8
  248. package/esm2022/src/v-angular/alert/alert.module.mjs +0 -18
  249. package/esm2022/src/v-angular/alert/index.mjs +0 -4
  250. package/esm2022/src/v-angular/alert/sebgroup-green-angular-src-v-angular-alert.mjs +0 -5
  251. package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +0 -300
  252. package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +0 -17
  253. package/esm2022/src/v-angular/base-control-value-accessor/index.mjs +0 -3
  254. package/esm2022/src/v-angular/base-control-value-accessor/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +0 -5
  255. package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.component.mjs +0 -25
  256. package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.module.mjs +0 -20
  257. package/esm2022/src/v-angular/breadcrumbs/index.mjs +0 -3
  258. package/esm2022/src/v-angular/breadcrumbs/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +0 -5
  259. package/esm2022/src/v-angular/button/button.component.mjs +0 -108
  260. package/esm2022/src/v-angular/button/button.module.mjs +0 -20
  261. package/esm2022/src/v-angular/button/index.mjs +0 -3
  262. package/esm2022/src/v-angular/button/sebgroup-green-angular-src-v-angular-button.mjs +0 -5
  263. package/esm2022/src/v-angular/card/card.component.mjs +0 -11
  264. package/esm2022/src/v-angular/card/card.module.mjs +0 -18
  265. package/esm2022/src/v-angular/card/index.mjs +0 -3
  266. package/esm2022/src/v-angular/card/sebgroup-green-angular-src-v-angular-card.mjs +0 -5
  267. package/esm2022/src/v-angular/character-countdown/character-countdown.directive.mjs +0 -51
  268. package/esm2022/src/v-angular/character-countdown/character-countdown.module.mjs +0 -18
  269. package/esm2022/src/v-angular/character-countdown/index.mjs +0 -3
  270. package/esm2022/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.mjs +0 -5
  271. package/esm2022/src/v-angular/checkbox/checkbox.component.mjs +0 -94
  272. package/esm2022/src/v-angular/checkbox/checkbox.module.mjs +0 -21
  273. package/esm2022/src/v-angular/checkbox/index.mjs +0 -3
  274. package/esm2022/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.mjs +0 -5
  275. package/esm2022/src/v-angular/core/core.globals.mjs +0 -20
  276. package/esm2022/src/v-angular/core/core.utils.mjs +0 -62
  277. package/esm2022/src/v-angular/core/index.mjs +0 -3
  278. package/esm2022/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.mjs +0 -5
  279. package/esm2022/src/v-angular/datepicker/components/calendar/calendar.component.mjs +0 -200
  280. package/esm2022/src/v-angular/datepicker/components/calendar-control/calendar-control.component.mjs +0 -115
  281. package/esm2022/src/v-angular/datepicker/components/date-input/date-input.component.mjs +0 -238
  282. package/esm2022/src/v-angular/datepicker/components/datepicker/datepicker.component.mjs +0 -192
  283. package/esm2022/src/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.mjs +0 -411
  284. package/esm2022/src/v-angular/datepicker/datepicker.globals.mjs +0 -20
  285. package/esm2022/src/v-angular/datepicker/datepicker.models.mjs +0 -56
  286. package/esm2022/src/v-angular/datepicker/datepicker.module.mjs +0 -63
  287. package/esm2022/src/v-angular/datepicker/datepicker.utils.mjs +0 -196
  288. package/esm2022/src/v-angular/datepicker/directives/calendar-date.directive.mjs +0 -47
  289. package/esm2022/src/v-angular/datepicker/index.mjs +0 -17
  290. package/esm2022/src/v-angular/datepicker/models/dates.mjs +0 -291
  291. package/esm2022/src/v-angular/datepicker/pipes/date-thook.pipe.mjs +0 -30
  292. package/esm2022/src/v-angular/datepicker/pipes/is-disabled.pipe.mjs +0 -37
  293. package/esm2022/src/v-angular/datepicker/pipes/matches.pipe.mjs +0 -17
  294. package/esm2022/src/v-angular/datepicker/sebgroup-green-angular-src-v-angular-datepicker.mjs +0 -5
  295. package/esm2022/src/v-angular/drag-drop/drag-drop.component.mjs +0 -497
  296. package/esm2022/src/v-angular/drag-drop/drag-drop.models.mjs +0 -2
  297. package/esm2022/src/v-angular/drag-drop/drag-drop.module.mjs +0 -49
  298. package/esm2022/src/v-angular/drag-drop/drag-drop.pipes.mjs +0 -70
  299. package/esm2022/src/v-angular/drag-drop/drag-drop.utils.mjs +0 -76
  300. package/esm2022/src/v-angular/drag-drop/index.mjs +0 -5
  301. package/esm2022/src/v-angular/drag-drop/sebgroup-green-angular-src-v-angular-drag-drop.mjs +0 -5
  302. package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +0 -380
  303. package/esm2022/src/v-angular/dropdown/dropdown-list/index.mjs +0 -2
  304. package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +0 -303
  305. package/esm2022/src/v-angular/dropdown/dropdown.module.mjs +0 -38
  306. package/esm2022/src/v-angular/dropdown/index.mjs +0 -6
  307. package/esm2022/src/v-angular/dropdown/sebgroup-green-angular-src-v-angular-dropdown.mjs +0 -5
  308. package/esm2022/src/v-angular/dropdown/typeahead/index.mjs +0 -6
  309. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +0 -110
  310. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +0 -85
  311. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +0 -138
  312. package/esm2022/src/v-angular/dropdown/typeahead/typeahead.directive.mjs +0 -186
  313. package/esm2022/src/v-angular/dropdown/typeahead/typeahead.module.mjs +0 -33
  314. package/esm2022/src/v-angular/external-link/external-link.directive.mjs +0 -37
  315. package/esm2022/src/v-angular/external-link/external-link.module.mjs +0 -18
  316. package/esm2022/src/v-angular/external-link/index.mjs +0 -3
  317. package/esm2022/src/v-angular/external-link/sebgroup-green-angular-src-v-angular-external-link.mjs +0 -5
  318. package/esm2022/src/v-angular/i18n/i18n.json +0 -13
  319. package/esm2022/src/v-angular/i18n/i18n.module.mjs +0 -89
  320. package/esm2022/src/v-angular/i18n/i18n.test.module.mjs +0 -89
  321. package/esm2022/src/v-angular/i18n/index.mjs +0 -3
  322. package/esm2022/src/v-angular/i18n/sebgroup-green-angular-src-v-angular-i18n.mjs +0 -5
  323. package/esm2022/src/v-angular/info-circle/index.mjs +0 -3
  324. package/esm2022/src/v-angular/info-circle/info-circle.component.mjs +0 -28
  325. package/esm2022/src/v-angular/info-circle/info-circle.module.mjs +0 -21
  326. package/esm2022/src/v-angular/info-circle/sebgroup-green-angular-src-v-angular-info-circle.mjs +0 -5
  327. package/esm2022/src/v-angular/input/index.mjs +0 -3
  328. package/esm2022/src/v-angular/input/input.component.mjs +0 -248
  329. package/esm2022/src/v-angular/input/input.module.mjs +0 -41
  330. package/esm2022/src/v-angular/input/sebgroup-green-angular-src-v-angular-input.mjs +0 -5
  331. package/esm2022/src/v-angular/input-mask/config.mjs +0 -9
  332. package/esm2022/src/v-angular/input-mask/constants.mjs +0 -2
  333. package/esm2022/src/v-angular/input-mask/index.mjs +0 -6
  334. package/esm2022/src/v-angular/input-mask/input-mask-format.pipe.mjs +0 -21
  335. package/esm2022/src/v-angular/input-mask/input-mask.directive.mjs +0 -165
  336. package/esm2022/src/v-angular/input-mask/input-mask.module.mjs +0 -35
  337. package/esm2022/src/v-angular/input-mask/input-mask.types.mjs +0 -2
  338. package/esm2022/src/v-angular/input-mask/sebgroup-green-angular-src-v-angular-input-mask.mjs +0 -5
  339. package/esm2022/src/v-angular/modal/dialog/dialog.component.mjs +0 -242
  340. package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +0 -167
  341. package/esm2022/src/v-angular/modal/fold-out/fold-out.directive.mjs +0 -19
  342. package/esm2022/src/v-angular/modal/fold-out/keyboard-key.enum.mjs +0 -10
  343. package/esm2022/src/v-angular/modal/index.mjs +0 -6
  344. package/esm2022/src/v-angular/modal/modal.globals.mjs +0 -20
  345. package/esm2022/src/v-angular/modal/modal.module.mjs +0 -53
  346. package/esm2022/src/v-angular/modal/modal.types.mjs +0 -2
  347. package/esm2022/src/v-angular/modal/sebgroup-green-angular-src-v-angular-modal.mjs +0 -5
  348. package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +0 -253
  349. package/esm2022/src/v-angular/pagination/index.mjs +0 -3
  350. package/esm2022/src/v-angular/pagination/pagination.component.mjs +0 -144
  351. package/esm2022/src/v-angular/pagination/pagination.module.mjs +0 -37
  352. package/esm2022/src/v-angular/pagination/sebgroup-green-angular-src-v-angular-pagination.mjs +0 -5
  353. package/esm2022/src/v-angular/radio/index.mjs +0 -4
  354. package/esm2022/src/v-angular/radio/radio-group/radio-group.component.mjs +0 -86
  355. package/esm2022/src/v-angular/radio/radio.component.mjs +0 -153
  356. package/esm2022/src/v-angular/radio/radio.module.mjs +0 -22
  357. package/esm2022/src/v-angular/radio/sebgroup-green-angular-src-v-angular-radio.mjs +0 -5
  358. package/esm2022/src/v-angular/slug/index.mjs +0 -3
  359. package/esm2022/src/v-angular/slug/sebgroup-green-angular-src-v-angular-slug.mjs +0 -5
  360. package/esm2022/src/v-angular/slug/slug.module.mjs +0 -18
  361. package/esm2022/src/v-angular/slug/slug.pipe.mjs +0 -27
  362. package/esm2022/src/v-angular/table/index.mjs +0 -9
  363. package/esm2022/src/v-angular/table/sebgroup-green-angular-src-v-angular-table.mjs +0 -5
  364. package/esm2022/src/v-angular/table/table.component.mjs +0 -426
  365. package/esm2022/src/v-angular/table/table.directive.mjs +0 -110
  366. package/esm2022/src/v-angular/table/table.models.mjs +0 -2
  367. package/esm2022/src/v-angular/table/table.module.mjs +0 -40
  368. package/esm2022/src/v-angular/table/table.tools.mjs +0 -29
  369. package/esm2022/src/v-angular/table/tr-thook.pipe.mjs +0 -22
  370. package/esm2022/src/v-angular/tabs/index.mjs +0 -8
  371. package/esm2022/src/v-angular/tabs/sebgroup-green-angular-src-v-angular-tabs.mjs +0 -5
  372. package/esm2022/src/v-angular/tabs/tab.directive.mjs +0 -81
  373. package/esm2022/src/v-angular/tabs/tabs.component.mjs +0 -262
  374. package/esm2022/src/v-angular/tabs/tabs.models.mjs +0 -2
  375. package/esm2022/src/v-angular/tabs/tabs.module.mjs +0 -21
  376. package/esm2022/src/v-angular/textarea/index.mjs +0 -3
  377. package/esm2022/src/v-angular/textarea/sebgroup-green-angular-src-v-angular-textarea.mjs +0 -5
  378. package/esm2022/src/v-angular/textarea/textarea.component.mjs +0 -129
  379. package/esm2022/src/v-angular/textarea/textarea.module.mjs +0 -34
  380. package/esm2022/src/v-angular/toast/index.mjs +0 -8
  381. package/esm2022/src/v-angular/toast/sebgroup-green-angular-src-v-angular-toast.mjs +0 -5
  382. package/esm2022/src/v-angular/toast/toast-message.service.mjs +0 -82
  383. package/esm2022/src/v-angular/toast/toast.component.mjs +0 -66
  384. package/esm2022/src/v-angular/toast/toast.models.mjs +0 -8
  385. package/esm2022/src/v-angular/toast/toast.module.mjs +0 -21
  386. package/esm2022/src/v-angular/tooltip/index.mjs +0 -3
  387. package/esm2022/src/v-angular/tooltip/sebgroup-green-angular-src-v-angular-tooltip.mjs +0 -5
  388. package/esm2022/src/v-angular/tooltip/tooltip.directive.mjs +0 -293
  389. package/esm2022/src/v-angular/tooltip/tooltip.module.mjs +0 -18
  390. package/esm2022/src/v-angular/tooltip/tooltip.styles.mjs +0 -60
  391. package/esm2022/v-angular/account-number/account-number.module.mjs +0 -18
  392. package/esm2022/v-angular/account-number/account-number.pipe.mjs +0 -55
  393. package/esm2022/v-angular/account-number/index.mjs +0 -3
  394. package/esm2022/v-angular/alert/alert.component.mjs +0 -49
  395. package/esm2022/v-angular/alert/alert.models.mjs +0 -8
  396. package/esm2022/v-angular/alert/alert.module.mjs +0 -18
  397. package/esm2022/v-angular/alert/index.mjs +0 -4
  398. package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +0 -300
  399. package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +0 -17
  400. package/esm2022/v-angular/base-control-value-accessor/index.mjs +0 -3
  401. package/esm2022/v-angular/breadcrumbs/breadcrumbs.component.mjs +0 -25
  402. package/esm2022/v-angular/breadcrumbs/breadcrumbs.module.mjs +0 -20
  403. package/esm2022/v-angular/breadcrumbs/index.mjs +0 -3
  404. package/esm2022/v-angular/button/button.component.mjs +0 -108
  405. package/esm2022/v-angular/button/button.module.mjs +0 -20
  406. package/esm2022/v-angular/button/index.mjs +0 -3
  407. package/esm2022/v-angular/card/card.component.mjs +0 -11
  408. package/esm2022/v-angular/card/card.module.mjs +0 -18
  409. package/esm2022/v-angular/card/index.mjs +0 -3
  410. package/esm2022/v-angular/character-countdown/character-countdown.directive.mjs +0 -51
  411. package/esm2022/v-angular/character-countdown/character-countdown.module.mjs +0 -18
  412. package/esm2022/v-angular/character-countdown/index.mjs +0 -3
  413. package/esm2022/v-angular/checkbox/checkbox.component.mjs +0 -94
  414. package/esm2022/v-angular/checkbox/checkbox.module.mjs +0 -21
  415. package/esm2022/v-angular/checkbox/index.mjs +0 -3
  416. package/esm2022/v-angular/core/core.globals.mjs +0 -20
  417. package/esm2022/v-angular/core/core.utils.mjs +0 -62
  418. package/esm2022/v-angular/core/index.mjs +0 -3
  419. package/esm2022/v-angular/datepicker/components/calendar/calendar.component.mjs +0 -200
  420. package/esm2022/v-angular/datepicker/components/calendar-control/calendar-control.component.mjs +0 -115
  421. package/esm2022/v-angular/datepicker/components/date-input/date-input.component.mjs +0 -238
  422. package/esm2022/v-angular/datepicker/components/datepicker/datepicker.component.mjs +0 -192
  423. package/esm2022/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.mjs +0 -411
  424. package/esm2022/v-angular/datepicker/datepicker.globals.mjs +0 -20
  425. package/esm2022/v-angular/datepicker/datepicker.models.mjs +0 -56
  426. package/esm2022/v-angular/datepicker/datepicker.module.mjs +0 -63
  427. package/esm2022/v-angular/datepicker/datepicker.utils.mjs +0 -196
  428. package/esm2022/v-angular/datepicker/directives/calendar-date.directive.mjs +0 -47
  429. package/esm2022/v-angular/datepicker/index.mjs +0 -17
  430. package/esm2022/v-angular/datepicker/models/dates.mjs +0 -291
  431. package/esm2022/v-angular/datepicker/pipes/date-thook.pipe.mjs +0 -30
  432. package/esm2022/v-angular/datepicker/pipes/is-disabled.pipe.mjs +0 -37
  433. package/esm2022/v-angular/datepicker/pipes/matches.pipe.mjs +0 -17
  434. package/esm2022/v-angular/drag-drop/drag-drop.component.mjs +0 -497
  435. package/esm2022/v-angular/drag-drop/drag-drop.models.mjs +0 -2
  436. package/esm2022/v-angular/drag-drop/drag-drop.module.mjs +0 -49
  437. package/esm2022/v-angular/drag-drop/drag-drop.pipes.mjs +0 -70
  438. package/esm2022/v-angular/drag-drop/drag-drop.utils.mjs +0 -76
  439. package/esm2022/v-angular/drag-drop/index.mjs +0 -5
  440. package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +0 -380
  441. package/esm2022/v-angular/dropdown/dropdown-list/index.mjs +0 -2
  442. package/esm2022/v-angular/dropdown/dropdown.component.mjs +0 -303
  443. package/esm2022/v-angular/dropdown/dropdown.module.mjs +0 -38
  444. package/esm2022/v-angular/dropdown/index.mjs +0 -6
  445. package/esm2022/v-angular/dropdown/typeahead/index.mjs +0 -6
  446. package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +0 -110
  447. package/esm2022/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +0 -85
  448. package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +0 -138
  449. package/esm2022/v-angular/dropdown/typeahead/typeahead.directive.mjs +0 -186
  450. package/esm2022/v-angular/dropdown/typeahead/typeahead.module.mjs +0 -33
  451. package/esm2022/v-angular/external-link/external-link.directive.mjs +0 -37
  452. package/esm2022/v-angular/external-link/external-link.module.mjs +0 -18
  453. package/esm2022/v-angular/external-link/index.mjs +0 -3
  454. package/esm2022/v-angular/i18n/i18n.json +0 -13
  455. package/esm2022/v-angular/i18n/i18n.module.mjs +0 -89
  456. package/esm2022/v-angular/i18n/i18n.test.module.mjs +0 -89
  457. package/esm2022/v-angular/i18n/index.mjs +0 -3
  458. package/esm2022/v-angular/index.mjs +0 -29
  459. package/esm2022/v-angular/info-circle/index.mjs +0 -3
  460. package/esm2022/v-angular/info-circle/info-circle.component.mjs +0 -28
  461. package/esm2022/v-angular/info-circle/info-circle.module.mjs +0 -21
  462. package/esm2022/v-angular/input/index.mjs +0 -3
  463. package/esm2022/v-angular/input/input.component.mjs +0 -248
  464. package/esm2022/v-angular/input/input.module.mjs +0 -41
  465. package/esm2022/v-angular/input-mask/config.mjs +0 -9
  466. package/esm2022/v-angular/input-mask/constants.mjs +0 -2
  467. package/esm2022/v-angular/input-mask/index.mjs +0 -6
  468. package/esm2022/v-angular/input-mask/input-mask-format.pipe.mjs +0 -21
  469. package/esm2022/v-angular/input-mask/input-mask.directive.mjs +0 -165
  470. package/esm2022/v-angular/input-mask/input-mask.module.mjs +0 -35
  471. package/esm2022/v-angular/input-mask/input-mask.types.mjs +0 -2
  472. package/esm2022/v-angular/modal/dialog/dialog.component.mjs +0 -242
  473. package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +0 -167
  474. package/esm2022/v-angular/modal/fold-out/fold-out.directive.mjs +0 -19
  475. package/esm2022/v-angular/modal/fold-out/keyboard-key.enum.mjs +0 -10
  476. package/esm2022/v-angular/modal/index.mjs +0 -6
  477. package/esm2022/v-angular/modal/modal.globals.mjs +0 -20
  478. package/esm2022/v-angular/modal/modal.module.mjs +0 -53
  479. package/esm2022/v-angular/modal/modal.types.mjs +0 -2
  480. package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +0 -253
  481. package/esm2022/v-angular/pagination/index.mjs +0 -3
  482. package/esm2022/v-angular/pagination/pagination.component.mjs +0 -144
  483. package/esm2022/v-angular/pagination/pagination.module.mjs +0 -37
  484. package/esm2022/v-angular/radio/index.mjs +0 -4
  485. package/esm2022/v-angular/radio/radio-group/radio-group.component.mjs +0 -86
  486. package/esm2022/v-angular/radio/radio.component.mjs +0 -153
  487. package/esm2022/v-angular/radio/radio.module.mjs +0 -22
  488. package/esm2022/v-angular/sebgroup-green-angular-v-angular.mjs +0 -5
  489. package/esm2022/v-angular/slug/index.mjs +0 -3
  490. package/esm2022/v-angular/slug/slug.module.mjs +0 -18
  491. package/esm2022/v-angular/slug/slug.pipe.mjs +0 -27
  492. package/esm2022/v-angular/table/index.mjs +0 -9
  493. package/esm2022/v-angular/table/table.component.mjs +0 -426
  494. package/esm2022/v-angular/table/table.directive.mjs +0 -110
  495. package/esm2022/v-angular/table/table.models.mjs +0 -2
  496. package/esm2022/v-angular/table/table.module.mjs +0 -40
  497. package/esm2022/v-angular/table/table.tools.mjs +0 -29
  498. package/esm2022/v-angular/table/tr-thook.pipe.mjs +0 -22
  499. package/esm2022/v-angular/tabs/index.mjs +0 -8
  500. package/esm2022/v-angular/tabs/tab.directive.mjs +0 -81
  501. package/esm2022/v-angular/tabs/tabs.component.mjs +0 -262
  502. package/esm2022/v-angular/tabs/tabs.models.mjs +0 -2
  503. package/esm2022/v-angular/tabs/tabs.module.mjs +0 -21
  504. package/esm2022/v-angular/textarea/index.mjs +0 -3
  505. package/esm2022/v-angular/textarea/textarea.component.mjs +0 -129
  506. package/esm2022/v-angular/textarea/textarea.module.mjs +0 -34
  507. package/esm2022/v-angular/toast/index.mjs +0 -8
  508. package/esm2022/v-angular/toast/toast-message.service.mjs +0 -82
  509. package/esm2022/v-angular/toast/toast.component.mjs +0 -66
  510. package/esm2022/v-angular/toast/toast.models.mjs +0 -8
  511. package/esm2022/v-angular/toast/toast.module.mjs +0 -21
  512. package/esm2022/v-angular/tooltip/index.mjs +0 -3
  513. package/esm2022/v-angular/tooltip/tooltip.directive.mjs +0 -293
  514. package/esm2022/v-angular/tooltip/tooltip.module.mjs +0 -18
  515. package/esm2022/v-angular/tooltip/tooltip.styles.mjs +0 -60
  516. package/esm2022/v-angular/v-angular.module.mjs +0 -132
@@ -1,253 +0,0 @@
1
- import { animate, group, query, style, transition, trigger, } from '@angular/animations';
2
- import { Component, ElementRef, EventEmitter, HostListener, Input, Output, Renderer2, ViewChild, } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@jsverse/transloco";
6
- /** Modal slide-out component based on vanilla pattern library design.
7
- * The modal title can be set using the @Input heading, and will automatically be translated if
8
- * the string matches a cms key.
9
- * Content can be injected into the body of the slide-out by either setting the @Input content to any type of
10
- * markdown, or using content projection (adding content between the `nggv-slideout-modal`-start and end tag).
11
- * If the content needs to stretch outside the normal padded area, add the attribute `slot="outside-content"` to the
12
- * projected content main element.
13
- * Test hooks:
14
- * The modal hook defaults to 'slideout' but is customizeable.
15
- * The closing button can be selected using 'slideout-close'.
16
- * The backdrop is selectable using 'slideout-backdrop'.
17
- */
18
- export class NggvSlideOutComponent {
19
- set shown(value) {
20
- this._shown = value;
21
- if (value) {
22
- this.hideOverflow();
23
- }
24
- else {
25
- this.resetOverflow();
26
- }
27
- }
28
- get shown() {
29
- return this._shown;
30
- }
31
- /** @internal */
32
- get fromLeft() {
33
- return this.side === 'left';
34
- }
35
- /** Buttons are defined as a key-value pair where key is one of "positive|neutral|negative" and value is the button label. */
36
- set buttons(buttons) {
37
- this._buttons = buttons;
38
- }
39
- constructor(host, renderer) {
40
- this.host = host;
41
- this.renderer = renderer;
42
- /** Sets from which side the modal should open. */
43
- this.side = 'right';
44
- /** Defines the default visibility state of the slide-out. */
45
- this._shown = false;
46
- /** Defines the default visibility state of the modal. */
47
- this.initiallyShown = false;
48
- /** Sets whether it is possible to close the modal from the top right corner. */
49
- this.closable = true;
50
- /** Allows the modal content to decide the width of the modal. */
51
- this.autoWidth = false;
52
- /** Special property used for selecting DOM elements during automated UI testing. */
53
- this.thook = 'slideout';
54
- /** Will emit true on closing event. */
55
- this.nggvCloseEvent = new EventEmitter();
56
- this.nggvPositiveEvent = new EventEmitter();
57
- this.nggvNeutralEvent = new EventEmitter();
58
- this.nggvNegativeEvent = new EventEmitter();
59
- // appends methods for opening and closing modal to native element
60
- this.host.nativeElement.open = this.open.bind(this);
61
- this.host.nativeElement.close = this.close.bind(this);
62
- }
63
- ngOnInit() {
64
- this._shown = this.initiallyShown;
65
- if (this.shown)
66
- this.limitFocusable();
67
- }
68
- onAction(event, action) {
69
- event.preventDefault();
70
- switch (action) {
71
- case 'positive':
72
- this.nggvPositiveEvent.emit();
73
- break;
74
- case 'neutral':
75
- this.nggvNeutralEvent.emit();
76
- break;
77
- case 'negative':
78
- this.nggvNegativeEvent.emit();
79
- break;
80
- }
81
- this.close(event, 'action');
82
- }
83
- /**
84
- * Called on a modal element. Opens the modal and sets focus to the last focusable element in the modal.
85
- *
86
- * @param opener - reference to last focused element before opening modal
87
- * @returns - true
88
- */
89
- open(opener) {
90
- this._shown = true;
91
- this.previous = opener || document.activeElement;
92
- this.hideOverflow();
93
- this.limitFocusable();
94
- return true;
95
- }
96
- /**
97
- * Called on a modal element. Closes the modal and emits a `nggvCloseEvent`. Sets focus to the lats focused element if an element was sent in to open function.
98
- *
99
- * @param event
100
- * @param initiator
101
- */
102
- close(event, initiator) {
103
- if (initiator === 'host' &&
104
- event instanceof MouseEvent &&
105
- event.target !== event.currentTarget)
106
- return;
107
- this.resetOverflow();
108
- if (this.shown && this.closable) {
109
- this.nggvCloseEvent.emit(this.shown);
110
- this.shown = false;
111
- window.setTimeout(() => {
112
- if (this.previous)
113
- this.previous.focus();
114
- this.previous = undefined;
115
- });
116
- }
117
- }
118
- /** @internal */
119
- focusTrap(event) {
120
- if (event.key !== 'Tab')
121
- return;
122
- if (event.shiftKey) {
123
- // shift + tab
124
- if (this.lastFocusable &&
125
- document.activeElement === this.firstFocusable) {
126
- this.lastFocusable.focus();
127
- event.preventDefault();
128
- }
129
- }
130
- else {
131
- // tab
132
- if (this.firstFocusable &&
133
- document.activeElement === this.lastFocusable) {
134
- this.firstFocusable.focus();
135
- event.preventDefault();
136
- }
137
- }
138
- }
139
- limitFocusable() {
140
- window.setTimeout(() => {
141
- if (!this.slideOutRef)
142
- return;
143
- const focusable = this.slideOutRef.nativeElement.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
144
- this.firstFocusable = focusable[0];
145
- this.lastFocusable = focusable[focusable.length - 1];
146
- if (this.firstFocusable)
147
- this.firstFocusable.focus();
148
- });
149
- }
150
- hideOverflow() {
151
- this.renderer.setStyle(document.body, 'overflow', 'hidden');
152
- }
153
- resetOverflow() {
154
- this.renderer.removeStyle(document.body, 'overflow');
155
- }
156
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvSlideOutComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
157
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NggvSlideOutComponent, selector: "nggv-slideout-modal", inputs: { side: "side", shown: "shown", initiallyShown: "initiallyShown", heading: "heading", title: "title", content: "content", closable: "closable", autoWidth: "autoWidth", thook: "thook", closeButtonAriaLabel: "closeButtonAriaLabel", buttons: "buttons" }, outputs: { nggvCloseEvent: "nggvCloseEvent", nggvPositiveEvent: "nggvPositiveEvent", nggvNeutralEvent: "nggvNeutralEvent", nggvNegativeEvent: "nggvNegativeEvent" }, host: { listeners: { "click": "close($event,\"host\")", "document:keydown.escape": "close($event)", "keydown": "focusTrap($event)" } }, viewQueries: [{ propertyName: "slideOutRef", first: true, predicate: ["slideOut"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft,\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"gds-modal-title\"\n aria-describedby=\"gds-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 id=\"gds-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"nggv-modal-slideout__close\"\n (click)=\"this.close()\"\n [attr.aria-label]=\"closeButtonAriaLabel\"\n >\n <i></i>\n </button>\n </header>\n\n <section id=\"modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n class=\"primary\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"nggv-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{--background-hsl: 0deg, 0%, 0%;--gds-ref-pallet-base200: hsl(0, 0%, 91%);--gds-sys-color-base: hsl(0, 0%, 20%);--gds-sys-color-font: hsl(0, 0%, 20%);--gds-sys-shape-corner-round: 50%;--grey-500: rgb(222, 222, 222);--sg-border-color: hsl(0, 0%, 53%);--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-hsl-contrast: 0deg, 0%, 0%;--sg-modal-backdrop-background: rgba(0, 0, 0, .5);--sg-modal-background: #fff;--sg-modal-box-shadow: 0 .125rem .375rem rgba(0, 0, 0, .15);--sg-z-index-modal-backdrop: 1040;--sg-z-index-modal: 1050;--text-primary-color: rgb(51, 51, 51)}:host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050;overflow-y:auto}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px;min-width:2rem}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .nggv-backdrop{background:var(--sg-modal-backdrop-background);inset:0;position:fixed;z-index:var(--sg-z-index-modal-backdrop);display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .nggv-backdrop--transparent{opacity:0}:host .nggv-backdrop--transparent.entered,:host .nggv-backdrop--transparent.is-entering{opacity:1}:host .nggv-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%;overflow:unset}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host .modal-dialog__actions,:host .gds-slide-out__header,:host .modal-body,:host .gds-slide-out__content{box-sizing:border-box}:host .modal-slide-out__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .modal-slide-out__heading h3,:host .modal-slide-out__heading .h3{margin-bottom:0;margin-top:0}:host .modal-slide-out__heading h3+.close,:host .modal-slide-out__heading .h3+.close{margin:-7px;min-width:2rem}:host .nggv-modal-slideout__close{background-color:transparent;padding:0;font-size:0;background:var(--gds-sys-color-surface);border:0;border-radius:50%;content:\"\";cursor:pointer;display:flex;font-family:inherit;height:2rem;position:relative;width:2rem}@media (hover: none) and (pointer: coarse){:host .nggv-modal-slideout__close:not(:disabled):not(.disabled){padding:.375rem;height:2.75rem;width:2.75rem}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>i{background:var(--gds-sys-color-base-200);height:2rem;width:2rem;border-radius:50%;position:relative;--color: var(--gds-sys-color-base)}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:after,:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:before{height:.789375rem;width:.130625rem;top:.625rem}}:host .nggv-modal-slideout__close:focus:not(:focus-visible){box-shadow:none;outline:0}:host .nggv-modal-slideout__close:focus,:host .nggv-modal-slideout__close:focus-visible i{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .nggv-modal-slideout__close>i{border-radius:var(--gds-sys-shape-corner-round);display:block;width:100%;height:100%}:host .nggv-modal-slideout__close>i:after,:host .nggv-modal-slideout__close>i:before{background:var(--gds-sys-color-font);content:\"\";display:block;height:.789375rem;width:.130625rem;border-radius:.5px;left:calc(50% - .0625rem);position:absolute;top:.625rem}:host .nggv-modal-slideout__close>i:after{transform:rotate(45deg)}:host .nggv-modal-slideout__close>i:before{transform:rotate(-45deg)}:host .nggv-modal-slideout__close>svg path{fill:var(--gds-sys-color-font)}@media (min-width: 48em){:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover>i{background:color-mix(in srgb,var(--gds-sys-color-font) 10%,transparent)}:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover:active>i{background:color-mix(in srgb,var(--gds-sys-color-font) 20%,transparent)}}:host .modal-dialog__actions button{background-color:transparent;border:0;cursor:pointer;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;font-size:1rem;font-family:inherit}:host .modal-dialog__actions button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions button:focus,:host .modal-dialog__actions button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .modal-dialog__actions button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .modal-dialog__actions button{border:2px solid currentcolor}}:host .modal-dialog__actions button.small{min-height:2rem;padding:.4375rem .75rem;font-size:.875rem;line-height:1rem}:host .modal-dialog__actions button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}:host .modal-dialog__actions .primary{transition:border .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:#007ac7;border-color:#007ac7;color:#fff;--color: #fff}:host .modal-dialog__actions .primary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .primary[aria-selected=true],:host .modal-dialog__actions .primary:active,:host .modal-dialog__actions .primary.active,:host .modal-dialog__actions .primary.active:hover,:host .modal-dialog__actions .primary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .primary:focus-visible{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3!important}:host .modal-dialog__actions .primary:disabled,:host .modal-dialog__actions .primary.disabled,:host .modal-dialog__actions .primary[aria-disabled=true]{background:var(--form-control-primary-bg-disabled)!important;color:var(--text-primary-disabled-color)!important;border-color:var(--border-primary-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .primary:disabled::placeholder,:host .modal-dialog__actions .primary.disabled::placeholder,:host .modal-dialog__actions .primary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .secondary{transition:border .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:transparent;border-color:#007ac7;color:#007ac7;--color: rgb(0, 122, 199)}:host .modal-dialog__actions .secondary:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .secondary:focus,:host .modal-dialog__actions .secondary:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .modal-dialog__actions .secondary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .secondary[aria-selected=true],:host .modal-dialog__actions .secondary:active,:host .modal-dialog__actions .secondary.active,:host .modal-dialog__actions .secondary.active:hover,:host .modal-dialog__actions .secondary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .secondary:disabled,:host .modal-dialog__actions .secondary.disabled,:host .modal-dialog__actions .secondary[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .secondary:disabled::placeholder,:host .modal-dialog__actions .secondary.disabled::placeholder,:host .modal-dialog__actions .secondary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .danger{color:#bb000c;--color: rgb(187, 0, 12);border-color:transparent;transition:border .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s}:host .modal-dialog__actions .danger:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#d81a1a;color:#fff;--background: rgb(216, 26, 26);--color: rgb(255, 255, 255);border-color:#d81a1a}:host .modal-dialog__actions .danger[aria-selected=true],:host .modal-dialog__actions .danger:active,:host .modal-dialog__actions .danger.active,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{background-color:#bb000c;color:#fff;--background: rgb(187, 0, 12);--color: rgb(255, 255, 255);border-color:#bb000c}:host .modal-dialog__actions .danger[aria-selected]:hover,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{opacity:.9}:host .modal-dialog__actions .danger:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .danger:focus,:host .modal-dialog__actions .danger:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host #sdv-modal-body{flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], animations: [
158
- trigger('modalAnimation', [
159
- transition(':enter', [
160
- query('.gds-slide-out', style({ transform: 'translateX(100%)' }), {
161
- optional: true,
162
- }),
163
- query('.gds-backdrop, [role=dialog]', style({ opacity: '0' }), {
164
- optional: true,
165
- }),
166
- group([
167
- query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(0)' })), { optional: true }),
168
- query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '1' })), { optional: true }),
169
- ]),
170
- ]),
171
- transition(':leave', [
172
- query('.gds-slide-out', style({ transform: 'translateX(0)' }), {
173
- optional: true,
174
- }),
175
- group([
176
- query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(100%)' })), { optional: true }),
177
- query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '0' })), { optional: true }),
178
- ]),
179
- ]),
180
- ]),
181
- ] }); }
182
- }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvSlideOutComponent, decorators: [{
184
- type: Component,
185
- args: [{ selector: 'nggv-slideout-modal', animations: [
186
- trigger('modalAnimation', [
187
- transition(':enter', [
188
- query('.gds-slide-out', style({ transform: 'translateX(100%)' }), {
189
- optional: true,
190
- }),
191
- query('.gds-backdrop, [role=dialog]', style({ opacity: '0' }), {
192
- optional: true,
193
- }),
194
- group([
195
- query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(0)' })), { optional: true }),
196
- query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '1' })), { optional: true }),
197
- ]),
198
- ]),
199
- transition(':leave', [
200
- query('.gds-slide-out', style({ transform: 'translateX(0)' }), {
201
- optional: true,
202
- }),
203
- group([
204
- query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(100%)' })), { optional: true }),
205
- query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '0' })), { optional: true }),
206
- ]),
207
- ]),
208
- ]),
209
- ], template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft,\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"gds-modal-title\"\n aria-describedby=\"gds-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 id=\"gds-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"nggv-modal-slideout__close\"\n (click)=\"this.close()\"\n [attr.aria-label]=\"closeButtonAriaLabel\"\n >\n <i></i>\n </button>\n </header>\n\n <section id=\"modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n class=\"primary\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"nggv-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{--background-hsl: 0deg, 0%, 0%;--gds-ref-pallet-base200: hsl(0, 0%, 91%);--gds-sys-color-base: hsl(0, 0%, 20%);--gds-sys-color-font: hsl(0, 0%, 20%);--gds-sys-shape-corner-round: 50%;--grey-500: rgb(222, 222, 222);--sg-border-color: hsl(0, 0%, 53%);--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-hsl-contrast: 0deg, 0%, 0%;--sg-modal-backdrop-background: rgba(0, 0, 0, .5);--sg-modal-background: #fff;--sg-modal-box-shadow: 0 .125rem .375rem rgba(0, 0, 0, .15);--sg-z-index-modal-backdrop: 1040;--sg-z-index-modal: 1050;--text-primary-color: rgb(51, 51, 51)}:host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050;overflow-y:auto}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px;min-width:2rem}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .nggv-backdrop{background:var(--sg-modal-backdrop-background);inset:0;position:fixed;z-index:var(--sg-z-index-modal-backdrop);display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .nggv-backdrop--transparent{opacity:0}:host .nggv-backdrop--transparent.entered,:host .nggv-backdrop--transparent.is-entering{opacity:1}:host .nggv-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%;overflow:unset}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host .modal-dialog__actions,:host .gds-slide-out__header,:host .modal-body,:host .gds-slide-out__content{box-sizing:border-box}:host .modal-slide-out__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .modal-slide-out__heading h3,:host .modal-slide-out__heading .h3{margin-bottom:0;margin-top:0}:host .modal-slide-out__heading h3+.close,:host .modal-slide-out__heading .h3+.close{margin:-7px;min-width:2rem}:host .nggv-modal-slideout__close{background-color:transparent;padding:0;font-size:0;background:var(--gds-sys-color-surface);border:0;border-radius:50%;content:\"\";cursor:pointer;display:flex;font-family:inherit;height:2rem;position:relative;width:2rem}@media (hover: none) and (pointer: coarse){:host .nggv-modal-slideout__close:not(:disabled):not(.disabled){padding:.375rem;height:2.75rem;width:2.75rem}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>i{background:var(--gds-sys-color-base-200);height:2rem;width:2rem;border-radius:50%;position:relative;--color: var(--gds-sys-color-base)}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:after,:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:before{height:.789375rem;width:.130625rem;top:.625rem}}:host .nggv-modal-slideout__close:focus:not(:focus-visible){box-shadow:none;outline:0}:host .nggv-modal-slideout__close:focus,:host .nggv-modal-slideout__close:focus-visible i{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .nggv-modal-slideout__close>i{border-radius:var(--gds-sys-shape-corner-round);display:block;width:100%;height:100%}:host .nggv-modal-slideout__close>i:after,:host .nggv-modal-slideout__close>i:before{background:var(--gds-sys-color-font);content:\"\";display:block;height:.789375rem;width:.130625rem;border-radius:.5px;left:calc(50% - .0625rem);position:absolute;top:.625rem}:host .nggv-modal-slideout__close>i:after{transform:rotate(45deg)}:host .nggv-modal-slideout__close>i:before{transform:rotate(-45deg)}:host .nggv-modal-slideout__close>svg path{fill:var(--gds-sys-color-font)}@media (min-width: 48em){:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover>i{background:color-mix(in srgb,var(--gds-sys-color-font) 10%,transparent)}:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover:active>i{background:color-mix(in srgb,var(--gds-sys-color-font) 20%,transparent)}}:host .modal-dialog__actions button{background-color:transparent;border:0;cursor:pointer;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;font-size:1rem;font-family:inherit}:host .modal-dialog__actions button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions button:focus,:host .modal-dialog__actions button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .modal-dialog__actions button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .modal-dialog__actions button{border:2px solid currentcolor}}:host .modal-dialog__actions button.small{min-height:2rem;padding:.4375rem .75rem;font-size:.875rem;line-height:1rem}:host .modal-dialog__actions button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}:host .modal-dialog__actions .primary{transition:border .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:#007ac7;border-color:#007ac7;color:#fff;--color: #fff}:host .modal-dialog__actions .primary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .primary[aria-selected=true],:host .modal-dialog__actions .primary:active,:host .modal-dialog__actions .primary.active,:host .modal-dialog__actions .primary.active:hover,:host .modal-dialog__actions .primary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .primary:focus-visible{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3!important}:host .modal-dialog__actions .primary:disabled,:host .modal-dialog__actions .primary.disabled,:host .modal-dialog__actions .primary[aria-disabled=true]{background:var(--form-control-primary-bg-disabled)!important;color:var(--text-primary-disabled-color)!important;border-color:var(--border-primary-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .primary:disabled::placeholder,:host .modal-dialog__actions .primary.disabled::placeholder,:host .modal-dialog__actions .primary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .secondary{transition:border .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:transparent;border-color:#007ac7;color:#007ac7;--color: rgb(0, 122, 199)}:host .modal-dialog__actions .secondary:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .secondary:focus,:host .modal-dialog__actions .secondary:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .modal-dialog__actions .secondary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .secondary[aria-selected=true],:host .modal-dialog__actions .secondary:active,:host .modal-dialog__actions .secondary.active,:host .modal-dialog__actions .secondary.active:hover,:host .modal-dialog__actions .secondary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .secondary:disabled,:host .modal-dialog__actions .secondary.disabled,:host .modal-dialog__actions .secondary[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .secondary:disabled::placeholder,:host .modal-dialog__actions .secondary.disabled::placeholder,:host .modal-dialog__actions .secondary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .danger{color:#bb000c;--color: rgb(187, 0, 12);border-color:transparent;transition:border .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s}:host .modal-dialog__actions .danger:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#d81a1a;color:#fff;--background: rgb(216, 26, 26);--color: rgb(255, 255, 255);border-color:#d81a1a}:host .modal-dialog__actions .danger[aria-selected=true],:host .modal-dialog__actions .danger:active,:host .modal-dialog__actions .danger.active,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{background-color:#bb000c;color:#fff;--background: rgb(187, 0, 12);--color: rgb(255, 255, 255);border-color:#bb000c}:host .modal-dialog__actions .danger[aria-selected]:hover,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{opacity:.9}:host .modal-dialog__actions .danger:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .danger:focus,:host .modal-dialog__actions .danger:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host #sdv-modal-body{flex:1}\n"] }]
210
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { slideOutRef: [{
211
- type: ViewChild,
212
- args: ['slideOut']
213
- }], side: [{
214
- type: Input
215
- }], shown: [{
216
- type: Input
217
- }], initiallyShown: [{
218
- type: Input
219
- }], heading: [{
220
- type: Input
221
- }], title: [{
222
- type: Input
223
- }], content: [{
224
- type: Input
225
- }], closable: [{
226
- type: Input
227
- }], autoWidth: [{
228
- type: Input
229
- }], thook: [{
230
- type: Input
231
- }], closeButtonAriaLabel: [{
232
- type: Input
233
- }], buttons: [{
234
- type: Input
235
- }], nggvCloseEvent: [{
236
- type: Output
237
- }], nggvPositiveEvent: [{
238
- type: Output
239
- }], nggvNeutralEvent: [{
240
- type: Output
241
- }], nggvNegativeEvent: [{
242
- type: Output
243
- }], close: [{
244
- type: HostListener,
245
- args: ['click', ['$event', '"host"']]
246
- }, {
247
- type: HostListener,
248
- args: ['document:keydown.escape', ['$event']]
249
- }], focusTrap: [{
250
- type: HostListener,
251
- args: ['keydown', ['$event']]
252
- }] } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUtb3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL21vZGFsL3NsaWRlLW91dC9zbGlkZS1vdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvbW9kYWwvc2xpZGUtb3V0L3NsaWRlLW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsT0FBTyxFQUNQLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxxQkFBcUIsQ0FBQTtBQUM1QixPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTs7OztBQUl0Qjs7Ozs7Ozs7Ozs7R0FXRztBQTJESCxNQUFNLE9BQU8scUJBQXFCO0lBUWhDLElBQWEsS0FBSyxDQUFDLEtBQWM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUE7UUFDbkIsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNwQixDQUFDO0lBdUJELGdCQUFnQjtJQUNoQixJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFBO0lBQzdCLENBQUM7SUFNRCw2SEFBNkg7SUFDN0gsSUFBYSxPQUFPLENBQUMsT0FBc0I7UUFDekMsSUFB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QWpCLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUdHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFZTyxPQUFPO3NCQUFuQixLQUFLO2dCQUtJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBMERQLEtBQUs7c0JBRkosWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDOztzQkFDMUMsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1Qm5ELFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBncm91cCxcbiAgcXVlcnksXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyLFxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJ1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgRGlhbG9nQnV0dG9ucyB9IGZyb20gJy4uL21vZGFsLnR5cGVzJ1xuXG4vKiogTW9kYWwgc2xpZGUtb3V0IGNvbXBvbmVudCBiYXNlZCBvbiB2YW5pbGxhIHBhdHRlcm4gbGlicmFyeSBkZXNpZ24uXG4gKiBUaGUgbW9kYWwgdGl0bGUgY2FuIGJlIHNldCB1c2luZyB0aGUgQElucHV0IGhlYWRpbmcsIGFuZCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgdHJhbnNsYXRlZCBpZlxuICogdGhlIHN0cmluZyBtYXRjaGVzIGEgY21zIGtleS5cbiAqIENvbnRlbnQgY2FuIGJlIGluamVjdGVkIGludG8gdGhlIGJvZHkgb2YgdGhlIHNsaWRlLW91dCBieSBlaXRoZXIgc2V0dGluZyB0aGUgQElucHV0IGNvbnRlbnQgdG8gYW55IHR5cGUgb2ZcbiAqIG1hcmtkb3duLCBvciB1c2luZyBjb250ZW50IHByb2plY3Rpb24gKGFkZGluZyBjb250ZW50IGJldHdlZW4gdGhlIGBuZ2d2LXNsaWRlb3V0LW1vZGFsYC1zdGFydCBhbmQgZW5kIHRhZykuXG4gKiBJZiB0aGUgY29udGVudCBuZWVkcyB0byBzdHJldGNoIG91dHNpZGUgdGhlIG5vcm1hbCBwYWRkZWQgYXJlYSwgYWRkIHRoZSBhdHRyaWJ1dGUgYHNsb3Q9XCJvdXRzaWRlLWNvbnRlbnRcImAgdG8gdGhlXG4gKiBwcm9qZWN0ZWQgY29udGVudCBtYWluIGVsZW1lbnQuXG4gKiBUZXN0IGhvb2tzOlxuICogVGhlIG1vZGFsIGhvb2sgZGVmYXVsdHMgdG8gJ3NsaWRlb3V0JyBidXQgaXMgY3VzdG9taXplYWJsZS5cbiAqIFRoZSBjbG9zaW5nIGJ1dHRvbiBjYW4gYmUgc2VsZWN0ZWQgdXNpbmcgJ3NsaWRlb3V0LWNsb3NlJy5cbiAqIFRoZSBiYWNrZHJvcCBpcyBzZWxlY3RhYmxlIHVzaW5nICdzbGlkZW91dC1iYWNrZHJvcCcuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nZ3Ytc2xpZGVvdXQtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2xpZGUtb3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2xpZGUtb3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdtb2RhbEFuaW1hdGlvbicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgcXVlcnkoJy5nZHMtc2xpZGUtb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICAgcXVlcnkoJy5nZHMtYmFja2Ryb3AsIFtyb2xlPWRpYWxvZ10nLCBzdHlsZSh7IG9wYWNpdHk6ICcwJyB9KSwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXAoW1xuICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgJy5nZHMtc2xpZGUtb3V0JyxcbiAgICAgICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgICAgICczNTBtcyBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSknLFxuICAgICAgICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHsgb3B0aW9uYWw6IHRydWUgfSxcbiAgICAgICAgICApLFxuICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgJy5nZHMtYmFja2Ryb3AsIFtyb2xlPWRpYWxvZ10nLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgJzM1MG1zIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKScsXG4gICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzEnIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHsgb3B0aW9uYWw6IHRydWUgfSxcbiAgICAgICAgICApLFxuICAgICAgICBdKSxcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBxdWVyeSgnLmdkcy1zbGlkZS1vdXQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLCB7XG4gICAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cChbXG4gICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAnLmdkcy1zbGlkZS1vdXQnLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgJzM1MG1zIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKScsXG4gICAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgeyBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICAgICksXG4gICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAnLmdkcy1iYWNrZHJvcCwgW3JvbGU9ZGlhbG9nXScsXG4gICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAnMzUwbXMgY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpJyxcbiAgICAgICAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAnMCcgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgeyBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICAgICksXG4gICAgICAgIF0pLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZTbGlkZU91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQFZpZXdDaGlsZCgnc2xpZGVPdXQnKSBzbGlkZU91dFJlZjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZFxuXG4gIC8qKiBTZXRzIGZyb20gd2hpY2ggc2lkZSB0aGUgbW9kYWwgc2hvdWxkIG9wZW4uICovXG4gIEBJbnB1dCgpIHNpZGU6ICdsZWZ0JyB8ICdyaWdodCcgPSAncmlnaHQnXG4gIC8qKiBEZWZpbmVzIHRoZSBkZWZhdWx0IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIHNsaWRlLW91dC4gKi9cbiAgcHJpdmF0ZSBfc2hvd24gPSBmYWxzZVxuICBASW5wdXQoKSBzZXQgc2hvd24odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zaG93biA9IHZhbHVlXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmhpZGVPdmVyZmxvdygpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXRPdmVyZmxvdygpXG4gICAgfVxuICB9XG4gIGdldCBzaG93bigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvd25cbiAgfVxuICAvKiogRGVmaW5lcyB0aGUgZGVmYXVsdCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBtb2RhbC4gKi9cbiAgQElucHV0KCkgaW5pdGlhbGx5U2hvd24gPSBmYWxzZVxuICAvKiogU2V0cyBtb2RhbCBoZWFkaW5nLiBXaWxsIGJlIHRyYW5zbGF0ZWQgKHVzaW5nIHRyYW5zbG9jbykgaWYgdGhlIHN0cmluZyBtYXRjaGVzIGEgY21zIGtleS4gKi9cbiAgQElucHV0KCkgaGVhZGluZyE6IHN0cmluZ1xuICAvKipcbiAgICogU2V0cyBtb2RhbCB0aXRsZS4gV2lsbCBiZSB0cmFuc2xhdGVkICh1c2luZyB0cmFuc2xvY28pIGlmIHRoZSBzdHJpbmcgbWF0Y2hlcyBhIGNtcyBrZXkuXG4gICAqIEBkZXByZWNhdGVkIC0gdXNlIEBJbnB1dCgpIGhlYWRpbmcgaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlITogc3RyaW5nXG4gIC8qKiBTZXRzIGNvbnRlbnQgYm9keSBvZiB0aGUgbW9kYWwgYW5kIGNhbiBjb250YWluIGh0bWwgY29kZS4gVGhlIGNvbnRlbnQgYm9keSBjYW4gYWxzbyBiZSBzZXQgYnkgbmVzdGluZyBjaGlsZHJlbiB0byB0aGUgbW9kYWwgdGFnLiAqL1xuICBASW5wdXQoKSBjb250ZW50Pzogc3RyaW5nXG4gIC8qKiBTZXRzIHdoZXRoZXIgaXQgaXMgcG9zc2libGUgdG8gY2xvc2UgdGhlIG1vZGFsIGZyb20gdGhlIHRvcCByaWdodCBjb3JuZXIuICovXG4gIEBJbnB1dCgpIGNsb3NhYmxlID0gdHJ1ZVxuICAvKiogQWxsb3dzIHRoZSBtb2RhbCBjb250ZW50IHRvIGRlY2lkZSB0aGUgd2lkdGggb2YgdGhlIG1vZGFsLiAqL1xuICBASW5wdXQoKSBhdXRvV2lkdGggPSBmYWxzZVxuXG4gIC8qKiBTcGVjaWFsIHByb3BlcnR5IHVzZWQgZm9yIHNlbGVjdGluZyBET00gZWxlbWVudHMgZHVyaW5nIGF1dG9tYXRlZCBVSSB0ZXN0aW5nLiAqL1xuICBASW5wdXQoKSB0aG9vayA9ICdzbGlkZW91dCdcblxuICAvKiogQXJpYSBsYWJlbCBmb3IgdGhlIENsb3NlIGJ1dHRvbiB3aXRoIFwiWFwiIGljb24sIGluIHRoZSBoZWFkZXIgKi9cbiAgQElucHV0KCkgY2xvc2VCdXR0b25BcmlhTGFiZWw/OiBzdHJpbmdcblxuICAvKiogQGludGVybmFsICovXG4gIGdldCBmcm9tTGVmdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaWRlID09PSAnbGVmdCdcbiAgfVxuXG4gIC8vIC8qKiBAaW50ZXJuYWwgKi9cbiAgLy8gY2xvc2VJY29uID0gZmFUaW1lcztcblxuICBfYnV0dG9uczogRGlhbG9nQnV0dG9ucyB8IHVuZGVmaW5lZFxuICAvKiogQnV0dG9ucyBhcmUgZGVmaW5lZCBhcyBhIGtleS12YWx1ZSBwYWlyIHdoZXJlIGtleSBpcyBvbmUgb2YgXCJwb3NpdGl2ZXxuZXV0cmFsfG5lZ2F0aXZlXCIgYW5kIHZhbHVlIGlzIHRoZSBidXR0b24gbGFiZWwuICovXG4gIEBJbnB1dCgpIHNldCBidXR0b25zKGJ1dHRvbnM6IERpYWxvZ0J1dHRvbnMpIHtcbiAgICB0aGlzLl9idXR0b25zID0gYnV0dG9uc1xuICB9XG5cbiAgLyoqIFdpbGwgZW1pdCB0cnVlIG9uIGNsb3NpbmcgZXZlbnQuICovXG4gIEBPdXRwdXQoKSBuZ2d2Q2xvc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICBAT3V0cHV0KCkgbmdndlBvc2l0aXZlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgQE91dHB1dCgpIG5nZ3ZOZXV0cmFsRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgQE91dHB1dCgpIG5nZ3ZOZWdhdGl2ZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgcHJpdmF0ZSBwcmV2aW91czogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgcHJpdmF0ZSBmaXJzdEZvY3VzYWJsZTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgcHJpdmF0ZSBsYXN0Rm9jdXNhYmxlOiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaG9zdDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICkge1xuICAgIC8vIGFwcGVuZHMgbWV0aG9kcyBmb3Igb3BlbmluZyBhbmQgY2xvc2luZyBtb2RhbCB0byBuYXRpdmUgZWxlbWVudFxuICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50Lm9wZW4gPSB0aGlzLm9wZW4uYmluZCh0aGlzKVxuICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmNsb3NlID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9zaG93biA9IHRoaXMuaW5pdGlhbGx5U2hvd25cbiAgICBpZiAodGhpcy5zaG93bikgdGhpcy5saW1pdEZvY3VzYWJsZSgpXG4gIH1cblxuICBwdWJsaWMgb25BY3Rpb24oZXZlbnQ6IEV2ZW50LCBhY3Rpb246IHN0cmluZykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBzd2l0Y2ggKGFjdGlvbikge1xuICAgICAgY2FzZSAncG9zaXRpdmUnOlxuICAgICAgICB0aGlzLm5nZ3ZQb3NpdGl2ZUV2ZW50LmVtaXQoKVxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbmV1dHJhbCc6XG4gICAgICAgIHRoaXMubmdndk5ldXRyYWxFdmVudC5lbWl0KClcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ25lZ2F0aXZlJzpcbiAgICAgICAgdGhpcy5uZ2d2TmVnYXRpdmVFdmVudC5lbWl0KClcbiAgICAgICAgYnJlYWtcbiAgICB9XG4gICAgdGhpcy5jbG9zZShldmVudCwgJ2FjdGlvbicpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIG9uIGEgbW9kYWwgZWxlbWVudC4gT3BlbnMgdGhlIG1vZGFsIGFuZCBzZXRzIGZvY3VzIHRvIHRoZSBsYXN0IGZvY3VzYWJsZSBlbGVtZW50IGluIHRoZSBtb2RhbC5cbiAgICpcbiAgICogQHBhcmFtIG9wZW5lciAtIHJlZmVyZW5jZSB0byBsYXN0IGZvY3VzZWQgZWxlbWVudCBiZWZvcmUgb3BlbmluZyBtb2RhbFxuICAgKiBAcmV0dXJucyAtIHRydWVcbiAgICovXG4gIG9wZW4ob3BlbmVyPzogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICB0aGlzLl9zaG93biA9IHRydWVcbiAgICB0aGlzLnByZXZpb3VzID0gb3BlbmVyIHx8IChkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KVxuICAgIHRoaXMuaGlkZU92ZXJmbG93KClcbiAgICB0aGlzLmxpbWl0Rm9jdXNhYmxlKClcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBvbiBhIG1vZGFsIGVsZW1lbnQuIENsb3NlcyB0aGUgbW9kYWwgYW5kIGVtaXRzIGEgYG5nZ3ZDbG9zZUV2ZW50YC4gU2V0cyBmb2N1cyB0byB0aGUgbGF0cyBmb2N1c2VkIGVsZW1lbnQgaWYgYW4gZWxlbWVudCB3YXMgc2VudCBpbiB0byBvcGVuIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnRcbiAgICogQHBhcmFtIGluaXRpYXRvclxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCcsICdcImhvc3RcIiddKVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pXG4gIGNsb3NlKGV2ZW50PzogRXZlbnQsIGluaXRpYXRvcj86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIGluaXRpYXRvciA9PT0gJ2hvc3QnICYmXG4gICAgICBldmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQgJiZcbiAgICAgIGV2ZW50LnRhcmdldCAhPT0gZXZlbnQuY3VycmVudFRhcmdldFxuICAgIClcbiAgICAgIHJldHVyblxuXG4gICAgdGhpcy5yZXNldE92ZXJmbG93KClcblxuICAgIGlmICh0aGlzLnNob3duICYmIHRoaXMuY2xvc2FibGUpIHtcbiAgICAgIHRoaXMubmdndkNsb3NlRXZlbnQuZW1pdCh0aGlzLnNob3duKVxuICAgICAgdGhpcy5zaG93biA9IGZhbHNlXG4gICAgICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnByZXZpb3VzKSB0aGlzLnByZXZpb3VzLmZvY3VzKClcbiAgICAgICAgdGhpcy5wcmV2aW91cyA9IHVuZGVmaW5lZFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICBmb2N1c1RyYXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSAnVGFiJykgcmV0dXJuXG4gICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAvLyBzaGlmdCArIHRhYlxuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmxhc3RGb2N1c2FibGUgJiZcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5maXJzdEZvY3VzYWJsZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMubGFzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdGFiXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuZmlyc3RGb2N1c2FibGUgJiZcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5sYXN0Rm9jdXNhYmxlXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5maXJzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpbWl0Rm9jdXNhYmxlKCkge1xuICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5zbGlkZU91dFJlZikgcmV0dXJuXG4gICAgICBjb25zdCBmb2N1c2FibGUgPSB0aGlzLnNsaWRlT3V0UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgJ2J1dHRvbiwgW2hyZWZdLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PVwiLTFcIl0pJyxcbiAgICAgIClcbiAgICAgIHRoaXMuZmlyc3RGb2N1c2FibGUgPSBmb2N1c2FibGVbMF1cbiAgICAgIHRoaXMubGFzdEZvY3VzYWJsZSA9IGZvY3VzYWJsZVtmb2N1c2FibGUubGVuZ3RoIC0gMV1cbiAgICAgIGlmICh0aGlzLmZpcnN0Rm9jdXNhYmxlKSB0aGlzLmZpcnN0Rm9jdXNhYmxlLmZvY3VzKClcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBoaWRlT3ZlcmZsb3coKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5ib2R5LCAnb3ZlcmZsb3cnLCAnaGlkZGVuJylcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRPdmVyZmxvdygpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKGRvY3VtZW50LmJvZHksICdvdmVyZmxvdycpXG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93blwiPlxuICA8ZGl2XG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ2dkcy1zbGlkZS1vdXQtLWxlZnQnOiBmcm9tTGVmdCxcbiAgICAgICdnZHMtc2xpZGUtb3V0LS1yaWdodCc6ICFmcm9tTGVmdCxcbiAgICB9XCJcbiAgICAqdHJhbnNsb2NvPVwibGV0IHRcIlxuICAgIFtjbGFzcy4tYWN0aXZlXT1cInNob3duXCJcbiAgICBbYXR0ci5kYXRhLXRob29rXT1cInRob29rXCJcbiAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCIhc2hvd25cIlxuICAgIFtAbW9kYWxBbmltYXRpb25dXG4gID5cbiAgICA8ZGl2XG4gICAgICAjc2xpZGVPdXRcbiAgICAgIGNsYXNzPVwiZ2RzLXNsaWRlLW91dFwiXG4gICAgICBbY2xhc3MuYXV0by13aWR0aF09XCJhdXRvV2lkdGhcIlxuICAgICAgW2NsYXNzLmVudGVyZWRdPVwic2hvd25cIlxuICAgICAgcm9sZT1cImRpYWxvZ1wiXG4gICAgICBhcmlhLW1vZGFsPVwidHJ1ZVwiXG4gICAgICBhcmlhLWxhYmVsbGVkYnk9XCJnZHMtbW9kYWwtdGl0bGVcIlxuICAgICAgYXJpYS1kZXNjcmliZWRieT1cImdkcy1tb2RhbC1ib2R5XCJcbiAgICA+XG4gICAgICA8aGVhZGVyIGNsYXNzPVwiZ2RzLXNsaWRlLW91dF9faGVhZGVyXCI+XG4gICAgICAgIDxoMyBpZD1cImdkcy1tb2RhbC10aXRsZVwiPlxuICAgICAgICAgIHt7IGhlYWRpbmcgfHwgdGl0bGUgfHwgJycgfX1cbiAgICAgICAgPC9oMz5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGRhdGEtdGVzdGlkPVwibW9kYWwtY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICBjbGFzcz1cIm5nZ3YtbW9kYWwtc2xpZGVvdXRfX2Nsb3NlXCJcbiAgICAgICAgICAoY2xpY2spPVwidGhpcy5jbG9zZSgpXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImNsb3NlQnV0dG9uQXJpYUxhYmVsXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpPjwvaT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2hlYWRlcj5cblxuICAgICAgPHNlY3Rpb24gaWQ9XCJtb2RhbC1ib2R5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnZHMtc2xpZGUtb3V0X19jb250ZW50IGhpZGUtaWYtZW1wdHlcIj5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29udGVudFwiIFtpbm5lckh0bWxdPVwiY29udGVudFwiPjwvZGl2PlxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzbG90PSdvdXRzaWRlLWNvbnRlbnQnXVwiPjwvbmctY29udGVudD5cbiAgICAgIDwvc2VjdGlvbj5cblxuICAgICAgPGZvb3RlciBjbGFzcz1cIm1vZGFsLWRpYWxvZ19fYWN0aW9uc1wiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJkYW5nZXJcIlxuICAgICAgICAgIHR5cGU9XCJyZXNldFwiXG4gICAgICAgICAgW2F0dHIuZGF0YS10aG9va109XCInZGlhbG9nLScgKyAoX2J1dHRvbnM/Lm5lZ2F0aXZlIHx8ICduZWdhdGl2ZScpXCJcbiAgICAgICAgICAoY2xpY2spPVwib25BY3Rpb24oJGV2ZW50LCAnbmVnYXRpdmUnKVwiXG4gICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25BY3Rpb24oJGV2ZW50LCAnbmVnYXRpdmUnKVwiXG4gICAgICAgICAgKm5nSWY9XCJfYnV0dG9ucyAmJiBfYnV0dG9ucy5uZWdhdGl2ZVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0KF9idXR0b25zLm5lZ2F0aXZlKSB9fVxuICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwiJ2RpYWxvZy0nICsgKF9idXR0b25zPy5uZXV0cmFsIHx8ICduZXV0cmFsJylcIlxuICAgICAgICAgIChjbGljayk9XCJvbkFjdGlvbigkZXZlbnQsICduZXV0cmFsJylcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uQWN0aW9uKCRldmVudCwgJ25ldXRyYWwnKVwiXG4gICAgICAgICAgKm5nSWY9XCJfYnV0dG9ucyAmJiBfYnV0dG9ucy5uZXV0cmFsXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHQoX2J1dHRvbnMubmV1dHJhbCkgfX1cbiAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwicHJpbWFyeVwiXG4gICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgW2F0dHIuZGF0YS10aG9va109XCInZGlhbG9nLScgKyAoX2J1dHRvbnM/LnBvc2l0aXZlIHx8ICdwb3NpdGl2ZScpXCJcbiAgICAgICAgICAoY2xpY2spPVwib25BY3Rpb24oJGV2ZW50LCAncG9zaXRpdmUnKVwiXG4gICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25BY3Rpb24oJGV2ZW50LCAncG9zaXRpdmUnKVwiXG4gICAgICAgICAgKm5nSWY9XCJfYnV0dG9ucyAmJiBfYnV0dG9ucy5wb3NpdGl2ZVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0KF9idXR0b25zLnBvc2l0aXZlKSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZm9vdGVyPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJuZ2d2LWJhY2tkcm9wXCJcbiAgICAgIGRhdGEtdGhvb2s9XCJzbGlkZW91dC1iYWNrZHJvcFwiXG4gICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgPjwvZGl2PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -1,3 +0,0 @@
1
- export * from './pagination.component';
2
- export * from './pagination.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9wYWdpbmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYyxxQkFBcUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL3BhZ2luYXRpb24ubW9kdWxlJ1xuIl19
@@ -1,144 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
- import '@sebgroup/green-core/components/icon/icons/chevron-left.js';
3
- import '@sebgroup/green-core/components/icon/icons/chevron-right.js';
4
- import '@sebgroup/green-core/components/icon/icons/arrow-left.js';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/forms";
8
- import * as i3 from "@jsverse/transloco";
9
- import * as i4 from "@sebgroup/green-angular/src/lib/shared";
10
- /** The Pagination component is used to separate long sets of data so that it is easier for a user to consume information. To change the current page simply click on the page number. */
11
- export class PaginationComponent {
12
- constructor() {
13
- /** Total size of pagination */
14
- this.size = 0;
15
- /** Selected page */
16
- this.value = 1;
17
- /** Use first and last navigation buttons*/
18
- this.useFirstAndLast = true;
19
- /** Use 'Go to page' input field */
20
- this.showGoToPage = true;
21
- /** Element class name */
22
- this.className = '';
23
- /** Callback on page change */
24
- this.pageNumberChange = new EventEmitter();
25
- /** @internal */
26
- this.pageNumber = 0;
27
- /** @internal */
28
- this.list = [];
29
- /** @internal */
30
- this.dotnavList = [];
31
- /** @internal */
32
- this.pagingSize = 0;
33
- /** @internal */
34
- this.showEllipsisStart = false;
35
- /** @internal */
36
- this.showEllipsisEnd = false;
37
- }
38
- ngOnChanges(changes) {
39
- if (changes?.offset || changes?.size) {
40
- this.setPagingSize();
41
- }
42
- if (changes?.pagingLength || changes?.value) {
43
- this.generateList();
44
- }
45
- }
46
- /** @internal */
47
- setPagingSize() {
48
- const initialOffset = this.offset ? this.offset : 10;
49
- this.pagingSize = Math.ceil(Number(this.size) / initialOffset);
50
- this.generateList();
51
- }
52
- /** @internal */
53
- handleOnChange(value) {
54
- if (value <= 0) {
55
- this.pageNumberChange.emit(1);
56
- }
57
- else if (value > this.pagingSize) {
58
- this.pageNumberChange.emit(this.pagingSize);
59
- }
60
- else {
61
- this.pageNumberChange.emit(value);
62
- }
63
- }
64
- /** @internal */
65
- handlePageInput(pageInput) {
66
- this.handleOnChange(Number(pageInput));
67
- }
68
- /**
69
- * Generates an array of the pages that needs to be displayed
70
- * It depends on the size, offset, and the current value
71
- */
72
- generateList() {
73
- const genList = [];
74
- const length = this.pagingLength ? this.pagingLength : 5;
75
- for (let i = 1; i <= this.pagingSize; i++) {
76
- genList.push(i);
77
- }
78
- const medianValue = Math.ceil(length / 2);
79
- let start = 0;
80
- let end = this.pagingSize;
81
- if (length < this.pagingSize) {
82
- if (this.pagingSize - this.value < medianValue) {
83
- start = this.pagingSize - length;
84
- }
85
- else if (this.value - medianValue > -1) {
86
- start = this.value - medianValue;
87
- }
88
- end = start + length;
89
- }
90
- if (this.useFirstAndLast) {
91
- if (start == 0) {
92
- start = 1;
93
- end = start + length;
94
- }
95
- if (end > this.pagingSize - 1) {
96
- end = this.pagingSize - 1;
97
- start = Math.max(1, end - length);
98
- }
99
- }
100
- this.dotnavList = genList;
101
- const pagingStart = genList[start];
102
- const pagingEnd = genList[end - 1];
103
- this.showEllipsisStart = pagingStart > 2;
104
- this.showEllipsisEnd = pagingEnd < this.pagingSize - 1;
105
- this.list = genList.slice(start, end);
106
- }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
108
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PaginationComponent, selector: "nggv-pagination", inputs: { size: "size", value: "value", firstText: "firstText", lastText: "lastText", nextText: "nextText", offset: "offset", pagingLength: "pagingLength", previousText: "previousText", useFirstAndLast: "useFirstAndLast", useTextNav: "useTextNav", useDotNav: "useDotNav", showGoToPage: "showGoToPage", className: "className", id: "id" }, outputs: { pageNumberChange: "pageNumberChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"pagination-wrapper\" [ngClass]=\"className\" [attr.id]=\"id\">\n <nav class=\"custom-pagination\">\n <ng-container *ngIf=\"useDotNav; else numNav\">\n <ul class=\"pagination dotnav\">\n <ng-container *ngFor=\"let num of dotnavList\">\n <li class=\"page-item\" (click)=\"handleOnChange(num)\" [value]=\"num\">\n <span\n class=\"page-dot-link\"\n [ngClass]=\"{ active: value === num }\"\n ></span>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n\n <ng-template #numNav>\n <ul class=\"pagination\">\n <ng-container>\n <li class=\"page-item\" (click)=\"handleOnChange(value - 1)\">\n <button\n class=\"page-link\"\n [attr.title]=\"previousText\"\n [attr.disabled]=\"value === 1 ? 'disabled' : null\"\n >\n <span class=\"nav-action\">\n <ng-container *ngIf=\"useTextNav; else angleLeftIcon\">\n {{ previousText ? previousText : 'Previous' }}\n </ng-container>\n <ng-template #angleLeftIcon>\n <gds-icon-chevron-left\n *nggCoreElement\n ></gds-icon-chevron-left>\n </ng-template>\n </span>\n </button>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"useFirstAndLast\">\n <li class=\"page-item\" (click)=\"handleOnChange(1)\">\n <button\n class=\"page-link\"\n [ngClass]=\"{ active: value === 1 }\"\n [attr.title]=\"firstText\"\n >\n <span class=\"nav-num\">{{ 1 }}</span>\n </button>\n </li>\n\n <li class=\"page-item\" *ngIf=\"showEllipsisStart\">\n <span class=\"page-link\" [attr.title]=\"'...'\">\n <span class=\"nav-num\">...</span>\n </span>\n </li>\n </ng-container>\n\n <ng-container *ngFor=\"let num of list\">\n <li\n class=\"page-item\"\n [ngClass]=\"{ active: value === num }\"\n (click)=\"handleOnChange(num)\"\n value=\"num\"\n >\n <button class=\"page-link\" [ngClass]=\"{ active: value === num }\">\n <span class=\"nav-num\">{{ num }}</span>\n </button>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"useFirstAndLast\">\n <li class=\"page-item\" *ngIf=\"showEllipsisEnd\">\n <span class=\"page-link\" [attr.title]=\"'...'\">\n <span class=\"nav-num\">...</span>\n </span>\n </li>\n\n <li\n class=\"page-item\"\n (click)=\"handleOnChange(pagingSize)\"\n *ngIf=\"pagingSize > 1\"\n >\n <button\n class=\"page-link\"\n [ngClass]=\"{ active: value === pagingSize }\"\n [attr.title]=\"lastText\"\n >\n <span class=\"nav-num\">{{ pagingSize }}</span>\n </button>\n </li>\n </ng-container>\n\n <ng-container>\n <li class=\"page-item\" (click)=\"handleOnChange(value + 1)\">\n <button class=\"page-link\" [attr.title]=\"nextText\">\n <span class=\"nav-action\">\n <ng-container *ngIf=\"useTextNav; else angleRightIcon\">\n {{ nextText ? nextText : 'Next' }}\n </ng-container>\n <ng-template #angleRightIcon>\n <gds-icon-chevron-right\n *nggCoreElement\n ></gds-icon-chevron-right>\n </ng-template>\n </span>\n </button>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"showGoToPage\">\n <li>\n <div class=\"paging-input-wrapper\">\n <div class=\"label-wrapper\">\n <label for=\"pageInput\" *transloco=\"let t\">\n {{ t('label.gotopage') }}\n </label>\n </div>\n <div class=\"input-wrapper\">\n <input\n #pageInput\n data-thook=\"pagination-go-to-input\"\n min=\"1\"\n [max]=\"pagingSize\"\n id=\"pageInput\"\n class=\"gds-field\"\n type=\"number\"\n (keydown.enter)=\"handlePageInput(pageInput.value)\"\n [ngModel]=\"value\"\n />\n <button\n type=\"button\"\n data-thook=\"pagination-go-to-button\"\n (click)=\"handlePageInput(pageInput.value)\"\n >\n <gds-icon-chevron-right\n *nggCoreElement\n ></gds-icon-chevron-right>\n </button>\n </div>\n </div>\n </li>\n </ng-container>\n </ul>\n </ng-template>\n </nav>\n</div>\n", styles: [":host .pagination-wrapper .paging-input-wrapper{display:flex}:host .pagination-wrapper .paging-input-wrapper .label-wrapper{margin:auto;padding:0 1em}:host .pagination-wrapper .paging-input-wrapper .input-wrapper{display:flex;border:.0625em solid #868686;border-radius:4px;height:100%}:host .pagination-wrapper .paging-input-wrapper .input-wrapper input{border:0;padding:.5em;min-height:2.5rem;width:60px;box-sizing:border-box;border-radius:3px;font-size:1rem;font-family:inherit}:host .pagination-wrapper .paging-input-wrapper .input-wrapper input:focus{outline-color:#1a1a1a;outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .pagination-wrapper .paging-input-wrapper .input-wrapper>button{border:0;color:#1a1a1a;background-color:transparent;font-size:1rem;font-family:inherit}:host .pagination-wrapper .paging-input-wrapper .input-wrapper>button:focus{outline-color:#1a1a1a;outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .pagination-wrapper>.custom-pagination>.pagination{display:flex;list-style:none;margin-top:10px;margin-bottom:10px}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link{position:relative;text-align:center;padding-top:0;padding-bottom:0;min-width:38px;height:40px;display:inline-flex;align-items:center;background-color:transparent;color:#1a1a1a;border:none;border-radius:4px;font-size:1rem;font-family:inherit}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link.active{background-color:#1a1a1a;color:#eee}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link>.nav-num{margin:0 auto}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link>.nav-action{margin:0 auto;display:inline-flex}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link:focus{outline-color:#1a1a1a;outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link:hover{box-shadow:0 2px 6px #eee}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item{width:20px;height:25px}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item .page-dot-link{position:relative;display:inline-block;width:10px;height:10px;border-radius:50%;cursor:pointer;background-color:#a2ddfe;transition:all .2s;margin:0 auto;will-change:transform}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item .page-dot-link.active{background-color:#007ac7;cursor:default;transform:scale(1.3)}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item .page-dot-link:hover:not(.active){background-color:#41b0ee}\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.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: i4.NggCoreElementDirective, selector: "[nggCoreElement]" }] }); }
109
- }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PaginationComponent, decorators: [{
111
- type: Component,
112
- args: [{ selector: 'nggv-pagination', template: "<div class=\"pagination-wrapper\" [ngClass]=\"className\" [attr.id]=\"id\">\n <nav class=\"custom-pagination\">\n <ng-container *ngIf=\"useDotNav; else numNav\">\n <ul class=\"pagination dotnav\">\n <ng-container *ngFor=\"let num of dotnavList\">\n <li class=\"page-item\" (click)=\"handleOnChange(num)\" [value]=\"num\">\n <span\n class=\"page-dot-link\"\n [ngClass]=\"{ active: value === num }\"\n ></span>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n\n <ng-template #numNav>\n <ul class=\"pagination\">\n <ng-container>\n <li class=\"page-item\" (click)=\"handleOnChange(value - 1)\">\n <button\n class=\"page-link\"\n [attr.title]=\"previousText\"\n [attr.disabled]=\"value === 1 ? 'disabled' : null\"\n >\n <span class=\"nav-action\">\n <ng-container *ngIf=\"useTextNav; else angleLeftIcon\">\n {{ previousText ? previousText : 'Previous' }}\n </ng-container>\n <ng-template #angleLeftIcon>\n <gds-icon-chevron-left\n *nggCoreElement\n ></gds-icon-chevron-left>\n </ng-template>\n </span>\n </button>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"useFirstAndLast\">\n <li class=\"page-item\" (click)=\"handleOnChange(1)\">\n <button\n class=\"page-link\"\n [ngClass]=\"{ active: value === 1 }\"\n [attr.title]=\"firstText\"\n >\n <span class=\"nav-num\">{{ 1 }}</span>\n </button>\n </li>\n\n <li class=\"page-item\" *ngIf=\"showEllipsisStart\">\n <span class=\"page-link\" [attr.title]=\"'...'\">\n <span class=\"nav-num\">...</span>\n </span>\n </li>\n </ng-container>\n\n <ng-container *ngFor=\"let num of list\">\n <li\n class=\"page-item\"\n [ngClass]=\"{ active: value === num }\"\n (click)=\"handleOnChange(num)\"\n value=\"num\"\n >\n <button class=\"page-link\" [ngClass]=\"{ active: value === num }\">\n <span class=\"nav-num\">{{ num }}</span>\n </button>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"useFirstAndLast\">\n <li class=\"page-item\" *ngIf=\"showEllipsisEnd\">\n <span class=\"page-link\" [attr.title]=\"'...'\">\n <span class=\"nav-num\">...</span>\n </span>\n </li>\n\n <li\n class=\"page-item\"\n (click)=\"handleOnChange(pagingSize)\"\n *ngIf=\"pagingSize > 1\"\n >\n <button\n class=\"page-link\"\n [ngClass]=\"{ active: value === pagingSize }\"\n [attr.title]=\"lastText\"\n >\n <span class=\"nav-num\">{{ pagingSize }}</span>\n </button>\n </li>\n </ng-container>\n\n <ng-container>\n <li class=\"page-item\" (click)=\"handleOnChange(value + 1)\">\n <button class=\"page-link\" [attr.title]=\"nextText\">\n <span class=\"nav-action\">\n <ng-container *ngIf=\"useTextNav; else angleRightIcon\">\n {{ nextText ? nextText : 'Next' }}\n </ng-container>\n <ng-template #angleRightIcon>\n <gds-icon-chevron-right\n *nggCoreElement\n ></gds-icon-chevron-right>\n </ng-template>\n </span>\n </button>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"showGoToPage\">\n <li>\n <div class=\"paging-input-wrapper\">\n <div class=\"label-wrapper\">\n <label for=\"pageInput\" *transloco=\"let t\">\n {{ t('label.gotopage') }}\n </label>\n </div>\n <div class=\"input-wrapper\">\n <input\n #pageInput\n data-thook=\"pagination-go-to-input\"\n min=\"1\"\n [max]=\"pagingSize\"\n id=\"pageInput\"\n class=\"gds-field\"\n type=\"number\"\n (keydown.enter)=\"handlePageInput(pageInput.value)\"\n [ngModel]=\"value\"\n />\n <button\n type=\"button\"\n data-thook=\"pagination-go-to-button\"\n (click)=\"handlePageInput(pageInput.value)\"\n >\n <gds-icon-chevron-right\n *nggCoreElement\n ></gds-icon-chevron-right>\n </button>\n </div>\n </div>\n </li>\n </ng-container>\n </ul>\n </ng-template>\n </nav>\n</div>\n", styles: [":host .pagination-wrapper .paging-input-wrapper{display:flex}:host .pagination-wrapper .paging-input-wrapper .label-wrapper{margin:auto;padding:0 1em}:host .pagination-wrapper .paging-input-wrapper .input-wrapper{display:flex;border:.0625em solid #868686;border-radius:4px;height:100%}:host .pagination-wrapper .paging-input-wrapper .input-wrapper input{border:0;padding:.5em;min-height:2.5rem;width:60px;box-sizing:border-box;border-radius:3px;font-size:1rem;font-family:inherit}:host .pagination-wrapper .paging-input-wrapper .input-wrapper input:focus{outline-color:#1a1a1a;outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .pagination-wrapper .paging-input-wrapper .input-wrapper>button{border:0;color:#1a1a1a;background-color:transparent;font-size:1rem;font-family:inherit}:host .pagination-wrapper .paging-input-wrapper .input-wrapper>button:focus{outline-color:#1a1a1a;outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .pagination-wrapper>.custom-pagination>.pagination{display:flex;list-style:none;margin-top:10px;margin-bottom:10px}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link{position:relative;text-align:center;padding-top:0;padding-bottom:0;min-width:38px;height:40px;display:inline-flex;align-items:center;background-color:transparent;color:#1a1a1a;border:none;border-radius:4px;font-size:1rem;font-family:inherit}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link.active{background-color:#1a1a1a;color:#eee}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link>.nav-num{margin:0 auto}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link>.nav-action{margin:0 auto;display:inline-flex}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link:focus{outline-color:#1a1a1a;outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .pagination-wrapper>.custom-pagination>.pagination>.page-item>.page-link:hover{box-shadow:0 2px 6px #eee}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item{width:20px;height:25px}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item .page-dot-link{position:relative;display:inline-block;width:10px;height:10px;border-radius:50%;cursor:pointer;background-color:#a2ddfe;transition:all .2s;margin:0 auto;will-change:transform}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item .page-dot-link.active{background-color:#007ac7;cursor:default;transform:scale(1.3)}:host .pagination-wrapper>.custom-pagination>.pagination.dotnav .page-item .page-dot-link:hover:not(.active){background-color:#41b0ee}\n"] }]
113
- }], propDecorators: { size: [{
114
- type: Input
115
- }], value: [{
116
- type: Input
117
- }], firstText: [{
118
- type: Input
119
- }], lastText: [{
120
- type: Input
121
- }], nextText: [{
122
- type: Input
123
- }], offset: [{
124
- type: Input
125
- }], pagingLength: [{
126
- type: Input
127
- }], previousText: [{
128
- type: Input
129
- }], useFirstAndLast: [{
130
- type: Input
131
- }], useTextNav: [{
132
- type: Input
133
- }], useDotNav: [{
134
- type: Input
135
- }], showGoToPage: [{
136
- type: Input
137
- }], className: [{
138
- type: Input
139
- }], id: [{
140
- type: Input
141
- }], pageNumberChange: [{
142
- type: Output
143
- }] } });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUE7QUFFdEIsT0FBTyw0REFBNEQsQ0FBQTtBQUNuRSxPQUFPLDZEQUE2RCxDQUFBO0FBQ3BFLE9BQU8sMERBQTBELENBQUE7Ozs7OztBQUVqRSx5TEFBeUw7QUFNekwsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQU1FLCtCQUErQjtRQUN0QixTQUFJLEdBQUcsQ0FBQyxDQUFBO1FBQ2pCLG9CQUFvQjtRQUNYLFVBQUssR0FBRyxDQUFDLENBQUE7UUFhbEIsMkNBQTJDO1FBQ2xDLG9CQUFlLEdBQWEsSUFBSSxDQUFBO1FBS3pDLG1DQUFtQztRQUMxQixpQkFBWSxHQUFHLElBQUksQ0FBQTtRQUM1Qix5QkFBeUI7UUFDaEIsY0FBUyxHQUFHLEVBQUUsQ0FBQTtRQUd2Qiw4QkFBOEI7UUFDcEIscUJBQWdCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUE7UUFFN0UsZ0JBQWdCO1FBQ2hCLGVBQVUsR0FBRyxDQUFDLENBQUE7UUFDZCxnQkFBZ0I7UUFDaEIsU0FBSSxHQUFrQixFQUFFLENBQUE7UUFDeEIsZ0JBQWdCO1FBQ2hCLGVBQVUsR0FBa0IsRUFBRSxDQUFBO1FBQzlCLGdCQUFnQjtRQUNoQixlQUFVLEdBQUcsQ0FBQyxDQUFBO1FBQ2QsZ0JBQWdCO1FBQ2hCLHNCQUFpQixHQUFHLEtBQUssQ0FBQTtRQUN6Qixn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UztzQkFBakIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsRUFBRTtzQkFBVixLQUFLO2dCQUVJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCAnQHNlYmdyb3VwL2dyZWVuLWNvcmUvY29tcG9uZW50cy9pY29uL2ljb25zL2NoZXZyb24tbGVmdC5qcydcbmltcG9ydCAnQHNlYmdyb3VwL2dyZWVuLWNvcmUvY29tcG9uZW50cy9pY29uL2ljb25zL2NoZXZyb24tcmlnaHQuanMnXG5pbXBvcnQgJ0BzZWJncm91cC9ncmVlbi1jb3JlL2NvbXBvbmVudHMvaWNvbi9pY29ucy9hcnJvdy1sZWZ0LmpzJ1xuXG4vKiogVGhlIFBhZ2luYXRpb24gY29tcG9uZW50IGlzIHVzZWQgdG8gc2VwYXJhdGUgbG9uZyBzZXRzIG9mIGRhdGEgc28gdGhhdCBpdCBpcyBlYXNpZXIgZm9yIGEgdXNlciB0byBjb25zdW1lIGluZm9ybWF0aW9uLiBUbyBjaGFuZ2UgdGhlIGN1cnJlbnQgcGFnZSBzaW1wbHkgY2xpY2sgb24gdGhlIHBhZ2UgbnVtYmVyLiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdndi1wYWdpbmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAvKiogVG90YWwgc2l6ZSBvZiBwYWdpbmF0aW9uICovXG4gIEBJbnB1dCgpIHNpemUgPSAwXG4gIC8qKiBTZWxlY3RlZCBwYWdlICovXG4gIEBJbnB1dCgpIHZhbHVlID0gMVxuICAvKiogRmlyc3QgcGFnZSB0ZXh0ICovXG4gIEBJbnB1dCgpIGZpcnN0VGV4dD86IHN0cmluZ1xuICAvKiogTGFzdCBwYWdlIHRleHQgKi9cbiAgQElucHV0KCkgbGFzdFRleHQ/OiBzdHJpbmdcbiAgLyoqIE5leHQgcGFnZSB0ZXh0ICovXG4gIEBJbnB1dCgpIG5leHRUZXh0Pzogc3RyaW5nXG4gIC8qKiBPZmZzZXQgcGVyIHBhZ2UgKi9cbiAgQElucHV0KCkgb2Zmc2V0PzogbnVtYmVyXG4gIC8qKiBOdW1iZXIgb2YgcGFnZXMgdG8gZGlzcGxheSovXG4gIEBJbnB1dCgpIHBhZ2luZ0xlbmd0aD86IG51bWJlclxuICAvKiogUHJldmlvdXMgcGFnZSB0ZXh0ICovXG4gIEBJbnB1dCgpIHByZXZpb3VzVGV4dD86IHN0cmluZ1xuICAvKiogVXNlIGZpcnN0IGFuZCBsYXN0IG5hdmlnYXRpb24gYnV0dG9ucyovXG4gIEBJbnB1dCgpIHVzZUZpcnN0QW5kTGFzdD86IGJvb2xlYW4gPSB0cnVlXG4gIC8qKiBVc2UgdGV4dC1iYXNlZCBuYXZpZ2F0aW9uIGJ1dHRvbnMqL1xuICBASW5wdXQoKSB1c2VUZXh0TmF2PzogYm9vbGVhblxuICAvKiogVXNlIGRvdC1uYXZpZ2F0aW9uICovXG4gIEBJbnB1dCgpIHVzZURvdE5hdj86IGJvb2xlYW5cbiAgLyoqIFVzZSAnR28gdG8gcGFnZScgaW5wdXQgZmllbGQgKi9cbiAgQElucHV0KCkgc2hvd0dvVG9QYWdlID0gdHJ1ZVxuICAvKiogRWxlbWVudCBjbGFzcyBuYW1lICovXG4gIEBJbnB1dCgpIGNsYXNzTmFtZSA9ICcnXG4gIC8qKiBFbGVtZW50IElEICovXG4gIEBJbnB1dCgpIGlkPzogc3RyaW5nXG4gIC8qKiBDYWxsYmFjayBvbiBwYWdlIGNoYW5nZSAqL1xuICBAT3V0cHV0KCkgcGFnZU51bWJlckNoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgcGFnZU51bWJlciA9IDBcbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBsaXN0OiBBcnJheTxudW1iZXI+ID0gW11cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBkb3RuYXZMaXN0OiBBcnJheTxudW1iZXI+ID0gW11cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwYWdpbmdTaXplID0gMFxuICAvKiogQGludGVybmFsICovXG4gIHNob3dFbGxpcHNpc1N0YXJ0ID0gZmFsc2VcbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBzaG93RWxsaXBzaXNFbmQgPSBmYWxzZVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcz8ub2Zmc2V0IHx8IGNoYW5nZXM/LnNpemUpIHtcbiAgICAgIHRoaXMuc2V0UGFnaW5nU2l6ZSgpXG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXM/LnBhZ2luZ0xlbmd0aCB8fCBjaGFuZ2VzPy52YWx1ZSkge1xuICAgICAgdGhpcy5nZW5lcmF0ZUxpc3QoKVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgc2V0UGFnaW5nU2l6ZSgpIHtcbiAgICBjb25zdCBpbml0aWFsT2Zmc2V0OiBudW1iZXIgPSB0aGlzLm9mZnNldCA/IHRoaXMub2Zmc2V0IDogMTBcbiAgICB0aGlzLnBhZ2luZ1NpemUgPSBNYXRoLmNlaWwoTnVtYmVyKHRoaXMuc2l6ZSkgLyBpbml0aWFsT2Zmc2V0KVxuICAgIHRoaXMuZ2VuZXJhdGVMaXN0KClcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgaGFuZGxlT25DaGFuZ2UodmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh2YWx1ZSA8PSAwKSB7XG4gICAgICB0aGlzLnBhZ2VOdW1iZXJDaGFuZ2UuZW1pdCgxKVxuICAgIH0gZWxzZSBpZiAodmFsdWUgPiB0aGlzLnBhZ2luZ1NpemUpIHtcbiAgICAgIHRoaXMucGFnZU51bWJlckNoYW5nZS5lbWl0KHRoaXMucGFnaW5nU2l6ZSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wYWdlTnVtYmVyQ2hhbmdlLmVtaXQodmFsdWUpXG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBoYW5kbGVQYWdlSW5wdXQocGFnZUlucHV0OiBzdHJpbmcpIHtcbiAgICB0aGlzLmhhbmRsZU9uQ2hhbmdlKE51bWJlcihwYWdlSW5wdXQpKVxuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhbiBhcnJheSBvZiB0aGUgcGFnZXMgdGhhdCBuZWVkcyB0byBiZSBkaXNwbGF5ZWRcbiAgICogSXQgZGVwZW5kcyBvbiB0aGUgc2l6ZSwgb2Zmc2V0LCBhbmQgdGhlIGN1cnJlbnQgdmFsdWVcbiAgICovXG4gIHByaXZhdGUgZ2VuZXJhdGVMaXN0KCk6IHZvaWQge1xuICAgIGNvbnN0IGdlbkxpc3Q6IEFycmF5PG51bWJlcj4gPSBbXVxuICAgIGNvbnN0IGxlbmd0aDogbnVtYmVyID0gdGhpcy5wYWdpbmdMZW5ndGggPyB0aGlzLnBhZ2luZ0xlbmd0aCA6IDVcblxuICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IHRoaXMucGFnaW5nU2l6ZTsgaSsrKSB7XG4gICAgICBnZW5MaXN0LnB1c2goaSlcbiAgICB9XG5cbiAgICBjb25zdCBtZWRpYW5WYWx1ZTogbnVtYmVyID0gTWF0aC5jZWlsKGxlbmd0aCAvIDIpXG4gICAgbGV0IHN0YXJ0ID0gMFxuICAgIGxldCBlbmQgPSB0aGlzLnBhZ2luZ1NpemVcblxuICAgIGlmIChsZW5ndGggPCB0aGlzLnBhZ2luZ1NpemUpIHtcbiAgICAgIGlmICh0aGlzLnBhZ2luZ1NpemUgLSB0aGlzLnZhbHVlIDwgbWVkaWFuVmFsdWUpIHtcbiAgICAgICAgc3RhcnQgPSB0aGlzLnBhZ2luZ1NpemUgLSBsZW5ndGhcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZSAtIG1lZGlhblZhbHVlID4gLTEpIHtcbiAgICAgICAgc3RhcnQgPSB0aGlzLnZhbHVlIC0gbWVkaWFuVmFsdWVcbiAgICAgIH1cbiAgICAgIGVuZCA9IHN0YXJ0ICsgbGVuZ3RoXG4gICAgfVxuICAgIGlmICh0aGlzLnVzZUZpcnN0QW5kTGFzdCkge1xuICAgICAgaWYgKHN0YXJ0ID09IDApIHtcbiAgICAgICAgc3RhcnQgPSAxXG4gICAgICAgIGVuZCA9IHN0YXJ0ICsgbGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChlbmQgPiB0aGlzLnBhZ2luZ1NpemUgLSAxKSB7XG4gICAgICAgIGVuZCA9IHRoaXMucGFnaW5nU2l6ZSAtIDFcbiAgICAgICAgc3RhcnQgPSBNYXRoLm1heCgxLCBlbmQgLSBsZW5ndGgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5kb3RuYXZMaXN0ID0gZ2VuTGlzdFxuICAgIGNvbnN0IHBhZ2luZ1N0YXJ0ID0gZ2VuTGlzdFtzdGFydF1cbiAgICBjb25zdCBwYWdpbmdFbmQgPSBnZW5MaXN0W2VuZCAtIDFdXG4gICAgdGhpcy5zaG93RWxsaXBzaXNTdGFydCA9IHBhZ2luZ1N0YXJ0ID4gMlxuICAgIHRoaXMuc2hvd0VsbGlwc2lzRW5kID0gcGFnaW5nRW5kIDwgdGhpcy5wYWdpbmdTaXplIC0gMVxuICAgIHRoaXMubGlzdCA9IGdlbkxpc3Quc2xpY2Uoc3RhcnQsIGVuZClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBhZ2luYXRpb24td3JhcHBlclwiIFtuZ0NsYXNzXT1cImNsYXNzTmFtZVwiIFthdHRyLmlkXT1cImlkXCI+XG4gIDxuYXYgY2xhc3M9XCJjdXN0b20tcGFnaW5hdGlvblwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1c2VEb3ROYXY7IGVsc2UgbnVtTmF2XCI+XG4gICAgICA8dWwgY2xhc3M9XCJwYWdpbmF0aW9uIGRvdG5hdlwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBudW0gb2YgZG90bmF2TGlzdFwiPlxuICAgICAgICAgIDxsaSBjbGFzcz1cInBhZ2UtaXRlbVwiIChjbGljayk9XCJoYW5kbGVPbkNoYW5nZShudW0pXCIgW3ZhbHVlXT1cIm51bVwiPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJwYWdlLWRvdC1saW5rXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IHZhbHVlID09PSBudW0gfVwiXG4gICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC91bD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjbnVtTmF2PlxuICAgICAgPHVsIGNsYXNzPVwicGFnaW5hdGlvblwiPlxuICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgIDxsaSBjbGFzcz1cInBhZ2UtaXRlbVwiIChjbGljayk9XCJoYW5kbGVPbkNoYW5nZSh2YWx1ZSAtIDEpXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzPVwicGFnZS1saW5rXCJcbiAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwicHJldmlvdXNUZXh0XCJcbiAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwidmFsdWUgPT09IDEgPyAnZGlzYWJsZWQnIDogbnVsbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LWFjdGlvblwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1c2VUZXh0TmF2OyBlbHNlIGFuZ2xlTGVmdEljb25cIj5cbiAgICAgICAgICAgICAgICAgIHt7IHByZXZpb3VzVGV4dCA/IHByZXZpb3VzVGV4dCA6ICdQcmV2aW91cycgfX1cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2FuZ2xlTGVmdEljb24+XG4gICAgICAgICAgICAgICAgICA8Z2RzLWljb24tY2hldnJvbi1sZWZ0XG4gICAgICAgICAgICAgICAgICAgICpuZ2dDb3JlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgPjwvZ2RzLWljb24tY2hldnJvbi1sZWZ0PlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1c2VGaXJzdEFuZExhc3RcIj5cbiAgICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiAoY2xpY2spPVwiaGFuZGxlT25DaGFuZ2UoMSlcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3M9XCJwYWdlLWxpbmtcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogdmFsdWUgPT09IDEgfVwiXG4gICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImZpcnN0VGV4dFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LW51bVwiPnt7IDEgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2xpPlxuXG4gICAgICAgICAgPGxpIGNsYXNzPVwicGFnZS1pdGVtXCIgKm5nSWY9XCJzaG93RWxsaXBzaXNTdGFydFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwYWdlLWxpbmtcIiBbYXR0ci50aXRsZV09XCInLi4uJ1wiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5hdi1udW1cIj4uLi48L3NwYW4+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbnVtIG9mIGxpc3RcIj5cbiAgICAgICAgICA8bGlcbiAgICAgICAgICAgIGNsYXNzPVwicGFnZS1pdGVtXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiB2YWx1ZSA9PT0gbnVtIH1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZU9uQ2hhbmdlKG51bSlcIlxuICAgICAgICAgICAgdmFsdWU9XCJudW1cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJwYWdlLWxpbmtcIiBbbmdDbGFzc109XCJ7IGFjdGl2ZTogdmFsdWUgPT09IG51bSB9XCI+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LW51bVwiPnt7IG51bSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1c2VGaXJzdEFuZExhc3RcIj5cbiAgICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiAqbmdJZj1cInNob3dFbGxpcHNpc0VuZFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwYWdlLWxpbmtcIiBbYXR0ci50aXRsZV09XCInLi4uJ1wiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5hdi1udW1cIj4uLi48L3NwYW4+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9saT5cblxuICAgICAgICAgIDxsaVxuICAgICAgICAgICAgY2xhc3M9XCJwYWdlLWl0ZW1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZU9uQ2hhbmdlKHBhZ2luZ1NpemUpXCJcbiAgICAgICAgICAgICpuZ0lmPVwicGFnaW5nU2l6ZSA+IDFcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3M9XCJwYWdlLWxpbmtcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogdmFsdWUgPT09IHBhZ2luZ1NpemUgfVwiXG4gICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImxhc3RUZXh0XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuYXYtbnVtXCI+e3sgcGFnaW5nU2l6ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXI+XG4gICAgICAgICAgPGxpIGNsYXNzPVwicGFnZS1pdGVtXCIgKGNsaWNrKT1cImhhbmRsZU9uQ2hhbmdlKHZhbHVlICsgMSlcIj5cbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJwYWdlLWxpbmtcIiBbYXR0ci50aXRsZV09XCJuZXh0VGV4dFwiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5hdi1hY3Rpb25cIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXNlVGV4dE5hdjsgZWxzZSBhbmdsZVJpZ2h0SWNvblwiPlxuICAgICAgICAgICAgICAgICAge3sgbmV4dFRleHQgPyBuZXh0VGV4dCA6ICdOZXh0JyB9fVxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYW5nbGVSaWdodEljb24+XG4gICAgICAgICAgICAgICAgICA8Z2RzLWljb24tY2hldnJvbi1yaWdodFxuICAgICAgICAgICAgICAgICAgICAqbmdnQ29yZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgID48L2dkcy1pY29uLWNoZXZyb24tcmlnaHQ+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dHb1RvUGFnZVwiPlxuICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdpbmctaW5wdXQtd3JhcHBlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWwtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYWdlSW5wdXRcIiAqdHJhbnNsb2NvPVwibGV0IHRcIj5cbiAgICAgICAgICAgICAgICAgIHt7IHQoJ2xhYmVsLmdvdG9wYWdlJykgfX1cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICNwYWdlSW5wdXRcbiAgICAgICAgICAgICAgICAgIGRhdGEtdGhvb2s9XCJwYWdpbmF0aW9uLWdvLXRvLWlucHV0XCJcbiAgICAgICAgICAgICAgICAgIG1pbj1cIjFcIlxuICAgICAgICAgICAgICAgICAgW21heF09XCJwYWdpbmdTaXplXCJcbiAgICAgICAgICAgICAgICAgIGlkPVwicGFnZUlucHV0XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZ2RzLWZpZWxkXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiaGFuZGxlUGFnZUlucHV0KHBhZ2VJbnB1dC52YWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBkYXRhLXRob29rPVwicGFnaW5hdGlvbi1nby10by1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVBhZ2VJbnB1dChwYWdlSW5wdXQudmFsdWUpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Z2RzLWljb24tY2hldnJvbi1yaWdodFxuICAgICAgICAgICAgICAgICAgICAqbmdnQ29yZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgID48L2dkcy1pY29uLWNoZXZyb24tcmlnaHQ+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L3VsPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmF2PlxuPC9kaXY+XG4iXX0=