valtech-components 2.0.821 → 2.0.823

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 (817) hide show
  1. package/esm2022/lib/components/atoms/avatar/avatar.component.mjs +94 -0
  2. package/esm2022/lib/components/atoms/avatar/types.mjs +2 -0
  3. package/esm2022/lib/components/atoms/box/box.component.mjs +88 -0
  4. package/esm2022/lib/components/atoms/box/types.mjs +2 -0
  5. package/esm2022/lib/components/atoms/button/button.component.mjs +174 -0
  6. package/esm2022/lib/components/atoms/button/factory.mjs +217 -0
  7. package/esm2022/lib/components/atoms/container/container.component.mjs +52 -0
  8. package/esm2022/lib/components/atoms/container/types.mjs +2 -0
  9. package/esm2022/lib/components/atoms/countdown/countdown.component.mjs +340 -0
  10. package/esm2022/lib/components/atoms/countdown/types.mjs +27 -0
  11. package/esm2022/lib/components/atoms/display/display.component.mjs +51 -0
  12. package/esm2022/lib/components/atoms/display/types.mjs +2 -0
  13. package/esm2022/lib/components/atoms/divider/divider.component.mjs +27 -0
  14. package/esm2022/lib/components/atoms/divider/types.mjs +2 -0
  15. package/esm2022/lib/components/atoms/fab/fab.component.mjs +190 -0
  16. package/esm2022/lib/components/atoms/fab/types.mjs +2 -0
  17. package/esm2022/lib/components/atoms/glass/glass.component.mjs +125 -0
  18. package/esm2022/lib/components/atoms/glass/types.mjs +2 -0
  19. package/esm2022/lib/components/atoms/glow/glow.component.mjs +95 -0
  20. package/esm2022/lib/components/atoms/glow/types.mjs +2 -0
  21. package/esm2022/lib/components/atoms/horizontal-scroll/horizontal-scroll.component.mjs +82 -0
  22. package/esm2022/lib/components/atoms/horizontal-scroll/types.mjs +2 -0
  23. package/esm2022/lib/components/atoms/href/href.component.mjs +62 -0
  24. package/esm2022/lib/components/atoms/href/types.mjs +2 -0
  25. package/esm2022/lib/components/atoms/icon/icon.component.mjs +29 -0
  26. package/esm2022/lib/components/atoms/icon/types.mjs +2 -0
  27. package/esm2022/lib/components/atoms/image/image.component.mjs +507 -0
  28. package/esm2022/lib/components/atoms/image/types.mjs +2 -0
  29. package/esm2022/lib/components/atoms/pattern/motifs.mjs +147 -0
  30. package/esm2022/lib/components/atoms/pattern/pattern.component.mjs +178 -0
  31. package/esm2022/lib/components/atoms/pattern/types.mjs +2 -0
  32. package/esm2022/lib/components/atoms/price-tag/price-tag.component.mjs +235 -0
  33. package/esm2022/lib/components/atoms/price-tag/types.mjs +15 -0
  34. package/esm2022/lib/components/atoms/progress-bar/progress-bar.component.mjs +91 -0
  35. package/esm2022/lib/components/atoms/progress-bar/types.mjs +2 -0
  36. package/esm2022/lib/components/atoms/progress-ring/progress-ring.component.mjs +149 -0
  37. package/esm2022/lib/components/atoms/progress-ring/types.mjs +2 -0
  38. package/esm2022/lib/components/atoms/qr-code/qr-code.component.mjs +394 -0
  39. package/esm2022/lib/components/atoms/qr-code/types.mjs +2 -0
  40. package/esm2022/lib/components/atoms/rights-footer/rights-footer.component.mjs +108 -0
  41. package/esm2022/lib/components/atoms/rights-footer/types.mjs +2 -0
  42. package/esm2022/lib/components/atoms/skeleton/skeleton.component.mjs +193 -0
  43. package/esm2022/lib/components/atoms/skeleton/types.mjs +13 -0
  44. package/esm2022/lib/components/atoms/text/text.component.mjs +132 -0
  45. package/esm2022/lib/components/atoms/text/types.mjs +2 -0
  46. package/esm2022/lib/components/atoms/title/title.component.mjs +68 -0
  47. package/esm2022/lib/components/atoms/title/types.mjs +22 -0
  48. package/esm2022/lib/components/atoms/user-avatar/types.mjs +2 -0
  49. package/esm2022/lib/components/atoms/user-avatar/user-avatar.component.mjs +209 -0
  50. package/esm2022/lib/components/molecules/accordion/accordion.component.mjs +120 -0
  51. package/esm2022/lib/components/molecules/accordion/types.mjs +2 -0
  52. package/esm2022/lib/components/molecules/action-card/action-card.component.mjs +273 -0
  53. package/esm2022/lib/components/molecules/action-card/types.mjs +11 -0
  54. package/esm2022/lib/components/molecules/action-header/action-header.component.mjs +55 -0
  55. package/esm2022/lib/components/molecules/action-header/types.mjs +2 -0
  56. package/esm2022/lib/components/molecules/ad-slot/ad-slot.component.mjs +274 -0
  57. package/esm2022/lib/components/molecules/alert-box/alert-box.component.mjs +119 -0
  58. package/esm2022/lib/components/molecules/alert-box/types.mjs +2 -0
  59. package/esm2022/lib/components/molecules/breadcrumb/breadcrumb.component.mjs +130 -0
  60. package/esm2022/lib/components/molecules/breadcrumb/types.mjs +2 -0
  61. package/esm2022/lib/components/molecules/button-group/button-group.component.mjs +63 -0
  62. package/esm2022/lib/components/molecules/button-group/types.mjs +2 -0
  63. package/esm2022/lib/components/molecules/card/card.component.mjs +450 -0
  64. package/esm2022/lib/components/molecules/card/types.mjs +16 -0
  65. package/esm2022/lib/components/molecules/check-input/check-input.component.mjs +82 -0
  66. package/esm2022/lib/components/molecules/checkbox-radio-input/checkbox-radio-input.component.mjs +79 -0
  67. package/esm2022/lib/components/molecules/chip-group/chip-group.component.mjs +166 -0
  68. package/esm2022/lib/components/molecules/chip-group/types.mjs +2 -0
  69. package/esm2022/lib/components/molecules/code-display/code-display.component.mjs +115 -0
  70. package/esm2022/lib/components/molecules/code-display/types.mjs +2 -0
  71. package/esm2022/lib/components/molecules/command-display/command-display.component.mjs +49 -0
  72. package/esm2022/lib/components/molecules/command-display/types.mjs +2 -0
  73. package/esm2022/lib/components/molecules/comment/comment.component.mjs +618 -0
  74. package/esm2022/lib/components/molecules/comment/types.mjs +2 -0
  75. package/esm2022/lib/components/molecules/comment-input/comment-input.component.mjs +41 -0
  76. package/esm2022/lib/components/molecules/comment-input/types.mjs +2 -0
  77. package/esm2022/lib/components/molecules/content-loader/content-loader.component.mjs +42 -0
  78. package/esm2022/lib/components/molecules/content-loader/types.mjs +2 -0
  79. package/esm2022/lib/components/molecules/content-reaction/content-reaction.component.mjs +210 -0
  80. package/esm2022/lib/components/molecules/content-reaction/types.mjs +2 -0
  81. package/esm2022/lib/components/molecules/currency-input/currency-input.component.mjs +347 -0
  82. package/esm2022/lib/components/molecules/currency-input/types.mjs +18 -0
  83. package/esm2022/lib/components/molecules/date-input/date-input.component.mjs +148 -0
  84. package/esm2022/lib/components/molecules/date-input/types.mjs +2 -0
  85. package/esm2022/lib/components/molecules/date-range-input/date-range-input.component.mjs +416 -0
  86. package/esm2022/lib/components/molecules/date-range-input/types.mjs +2 -0
  87. package/esm2022/lib/components/molecules/docs-api-table/docs-api-table.component.mjs +222 -0
  88. package/esm2022/lib/components/molecules/docs-api-table/types.mjs +11 -0
  89. package/esm2022/lib/components/molecules/docs-breadcrumb/docs-breadcrumb.component.mjs +144 -0
  90. package/esm2022/lib/components/molecules/docs-breadcrumb/types.mjs +2 -0
  91. package/esm2022/lib/components/molecules/docs-callout/docs-callout.component.mjs +60 -0
  92. package/esm2022/lib/components/molecules/docs-code-example/docs-code-example.component.mjs +249 -0
  93. package/esm2022/lib/components/molecules/docs-code-example/types.mjs +2 -0
  94. package/esm2022/lib/components/molecules/docs-nav-links/docs-nav-links.component.mjs +140 -0
  95. package/esm2022/lib/components/molecules/docs-nav-links/types.mjs +2 -0
  96. package/esm2022/lib/components/molecules/docs-search/docs-search.component.mjs +268 -0
  97. package/esm2022/lib/components/molecules/docs-search/types.mjs +2 -0
  98. package/esm2022/lib/components/molecules/docs-section/docs-section.component.mjs +85 -0
  99. package/esm2022/lib/components/molecules/docs-section/types.mjs +2 -0
  100. package/esm2022/lib/components/molecules/email-input/email-input.component.mjs +68 -0
  101. package/esm2022/lib/components/molecules/expandable-text/expandable-text.component.mjs +77 -0
  102. package/esm2022/lib/components/molecules/expandable-text/types.mjs +2 -0
  103. package/esm2022/lib/components/molecules/features-list/features-list.component.mjs +179 -0
  104. package/esm2022/lib/components/molecules/features-list/types.mjs +11 -0
  105. package/esm2022/lib/components/molecules/feedback-form/feedback-form.component.mjs +354 -0
  106. package/esm2022/lib/components/molecules/feedback-form/types.mjs +2 -0
  107. package/esm2022/lib/components/molecules/file-input/file-input.component.mjs +90 -0
  108. package/esm2022/lib/components/molecules/file-input/types.mjs +2 -0
  109. package/esm2022/lib/components/molecules/footer-links/footer-links.component.mjs +391 -0
  110. package/esm2022/lib/components/molecules/footer-links/types.mjs +2 -0
  111. package/esm2022/lib/components/molecules/glow-card/glow-card.component.mjs +314 -0
  112. package/esm2022/lib/components/molecules/glow-card/types.mjs +11 -0
  113. package/esm2022/lib/components/molecules/hint/hint.component.mjs +90 -0
  114. package/esm2022/lib/components/molecules/hour-input/hour-input.component.mjs +28 -0
  115. package/esm2022/lib/components/molecules/image-crop/image-crop.component.mjs +174 -0
  116. package/esm2022/lib/components/molecules/image-crop/index.mjs +2 -0
  117. package/esm2022/lib/components/molecules/info/info.component.mjs +49 -0
  118. package/esm2022/lib/components/molecules/info/types.mjs +2 -0
  119. package/esm2022/lib/components/molecules/language-selector/language-selector.component.mjs +221 -0
  120. package/esm2022/lib/components/molecules/language-selector/types.mjs +2 -0
  121. package/esm2022/lib/components/molecules/layered-card/layered-card.component.mjs +104 -0
  122. package/esm2022/lib/components/molecules/layered-card/types.mjs +2 -0
  123. package/esm2022/lib/components/molecules/link/link.component.mjs +64 -0
  124. package/esm2022/lib/components/molecules/link/types.mjs +2 -0
  125. package/esm2022/lib/components/molecules/linked-providers/linked-providers.component.mjs +236 -0
  126. package/esm2022/lib/components/molecules/linked-providers/types.mjs +27 -0
  127. package/esm2022/lib/components/molecules/links-accordion/links-accordion.component.mjs +203 -0
  128. package/esm2022/lib/components/molecules/links-accordion/types.mjs +2 -0
  129. package/esm2022/lib/components/molecules/links-cake/links-cake.component.mjs +51 -0
  130. package/esm2022/lib/components/molecules/links-cake/types.mjs +2 -0
  131. package/esm2022/lib/components/molecules/multi-select-search/multi-select-search.component.mjs +488 -0
  132. package/esm2022/lib/components/molecules/notes-box/notes-box.component.mjs +92 -0
  133. package/esm2022/lib/components/molecules/notes-box/types.mjs +2 -0
  134. package/esm2022/lib/components/molecules/number-from-to/number-from-to.component.mjs +143 -0
  135. package/esm2022/lib/components/molecules/number-from-to/types.mjs +2 -0
  136. package/esm2022/lib/components/molecules/number-input/number-input.component.mjs +34 -0
  137. package/esm2022/lib/components/molecules/number-stepper/number-stepper.component.mjs +379 -0
  138. package/esm2022/lib/components/molecules/number-stepper/types.mjs +2 -0
  139. package/esm2022/lib/components/molecules/page-links/page-links.component.mjs +150 -0
  140. package/esm2022/lib/components/molecules/page-links/types.mjs +2 -0
  141. package/esm2022/lib/components/molecules/pagination/pagination.component.mjs +253 -0
  142. package/esm2022/lib/components/molecules/pagination/types.mjs +2 -0
  143. package/esm2022/lib/components/molecules/password-input/password-input.component.mjs +93 -0
  144. package/esm2022/lib/components/molecules/phone-input/phone-input.component.mjs +365 -0
  145. package/esm2022/lib/components/molecules/phone-input/types.mjs +19 -0
  146. package/esm2022/lib/components/molecules/pill/pill.component.mjs +202 -0
  147. package/esm2022/lib/components/molecules/pill/types.mjs +2 -0
  148. package/esm2022/lib/components/molecules/pin-input/pin-input.component.mjs +78 -0
  149. package/esm2022/lib/components/molecules/pin-input/types.mjs +2 -0
  150. package/esm2022/lib/components/molecules/plain-code-box/plain-code-box.component.mjs +82 -0
  151. package/esm2022/lib/components/molecules/plain-code-box/types.mjs +2 -0
  152. package/esm2022/lib/components/molecules/popover-selector/popover-selector.component.mjs +188 -0
  153. package/esm2022/lib/components/molecules/popover-selector/types.mjs +2 -0
  154. package/esm2022/lib/components/molecules/progress-status/progress-status.component.mjs +105 -0
  155. package/esm2022/lib/components/molecules/progress-status/types.mjs +2 -0
  156. package/esm2022/lib/components/molecules/prompter/prompter.component.mjs +85 -0
  157. package/esm2022/lib/components/molecules/prompter/types.mjs +2 -0
  158. package/esm2022/lib/components/molecules/quote-box/quote-box.component.mjs +155 -0
  159. package/esm2022/lib/components/molecules/radio-input/radio-input.component.mjs +52 -0
  160. package/esm2022/lib/components/molecules/range-input/range-input.component.mjs +127 -0
  161. package/esm2022/lib/components/molecules/range-input/types.mjs +2 -0
  162. package/esm2022/lib/components/molecules/rating/rating.component.mjs +166 -0
  163. package/esm2022/lib/components/molecules/rating/types.mjs +2 -0
  164. package/esm2022/lib/components/molecules/refresher/refresher.component.mjs +275 -0
  165. package/esm2022/lib/components/molecules/refresher/types.mjs +15 -0
  166. package/esm2022/lib/components/molecules/searchbar/searchbar.component.mjs +127 -0
  167. package/esm2022/lib/components/molecules/searchbar/types.mjs +2 -0
  168. package/esm2022/lib/components/molecules/segment-control/segment-control.component.mjs +129 -0
  169. package/esm2022/lib/components/molecules/segment-control/types.mjs +2 -0
  170. package/esm2022/lib/components/molecules/select-input/select-input.component.mjs +148 -0
  171. package/esm2022/lib/components/molecules/select-search/select-search.component.mjs +434 -0
  172. package/esm2022/lib/components/molecules/share-buttons/share-buttons.component.mjs +274 -0
  173. package/esm2022/lib/components/molecules/share-buttons/types.mjs +88 -0
  174. package/esm2022/lib/components/molecules/stats-card/stats-card.component.mjs +211 -0
  175. package/esm2022/lib/components/molecules/stats-card/types.mjs +2 -0
  176. package/esm2022/lib/components/molecules/stepper/stepper.component.mjs +242 -0
  177. package/esm2022/lib/components/molecules/stepper/types.mjs +2 -0
  178. package/esm2022/lib/components/molecules/swipe-carousel/swipe-carousel.component.mjs +206 -0
  179. package/esm2022/lib/components/molecules/swipe-carousel/types.mjs +2 -0
  180. package/esm2022/lib/components/molecules/tabs/tabs.component.mjs +139 -0
  181. package/esm2022/lib/components/molecules/tabs/types.mjs +2 -0
  182. package/esm2022/lib/components/molecules/testimonial-card/testimonial-card.component.mjs +138 -0
  183. package/esm2022/lib/components/molecules/testimonial-card/types.mjs +2 -0
  184. package/esm2022/lib/components/molecules/text-input/text-input.component.mjs +77 -0
  185. package/esm2022/lib/components/molecules/textarea-input/textarea-input.component.mjs +213 -0
  186. package/esm2022/lib/components/molecules/textarea-input/types.mjs +2 -0
  187. package/esm2022/lib/components/molecules/timeline/timeline.component.mjs +140 -0
  188. package/esm2022/lib/components/molecules/timeline/types.mjs +2 -0
  189. package/esm2022/lib/components/molecules/title-block/title-block.component.mjs +102 -0
  190. package/esm2022/lib/components/molecules/title-block/types.mjs +2 -0
  191. package/esm2022/lib/components/molecules/toggle-input/toggle-input.component.mjs +93 -0
  192. package/esm2022/lib/components/molecules/toggle-input/types.mjs +2 -0
  193. package/esm2022/lib/components/molecules/update-banner/types.mjs +42 -0
  194. package/esm2022/lib/components/molecules/update-banner/update-banner.component.mjs +243 -0
  195. package/esm2022/lib/components/molecules/username-input/types.mjs +2 -0
  196. package/esm2022/lib/components/molecules/username-input/username-input.component.mjs +295 -0
  197. package/esm2022/lib/components/organisms/article/article.component.mjs +578 -0
  198. package/esm2022/lib/components/organisms/article/types.mjs +183 -0
  199. package/esm2022/lib/components/organisms/avatar-upload/avatar-upload.component.mjs +325 -0
  200. package/esm2022/lib/components/organisms/avatar-upload/types.mjs +15 -0
  201. package/esm2022/lib/components/organisms/banner/banner.component.mjs +111 -0
  202. package/esm2022/lib/components/organisms/banner/types.mjs +2 -0
  203. package/esm2022/lib/components/organisms/bottom-nav/bottom-nav.component.mjs +383 -0
  204. package/esm2022/lib/components/organisms/bottom-nav/types.mjs +19 -0
  205. package/esm2022/lib/components/organisms/cards-carousel/cards-carousel.component.mjs +108 -0
  206. package/esm2022/lib/components/organisms/cards-carousel/types.mjs +2 -0
  207. package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +537 -0
  208. package/esm2022/lib/components/organisms/comment-section/types.mjs +2 -0
  209. package/esm2022/lib/components/organisms/company-footer/company-footer.component.mjs +76 -0
  210. package/esm2022/lib/components/organisms/company-footer/types.mjs +2 -0
  211. package/esm2022/lib/components/organisms/cookie-banner/cookie-banner.component.mjs +199 -0
  212. package/esm2022/lib/components/organisms/cookie-banner/types.mjs +2 -0
  213. package/esm2022/lib/components/organisms/data-table/data-table.component.mjs +1081 -0
  214. package/esm2022/lib/components/organisms/data-table/types.mjs +13 -0
  215. package/esm2022/lib/components/organisms/docs-sidebar/docs-sidebar.component.mjs +290 -0
  216. package/esm2022/lib/components/organisms/docs-sidebar/types.mjs +2 -0
  217. package/esm2022/lib/components/organisms/docs-toc/docs-toc.component.mjs +307 -0
  218. package/esm2022/lib/components/organisms/docs-toc/types.mjs +2 -0
  219. package/esm2022/lib/components/organisms/faq/faq.component.mjs +176 -0
  220. package/esm2022/lib/components/organisms/faq/types.mjs +9 -0
  221. package/esm2022/lib/components/organisms/footer/footer.component.mjs +73 -0
  222. package/esm2022/lib/components/organisms/footer/types.mjs +2 -0
  223. package/esm2022/lib/components/organisms/form/factory.mjs +29 -0
  224. package/esm2022/lib/components/organisms/form/form-footer/form-footer.component.mjs +83 -0
  225. package/esm2022/lib/components/organisms/form/form.component.mjs +510 -0
  226. package/esm2022/lib/components/organisms/fun-header/fun-header.component.mjs +225 -0
  227. package/esm2022/lib/components/organisms/fun-header/types.mjs +2 -0
  228. package/esm2022/lib/components/organisms/header/header.component.mjs +51 -0
  229. package/esm2022/lib/components/organisms/header/types.mjs +2 -0
  230. package/esm2022/lib/components/organisms/infinite-list/infinite-list.component.mjs +620 -0
  231. package/esm2022/lib/components/organisms/infinite-list/types.mjs +15 -0
  232. package/esm2022/lib/components/organisms/item-list/item-list.component.mjs +418 -0
  233. package/esm2022/lib/components/organisms/item-list/types.mjs +2 -0
  234. package/esm2022/lib/components/organisms/login/login.component.mjs +735 -0
  235. package/esm2022/lib/components/organisms/login/types.mjs +11 -0
  236. package/esm2022/lib/components/organisms/menu/menu.component.mjs +206 -0
  237. package/esm2022/lib/components/organisms/menu/types.mjs +2 -0
  238. package/esm2022/lib/components/organisms/no-content/no-content.component.mjs +66 -0
  239. package/esm2022/lib/components/organisms/no-content/types.mjs +2 -0
  240. package/esm2022/lib/components/organisms/rotating-text/rotating-text.component.mjs +180 -0
  241. package/esm2022/lib/components/organisms/rotating-text/types.mjs +2 -0
  242. package/esm2022/lib/components/organisms/skeleton-layout/skeleton-layout.component.mjs +423 -0
  243. package/esm2022/lib/components/organisms/skeleton-layout/types.mjs +10 -0
  244. package/esm2022/lib/components/organisms/tabbed-content/tabbed-content.component.mjs +170 -0
  245. package/esm2022/lib/components/organisms/tabbed-content/types.mjs +2 -0
  246. package/esm2022/lib/components/organisms/terminal-404/terminal-404.component.mjs +214 -0
  247. package/esm2022/lib/components/organisms/terminal-404/types.mjs +2 -0
  248. package/esm2022/lib/components/organisms/testimonial-carousel/testimonial-carousel.component.mjs +72 -0
  249. package/esm2022/lib/components/organisms/testimonial-carousel/types.mjs +2 -0
  250. package/esm2022/lib/components/organisms/toolbar/toolbar.component.mjs +255 -0
  251. package/esm2022/lib/components/organisms/toolbar/types.mjs +2 -0
  252. package/esm2022/lib/components/organisms/wizard/types.mjs +10 -0
  253. package/esm2022/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.mjs +111 -0
  254. package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +161 -0
  255. package/esm2022/lib/components/templates/auth-background/auth-background.component.mjs +164 -0
  256. package/esm2022/lib/components/templates/auth-background/types.mjs +2 -0
  257. package/esm2022/lib/components/templates/docs-layout/docs-layout.component.mjs +221 -0
  258. package/esm2022/lib/components/templates/docs-layout/types.mjs +2 -0
  259. package/esm2022/lib/components/templates/docs-page/docs-page.component.mjs +251 -0
  260. package/esm2022/lib/components/templates/docs-page/types.mjs +2 -0
  261. package/esm2022/lib/components/templates/docs-shell/docs-shell.component.mjs +376 -0
  262. package/esm2022/lib/components/templates/docs-shell/types.mjs +2 -0
  263. package/esm2022/lib/components/templates/maintenance-page/maintenance-page.component.mjs +153 -0
  264. package/esm2022/lib/components/templates/maintenance-page/types.mjs +2 -0
  265. package/esm2022/lib/components/templates/page-content/page-content.component.mjs +193 -0
  266. package/esm2022/lib/components/templates/page-content/types.mjs +2 -0
  267. package/esm2022/lib/components/templates/page-template/page-template.component.mjs +188 -0
  268. package/esm2022/lib/components/templates/page-template/types.mjs +2 -0
  269. package/esm2022/lib/components/templates/page-wrapper/page-wrapper.component.mjs +238 -0
  270. package/esm2022/lib/components/templates/page-wrapper/types.mjs +2 -0
  271. package/esm2022/lib/components/templates/simple/simple.component.mjs +123 -0
  272. package/esm2022/lib/components/templates/simple/types.mjs +2 -0
  273. package/esm2022/lib/components/types.mjs +60 -0
  274. package/esm2022/lib/config/company-footer.config.mjs +125 -0
  275. package/esm2022/lib/config/index.mjs +5 -0
  276. package/esm2022/lib/services/ads/ads-loader.service.mjs +120 -0
  277. package/esm2022/lib/services/ads/ads.service.mjs +236 -0
  278. package/esm2022/lib/services/ads/config.mjs +81 -0
  279. package/esm2022/lib/services/ads/index.mjs +13 -0
  280. package/esm2022/lib/services/ads/types.mjs +23 -0
  281. package/esm2022/lib/services/app-config/app-config.service.mjs +209 -0
  282. package/esm2022/lib/services/app-config/config.mjs +47 -0
  283. package/esm2022/lib/services/app-config/index.mjs +48 -0
  284. package/esm2022/lib/services/app-config/types.mjs +13 -0
  285. package/esm2022/lib/services/app-config/version.mjs +85 -0
  286. package/esm2022/lib/services/app-version/app-version.service.mjs +187 -0
  287. package/esm2022/lib/services/app-version/config.mjs +42 -0
  288. package/esm2022/lib/services/app-version/index.mjs +24 -0
  289. package/esm2022/lib/services/app-version/types.mjs +17 -0
  290. package/esm2022/lib/services/auth/auth-state.service.mjs +207 -0
  291. package/esm2022/lib/services/auth/auth.service.mjs +1142 -0
  292. package/esm2022/lib/services/auth/config.mjs +75 -0
  293. package/esm2022/lib/services/auth/device.service.mjs +135 -0
  294. package/esm2022/lib/services/auth/guards.mjs +199 -0
  295. package/esm2022/lib/services/auth/handoff.service.mjs +152 -0
  296. package/esm2022/lib/services/auth/index.mjs +98 -0
  297. package/esm2022/lib/services/auth/interceptor.mjs +122 -0
  298. package/esm2022/lib/services/auth/notification-action.service.mjs +117 -0
  299. package/esm2022/lib/services/auth/oauth-callback.component.mjs +169 -0
  300. package/esm2022/lib/services/auth/oauth.service.mjs +322 -0
  301. package/esm2022/lib/services/auth/org-switch.service.mjs +137 -0
  302. package/esm2022/lib/services/auth/session.service.mjs +78 -0
  303. package/esm2022/lib/services/auth/storage.service.mjs +152 -0
  304. package/esm2022/lib/services/auth/sync.service.mjs +149 -0
  305. package/esm2022/lib/services/auth/token.service.mjs +122 -0
  306. package/esm2022/lib/services/auth/types.mjs +30 -0
  307. package/esm2022/lib/services/confirmation-dialog/confirmation-dialog.service.mjs +189 -0
  308. package/esm2022/lib/services/confirmation-dialog/types.mjs +14 -0
  309. package/esm2022/lib/services/content/content-types/blog.mjs +275 -0
  310. package/esm2022/lib/services/content/content-types/documentation.mjs +303 -0
  311. package/esm2022/lib/services/content/content-types/news.mjs +277 -0
  312. package/esm2022/lib/services/content/index.mjs +51 -0
  313. package/esm2022/lib/services/content/transformer.mjs +265 -0
  314. package/esm2022/lib/services/content/types.mjs +41 -0
  315. package/esm2022/lib/services/docs/docs-navigation.service.mjs +91 -0
  316. package/esm2022/lib/services/donation/config.mjs +41 -0
  317. package/esm2022/lib/services/donation/donation.service.mjs +92 -0
  318. package/esm2022/lib/services/donation/index.mjs +25 -0
  319. package/esm2022/lib/services/donation/types.mjs +10 -0
  320. package/esm2022/lib/services/download.service.mjs +80 -0
  321. package/esm2022/lib/services/feedback/config.mjs +49 -0
  322. package/esm2022/lib/services/feedback/feedback.service.mjs +296 -0
  323. package/esm2022/lib/services/feedback/index.mjs +44 -0
  324. package/esm2022/lib/services/feedback/types.mjs +30 -0
  325. package/esm2022/lib/services/firebase/analytics-error-handler.mjs +141 -0
  326. package/esm2022/lib/services/firebase/analytics-router-tracker.mjs +99 -0
  327. package/esm2022/lib/services/firebase/analytics-types.mjs +7 -0
  328. package/esm2022/lib/services/firebase/analytics.service.mjs +620 -0
  329. package/esm2022/lib/services/firebase/config.mjs +131 -0
  330. package/esm2022/lib/services/firebase/firebase.service.mjs +506 -0
  331. package/esm2022/lib/services/firebase/firestore-collection.mjs +301 -0
  332. package/esm2022/lib/services/firebase/firestore.service.mjs +571 -0
  333. package/esm2022/lib/services/firebase/index.mjs +56 -0
  334. package/esm2022/lib/services/firebase/messaging.service.mjs +721 -0
  335. package/esm2022/lib/services/firebase/notifications.service.mjs +274 -0
  336. package/esm2022/lib/services/firebase/shared-config.mjs +147 -0
  337. package/esm2022/lib/services/firebase/storage.service.mjs +484 -0
  338. package/esm2022/lib/services/firebase/types.mjs +18 -0
  339. package/esm2022/lib/services/firebase/utils/path-builder.mjs +195 -0
  340. package/esm2022/lib/services/firebase/utils/query-builder.mjs +302 -0
  341. package/esm2022/lib/services/i18n/config.mjs +128 -0
  342. package/esm2022/lib/services/i18n/default-content.mjs +577 -0
  343. package/esm2022/lib/services/i18n/i18n.service.mjs +217 -0
  344. package/esm2022/lib/services/i18n/index.mjs +13 -0
  345. package/esm2022/lib/services/i18n/input-i18n.helper.mjs +97 -0
  346. package/esm2022/lib/services/i18n/translate.pipe.mjs +50 -0
  347. package/esm2022/lib/services/i18n/types.mjs +15 -0
  348. package/esm2022/lib/services/icons.service.mjs +83 -0
  349. package/esm2022/lib/services/image/image.service.mjs +244 -0
  350. package/esm2022/lib/services/image/index.mjs +3 -0
  351. package/esm2022/lib/services/image/types.mjs +13 -0
  352. package/esm2022/lib/services/in-app-browser.service.mjs +35 -0
  353. package/esm2022/lib/services/legal-link/legal-link.service.mjs +85 -0
  354. package/esm2022/lib/services/link-processor.service.mjs +259 -0
  355. package/esm2022/lib/services/local-storage.service.mjs +37 -0
  356. package/esm2022/lib/services/locale.service.mjs +75 -0
  357. package/esm2022/lib/services/markdown-article/legal-content.service.mjs +107 -0
  358. package/esm2022/lib/services/markdown-article/markdown-article-parser.mjs +302 -0
  359. package/esm2022/lib/services/markdown-article/markdown-article-parser.service.mjs +20 -0
  360. package/esm2022/lib/services/meta/index.mjs +3 -0
  361. package/esm2022/lib/services/meta/meta.service.mjs +63 -0
  362. package/esm2022/lib/services/meta/types.mjs +2 -0
  363. package/esm2022/lib/services/modal/modal.service.mjs +220 -0
  364. package/esm2022/lib/services/modal/simple-modal-content.component.mjs +133 -0
  365. package/esm2022/lib/services/modal/types.mjs +26 -0
  366. package/esm2022/lib/services/navigation/index.mjs +3 -0
  367. package/esm2022/lib/services/navigation/navigation.service.mjs +216 -0
  368. package/esm2022/lib/services/navigation/types.mjs +16 -0
  369. package/esm2022/lib/services/page-refresh/page-refresh.service.mjs +104 -0
  370. package/esm2022/lib/services/pagination/index.mjs +5 -0
  371. package/esm2022/lib/services/pagination/pagination.service.mjs +218 -0
  372. package/esm2022/lib/services/pagination/types.mjs +14 -0
  373. package/esm2022/lib/services/preferences/index.mjs +3 -0
  374. package/esm2022/lib/services/preferences/preferences.service.mjs +198 -0
  375. package/esm2022/lib/services/preferences/preferences.types.mjs +7 -0
  376. package/esm2022/lib/services/presets/config.mjs +46 -0
  377. package/esm2022/lib/services/presets/index.mjs +5 -0
  378. package/esm2022/lib/services/presets/preset.service.mjs +104 -0
  379. package/esm2022/lib/services/presets/types.mjs +2 -0
  380. package/esm2022/lib/services/qr-generator/qr-generator.service.mjs +341 -0
  381. package/esm2022/lib/services/qr-generator/types.mjs +46 -0
  382. package/esm2022/lib/services/refreshable-stream/index.mjs +8 -0
  383. package/esm2022/lib/services/refreshable-stream/refreshable-stream.mjs +112 -0
  384. package/esm2022/lib/services/skeleton/config.mjs +79 -0
  385. package/esm2022/lib/services/skeleton/directives/loading.directive.mjs +215 -0
  386. package/esm2022/lib/services/skeleton/index.mjs +16 -0
  387. package/esm2022/lib/services/skeleton/skeleton.service.mjs +198 -0
  388. package/esm2022/lib/services/skeleton/templates/detail-skeleton.component.mjs +223 -0
  389. package/esm2022/lib/services/skeleton/templates/form-skeleton.component.mjs +127 -0
  390. package/esm2022/lib/services/skeleton/templates/grid-skeleton.component.mjs +154 -0
  391. package/esm2022/lib/services/skeleton/templates/list-skeleton.component.mjs +110 -0
  392. package/esm2022/lib/services/skeleton/templates/profile-skeleton.component.mjs +207 -0
  393. package/esm2022/lib/services/skeleton/templates/table-skeleton.component.mjs +116 -0
  394. package/esm2022/lib/services/skeleton/types.mjs +11 -0
  395. package/esm2022/lib/services/theme.service.mjs +153 -0
  396. package/esm2022/lib/services/toast.service.mjs +53 -0
  397. package/esm2022/lib/services/types.mjs +5 -0
  398. package/esm2022/lib/shared/constants/storage.mjs +3 -0
  399. package/esm2022/lib/shared/pipes/process-links.pipe.mjs +69 -0
  400. package/esm2022/lib/shared/utils/datetime.mjs +24 -0
  401. package/esm2022/lib/shared/utils/dom.mjs +27 -0
  402. package/esm2022/lib/shared/utils/form-defaults.mjs +112 -0
  403. package/esm2022/lib/shared/utils/styles.mjs +37 -0
  404. package/esm2022/lib/shared/utils/text.mjs +12 -0
  405. package/esm2022/lib/version.mjs +6 -0
  406. package/esm2022/public-api.mjs +367 -0
  407. package/esm2022/valtech-components.mjs +5 -0
  408. package/fesm2022/valtech-components.mjs +1 -1
  409. package/fesm2022/valtech-components.mjs.map +1 -1
  410. package/index.d.ts +5 -0
  411. package/lib/components/atoms/avatar/avatar.component.d.ts +36 -0
  412. package/lib/components/atoms/avatar/types.d.ts +15 -0
  413. package/lib/components/atoms/box/box.component.d.ts +26 -0
  414. package/lib/components/atoms/box/types.d.ts +19 -0
  415. package/lib/components/atoms/button/button.component.d.ts +63 -0
  416. package/lib/components/atoms/button/factory.d.ts +71 -0
  417. package/lib/components/atoms/container/container.component.d.ts +30 -0
  418. package/lib/components/atoms/container/types.d.ts +11 -0
  419. package/lib/components/atoms/countdown/countdown.component.d.ts +38 -0
  420. package/lib/components/atoms/countdown/types.d.ts +108 -0
  421. package/lib/components/atoms/display/display.component.d.ts +19 -0
  422. package/lib/components/atoms/display/types.d.ts +33 -0
  423. package/lib/components/atoms/divider/divider.component.d.ts +27 -0
  424. package/lib/components/atoms/divider/types.d.ts +12 -0
  425. package/lib/components/atoms/fab/fab.component.d.ts +36 -0
  426. package/lib/components/atoms/fab/types.d.ts +45 -0
  427. package/lib/components/atoms/glass/glass.component.d.ts +43 -0
  428. package/lib/components/atoms/glass/types.d.ts +70 -0
  429. package/lib/components/atoms/glow/glow.component.d.ts +42 -0
  430. package/lib/components/atoms/glow/types.d.ts +40 -0
  431. package/lib/components/atoms/horizontal-scroll/horizontal-scroll.component.d.ts +41 -0
  432. package/lib/components/atoms/horizontal-scroll/types.d.ts +13 -0
  433. package/lib/components/atoms/href/href.component.d.ts +25 -0
  434. package/lib/components/atoms/href/types.d.ts +19 -0
  435. package/lib/components/atoms/icon/icon.component.d.ts +18 -0
  436. package/lib/components/atoms/icon/types.d.ts +13 -0
  437. package/lib/components/atoms/image/image.component.d.ts +41 -0
  438. package/lib/components/atoms/image/types.d.ts +37 -0
  439. package/lib/components/atoms/pattern/motifs.d.ts +60 -0
  440. package/lib/components/atoms/pattern/pattern.component.d.ts +68 -0
  441. package/lib/components/atoms/pattern/types.d.ts +61 -0
  442. package/lib/components/atoms/price-tag/price-tag.component.d.ts +15 -0
  443. package/lib/components/atoms/price-tag/types.d.ts +59 -0
  444. package/lib/components/atoms/progress-bar/progress-bar.component.d.ts +35 -0
  445. package/lib/components/atoms/progress-bar/types.d.ts +19 -0
  446. package/lib/components/atoms/progress-ring/progress-ring.component.d.ts +20 -0
  447. package/lib/components/atoms/progress-ring/types.d.ts +24 -0
  448. package/lib/components/atoms/qr-code/qr-code.component.d.ts +33 -0
  449. package/lib/components/atoms/qr-code/types.d.ts +124 -0
  450. package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +53 -0
  451. package/lib/components/atoms/rights-footer/types.d.ts +21 -0
  452. package/lib/components/atoms/skeleton/skeleton.component.d.ts +12 -0
  453. package/lib/components/atoms/skeleton/types.d.ts +29 -0
  454. package/lib/components/atoms/text/text.component.d.ts +33 -0
  455. package/lib/components/atoms/text/types.d.ts +42 -0
  456. package/lib/components/atoms/title/title.component.d.ts +21 -0
  457. package/lib/components/atoms/title/types.d.ts +36 -0
  458. package/lib/components/atoms/user-avatar/types.d.ts +74 -0
  459. package/lib/components/atoms/user-avatar/user-avatar.component.d.ts +55 -0
  460. package/lib/components/molecules/accordion/accordion.component.d.ts +18 -0
  461. package/lib/components/molecules/accordion/types.d.ts +47 -0
  462. package/lib/components/molecules/action-card/action-card.component.d.ts +90 -0
  463. package/lib/components/molecules/action-card/types.d.ts +83 -0
  464. package/lib/components/molecules/action-header/action-header.component.d.ts +27 -0
  465. package/lib/components/molecules/action-header/types.d.ts +27 -0
  466. package/lib/components/molecules/ad-slot/ad-slot.component.d.ts +69 -0
  467. package/lib/components/molecules/alert-box/alert-box.component.d.ts +39 -0
  468. package/lib/components/molecules/alert-box/types.d.ts +37 -0
  469. package/lib/components/molecules/breadcrumb/breadcrumb.component.d.ts +22 -0
  470. package/lib/components/molecules/breadcrumb/types.d.ts +45 -0
  471. package/lib/components/molecules/button-group/button-group.component.d.ts +23 -0
  472. package/lib/components/molecules/button-group/types.d.ts +13 -0
  473. package/lib/components/molecules/card/card.component.d.ts +49 -0
  474. package/lib/components/molecules/card/types.d.ts +32 -0
  475. package/lib/components/molecules/check-input/check-input.component.d.ts +36 -0
  476. package/lib/components/molecules/checkbox-radio-input/checkbox-radio-input.component.d.ts +17 -0
  477. package/lib/components/molecules/chip-group/chip-group.component.d.ts +22 -0
  478. package/lib/components/molecules/chip-group/types.d.ts +65 -0
  479. package/lib/components/molecules/code-display/code-display.component.d.ts +24 -0
  480. package/lib/components/molecules/code-display/types.d.ts +10 -0
  481. package/lib/components/molecules/command-display/command-display.component.d.ts +11 -0
  482. package/lib/components/molecules/command-display/types.d.ts +3 -0
  483. package/lib/components/molecules/comment/comment.component.d.ts +42 -0
  484. package/lib/components/molecules/comment/types.d.ts +171 -0
  485. package/lib/components/molecules/comment-input/comment-input.component.d.ts +16 -0
  486. package/lib/components/molecules/comment-input/types.d.ts +59 -0
  487. package/lib/components/molecules/content-loader/content-loader.component.d.ts +18 -0
  488. package/lib/components/molecules/content-loader/types.d.ts +15 -0
  489. package/lib/components/molecules/content-reaction/content-reaction.component.d.ts +58 -0
  490. package/lib/components/molecules/content-reaction/types.d.ts +77 -0
  491. package/lib/components/molecules/currency-input/currency-input.component.d.ts +40 -0
  492. package/lib/components/molecules/currency-input/types.d.ts +96 -0
  493. package/lib/components/molecules/date-input/date-input.component.d.ts +40 -0
  494. package/lib/components/molecules/date-input/types.d.ts +74 -0
  495. package/lib/components/molecules/date-range-input/date-range-input.component.d.ts +50 -0
  496. package/lib/components/molecules/date-range-input/types.d.ts +109 -0
  497. package/lib/components/molecules/docs-api-table/docs-api-table.component.d.ts +41 -0
  498. package/lib/components/molecules/docs-api-table/types.d.ts +62 -0
  499. package/lib/components/molecules/docs-breadcrumb/docs-breadcrumb.component.d.ts +31 -0
  500. package/lib/components/molecules/docs-breadcrumb/types.d.ts +20 -0
  501. package/lib/components/molecules/docs-callout/docs-callout.component.d.ts +17 -0
  502. package/lib/components/molecules/docs-code-example/docs-code-example.component.d.ts +45 -0
  503. package/lib/components/molecules/docs-code-example/types.d.ts +63 -0
  504. package/lib/components/molecules/docs-nav-links/docs-nav-links.component.d.ts +30 -0
  505. package/lib/components/molecules/docs-nav-links/types.d.ts +31 -0
  506. package/lib/components/molecules/docs-search/docs-search.component.d.ts +47 -0
  507. package/lib/components/molecules/docs-search/types.d.ts +27 -0
  508. package/lib/components/molecules/docs-section/docs-section.component.d.ts +29 -0
  509. package/lib/components/molecules/docs-section/types.d.ts +27 -0
  510. package/lib/components/molecules/email-input/email-input.component.d.ts +34 -0
  511. package/lib/components/molecules/expandable-text/expandable-text.component.d.ts +23 -0
  512. package/lib/components/molecules/expandable-text/types.d.ts +14 -0
  513. package/lib/components/molecules/features-list/features-list.component.d.ts +66 -0
  514. package/lib/components/molecules/features-list/types.d.ts +36 -0
  515. package/lib/components/molecules/feedback-form/feedback-form.component.d.ts +58 -0
  516. package/lib/components/molecules/feedback-form/types.d.ts +54 -0
  517. package/lib/components/molecules/file-input/file-input.component.d.ts +25 -0
  518. package/lib/components/molecules/file-input/types.d.ts +72 -0
  519. package/lib/components/molecules/footer-links/footer-links.component.d.ts +47 -0
  520. package/lib/components/molecules/footer-links/types.d.ts +50 -0
  521. package/lib/components/molecules/glow-card/glow-card.component.d.ts +60 -0
  522. package/lib/components/molecules/glow-card/types.d.ts +94 -0
  523. package/lib/components/molecules/hint/hint.component.d.ts +19 -0
  524. package/lib/components/molecules/hour-input/hour-input.component.d.ts +15 -0
  525. package/lib/components/molecules/image-crop/image-crop.component.d.ts +59 -0
  526. package/lib/components/molecules/image-crop/index.d.ts +1 -0
  527. package/lib/components/molecules/info/info.component.d.ts +9 -0
  528. package/lib/components/molecules/info/types.d.ts +10 -0
  529. package/lib/components/molecules/language-selector/language-selector.component.d.ts +40 -0
  530. package/lib/components/molecules/language-selector/types.d.ts +82 -0
  531. package/lib/components/molecules/layered-card/layered-card.component.d.ts +10 -0
  532. package/lib/components/molecules/layered-card/types.d.ts +15 -0
  533. package/lib/components/molecules/link/link.component.d.ts +24 -0
  534. package/lib/components/molecules/link/types.d.ts +19 -0
  535. package/lib/components/molecules/linked-providers/linked-providers.component.d.ts +30 -0
  536. package/lib/components/molecules/linked-providers/types.d.ts +38 -0
  537. package/lib/components/molecules/links-accordion/links-accordion.component.d.ts +61 -0
  538. package/lib/components/molecules/links-accordion/types.d.ts +39 -0
  539. package/lib/components/molecules/links-cake/links-cake.component.d.ts +17 -0
  540. package/lib/components/molecules/links-cake/types.d.ts +13 -0
  541. package/lib/components/molecules/multi-select-search/multi-select-search.component.d.ts +76 -0
  542. package/lib/components/molecules/notes-box/notes-box.component.d.ts +33 -0
  543. package/lib/components/molecules/notes-box/types.d.ts +35 -0
  544. package/lib/components/molecules/number-from-to/number-from-to.component.d.ts +27 -0
  545. package/lib/components/molecules/number-from-to/types.d.ts +76 -0
  546. package/lib/components/molecules/number-input/number-input.component.d.ts +16 -0
  547. package/lib/components/molecules/number-stepper/number-stepper.component.d.ts +38 -0
  548. package/lib/components/molecules/number-stepper/types.d.ts +88 -0
  549. package/lib/components/molecules/page-links/page-links.component.d.ts +29 -0
  550. package/lib/components/molecules/page-links/types.d.ts +38 -0
  551. package/lib/components/molecules/pagination/pagination.component.d.ts +15 -0
  552. package/lib/components/molecules/pagination/types.d.ts +41 -0
  553. package/lib/components/molecules/password-input/password-input.component.d.ts +37 -0
  554. package/lib/components/molecules/phone-input/phone-input.component.d.ts +59 -0
  555. package/lib/components/molecules/phone-input/types.d.ts +98 -0
  556. package/lib/components/molecules/pill/pill.component.d.ts +44 -0
  557. package/lib/components/molecules/pill/types.d.ts +63 -0
  558. package/lib/components/molecules/pin-input/pin-input.component.d.ts +21 -0
  559. package/lib/components/molecules/pin-input/types.d.ts +69 -0
  560. package/lib/components/molecules/plain-code-box/plain-code-box.component.d.ts +22 -0
  561. package/lib/components/molecules/plain-code-box/types.d.ts +10 -0
  562. package/lib/components/molecules/popover-selector/popover-selector.component.d.ts +42 -0
  563. package/lib/components/molecules/popover-selector/types.d.ts +69 -0
  564. package/lib/components/molecules/progress-status/progress-status.component.d.ts +23 -0
  565. package/lib/components/molecules/progress-status/types.d.ts +20 -0
  566. package/lib/components/molecules/prompter/prompter.component.d.ts +10 -0
  567. package/lib/components/molecules/prompter/types.d.ts +25 -0
  568. package/lib/components/molecules/quote-box/quote-box.component.d.ts +26 -0
  569. package/lib/components/molecules/radio-input/radio-input.component.d.ts +15 -0
  570. package/lib/components/molecules/range-input/range-input.component.d.ts +25 -0
  571. package/lib/components/molecules/range-input/types.d.ts +59 -0
  572. package/lib/components/molecules/rating/rating.component.d.ts +23 -0
  573. package/lib/components/molecules/rating/types.d.ts +41 -0
  574. package/lib/components/molecules/refresher/refresher.component.d.ts +84 -0
  575. package/lib/components/molecules/refresher/types.d.ts +86 -0
  576. package/lib/components/molecules/searchbar/searchbar.component.d.ts +43 -0
  577. package/lib/components/molecules/searchbar/types.d.ts +33 -0
  578. package/lib/components/molecules/segment-control/segment-control.component.d.ts +35 -0
  579. package/lib/components/molecules/segment-control/types.d.ts +46 -0
  580. package/lib/components/molecules/select-input/select-input.component.d.ts +57 -0
  581. package/lib/components/molecules/select-search/select-search.component.d.ts +78 -0
  582. package/lib/components/molecules/share-buttons/share-buttons.component.d.ts +22 -0
  583. package/lib/components/molecules/share-buttons/types.d.ts +108 -0
  584. package/lib/components/molecules/stats-card/stats-card.component.d.ts +20 -0
  585. package/lib/components/molecules/stats-card/types.d.ts +60 -0
  586. package/lib/components/molecules/stepper/stepper.component.d.ts +31 -0
  587. package/lib/components/molecules/stepper/types.d.ts +66 -0
  588. package/lib/components/molecules/swipe-carousel/swipe-carousel.component.d.ts +66 -0
  589. package/lib/components/molecules/swipe-carousel/types.d.ts +35 -0
  590. package/lib/components/molecules/tabs/tabs.component.d.ts +34 -0
  591. package/lib/components/molecules/tabs/types.d.ts +45 -0
  592. package/lib/components/molecules/testimonial-card/testimonial-card.component.d.ts +41 -0
  593. package/lib/components/molecules/testimonial-card/types.d.ts +25 -0
  594. package/lib/components/molecules/text-input/text-input.component.d.ts +42 -0
  595. package/lib/components/molecules/textarea-input/textarea-input.component.d.ts +46 -0
  596. package/lib/components/molecules/textarea-input/types.d.ts +74 -0
  597. package/lib/components/molecules/timeline/timeline.component.d.ts +14 -0
  598. package/lib/components/molecules/timeline/types.d.ts +39 -0
  599. package/lib/components/molecules/title-block/title-block.component.d.ts +12 -0
  600. package/lib/components/molecules/title-block/types.d.ts +15 -0
  601. package/lib/components/molecules/toggle-input/toggle-input.component.d.ts +39 -0
  602. package/lib/components/molecules/toggle-input/types.d.ts +30 -0
  603. package/lib/components/molecules/update-banner/types.d.ts +41 -0
  604. package/lib/components/molecules/update-banner/update-banner.component.d.ts +48 -0
  605. package/lib/components/molecules/username-input/types.d.ts +36 -0
  606. package/lib/components/molecules/username-input/username-input.component.d.ts +58 -0
  607. package/lib/components/organisms/article/article.component.d.ts +108 -0
  608. package/lib/components/organisms/article/types.d.ts +367 -0
  609. package/lib/components/organisms/avatar-upload/avatar-upload.component.d.ts +84 -0
  610. package/lib/components/organisms/avatar-upload/types.d.ts +62 -0
  611. package/lib/components/organisms/banner/banner.component.d.ts +16 -0
  612. package/lib/components/organisms/banner/types.d.ts +29 -0
  613. package/lib/components/organisms/bottom-nav/bottom-nav.component.d.ts +91 -0
  614. package/lib/components/organisms/bottom-nav/types.d.ts +120 -0
  615. package/lib/components/organisms/cards-carousel/cards-carousel.component.d.ts +36 -0
  616. package/lib/components/organisms/cards-carousel/types.d.ts +40 -0
  617. package/lib/components/organisms/comment-section/comment-section.component.d.ts +50 -0
  618. package/lib/components/organisms/comment-section/types.d.ts +144 -0
  619. package/lib/components/organisms/company-footer/company-footer.component.d.ts +37 -0
  620. package/lib/components/organisms/company-footer/types.d.ts +15 -0
  621. package/lib/components/organisms/cookie-banner/cookie-banner.component.d.ts +36 -0
  622. package/lib/components/organisms/cookie-banner/types.d.ts +62 -0
  623. package/lib/components/organisms/data-table/data-table.component.d.ts +63 -0
  624. package/lib/components/organisms/data-table/types.d.ts +219 -0
  625. package/lib/components/organisms/docs-sidebar/docs-sidebar.component.d.ts +51 -0
  626. package/lib/components/organisms/docs-sidebar/types.d.ts +93 -0
  627. package/lib/components/organisms/docs-toc/docs-toc.component.d.ts +62 -0
  628. package/lib/components/organisms/docs-toc/types.d.ts +62 -0
  629. package/lib/components/organisms/faq/faq.component.d.ts +46 -0
  630. package/lib/components/organisms/faq/types.d.ts +53 -0
  631. package/lib/components/organisms/footer/footer.component.d.ts +36 -0
  632. package/lib/components/organisms/footer/types.d.ts +16 -0
  633. package/lib/components/organisms/form/factory.d.ts +17 -0
  634. package/lib/components/organisms/form/form-footer/form-footer.component.d.ts +17 -0
  635. package/lib/components/organisms/form/form.component.d.ts +72 -0
  636. package/lib/components/organisms/fun-header/fun-header.component.d.ts +72 -0
  637. package/lib/components/organisms/fun-header/types.d.ts +28 -0
  638. package/lib/components/organisms/header/header.component.d.ts +22 -0
  639. package/lib/components/organisms/header/types.d.ts +16 -0
  640. package/lib/components/organisms/infinite-list/infinite-list.component.d.ts +113 -0
  641. package/lib/components/organisms/infinite-list/types.d.ts +197 -0
  642. package/lib/components/organisms/item-list/item-list.component.d.ts +43 -0
  643. package/lib/components/organisms/item-list/types.d.ts +126 -0
  644. package/lib/components/organisms/login/login.component.d.ts +79 -0
  645. package/lib/components/organisms/login/types.d.ts +70 -0
  646. package/lib/components/organisms/menu/menu.component.d.ts +44 -0
  647. package/lib/components/organisms/menu/types.d.ts +23 -0
  648. package/lib/components/organisms/no-content/no-content.component.d.ts +14 -0
  649. package/lib/components/organisms/no-content/types.d.ts +17 -0
  650. package/lib/components/organisms/rotating-text/rotating-text.component.d.ts +47 -0
  651. package/lib/components/organisms/rotating-text/types.d.ts +28 -0
  652. package/lib/components/organisms/skeleton-layout/skeleton-layout.component.d.ts +37 -0
  653. package/lib/components/organisms/skeleton-layout/types.d.ts +50 -0
  654. package/lib/components/organisms/tabbed-content/tabbed-content.component.d.ts +65 -0
  655. package/lib/components/organisms/tabbed-content/types.d.ts +53 -0
  656. package/lib/components/organisms/terminal-404/terminal-404.component.d.ts +42 -0
  657. package/lib/components/organisms/terminal-404/types.d.ts +22 -0
  658. package/lib/components/organisms/testimonial-carousel/testimonial-carousel.component.d.ts +33 -0
  659. package/lib/components/organisms/testimonial-carousel/types.d.ts +8 -0
  660. package/lib/components/organisms/toolbar/toolbar.component.d.ts +85 -0
  661. package/lib/components/organisms/toolbar/types.d.ts +31 -0
  662. package/lib/components/organisms/wizard/types.d.ts +42 -0
  663. package/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.d.ts +23 -0
  664. package/lib/components/organisms/wizard/wizard.component.d.ts +27 -0
  665. package/lib/components/templates/auth-background/auth-background.component.d.ts +62 -0
  666. package/lib/components/templates/auth-background/types.d.ts +30 -0
  667. package/lib/components/templates/docs-layout/docs-layout.component.d.ts +42 -0
  668. package/lib/components/templates/docs-layout/types.d.ts +39 -0
  669. package/lib/components/templates/docs-page/docs-page.component.d.ts +61 -0
  670. package/lib/components/templates/docs-page/types.d.ts +121 -0
  671. package/lib/components/templates/docs-shell/docs-shell.component.d.ts +33 -0
  672. package/lib/components/templates/docs-shell/types.d.ts +152 -0
  673. package/lib/components/templates/maintenance-page/maintenance-page.component.d.ts +57 -0
  674. package/lib/components/templates/maintenance-page/types.d.ts +12 -0
  675. package/lib/components/templates/page-content/page-content.component.d.ts +107 -0
  676. package/lib/components/templates/page-content/types.d.ts +27 -0
  677. package/lib/components/templates/page-template/page-template.component.d.ts +54 -0
  678. package/lib/components/templates/page-template/types.d.ts +17 -0
  679. package/lib/components/templates/page-wrapper/page-wrapper.component.d.ts +99 -0
  680. package/lib/components/templates/page-wrapper/types.d.ts +26 -0
  681. package/lib/components/templates/simple/simple.component.d.ts +14 -0
  682. package/lib/components/templates/simple/types.d.ts +10 -0
  683. package/lib/components/types.d.ts +304 -0
  684. package/lib/config/company-footer.config.d.ts +118 -0
  685. package/lib/config/index.d.ts +4 -0
  686. package/lib/services/ads/ads-loader.service.d.ts +41 -0
  687. package/lib/services/ads/ads.service.d.ts +99 -0
  688. package/lib/services/ads/config.d.ts +53 -0
  689. package/lib/services/ads/index.d.ts +9 -0
  690. package/lib/services/ads/types.d.ts +106 -0
  691. package/lib/services/app-config/app-config.service.d.ts +115 -0
  692. package/lib/services/app-config/config.d.ts +31 -0
  693. package/lib/services/app-config/index.d.ts +47 -0
  694. package/lib/services/app-config/types.d.ts +54 -0
  695. package/lib/services/app-config/version.d.ts +64 -0
  696. package/lib/services/app-version/app-version.service.d.ts +64 -0
  697. package/lib/services/app-version/config.d.ts +35 -0
  698. package/lib/services/app-version/index.d.ts +23 -0
  699. package/lib/services/app-version/types.d.ts +35 -0
  700. package/lib/services/auth/auth-state.service.d.ts +106 -0
  701. package/lib/services/auth/auth.service.d.ts +429 -0
  702. package/lib/services/auth/config.d.ts +38 -0
  703. package/lib/services/auth/device.service.d.ts +101 -0
  704. package/lib/services/auth/guards.d.ts +126 -0
  705. package/lib/services/auth/handoff.service.d.ts +159 -0
  706. package/lib/services/auth/index.d.ts +89 -0
  707. package/lib/services/auth/interceptor.d.ts +22 -0
  708. package/lib/services/auth/notification-action.service.d.ts +34 -0
  709. package/lib/services/auth/oauth-callback.component.d.ts +34 -0
  710. package/lib/services/auth/oauth.service.d.ts +99 -0
  711. package/lib/services/auth/org-switch.service.d.ts +127 -0
  712. package/lib/services/auth/session.service.d.ts +60 -0
  713. package/lib/services/auth/storage.service.d.ts +52 -0
  714. package/lib/services/auth/sync.service.d.ts +49 -0
  715. package/lib/services/auth/token.service.d.ts +57 -0
  716. package/lib/services/auth/types.d.ts +862 -0
  717. package/lib/services/confirmation-dialog/confirmation-dialog.service.d.ts +71 -0
  718. package/lib/services/confirmation-dialog/types.d.ts +61 -0
  719. package/lib/services/content/content-types/blog.d.ts +148 -0
  720. package/lib/services/content/content-types/documentation.d.ts +183 -0
  721. package/lib/services/content/content-types/news.d.ts +162 -0
  722. package/lib/services/content/index.d.ts +49 -0
  723. package/lib/services/content/transformer.d.ts +96 -0
  724. package/lib/services/content/types.d.ts +220 -0
  725. package/lib/services/docs/docs-navigation.service.d.ts +51 -0
  726. package/lib/services/donation/config.d.ts +33 -0
  727. package/lib/services/donation/donation.service.d.ts +54 -0
  728. package/lib/services/donation/index.d.ts +25 -0
  729. package/lib/services/donation/types.d.ts +85 -0
  730. package/lib/services/download.service.d.ts +21 -0
  731. package/lib/services/feedback/config.d.ts +35 -0
  732. package/lib/services/feedback/feedback.service.d.ts +134 -0
  733. package/lib/services/feedback/index.d.ts +40 -0
  734. package/lib/services/feedback/types.d.ts +173 -0
  735. package/lib/services/firebase/analytics-error-handler.d.ts +54 -0
  736. package/lib/services/firebase/analytics-router-tracker.d.ts +51 -0
  737. package/lib/services/firebase/analytics-types.d.ts +221 -0
  738. package/lib/services/firebase/analytics.service.d.ts +256 -0
  739. package/lib/services/firebase/config.d.ts +49 -0
  740. package/lib/services/firebase/firebase.service.d.ts +303 -0
  741. package/lib/services/firebase/firestore-collection.d.ts +199 -0
  742. package/lib/services/firebase/firestore.service.d.ts +335 -0
  743. package/lib/services/firebase/index.d.ts +44 -0
  744. package/lib/services/firebase/messaging.service.d.ts +341 -0
  745. package/lib/services/firebase/notifications.service.d.ts +158 -0
  746. package/lib/services/firebase/shared-config.d.ts +151 -0
  747. package/lib/services/firebase/storage.service.d.ts +238 -0
  748. package/lib/services/firebase/types.d.ts +374 -0
  749. package/lib/services/firebase/utils/path-builder.d.ts +132 -0
  750. package/lib/services/firebase/utils/query-builder.d.ts +210 -0
  751. package/lib/services/i18n/config.d.ts +29 -0
  752. package/lib/services/i18n/default-content.d.ts +30 -0
  753. package/lib/services/i18n/i18n.service.d.ts +128 -0
  754. package/lib/services/i18n/index.d.ts +6 -0
  755. package/lib/services/i18n/input-i18n.helper.d.ts +70 -0
  756. package/lib/services/i18n/translate.pipe.d.ts +36 -0
  757. package/lib/services/i18n/types.d.ts +93 -0
  758. package/lib/services/icons.service.d.ts +9 -0
  759. package/lib/services/image/image.service.d.ts +76 -0
  760. package/lib/services/image/index.d.ts +2 -0
  761. package/lib/services/image/types.d.ts +74 -0
  762. package/lib/services/in-app-browser.service.d.ts +16 -0
  763. package/lib/services/legal-link/legal-link.service.d.ts +73 -0
  764. package/lib/services/link-processor.service.d.ts +104 -0
  765. package/lib/services/local-storage.service.d.ts +27 -0
  766. package/lib/services/locale.service.d.ts +52 -0
  767. package/lib/services/markdown-article/legal-content.service.d.ts +73 -0
  768. package/lib/services/markdown-article/markdown-article-parser.d.ts +38 -0
  769. package/lib/services/markdown-article/markdown-article-parser.service.d.ts +12 -0
  770. package/lib/services/meta/index.d.ts +2 -0
  771. package/lib/services/meta/meta.service.d.ts +23 -0
  772. package/lib/services/meta/types.d.ts +12 -0
  773. package/lib/services/modal/modal.service.d.ts +100 -0
  774. package/lib/services/modal/simple-modal-content.component.d.ts +19 -0
  775. package/lib/services/modal/types.d.ts +155 -0
  776. package/lib/services/navigation/index.d.ts +2 -0
  777. package/lib/services/navigation/navigation.service.d.ts +134 -0
  778. package/lib/services/navigation/types.d.ts +67 -0
  779. package/lib/services/page-refresh/page-refresh.service.d.ts +86 -0
  780. package/lib/services/pagination/index.d.ts +2 -0
  781. package/lib/services/pagination/pagination.service.d.ts +43 -0
  782. package/lib/services/pagination/types.d.ts +113 -0
  783. package/lib/services/preferences/index.d.ts +2 -0
  784. package/lib/services/preferences/preferences.service.d.ts +61 -0
  785. package/lib/services/preferences/preferences.types.d.ts +35 -0
  786. package/lib/services/presets/config.d.ts +32 -0
  787. package/lib/services/presets/index.d.ts +3 -0
  788. package/lib/services/presets/preset.service.d.ts +69 -0
  789. package/lib/services/presets/types.d.ts +39 -0
  790. package/lib/services/qr-generator/qr-generator.service.d.ts +115 -0
  791. package/lib/services/qr-generator/types.d.ts +141 -0
  792. package/lib/services/refreshable-stream/index.d.ts +7 -0
  793. package/lib/services/refreshable-stream/refreshable-stream.d.ts +113 -0
  794. package/lib/services/skeleton/config.d.ts +30 -0
  795. package/lib/services/skeleton/directives/loading.directive.d.ts +71 -0
  796. package/lib/services/skeleton/index.d.ts +10 -0
  797. package/lib/services/skeleton/skeleton.service.d.ts +127 -0
  798. package/lib/services/skeleton/templates/detail-skeleton.component.d.ts +18 -0
  799. package/lib/services/skeleton/templates/form-skeleton.component.d.ts +22 -0
  800. package/lib/services/skeleton/templates/grid-skeleton.component.d.ts +18 -0
  801. package/lib/services/skeleton/templates/list-skeleton.component.d.ts +17 -0
  802. package/lib/services/skeleton/templates/profile-skeleton.component.d.ts +20 -0
  803. package/lib/services/skeleton/templates/table-skeleton.component.d.ts +17 -0
  804. package/lib/services/skeleton/types.d.ts +111 -0
  805. package/lib/services/theme.service.d.ts +76 -0
  806. package/lib/services/toast.service.d.ts +28 -0
  807. package/lib/services/types.d.ts +1 -0
  808. package/lib/shared/constants/storage.d.ts +2 -0
  809. package/lib/shared/pipes/process-links.pipe.d.ts +55 -0
  810. package/lib/shared/utils/datetime.d.ts +21 -0
  811. package/lib/shared/utils/dom.d.ts +13 -0
  812. package/lib/shared/utils/form-defaults.d.ts +30 -0
  813. package/lib/shared/utils/styles.d.ts +13 -0
  814. package/lib/shared/utils/text.d.ts +11 -0
  815. package/lib/version.d.ts +5 -0
  816. package/package.json +1 -1
  817. package/public-api.d.ts +316 -0
@@ -0,0 +1,394 @@
1
+ import { Component, Input, Output, EventEmitter, inject } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { IonButton, IonIcon, IonSpinner } from '@ionic/angular/standalone';
4
+ import { addIcons } from 'ionicons';
5
+ import { downloadOutline, copyOutline, shareOutline } from 'ionicons/icons';
6
+ import { QrGeneratorService } from '../../../services/qr-generator/qr-generator.service';
7
+ import { I18nService } from '../../../services/i18n';
8
+ import * as i0 from "@angular/core";
9
+ addIcons({ downloadOutline, copyOutline, shareOutline });
10
+ /**
11
+ * val-qr-code
12
+ *
13
+ * A component to display QR codes generated by QrGeneratorService.
14
+ * Provides optional action buttons for download, copy, and share.
15
+ *
16
+ * @example Basic usage
17
+ * ```typescript
18
+ * qr = await this.qrService.generate({ data: 'https://example.com' });
19
+ * ```
20
+ * ```html
21
+ * <val-qr-code [props]="{ qr: qr }"></val-qr-code>
22
+ * ```
23
+ *
24
+ * @example With actions
25
+ * ```html
26
+ * <val-qr-code
27
+ * [props]="{
28
+ * qr: qr,
29
+ * showDownload: true,
30
+ * showCopy: true,
31
+ * showShare: true,
32
+ * displaySize: 200,
33
+ * showBorder: true,
34
+ * borderRadius: 12
35
+ * }"
36
+ * (actionComplete)="onAction($event)"
37
+ * ></val-qr-code>
38
+ * ```
39
+ *
40
+ * @input props: QrCodeMetadata - Configuration for the QR display
41
+ * @output actionComplete - Emits when an action (download/copy/share) completes
42
+ * @output imageLoad - Emits when the QR image loads
43
+ * @output imageError - Emits when the QR image fails to load
44
+ */
45
+ export class QrCodeComponent {
46
+ constructor() {
47
+ this.actionComplete = new EventEmitter();
48
+ this.imageLoad = new EventEmitter();
49
+ this.imageError = new EventEmitter();
50
+ this.canShare = false;
51
+ this.canCopy = false;
52
+ this.qrService = inject(QrGeneratorService);
53
+ this.i18n = inject(I18nService);
54
+ }
55
+ ngOnInit() {
56
+ this.canShare = this.qrService.canShare();
57
+ this.canCopy = this.qrService.canCopyToClipboard();
58
+ }
59
+ getDisplaySize() {
60
+ if (this.props.displaySize) {
61
+ return `${this.props.displaySize}px`;
62
+ }
63
+ return `${this.props.qr.config.width || 300}px`;
64
+ }
65
+ getBorderRadius() {
66
+ return this.props.borderRadius ? `${this.props.borderRadius}px` : '0';
67
+ }
68
+ getPadding() {
69
+ return this.props.padding ? `${this.props.padding}px` : '0';
70
+ }
71
+ getQrBorderRadius() {
72
+ return this.props.qrBorderRadius ? `${this.props.qrBorderRadius}px` : '0';
73
+ }
74
+ getContainerClasses() {
75
+ const classes = [];
76
+ if (this.props.cssClass)
77
+ classes.push(this.props.cssClass);
78
+ if (this.props.showBorder)
79
+ classes.push('with-border');
80
+ if (this.props.loading)
81
+ classes.push('loading');
82
+ if (this.props.theme)
83
+ classes.push(`theme--${this.props.theme}`);
84
+ if (this.props.pulseOnHover)
85
+ classes.push('pulse-on-hover');
86
+ if (this.props.scaleOnHover)
87
+ classes.push('scale-on-hover');
88
+ if (this.props.gradient)
89
+ classes.push('has-gradient');
90
+ return classes.join(' ');
91
+ }
92
+ getContainerBackground() {
93
+ if (this.props.gradient) {
94
+ const { from, to, via, direction = 'to-bottom' } = this.props.gradient;
95
+ const cssDirection = direction.replace(/-/g, ' ');
96
+ if (via) {
97
+ return `linear-gradient(${cssDirection}, ${from}, ${via}, ${to})`;
98
+ }
99
+ return `linear-gradient(${cssDirection}, ${from}, ${to})`;
100
+ }
101
+ return this.props.containerBackground || 'transparent';
102
+ }
103
+ getShadow() {
104
+ const shadowMap = {
105
+ none: 'none',
106
+ sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',
107
+ md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',
108
+ lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',
109
+ xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',
110
+ };
111
+ if (!this.props.shadow)
112
+ return 'none';
113
+ return shadowMap[this.props.shadow] || this.props.shadow;
114
+ }
115
+ getLabelFontSize() {
116
+ return this.props.label?.fontSize ? `${this.props.label.fontSize}px` : '14px';
117
+ }
118
+ hasActions() {
119
+ return !!(this.props.showDownload || this.props.showCopy || this.props.showShare);
120
+ }
121
+ getDownloadLabel() {
122
+ return this.props.downloadLabel || this.i18n.t('download');
123
+ }
124
+ getCopyLabel() {
125
+ return this.props.copyLabel || this.i18n.t('copy');
126
+ }
127
+ getShareLabel() {
128
+ return this.props.shareLabel || this.i18n.t('share');
129
+ }
130
+ async onDownload() {
131
+ try {
132
+ const options = this.props.downloadFilename
133
+ ? { filename: this.props.downloadFilename }
134
+ : undefined;
135
+ await this.qrService.download(this.props.qr, options);
136
+ this.actionComplete.emit({
137
+ action: 'download',
138
+ success: true,
139
+ qr: this.props.qr,
140
+ });
141
+ }
142
+ catch (error) {
143
+ this.actionComplete.emit({
144
+ action: 'download',
145
+ success: false,
146
+ qr: this.props.qr,
147
+ error: error,
148
+ });
149
+ }
150
+ }
151
+ async onCopy() {
152
+ try {
153
+ const success = await this.qrService.copyToClipboard(this.props.qr);
154
+ this.actionComplete.emit({
155
+ action: 'copy',
156
+ success,
157
+ qr: this.props.qr,
158
+ });
159
+ }
160
+ catch (error) {
161
+ this.actionComplete.emit({
162
+ action: 'copy',
163
+ success: false,
164
+ qr: this.props.qr,
165
+ error: error,
166
+ });
167
+ }
168
+ }
169
+ async onShare() {
170
+ try {
171
+ const options = {};
172
+ if (this.props.shareTitle)
173
+ options.title = this.props.shareTitle;
174
+ if (this.props.shareText)
175
+ options.text = this.props.shareText;
176
+ if (this.props.shareFilename)
177
+ options.filename = this.props.shareFilename;
178
+ const success = await this.qrService.share(this.props.qr, Object.keys(options).length > 0 ? options : undefined);
179
+ this.actionComplete.emit({
180
+ action: 'share',
181
+ success,
182
+ qr: this.props.qr,
183
+ });
184
+ }
185
+ catch (error) {
186
+ this.actionComplete.emit({
187
+ action: 'share',
188
+ success: false,
189
+ qr: this.props.qr,
190
+ error: error,
191
+ });
192
+ }
193
+ }
194
+ onImageLoad() {
195
+ this.imageLoad.emit();
196
+ }
197
+ onImageError(_event) {
198
+ const error = new Error('Failed to load QR code image');
199
+ this.imageError.emit(error);
200
+ }
201
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: QrCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
202
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: QrCodeComponent, isStandalone: true, selector: "val-qr-code", inputs: { props: "props" }, outputs: { actionComplete: "actionComplete", imageLoad: "imageLoad", imageError: "imageError" }, ngImport: i0, template: `
203
+ <div
204
+ class="qr-code-container"
205
+ [class]="getContainerClasses()"
206
+ [style.--border-radius]="getBorderRadius()"
207
+ [style.--padding]="getPadding()"
208
+ [style.--container-bg]="getContainerBackground()"
209
+ [style.--border-color]="props.borderColor || 'var(--ion-color-light-shade)'"
210
+ [style.--shadow]="getShadow()"
211
+ [style.--glow-color]="props.glowColor || '#8b5cf6'"
212
+ [style.--qr-border-radius]="getQrBorderRadius()"
213
+ >
214
+ @if (props.loading) {
215
+ <div class="loading-overlay">
216
+ <ion-spinner name="crescent"></ion-spinner>
217
+ </div>
218
+ }
219
+
220
+ @if (props.label && props.label.position === 'top') {
221
+ <div class="qr-label qr-label--top" [style.--label-color]="props.label.color || 'inherit'" [style.--label-size]="getLabelFontSize()">
222
+ @if (props.label.icon && props.label.iconPosition !== 'end') {
223
+ <ion-icon [name]="props.label.icon"></ion-icon>
224
+ }
225
+ <span [class]="'font-weight--' + (props.label.fontWeight || 'medium')">{{ props.label.text }}</span>
226
+ @if (props.label.icon && props.label.iconPosition === 'end') {
227
+ <ion-icon [name]="props.label.icon"></ion-icon>
228
+ }
229
+ </div>
230
+ }
231
+
232
+ <div class="qr-image-wrapper" [style.--size]="getDisplaySize()">
233
+ <img
234
+ [src]="props.qr.dataUrl"
235
+ [alt]="props.alt || 'QR Code'"
236
+ class="qr-image"
237
+ (load)="onImageLoad()"
238
+ (error)="onImageError($event)"
239
+ />
240
+ </div>
241
+
242
+ @if (props.label && props.label.position !== 'top') {
243
+ <div class="qr-label qr-label--bottom" [style.--label-color]="props.label.color || 'inherit'" [style.--label-size]="getLabelFontSize()">
244
+ @if (props.label.icon && props.label.iconPosition !== 'end') {
245
+ <ion-icon [name]="props.label.icon"></ion-icon>
246
+ }
247
+ <span [class]="'font-weight--' + (props.label.fontWeight || 'medium')">{{ props.label.text }}</span>
248
+ @if (props.label.icon && props.label.iconPosition === 'end') {
249
+ <ion-icon [name]="props.label.icon"></ion-icon>
250
+ }
251
+ </div>
252
+ }
253
+
254
+ @if (hasActions()) {
255
+ <div class="qr-actions">
256
+ @if (props.showDownload) {
257
+ <ion-button
258
+ fill="clear"
259
+ size="small"
260
+ (click)="onDownload()"
261
+ [title]="getDownloadLabel()"
262
+ >
263
+ <ion-icon name="download-outline" slot="icon-only"></ion-icon>
264
+ </ion-button>
265
+ }
266
+
267
+ @if (props.showCopy && canCopy) {
268
+ <ion-button
269
+ fill="clear"
270
+ size="small"
271
+ (click)="onCopy()"
272
+ [title]="getCopyLabel()"
273
+ >
274
+ <ion-icon name="copy-outline" slot="icon-only"></ion-icon>
275
+ </ion-button>
276
+ }
277
+
278
+ @if (props.showShare && canShare) {
279
+ <ion-button
280
+ fill="clear"
281
+ size="small"
282
+ (click)="onShare()"
283
+ [title]="getShareLabel()"
284
+ >
285
+ <ion-icon name="share-outline" slot="icon-only"></ion-icon>
286
+ </ion-button>
287
+ }
288
+ </div>
289
+ }
290
+ </div>
291
+ `, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}:host{display:inline-block}.qr-code-container{display:inline-flex;flex-direction:column;align-items:center;gap:12px;padding:var(--padding);background:var(--container-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);position:relative;transition:transform .2s ease,box-shadow .2s ease}.qr-code-container.with-border{border:1px solid var(--border-color)}.qr-code-container.loading .qr-image-wrapper{opacity:.5}.qr-code-container.scale-on-hover:hover{transform:scale(1.02)}.qr-code-container.pulse-on-hover:hover{animation:pulse 1.5s infinite}.qr-label{display:flex;align-items:center;gap:6px;color:var(--label-color);font-size:var(--label-size)}.qr-label ion-icon{font-size:1.1em}.qr-label .font-weight--normal{font-weight:400}.qr-label .font-weight--medium{font-weight:500}.qr-label .font-weight--semibold{font-weight:600}.qr-label .font-weight--bold{font-weight:700}.qr-label--top{margin-bottom:4px}.qr-label--bottom{margin-top:4px}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#ffffffb3;border-radius:var(--border-radius);z-index:1}.loading-overlay ion-spinner{width:32px;height:32px}.qr-image-wrapper{width:var(--size);height:var(--size);display:flex;align-items:center;justify-content:center;transition:opacity .2s}.qr-image{width:100%;height:100%;object-fit:contain;display:block;border-radius:var(--qr-border-radius)}.qr-actions{display:flex;align-items:center;justify-content:center;gap:4px}.qr-actions ion-button{--padding-start: 8px;--padding-end: 8px;--color: var(--ion-color-medium)}.qr-actions ion-button:hover{--color: var(--ion-color-primary)}.qr-actions ion-button ion-icon{font-size:20px}.theme--minimal{background:transparent!important;padding:0!important;box-shadow:none!important;border:none!important}.theme--gradient-purple{background:linear-gradient(135deg,#667eea,#764ba2)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-purple .qr-image{border-radius:8px}.theme--gradient-purple .qr-label{color:#fff}.theme--gradient-purple .qr-actions ion-button{--color: rgba(255, 255, 255, .8)}.theme--gradient-purple .qr-actions ion-button:hover{--color: white}.theme--gradient-blue{background:linear-gradient(135deg,#4facfe,#00f2fe)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-blue .qr-image{border-radius:8px}.theme--gradient-blue .qr-label{color:#fff}.theme--gradient-blue .qr-actions ion-button{--color: rgba(255, 255, 255, .8)}.theme--gradient-blue .qr-actions ion-button:hover{--color: white}.theme--gradient-sunset{background:linear-gradient(135deg,#fa709a,#fee140)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-sunset .qr-image{border-radius:8px}.theme--gradient-sunset .qr-label{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.1)}.theme--gradient-sunset .qr-actions ion-button{--color: rgba(255, 255, 255, .9)}.theme--gradient-sunset .qr-actions ion-button:hover{--color: white}.theme--gradient-mint{background:linear-gradient(135deg,#11998e,#38ef7d)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-mint .qr-image{border-radius:8px}.theme--gradient-mint .qr-label{color:#fff}.theme--gradient-mint .qr-actions ion-button{--color: rgba(255, 255, 255, .8)}.theme--gradient-mint .qr-actions ion-button:hover{--color: white}.theme--dark{background:linear-gradient(145deg,#1a1a2e,#16213e)!important;padding:20px!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.1)!important}.theme--dark .qr-image{border-radius:8px;filter:invert(1)}.theme--dark .qr-label{color:#e0e0e0}.theme--dark .qr-actions ion-button{--color: rgba(255, 255, 255, .6)}.theme--dark .qr-actions ion-button:hover{--color: white}.theme--neon{background:#0a0a0a!important;padding:20px!important;border-radius:16px!important;border:2px solid var(--glow-color)!important;box-shadow:0 0 20px var(--glow-color),inset 0 0 20px #8b5cf61a!important}.theme--neon .qr-image{border-radius:8px;filter:drop-shadow(0 0 8px var(--glow-color))}.theme--neon .qr-label{color:var(--glow-color);text-shadow:0 0 10px var(--glow-color)}.theme--neon .qr-actions ion-button{--color: var(--glow-color)}.theme--neon .qr-actions ion-button:hover{--color: white}:host(.compact) .qr-actions{position:absolute;bottom:8px;left:50%;transform:translate(-50%);opacity:0;transition:opacity .2s;background-color:#ffffffe6;border-radius:8px;padding:4px}:host(.compact) .qr-code-container:hover .qr-actions{opacity:1}:host(.card) .qr-code-container{background-color:var(--ion-background-color, white);box-shadow:0 2px 8px #0000001a;padding:16px;border-radius:12px}@keyframes pulse{0%{box-shadow:var(--shadow),0 0 #6366f166}70%{box-shadow:var(--shadow),0 0 0 10px #6366f100}to{box-shadow:var(--shadow),0 0 #6366f100}}:host-context(body.dark) .loading-overlay,:host-context(.dark) .loading-overlay,:host-context(.ion-palette-dark) .loading-overlay,:host-context(html.ion-palette-dark) .loading-overlay,:host-context([data-theme=dark]) .loading-overlay{background-color:#000000b3}:host-context(body.dark).compact .qr-actions,:host-context(.dark).compact .qr-actions,:host-context(.ion-palette-dark).compact .qr-actions,:host-context(html.ion-palette-dark).compact .qr-actions,:host-context([data-theme=dark]).compact .qr-actions{background-color:#000000e6}:host-context(body.dark) .theme--default .qr-image,:host-context(.dark) .theme--default .qr-image,:host-context(.ion-palette-dark) .theme--default .qr-image,:host-context(html.ion-palette-dark) .theme--default .qr-image,:host-context([data-theme=dark]) .theme--default .qr-image{filter:invert(1)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }] }); }
292
+ }
293
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: QrCodeComponent, decorators: [{
294
+ type: Component,
295
+ args: [{ selector: 'val-qr-code', standalone: true, imports: [CommonModule, IonButton, IonIcon, IonSpinner], template: `
296
+ <div
297
+ class="qr-code-container"
298
+ [class]="getContainerClasses()"
299
+ [style.--border-radius]="getBorderRadius()"
300
+ [style.--padding]="getPadding()"
301
+ [style.--container-bg]="getContainerBackground()"
302
+ [style.--border-color]="props.borderColor || 'var(--ion-color-light-shade)'"
303
+ [style.--shadow]="getShadow()"
304
+ [style.--glow-color]="props.glowColor || '#8b5cf6'"
305
+ [style.--qr-border-radius]="getQrBorderRadius()"
306
+ >
307
+ @if (props.loading) {
308
+ <div class="loading-overlay">
309
+ <ion-spinner name="crescent"></ion-spinner>
310
+ </div>
311
+ }
312
+
313
+ @if (props.label && props.label.position === 'top') {
314
+ <div class="qr-label qr-label--top" [style.--label-color]="props.label.color || 'inherit'" [style.--label-size]="getLabelFontSize()">
315
+ @if (props.label.icon && props.label.iconPosition !== 'end') {
316
+ <ion-icon [name]="props.label.icon"></ion-icon>
317
+ }
318
+ <span [class]="'font-weight--' + (props.label.fontWeight || 'medium')">{{ props.label.text }}</span>
319
+ @if (props.label.icon && props.label.iconPosition === 'end') {
320
+ <ion-icon [name]="props.label.icon"></ion-icon>
321
+ }
322
+ </div>
323
+ }
324
+
325
+ <div class="qr-image-wrapper" [style.--size]="getDisplaySize()">
326
+ <img
327
+ [src]="props.qr.dataUrl"
328
+ [alt]="props.alt || 'QR Code'"
329
+ class="qr-image"
330
+ (load)="onImageLoad()"
331
+ (error)="onImageError($event)"
332
+ />
333
+ </div>
334
+
335
+ @if (props.label && props.label.position !== 'top') {
336
+ <div class="qr-label qr-label--bottom" [style.--label-color]="props.label.color || 'inherit'" [style.--label-size]="getLabelFontSize()">
337
+ @if (props.label.icon && props.label.iconPosition !== 'end') {
338
+ <ion-icon [name]="props.label.icon"></ion-icon>
339
+ }
340
+ <span [class]="'font-weight--' + (props.label.fontWeight || 'medium')">{{ props.label.text }}</span>
341
+ @if (props.label.icon && props.label.iconPosition === 'end') {
342
+ <ion-icon [name]="props.label.icon"></ion-icon>
343
+ }
344
+ </div>
345
+ }
346
+
347
+ @if (hasActions()) {
348
+ <div class="qr-actions">
349
+ @if (props.showDownload) {
350
+ <ion-button
351
+ fill="clear"
352
+ size="small"
353
+ (click)="onDownload()"
354
+ [title]="getDownloadLabel()"
355
+ >
356
+ <ion-icon name="download-outline" slot="icon-only"></ion-icon>
357
+ </ion-button>
358
+ }
359
+
360
+ @if (props.showCopy && canCopy) {
361
+ <ion-button
362
+ fill="clear"
363
+ size="small"
364
+ (click)="onCopy()"
365
+ [title]="getCopyLabel()"
366
+ >
367
+ <ion-icon name="copy-outline" slot="icon-only"></ion-icon>
368
+ </ion-button>
369
+ }
370
+
371
+ @if (props.showShare && canShare) {
372
+ <ion-button
373
+ fill="clear"
374
+ size="small"
375
+ (click)="onShare()"
376
+ [title]="getShareLabel()"
377
+ >
378
+ <ion-icon name="share-outline" slot="icon-only"></ion-icon>
379
+ </ion-button>
380
+ }
381
+ </div>
382
+ }
383
+ </div>
384
+ `, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}:host{display:inline-block}.qr-code-container{display:inline-flex;flex-direction:column;align-items:center;gap:12px;padding:var(--padding);background:var(--container-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);position:relative;transition:transform .2s ease,box-shadow .2s ease}.qr-code-container.with-border{border:1px solid var(--border-color)}.qr-code-container.loading .qr-image-wrapper{opacity:.5}.qr-code-container.scale-on-hover:hover{transform:scale(1.02)}.qr-code-container.pulse-on-hover:hover{animation:pulse 1.5s infinite}.qr-label{display:flex;align-items:center;gap:6px;color:var(--label-color);font-size:var(--label-size)}.qr-label ion-icon{font-size:1.1em}.qr-label .font-weight--normal{font-weight:400}.qr-label .font-weight--medium{font-weight:500}.qr-label .font-weight--semibold{font-weight:600}.qr-label .font-weight--bold{font-weight:700}.qr-label--top{margin-bottom:4px}.qr-label--bottom{margin-top:4px}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#ffffffb3;border-radius:var(--border-radius);z-index:1}.loading-overlay ion-spinner{width:32px;height:32px}.qr-image-wrapper{width:var(--size);height:var(--size);display:flex;align-items:center;justify-content:center;transition:opacity .2s}.qr-image{width:100%;height:100%;object-fit:contain;display:block;border-radius:var(--qr-border-radius)}.qr-actions{display:flex;align-items:center;justify-content:center;gap:4px}.qr-actions ion-button{--padding-start: 8px;--padding-end: 8px;--color: var(--ion-color-medium)}.qr-actions ion-button:hover{--color: var(--ion-color-primary)}.qr-actions ion-button ion-icon{font-size:20px}.theme--minimal{background:transparent!important;padding:0!important;box-shadow:none!important;border:none!important}.theme--gradient-purple{background:linear-gradient(135deg,#667eea,#764ba2)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-purple .qr-image{border-radius:8px}.theme--gradient-purple .qr-label{color:#fff}.theme--gradient-purple .qr-actions ion-button{--color: rgba(255, 255, 255, .8)}.theme--gradient-purple .qr-actions ion-button:hover{--color: white}.theme--gradient-blue{background:linear-gradient(135deg,#4facfe,#00f2fe)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-blue .qr-image{border-radius:8px}.theme--gradient-blue .qr-label{color:#fff}.theme--gradient-blue .qr-actions ion-button{--color: rgba(255, 255, 255, .8)}.theme--gradient-blue .qr-actions ion-button:hover{--color: white}.theme--gradient-sunset{background:linear-gradient(135deg,#fa709a,#fee140)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-sunset .qr-image{border-radius:8px}.theme--gradient-sunset .qr-label{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.1)}.theme--gradient-sunset .qr-actions ion-button{--color: rgba(255, 255, 255, .9)}.theme--gradient-sunset .qr-actions ion-button:hover{--color: white}.theme--gradient-mint{background:linear-gradient(135deg,#11998e,#38ef7d)!important;padding:20px!important;border-radius:16px!important}.theme--gradient-mint .qr-image{border-radius:8px}.theme--gradient-mint .qr-label{color:#fff}.theme--gradient-mint .qr-actions ion-button{--color: rgba(255, 255, 255, .8)}.theme--gradient-mint .qr-actions ion-button:hover{--color: white}.theme--dark{background:linear-gradient(145deg,#1a1a2e,#16213e)!important;padding:20px!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.1)!important}.theme--dark .qr-image{border-radius:8px;filter:invert(1)}.theme--dark .qr-label{color:#e0e0e0}.theme--dark .qr-actions ion-button{--color: rgba(255, 255, 255, .6)}.theme--dark .qr-actions ion-button:hover{--color: white}.theme--neon{background:#0a0a0a!important;padding:20px!important;border-radius:16px!important;border:2px solid var(--glow-color)!important;box-shadow:0 0 20px var(--glow-color),inset 0 0 20px #8b5cf61a!important}.theme--neon .qr-image{border-radius:8px;filter:drop-shadow(0 0 8px var(--glow-color))}.theme--neon .qr-label{color:var(--glow-color);text-shadow:0 0 10px var(--glow-color)}.theme--neon .qr-actions ion-button{--color: var(--glow-color)}.theme--neon .qr-actions ion-button:hover{--color: white}:host(.compact) .qr-actions{position:absolute;bottom:8px;left:50%;transform:translate(-50%);opacity:0;transition:opacity .2s;background-color:#ffffffe6;border-radius:8px;padding:4px}:host(.compact) .qr-code-container:hover .qr-actions{opacity:1}:host(.card) .qr-code-container{background-color:var(--ion-background-color, white);box-shadow:0 2px 8px #0000001a;padding:16px;border-radius:12px}@keyframes pulse{0%{box-shadow:var(--shadow),0 0 #6366f166}70%{box-shadow:var(--shadow),0 0 0 10px #6366f100}to{box-shadow:var(--shadow),0 0 #6366f100}}:host-context(body.dark) .loading-overlay,:host-context(.dark) .loading-overlay,:host-context(.ion-palette-dark) .loading-overlay,:host-context(html.ion-palette-dark) .loading-overlay,:host-context([data-theme=dark]) .loading-overlay{background-color:#000000b3}:host-context(body.dark).compact .qr-actions,:host-context(.dark).compact .qr-actions,:host-context(.ion-palette-dark).compact .qr-actions,:host-context(html.ion-palette-dark).compact .qr-actions,:host-context([data-theme=dark]).compact .qr-actions{background-color:#000000e6}:host-context(body.dark) .theme--default .qr-image,:host-context(.dark) .theme--default .qr-image,:host-context(.ion-palette-dark) .theme--default .qr-image,:host-context(html.ion-palette-dark) .theme--default .qr-image,:host-context([data-theme=dark]) .theme--default .qr-image{filter:invert(1)}\n"] }]
385
+ }], propDecorators: { props: [{
386
+ type: Input
387
+ }], actionComplete: [{
388
+ type: Output
389
+ }], imageLoad: [{
390
+ type: Output
391
+ }], imageError: [{
392
+ type: Output
393
+ }] } });
394
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXItY29kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvcXItY29kZS9xci1jb2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc1RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRXJELFFBQVEsQ0FBQyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztBQWtHekQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQ0c7QUFDSCxNQUFNLE9BQU8sZUFBZTtJQW5JNUI7UUFzSVksbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUN2RCxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNyQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUVqRCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFUixjQUFTLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdkMsU0FBSSxH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LFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IElvbkJ1dHRvbiwgSW9uSWNvbiwgSW9uU3Bpbm5lciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBkb3dubG9hZE91dGxpbmUsIGNvcHlPdXRsaW5lLCBzaGFyZU91dGxpbmUgfSBmcm9tICdpb25pY29ucy9pY29ucyc7XG5cbmltcG9ydCB7IFFyQ29kZU1ldGFkYXRhLCBRckNvZGVBY3Rpb25FdmVudCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgUXJHZW5lcmF0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcXItZ2VuZXJhdG9yL3FyLWdlbmVyYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5cbmFkZEljb25zKHsgZG93bmxvYWRPdXRsaW5lLCBjb3B5T3V0bGluZSwgc2hhcmVPdXRsaW5lIH0pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtcXItY29kZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkJ1dHRvbiwgSW9uSWNvbiwgSW9uU3Bpbm5lcl0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJxci1jb2RlLWNvbnRhaW5lclwiXG4gICAgICBbY2xhc3NdPVwiZ2V0Q29udGFpbmVyQ2xhc3NlcygpXCJcbiAgICAgIFtzdHlsZS4tLWJvcmRlci1yYWRpdXNdPVwiZ2V0Qm9yZGVyUmFkaXVzKClcIlxuICAgICAgW3N0eWxlLi0tcGFkZGluZ109XCJnZXRQYWRkaW5nKClcIlxuICAgICAgW3N0eWxlLi0tY29udGFpbmVyLWJnXT1cImdldENvbnRhaW5lckJhY2tncm91bmQoKVwiXG4gICAgICBbc3R5bGUuLS1ib3JkZXItY29sb3JdPVwicHJvcHMuYm9yZGVyQ29sb3IgfHwgJ3ZhcigtLWlvbi1jb2xvci1saWdodC1zaGFkZSknXCJcbiAgICAgIFtzdHlsZS4tLXNoYWRvd109XCJnZXRTaGFkb3coKVwiXG4gICAgICBbc3R5bGUuLS1nbG93LWNvbG9yXT1cInByb3BzLmdsb3dDb2xvciB8fCAnIzhiNWNmNidcIlxuICAgICAgW3N0eWxlLi0tcXItYm9yZGVyLXJhZGl1c109XCJnZXRRckJvcmRlclJhZGl1cygpXCJcbiAgICA+XG4gICAgICBAaWYgKHByb3BzLmxvYWRpbmcpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImxvYWRpbmctb3ZlcmxheVwiPlxuICAgICAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiY3Jlc2NlbnRcIj48L2lvbi1zcGlubmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcy5sYWJlbCAmJiBwcm9wcy5sYWJlbC5wb3NpdGlvbiA9PT0gJ3RvcCcpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInFyLWxhYmVsIHFyLWxhYmVsLS10b3BcIiBbc3R5bGUuLS1sYWJlbC1jb2xvcl09XCJwcm9wcy5sYWJlbC5jb2xvciB8fCAnaW5oZXJpdCdcIiBbc3R5bGUuLS1sYWJlbC1zaXplXT1cImdldExhYmVsRm9udFNpemUoKVwiPlxuICAgICAgICAgIEBpZiAocHJvcHMubGFiZWwuaWNvbiAmJiBwcm9wcy5sYWJlbC5pY29uUG9zaXRpb24gIT09ICdlbmQnKSB7XG4gICAgICAgICAgICA8aW9uLWljb24gW25hbWVdPVwicHJvcHMubGFiZWwuaWNvblwiPjwvaW9uLWljb24+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzcGFuIFtjbGFzc109XCInZm9udC13ZWlnaHQtLScgKyAocHJvcHMubGFiZWwuZm9udFdlaWdodCB8fCAnbWVkaXVtJylcIj57eyBwcm9wcy5sYWJlbC50ZXh0IH19PC9zcGFuPlxuICAgICAgICAgIEBpZiAocHJvcHMubGFiZWwuaWNvbiAmJiBwcm9wcy5sYWJlbC5pY29uUG9zaXRpb24gPT09ICdlbmQnKSB7XG4gICAgICAgICAgICA8aW9uLWljb24gW25hbWVdPVwicHJvcHMubGFiZWwuaWNvblwiPjwvaW9uLWljb24+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgPGRpdiBjbGFzcz1cInFyLWltYWdlLXdyYXBwZXJcIiBbc3R5bGUuLS1zaXplXT1cImdldERpc3BsYXlTaXplKClcIj5cbiAgICAgICAgPGltZ1xuICAgICAgICAgIFtzcmNdPVwicHJvcHMucXIuZGF0YVVybFwiXG4gICAgICAgICAgW2FsdF09XCJwcm9wcy5hbHQgfHwgJ1FSIENvZGUnXCJcbiAgICAgICAgICBjbGFzcz1cInFyLWltYWdlXCJcbiAgICAgICAgICAobG9hZCk9XCJvbkltYWdlTG9hZCgpXCJcbiAgICAgICAgICAoZXJyb3IpPVwib25JbWFnZUVycm9yKCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIEBpZiAocHJvcHMubGFiZWwgJiYgcHJvcHMubGFiZWwucG9zaXRpb24gIT09ICd0b3AnKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJxci1sYWJlbCBxci1sYWJlbC0tYm90dG9tXCIgW3N0eWxlLi0tbGFiZWwtY29sb3JdPVwicHJvcHMubGFiZWwuY29sb3IgfHwgJ2luaGVyaXQnXCIgW3N0eWxlLi0tbGFiZWwtc2l6ZV09XCJnZXRMYWJlbEZvbnRTaXplKClcIj5cbiAgICAgICAgICBAaWYgKHByb3BzLmxhYmVsLmljb24gJiYgcHJvcHMubGFiZWwuaWNvblBvc2l0aW9uICE9PSAnZW5kJykge1xuICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cInByb3BzLmxhYmVsLmljb25cIj48L2lvbi1pY29uPlxuICAgICAgICAgIH1cbiAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiJ2ZvbnQtd2VpZ2h0LS0nICsgKHByb3BzLmxhYmVsLmZvbnRXZWlnaHQgfHwgJ21lZGl1bScpXCI+e3sgcHJvcHMubGFiZWwudGV4dCB9fTwvc3Bhbj5cbiAgICAgICAgICBAaWYgKHByb3BzLmxhYmVsLmljb24gJiYgcHJvcHMubGFiZWwuaWNvblBvc2l0aW9uID09PSAnZW5kJykge1xuICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cInByb3BzLmxhYmVsLmljb25cIj48L2lvbi1pY29uPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIEBpZiAoaGFzQWN0aW9ucygpKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJxci1hY3Rpb25zXCI+XG4gICAgICAgICAgQGlmIChwcm9wcy5zaG93RG93bmxvYWQpIHtcbiAgICAgICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgICAgIGZpbGw9XCJjbGVhclwiXG4gICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkRvd25sb2FkKClcIlxuICAgICAgICAgICAgICBbdGl0bGVdPVwiZ2V0RG93bmxvYWRMYWJlbCgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJkb3dubG9hZC1vdXRsaW5lXCIgc2xvdD1cImljb24tb25seVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIChwcm9wcy5zaG93Q29weSAmJiBjYW5Db3B5KSB7XG4gICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICBmaWxsPVwiY2xlYXJcIlxuICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Db3B5KClcIlxuICAgICAgICAgICAgICBbdGl0bGVdPVwiZ2V0Q29weUxhYmVsKClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNvcHktb3V0bGluZVwiIHNsb3Q9XCJpY29uLW9ubHlcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAocHJvcHMuc2hvd1NoYXJlICYmIGNhblNoYXJlKSB7XG4gICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICBmaWxsPVwiY2xlYXJcIlxuICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25TaGFyZSgpXCJcbiAgICAgICAgICAgICAgW3RpdGxlXT1cImdldFNoYXJlTGFiZWwoKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwic2hhcmUtb3V0bGluZVwiIHNsb3Q9XCJpY29uLW9ubHlcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3FyLWNvZGUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG4vKipcbiAqIHZhbC1xci1jb2RlXG4gKlxuICogQSBjb21wb25lbnQgdG8gZGlzcGxheSBRUiBjb2RlcyBnZW5lcmF0ZWQgYnkgUXJHZW5lcmF0b3JTZXJ2aWNlLlxuICogUHJvdmlkZXMgb3B0aW9uYWwgYWN0aW9uIGJ1dHRvbnMgZm9yIGRvd25sb2FkLCBjb3B5LCBhbmQgc2hhcmUuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIHFyID0gYXdhaXQgdGhpcy5xclNlcnZpY2UuZ2VuZXJhdGUoeyBkYXRhOiAnaHR0cHM6Ly9leGFtcGxlLmNvbScgfSk7XG4gKiBgYGBcbiAqIGBgYGh0bWxcbiAqIDx2YWwtcXItY29kZSBbcHJvcHNdPVwieyBxcjogcXIgfVwiPjwvdmFsLXFyLWNvZGU+XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZSBXaXRoIGFjdGlvbnNcbiAqIGBgYGh0bWxcbiAqIDx2YWwtcXItY29kZVxuICogICBbcHJvcHNdPVwie1xuICogICAgIHFyOiBxcixcbiAqICAgICBzaG93RG93bmxvYWQ6IHRydWUsXG4gKiAgICAgc2hvd0NvcHk6IHRydWUsXG4gKiAgICAgc2hvd1NoYXJlOiB0cnVlLFxuICogICAgIGRpc3BsYXlTaXplOiAyMDAsXG4gKiAgICAgc2hvd0JvcmRlcjogdHJ1ZSxcbiAqICAgICBib3JkZXJSYWRpdXM6IDEyXG4gKiAgIH1cIlxuICogICAoYWN0aW9uQ29tcGxldGUpPVwib25BY3Rpb24oJGV2ZW50KVwiXG4gKiA+PC92YWwtcXItY29kZT5cbiAqIGBgYFxuICpcbiAqIEBpbnB1dCBwcm9wczogUXJDb2RlTWV0YWRhdGEgLSBDb25maWd1cmF0aW9uIGZvciB0aGUgUVIgZGlzcGxheVxuICogQG91dHB1dCBhY3Rpb25Db21wbGV0ZSAtIEVtaXRzIHdoZW4gYW4gYWN0aW9uIChkb3dubG9hZC9jb3B5L3NoYXJlKSBjb21wbGV0ZXNcbiAqIEBvdXRwdXQgaW1hZ2VMb2FkIC0gRW1pdHMgd2hlbiB0aGUgUVIgaW1hZ2UgbG9hZHNcbiAqIEBvdXRwdXQgaW1hZ2VFcnJvciAtIEVtaXRzIHdoZW4gdGhlIFFSIGltYWdlIGZhaWxzIHRvIGxvYWRcbiAqL1xuZXhwb3J0IGNsYXNzIFFyQ29kZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHByb3BzOiBRckNvZGVNZXRhZGF0YTtcblxuICBAT3V0cHV0KCkgYWN0aW9uQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPFFyQ29kZUFjdGlvbkV2ZW50PigpO1xuICBAT3V0cHV0KCkgaW1hZ2VMb2FkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgaW1hZ2VFcnJvciA9IG5ldyBFdmVudEVtaXR0ZXI8RXJyb3I+KCk7XG5cbiAgY2FuU2hhcmUgPSBmYWxzZTtcbiAgY2FuQ29weSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgcXJTZXJ2aWNlID0gaW5qZWN0KFFyR2VuZXJhdG9yU2VydmljZSk7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jYW5TaGFyZSA9IHRoaXMucXJTZXJ2aWNlLmNhblNoYXJlKCk7XG4gICAgdGhpcy5jYW5Db3B5ID0gdGhpcy5xclNlcnZpY2UuY2FuQ29weVRvQ2xpcGJvYXJkKCk7XG4gIH1cblxuICBnZXREaXNwbGF5U2l6ZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnByb3BzLmRpc3BsYXlTaXplKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5wcm9wcy5kaXNwbGF5U2l6ZX1weGA7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLnByb3BzLnFyLmNvbmZpZy53aWR0aCB8fCAzMDB9cHhgO1xuICB9XG5cbiAgZ2V0Qm9yZGVyUmFkaXVzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuYm9yZGVyUmFkaXVzID8gYCR7dGhpcy5wcm9wcy5ib3JkZXJSYWRpdXN9cHhgIDogJzAnO1xuICB9XG5cbiAgZ2V0UGFkZGluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnBhZGRpbmcgPyBgJHt0aGlzLnByb3BzLnBhZGRpbmd9cHhgIDogJzAnO1xuICB9XG5cbiAgZ2V0UXJCb3JkZXJSYWRpdXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5xckJvcmRlclJhZGl1cyA/IGAke3RoaXMucHJvcHMucXJCb3JkZXJSYWRpdXN9cHhgIDogJzAnO1xuICB9XG5cbiAgZ2V0Q29udGFpbmVyQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jc3NDbGFzcykgY2xhc3Nlcy5wdXNoKHRoaXMucHJvcHMuY3NzQ2xhc3MpO1xuICAgIGlmICh0aGlzLnByb3BzLnNob3dCb3JkZXIpIGNsYXNzZXMucHVzaCgnd2l0aC1ib3JkZXInKTtcbiAgICBpZiAodGhpcy5wcm9wcy5sb2FkaW5nKSBjbGFzc2VzLnB1c2goJ2xvYWRpbmcnKTtcbiAgICBpZiAodGhpcy5wcm9wcy50aGVtZSkgY2xhc3Nlcy5wdXNoKGB0aGVtZS0tJHt0aGlzLnByb3BzLnRoZW1lfWApO1xuICAgIGlmICh0aGlzLnByb3BzLnB1bHNlT25Ib3ZlcikgY2xhc3Nlcy5wdXNoKCdwdWxzZS1vbi1ob3ZlcicpO1xuICAgIGlmICh0aGlzLnByb3BzLnNjYWxlT25Ib3ZlcikgY2xhc3Nlcy5wdXNoKCdzY2FsZS1vbi1ob3ZlcicpO1xuICAgIGlmICh0aGlzLnByb3BzLmdyYWRpZW50KSBjbGFzc2VzLnB1c2goJ2hhcy1ncmFkaWVudCcpO1xuXG4gICAgcmV0dXJuIGNsYXNzZXMuam9pbignICcpO1xuICB9XG5cbiAgZ2V0Q29udGFpbmVyQmFja2dyb3VuZCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnByb3BzLmdyYWRpZW50KSB7XG4gICAgICBjb25zdCB7IGZyb20sIHRvLCB2aWEsIGRpcmVjdGlvbiA9ICd0by1ib3R0b20nIH0gPSB0aGlzLnByb3BzLmdyYWRpZW50O1xuICAgICAgY29uc3QgY3NzRGlyZWN0aW9uID0gZGlyZWN0aW9uLnJlcGxhY2UoLy0vZywgJyAnKTtcbiAgICAgIGlmICh2aWEpIHtcbiAgICAgICAgcmV0dXJuIGBsaW5lYXItZ3JhZGllbnQoJHtjc3NEaXJlY3Rpb259LCAke2Zyb219LCAke3ZpYX0sICR7dG99KWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGxpbmVhci1ncmFkaWVudCgke2Nzc0RpcmVjdGlvbn0sICR7ZnJvbX0sICR7dG99KWA7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnByb3BzLmNvbnRhaW5lckJhY2tncm91bmQgfHwgJ3RyYW5zcGFyZW50JztcbiAgfVxuXG4gIGdldFNoYWRvdygpOiBzdHJpbmcge1xuICAgIGNvbnN0IHNoYWRvd01hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAgIG5vbmU6ICdub25lJyxcbiAgICAgIHNtOiAnMCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KScsXG4gICAgICBtZDogJzAgNHB4IDZweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4xKSwgMCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjA2KScsXG4gICAgICBsZzogJzAgMTBweCAxNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDRweCA2cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMDUpJyxcbiAgICAgIHhsOiAnMCAyMHB4IDI1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgMTBweCAxMHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjA0KScsXG4gICAgfTtcblxuICAgIGlmICghdGhpcy5wcm9wcy5zaGFkb3cpIHJldHVybiAnbm9uZSc7XG4gICAgcmV0dXJuIHNoYWRvd01hcFt0aGlzLnByb3BzLnNoYWRvd10gfHwgdGhpcy5wcm9wcy5zaGFkb3c7XG4gIH1cblxuICBnZXRMYWJlbEZvbnRTaXplKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubGFiZWw/LmZvbnRTaXplID8gYCR7dGhpcy5wcm9wcy5sYWJlbC5mb250U2l6ZX1weGAgOiAnMTRweCc7XG4gIH1cblxuICBoYXNBY3Rpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLnByb3BzLnNob3dEb3dubG9hZCB8fCB0aGlzLnByb3BzLnNob3dDb3B5IHx8IHRoaXMucHJvcHMuc2hvd1NoYXJlKTtcbiAgfVxuXG4gIGdldERvd25sb2FkTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kb3dubG9hZExhYmVsIHx8IHRoaXMuaTE4bi50KCdkb3dubG9hZCcpO1xuICB9XG5cbiAgZ2V0Q29weUxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuY29weUxhYmVsIHx8IHRoaXMuaTE4bi50KCdjb3B5Jyk7XG4gIH1cblxuICBnZXRTaGFyZUxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuc2hhcmVMYWJlbCB8fCB0aGlzLmkxOG4udCgnc2hhcmUnKTtcbiAgfVxuXG4gIGFzeW5jIG9uRG93bmxvYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLnByb3BzLmRvd25sb2FkRmlsZW5hbWVcbiAgICAgICAgPyB7IGZpbGVuYW1lOiB0aGlzLnByb3BzLmRvd25sb2FkRmlsZW5hbWUgfVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgIGF3YWl0IHRoaXMucXJTZXJ2aWNlLmRvd25sb2FkKHRoaXMucHJvcHMucXIsIG9wdGlvbnMpO1xuICAgICAgdGhpcy5hY3Rpb25Db21wbGV0ZS5lbWl0KHtcbiAgICAgICAgYWN0aW9uOiAnZG93bmxvYWQnLFxuICAgICAgICBzdWNjZXNzOiB0cnVlLFxuICAgICAgICBxcjogdGhpcy5wcm9wcy5xcixcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmFjdGlvbkNvbXBsZXRlLmVtaXQoe1xuICAgICAgICBhY3Rpb246ICdkb3dubG9hZCcsXG4gICAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgICBxcjogdGhpcy5wcm9wcy5xcixcbiAgICAgICAgZXJyb3I6IGVycm9yIGFzIEVycm9yLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgb25Db3B5KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBzdWNjZXNzID0gYXdhaXQgdGhpcy5xclNlcnZpY2UuY29weVRvQ2xpcGJvYXJkKHRoaXMucHJvcHMucXIpO1xuICAgICAgdGhpcy5hY3Rpb25Db21wbGV0ZS5lbWl0KHtcbiAgICAgICAgYWN0aW9uOiAnY29weScsXG4gICAgICAgIHN1Y2Nlc3MsXG4gICAgICAgIHFyOiB0aGlzLnByb3BzLnFyLFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuYWN0aW9uQ29tcGxldGUuZW1pdCh7XG4gICAgICAgIGFjdGlvbjogJ2NvcHknLFxuICAgICAgICBzdWNjZXNzOiBmYWxzZSxcbiAgICAgICAgcXI6IHRoaXMucHJvcHMucXIsXG4gICAgICAgIGVycm9yOiBlcnJvciBhcyBFcnJvcixcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIG9uU2hhcmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IHsgdGl0bGU/OiBzdHJpbmc7IHRleHQ/OiBzdHJpbmc7IGZpbGVuYW1lPzogc3RyaW5nIH0gPSB7fTtcbiAgICAgIGlmICh0aGlzLnByb3BzLnNoYXJlVGl0bGUpIG9wdGlvbnMudGl0bGUgPSB0aGlzLnByb3BzLnNoYXJlVGl0bGU7XG4gICAgICBpZiAodGhpcy5wcm9wcy5zaGFyZVRleHQpIG9wdGlvbnMudGV4dCA9IHRoaXMucHJvcHMuc2hhcmVUZXh0O1xuICAgICAgaWYgKHRoaXMucHJvcHMuc2hhcmVGaWxlbmFtZSkgb3B0aW9ucy5maWxlbmFtZSA9IHRoaXMucHJvcHMuc2hhcmVGaWxlbmFtZTtcblxuICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHRoaXMucXJTZXJ2aWNlLnNoYXJlKFxuICAgICAgICB0aGlzLnByb3BzLnFyLFxuICAgICAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5sZW5ndGggPiAwID8gb3B0aW9ucyA6IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIHRoaXMuYWN0aW9uQ29tcGxldGUuZW1pdCh7XG4gICAgICAgIGFjdGlvbjogJ3NoYXJlJyxcbiAgICAgICAgc3VjY2VzcyxcbiAgICAgICAgcXI6IHRoaXMucHJvcHMucXIsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5hY3Rpb25Db21wbGV0ZS5lbWl0KHtcbiAgICAgICAgYWN0aW9uOiAnc2hhcmUnLFxuICAgICAgICBzdWNjZXNzOiBmYWxzZSxcbiAgICAgICAgcXI6IHRoaXMucHJvcHMucXIsXG4gICAgICAgIGVycm9yOiBlcnJvciBhcyBFcnJvcixcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uSW1hZ2VMb2FkKCk6IHZvaWQge1xuICAgIHRoaXMuaW1hZ2VMb2FkLmVtaXQoKTtcbiAgfVxuXG4gIG9uSW1hZ2VFcnJvcihfZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZXJyb3IgPSBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBsb2FkIFFSIGNvZGUgaW1hZ2UnKTtcbiAgICB0aGlzLmltYWdlRXJyb3IuZW1pdChlcnJvcik7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvcXItY29kZS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXJSZXN1bHQgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9xci1nZW5lcmF0b3IvdHlwZXMnO1xuXG4vKipcbiAqIFRoZW1lIHByZXNldHMgZm9yIHF1aWNrIHN0eWxpbmcuXG4gKi9cbmV4cG9ydCB0eXBlIFFyRGlzcGxheVRoZW1lID1cbiAgfCAnZGVmYXVsdCdcbiAgfCAnbWluaW1hbCdcbiAgfCAnZ3JhZGllbnQtcHVycGxlJ1xuICB8ICdncmFkaWVudC1ibHVlJ1xuICB8ICdncmFkaWVudC1zdW5zZXQnXG4gIHwgJ2dyYWRpZW50LW1pbnQnXG4gIHwgJ2RhcmsnXG4gIHwgJ25lb24nO1xuXG4vKipcbiAqIExhYmVsIHBvc2l0aW9uIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCB0eXBlIFFyTGFiZWxQb3NpdGlvbiA9ICd0b3AnIHwgJ2JvdHRvbSc7XG5cbi8qKlxuICogR3JhZGllbnQgZGlyZWN0aW9uIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCB0eXBlIFFyR3JhZGllbnREaXJlY3Rpb24gPVxuICB8ICd0by1yaWdodCdcbiAgfCAndG8tbGVmdCdcbiAgfCAndG8tYm90dG9tJ1xuICB8ICd0by10b3AnXG4gIHwgJ3RvLWJvdHRvbS1yaWdodCdcbiAgfCAndG8tYm90dG9tLWxlZnQnXG4gIHwgJ3RvLXRvcC1yaWdodCdcbiAgfCAndG8tdG9wLWxlZnQnO1xuXG4vKipcbiAqIEdyYWRpZW50IGNvbmZpZ3VyYXRpb24gZm9yIGJhY2tncm91bmRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFFyRGlzcGxheUdyYWRpZW50IHtcbiAgLyoqIFN0YXJ0IGNvbG9yICovXG4gIGZyb206IHN0cmluZztcbiAgLyoqIEVuZCBjb2xvciAqL1xuICB0bzogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgbWlkZGxlIGNvbG9yICovXG4gIHZpYT86IHN0cmluZztcbiAgLyoqIEdyYWRpZW50IGRpcmVjdGlvbiAqL1xuICBkaXJlY3Rpb24/OiBRckdyYWRpZW50RGlyZWN0aW9uO1xufVxuXG4vKipcbiAqIExhYmVsIGNvbmZpZ3VyYXRpb24gZm9yIFFSIGRpc3BsYXkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUXJMYWJlbENvbmZpZyB7XG4gIC8qKiBMYWJlbCB0ZXh0ICovXG4gIHRleHQ6IHN0cmluZztcbiAgLyoqIFBvc2l0aW9uICh0b3Agb3IgYm90dG9tKSAqL1xuICBwb3NpdGlvbj86IFFyTGFiZWxQb3NpdGlvbjtcbiAgLyoqIFRleHQgY29sb3IgKi9cbiAgY29sb3I/OiBzdHJpbmc7XG4gIC8qKiBGb250IHNpemUgaW4gcGl4ZWxzICovXG4gIGZvbnRTaXplPzogbnVtYmVyO1xuICAvKiogRm9udCB3ZWlnaHQgKi9cbiAgZm9udFdlaWdodD86ICdub3JtYWwnIHwgJ21lZGl1bScgfCAnc2VtaWJvbGQnIHwgJ2JvbGQnO1xuICAvKiogSWNvbiBuYW1lIChpb25pY29uKSB0byBzaG93IHdpdGggbGFiZWwgKi9cbiAgaWNvbj86IHN0cmluZztcbiAgLyoqIEljb24gcG9zaXRpb24gKi9cbiAgaWNvblBvc2l0aW9uPzogJ3N0YXJ0JyB8ICdlbmQnO1xufVxuXG4vKipcbiAqIE1ldGFkYXRhIGZvciB0aGUgUVIgY29kZSBkaXNwbGF5IGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRckNvZGVNZXRhZGF0YSB7XG4gIC8qKiBRUiByZXN1bHQgZnJvbSBRckdlbmVyYXRvclNlcnZpY2UgKi9cbiAgcXI6IFFyUmVzdWx0O1xuXG4gIC8qKiBBbHQgdGV4dCBmb3IgYWNjZXNzaWJpbGl0eSAqL1xuICBhbHQ/OiBzdHJpbmc7XG5cbiAgLyoqIFdoZXRoZXIgdG8gc2hvdyBkb3dubG9hZCBidXR0b24gKi9cbiAgc2hvd0Rvd25sb2FkPzogYm9vbGVhbjtcbiAgLyoqIERvd25sb2FkIGJ1dHRvbiBsYWJlbCAqL1xuICBkb3dubG9hZExhYmVsPzogc3RyaW5nO1xuXG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgY29weSBidXR0b24gKi9cbiAgc2hvd0NvcHk/OiBib29sZWFuO1xuICAvKiogQ29weSBidXR0b24gbGFiZWwgKi9cbiAgY29weUxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgc2hhcmUgYnV0dG9uICovXG4gIHNob3dTaGFyZT86IGJvb2xlYW47XG4gIC8qKiBTaGFyZSBidXR0b24gbGFiZWwgKi9cbiAgc2hhcmVMYWJlbD86IHN0cmluZztcblxuICAvKiogQ3VzdG9tIENTUyBjbGFzcyAqL1xuICBjc3NDbGFzcz86IHN0cmluZztcblxuICAvKiogU2l6ZSBvdmVycmlkZSAod2lsbCBzY2FsZSB0aGUgaW1hZ2UpICovXG4gIGRpc3BsYXlTaXplPzogbnVtYmVyO1xuXG4gIC8qKiBCb3JkZXIgcmFkaXVzIGZvciB0aGUgY29udGFpbmVyICovXG4gIGJvcmRlclJhZGl1cz86IG51bWJlcjtcblxuICAvKiogU2hvdyBib3JkZXIgYXJvdW5kIFFSICovXG4gIHNob3dCb3JkZXI/OiBib29sZWFuO1xuICAvKiogQm9yZGVyIGNvbG9yICovXG4gIGJvcmRlckNvbG9yPzogc3RyaW5nO1xuXG4gIC8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgUVIgY29kZSAqL1xuICBwYWRkaW5nPzogbnVtYmVyO1xuXG4gIC8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBjb250YWluZXIgKi9cbiAgY29udGFpbmVyQmFja2dyb3VuZD86IHN0cmluZztcblxuICAvKiogTG9hZGluZyBzdGF0ZSAqL1xuICBsb2FkaW5nPzogYm9vbGVhbjtcblxuICAvKiogQ3VzdG9tIGZpbGVuYW1lIGZvciBkb3dubG9hZCAod2l0aG91dCBleHRlbnNpb24pICovXG4gIGRvd25sb2FkRmlsZW5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqIFNoYXJlIHRpdGxlICovXG4gIHNoYXJlVGl0bGU/OiBzdHJpbmc7XG5cbiAgLyoqIFNoYXJlIHRleHQvZGVzY3JpcHRpb24gKi9cbiAgc2hhcmVUZXh0Pzogc3RyaW5nO1xuXG4gIC8qKiBDdXN0b20gZmlsZW5hbWUgZm9yIHNoYXJlICovXG4gIHNoYXJlRmlsZW5hbWU/OiBzdHJpbmc7XG5cbiAgLy8gPT09IFZpc3VhbCBDdXN0b21pemF0aW9uID09PVxuXG4gIC8qKiBUaGVtZSBwcmVzZXQgZm9yIHF1aWNrIHN0eWxpbmcgKi9cbiAgdGhlbWU/OiBRckRpc3BsYXlUaGVtZTtcblxuICAvKiogTGFiZWwvY2FwdGlvbiBjb25maWd1cmF0aW9uICovXG4gIGxhYmVsPzogUXJMYWJlbENvbmZpZztcblxuICAvKiogR3JhZGllbnQgYmFja2dyb3VuZCAob3ZlcnJpZGVzIGNvbnRhaW5lckJhY2tncm91bmQpICovXG4gIGdyYWRpZW50PzogUXJEaXNwbGF5R3JhZGllbnQ7XG5cbiAgLyoqIEJveCBzaGFkb3cgKGUuZy4sICdzbScsICdtZCcsICdsZycsICd4bCcsIG9yIGN1c3RvbSBDU1MpICovXG4gIHNoYWRvdz86ICdub25lJyB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCcgfCBzdHJpbmc7XG5cbiAgLyoqIEdsb3cgZWZmZWN0IGNvbG9yIChmb3IgbmVvbiB0aGVtZSkgKi9cbiAgZ2xvd0NvbG9yPzogc3RyaW5nO1xuXG4gIC8qKiBFbmFibGUgcHVsc2UgYW5pbWF0aW9uIG9uIGhvdmVyICovXG4gIHB1bHNlT25Ib3Zlcj86IGJvb2xlYW47XG5cbiAgLyoqIEVuYWJsZSBzY2FsZSBhbmltYXRpb24gb24gaG92ZXIgKi9cbiAgc2NhbGVPbkhvdmVyPzogYm9vbGVhbjtcblxuICAvKiogUVIgaW1hZ2UgYm9yZGVyIHJhZGl1cyAodG8gcm91bmQgdGhlIFFSIGl0c2VsZikgKi9cbiAgcXJCb3JkZXJSYWRpdXM/OiBudW1iZXI7XG5cbiAgLyoqIFJlYWN0aXZlIGNvbnRlbnQga2V5cyAqL1xuICBkb3dubG9hZExhYmVsQ29udGVudEtleT86IHN0cmluZztcbiAgY29weUxhYmVsQ29udGVudEtleT86IHN0cmluZztcbiAgc2hhcmVMYWJlbENvbnRlbnRLZXk/OiBzdHJpbmc7XG4gIGNvbnRlbnRDbGFzcz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBFdmVudCBlbWl0dGVkIGFmdGVyIFFSIGNvZGUgYWN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFFyQ29kZUFjdGlvbkV2ZW50IHtcbiAgLyoqIEFjdGlvbiB0eXBlICovXG4gIGFjdGlvbjogJ2Rvd25sb2FkJyB8ICdjb3B5JyB8ICdzaGFyZSc7XG4gIC8qKiBXaGV0aGVyIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bCAqL1xuICBzdWNjZXNzOiBib29sZWFuO1xuICAvKiogUVIgcmVzdWx0ICovXG4gIHFyOiBRclJlc3VsdDtcbiAgLyoqIEVycm9yIGlmIGFjdGlvbiBmYWlsZWQgKi9cbiAgZXJyb3I/OiBFcnJvcjtcbn1cbiJdfQ==
@@ -0,0 +1,108 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, computed, inject, input } from '@angular/core';
3
+ import { TextComponent } from '../text/text.component';
4
+ import { I18nService } from '../../../services/i18n';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * val-rights-footer
8
+ *
9
+ * A simple component that displays copyright text with dynamic year.
10
+ * Useful for footers where you need to show "© 2024 Company. All rights reserved."
11
+ *
12
+ * @example
13
+ * <val-rights-footer></val-rights-footer>
14
+ *
15
+ * @example
16
+ * <val-rights-footer
17
+ * [props]="{
18
+ * companyName: 'My Company',
19
+ * rightsText: 'All rights reserved.',
20
+ * color: 'medium',
21
+ * align: 'left'
22
+ * }"
23
+ * ></val-rights-footer>
24
+ *
25
+ * @input props - Optional configuration (companyName, rightsText, color, align)
26
+ */
27
+ export class RightsFooterComponent {
28
+ constructor() {
29
+ this.i18n = inject(I18nService);
30
+ /**
31
+ * Optional configuration for the rights footer.
32
+ * Signal-based input for full reactivity with computed().
33
+ */
34
+ this.props = input();
35
+ /**
36
+ * Current year for copyright.
37
+ */
38
+ this.currentYear = new Date().getFullYear();
39
+ /**
40
+ * Computed copyright text - reactive to both language AND props changes.
41
+ */
42
+ this.copyrightText = computed(() => {
43
+ this.i18n.lang(); // Track language changes
44
+ const p = this.props(); // Track props changes (now it's a signal!)
45
+ // If fullText is provided, use it with {year} replacement
46
+ if (p?.fullText) {
47
+ return p.fullText.replace('{year}', String(this.currentYear));
48
+ }
49
+ // Legacy format: © {year} {company}. {rights}
50
+ const company = p?.companyName || 'Valtech';
51
+ const rights = p?.rightsText || this.i18n.t('allRightsReserved');
52
+ return `© ${this.currentYear} ${company}. ${rights}`;
53
+ });
54
+ /**
55
+ * Computed helper for align prop in template.
56
+ */
57
+ this.propsAlign = computed(() => this.props()?.align);
58
+ /**
59
+ * Computed helper for color prop in template.
60
+ */
61
+ this.propsColor = computed(() => this.props()?.color || 'dark');
62
+ /**
63
+ * Computed helper for withMargin prop in template.
64
+ */
65
+ this.propsWithMargin = computed(() => this.props()?.withMargin ?? false);
66
+ }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RightsFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: RightsFooterComponent, isStandalone: true, selector: "val-rights-footer", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
69
+ <div
70
+ class="rights-footer"
71
+ [class.rights-footer--left]="propsAlign() === 'left'"
72
+ [class.rights-footer--center]="propsAlign() === 'center' || !propsAlign()"
73
+ [class.rights-footer--right]="propsAlign() === 'right'"
74
+ [class.rights-footer--with-margin]="propsWithMargin()"
75
+ >
76
+ <val-text
77
+ [props]="{
78
+ content: copyrightText(),
79
+ color: propsColor(),
80
+ bold: false,
81
+ size: 'small'
82
+ }"
83
+ />
84
+ </div>
85
+ `, isInline: true, styles: [".rights-footer{display:block;margin-top:24px}.rights-footer--left{text-align:left}.rights-footer--center{text-align:center}.rights-footer--right{text-align:right}.rights-footer--with-margin{margin-bottom:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }] }); }
86
+ }
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RightsFooterComponent, decorators: [{
88
+ type: Component,
89
+ args: [{ selector: 'val-rights-footer', standalone: true, imports: [CommonModule, TextComponent], template: `
90
+ <div
91
+ class="rights-footer"
92
+ [class.rights-footer--left]="propsAlign() === 'left'"
93
+ [class.rights-footer--center]="propsAlign() === 'center' || !propsAlign()"
94
+ [class.rights-footer--right]="propsAlign() === 'right'"
95
+ [class.rights-footer--with-margin]="propsWithMargin()"
96
+ >
97
+ <val-text
98
+ [props]="{
99
+ content: copyrightText(),
100
+ color: propsColor(),
101
+ bold: false,
102
+ size: 'small'
103
+ }"
104
+ />
105
+ </div>
106
+ `, styles: [".rights-footer{display:block;margin-top:24px}.rights-footer--left{text-align:left}.rights-footer--center{text-align:center}.rights-footer--right{text-align:right}.rights-footer--with-margin{margin-bottom:8px}\n"] }]
107
+ }] });
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlnaHRzLWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvcmlnaHRzLWZvb3Rlci9yaWdodHMtZm9vdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUVyRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUF5QkgsTUFBTSxPQUFPLHFCQUFxQjtJQXhCbEM7UUF5QlUsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVuQzs7O1dBR0c7UUFDTSxVQUFLLEdBQUcsS0FBSyxFQUF3QixDQUFDO1FBRS9DOztXQUVHO1FBQ0gsZ0JBQVcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXZDOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyx5QkFBeUI7WUFDM0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsMkNBQTJDO1lBRW5FLDBEQUEwRDtZQUMxRCxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ2hFLENBQUM7WUFFRCw4Q0FBOEM7WUFDOUMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFFLFdBQVcsSUFBSSxTQUFTLENBQUM7WUFDNUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ2pFLE9BQU8sS0FBSyxJQUFJLENBQUMsV0FBVyxJQUFJLE9BQU8sS0FBSyxNQUFNLEVBQUUsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztRQUVIOztXQUVHO1FBQ0gsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFakQ7O1dBRUc7UUFDSCxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLElBQUksTUFBTSxDQUFDLENBQUM7UUFFM0Q7O1dBRUc7UUFDSCxvQkFBZSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsVUFBVSxJQUFJLEtBQUssQ0FBQyxDQUFDO0tBQ3JFOytHQTlDWSxxQkFBcUI7bUdBQXJCLHFCQUFxQixpTkFwQnRCOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCVCwyUkFsQlMsWUFBWSwrQkFBRSxhQUFhOzs0RkFxQjFCLHFCQUFxQjtrQkF4QmpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsWUFDNUI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRleHRDb21wb25lbnQgfSBmcm9tICcuLi90ZXh0L3RleHQuY29tcG9uZW50JztcbmltcG9ydCB7IFJpZ2h0c0Zvb3Rlck1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuXG4vKipcbiAqIHZhbC1yaWdodHMtZm9vdGVyXG4gKlxuICogQSBzaW1wbGUgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgY29weXJpZ2h0IHRleHQgd2l0aCBkeW5hbWljIHllYXIuXG4gKiBVc2VmdWwgZm9yIGZvb3RlcnMgd2hlcmUgeW91IG5lZWQgdG8gc2hvdyBcIsKpIDIwMjQgQ29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cIlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLXJpZ2h0cy1mb290ZXI+PC92YWwtcmlnaHRzLWZvb3Rlcj5cbiAqXG4gKiBAZXhhbXBsZVxuICogPHZhbC1yaWdodHMtZm9vdGVyXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgY29tcGFueU5hbWU6ICdNeSBDb21wYW55JyxcbiAqICAgICByaWdodHNUZXh0OiAnQWxsIHJpZ2h0cyByZXNlcnZlZC4nLFxuICogICAgIGNvbG9yOiAnbWVkaXVtJyxcbiAqICAgICBhbGlnbjogJ2xlZnQnXG4gKiAgIH1cIlxuICogPjwvdmFsLXJpZ2h0cy1mb290ZXI+XG4gKlxuICogQGlucHV0IHByb3BzIC0gT3B0aW9uYWwgY29uZmlndXJhdGlvbiAoY29tcGFueU5hbWUsIHJpZ2h0c1RleHQsIGNvbG9yLCBhbGlnbilcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXJpZ2h0cy1mb290ZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUZXh0Q29tcG9uZW50XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInJpZ2h0cy1mb290ZXJcIlxuICAgICAgW2NsYXNzLnJpZ2h0cy1mb290ZXItLWxlZnRdPVwicHJvcHNBbGlnbigpID09PSAnbGVmdCdcIlxuICAgICAgW2NsYXNzLnJpZ2h0cy1mb290ZXItLWNlbnRlcl09XCJwcm9wc0FsaWduKCkgPT09ICdjZW50ZXInIHx8ICFwcm9wc0FsaWduKClcIlxuICAgICAgW2NsYXNzLnJpZ2h0cy1mb290ZXItLXJpZ2h0XT1cInByb3BzQWxpZ24oKSA9PT0gJ3JpZ2h0J1wiXG4gICAgICBbY2xhc3MucmlnaHRzLWZvb3Rlci0td2l0aC1tYXJnaW5dPVwicHJvcHNXaXRoTWFyZ2luKClcIlxuICAgID5cbiAgICAgIDx2YWwtdGV4dFxuICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgIGNvbnRlbnQ6IGNvcHlyaWdodFRleHQoKSxcbiAgICAgICAgICBjb2xvcjogcHJvcHNDb2xvcigpLFxuICAgICAgICAgIGJvbGQ6IGZhbHNlLFxuICAgICAgICAgIHNpemU6ICdzbWFsbCdcbiAgICAgICAgfVwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9yaWdodHMtZm9vdGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFJpZ2h0c0Zvb3RlckNvbXBvbmVudCB7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSByaWdodHMgZm9vdGVyLlxuICAgKiBTaWduYWwtYmFzZWQgaW5wdXQgZm9yIGZ1bGwgcmVhY3Rpdml0eSB3aXRoIGNvbXB1dGVkKCkuXG4gICAqL1xuICByZWFkb25seSBwcm9wcyA9IGlucHV0PFJpZ2h0c0Zvb3Rlck1ldGFkYXRhPigpO1xuXG4gIC8qKlxuICAgKiBDdXJyZW50IHllYXIgZm9yIGNvcHlyaWdodC5cbiAgICovXG4gIGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlZCBjb3B5cmlnaHQgdGV4dCAtIHJlYWN0aXZlIHRvIGJvdGggbGFuZ3VhZ2UgQU5EIHByb3BzIGNoYW5nZXMuXG4gICAqL1xuICBjb3B5cmlnaHRUZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7IC8vIFRyYWNrIGxhbmd1YWdlIGNoYW5nZXNcbiAgICBjb25zdCBwID0gdGhpcy5wcm9wcygpOyAvLyBUcmFjayBwcm9wcyBjaGFuZ2VzIChub3cgaXQncyBhIHNpZ25hbCEpXG5cbiAgICAvLyBJZiBmdWxsVGV4dCBpcyBwcm92aWRlZCwgdXNlIGl0IHdpdGgge3llYXJ9IHJlcGxhY2VtZW50XG4gICAgaWYgKHA/LmZ1bGxUZXh0KSB7XG4gICAgICByZXR1cm4gcC5mdWxsVGV4dC5yZXBsYWNlKCd7eWVhcn0nLCBTdHJpbmcodGhpcy5jdXJyZW50WWVhcikpO1xuICAgIH1cblxuICAgIC8vIExlZ2FjeSBmb3JtYXQ6IMKpIHt5ZWFyfSB7Y29tcGFueX0uIHtyaWdodHN9XG4gICAgY29uc3QgY29tcGFueSA9IHA/LmNvbXBhbnlOYW1lIHx8ICdWYWx0ZWNoJztcbiAgICBjb25zdCByaWdodHMgPSBwPy5yaWdodHNUZXh0IHx8IHRoaXMuaTE4bi50KCdhbGxSaWdodHNSZXNlcnZlZCcpO1xuICAgIHJldHVybiBgwqkgJHt0aGlzLmN1cnJlbnRZZWFyfSAke2NvbXBhbnl9LiAke3JpZ2h0c31gO1xuICB9KTtcblxuICAvKipcbiAgICogQ29tcHV0ZWQgaGVscGVyIGZvciBhbGlnbiBwcm9wIGluIHRlbXBsYXRlLlxuICAgKi9cbiAgcHJvcHNBbGlnbiA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKT8uYWxpZ24pO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlZCBoZWxwZXIgZm9yIGNvbG9yIHByb3AgaW4gdGVtcGxhdGUuXG4gICAqL1xuICBwcm9wc0NvbG9yID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9wcygpPy5jb2xvciB8fCAnZGFyaycpO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlZCBoZWxwZXIgZm9yIHdpdGhNYXJnaW4gcHJvcCBpbiB0ZW1wbGF0ZS5cbiAgICovXG4gIHByb3BzV2l0aE1hcmdpbiA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKT8ud2l0aE1hcmdpbiA/PyBmYWxzZSk7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvcmlnaHRzLWZvb3Rlci90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUgcmlnaHRzIGZvb3RlciBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmlnaHRzRm9vdGVyTWV0YWRhdGEge1xuICAvKipcbiAgICogRnVsbCBjdXN0b20gdGV4dCB3aXRoIHt5ZWFyfSBwbGFjZWhvbGRlciBmb3IgZHluYW1pYyB5ZWFyLlxuICAgKiBXaGVuIHNldCwgY29tcGFueU5hbWUgYW5kIHJpZ2h0c1RleHQgYXJlIGlnbm9yZWQuXG4gICAqIEBleGFtcGxlIFwiwqkge3llYXJ9LCBTb2x1Y2lvbmVzIFZhbHRlY2ggTHRkYS4gVG9kb3MgbG9zIGRlcmVjaG9zIHJlc2VydmFkb3MuXCJcbiAgICovXG4gIGZ1bGxUZXh0Pzogc3RyaW5nO1xuICAvKiogQ29tcGFueSBuYW1lIHRvIGRpc3BsYXkuIERlZmF1bHQ6ICdWYWx0ZWNoJyAqL1xuICBjb21wYW55TmFtZT86IHN0cmluZztcbiAgLyoqIFJpZ2h0cyB0ZXh0LiBEZWZhdWx0OiAnVG9kb3MgbG9zIGRlcmVjaG9zIHJlc2VydmFkb3MuJyAqL1xuICByaWdodHNUZXh0Pzogc3RyaW5nO1xuICAvKiogVGV4dCBjb2xvci4gRGVmYXVsdDogJ2RhcmsnICovXG4gIGNvbG9yPzogJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAndGVydGlhcnknIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgfCAnZGFyaycgfCAnbGlnaHQnIHwgJ21lZGl1bSc7XG4gIC8qKiBUZXh0IGFsaWdubWVudC4gRGVmYXVsdDogJ2NlbnRlcicgKi9cbiAgYWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4gIC8qKiBBcHBseSBtYXJnaW4tYm90dG9tIHNwYWNpbmcuIERlZmF1bHQ6IGZhbHNlICovXG4gIHdpdGhNYXJnaW4/OiBib29sZWFuO1xufVxuIl19