@sebgroup/green-angular 4.4.1 → 4.6.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 (328) hide show
  1. package/README.md +2 -2
  2. package/esm2022/index.mjs +19 -1
  3. package/esm2022/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +11 -4
  4. package/esm2022/lib/shared/on-scroll.directive.mjs +2 -2
  5. package/esm2022/src/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +11 -4
  6. package/esm2022/src/lib/shared/on-scroll.directive.mjs +2 -2
  7. package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +287 -0
  8. package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +17 -0
  9. package/esm2022/src/v-angular/base-control-value-accessor/index.mjs +3 -0
  10. package/esm2022/src/v-angular/base-control-value-accessor/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +5 -0
  11. package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.component.mjs +25 -0
  12. package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.module.mjs +20 -0
  13. package/esm2022/src/v-angular/breadcrumbs/index.mjs +3 -0
  14. package/esm2022/src/v-angular/breadcrumbs/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +5 -0
  15. package/esm2022/src/v-angular/button/button.component.mjs +108 -0
  16. package/esm2022/src/v-angular/button/button.module.mjs +20 -0
  17. package/esm2022/src/v-angular/button/index.mjs +3 -0
  18. package/esm2022/src/v-angular/button/sebgroup-green-angular-src-v-angular-button.mjs +5 -0
  19. package/esm2022/src/v-angular/card/card.component.mjs +11 -0
  20. package/esm2022/src/v-angular/card/card.module.mjs +18 -0
  21. package/esm2022/src/v-angular/card/index.mjs +3 -0
  22. package/esm2022/src/v-angular/card/sebgroup-green-angular-src-v-angular-card.mjs +5 -0
  23. package/esm2022/src/v-angular/character-countdown/character-countdown.directive.mjs +51 -0
  24. package/esm2022/src/v-angular/character-countdown/character-countdown.module.mjs +18 -0
  25. package/esm2022/src/v-angular/character-countdown/index.mjs +3 -0
  26. package/esm2022/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.mjs +5 -0
  27. package/esm2022/src/v-angular/checkbox/checkbox.component.mjs +72 -0
  28. package/esm2022/src/v-angular/checkbox/checkbox.module.mjs +19 -0
  29. package/esm2022/src/v-angular/checkbox/index.mjs +3 -0
  30. package/esm2022/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.mjs +5 -0
  31. package/esm2022/src/v-angular/core/core.globals.mjs +17 -0
  32. package/esm2022/src/v-angular/core/core.utils.mjs +28 -0
  33. package/esm2022/src/v-angular/core/index.mjs +3 -0
  34. package/esm2022/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.mjs +5 -0
  35. package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +256 -0
  36. package/esm2022/src/v-angular/dropdown/dropdown-list/index.mjs +2 -0
  37. package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +239 -0
  38. package/esm2022/src/v-angular/dropdown/dropdown.module.mjs +22 -0
  39. package/esm2022/src/v-angular/dropdown/index.mjs +6 -0
  40. package/esm2022/src/v-angular/dropdown/sebgroup-green-angular-src-v-angular-dropdown.mjs +5 -0
  41. package/esm2022/src/v-angular/dropdown/typeahead/index.mjs +3 -0
  42. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +98 -0
  43. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +85 -0
  44. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +132 -0
  45. package/esm2022/src/v-angular/dropdown/typeahead/typeahead.module.mjs +33 -0
  46. package/esm2022/src/v-angular/external-link/external-link.directive.mjs +37 -0
  47. package/esm2022/src/v-angular/external-link/external-link.module.mjs +18 -0
  48. package/esm2022/src/v-angular/external-link/index.mjs +3 -0
  49. package/esm2022/src/v-angular/external-link/sebgroup-green-angular-src-v-angular-external-link.mjs +5 -0
  50. package/esm2022/src/v-angular/i18n/i18n.json +12 -0
  51. package/esm2022/src/v-angular/i18n/i18n.module.mjs +83 -0
  52. package/esm2022/src/v-angular/i18n/i18n.test.module.mjs +89 -0
  53. package/esm2022/src/v-angular/i18n/index.mjs +3 -0
  54. package/esm2022/src/v-angular/i18n/sebgroup-green-angular-src-v-angular-i18n.mjs +5 -0
  55. package/esm2022/src/v-angular/info-circle/index.mjs +3 -0
  56. package/esm2022/src/v-angular/info-circle/info-circle.component.mjs +28 -0
  57. package/esm2022/src/v-angular/info-circle/info-circle.module.mjs +21 -0
  58. package/esm2022/src/v-angular/info-circle/sebgroup-green-angular-src-v-angular-info-circle.mjs +5 -0
  59. package/esm2022/src/v-angular/input/index.mjs +3 -0
  60. package/esm2022/src/v-angular/input/input.component.mjs +221 -0
  61. package/esm2022/src/v-angular/input/input.module.mjs +32 -0
  62. package/esm2022/src/v-angular/input/sebgroup-green-angular-src-v-angular-input.mjs +5 -0
  63. package/esm2022/src/v-angular/input-mask/config.mjs +9 -0
  64. package/esm2022/src/v-angular/input-mask/constants.mjs +2 -0
  65. package/esm2022/src/v-angular/input-mask/index.mjs +6 -0
  66. package/esm2022/src/v-angular/input-mask/input-mask-format.pipe.mjs +20 -0
  67. package/esm2022/src/v-angular/input-mask/input-mask.directive.mjs +165 -0
  68. package/esm2022/src/v-angular/input-mask/input-mask.module.mjs +35 -0
  69. package/esm2022/src/v-angular/input-mask/input-mask.types.mjs +2 -0
  70. package/esm2022/src/v-angular/input-mask/sebgroup-green-angular-src-v-angular-input-mask.mjs +5 -0
  71. package/esm2022/src/v-angular/modal/dialog/dialog.component.mjs +190 -0
  72. package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +56 -0
  73. package/esm2022/src/v-angular/modal/fold-out/fold-out.directive.mjs +19 -0
  74. package/esm2022/src/v-angular/modal/index.mjs +6 -0
  75. package/esm2022/src/v-angular/modal/modal.globals.mjs +17 -0
  76. package/esm2022/src/v-angular/modal/modal.module.mjs +40 -0
  77. package/esm2022/src/v-angular/modal/modal.types.mjs +2 -0
  78. package/esm2022/src/v-angular/modal/sebgroup-green-angular-src-v-angular-modal.mjs +5 -0
  79. package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +229 -0
  80. package/esm2022/src/v-angular/radio/index.mjs +3 -0
  81. package/esm2022/src/v-angular/radio/radio.component.mjs +130 -0
  82. package/esm2022/src/v-angular/radio/radio.module.mjs +20 -0
  83. package/esm2022/src/v-angular/radio/sebgroup-green-angular-src-v-angular-radio.mjs +5 -0
  84. package/esm2022/src/v-angular/slug/index.mjs +3 -0
  85. package/esm2022/src/v-angular/slug/sebgroup-green-angular-src-v-angular-slug.mjs +5 -0
  86. package/esm2022/src/v-angular/slug/slug.module.mjs +18 -0
  87. package/esm2022/src/v-angular/slug/slug.pipe.mjs +27 -0
  88. package/esm2022/src/v-angular/textarea/index.mjs +3 -0
  89. package/esm2022/src/v-angular/textarea/sebgroup-green-angular-src-v-angular-textarea.mjs +5 -0
  90. package/esm2022/src/v-angular/textarea/textarea.component.mjs +101 -0
  91. package/esm2022/src/v-angular/textarea/textarea.module.mjs +18 -0
  92. package/esm2022/src/v-angular/tooltip/index.mjs +3 -0
  93. package/esm2022/src/v-angular/tooltip/sebgroup-green-angular-src-v-angular-tooltip.mjs +5 -0
  94. package/esm2022/src/v-angular/tooltip/tooltip.directive.mjs +273 -0
  95. package/esm2022/src/v-angular/tooltip/tooltip.module.mjs +18 -0
  96. package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +287 -0
  97. package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +17 -0
  98. package/esm2022/v-angular/base-control-value-accessor/index.mjs +3 -0
  99. package/esm2022/v-angular/breadcrumbs/breadcrumbs.component.mjs +25 -0
  100. package/esm2022/v-angular/breadcrumbs/breadcrumbs.module.mjs +20 -0
  101. package/esm2022/v-angular/breadcrumbs/index.mjs +3 -0
  102. package/esm2022/v-angular/button/button.component.mjs +108 -0
  103. package/esm2022/v-angular/button/button.module.mjs +20 -0
  104. package/esm2022/v-angular/button/index.mjs +3 -0
  105. package/esm2022/v-angular/card/card.component.mjs +11 -0
  106. package/esm2022/v-angular/card/card.module.mjs +18 -0
  107. package/esm2022/v-angular/card/index.mjs +3 -0
  108. package/esm2022/v-angular/checkbox/checkbox.component.mjs +72 -0
  109. package/esm2022/v-angular/checkbox/checkbox.module.mjs +19 -0
  110. package/esm2022/v-angular/checkbox/index.mjs +3 -0
  111. package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +256 -0
  112. package/esm2022/v-angular/dropdown/dropdown-list/index.mjs +2 -0
  113. package/esm2022/v-angular/dropdown/dropdown.component.mjs +239 -0
  114. package/esm2022/v-angular/dropdown/dropdown.module.mjs +22 -0
  115. package/esm2022/v-angular/dropdown/index.mjs +6 -0
  116. package/esm2022/v-angular/dropdown/typeahead/index.mjs +3 -0
  117. package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +98 -0
  118. package/esm2022/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +85 -0
  119. package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +132 -0
  120. package/esm2022/v-angular/dropdown/typeahead/typeahead.module.mjs +33 -0
  121. package/esm2022/v-angular/i18n/i18n.json +12 -0
  122. package/esm2022/v-angular/i18n/i18n.module.mjs +83 -0
  123. package/esm2022/v-angular/i18n/i18n.test.module.mjs +89 -0
  124. package/esm2022/v-angular/i18n/index.mjs +3 -0
  125. package/esm2022/v-angular/info-circle/index.mjs +3 -0
  126. package/esm2022/v-angular/info-circle/info-circle.component.mjs +28 -0
  127. package/esm2022/v-angular/info-circle/info-circle.module.mjs +21 -0
  128. package/esm2022/v-angular/input/index.mjs +3 -0
  129. package/esm2022/v-angular/input/input.component.mjs +221 -0
  130. package/esm2022/v-angular/input/input.module.mjs +32 -0
  131. package/esm2022/v-angular/input-mask/config.mjs +9 -0
  132. package/esm2022/v-angular/input-mask/constants.mjs +2 -0
  133. package/esm2022/v-angular/input-mask/index.mjs +6 -0
  134. package/esm2022/v-angular/input-mask/input-mask-format.pipe.mjs +20 -0
  135. package/esm2022/v-angular/input-mask/input-mask.directive.mjs +165 -0
  136. package/esm2022/v-angular/input-mask/input-mask.module.mjs +35 -0
  137. package/esm2022/v-angular/input-mask/input-mask.types.mjs +2 -0
  138. package/esm2022/v-angular/modal/dialog/dialog.component.mjs +190 -0
  139. package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +56 -0
  140. package/esm2022/v-angular/modal/fold-out/fold-out.directive.mjs +19 -0
  141. package/esm2022/v-angular/modal/index.mjs +6 -0
  142. package/esm2022/v-angular/modal/modal.globals.mjs +17 -0
  143. package/esm2022/v-angular/modal/modal.module.mjs +40 -0
  144. package/esm2022/v-angular/modal/modal.types.mjs +2 -0
  145. package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +229 -0
  146. package/esm2022/v-angular/radio/index.mjs +3 -0
  147. package/esm2022/v-angular/radio/radio.component.mjs +130 -0
  148. package/esm2022/v-angular/radio/radio.module.mjs +20 -0
  149. package/esm2022/v-angular/textarea/index.mjs +3 -0
  150. package/esm2022/v-angular/textarea/textarea.component.mjs +101 -0
  151. package/esm2022/v-angular/textarea/textarea.module.mjs +18 -0
  152. package/esm2022/v-angular/tooltip/index.mjs +3 -0
  153. package/esm2022/v-angular/tooltip/tooltip.directive.mjs +273 -0
  154. package/esm2022/v-angular/tooltip/tooltip.module.mjs +18 -0
  155. package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs +10 -3
  156. package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs.map +1 -1
  157. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +1 -1
  158. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
  159. package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +308 -0
  160. package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs.map +1 -0
  161. package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +49 -0
  162. package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs.map +1 -0
  163. package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs +131 -0
  164. package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs.map +1 -0
  165. package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs +33 -0
  166. package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs.map +1 -0
  167. package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs +73 -0
  168. package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs.map +1 -0
  169. package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs +94 -0
  170. package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs.map +1 -0
  171. package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs +51 -0
  172. package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs.map +1 -0
  173. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +830 -0
  174. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -0
  175. package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs +58 -0
  176. package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs.map +1 -0
  177. package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs +192 -0
  178. package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs.map +1 -0
  179. package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs +53 -0
  180. package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs.map +1 -0
  181. package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs +226 -0
  182. package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs.map +1 -0
  183. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +256 -0
  184. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -0
  185. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +542 -0
  186. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -0
  187. package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs +153 -0
  188. package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs.map +1 -0
  189. package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs +49 -0
  190. package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs.map +1 -0
  191. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +122 -0
  192. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -0
  193. package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs +295 -0
  194. package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs.map +1 -0
  195. package/fesm2022/sebgroup-green-angular.mjs +3116 -17
  196. package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
  197. package/index.d.ts +18 -0
  198. package/lib/in-page-wizard/in-page-wizard-step-card.component.d.ts +2 -1
  199. package/package.json +117 -6
  200. package/src/lib/in-page-wizard/in-page-wizard-step-card.component.d.ts +2 -1
  201. package/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.d.ts +124 -0
  202. package/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.d.ts +7 -0
  203. package/src/v-angular/base-control-value-accessor/index.d.ts +2 -0
  204. package/src/v-angular/breadcrumbs/breadcrumbs.component.d.ts +18 -0
  205. package/src/v-angular/breadcrumbs/breadcrumbs.module.d.ts +10 -0
  206. package/src/v-angular/breadcrumbs/index.d.ts +2 -0
  207. package/src/v-angular/button/button.component.d.ts +62 -0
  208. package/src/v-angular/button/button.module.d.ts +10 -0
  209. package/src/v-angular/button/index.d.ts +2 -0
  210. package/src/v-angular/card/card.component.d.ts +5 -0
  211. package/src/v-angular/card/card.module.d.ts +8 -0
  212. package/src/v-angular/card/index.d.ts +2 -0
  213. package/src/v-angular/character-countdown/character-countdown.directive.d.ts +17 -0
  214. package/src/v-angular/character-countdown/character-countdown.module.d.ts +8 -0
  215. package/src/v-angular/character-countdown/index.d.ts +2 -0
  216. package/src/v-angular/checkbox/checkbox.component.d.ts +27 -0
  217. package/src/v-angular/checkbox/checkbox.module.d.ts +9 -0
  218. package/src/v-angular/checkbox/index.d.ts +2 -0
  219. package/src/v-angular/core/core.globals.d.ts +13 -0
  220. package/src/v-angular/core/core.utils.d.ts +22 -0
  221. package/src/v-angular/core/index.d.ts +2 -0
  222. package/src/v-angular/dropdown/dropdown-list/dropdown-list.component.d.ts +89 -0
  223. package/src/v-angular/dropdown/dropdown-list/index.d.ts +1 -0
  224. package/src/v-angular/dropdown/dropdown.component.d.ts +99 -0
  225. package/src/v-angular/dropdown/dropdown.module.d.ts +12 -0
  226. package/src/v-angular/dropdown/index.d.ts +5 -0
  227. package/src/v-angular/dropdown/typeahead/index.d.ts +2 -0
  228. package/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.d.ts +34 -0
  229. package/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.d.ts +34 -0
  230. package/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.d.ts +59 -0
  231. package/src/v-angular/dropdown/typeahead/typeahead.module.d.ts +11 -0
  232. package/src/v-angular/external-link/external-link.directive.d.ts +17 -0
  233. package/src/v-angular/external-link/external-link.module.d.ts +8 -0
  234. package/src/v-angular/external-link/index.d.ts +2 -0
  235. package/src/v-angular/i18n/i18n.module.d.ts +15 -0
  236. package/src/v-angular/i18n/i18n.test.module.d.ts +27 -0
  237. package/src/v-angular/i18n/index.d.ts +2 -0
  238. package/src/v-angular/info-circle/index.d.ts +2 -0
  239. package/src/v-angular/info-circle/info-circle.component.d.ts +16 -0
  240. package/src/v-angular/info-circle/info-circle.module.d.ts +10 -0
  241. package/src/v-angular/input/index.d.ts +2 -0
  242. package/src/v-angular/input/input.component.d.ts +90 -0
  243. package/src/v-angular/input/input.module.d.ts +11 -0
  244. package/src/v-angular/input-mask/config.d.ts +6 -0
  245. package/src/v-angular/input-mask/constants.d.ts +2 -0
  246. package/src/v-angular/input-mask/index.d.ts +5 -0
  247. package/src/v-angular/input-mask/input-mask-format.pipe.d.ts +8 -0
  248. package/src/v-angular/input-mask/input-mask.directive.d.ts +39 -0
  249. package/src/v-angular/input-mask/input-mask.module.d.ts +11 -0
  250. package/src/v-angular/input-mask/input-mask.types.d.ts +20 -0
  251. package/src/v-angular/modal/dialog/dialog.component.d.ts +55 -0
  252. package/src/v-angular/modal/fold-out/fold-out.component.d.ts +24 -0
  253. package/src/v-angular/modal/fold-out/fold-out.directive.d.ts +6 -0
  254. package/src/v-angular/modal/index.d.ts +5 -0
  255. package/src/v-angular/modal/modal.globals.d.ts +13 -0
  256. package/src/v-angular/modal/modal.module.d.ts +13 -0
  257. package/src/v-angular/modal/modal.types.d.ts +5 -0
  258. package/src/v-angular/modal/slide-out/slide-out.component.d.ts +76 -0
  259. package/src/v-angular/radio/index.d.ts +2 -0
  260. package/src/v-angular/radio/radio.component.d.ts +48 -0
  261. package/src/v-angular/radio/radio.module.d.ts +9 -0
  262. package/src/v-angular/slug/index.d.ts +2 -0
  263. package/src/v-angular/slug/slug.module.d.ts +8 -0
  264. package/src/v-angular/slug/slug.pipe.d.ts +12 -0
  265. package/src/v-angular/textarea/index.d.ts +2 -0
  266. package/src/v-angular/textarea/textarea.component.d.ts +44 -0
  267. package/src/v-angular/textarea/textarea.module.d.ts +8 -0
  268. package/src/v-angular/tooltip/index.d.ts +2 -0
  269. package/src/v-angular/tooltip/tooltip.directive.d.ts +106 -0
  270. package/src/v-angular/tooltip/tooltip.module.d.ts +8 -0
  271. package/v-angular/base-control-value-accessor/base-control-value-accessor.component.d.ts +124 -0
  272. package/v-angular/base-control-value-accessor/base-control-value-accessor.module.d.ts +7 -0
  273. package/v-angular/base-control-value-accessor/index.d.ts +2 -0
  274. package/v-angular/breadcrumbs/breadcrumbs.component.d.ts +18 -0
  275. package/v-angular/breadcrumbs/breadcrumbs.module.d.ts +10 -0
  276. package/v-angular/breadcrumbs/index.d.ts +2 -0
  277. package/v-angular/button/button.component.d.ts +62 -0
  278. package/v-angular/button/button.module.d.ts +10 -0
  279. package/v-angular/button/index.d.ts +2 -0
  280. package/v-angular/card/card.component.d.ts +5 -0
  281. package/v-angular/card/card.module.d.ts +8 -0
  282. package/v-angular/card/index.d.ts +2 -0
  283. package/v-angular/checkbox/checkbox.component.d.ts +27 -0
  284. package/v-angular/checkbox/checkbox.module.d.ts +9 -0
  285. package/v-angular/checkbox/index.d.ts +2 -0
  286. package/v-angular/dropdown/dropdown-list/dropdown-list.component.d.ts +89 -0
  287. package/v-angular/dropdown/dropdown-list/index.d.ts +1 -0
  288. package/v-angular/dropdown/dropdown.component.d.ts +99 -0
  289. package/v-angular/dropdown/dropdown.module.d.ts +12 -0
  290. package/v-angular/dropdown/index.d.ts +5 -0
  291. package/v-angular/dropdown/typeahead/index.d.ts +2 -0
  292. package/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.d.ts +34 -0
  293. package/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.d.ts +34 -0
  294. package/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.d.ts +59 -0
  295. package/v-angular/dropdown/typeahead/typeahead.module.d.ts +11 -0
  296. package/v-angular/i18n/i18n.module.d.ts +15 -0
  297. package/v-angular/i18n/i18n.test.module.d.ts +27 -0
  298. package/v-angular/i18n/index.d.ts +2 -0
  299. package/v-angular/info-circle/index.d.ts +2 -0
  300. package/v-angular/info-circle/info-circle.component.d.ts +16 -0
  301. package/v-angular/info-circle/info-circle.module.d.ts +10 -0
  302. package/v-angular/input/index.d.ts +2 -0
  303. package/v-angular/input/input.component.d.ts +90 -0
  304. package/v-angular/input/input.module.d.ts +11 -0
  305. package/v-angular/input-mask/config.d.ts +6 -0
  306. package/v-angular/input-mask/constants.d.ts +2 -0
  307. package/v-angular/input-mask/index.d.ts +5 -0
  308. package/v-angular/input-mask/input-mask-format.pipe.d.ts +8 -0
  309. package/v-angular/input-mask/input-mask.directive.d.ts +39 -0
  310. package/v-angular/input-mask/input-mask.module.d.ts +11 -0
  311. package/v-angular/input-mask/input-mask.types.d.ts +20 -0
  312. package/v-angular/modal/dialog/dialog.component.d.ts +55 -0
  313. package/v-angular/modal/fold-out/fold-out.component.d.ts +24 -0
  314. package/v-angular/modal/fold-out/fold-out.directive.d.ts +6 -0
  315. package/v-angular/modal/index.d.ts +5 -0
  316. package/v-angular/modal/modal.globals.d.ts +13 -0
  317. package/v-angular/modal/modal.module.d.ts +13 -0
  318. package/v-angular/modal/modal.types.d.ts +5 -0
  319. package/v-angular/modal/slide-out/slide-out.component.d.ts +76 -0
  320. package/v-angular/radio/index.d.ts +2 -0
  321. package/v-angular/radio/radio.component.d.ts +48 -0
  322. package/v-angular/radio/radio.module.d.ts +9 -0
  323. package/v-angular/textarea/index.d.ts +2 -0
  324. package/v-angular/textarea/textarea.component.d.ts +44 -0
  325. package/v-angular/textarea/textarea.module.d.ts +8 -0
  326. package/v-angular/tooltip/index.d.ts +2 -0
  327. package/v-angular/tooltip/tooltip.directive.d.ts +106 -0
  328. package/v-angular/tooltip/tooltip.module.d.ts +8 -0
@@ -0,0 +1,295 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Directive, Input, Output, HostListener, NgModule } from '@angular/core';
3
+ import { NgvI18nModule } from '@sebgroup/green-angular/src/v-angular/i18n';
4
+
5
+ /**
6
+ * A tooltip is a text label that acts as a helper to a specific item.
7
+ * Recommended to use value `top` or `bottom` with `placement` for responsive design.
8
+ * Dynamic resizing and tooltip position are a work in progress.
9
+ * https://designlibrary.sebgroup.com/components/component-tooltip
10
+ */
11
+ class NgvTooltipDirective {
12
+ /** @internal Check if changes should trigger a re-render */
13
+ static shouldUpdate(change) {
14
+ return (change &&
15
+ !change.firstChange &&
16
+ change.previousValue !== change.currentValue);
17
+ }
18
+ constructor(anchorElementRef, renderer) {
19
+ this.anchorElementRef = anchorElementRef;
20
+ this.renderer = renderer;
21
+ /** Special property used for selecting DOM elements during automated UI testing. */
22
+ this.thook = 'tooltip';
23
+ /** The side of the anchor which the tooltip will be rendered.
24
+ * Recommended `top` and `bottom` for responsive designs as these are more stable.
25
+ */
26
+ this.placement = 'top';
27
+ /** Initial state and subsequent updates on wether the tooltip is visible. */
28
+ this.shown = false;
29
+ /** How far off from the text the tooltip will be rendered. */
30
+ this.offset = 10;
31
+ /** How frequently the tooltip will be re-rendered when the page size changes. */
32
+ this.resizeThrottle = 50;
33
+ /** Numeric max-width for tooltip. */
34
+ this.maxWidth = 343;
35
+ /** Emits a show event triggered changing visibility state of the tooltip. */
36
+ this.ngvShow = new EventEmitter();
37
+ /** Emits a hide event triggered changing visibility state of the tooltip. */
38
+ this.ngvHide = new EventEmitter();
39
+ /** @internal */
40
+ this.timeout = 0;
41
+ this.anchorElement = this.anchorElementRef.nativeElement;
42
+ this.parentElement = document.body;
43
+ }
44
+ ngAfterViewInit() {
45
+ // Set a timeout to allow view to fully render before creating tooltip.
46
+ setTimeout(() => (this.shown ? this.show(true) : this.hide(true)));
47
+ }
48
+ ngOnChanges(changes) {
49
+ if (NgvTooltipDirective.shouldUpdate(changes.ngvTooltip) ||
50
+ NgvTooltipDirective.shouldUpdate(changes.placement) ||
51
+ NgvTooltipDirective.shouldUpdate(changes.thook)) {
52
+ this.shown ? this.show(true) : this.hide(true);
53
+ }
54
+ if (NgvTooltipDirective.shouldUpdate(changes.shown)) {
55
+ this.shown ? this.show() : this.hide();
56
+ }
57
+ if (NgvTooltipDirective.shouldUpdate(changes.offset)) {
58
+ this.updatePosition();
59
+ }
60
+ }
61
+ ngOnDestroy() {
62
+ this.hide(true);
63
+ }
64
+ /** @internal */
65
+ onMouseEnter() {
66
+ this.show();
67
+ }
68
+ /** @internal */
69
+ onMouseLeave() {
70
+ this.hide();
71
+ }
72
+ /** @internal */
73
+ resize() {
74
+ if (this.timeout)
75
+ return;
76
+ this.timeout = window.setTimeout(() => {
77
+ this.timeout = 0;
78
+ this.updatePosition();
79
+ }, this.resizeThrottle);
80
+ }
81
+ /**
82
+ * Sets the visibility state of the tooltip to true and creates a new tooltip if it doesn't exist or `recreate` is set.
83
+ * @param recreate if set to true, destroy any existing tooltip and create a new one.
84
+ */
85
+ show(recreate = false) {
86
+ // Require tooltip text to create
87
+ if (!this.ngvTooltip || this.ngvTooltip.length === 0)
88
+ return;
89
+ if (recreate || !this.tooltipElement) {
90
+ this.hide(true);
91
+ this.create(this.ngvTooltip);
92
+ }
93
+ else {
94
+ this.renderer.appendChild(this.parentElement, this.tooltipElement);
95
+ }
96
+ this.updatePosition();
97
+ this.shown = true;
98
+ this.ngvShow.emit(this.tooltipElement);
99
+ }
100
+ /**
101
+ * Sets the visibility state of the tooltip to false and destroys an existing tooltip if `destroy` is set.
102
+ * @param destroy if set to true, destroy any existing tooltip.
103
+ */
104
+ hide(destroy = false) {
105
+ if (!this.tooltipElement)
106
+ return;
107
+ if (this.parentElement.contains(this.tooltipElement))
108
+ this.renderer.removeChild(this.parentElement, this.tooltipElement);
109
+ if (destroy)
110
+ this.destroy();
111
+ this.shown = false;
112
+ this.ngvHide.emit(this.tooltipElement);
113
+ }
114
+ /**
115
+ * @internal
116
+ * Creates a new tooltip with the set placement and a given text as its body.
117
+ * @param text the string to be displayed in the tooltip body.
118
+ */
119
+ create(text) {
120
+ this.tooltipElement = this.renderer.createElement('div');
121
+ this.renderer.addClass(this.tooltipElement, 'gds-tooltip');
122
+ this.renderer.setAttribute(this.tooltipElement, 'data-thook', this.thook);
123
+ this.renderer.setStyle(this.tooltipElement, 'position', 'absolute');
124
+ this.renderer.setStyle(this.tooltipElement, 'z-index', '1040');
125
+ this.renderer.setStyle(this.tooltipElement, 'border-radius', '.25rem');
126
+ this.renderer.setStyle(this.tooltipElement, 'padding', '.5rem 1rem');
127
+ const relativeMaxWidth = this.pxToRem(this.maxWidth);
128
+ this.renderer.setStyle(this.tooltipElement, 'max-width', relativeMaxWidth);
129
+ this.renderer.appendChild(this.tooltipElement, this.renderer.createText(text));
130
+ // add tooltip to DOM
131
+ this.renderer.appendChild(this.parentElement, this.tooltipElement);
132
+ this.arrowElement = this.renderer.createElement('div');
133
+ this.renderer.addClass(this.arrowElement, `gds-tooltip__arrow-${this.placement}`);
134
+ // add arrow to tooltip element
135
+ this.renderer.appendChild(this.tooltipElement, this.arrowElement);
136
+ }
137
+ /**
138
+ * @internal
139
+ * Destroys the current tooltip by un-setting variables, should only be used after detaching elements from the DOM.
140
+ */
141
+ destroy() {
142
+ this.tooltipElement = undefined;
143
+ this.arrowElement = undefined;
144
+ }
145
+ /**
146
+ * @internal
147
+ * Recalculates the position of the tooltip.
148
+ */
149
+ updatePosition() {
150
+ if (!this.tooltipElement || !this.arrowElement)
151
+ return;
152
+ const scrollPos = window.pageYOffset ||
153
+ document.documentElement.scrollTop ||
154
+ this.parentElement.scrollTop ||
155
+ 0;
156
+ const anchorRect = this.anchorElement.getBoundingClientRect();
157
+ const tooltipRect = this.tooltipElement.getBoundingClientRect();
158
+ const arrowRect = this.arrowElement.getBoundingClientRect();
159
+ switch (this.placement) {
160
+ case 'top':
161
+ this.alignVertical(true, scrollPos, anchorRect, tooltipRect.width, tooltipRect.height, arrowRect.width);
162
+ break;
163
+ case 'bottom':
164
+ this.alignVertical(false, scrollPos, anchorRect, tooltipRect.width, tooltipRect.height, arrowRect.width);
165
+ break;
166
+ case 'left':
167
+ this.alignHorizontal(true, scrollPos, anchorRect, tooltipRect.height);
168
+ break;
169
+ case 'right':
170
+ this.alignHorizontal(false, scrollPos, anchorRect, tooltipRect.height);
171
+ break;
172
+ default:
173
+ return;
174
+ }
175
+ }
176
+ /**
177
+ * @internal
178
+ * Calculates and set the position of the tooltip when the placement is `top` or `bottom`.
179
+ */
180
+ alignVertical(above, scrollPos, anchor, tooltipWidth, tooltipHeight, arrowWidth) {
181
+ const width = this.parentElement.clientWidth;
182
+ const anchorMidX = anchor.left + anchor.width / 2;
183
+ const tooltip = {};
184
+ const arrow = {};
185
+ if (above)
186
+ tooltip.top = anchor.top - tooltipHeight - this.offset + scrollPos;
187
+ else
188
+ tooltip.top = anchor.bottom + this.offset + scrollPos;
189
+ if (anchorMidX < width / 2) {
190
+ tooltip.left = Math.max(0, anchorMidX - tooltipWidth / 2);
191
+ arrow.left = anchorMidX - tooltip.left;
192
+ }
193
+ else {
194
+ tooltip.right = Math.max(0, width - (anchorMidX + tooltipWidth / 2));
195
+ arrow.right = width - anchorMidX - tooltip.right - arrowWidth;
196
+ }
197
+ this.setStyle(tooltip, arrow);
198
+ }
199
+ /**
200
+ * @internal
201
+ * Calculates and set the position of the tooltip when the placement is `left` or `right`.
202
+ */
203
+ alignHorizontal(before, scrollPos, anchor, tooltipHeight) {
204
+ const width = this.parentElement.clientWidth;
205
+ const top = anchor.top + (anchor.height - tooltipHeight) / 2 + scrollPos;
206
+ const tooltip = { top };
207
+ const arrow = { top: tooltipHeight / 2 };
208
+ if (before)
209
+ tooltip.right = width - anchor.left + this.offset;
210
+ else
211
+ tooltip.left = anchor.right + this.offset;
212
+ this.setStyle(tooltip, arrow);
213
+ }
214
+ /**
215
+ * @internal
216
+ * Updates the CSS properties for the tooltip position.
217
+ */
218
+ setStyle(tooltip, arrow) {
219
+ // Tooltip
220
+ Object.entries(tooltip).forEach(([prop, value]) => {
221
+ const position = this.pxToRem(value);
222
+ this.renderer.setStyle(this.tooltipElement, prop, position);
223
+ });
224
+ // Arrow
225
+ Object.entries(arrow).forEach(([prop, value]) => {
226
+ const position = this.pxToRem(value);
227
+ this.renderer.setStyle(this.arrowElement, prop, position);
228
+ });
229
+ }
230
+ pxToRem(value) {
231
+ const fontSizePx = window
232
+ ?.getComputedStyle(this.parentElement)
233
+ ?.getPropertyValue('font-size');
234
+ const fontSizeNumberMatch = fontSizePx?.match(/\d{1,}/);
235
+ const fontSize = fontSizeNumberMatch ? +fontSizeNumberMatch[0] : 16;
236
+ const remValue = value / fontSize;
237
+ return `${remValue}rem`;
238
+ }
239
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
240
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgvTooltipDirective, selector: "[ngvTooltip]", inputs: { ngvTooltip: "ngvTooltip", thook: "thook", placement: "placement", shown: "shown", offset: "offset", resizeThrottle: "resizeThrottle", maxWidth: "maxWidth" }, outputs: { ngvShow: "ngvShow", ngvHide: "ngvHide" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "window:resize": "resize()" } }, usesOnChanges: true, ngImport: i0 }); }
241
+ }
242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvTooltipDirective, decorators: [{
243
+ type: Directive,
244
+ args: [{
245
+ selector: '[ngvTooltip]',
246
+ }]
247
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { ngvTooltip: [{
248
+ type: Input
249
+ }], thook: [{
250
+ type: Input
251
+ }], placement: [{
252
+ type: Input
253
+ }], shown: [{
254
+ type: Input
255
+ }], offset: [{
256
+ type: Input
257
+ }], resizeThrottle: [{
258
+ type: Input
259
+ }], maxWidth: [{
260
+ type: Input
261
+ }], ngvShow: [{
262
+ type: Output
263
+ }], ngvHide: [{
264
+ type: Output
265
+ }], onMouseEnter: [{
266
+ type: HostListener,
267
+ args: ['mouseenter']
268
+ }], onMouseLeave: [{
269
+ type: HostListener,
270
+ args: ['mouseleave']
271
+ }], resize: [{
272
+ type: HostListener,
273
+ args: ['window:resize']
274
+ }] } });
275
+
276
+ class NgvTooltipModule {
277
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
278
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgvTooltipModule, declarations: [NgvTooltipDirective], imports: [NgvI18nModule], exports: [NgvTooltipDirective] }); }
279
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvTooltipModule, imports: [NgvI18nModule] }); }
280
+ }
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvTooltipModule, decorators: [{
282
+ type: NgModule,
283
+ args: [{
284
+ declarations: [NgvTooltipDirective],
285
+ exports: [NgvTooltipDirective],
286
+ imports: [NgvI18nModule],
287
+ }]
288
+ }] });
289
+
290
+ /**
291
+ * Generated bundle index. Do not edit.
292
+ */
293
+
294
+ export { NgvTooltipDirective, NgvTooltipModule };
295
+ //# sourceMappingURL=sebgroup-green-angular-src-v-angular-tooltip.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sebgroup-green-angular-src-v-angular-tooltip.mjs","sources":["../../../../libs/angular/src/v-angular/tooltip/tooltip.directive.ts","../../../../libs/angular/src/v-angular/tooltip/tooltip.module.ts","../../../../libs/angular/src/v-angular/tooltip/sebgroup-green-angular-src-v-angular-tooltip.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n Renderer2,\n SimpleChange,\n SimpleChanges,\n} from '@angular/core'\n\nexport type Placement = 'top' | 'right' | 'bottom' | 'left'\n\ntype Position = {\n top?: number\n right?: number\n bottom?: number\n left?: number\n}\n\n/**\n * A tooltip is a text label that acts as a helper to a specific item.\n * Recommended to use value `top` or `bottom` with `placement` for responsive design.\n * Dynamic resizing and tooltip position are a work in progress.\n * https://designlibrary.sebgroup.com/components/component-tooltip\n */\n@Directive({\n selector: '[ngvTooltip]',\n})\nexport class NgvTooltipDirective\n implements AfterViewInit, OnChanges, OnDestroy\n{\n /** The text that will be shown in the tooltip. */\n @Input() ngvTooltip?: string\n /** Special property used for selecting DOM elements during automated UI testing. */\n @Input() thook = 'tooltip'\n /** The side of the anchor which the tooltip will be rendered.\n * Recommended `top` and `bottom` for responsive designs as these are more stable.\n */\n @Input() placement: Placement = 'top'\n /** Initial state and subsequent updates on wether the tooltip is visible. */\n @Input() shown = false\n /** How far off from the text the tooltip will be rendered. */\n @Input() offset = 10\n /** How frequently the tooltip will be re-rendered when the page size changes. */\n @Input() resizeThrottle = 50\n /** Numeric max-width for tooltip. */\n @Input() maxWidth = 343\n\n /** Emits a show event triggered changing visibility state of the tooltip. */\n @Output() ngvShow = new EventEmitter<HTMLElement>()\n /** Emits a hide event triggered changing visibility state of the tooltip. */\n @Output() ngvHide = new EventEmitter<HTMLElement>()\n\n /** @internal */\n protected timeout = 0\n\n /** @internal */\n protected parentElement: HTMLElement\n\n /** @internal */\n protected anchorElement: HTMLElement\n\n /** @internal */\n protected tooltipElement: HTMLElement | undefined\n\n /** @internal */\n protected arrowElement: HTMLElement | undefined\n\n /** @internal Check if changes should trigger a re-render */\n static shouldUpdate(change: SimpleChange) {\n return (\n change &&\n !change.firstChange &&\n change.previousValue !== change.currentValue\n )\n }\n\n constructor(\n private anchorElementRef: ElementRef,\n private renderer: Renderer2,\n ) {\n this.anchorElement = this.anchorElementRef.nativeElement\n this.parentElement = document.body\n }\n\n ngAfterViewInit() {\n // Set a timeout to allow view to fully render before creating tooltip.\n setTimeout(() => (this.shown ? this.show(true) : this.hide(true)))\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (\n NgvTooltipDirective.shouldUpdate(changes.ngvTooltip) ||\n NgvTooltipDirective.shouldUpdate(changes.placement) ||\n NgvTooltipDirective.shouldUpdate(changes.thook)\n ) {\n this.shown ? this.show(true) : this.hide(true)\n }\n\n if (NgvTooltipDirective.shouldUpdate(changes.shown)) {\n this.shown ? this.show() : this.hide()\n }\n\n if (NgvTooltipDirective.shouldUpdate(changes.offset)) {\n this.updatePosition()\n }\n }\n\n ngOnDestroy() {\n this.hide(true)\n }\n\n /** @internal */\n @HostListener('mouseenter')\n onMouseEnter() {\n this.show()\n }\n\n /** @internal */\n @HostListener('mouseleave')\n onMouseLeave() {\n this.hide()\n }\n\n /** @internal */\n @HostListener('window:resize')\n resize() {\n if (this.timeout) return\n this.timeout = window.setTimeout(() => {\n this.timeout = 0\n this.updatePosition()\n }, this.resizeThrottle)\n }\n\n /**\n * Sets the visibility state of the tooltip to true and creates a new tooltip if it doesn't exist or `recreate` is set.\n * @param recreate if set to true, destroy any existing tooltip and create a new one.\n */\n show(recreate = false) {\n // Require tooltip text to create\n if (!this.ngvTooltip || this.ngvTooltip.length === 0) return\n\n if (recreate || !this.tooltipElement) {\n this.hide(true)\n this.create(this.ngvTooltip)\n } else {\n this.renderer.appendChild(this.parentElement, this.tooltipElement)\n }\n\n this.updatePosition()\n this.shown = true\n this.ngvShow.emit(this.tooltipElement)\n }\n\n /**\n * Sets the visibility state of the tooltip to false and destroys an existing tooltip if `destroy` is set.\n * @param destroy if set to true, destroy any existing tooltip.\n */\n hide(destroy = false) {\n if (!this.tooltipElement) return\n if (this.parentElement.contains(this.tooltipElement))\n this.renderer.removeChild(this.parentElement, this.tooltipElement)\n if (destroy) this.destroy()\n this.shown = false\n this.ngvHide.emit(this.tooltipElement)\n }\n\n /**\n * @internal\n * Creates a new tooltip with the set placement and a given text as its body.\n * @param text the string to be displayed in the tooltip body.\n */\n create(text: string) {\n this.tooltipElement = this.renderer.createElement('div')\n this.renderer.addClass(this.tooltipElement, 'gds-tooltip')\n this.renderer.setAttribute(this.tooltipElement, 'data-thook', this.thook)\n this.renderer.setStyle(this.tooltipElement, 'position', 'absolute')\n this.renderer.setStyle(this.tooltipElement, 'z-index', '1040')\n this.renderer.setStyle(this.tooltipElement, 'border-radius', '.25rem')\n this.renderer.setStyle(this.tooltipElement, 'padding', '.5rem 1rem')\n const relativeMaxWidth = this.pxToRem(this.maxWidth)\n this.renderer.setStyle(this.tooltipElement, 'max-width', relativeMaxWidth)\n this.renderer.appendChild(\n this.tooltipElement,\n this.renderer.createText(text),\n )\n\n // add tooltip to DOM\n this.renderer.appendChild(this.parentElement, this.tooltipElement)\n\n this.arrowElement = this.renderer.createElement('div')\n this.renderer.addClass(\n this.arrowElement,\n `gds-tooltip__arrow-${this.placement}`,\n )\n\n // add arrow to tooltip element\n this.renderer.appendChild(this.tooltipElement, this.arrowElement)\n }\n\n /**\n * @internal\n * Destroys the current tooltip by un-setting variables, should only be used after detaching elements from the DOM.\n */\n destroy() {\n this.tooltipElement = undefined\n this.arrowElement = undefined\n }\n\n /**\n * @internal\n * Recalculates the position of the tooltip.\n */\n updatePosition() {\n if (!this.tooltipElement || !this.arrowElement) return\n const scrollPos =\n window.pageYOffset ||\n document.documentElement.scrollTop ||\n this.parentElement.scrollTop ||\n 0\n const anchorRect = this.anchorElement.getBoundingClientRect()\n const tooltipRect = this.tooltipElement.getBoundingClientRect()\n const arrowRect = this.arrowElement.getBoundingClientRect()\n\n switch (this.placement) {\n case 'top':\n this.alignVertical(\n true,\n scrollPos,\n anchorRect,\n tooltipRect.width,\n tooltipRect.height,\n arrowRect.width,\n )\n break\n\n case 'bottom':\n this.alignVertical(\n false,\n scrollPos,\n anchorRect,\n tooltipRect.width,\n tooltipRect.height,\n arrowRect.width,\n )\n break\n\n case 'left':\n this.alignHorizontal(true, scrollPos, anchorRect, tooltipRect.height)\n break\n\n case 'right':\n this.alignHorizontal(false, scrollPos, anchorRect, tooltipRect.height)\n break\n\n default:\n return\n }\n }\n\n /**\n * @internal\n * Calculates and set the position of the tooltip when the placement is `top` or `bottom`.\n */\n alignVertical(\n above: boolean,\n scrollPos: number,\n anchor: DOMRect,\n tooltipWidth: number,\n tooltipHeight: number,\n arrowWidth: number,\n ) {\n const width = this.parentElement.clientWidth\n const anchorMidX = anchor.left + anchor.width / 2\n const tooltip: Position = {}\n const arrow: Position = {}\n\n if (above)\n tooltip.top = anchor.top - tooltipHeight - this.offset + scrollPos\n else tooltip.top = anchor.bottom + this.offset + scrollPos\n\n if (anchorMidX < width / 2) {\n tooltip.left = Math.max(0, anchorMidX - tooltipWidth / 2)\n arrow.left = anchorMidX - tooltip.left\n } else {\n tooltip.right = Math.max(0, width - (anchorMidX + tooltipWidth / 2))\n arrow.right = width - anchorMidX - tooltip.right - arrowWidth\n }\n\n this.setStyle(tooltip, arrow)\n }\n\n /**\n * @internal\n * Calculates and set the position of the tooltip when the placement is `left` or `right`.\n */\n alignHorizontal(\n before: boolean,\n scrollPos: number,\n anchor: DOMRect,\n tooltipHeight: number,\n ) {\n const width = this.parentElement.clientWidth\n const top = anchor.top + (anchor.height - tooltipHeight) / 2 + scrollPos\n const tooltip: Position = { top }\n const arrow: Position = { top: tooltipHeight / 2 }\n\n if (before) tooltip.right = width - anchor.left + this.offset\n else tooltip.left = anchor.right + this.offset\n\n this.setStyle(tooltip, arrow)\n }\n\n /**\n * @internal\n * Updates the CSS properties for the tooltip position.\n */\n setStyle(tooltip: Position, arrow: Position) {\n // Tooltip\n Object.entries(tooltip).forEach(([prop, value]) => {\n const position = this.pxToRem(value)\n this.renderer.setStyle(this.tooltipElement, prop, position)\n })\n\n // Arrow\n Object.entries(arrow).forEach(([prop, value]) => {\n const position = this.pxToRem(value)\n this.renderer.setStyle(this.arrowElement, prop, position)\n })\n }\n\n private pxToRem(value: number): string {\n const fontSizePx = window\n ?.getComputedStyle(this.parentElement)\n ?.getPropertyValue('font-size')\n const fontSizeNumberMatch = fontSizePx?.match(/\\d{1,}/)\n const fontSize = fontSizeNumberMatch ? +fontSizeNumberMatch[0] : 16\n const remValue = value / fontSize\n return `${remValue}rem`\n }\n}\n","import { NgModule } from '@angular/core'\nimport { NgvI18nModule } from '@sebgroup/green-angular/src/v-angular/i18n'\nimport { NgvTooltipDirective } from './tooltip.directive'\n\n@NgModule({\n declarations: [NgvTooltipDirective],\n exports: [NgvTooltipDirective],\n imports: [NgvI18nModule],\n})\nexport class NgvTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}