@sebgroup/green-angular 4.6.7 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/esm2022/lib/accordion/accordion-list-item.component.mjs +4 -4
  2. package/esm2022/lib/accordion/accordion.component.mjs +4 -4
  3. package/esm2022/lib/accordion/accordion.module.mjs +4 -4
  4. package/esm2022/lib/badge/badge.component.mjs +5 -5
  5. package/esm2022/lib/badge/badge.module.mjs +4 -4
  6. package/esm2022/lib/button/button.component.mjs +3 -3
  7. package/esm2022/lib/button/button.module.mjs +4 -4
  8. package/esm2022/lib/cell-table/cell-table-item.component.mjs +5 -5
  9. package/esm2022/lib/cell-table/cell-table.component.mjs +4 -4
  10. package/esm2022/lib/cell-table/cell-table.module.mjs +4 -4
  11. package/esm2022/lib/cell-table/cell-underline.directive.mjs +5 -5
  12. package/esm2022/lib/context-menu/context-menu.component.mjs +5 -12
  13. package/esm2022/lib/context-menu/context-menu.module.mjs +4 -4
  14. package/esm2022/lib/datepicker/datepicker.component.mjs +5 -5
  15. package/esm2022/lib/datepicker/datepicker.module.mjs +4 -4
  16. package/esm2022/lib/dropdown/dropdown-button.directive.mjs +4 -4
  17. package/esm2022/lib/dropdown/dropdown-option.directive.mjs +4 -4
  18. package/esm2022/lib/dropdown/dropdown.component.mjs +6 -11
  19. package/esm2022/lib/dropdown/dropdown.module.mjs +4 -4
  20. package/esm2022/lib/green-angular.module.mjs +4 -4
  21. package/esm2022/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +4 -4
  22. package/esm2022/lib/in-page-wizard/in-page-wizard.module.mjs +4 -4
  23. package/esm2022/lib/modal/modal-footer.directive.mjs +4 -4
  24. package/esm2022/lib/modal/modal-header.directive.mjs +4 -4
  25. package/esm2022/lib/modal/modal.component.mjs +22 -17
  26. package/esm2022/lib/modal/modal.module.mjs +4 -4
  27. package/esm2022/lib/pagination/pagination.component.mjs +4 -4
  28. package/esm2022/lib/pagination/pagination.module.mjs +4 -4
  29. package/esm2022/lib/progress-circle/progress-circle.component.mjs +4 -4
  30. package/esm2022/lib/progress-circle/progress-circle.module.mjs +4 -4
  31. package/esm2022/lib/segmented-control/segmented-control.component.mjs +4 -4
  32. package/esm2022/lib/segmented-control/segmented-control.module.mjs +4 -4
  33. package/esm2022/lib/shared/core-control/core-control.directive.mjs +73 -0
  34. package/esm2022/lib/shared/core-control/core-control.module.mjs +19 -0
  35. package/esm2022/lib/shared/core-control/index.mjs +2 -0
  36. package/esm2022/lib/shared/core-element/core-element.directive.mjs +16 -12
  37. package/esm2022/lib/shared/core-element/core-element.module.mjs +4 -4
  38. package/esm2022/lib/shared/core-renderer/core-renderer.mjs +88 -0
  39. package/esm2022/lib/shared/core-renderer/index.mjs +2 -0
  40. package/esm2022/lib/shared/index.mjs +3 -1
  41. package/esm2022/lib/shared/on-scroll.directive.mjs +5 -5
  42. package/esm2022/lib/shared/shared.module.mjs +4 -4
  43. package/esm2022/lib/slider/slider.component.mjs +4 -4
  44. package/esm2022/lib/slider/slider.module.mjs +4 -4
  45. package/esm2022/lib/sortable-list/sortable-list.component.mjs +4 -4
  46. package/esm2022/lib/sortable-list/sortable-list.module.mjs +4 -4
  47. package/esm2022/src/lib/accordion/accordion-list-item.component.mjs +4 -4
  48. package/esm2022/src/lib/accordion/accordion.component.mjs +4 -4
  49. package/esm2022/src/lib/accordion/accordion.module.mjs +4 -4
  50. package/esm2022/src/lib/badge/badge.component.mjs +5 -5
  51. package/esm2022/src/lib/badge/badge.module.mjs +4 -4
  52. package/esm2022/src/lib/button/button.component.mjs +3 -3
  53. package/esm2022/src/lib/button/button.module.mjs +4 -4
  54. package/esm2022/src/lib/cell-table/cell-table-item.component.mjs +5 -5
  55. package/esm2022/src/lib/cell-table/cell-table.component.mjs +4 -4
  56. package/esm2022/src/lib/cell-table/cell-table.module.mjs +4 -4
  57. package/esm2022/src/lib/cell-table/cell-underline.directive.mjs +5 -5
  58. package/esm2022/src/lib/context-menu/context-menu.component.mjs +5 -12
  59. package/esm2022/src/lib/context-menu/context-menu.module.mjs +4 -4
  60. package/esm2022/src/lib/datepicker/datepicker.component.mjs +5 -5
  61. package/esm2022/src/lib/datepicker/datepicker.module.mjs +4 -4
  62. package/esm2022/src/lib/dropdown/dropdown-button.directive.mjs +4 -4
  63. package/esm2022/src/lib/dropdown/dropdown-option.directive.mjs +4 -4
  64. package/esm2022/src/lib/dropdown/dropdown.component.mjs +6 -11
  65. package/esm2022/src/lib/dropdown/dropdown.module.mjs +4 -4
  66. package/esm2022/src/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +4 -4
  67. package/esm2022/src/lib/in-page-wizard/in-page-wizard.module.mjs +4 -4
  68. package/esm2022/src/lib/modal/modal-footer.directive.mjs +4 -4
  69. package/esm2022/src/lib/modal/modal-header.directive.mjs +4 -4
  70. package/esm2022/src/lib/modal/modal.component.mjs +22 -17
  71. package/esm2022/src/lib/modal/modal.module.mjs +4 -4
  72. package/esm2022/src/lib/pagination/pagination.component.mjs +4 -4
  73. package/esm2022/src/lib/pagination/pagination.module.mjs +4 -4
  74. package/esm2022/src/lib/progress-circle/progress-circle.component.mjs +4 -4
  75. package/esm2022/src/lib/progress-circle/progress-circle.module.mjs +4 -4
  76. package/esm2022/src/lib/segmented-control/segmented-control.component.mjs +4 -4
  77. package/esm2022/src/lib/segmented-control/segmented-control.module.mjs +4 -4
  78. package/esm2022/src/lib/shared/core-control/core-control.directive.mjs +73 -0
  79. package/esm2022/src/lib/shared/core-control/core-control.module.mjs +19 -0
  80. package/esm2022/src/lib/shared/core-control/index.mjs +2 -0
  81. package/esm2022/src/lib/shared/core-element/core-element.directive.mjs +16 -12
  82. package/esm2022/src/lib/shared/core-element/core-element.module.mjs +4 -4
  83. package/esm2022/src/lib/shared/core-renderer/core-renderer.mjs +88 -0
  84. package/esm2022/src/lib/shared/core-renderer/index.mjs +2 -0
  85. package/esm2022/src/lib/shared/index.mjs +3 -1
  86. package/esm2022/src/lib/shared/on-scroll.directive.mjs +5 -5
  87. package/esm2022/src/lib/shared/shared.module.mjs +4 -4
  88. package/esm2022/src/lib/slider/slider.component.mjs +4 -4
  89. package/esm2022/src/lib/slider/slider.module.mjs +4 -4
  90. package/esm2022/src/lib/sortable-list/sortable-list.component.mjs +4 -4
  91. package/esm2022/src/lib/sortable-list/sortable-list.module.mjs +4 -4
  92. package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +7 -7
  93. package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +4 -4
  94. package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.component.mjs +3 -3
  95. package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.module.mjs +4 -4
  96. package/esm2022/src/v-angular/button/button.component.mjs +6 -6
  97. package/esm2022/src/v-angular/button/button.module.mjs +4 -4
  98. package/esm2022/src/v-angular/card/card.component.mjs +3 -3
  99. package/esm2022/src/v-angular/card/card.module.mjs +4 -4
  100. package/esm2022/src/v-angular/character-countdown/character-countdown.directive.mjs +5 -5
  101. package/esm2022/src/v-angular/character-countdown/character-countdown.module.mjs +4 -4
  102. package/esm2022/src/v-angular/checkbox/checkbox.component.mjs +7 -7
  103. package/esm2022/src/v-angular/checkbox/checkbox.module.mjs +4 -4
  104. package/esm2022/src/v-angular/core/core.globals.mjs +1 -1
  105. package/esm2022/src/v-angular/core/core.utils.mjs +3 -3
  106. package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +6 -6
  107. package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +7 -7
  108. package/esm2022/src/v-angular/dropdown/dropdown.module.mjs +4 -4
  109. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +6 -6
  110. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +4 -4
  111. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +6 -6
  112. package/esm2022/src/v-angular/dropdown/typeahead/typeahead.directive.mjs +6 -6
  113. package/esm2022/src/v-angular/dropdown/typeahead/typeahead.module.mjs +4 -4
  114. package/esm2022/src/v-angular/external-link/external-link.directive.mjs +5 -5
  115. package/esm2022/src/v-angular/external-link/external-link.module.mjs +4 -4
  116. package/esm2022/src/v-angular/i18n/i18n.module.mjs +10 -10
  117. package/esm2022/src/v-angular/i18n/i18n.test.module.mjs +7 -7
  118. package/esm2022/src/v-angular/info-circle/info-circle.component.mjs +3 -3
  119. package/esm2022/src/v-angular/info-circle/info-circle.module.mjs +4 -4
  120. package/esm2022/src/v-angular/input/input.component.mjs +7 -7
  121. package/esm2022/src/v-angular/input/input.module.mjs +4 -4
  122. package/esm2022/src/v-angular/input-mask/input-mask-format.pipe.mjs +3 -3
  123. package/esm2022/src/v-angular/input-mask/input-mask.directive.mjs +6 -6
  124. package/esm2022/src/v-angular/input-mask/input-mask.module.mjs +4 -4
  125. package/esm2022/src/v-angular/modal/dialog/dialog.component.mjs +7 -5
  126. package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +7 -6
  127. package/esm2022/src/v-angular/modal/fold-out/fold-out.directive.mjs +5 -5
  128. package/esm2022/src/v-angular/modal/modal.globals.mjs +1 -1
  129. package/esm2022/src/v-angular/modal/modal.module.mjs +9 -7
  130. package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +7 -6
  131. package/esm2022/src/v-angular/radio/radio.component.mjs +10 -10
  132. package/esm2022/src/v-angular/radio/radio.module.mjs +4 -4
  133. package/esm2022/src/v-angular/slug/slug.module.mjs +4 -4
  134. package/esm2022/src/v-angular/slug/slug.pipe.mjs +4 -4
  135. package/esm2022/src/v-angular/textarea/textarea.component.mjs +7 -7
  136. package/esm2022/src/v-angular/textarea/textarea.module.mjs +4 -4
  137. package/esm2022/src/v-angular/tooltip/tooltip.directive.mjs +5 -5
  138. package/esm2022/src/v-angular/tooltip/tooltip.module.mjs +4 -4
  139. package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +7 -7
  140. package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +4 -4
  141. package/esm2022/v-angular/breadcrumbs/breadcrumbs.component.mjs +3 -3
  142. package/esm2022/v-angular/breadcrumbs/breadcrumbs.module.mjs +4 -4
  143. package/esm2022/v-angular/button/button.component.mjs +6 -6
  144. package/esm2022/v-angular/button/button.module.mjs +4 -4
  145. package/esm2022/v-angular/card/card.component.mjs +3 -3
  146. package/esm2022/v-angular/card/card.module.mjs +4 -4
  147. package/esm2022/v-angular/character-countdown/character-countdown.directive.mjs +5 -5
  148. package/esm2022/v-angular/character-countdown/character-countdown.module.mjs +4 -4
  149. package/esm2022/v-angular/checkbox/checkbox.component.mjs +7 -7
  150. package/esm2022/v-angular/checkbox/checkbox.module.mjs +4 -4
  151. package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +6 -6
  152. package/esm2022/v-angular/dropdown/dropdown.component.mjs +7 -7
  153. package/esm2022/v-angular/dropdown/dropdown.module.mjs +4 -4
  154. package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +6 -6
  155. package/esm2022/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +4 -4
  156. package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +6 -6
  157. package/esm2022/v-angular/dropdown/typeahead/typeahead.directive.mjs +6 -6
  158. package/esm2022/v-angular/dropdown/typeahead/typeahead.module.mjs +4 -4
  159. package/esm2022/v-angular/i18n/i18n.module.mjs +10 -10
  160. package/esm2022/v-angular/i18n/i18n.test.module.mjs +7 -7
  161. package/esm2022/v-angular/info-circle/info-circle.component.mjs +3 -3
  162. package/esm2022/v-angular/info-circle/info-circle.module.mjs +4 -4
  163. package/esm2022/v-angular/input/input.component.mjs +7 -7
  164. package/esm2022/v-angular/input/input.module.mjs +4 -4
  165. package/esm2022/v-angular/input-mask/input-mask-format.pipe.mjs +3 -3
  166. package/esm2022/v-angular/input-mask/input-mask.directive.mjs +6 -6
  167. package/esm2022/v-angular/input-mask/input-mask.module.mjs +4 -4
  168. package/esm2022/v-angular/modal/dialog/dialog.component.mjs +7 -5
  169. package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +7 -6
  170. package/esm2022/v-angular/modal/fold-out/fold-out.directive.mjs +5 -5
  171. package/esm2022/v-angular/modal/modal.globals.mjs +1 -1
  172. package/esm2022/v-angular/modal/modal.module.mjs +9 -7
  173. package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +7 -6
  174. package/esm2022/v-angular/radio/radio.component.mjs +10 -10
  175. package/esm2022/v-angular/radio/radio.module.mjs +4 -4
  176. package/esm2022/v-angular/textarea/textarea.component.mjs +7 -7
  177. package/esm2022/v-angular/textarea/textarea.module.mjs +4 -4
  178. package/esm2022/v-angular/tooltip/tooltip.directive.mjs +5 -5
  179. package/esm2022/v-angular/tooltip/tooltip.module.mjs +4 -4
  180. package/esm2022/v-angular/v-angular.module.mjs +11 -7
  181. package/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs +10 -10
  182. package/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs.map +1 -1
  183. package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs +8 -8
  184. package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs.map +1 -1
  185. package/fesm2022/sebgroup-green-angular-src-lib-button.mjs +7 -7
  186. package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs +15 -15
  187. package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs.map +1 -1
  188. package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs +8 -15
  189. package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs.map +1 -1
  190. package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs +8 -8
  191. package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs.map +1 -1
  192. package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs +17 -22
  193. package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs.map +1 -1
  194. package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs +7 -7
  195. package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs.map +1 -1
  196. package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs +33 -28
  197. package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs.map +1 -1
  198. package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs +7 -7
  199. package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs.map +1 -1
  200. package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs +7 -7
  201. package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs.map +1 -1
  202. package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs +8 -8
  203. package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs.map +1 -1
  204. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +198 -26
  205. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
  206. package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs +7 -7
  207. package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs.map +1 -1
  208. package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs +7 -7
  209. package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs.map +1 -1
  210. package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +10 -10
  211. package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs.map +1 -1
  212. package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +7 -7
  213. package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs.map +1 -1
  214. package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs +9 -9
  215. package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs.map +1 -1
  216. package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs +7 -7
  217. package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs +8 -8
  218. package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs.map +1 -1
  219. package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs +10 -10
  220. package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs.map +1 -1
  221. package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs +3 -3
  222. package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs.map +1 -1
  223. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +37 -37
  224. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
  225. package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs +8 -8
  226. package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs.map +1 -1
  227. package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs +16 -16
  228. package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs.map +1 -1
  229. package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs +7 -7
  230. package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs +12 -12
  231. package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs.map +1 -1
  232. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +10 -10
  233. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -1
  234. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +28 -24
  235. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -1
  236. package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs +13 -13
  237. package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs.map +1 -1
  238. package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs +7 -7
  239. package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs.map +1 -1
  240. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +10 -10
  241. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -1
  242. package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs +8 -8
  243. package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs.map +1 -1
  244. package/fesm2022/sebgroup-green-angular-v-angular.mjs +198 -194
  245. package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
  246. package/fesm2022/sebgroup-green-angular.mjs +349 -186
  247. package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
  248. package/lib/context-menu/context-menu.component.d.ts +1 -6
  249. package/lib/datepicker/datepicker.component.d.ts +0 -7
  250. package/lib/dropdown/dropdown.component.d.ts +1 -6
  251. package/lib/modal/modal.component.d.ts +4 -2
  252. package/lib/shared/core-control/core-control.directive.d.ts +19 -0
  253. package/lib/shared/core-control/core-control.module.d.ts +9 -0
  254. package/lib/shared/core-control/index.d.ts +1 -0
  255. package/lib/shared/core-renderer/core-renderer.d.ts +37 -0
  256. package/lib/shared/core-renderer/index.d.ts +1 -0
  257. package/lib/shared/index.d.ts +2 -0
  258. package/package.json +10 -10
  259. package/src/lib/context-menu/context-menu.component.d.ts +1 -6
  260. package/src/lib/datepicker/datepicker.component.d.ts +0 -7
  261. package/src/lib/dropdown/dropdown.component.d.ts +1 -6
  262. package/src/lib/modal/modal.component.d.ts +4 -2
  263. package/src/lib/shared/core-control/core-control.directive.d.ts +19 -0
  264. package/src/lib/shared/core-control/core-control.module.d.ts +9 -0
  265. package/src/lib/shared/core-control/index.d.ts +1 -0
  266. package/src/lib/shared/core-renderer/core-renderer.d.ts +37 -0
  267. package/src/lib/shared/core-renderer/index.d.ts +1 -0
  268. package/src/lib/shared/index.d.ts +2 -0
  269. package/src/v-angular/modal/modal.module.d.ts +3 -1
  270. package/v-angular/modal/modal.module.d.ts +3 -1
  271. package/v-angular/v-angular.module.d.ts +2 -1
@@ -35,15 +35,15 @@ class CharacterCountdownDirective {
35
35
  updateContext() {
36
36
  this.context.charactersLeft = this.calculateCharactersLeft(this._maxlength, this._currentLength);
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CharacterCountdownDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
39
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: CharacterCountdownDirective, selector: "[nggvCharacterCountdown]", inputs: { maxlength: ["nggvCharacterCountdown", "maxlength"], currentLength: ["nggvCharacterCountdownCurrentLength", "currentLength"] }, ngImport: i0 }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CharacterCountdownDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
39
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: CharacterCountdownDirective, selector: "[nggvCharacterCountdown]", inputs: { maxlength: ["nggvCharacterCountdown", "maxlength"], currentLength: ["nggvCharacterCountdownCurrentLength", "currentLength"] }, ngImport: i0 }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CharacterCountdownDirective, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CharacterCountdownDirective, decorators: [{
42
42
  type: Directive,
43
43
  args: [{
44
44
  selector: '[nggvCharacterCountdown]',
45
45
  }]
46
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { maxlength: [{
46
+ }], ctorParameters: () => [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }], propDecorators: { maxlength: [{
47
47
  type: Input,
48
48
  args: ['nggvCharacterCountdown']
49
49
  }], currentLength: [{
@@ -52,11 +52,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
52
52
  }] } });
53
53
 
54
54
  class NggCharacterCountdownDirectiveModule {
55
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
56
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, declarations: [CharacterCountdownDirective], imports: [CommonModule], exports: [CharacterCountdownDirective] }); }
57
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, imports: [CommonModule] }); }
55
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
56
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, declarations: [CharacterCountdownDirective], imports: [CommonModule], exports: [CharacterCountdownDirective] }); }
57
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, imports: [CommonModule] }); }
58
58
  }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, decorators: [{
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCharacterCountdownDirectiveModule, decorators: [{
60
60
  type: NgModule,
61
61
  args: [{
62
62
  declarations: [CharacterCountdownDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"sebgroup-green-angular-src-v-angular-character-countdown.mjs","sources":["../../../../libs/angular/src/v-angular/character-countdown/character-countdown.directive.ts","../../../../libs/angular/src/v-angular/character-countdown/character-countdown.module.ts","../../../../libs/angular/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.ts"],"sourcesContent":["import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'\n\n@Directive({\n selector: '[nggvCharacterCountdown]',\n})\nexport class CharacterCountdownDirective {\n @Input('nggvCharacterCountdown')\n set maxlength(value: number | undefined) {\n if (!!value && !Number.isNaN(value)) {\n this._maxlength = value\n this.updateContext()\n if (!this.isViewCreated) {\n this.viewContainerRef.createEmbeddedView(this.templateRef, this.context)\n this.isViewCreated = true\n }\n } else {\n if (this.isViewCreated) {\n this.viewContainerRef.clear()\n this.isViewCreated = false\n }\n }\n }\n\n @Input('nggvCharacterCountdownCurrentLength')\n set currentLength(value: number) {\n this._currentLength = value ?? 0\n this.updateContext()\n }\n\n private _maxlength: number = Number.MAX_SAFE_INTEGER\n private _currentLength = 0\n private isViewCreated = false\n private context = { charactersLeft: 0 }\n\n constructor(\n private readonly viewContainerRef: ViewContainerRef,\n private readonly templateRef: TemplateRef<any>,\n ) {}\n\n updateContext() {\n this.context.charactersLeft = this.calculateCharactersLeft(\n this._maxlength,\n this._currentLength,\n )\n }\n\n calculateCharactersLeft = (max: number, current: number): number =>\n max - current\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { CharacterCountdownDirective } from './character-countdown.directive'\n\n@NgModule({\n declarations: [CharacterCountdownDirective],\n imports: [CommonModule],\n exports: [CharacterCountdownDirective],\n})\nexport class NggCharacterCountdownDirectiveModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sebgroup-green-angular-src-v-angular-character-countdown.mjs","sources":["../../../../libs/angular/src/v-angular/character-countdown/character-countdown.directive.ts","../../../../libs/angular/src/v-angular/character-countdown/character-countdown.module.ts","../../../../libs/angular/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.ts"],"sourcesContent":["import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'\n\n@Directive({\n selector: '[nggvCharacterCountdown]',\n})\nexport class CharacterCountdownDirective {\n @Input('nggvCharacterCountdown')\n set maxlength(value: number | undefined) {\n if (!!value && !Number.isNaN(value)) {\n this._maxlength = value\n this.updateContext()\n if (!this.isViewCreated) {\n this.viewContainerRef.createEmbeddedView(this.templateRef, this.context)\n this.isViewCreated = true\n }\n } else {\n if (this.isViewCreated) {\n this.viewContainerRef.clear()\n this.isViewCreated = false\n }\n }\n }\n\n @Input('nggvCharacterCountdownCurrentLength')\n set currentLength(value: number) {\n this._currentLength = value ?? 0\n this.updateContext()\n }\n\n private _maxlength: number = Number.MAX_SAFE_INTEGER\n private _currentLength = 0\n private isViewCreated = false\n private context = { charactersLeft: 0 }\n\n constructor(\n private readonly viewContainerRef: ViewContainerRef,\n private readonly templateRef: TemplateRef<any>,\n ) {}\n\n updateContext() {\n this.context.charactersLeft = this.calculateCharactersLeft(\n this._maxlength,\n this._currentLength,\n )\n }\n\n calculateCharactersLeft = (max: number, current: number): number =>\n max - current\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { CharacterCountdownDirective } from './character-countdown.directive'\n\n@NgModule({\n declarations: [CharacterCountdownDirective],\n imports: [CommonModule],\n exports: [CharacterCountdownDirective],\n})\nexport class NggCharacterCountdownDirectiveModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -46,13 +46,13 @@ class NgvCheckboxComponent extends NgvBaseControlValueAccessorComponent {
46
46
  this.valueChange.emit(output);
47
47
  };
48
48
  }
49
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvCheckboxComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgvCheckboxComponent, selector: "nggv-checkbox", inputs: { thook: "thook", optionalLabel: "optionalLabel" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.data-thook": "this.thook" } }, usesInheritance: true, ngImport: i0, template: "<!-- LOCKED INPUT -->\n<div *ngIf=\"locked && state\" class=\"sdv-field-checkbox-wrap\">\n <div\n [id]=\"id + '-checkbox'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n >\n <ng-container *ngIf=\"!labelContentTpl\">\n {{ label }}\n </ng-container>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl ?? null; context: { $implicit: value }\"\n ></ng-template>\n </div>\n</div>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div class=\"sdv-field-checkbox-wrap\">\n <!-- CHECKBOX FIELD -->\n <label\n [id]=\"id + '-label'\"\n [attr.for]=\"id + '-checkbox'\"\n class=\"form-control\"\n *transloco=\"let t; read: scope\"\n >\n <input\n #input\n type=\"checkbox\"\n [id]=\"id + '-checkbox'\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [attr.aria-label]=\"description\"\n [checked]=\"state\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n <!-- LABEL -->\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n <span\n *ngIf=\"\n optional === true || (required !== true && optional !== false)\n \"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n <span>{{ label }}</span>\n </ng-container>\n </ng-template>\n <i></i>\n </label>\n </div>\n\n <!-- ERRORS -->\n <ng-container *transloco=\"let t; read: scope\">\n <label\n class=\"sdv-field-notice sdv-field-notice--error\"\n [attr.for]=\"id + '-checkbox'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </label>\n </ng-container>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--gds-comp-checkbox-container-height: 1rem;--gds-comp-checkbox-container-width: 1rem;--gds-comp-checkbox-container-color: var(--gds-sys-color-surface);--gds-comp-checkbox-container-color-disabled: var(--gds-ref-pallet-base200);--gds-comp-checkbox-border-color: var(--gds-sys-color-base);--gds-comp-checkbox-border-radius: var(--gds-sys-shape-corner-small);--gds-comp-checkbox-hover-border-color: var(--gds-ref-pallet-base600);--gds-comp-checkbox-container-color-selected: var(--gds-sys-color-base);--gds-comp-checkbox-border-color-selected: var(--gds-sys-color-surface);--gds-comp-checkbox-border-color-focus: var(--gds-sys-color-blue-dark-2)}:host label.form-control input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0;z-index:-1}:host label.form-control{align-items:flex-start}:host label.form-control:has(input[type=checkbox]){padding:.6875rem 1rem .5625rem}:host label.form-control:has(input[type=checkbox]:focus-visible):focus:not(:focus-visible){box-shadow:none;outline:0}:host label.form-control:has(input[type=checkbox]:focus-visible):focus,:host label.form-control:has(input[type=checkbox]:focus-visible):focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host label.form-control input[type=checkbox]~i{margin-right:.75rem;margin-top:.0625rem;flex-shrink:0;box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color);position:relative;border-radius:var(--gds-comp-checkbox-border-radius);background-color:var(--gds-comp-checkbox-container-color);flex:0 0 auto;height:var(--gds-comp-checkbox-container-width, 1rem);width:var(--gds-comp-checkbox-container-width, 1rem);transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]~i:after{transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]:not(:checked):focus-visible~i{box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color-focus)}:host label.form-control:hover input[type=checkbox]:not(.disabled,:disabled,:checked,:indeterminate)~i{border-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control:hover input[type=checkbox]:not(:checked,:indeterminate,:disabled,.disabled)~i:after{border-color:var(--gds-comp-checkbox-hover-border-color);opacity:1}:host label.form-control input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control:hover input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control input[type=checkbox]:indeterminate~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control input[type=checkbox]:indeterminate~i:after{border-bottom:2px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:none;transform:scale(1) rotate(0);opacity:1}:host label.form-control:has(input[type=checkbox].is-invalid){border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control:has(input[type=checkbox].is-invalid){border:none;margin:0}@supports (-moz-appearance: none){:host label.form-control.is-invalid{border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control.is-invalid{border:none;margin:0}}:host label.form-control input[type=checkbox]:disabled~i,:host label.form-control input[type=checkbox].disabled~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~i::placeholder,:host label.form-control input[type=checkbox].disabled~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i,:host label.form-control input[type=checkbox].disabled:checked~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i::placeholder,:host label.form-control input[type=checkbox].disabled:checked~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i:after,:host label.form-control input[type=checkbox].disabled:checked~i:after{border-color:var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~span,:host label.form-control input[type=checkbox].disabled~span{color:var(--text-disabled-color)!important;cursor:not-allowed}:host label.form-control input[type=checkbox]:disabled~span::placeholder,:host label.form-control input[type=checkbox].disabled~span::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]~i:after{content:\"\";opacity:0;position:absolute}:host label.form-control input[type=checkbox]~i:after{border-bottom:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);height:.5rem;width:1rem;left:0;top:.1875rem;transform:scale(.601) rotate(-45deg);transform-origin:center}:host label.form-control input[type=checkbox]:checked~i:after{opacity:1}:host .form-control{padding:.75rem 1rem;border:1px solid transparent;border-radius:var(--gds-sys-shape-corner-medium);align-items:center;cursor:pointer;display:flex;flex-direction:row-reverse;font:inherit;justify-content:flex-end;position:relative;user-select:none;-webkit-user-select:none}:host .form-control:has(input:disabled){cursor:not-allowed}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }] }); }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgvCheckboxComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NgvCheckboxComponent, selector: "nggv-checkbox", inputs: { thook: "thook", optionalLabel: "optionalLabel" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.data-thook": "this.thook" } }, usesInheritance: true, ngImport: i0, template: "<!-- LOCKED INPUT -->\n<div *ngIf=\"locked && state\">\n <div\n [id]=\"id + '-checkbox'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n >\n <ng-container *ngIf=\"!labelContentTpl\">\n {{ label }}\n </ng-container>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl ?? null; context: { $implicit: value }\"\n ></ng-template>\n </div>\n</div>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div>\n <!-- CHECKBOX FIELD -->\n <label\n [id]=\"id + '-label'\"\n [attr.for]=\"id + '-checkbox'\"\n class=\"form-control\"\n *transloco=\"let t; read: scope\"\n >\n <input\n #input\n type=\"checkbox\"\n [id]=\"id + '-checkbox'\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [attr.aria-label]=\"description\"\n [checked]=\"state\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n <!-- LABEL -->\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n <span\n *ngIf=\"\n optional === true || (required !== true && optional !== false)\n \"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n <span>{{ label }}</span>\n </ng-container>\n </ng-template>\n <i></i>\n </label>\n </div>\n\n <!-- ERRORS -->\n <ng-container *transloco=\"let t; read: scope\">\n <label\n class=\"sdv-field-notice sdv-field-notice--error\"\n [attr.for]=\"id + '-checkbox'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </label>\n </ng-container>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--gds-comp-checkbox-container-height: 1rem;--gds-comp-checkbox-container-width: 1rem;--gds-comp-checkbox-container-color: var(--gds-sys-color-surface);--gds-comp-checkbox-container-color-disabled: var(--gds-ref-pallet-base200);--gds-comp-checkbox-border-color: var(--gds-sys-color-base);--gds-comp-checkbox-border-radius: var(--gds-sys-shape-corner-small);--gds-comp-checkbox-hover-border-color: var(--gds-ref-pallet-base600);--gds-comp-checkbox-container-color-selected: var(--gds-sys-color-base);--gds-comp-checkbox-border-color-selected: var(--gds-sys-color-surface);--gds-comp-checkbox-border-color-focus: var(--gds-sys-color-blue-dark-2)}:host label.form-control input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0;z-index:-1}:host label.form-control{align-items:flex-start}:host label.form-control:has(input[type=checkbox]){padding:.6875rem 1rem .5625rem}:host label.form-control:has(input[type=checkbox]:focus-visible):focus:not(:focus-visible){box-shadow:none;outline:0}:host label.form-control:has(input[type=checkbox]:focus-visible):focus,:host label.form-control:has(input[type=checkbox]:focus-visible):focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host label.form-control input[type=checkbox]~i{margin-right:.75rem;margin-top:.0625rem;flex-shrink:0;box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color);position:relative;border-radius:var(--gds-comp-checkbox-border-radius);background-color:var(--gds-comp-checkbox-container-color);flex:0 0 auto;height:var(--gds-comp-checkbox-container-width, 1rem);width:var(--gds-comp-checkbox-container-width, 1rem);transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]~i:after{transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]:not(:checked):focus-visible~i{box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color-focus)}:host label.form-control:hover input[type=checkbox]:not(.disabled,:disabled,:checked,:indeterminate)~i{border-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control:hover input[type=checkbox]:not(:checked,:indeterminate,:disabled,.disabled)~i:after{border-color:var(--gds-comp-checkbox-hover-border-color);opacity:1}:host label.form-control input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control:hover input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control input[type=checkbox]:indeterminate~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control input[type=checkbox]:indeterminate~i:after{border-bottom:2px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:none;transform:scale(1) rotate(0);opacity:1}:host label.form-control:has(input[type=checkbox].is-invalid){border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control:has(input[type=checkbox].is-invalid){border:none;margin:0}@supports (-moz-appearance: none){:host label.form-control.is-invalid{border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control.is-invalid{border:none;margin:0}}:host label.form-control input[type=checkbox]:disabled~i,:host label.form-control input[type=checkbox].disabled~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~i::placeholder,:host label.form-control input[type=checkbox].disabled~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i,:host label.form-control input[type=checkbox].disabled:checked~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i::placeholder,:host label.form-control input[type=checkbox].disabled:checked~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i:after,:host label.form-control input[type=checkbox].disabled:checked~i:after{border-color:var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~span,:host label.form-control input[type=checkbox].disabled~span{color:var(--text-disabled-color)!important;cursor:not-allowed}:host label.form-control input[type=checkbox]:disabled~span::placeholder,:host label.form-control input[type=checkbox].disabled~span::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]~i:after{content:\"\";opacity:0;position:absolute}:host label.form-control input[type=checkbox]~i:after{border-bottom:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);height:.5rem;width:1rem;left:0;top:.1875rem;transform:scale(.601) rotate(-45deg);transform-origin:center}:host label.form-control input[type=checkbox]:checked~i:after{opacity:1}:host .form-control{padding:.75rem 1rem;border:1px solid transparent;border-radius:var(--gds-sys-shape-corner-medium);align-items:center;cursor:pointer;display:flex;flex-direction:row-reverse;font:inherit;justify-content:flex-end;position:relative;user-select:none;-webkit-user-select:none}:host .form-control:has(input:disabled){cursor:not-allowed}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }] }); }
51
51
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvCheckboxComponent, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgvCheckboxComponent, decorators: [{
53
53
  type: Component,
54
- args: [{ selector: 'nggv-checkbox', template: "<!-- LOCKED INPUT -->\n<div *ngIf=\"locked && state\" class=\"sdv-field-checkbox-wrap\">\n <div\n [id]=\"id + '-checkbox'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n >\n <ng-container *ngIf=\"!labelContentTpl\">\n {{ label }}\n </ng-container>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl ?? null; context: { $implicit: value }\"\n ></ng-template>\n </div>\n</div>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div class=\"sdv-field-checkbox-wrap\">\n <!-- CHECKBOX FIELD -->\n <label\n [id]=\"id + '-label'\"\n [attr.for]=\"id + '-checkbox'\"\n class=\"form-control\"\n *transloco=\"let t; read: scope\"\n >\n <input\n #input\n type=\"checkbox\"\n [id]=\"id + '-checkbox'\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [attr.aria-label]=\"description\"\n [checked]=\"state\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n <!-- LABEL -->\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n <span\n *ngIf=\"\n optional === true || (required !== true && optional !== false)\n \"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n <span>{{ label }}</span>\n </ng-container>\n </ng-template>\n <i></i>\n </label>\n </div>\n\n <!-- ERRORS -->\n <ng-container *transloco=\"let t; read: scope\">\n <label\n class=\"sdv-field-notice sdv-field-notice--error\"\n [attr.for]=\"id + '-checkbox'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </label>\n </ng-container>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--gds-comp-checkbox-container-height: 1rem;--gds-comp-checkbox-container-width: 1rem;--gds-comp-checkbox-container-color: var(--gds-sys-color-surface);--gds-comp-checkbox-container-color-disabled: var(--gds-ref-pallet-base200);--gds-comp-checkbox-border-color: var(--gds-sys-color-base);--gds-comp-checkbox-border-radius: var(--gds-sys-shape-corner-small);--gds-comp-checkbox-hover-border-color: var(--gds-ref-pallet-base600);--gds-comp-checkbox-container-color-selected: var(--gds-sys-color-base);--gds-comp-checkbox-border-color-selected: var(--gds-sys-color-surface);--gds-comp-checkbox-border-color-focus: var(--gds-sys-color-blue-dark-2)}:host label.form-control input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0;z-index:-1}:host label.form-control{align-items:flex-start}:host label.form-control:has(input[type=checkbox]){padding:.6875rem 1rem .5625rem}:host label.form-control:has(input[type=checkbox]:focus-visible):focus:not(:focus-visible){box-shadow:none;outline:0}:host label.form-control:has(input[type=checkbox]:focus-visible):focus,:host label.form-control:has(input[type=checkbox]:focus-visible):focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host label.form-control input[type=checkbox]~i{margin-right:.75rem;margin-top:.0625rem;flex-shrink:0;box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color);position:relative;border-radius:var(--gds-comp-checkbox-border-radius);background-color:var(--gds-comp-checkbox-container-color);flex:0 0 auto;height:var(--gds-comp-checkbox-container-width, 1rem);width:var(--gds-comp-checkbox-container-width, 1rem);transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]~i:after{transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]:not(:checked):focus-visible~i{box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color-focus)}:host label.form-control:hover input[type=checkbox]:not(.disabled,:disabled,:checked,:indeterminate)~i{border-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control:hover input[type=checkbox]:not(:checked,:indeterminate,:disabled,.disabled)~i:after{border-color:var(--gds-comp-checkbox-hover-border-color);opacity:1}:host label.form-control input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control:hover input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control input[type=checkbox]:indeterminate~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control input[type=checkbox]:indeterminate~i:after{border-bottom:2px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:none;transform:scale(1) rotate(0);opacity:1}:host label.form-control:has(input[type=checkbox].is-invalid){border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control:has(input[type=checkbox].is-invalid){border:none;margin:0}@supports (-moz-appearance: none){:host label.form-control.is-invalid{border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control.is-invalid{border:none;margin:0}}:host label.form-control input[type=checkbox]:disabled~i,:host label.form-control input[type=checkbox].disabled~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~i::placeholder,:host label.form-control input[type=checkbox].disabled~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i,:host label.form-control input[type=checkbox].disabled:checked~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i::placeholder,:host label.form-control input[type=checkbox].disabled:checked~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i:after,:host label.form-control input[type=checkbox].disabled:checked~i:after{border-color:var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~span,:host label.form-control input[type=checkbox].disabled~span{color:var(--text-disabled-color)!important;cursor:not-allowed}:host label.form-control input[type=checkbox]:disabled~span::placeholder,:host label.form-control input[type=checkbox].disabled~span::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]~i:after{content:\"\";opacity:0;position:absolute}:host label.form-control input[type=checkbox]~i:after{border-bottom:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);height:.5rem;width:1rem;left:0;top:.1875rem;transform:scale(.601) rotate(-45deg);transform-origin:center}:host label.form-control input[type=checkbox]:checked~i:after{opacity:1}:host .form-control{padding:.75rem 1rem;border:1px solid transparent;border-radius:var(--gds-sys-shape-corner-medium);align-items:center;cursor:pointer;display:flex;flex-direction:row-reverse;font:inherit;justify-content:flex-end;position:relative;user-select:none;-webkit-user-select:none}:host .form-control:has(input:disabled){cursor:not-allowed}\n"] }]
55
- }], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
54
+ args: [{ selector: 'nggv-checkbox', template: "<!-- LOCKED INPUT -->\n<div *ngIf=\"locked && state\">\n <div\n [id]=\"id + '-checkbox'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n >\n <ng-container *ngIf=\"!labelContentTpl\">\n {{ label }}\n </ng-container>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl ?? null; context: { $implicit: value }\"\n ></ng-template>\n </div>\n</div>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div>\n <!-- CHECKBOX FIELD -->\n <label\n [id]=\"id + '-label'\"\n [attr.for]=\"id + '-checkbox'\"\n class=\"form-control\"\n *transloco=\"let t; read: scope\"\n >\n <input\n #input\n type=\"checkbox\"\n [id]=\"id + '-checkbox'\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [attr.aria-label]=\"description\"\n [checked]=\"state\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n <!-- LABEL -->\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n <span\n *ngIf=\"\n optional === true || (required !== true && optional !== false)\n \"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n <span>{{ label }}</span>\n </ng-container>\n </ng-template>\n <i></i>\n </label>\n </div>\n\n <!-- ERRORS -->\n <ng-container *transloco=\"let t; read: scope\">\n <label\n class=\"sdv-field-notice sdv-field-notice--error\"\n [attr.for]=\"id + '-checkbox'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </label>\n </ng-container>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--gds-comp-checkbox-container-height: 1rem;--gds-comp-checkbox-container-width: 1rem;--gds-comp-checkbox-container-color: var(--gds-sys-color-surface);--gds-comp-checkbox-container-color-disabled: var(--gds-ref-pallet-base200);--gds-comp-checkbox-border-color: var(--gds-sys-color-base);--gds-comp-checkbox-border-radius: var(--gds-sys-shape-corner-small);--gds-comp-checkbox-hover-border-color: var(--gds-ref-pallet-base600);--gds-comp-checkbox-container-color-selected: var(--gds-sys-color-base);--gds-comp-checkbox-border-color-selected: var(--gds-sys-color-surface);--gds-comp-checkbox-border-color-focus: var(--gds-sys-color-blue-dark-2)}:host label.form-control input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0;z-index:-1}:host label.form-control{align-items:flex-start}:host label.form-control:has(input[type=checkbox]){padding:.6875rem 1rem .5625rem}:host label.form-control:has(input[type=checkbox]:focus-visible):focus:not(:focus-visible){box-shadow:none;outline:0}:host label.form-control:has(input[type=checkbox]:focus-visible):focus,:host label.form-control:has(input[type=checkbox]:focus-visible):focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host label.form-control input[type=checkbox]~i{margin-right:.75rem;margin-top:.0625rem;flex-shrink:0;box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color);position:relative;border-radius:var(--gds-comp-checkbox-border-radius);background-color:var(--gds-comp-checkbox-container-color);flex:0 0 auto;height:var(--gds-comp-checkbox-container-width, 1rem);width:var(--gds-comp-checkbox-container-width, 1rem);transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]~i:after{transition:color .3s ease-in-out,all .3s ease-in-out}:host label.form-control input[type=checkbox]:not(:checked):focus-visible~i{box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-border-color-focus)}:host label.form-control:hover input[type=checkbox]:not(.disabled,:disabled,:checked,:indeterminate)~i{border-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control:hover input[type=checkbox]:not(:checked,:indeterminate,:disabled,.disabled)~i:after{border-color:var(--gds-comp-checkbox-hover-border-color);opacity:1}:host label.form-control input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control:hover input[type=checkbox]:checked~i{background-color:var(--gds-comp-checkbox-hover-border-color);box-shadow:inset 0 0 0 1px var(--gds-comp-checkbox-hover-border-color)}:host label.form-control input[type=checkbox]:indeterminate~i{background-color:var(--gds-comp-checkbox-container-color-selected)}:host label.form-control input[type=checkbox]:indeterminate~i:after{border-bottom:2px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:none;transform:scale(1) rotate(0);opacity:1}:host label.form-control:has(input[type=checkbox].is-invalid){border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control:has(input[type=checkbox].is-invalid){border:none;margin:0}@supports (-moz-appearance: none){:host label.form-control.is-invalid{border:.0625rem solid var(--intent-danger-background);margin-bottom:.5rem}:host .is-invalid label.form-control.is-invalid{border:none;margin:0}}:host label.form-control input[type=checkbox]:disabled~i,:host label.form-control input[type=checkbox].disabled~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~i::placeholder,:host label.form-control input[type=checkbox].disabled~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i,:host label.form-control input[type=checkbox].disabled:checked~i{background:var(--sg-form-control-bg-disabled)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i::placeholder,:host label.form-control input[type=checkbox].disabled:checked~i::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]:disabled:checked~i:after,:host label.form-control input[type=checkbox].disabled:checked~i:after{border-color:var(--border-disabled-color)}:host label.form-control input[type=checkbox]:disabled~span,:host label.form-control input[type=checkbox].disabled~span{color:var(--text-disabled-color)!important;cursor:not-allowed}:host label.form-control input[type=checkbox]:disabled~span::placeholder,:host label.form-control input[type=checkbox].disabled~span::placeholder{color:var(--text-disabled-color)}:host label.form-control input[type=checkbox]~i:after{content:\"\";opacity:0;position:absolute}:host label.form-control input[type=checkbox]~i:after{border-bottom:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);border-left:3px solid var(--gds-comp-checkbox-border-color-selected, #fff);height:.5rem;width:1rem;left:0;top:.1875rem;transform:scale(.601) rotate(-45deg);transform-origin:center}:host label.form-control input[type=checkbox]:checked~i:after{opacity:1}:host .form-control{padding:.75rem 1rem;border:1px solid transparent;border-radius:var(--gds-sys-shape-corner-medium);align-items:center;cursor:pointer;display:flex;flex-direction:row-reverse;font:inherit;justify-content:flex-end;position:relative;user-select:none;-webkit-user-select:none}:host .form-control:has(input:disabled){cursor:not-allowed}\n"] }]
55
+ }], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
56
56
  type: Self
57
57
  }, {
58
58
  type: Optional
@@ -61,7 +61,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
61
61
  }, {
62
62
  type: Inject,
63
63
  args: [TRANSLOCO_SCOPE]
64
- }] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { thook: [{
64
+ }] }, { type: i0.ChangeDetectorRef }], propDecorators: { thook: [{
65
65
  type: HostBinding,
66
66
  args: ['attr.data-thook']
67
67
  }, {
@@ -73,11 +73,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
73
73
  }] } });
74
74
 
75
75
  class NgvCheckboxModule {
76
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
77
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgvCheckboxModule, declarations: [NgvCheckboxComponent], imports: [CommonModule, NgvI18nModule], exports: [NgvCheckboxComponent] }); }
78
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvCheckboxModule, imports: [CommonModule, NgvI18nModule] }); }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgvCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
77
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NgvCheckboxModule, declarations: [NgvCheckboxComponent], imports: [CommonModule, NgvI18nModule], exports: [NgvCheckboxComponent] }); }
78
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgvCheckboxModule, imports: [CommonModule, NgvI18nModule] }); }
79
79
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvCheckboxModule, decorators: [{
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgvCheckboxModule, decorators: [{
81
81
  type: NgModule,
82
82
  args: [{
83
83
  declarations: [NgvCheckboxComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"sebgroup-green-angular-src-v-angular-checkbox.mjs","sources":["../../../../libs/angular/src/v-angular/checkbox/checkbox.component.ts","../../../../libs/angular/src/v-angular/checkbox/checkbox.component.html","../../../../libs/angular/src/v-angular/checkbox/checkbox.module.ts","../../../../libs/angular/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.ts"],"sourcesContent":["import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n Optional,\n Output,\n Self,\n SimpleChanges,\n} from '@angular/core'\nimport { NgControl } from '@angular/forms'\nimport { TRANSLOCO_SCOPE, TranslocoScope } from '@jsverse/transloco'\n\nimport { NgvBaseControlValueAccessorComponent } from '@sebgroup/green-angular/src/v-angular/base-control-value-accessor'\n\n/**\n * Checkboxes allow a user to toggle an option on or off, or make multiple choices in a set of available options.\n * https://designlibrary.sebgroup.com/components/component-checkbox\n */\n@Component({\n selector: 'nggv-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n})\nexport class NgvCheckboxComponent extends NgvBaseControlValueAccessorComponent {\n /** Special property used for selecting DOM elements during automated UI testing. */\n @HostBinding('attr.data-thook') @Input() thook = 'checkbox'\n @Input() optionalLabel = 'Optional'\n\n @Output() readonly valueChange: EventEmitter<string> =\n new EventEmitter<string>()\n\n constructor(\n @Self()\n @Optional()\n public ngControl: NgControl,\n @Optional()\n @Inject(TRANSLOCO_SCOPE)\n protected translocoScope: TranslocoScope,\n protected cdr: ChangeDetectorRef,\n ) {\n super(ngControl, translocoScope, cdr)\n }\n\n /** @internal */\n onInputChange(event: Event) {\n event.stopPropagation()\n if (this.disabled) return\n this.state = !this.state\n this.onTouched()\n this.onChange(this.state)\n }\n\n /** Writes a new value of true or false based on if argument matches this components value property. */\n writeValue(value: any): void {\n // Phantom null value on first load https://github.com/angular/angular/pull/38140\n super.writeValue(value === this.value)\n }\n\n /** Registers a callback function that is called when the child input element's value changes. */\n registerOnChange(fn: (checked: any) => any) {\n // Override default to update registry\n this.onChange = (checked) => {\n const output = checked ? this.value : null\n fn(output)\n this.valueChange.emit(output)\n }\n }\n}\n","<!-- LOCKED INPUT -->\n<div *ngIf=\"locked && state\" class=\"sdv-field-checkbox-wrap\">\n <div\n [id]=\"id + '-checkbox'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n >\n <ng-container *ngIf=\"!labelContentTpl\">\n {{ label }}\n </ng-container>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl ?? null; context: { $implicit: value }\"\n ></ng-template>\n </div>\n</div>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div class=\"sdv-field-checkbox-wrap\">\n <!-- CHECKBOX FIELD -->\n <label\n [id]=\"id + '-label'\"\n [attr.for]=\"id + '-checkbox'\"\n class=\"form-control\"\n *transloco=\"let t; read: scope\"\n >\n <input\n #input\n type=\"checkbox\"\n [id]=\"id + '-checkbox'\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [attr.aria-label]=\"description\"\n [checked]=\"state\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n <!-- LABEL -->\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n <span\n *ngIf=\"\n optional === true || (required !== true && optional !== false)\n \"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n <span>{{ label }}</span>\n </ng-container>\n </ng-template>\n <i></i>\n </label>\n </div>\n\n <!-- ERRORS -->\n <ng-container *transloco=\"let t; read: scope\">\n <label\n class=\"sdv-field-notice sdv-field-notice--error\"\n [attr.for]=\"id + '-checkbox'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </label>\n </ng-container>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { NgvI18nModule } from '@sebgroup/green-angular/src/v-angular/i18n'\nimport { NgvCheckboxComponent } from './checkbox.component'\n\n@NgModule({\n declarations: [NgvCheckboxComponent],\n imports: [CommonModule, NgvI18nModule],\n exports: [NgvCheckboxComponent],\n})\nexport class NgvCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sebgroup-green-angular-src-v-angular-checkbox.mjs","sources":["../../../../libs/angular/src/v-angular/checkbox/checkbox.component.ts","../../../../libs/angular/src/v-angular/checkbox/checkbox.component.html","../../../../libs/angular/src/v-angular/checkbox/checkbox.module.ts","../../../../libs/angular/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.ts"],"sourcesContent":["import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n Optional,\n Output,\n Self,\n SimpleChanges,\n} from '@angular/core'\nimport { NgControl } from '@angular/forms'\nimport { TRANSLOCO_SCOPE, TranslocoScope } from '@jsverse/transloco'\n\nimport { NgvBaseControlValueAccessorComponent } from '@sebgroup/green-angular/src/v-angular/base-control-value-accessor'\n\n/**\n * Checkboxes allow a user to toggle an option on or off, or make multiple choices in a set of available options.\n * https://designlibrary.sebgroup.com/components/component-checkbox\n */\n@Component({\n selector: 'nggv-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n})\nexport class NgvCheckboxComponent extends NgvBaseControlValueAccessorComponent {\n /** Special property used for selecting DOM elements during automated UI testing. */\n @HostBinding('attr.data-thook') @Input() thook = 'checkbox'\n @Input() optionalLabel = 'Optional'\n\n @Output() readonly valueChange: EventEmitter<string> =\n new EventEmitter<string>()\n\n constructor(\n @Self()\n @Optional()\n public ngControl: NgControl,\n @Optional()\n @Inject(TRANSLOCO_SCOPE)\n protected translocoScope: TranslocoScope,\n protected cdr: ChangeDetectorRef,\n ) {\n super(ngControl, translocoScope, cdr)\n }\n\n /** @internal */\n onInputChange(event: Event) {\n event.stopPropagation()\n if (this.disabled) return\n this.state = !this.state\n this.onTouched()\n this.onChange(this.state)\n }\n\n /** Writes a new value of true or false based on if argument matches this components value property. */\n writeValue(value: any): void {\n // Phantom null value on first load https://github.com/angular/angular/pull/38140\n super.writeValue(value === this.value)\n }\n\n /** Registers a callback function that is called when the child input element's value changes. */\n registerOnChange(fn: (checked: any) => any) {\n // Override default to update registry\n this.onChange = (checked) => {\n const output = checked ? this.value : null\n fn(output)\n this.valueChange.emit(output)\n }\n }\n}\n","<!-- LOCKED INPUT -->\n<div *ngIf=\"locked && state\">\n <div\n [id]=\"id + '-checkbox'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n >\n <ng-container *ngIf=\"!labelContentTpl\">\n {{ label }}\n </ng-container>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl ?? null; context: { $implicit: value }\"\n ></ng-template>\n </div>\n</div>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div>\n <!-- CHECKBOX FIELD -->\n <label\n [id]=\"id + '-label'\"\n [attr.for]=\"id + '-checkbox'\"\n class=\"form-control\"\n *transloco=\"let t; read: scope\"\n >\n <input\n #input\n type=\"checkbox\"\n [id]=\"id + '-checkbox'\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [attr.aria-label]=\"description\"\n [checked]=\"state\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n <!-- LABEL -->\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n <span\n *ngIf=\"\n optional === true || (required !== true && optional !== false)\n \"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n <span>{{ label }}</span>\n </ng-container>\n </ng-template>\n <i></i>\n </label>\n </div>\n\n <!-- ERRORS -->\n <ng-container *transloco=\"let t; read: scope\">\n <label\n class=\"sdv-field-notice sdv-field-notice--error\"\n [attr.for]=\"id + '-checkbox'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </label>\n </ng-container>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { NgvI18nModule } from '@sebgroup/green-angular/src/v-angular/i18n'\nimport { NgvCheckboxComponent } from './checkbox.component'\n\n@NgModule({\n declarations: [NgvCheckboxComponent],\n imports: [CommonModule, NgvI18nModule],\n exports: [NgvCheckboxComponent],\n})\nexport class NgvCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -39,10 +39,10 @@ class DropdownUtils {
39
39
  isGroup(option) {
40
40
  return 'options' in option;
41
41
  }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownUtils, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
43
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownUtils }); }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownUtils, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
43
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownUtils }); }
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownUtils, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownUtils, decorators: [{
46
46
  type: Injectable
47
47
  }] });
48
48
 
@@ -1 +1 @@
1
- {"version":3,"file":"sebgroup-green-angular-src-v-angular-core.mjs","sources":["../../../../libs/angular/src/v-angular/core/core.globals.ts","../../../../libs/angular/src/v-angular/core/core.utils.ts","../../../../libs/angular/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.ts"],"sourcesContent":["// We must force tsc to interpret this file as a module, resolves\n// \"Augmentations for the global scope can only be directly nested in external modules or ambient module declarations.\"\nexport {}\n\ndeclare global {\n interface Window {\n /** Counter for unique identifiers */\n nggv: {\n ids: { [namespace: string]: number; default: number }\n nextId: (namespace?: string) => string\n }\n }\n}\n\n;(() => {\n // Make sure there is an incremental ID each component can use\n if (typeof window !== 'undefined' && !window.nggv) {\n window.nggv = {\n ids: { default: -1 },\n nextId(namespace = 'default'): string {\n let id = this.ids[namespace] || 0\n if (typeof this.ids[namespace] === 'number') id++\n this.ids[namespace] = id\n return namespace === 'default'\n ? `nggv-${id}`\n : `nggv-${namespace}-${id}`\n },\n }\n }\n})()\n","import { Injectable } from '@angular/core'\n\nexport interface Option<K, V> {\n key: K\n label: V\n disabled?: boolean\n}\n\nexport interface OptionGroup<T extends Option<any, any>> {\n label: string\n options: T[]\n disabled?: boolean\n}\n\nexport type OptionBase<T extends Option<any, any>> = T | OptionGroup<T>\n\n@Injectable()\nexport class DropdownUtils<\n K = string | null,\n V = string,\n T extends Option<K, V> = Option<K, V>,\n> {\n public flattenOptions(\n options: OptionBase<T>[] | undefined,\n mustHaveLabel: boolean,\n ): T[] {\n if (!options) return [] as T[]\n return options.reduce((acc, current) => {\n if (this.isGroup(current))\n return acc.concat(this.flattenOptions(current.options, mustHaveLabel))\n if (!current.disabled && !(mustHaveLabel && !current.label))\n acc.push(current) // skip disabled\n return acc\n }, [] as T[])\n }\n\n /**\n * Returns true if argument is an {@link OptionGroup}.\n * @param option the object to check.\n */\n public isGroup(option: OptionBase<T>): option is OptionGroup<T> {\n return 'options' in option\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAcA,CAAC;AAAA,CAAC,MAAK;;IAEL,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QACjD,MAAM,CAAC,IAAI,GAAG;AACZ,YAAA,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE;YACpB,MAAM,CAAC,SAAS,GAAG,SAAS,EAAA;gBAC1B,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBACjC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ;AAAE,oBAAA,EAAE,EAAE,CAAA;AACjD,gBAAA,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;gBACxB,OAAO,SAAS,KAAK,SAAS;sBAC1B,CAAQ,KAAA,EAAA,EAAE,CAAE,CAAA;AACd,sBAAE,CAAQ,KAAA,EAAA,SAAS,CAAI,CAAA,EAAA,EAAE,EAAE,CAAA;aAC9B;SACF,CAAA;AACF,KAAA;AACH,CAAC,GAAG;;MCZS,aAAa,CAAA;IAKjB,cAAc,CACnB,OAAoC,EACpC,aAAsB,EAAA;AAEtB,QAAA,IAAI,CAAC,OAAO;AAAE,YAAA,OAAO,EAAS,CAAA;QAC9B,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,KAAI;AACrC,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AACvB,gBAAA,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAA;AACxE,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,aAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AACzD,gBAAA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACnB,YAAA,OAAO,GAAG,CAAA;SACX,EAAE,EAAS,CAAC,CAAA;KACd;AAED;;;AAGG;AACI,IAAA,OAAO,CAAC,MAAqB,EAAA;QAClC,OAAO,SAAS,IAAI,MAAM,CAAA;KAC3B;+GAzBU,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;mHAAb,aAAa,EAAA,CAAA,CAAA,EAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB,UAAU;;;AChBX;;AAEG;;;;"}
1
+ {"version":3,"file":"sebgroup-green-angular-src-v-angular-core.mjs","sources":["../../../../libs/angular/src/v-angular/core/core.globals.ts","../../../../libs/angular/src/v-angular/core/core.utils.ts","../../../../libs/angular/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.ts"],"sourcesContent":["// We must force tsc to interpret this file as a module, resolves\n// \"Augmentations for the global scope can only be directly nested in external modules or ambient module declarations.\"\nexport {}\n\ndeclare global {\n interface Window {\n /** Counter for unique identifiers */\n nggv: {\n ids: { [namespace: string]: number; default: number }\n nextId: (namespace?: string) => string\n }\n }\n}\n\n;(() => {\n // Make sure there is an incremental ID each component can use\n if (typeof window !== 'undefined' && !window.nggv) {\n window.nggv = {\n ids: { default: -1 },\n nextId(namespace = 'default'): string {\n let id = this.ids[namespace] || 0\n if (typeof this.ids[namespace] === 'number') id++\n this.ids[namespace] = id\n return namespace === 'default'\n ? `nggv-${id}`\n : `nggv-${namespace}-${id}`\n },\n }\n }\n})()\n","import { Injectable } from '@angular/core'\n\nexport interface Option<K, V> {\n key: K\n label: V\n disabled?: boolean\n}\n\nexport interface OptionGroup<T extends Option<any, any>> {\n label: string\n options: T[]\n disabled?: boolean\n}\n\nexport type OptionBase<T extends Option<any, any>> = T | OptionGroup<T>\n\n@Injectable()\nexport class DropdownUtils<\n K = string | null,\n V = string,\n T extends Option<K, V> = Option<K, V>,\n> {\n public flattenOptions(\n options: OptionBase<T>[] | undefined,\n mustHaveLabel: boolean,\n ): T[] {\n if (!options) return [] as T[]\n return options.reduce((acc, current) => {\n if (this.isGroup(current))\n return acc.concat(this.flattenOptions(current.options, mustHaveLabel))\n if (!current.disabled && !(mustHaveLabel && !current.label))\n acc.push(current) // skip disabled\n return acc\n }, [] as T[])\n }\n\n /**\n * Returns true if argument is an {@link OptionGroup}.\n * @param option the object to check.\n */\n public isGroup(option: OptionBase<T>): option is OptionGroup<T> {\n return 'options' in option\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAcA,CAAC;AAAA,CAAC,MAAK;;IAEL,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QACjD,MAAM,CAAC,IAAI,GAAG;AACZ,YAAA,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE;YACpB,MAAM,CAAC,SAAS,GAAG,SAAS,EAAA;gBAC1B,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBACjC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ;AAAE,oBAAA,EAAE,EAAE,CAAA;AACjD,gBAAA,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;gBACxB,OAAO,SAAS,KAAK,SAAS;sBAC1B,CAAQ,KAAA,EAAA,EAAE,CAAE,CAAA;AACd,sBAAE,CAAQ,KAAA,EAAA,SAAS,CAAI,CAAA,EAAA,EAAE,EAAE,CAAA;aAC9B;SACF,CAAA;KACF;AACH,CAAC,GAAG;;MCZS,aAAa,CAAA;IAKjB,cAAc,CACnB,OAAoC,EACpC,aAAsB,EAAA;AAEtB,QAAA,IAAI,CAAC,OAAO;AAAE,YAAA,OAAO,EAAS,CAAA;QAC9B,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,KAAI;AACrC,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AACvB,gBAAA,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAA;AACxE,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,aAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AACzD,gBAAA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACnB,YAAA,OAAO,GAAG,CAAA;SACX,EAAE,EAAS,CAAC,CAAA;KACd;AAED;;;AAGG;AACI,IAAA,OAAO,CAAC,MAAqB,EAAA;QAClC,OAAO,SAAS,IAAI,MAAM,CAAA;KAC3B;+GAzBU,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;mHAAb,aAAa,EAAA,CAAA,CAAA,EAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB,UAAU;;;AChBX;;AAEG;;;;"}