valtech-components 2.0.819 → 2.0.821

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/fesm2022/valtech-components.mjs +1 -1
  2. package/fesm2022/valtech-components.mjs.map +1 -1
  3. package/package.json +1 -1
  4. package/esm2022/lib/components/atoms/avatar/avatar.component.mjs +0 -94
  5. package/esm2022/lib/components/atoms/avatar/types.mjs +0 -2
  6. package/esm2022/lib/components/atoms/box/box.component.mjs +0 -88
  7. package/esm2022/lib/components/atoms/box/types.mjs +0 -2
  8. package/esm2022/lib/components/atoms/button/button.component.mjs +0 -174
  9. package/esm2022/lib/components/atoms/button/factory.mjs +0 -217
  10. package/esm2022/lib/components/atoms/container/container.component.mjs +0 -52
  11. package/esm2022/lib/components/atoms/container/types.mjs +0 -2
  12. package/esm2022/lib/components/atoms/countdown/countdown.component.mjs +0 -340
  13. package/esm2022/lib/components/atoms/countdown/types.mjs +0 -27
  14. package/esm2022/lib/components/atoms/display/display.component.mjs +0 -51
  15. package/esm2022/lib/components/atoms/display/types.mjs +0 -2
  16. package/esm2022/lib/components/atoms/divider/divider.component.mjs +0 -27
  17. package/esm2022/lib/components/atoms/divider/types.mjs +0 -2
  18. package/esm2022/lib/components/atoms/fab/fab.component.mjs +0 -190
  19. package/esm2022/lib/components/atoms/fab/types.mjs +0 -2
  20. package/esm2022/lib/components/atoms/glass/glass.component.mjs +0 -125
  21. package/esm2022/lib/components/atoms/glass/types.mjs +0 -2
  22. package/esm2022/lib/components/atoms/glow/glow.component.mjs +0 -95
  23. package/esm2022/lib/components/atoms/glow/types.mjs +0 -2
  24. package/esm2022/lib/components/atoms/horizontal-scroll/horizontal-scroll.component.mjs +0 -82
  25. package/esm2022/lib/components/atoms/horizontal-scroll/types.mjs +0 -2
  26. package/esm2022/lib/components/atoms/href/href.component.mjs +0 -62
  27. package/esm2022/lib/components/atoms/href/types.mjs +0 -2
  28. package/esm2022/lib/components/atoms/icon/icon.component.mjs +0 -29
  29. package/esm2022/lib/components/atoms/icon/types.mjs +0 -2
  30. package/esm2022/lib/components/atoms/image/image.component.mjs +0 -507
  31. package/esm2022/lib/components/atoms/image/types.mjs +0 -2
  32. package/esm2022/lib/components/atoms/pattern/motifs.mjs +0 -147
  33. package/esm2022/lib/components/atoms/pattern/pattern.component.mjs +0 -178
  34. package/esm2022/lib/components/atoms/pattern/types.mjs +0 -2
  35. package/esm2022/lib/components/atoms/price-tag/price-tag.component.mjs +0 -235
  36. package/esm2022/lib/components/atoms/price-tag/types.mjs +0 -15
  37. package/esm2022/lib/components/atoms/progress-bar/progress-bar.component.mjs +0 -91
  38. package/esm2022/lib/components/atoms/progress-bar/types.mjs +0 -2
  39. package/esm2022/lib/components/atoms/progress-ring/progress-ring.component.mjs +0 -149
  40. package/esm2022/lib/components/atoms/progress-ring/types.mjs +0 -2
  41. package/esm2022/lib/components/atoms/qr-code/qr-code.component.mjs +0 -394
  42. package/esm2022/lib/components/atoms/qr-code/types.mjs +0 -2
  43. package/esm2022/lib/components/atoms/rights-footer/rights-footer.component.mjs +0 -108
  44. package/esm2022/lib/components/atoms/rights-footer/types.mjs +0 -2
  45. package/esm2022/lib/components/atoms/skeleton/skeleton.component.mjs +0 -193
  46. package/esm2022/lib/components/atoms/skeleton/types.mjs +0 -13
  47. package/esm2022/lib/components/atoms/text/text.component.mjs +0 -132
  48. package/esm2022/lib/components/atoms/text/types.mjs +0 -2
  49. package/esm2022/lib/components/atoms/title/title.component.mjs +0 -68
  50. package/esm2022/lib/components/atoms/title/types.mjs +0 -22
  51. package/esm2022/lib/components/atoms/user-avatar/types.mjs +0 -2
  52. package/esm2022/lib/components/atoms/user-avatar/user-avatar.component.mjs +0 -209
  53. package/esm2022/lib/components/molecules/accordion/accordion.component.mjs +0 -120
  54. package/esm2022/lib/components/molecules/accordion/types.mjs +0 -2
  55. package/esm2022/lib/components/molecules/action-card/action-card.component.mjs +0 -273
  56. package/esm2022/lib/components/molecules/action-card/types.mjs +0 -11
  57. package/esm2022/lib/components/molecules/action-header/action-header.component.mjs +0 -55
  58. package/esm2022/lib/components/molecules/action-header/types.mjs +0 -2
  59. package/esm2022/lib/components/molecules/ad-slot/ad-slot.component.mjs +0 -274
  60. package/esm2022/lib/components/molecules/alert-box/alert-box.component.mjs +0 -119
  61. package/esm2022/lib/components/molecules/alert-box/types.mjs +0 -2
  62. package/esm2022/lib/components/molecules/breadcrumb/breadcrumb.component.mjs +0 -130
  63. package/esm2022/lib/components/molecules/breadcrumb/types.mjs +0 -2
  64. package/esm2022/lib/components/molecules/button-group/button-group.component.mjs +0 -63
  65. package/esm2022/lib/components/molecules/button-group/types.mjs +0 -2
  66. package/esm2022/lib/components/molecules/card/card.component.mjs +0 -450
  67. package/esm2022/lib/components/molecules/card/types.mjs +0 -16
  68. package/esm2022/lib/components/molecules/check-input/check-input.component.mjs +0 -82
  69. package/esm2022/lib/components/molecules/checkbox-radio-input/checkbox-radio-input.component.mjs +0 -79
  70. package/esm2022/lib/components/molecules/chip-group/chip-group.component.mjs +0 -166
  71. package/esm2022/lib/components/molecules/chip-group/types.mjs +0 -2
  72. package/esm2022/lib/components/molecules/code-display/code-display.component.mjs +0 -115
  73. package/esm2022/lib/components/molecules/code-display/types.mjs +0 -2
  74. package/esm2022/lib/components/molecules/command-display/command-display.component.mjs +0 -49
  75. package/esm2022/lib/components/molecules/command-display/types.mjs +0 -2
  76. package/esm2022/lib/components/molecules/comment/comment.component.mjs +0 -618
  77. package/esm2022/lib/components/molecules/comment/types.mjs +0 -2
  78. package/esm2022/lib/components/molecules/comment-input/comment-input.component.mjs +0 -41
  79. package/esm2022/lib/components/molecules/comment-input/types.mjs +0 -2
  80. package/esm2022/lib/components/molecules/content-loader/content-loader.component.mjs +0 -42
  81. package/esm2022/lib/components/molecules/content-loader/types.mjs +0 -2
  82. package/esm2022/lib/components/molecules/content-reaction/content-reaction.component.mjs +0 -210
  83. package/esm2022/lib/components/molecules/content-reaction/types.mjs +0 -2
  84. package/esm2022/lib/components/molecules/currency-input/currency-input.component.mjs +0 -347
  85. package/esm2022/lib/components/molecules/currency-input/types.mjs +0 -18
  86. package/esm2022/lib/components/molecules/date-input/date-input.component.mjs +0 -148
  87. package/esm2022/lib/components/molecules/date-input/types.mjs +0 -2
  88. package/esm2022/lib/components/molecules/date-range-input/date-range-input.component.mjs +0 -416
  89. package/esm2022/lib/components/molecules/date-range-input/types.mjs +0 -2
  90. package/esm2022/lib/components/molecules/docs-api-table/docs-api-table.component.mjs +0 -222
  91. package/esm2022/lib/components/molecules/docs-api-table/types.mjs +0 -11
  92. package/esm2022/lib/components/molecules/docs-breadcrumb/docs-breadcrumb.component.mjs +0 -144
  93. package/esm2022/lib/components/molecules/docs-breadcrumb/types.mjs +0 -2
  94. package/esm2022/lib/components/molecules/docs-callout/docs-callout.component.mjs +0 -60
  95. package/esm2022/lib/components/molecules/docs-code-example/docs-code-example.component.mjs +0 -249
  96. package/esm2022/lib/components/molecules/docs-code-example/types.mjs +0 -2
  97. package/esm2022/lib/components/molecules/docs-nav-links/docs-nav-links.component.mjs +0 -140
  98. package/esm2022/lib/components/molecules/docs-nav-links/types.mjs +0 -2
  99. package/esm2022/lib/components/molecules/docs-search/docs-search.component.mjs +0 -268
  100. package/esm2022/lib/components/molecules/docs-search/types.mjs +0 -2
  101. package/esm2022/lib/components/molecules/docs-section/docs-section.component.mjs +0 -85
  102. package/esm2022/lib/components/molecules/docs-section/types.mjs +0 -2
  103. package/esm2022/lib/components/molecules/email-input/email-input.component.mjs +0 -68
  104. package/esm2022/lib/components/molecules/expandable-text/expandable-text.component.mjs +0 -77
  105. package/esm2022/lib/components/molecules/expandable-text/types.mjs +0 -2
  106. package/esm2022/lib/components/molecules/features-list/features-list.component.mjs +0 -179
  107. package/esm2022/lib/components/molecules/features-list/types.mjs +0 -11
  108. package/esm2022/lib/components/molecules/feedback-form/feedback-form.component.mjs +0 -354
  109. package/esm2022/lib/components/molecules/feedback-form/types.mjs +0 -2
  110. package/esm2022/lib/components/molecules/file-input/file-input.component.mjs +0 -90
  111. package/esm2022/lib/components/molecules/file-input/types.mjs +0 -2
  112. package/esm2022/lib/components/molecules/footer-links/footer-links.component.mjs +0 -391
  113. package/esm2022/lib/components/molecules/footer-links/types.mjs +0 -2
  114. package/esm2022/lib/components/molecules/glow-card/glow-card.component.mjs +0 -314
  115. package/esm2022/lib/components/molecules/glow-card/types.mjs +0 -11
  116. package/esm2022/lib/components/molecules/hint/hint.component.mjs +0 -90
  117. package/esm2022/lib/components/molecules/hour-input/hour-input.component.mjs +0 -28
  118. package/esm2022/lib/components/molecules/image-crop/image-crop.component.mjs +0 -174
  119. package/esm2022/lib/components/molecules/image-crop/index.mjs +0 -2
  120. package/esm2022/lib/components/molecules/info/info.component.mjs +0 -49
  121. package/esm2022/lib/components/molecules/info/types.mjs +0 -2
  122. package/esm2022/lib/components/molecules/language-selector/language-selector.component.mjs +0 -221
  123. package/esm2022/lib/components/molecules/language-selector/types.mjs +0 -2
  124. package/esm2022/lib/components/molecules/layered-card/layered-card.component.mjs +0 -104
  125. package/esm2022/lib/components/molecules/layered-card/types.mjs +0 -2
  126. package/esm2022/lib/components/molecules/link/link.component.mjs +0 -64
  127. package/esm2022/lib/components/molecules/link/types.mjs +0 -2
  128. package/esm2022/lib/components/molecules/linked-providers/linked-providers.component.mjs +0 -236
  129. package/esm2022/lib/components/molecules/linked-providers/types.mjs +0 -27
  130. package/esm2022/lib/components/molecules/links-accordion/links-accordion.component.mjs +0 -203
  131. package/esm2022/lib/components/molecules/links-accordion/types.mjs +0 -2
  132. package/esm2022/lib/components/molecules/links-cake/links-cake.component.mjs +0 -51
  133. package/esm2022/lib/components/molecules/links-cake/types.mjs +0 -2
  134. package/esm2022/lib/components/molecules/multi-select-search/multi-select-search.component.mjs +0 -488
  135. package/esm2022/lib/components/molecules/notes-box/notes-box.component.mjs +0 -92
  136. package/esm2022/lib/components/molecules/notes-box/types.mjs +0 -2
  137. package/esm2022/lib/components/molecules/number-from-to/number-from-to.component.mjs +0 -143
  138. package/esm2022/lib/components/molecules/number-from-to/types.mjs +0 -2
  139. package/esm2022/lib/components/molecules/number-input/number-input.component.mjs +0 -34
  140. package/esm2022/lib/components/molecules/number-stepper/number-stepper.component.mjs +0 -379
  141. package/esm2022/lib/components/molecules/number-stepper/types.mjs +0 -2
  142. package/esm2022/lib/components/molecules/page-links/page-links.component.mjs +0 -150
  143. package/esm2022/lib/components/molecules/page-links/types.mjs +0 -2
  144. package/esm2022/lib/components/molecules/pagination/pagination.component.mjs +0 -253
  145. package/esm2022/lib/components/molecules/pagination/types.mjs +0 -2
  146. package/esm2022/lib/components/molecules/password-input/password-input.component.mjs +0 -93
  147. package/esm2022/lib/components/molecules/phone-input/phone-input.component.mjs +0 -365
  148. package/esm2022/lib/components/molecules/phone-input/types.mjs +0 -19
  149. package/esm2022/lib/components/molecules/pill/pill.component.mjs +0 -202
  150. package/esm2022/lib/components/molecules/pill/types.mjs +0 -2
  151. package/esm2022/lib/components/molecules/pin-input/pin-input.component.mjs +0 -78
  152. package/esm2022/lib/components/molecules/pin-input/types.mjs +0 -2
  153. package/esm2022/lib/components/molecules/plain-code-box/plain-code-box.component.mjs +0 -82
  154. package/esm2022/lib/components/molecules/plain-code-box/types.mjs +0 -2
  155. package/esm2022/lib/components/molecules/popover-selector/popover-selector.component.mjs +0 -188
  156. package/esm2022/lib/components/molecules/popover-selector/types.mjs +0 -2
  157. package/esm2022/lib/components/molecules/progress-status/progress-status.component.mjs +0 -105
  158. package/esm2022/lib/components/molecules/progress-status/types.mjs +0 -2
  159. package/esm2022/lib/components/molecules/prompter/prompter.component.mjs +0 -85
  160. package/esm2022/lib/components/molecules/prompter/types.mjs +0 -2
  161. package/esm2022/lib/components/molecules/quote-box/quote-box.component.mjs +0 -155
  162. package/esm2022/lib/components/molecules/radio-input/radio-input.component.mjs +0 -52
  163. package/esm2022/lib/components/molecules/range-input/range-input.component.mjs +0 -127
  164. package/esm2022/lib/components/molecules/range-input/types.mjs +0 -2
  165. package/esm2022/lib/components/molecules/rating/rating.component.mjs +0 -166
  166. package/esm2022/lib/components/molecules/rating/types.mjs +0 -2
  167. package/esm2022/lib/components/molecules/refresher/refresher.component.mjs +0 -275
  168. package/esm2022/lib/components/molecules/refresher/types.mjs +0 -15
  169. package/esm2022/lib/components/molecules/searchbar/searchbar.component.mjs +0 -127
  170. package/esm2022/lib/components/molecules/searchbar/types.mjs +0 -2
  171. package/esm2022/lib/components/molecules/segment-control/segment-control.component.mjs +0 -129
  172. package/esm2022/lib/components/molecules/segment-control/types.mjs +0 -2
  173. package/esm2022/lib/components/molecules/select-input/select-input.component.mjs +0 -148
  174. package/esm2022/lib/components/molecules/select-search/select-search.component.mjs +0 -434
  175. package/esm2022/lib/components/molecules/share-buttons/share-buttons.component.mjs +0 -274
  176. package/esm2022/lib/components/molecules/share-buttons/types.mjs +0 -88
  177. package/esm2022/lib/components/molecules/stats-card/stats-card.component.mjs +0 -211
  178. package/esm2022/lib/components/molecules/stats-card/types.mjs +0 -2
  179. package/esm2022/lib/components/molecules/stepper/stepper.component.mjs +0 -242
  180. package/esm2022/lib/components/molecules/stepper/types.mjs +0 -2
  181. package/esm2022/lib/components/molecules/swipe-carousel/swipe-carousel.component.mjs +0 -206
  182. package/esm2022/lib/components/molecules/swipe-carousel/types.mjs +0 -2
  183. package/esm2022/lib/components/molecules/tabs/tabs.component.mjs +0 -139
  184. package/esm2022/lib/components/molecules/tabs/types.mjs +0 -2
  185. package/esm2022/lib/components/molecules/testimonial-card/testimonial-card.component.mjs +0 -138
  186. package/esm2022/lib/components/molecules/testimonial-card/types.mjs +0 -2
  187. package/esm2022/lib/components/molecules/text-input/text-input.component.mjs +0 -77
  188. package/esm2022/lib/components/molecules/textarea-input/textarea-input.component.mjs +0 -213
  189. package/esm2022/lib/components/molecules/textarea-input/types.mjs +0 -2
  190. package/esm2022/lib/components/molecules/timeline/timeline.component.mjs +0 -140
  191. package/esm2022/lib/components/molecules/timeline/types.mjs +0 -2
  192. package/esm2022/lib/components/molecules/title-block/title-block.component.mjs +0 -102
  193. package/esm2022/lib/components/molecules/title-block/types.mjs +0 -2
  194. package/esm2022/lib/components/molecules/toggle-input/toggle-input.component.mjs +0 -93
  195. package/esm2022/lib/components/molecules/toggle-input/types.mjs +0 -2
  196. package/esm2022/lib/components/molecules/update-banner/types.mjs +0 -42
  197. package/esm2022/lib/components/molecules/update-banner/update-banner.component.mjs +0 -243
  198. package/esm2022/lib/components/molecules/username-input/types.mjs +0 -2
  199. package/esm2022/lib/components/molecules/username-input/username-input.component.mjs +0 -295
  200. package/esm2022/lib/components/organisms/article/article.component.mjs +0 -578
  201. package/esm2022/lib/components/organisms/article/types.mjs +0 -183
  202. package/esm2022/lib/components/organisms/avatar-upload/avatar-upload.component.mjs +0 -325
  203. package/esm2022/lib/components/organisms/avatar-upload/types.mjs +0 -15
  204. package/esm2022/lib/components/organisms/banner/banner.component.mjs +0 -111
  205. package/esm2022/lib/components/organisms/banner/types.mjs +0 -2
  206. package/esm2022/lib/components/organisms/bottom-nav/bottom-nav.component.mjs +0 -383
  207. package/esm2022/lib/components/organisms/bottom-nav/types.mjs +0 -19
  208. package/esm2022/lib/components/organisms/cards-carousel/cards-carousel.component.mjs +0 -108
  209. package/esm2022/lib/components/organisms/cards-carousel/types.mjs +0 -2
  210. package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +0 -537
  211. package/esm2022/lib/components/organisms/comment-section/types.mjs +0 -2
  212. package/esm2022/lib/components/organisms/company-footer/company-footer.component.mjs +0 -76
  213. package/esm2022/lib/components/organisms/company-footer/types.mjs +0 -2
  214. package/esm2022/lib/components/organisms/cookie-banner/cookie-banner.component.mjs +0 -199
  215. package/esm2022/lib/components/organisms/cookie-banner/types.mjs +0 -2
  216. package/esm2022/lib/components/organisms/data-table/data-table.component.mjs +0 -1081
  217. package/esm2022/lib/components/organisms/data-table/types.mjs +0 -13
  218. package/esm2022/lib/components/organisms/docs-sidebar/docs-sidebar.component.mjs +0 -290
  219. package/esm2022/lib/components/organisms/docs-sidebar/types.mjs +0 -2
  220. package/esm2022/lib/components/organisms/docs-toc/docs-toc.component.mjs +0 -307
  221. package/esm2022/lib/components/organisms/docs-toc/types.mjs +0 -2
  222. package/esm2022/lib/components/organisms/faq/faq.component.mjs +0 -176
  223. package/esm2022/lib/components/organisms/faq/types.mjs +0 -9
  224. package/esm2022/lib/components/organisms/footer/footer.component.mjs +0 -73
  225. package/esm2022/lib/components/organisms/footer/types.mjs +0 -2
  226. package/esm2022/lib/components/organisms/form/factory.mjs +0 -29
  227. package/esm2022/lib/components/organisms/form/form-footer/form-footer.component.mjs +0 -83
  228. package/esm2022/lib/components/organisms/form/form.component.mjs +0 -510
  229. package/esm2022/lib/components/organisms/fun-header/fun-header.component.mjs +0 -225
  230. package/esm2022/lib/components/organisms/fun-header/types.mjs +0 -2
  231. package/esm2022/lib/components/organisms/header/header.component.mjs +0 -51
  232. package/esm2022/lib/components/organisms/header/types.mjs +0 -2
  233. package/esm2022/lib/components/organisms/infinite-list/infinite-list.component.mjs +0 -620
  234. package/esm2022/lib/components/organisms/infinite-list/types.mjs +0 -15
  235. package/esm2022/lib/components/organisms/item-list/item-list.component.mjs +0 -418
  236. package/esm2022/lib/components/organisms/item-list/types.mjs +0 -2
  237. package/esm2022/lib/components/organisms/login/login.component.mjs +0 -735
  238. package/esm2022/lib/components/organisms/login/types.mjs +0 -11
  239. package/esm2022/lib/components/organisms/menu/menu.component.mjs +0 -206
  240. package/esm2022/lib/components/organisms/menu/types.mjs +0 -2
  241. package/esm2022/lib/components/organisms/no-content/no-content.component.mjs +0 -66
  242. package/esm2022/lib/components/organisms/no-content/types.mjs +0 -2
  243. package/esm2022/lib/components/organisms/rotating-text/rotating-text.component.mjs +0 -180
  244. package/esm2022/lib/components/organisms/rotating-text/types.mjs +0 -2
  245. package/esm2022/lib/components/organisms/skeleton-layout/skeleton-layout.component.mjs +0 -423
  246. package/esm2022/lib/components/organisms/skeleton-layout/types.mjs +0 -10
  247. package/esm2022/lib/components/organisms/tabbed-content/tabbed-content.component.mjs +0 -170
  248. package/esm2022/lib/components/organisms/tabbed-content/types.mjs +0 -2
  249. package/esm2022/lib/components/organisms/terminal-404/terminal-404.component.mjs +0 -214
  250. package/esm2022/lib/components/organisms/terminal-404/types.mjs +0 -2
  251. package/esm2022/lib/components/organisms/testimonial-carousel/testimonial-carousel.component.mjs +0 -72
  252. package/esm2022/lib/components/organisms/testimonial-carousel/types.mjs +0 -2
  253. package/esm2022/lib/components/organisms/toolbar/toolbar.component.mjs +0 -255
  254. package/esm2022/lib/components/organisms/toolbar/types.mjs +0 -2
  255. package/esm2022/lib/components/organisms/wizard/types.mjs +0 -10
  256. package/esm2022/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.mjs +0 -111
  257. package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +0 -161
  258. package/esm2022/lib/components/templates/auth-background/auth-background.component.mjs +0 -164
  259. package/esm2022/lib/components/templates/auth-background/types.mjs +0 -2
  260. package/esm2022/lib/components/templates/docs-layout/docs-layout.component.mjs +0 -221
  261. package/esm2022/lib/components/templates/docs-layout/types.mjs +0 -2
  262. package/esm2022/lib/components/templates/docs-page/docs-page.component.mjs +0 -251
  263. package/esm2022/lib/components/templates/docs-page/types.mjs +0 -2
  264. package/esm2022/lib/components/templates/docs-shell/docs-shell.component.mjs +0 -376
  265. package/esm2022/lib/components/templates/docs-shell/types.mjs +0 -2
  266. package/esm2022/lib/components/templates/maintenance-page/maintenance-page.component.mjs +0 -153
  267. package/esm2022/lib/components/templates/maintenance-page/types.mjs +0 -2
  268. package/esm2022/lib/components/templates/page-content/page-content.component.mjs +0 -193
  269. package/esm2022/lib/components/templates/page-content/types.mjs +0 -2
  270. package/esm2022/lib/components/templates/page-template/page-template.component.mjs +0 -188
  271. package/esm2022/lib/components/templates/page-template/types.mjs +0 -2
  272. package/esm2022/lib/components/templates/page-wrapper/page-wrapper.component.mjs +0 -238
  273. package/esm2022/lib/components/templates/page-wrapper/types.mjs +0 -2
  274. package/esm2022/lib/components/templates/simple/simple.component.mjs +0 -123
  275. package/esm2022/lib/components/templates/simple/types.mjs +0 -2
  276. package/esm2022/lib/components/types.mjs +0 -60
  277. package/esm2022/lib/config/company-footer.config.mjs +0 -125
  278. package/esm2022/lib/config/index.mjs +0 -5
  279. package/esm2022/lib/services/ads/ads-loader.service.mjs +0 -120
  280. package/esm2022/lib/services/ads/ads.service.mjs +0 -236
  281. package/esm2022/lib/services/ads/config.mjs +0 -81
  282. package/esm2022/lib/services/ads/index.mjs +0 -13
  283. package/esm2022/lib/services/ads/types.mjs +0 -23
  284. package/esm2022/lib/services/app-config/app-config.service.mjs +0 -209
  285. package/esm2022/lib/services/app-config/config.mjs +0 -47
  286. package/esm2022/lib/services/app-config/index.mjs +0 -48
  287. package/esm2022/lib/services/app-config/types.mjs +0 -13
  288. package/esm2022/lib/services/app-config/version.mjs +0 -85
  289. package/esm2022/lib/services/app-version/app-version.service.mjs +0 -187
  290. package/esm2022/lib/services/app-version/config.mjs +0 -42
  291. package/esm2022/lib/services/app-version/index.mjs +0 -24
  292. package/esm2022/lib/services/app-version/types.mjs +0 -17
  293. package/esm2022/lib/services/auth/auth-state.service.mjs +0 -207
  294. package/esm2022/lib/services/auth/auth.service.mjs +0 -1142
  295. package/esm2022/lib/services/auth/config.mjs +0 -75
  296. package/esm2022/lib/services/auth/device.service.mjs +0 -135
  297. package/esm2022/lib/services/auth/guards.mjs +0 -199
  298. package/esm2022/lib/services/auth/handoff.service.mjs +0 -152
  299. package/esm2022/lib/services/auth/index.mjs +0 -98
  300. package/esm2022/lib/services/auth/interceptor.mjs +0 -122
  301. package/esm2022/lib/services/auth/notification-action.service.mjs +0 -117
  302. package/esm2022/lib/services/auth/oauth-callback.component.mjs +0 -169
  303. package/esm2022/lib/services/auth/oauth.service.mjs +0 -322
  304. package/esm2022/lib/services/auth/org-switch.service.mjs +0 -137
  305. package/esm2022/lib/services/auth/session.service.mjs +0 -78
  306. package/esm2022/lib/services/auth/storage.service.mjs +0 -152
  307. package/esm2022/lib/services/auth/sync.service.mjs +0 -149
  308. package/esm2022/lib/services/auth/token.service.mjs +0 -122
  309. package/esm2022/lib/services/auth/types.mjs +0 -30
  310. package/esm2022/lib/services/confirmation-dialog/confirmation-dialog.service.mjs +0 -189
  311. package/esm2022/lib/services/confirmation-dialog/types.mjs +0 -14
  312. package/esm2022/lib/services/content/content-types/blog.mjs +0 -275
  313. package/esm2022/lib/services/content/content-types/documentation.mjs +0 -303
  314. package/esm2022/lib/services/content/content-types/news.mjs +0 -277
  315. package/esm2022/lib/services/content/index.mjs +0 -51
  316. package/esm2022/lib/services/content/transformer.mjs +0 -265
  317. package/esm2022/lib/services/content/types.mjs +0 -41
  318. package/esm2022/lib/services/docs/docs-navigation.service.mjs +0 -91
  319. package/esm2022/lib/services/donation/config.mjs +0 -41
  320. package/esm2022/lib/services/donation/donation.service.mjs +0 -92
  321. package/esm2022/lib/services/donation/index.mjs +0 -25
  322. package/esm2022/lib/services/donation/types.mjs +0 -10
  323. package/esm2022/lib/services/download.service.mjs +0 -80
  324. package/esm2022/lib/services/feedback/config.mjs +0 -49
  325. package/esm2022/lib/services/feedback/feedback.service.mjs +0 -296
  326. package/esm2022/lib/services/feedback/index.mjs +0 -44
  327. package/esm2022/lib/services/feedback/types.mjs +0 -30
  328. package/esm2022/lib/services/firebase/analytics-error-handler.mjs +0 -141
  329. package/esm2022/lib/services/firebase/analytics-router-tracker.mjs +0 -99
  330. package/esm2022/lib/services/firebase/analytics-types.mjs +0 -7
  331. package/esm2022/lib/services/firebase/analytics.service.mjs +0 -620
  332. package/esm2022/lib/services/firebase/config.mjs +0 -131
  333. package/esm2022/lib/services/firebase/firebase.service.mjs +0 -506
  334. package/esm2022/lib/services/firebase/firestore-collection.mjs +0 -301
  335. package/esm2022/lib/services/firebase/firestore.service.mjs +0 -571
  336. package/esm2022/lib/services/firebase/index.mjs +0 -56
  337. package/esm2022/lib/services/firebase/messaging.service.mjs +0 -721
  338. package/esm2022/lib/services/firebase/notifications.service.mjs +0 -274
  339. package/esm2022/lib/services/firebase/shared-config.mjs +0 -147
  340. package/esm2022/lib/services/firebase/storage.service.mjs +0 -484
  341. package/esm2022/lib/services/firebase/types.mjs +0 -18
  342. package/esm2022/lib/services/firebase/utils/path-builder.mjs +0 -195
  343. package/esm2022/lib/services/firebase/utils/query-builder.mjs +0 -302
  344. package/esm2022/lib/services/i18n/config.mjs +0 -128
  345. package/esm2022/lib/services/i18n/default-content.mjs +0 -577
  346. package/esm2022/lib/services/i18n/i18n.service.mjs +0 -217
  347. package/esm2022/lib/services/i18n/index.mjs +0 -13
  348. package/esm2022/lib/services/i18n/input-i18n.helper.mjs +0 -97
  349. package/esm2022/lib/services/i18n/translate.pipe.mjs +0 -50
  350. package/esm2022/lib/services/i18n/types.mjs +0 -15
  351. package/esm2022/lib/services/icons.service.mjs +0 -83
  352. package/esm2022/lib/services/image/image.service.mjs +0 -244
  353. package/esm2022/lib/services/image/index.mjs +0 -3
  354. package/esm2022/lib/services/image/types.mjs +0 -13
  355. package/esm2022/lib/services/in-app-browser.service.mjs +0 -35
  356. package/esm2022/lib/services/legal-link/legal-link.service.mjs +0 -85
  357. package/esm2022/lib/services/link-processor.service.mjs +0 -259
  358. package/esm2022/lib/services/local-storage.service.mjs +0 -37
  359. package/esm2022/lib/services/locale.service.mjs +0 -75
  360. package/esm2022/lib/services/markdown-article/legal-content.service.mjs +0 -107
  361. package/esm2022/lib/services/markdown-article/markdown-article-parser.mjs +0 -302
  362. package/esm2022/lib/services/markdown-article/markdown-article-parser.service.mjs +0 -20
  363. package/esm2022/lib/services/meta/index.mjs +0 -3
  364. package/esm2022/lib/services/meta/meta.service.mjs +0 -63
  365. package/esm2022/lib/services/meta/types.mjs +0 -2
  366. package/esm2022/lib/services/modal/modal.service.mjs +0 -220
  367. package/esm2022/lib/services/modal/simple-modal-content.component.mjs +0 -133
  368. package/esm2022/lib/services/modal/types.mjs +0 -26
  369. package/esm2022/lib/services/navigation/index.mjs +0 -3
  370. package/esm2022/lib/services/navigation/navigation.service.mjs +0 -216
  371. package/esm2022/lib/services/navigation/types.mjs +0 -16
  372. package/esm2022/lib/services/page-refresh/page-refresh.service.mjs +0 -104
  373. package/esm2022/lib/services/pagination/index.mjs +0 -5
  374. package/esm2022/lib/services/pagination/pagination.service.mjs +0 -218
  375. package/esm2022/lib/services/pagination/types.mjs +0 -14
  376. package/esm2022/lib/services/preferences/index.mjs +0 -3
  377. package/esm2022/lib/services/preferences/preferences.service.mjs +0 -198
  378. package/esm2022/lib/services/preferences/preferences.types.mjs +0 -7
  379. package/esm2022/lib/services/presets/config.mjs +0 -46
  380. package/esm2022/lib/services/presets/index.mjs +0 -5
  381. package/esm2022/lib/services/presets/preset.service.mjs +0 -104
  382. package/esm2022/lib/services/presets/types.mjs +0 -2
  383. package/esm2022/lib/services/qr-generator/qr-generator.service.mjs +0 -341
  384. package/esm2022/lib/services/qr-generator/types.mjs +0 -46
  385. package/esm2022/lib/services/refreshable-stream/index.mjs +0 -8
  386. package/esm2022/lib/services/refreshable-stream/refreshable-stream.mjs +0 -112
  387. package/esm2022/lib/services/skeleton/config.mjs +0 -79
  388. package/esm2022/lib/services/skeleton/directives/loading.directive.mjs +0 -215
  389. package/esm2022/lib/services/skeleton/index.mjs +0 -16
  390. package/esm2022/lib/services/skeleton/skeleton.service.mjs +0 -198
  391. package/esm2022/lib/services/skeleton/templates/detail-skeleton.component.mjs +0 -223
  392. package/esm2022/lib/services/skeleton/templates/form-skeleton.component.mjs +0 -127
  393. package/esm2022/lib/services/skeleton/templates/grid-skeleton.component.mjs +0 -154
  394. package/esm2022/lib/services/skeleton/templates/list-skeleton.component.mjs +0 -110
  395. package/esm2022/lib/services/skeleton/templates/profile-skeleton.component.mjs +0 -207
  396. package/esm2022/lib/services/skeleton/templates/table-skeleton.component.mjs +0 -116
  397. package/esm2022/lib/services/skeleton/types.mjs +0 -11
  398. package/esm2022/lib/services/theme.service.mjs +0 -153
  399. package/esm2022/lib/services/toast.service.mjs +0 -53
  400. package/esm2022/lib/services/types.mjs +0 -5
  401. package/esm2022/lib/shared/constants/storage.mjs +0 -3
  402. package/esm2022/lib/shared/pipes/process-links.pipe.mjs +0 -69
  403. package/esm2022/lib/shared/utils/datetime.mjs +0 -24
  404. package/esm2022/lib/shared/utils/dom.mjs +0 -27
  405. package/esm2022/lib/shared/utils/form-defaults.mjs +0 -112
  406. package/esm2022/lib/shared/utils/styles.mjs +0 -37
  407. package/esm2022/lib/shared/utils/text.mjs +0 -12
  408. package/esm2022/lib/version.mjs +0 -6
  409. package/esm2022/public-api.mjs +0 -367
  410. package/esm2022/valtech-components.mjs +0 -5
  411. package/index.d.ts +0 -5
  412. package/lib/components/atoms/avatar/avatar.component.d.ts +0 -36
  413. package/lib/components/atoms/avatar/types.d.ts +0 -15
  414. package/lib/components/atoms/box/box.component.d.ts +0 -26
  415. package/lib/components/atoms/box/types.d.ts +0 -19
  416. package/lib/components/atoms/button/button.component.d.ts +0 -63
  417. package/lib/components/atoms/button/factory.d.ts +0 -71
  418. package/lib/components/atoms/container/container.component.d.ts +0 -30
  419. package/lib/components/atoms/container/types.d.ts +0 -11
  420. package/lib/components/atoms/countdown/countdown.component.d.ts +0 -38
  421. package/lib/components/atoms/countdown/types.d.ts +0 -108
  422. package/lib/components/atoms/display/display.component.d.ts +0 -19
  423. package/lib/components/atoms/display/types.d.ts +0 -33
  424. package/lib/components/atoms/divider/divider.component.d.ts +0 -27
  425. package/lib/components/atoms/divider/types.d.ts +0 -12
  426. package/lib/components/atoms/fab/fab.component.d.ts +0 -36
  427. package/lib/components/atoms/fab/types.d.ts +0 -45
  428. package/lib/components/atoms/glass/glass.component.d.ts +0 -43
  429. package/lib/components/atoms/glass/types.d.ts +0 -70
  430. package/lib/components/atoms/glow/glow.component.d.ts +0 -42
  431. package/lib/components/atoms/glow/types.d.ts +0 -40
  432. package/lib/components/atoms/horizontal-scroll/horizontal-scroll.component.d.ts +0 -41
  433. package/lib/components/atoms/horizontal-scroll/types.d.ts +0 -13
  434. package/lib/components/atoms/href/href.component.d.ts +0 -25
  435. package/lib/components/atoms/href/types.d.ts +0 -19
  436. package/lib/components/atoms/icon/icon.component.d.ts +0 -18
  437. package/lib/components/atoms/icon/types.d.ts +0 -13
  438. package/lib/components/atoms/image/image.component.d.ts +0 -41
  439. package/lib/components/atoms/image/types.d.ts +0 -37
  440. package/lib/components/atoms/pattern/motifs.d.ts +0 -60
  441. package/lib/components/atoms/pattern/pattern.component.d.ts +0 -68
  442. package/lib/components/atoms/pattern/types.d.ts +0 -61
  443. package/lib/components/atoms/price-tag/price-tag.component.d.ts +0 -15
  444. package/lib/components/atoms/price-tag/types.d.ts +0 -59
  445. package/lib/components/atoms/progress-bar/progress-bar.component.d.ts +0 -35
  446. package/lib/components/atoms/progress-bar/types.d.ts +0 -19
  447. package/lib/components/atoms/progress-ring/progress-ring.component.d.ts +0 -20
  448. package/lib/components/atoms/progress-ring/types.d.ts +0 -24
  449. package/lib/components/atoms/qr-code/qr-code.component.d.ts +0 -33
  450. package/lib/components/atoms/qr-code/types.d.ts +0 -124
  451. package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +0 -53
  452. package/lib/components/atoms/rights-footer/types.d.ts +0 -21
  453. package/lib/components/atoms/skeleton/skeleton.component.d.ts +0 -12
  454. package/lib/components/atoms/skeleton/types.d.ts +0 -29
  455. package/lib/components/atoms/text/text.component.d.ts +0 -33
  456. package/lib/components/atoms/text/types.d.ts +0 -42
  457. package/lib/components/atoms/title/title.component.d.ts +0 -21
  458. package/lib/components/atoms/title/types.d.ts +0 -36
  459. package/lib/components/atoms/user-avatar/types.d.ts +0 -74
  460. package/lib/components/atoms/user-avatar/user-avatar.component.d.ts +0 -55
  461. package/lib/components/molecules/accordion/accordion.component.d.ts +0 -18
  462. package/lib/components/molecules/accordion/types.d.ts +0 -47
  463. package/lib/components/molecules/action-card/action-card.component.d.ts +0 -90
  464. package/lib/components/molecules/action-card/types.d.ts +0 -83
  465. package/lib/components/molecules/action-header/action-header.component.d.ts +0 -27
  466. package/lib/components/molecules/action-header/types.d.ts +0 -27
  467. package/lib/components/molecules/ad-slot/ad-slot.component.d.ts +0 -69
  468. package/lib/components/molecules/alert-box/alert-box.component.d.ts +0 -39
  469. package/lib/components/molecules/alert-box/types.d.ts +0 -37
  470. package/lib/components/molecules/breadcrumb/breadcrumb.component.d.ts +0 -22
  471. package/lib/components/molecules/breadcrumb/types.d.ts +0 -45
  472. package/lib/components/molecules/button-group/button-group.component.d.ts +0 -23
  473. package/lib/components/molecules/button-group/types.d.ts +0 -13
  474. package/lib/components/molecules/card/card.component.d.ts +0 -49
  475. package/lib/components/molecules/card/types.d.ts +0 -32
  476. package/lib/components/molecules/check-input/check-input.component.d.ts +0 -36
  477. package/lib/components/molecules/checkbox-radio-input/checkbox-radio-input.component.d.ts +0 -17
  478. package/lib/components/molecules/chip-group/chip-group.component.d.ts +0 -22
  479. package/lib/components/molecules/chip-group/types.d.ts +0 -65
  480. package/lib/components/molecules/code-display/code-display.component.d.ts +0 -24
  481. package/lib/components/molecules/code-display/types.d.ts +0 -10
  482. package/lib/components/molecules/command-display/command-display.component.d.ts +0 -11
  483. package/lib/components/molecules/command-display/types.d.ts +0 -3
  484. package/lib/components/molecules/comment/comment.component.d.ts +0 -42
  485. package/lib/components/molecules/comment/types.d.ts +0 -171
  486. package/lib/components/molecules/comment-input/comment-input.component.d.ts +0 -16
  487. package/lib/components/molecules/comment-input/types.d.ts +0 -59
  488. package/lib/components/molecules/content-loader/content-loader.component.d.ts +0 -18
  489. package/lib/components/molecules/content-loader/types.d.ts +0 -15
  490. package/lib/components/molecules/content-reaction/content-reaction.component.d.ts +0 -58
  491. package/lib/components/molecules/content-reaction/types.d.ts +0 -77
  492. package/lib/components/molecules/currency-input/currency-input.component.d.ts +0 -40
  493. package/lib/components/molecules/currency-input/types.d.ts +0 -96
  494. package/lib/components/molecules/date-input/date-input.component.d.ts +0 -40
  495. package/lib/components/molecules/date-input/types.d.ts +0 -74
  496. package/lib/components/molecules/date-range-input/date-range-input.component.d.ts +0 -50
  497. package/lib/components/molecules/date-range-input/types.d.ts +0 -109
  498. package/lib/components/molecules/docs-api-table/docs-api-table.component.d.ts +0 -41
  499. package/lib/components/molecules/docs-api-table/types.d.ts +0 -62
  500. package/lib/components/molecules/docs-breadcrumb/docs-breadcrumb.component.d.ts +0 -31
  501. package/lib/components/molecules/docs-breadcrumb/types.d.ts +0 -20
  502. package/lib/components/molecules/docs-callout/docs-callout.component.d.ts +0 -17
  503. package/lib/components/molecules/docs-code-example/docs-code-example.component.d.ts +0 -45
  504. package/lib/components/molecules/docs-code-example/types.d.ts +0 -63
  505. package/lib/components/molecules/docs-nav-links/docs-nav-links.component.d.ts +0 -30
  506. package/lib/components/molecules/docs-nav-links/types.d.ts +0 -31
  507. package/lib/components/molecules/docs-search/docs-search.component.d.ts +0 -47
  508. package/lib/components/molecules/docs-search/types.d.ts +0 -27
  509. package/lib/components/molecules/docs-section/docs-section.component.d.ts +0 -29
  510. package/lib/components/molecules/docs-section/types.d.ts +0 -27
  511. package/lib/components/molecules/email-input/email-input.component.d.ts +0 -34
  512. package/lib/components/molecules/expandable-text/expandable-text.component.d.ts +0 -23
  513. package/lib/components/molecules/expandable-text/types.d.ts +0 -14
  514. package/lib/components/molecules/features-list/features-list.component.d.ts +0 -66
  515. package/lib/components/molecules/features-list/types.d.ts +0 -36
  516. package/lib/components/molecules/feedback-form/feedback-form.component.d.ts +0 -58
  517. package/lib/components/molecules/feedback-form/types.d.ts +0 -54
  518. package/lib/components/molecules/file-input/file-input.component.d.ts +0 -25
  519. package/lib/components/molecules/file-input/types.d.ts +0 -72
  520. package/lib/components/molecules/footer-links/footer-links.component.d.ts +0 -47
  521. package/lib/components/molecules/footer-links/types.d.ts +0 -50
  522. package/lib/components/molecules/glow-card/glow-card.component.d.ts +0 -60
  523. package/lib/components/molecules/glow-card/types.d.ts +0 -94
  524. package/lib/components/molecules/hint/hint.component.d.ts +0 -19
  525. package/lib/components/molecules/hour-input/hour-input.component.d.ts +0 -15
  526. package/lib/components/molecules/image-crop/image-crop.component.d.ts +0 -59
  527. package/lib/components/molecules/image-crop/index.d.ts +0 -1
  528. package/lib/components/molecules/info/info.component.d.ts +0 -9
  529. package/lib/components/molecules/info/types.d.ts +0 -10
  530. package/lib/components/molecules/language-selector/language-selector.component.d.ts +0 -40
  531. package/lib/components/molecules/language-selector/types.d.ts +0 -82
  532. package/lib/components/molecules/layered-card/layered-card.component.d.ts +0 -10
  533. package/lib/components/molecules/layered-card/types.d.ts +0 -15
  534. package/lib/components/molecules/link/link.component.d.ts +0 -24
  535. package/lib/components/molecules/link/types.d.ts +0 -19
  536. package/lib/components/molecules/linked-providers/linked-providers.component.d.ts +0 -30
  537. package/lib/components/molecules/linked-providers/types.d.ts +0 -38
  538. package/lib/components/molecules/links-accordion/links-accordion.component.d.ts +0 -61
  539. package/lib/components/molecules/links-accordion/types.d.ts +0 -39
  540. package/lib/components/molecules/links-cake/links-cake.component.d.ts +0 -17
  541. package/lib/components/molecules/links-cake/types.d.ts +0 -13
  542. package/lib/components/molecules/multi-select-search/multi-select-search.component.d.ts +0 -76
  543. package/lib/components/molecules/notes-box/notes-box.component.d.ts +0 -33
  544. package/lib/components/molecules/notes-box/types.d.ts +0 -35
  545. package/lib/components/molecules/number-from-to/number-from-to.component.d.ts +0 -27
  546. package/lib/components/molecules/number-from-to/types.d.ts +0 -76
  547. package/lib/components/molecules/number-input/number-input.component.d.ts +0 -16
  548. package/lib/components/molecules/number-stepper/number-stepper.component.d.ts +0 -38
  549. package/lib/components/molecules/number-stepper/types.d.ts +0 -88
  550. package/lib/components/molecules/page-links/page-links.component.d.ts +0 -29
  551. package/lib/components/molecules/page-links/types.d.ts +0 -38
  552. package/lib/components/molecules/pagination/pagination.component.d.ts +0 -15
  553. package/lib/components/molecules/pagination/types.d.ts +0 -41
  554. package/lib/components/molecules/password-input/password-input.component.d.ts +0 -37
  555. package/lib/components/molecules/phone-input/phone-input.component.d.ts +0 -59
  556. package/lib/components/molecules/phone-input/types.d.ts +0 -98
  557. package/lib/components/molecules/pill/pill.component.d.ts +0 -44
  558. package/lib/components/molecules/pill/types.d.ts +0 -63
  559. package/lib/components/molecules/pin-input/pin-input.component.d.ts +0 -21
  560. package/lib/components/molecules/pin-input/types.d.ts +0 -69
  561. package/lib/components/molecules/plain-code-box/plain-code-box.component.d.ts +0 -22
  562. package/lib/components/molecules/plain-code-box/types.d.ts +0 -10
  563. package/lib/components/molecules/popover-selector/popover-selector.component.d.ts +0 -42
  564. package/lib/components/molecules/popover-selector/types.d.ts +0 -69
  565. package/lib/components/molecules/progress-status/progress-status.component.d.ts +0 -23
  566. package/lib/components/molecules/progress-status/types.d.ts +0 -20
  567. package/lib/components/molecules/prompter/prompter.component.d.ts +0 -10
  568. package/lib/components/molecules/prompter/types.d.ts +0 -25
  569. package/lib/components/molecules/quote-box/quote-box.component.d.ts +0 -26
  570. package/lib/components/molecules/radio-input/radio-input.component.d.ts +0 -15
  571. package/lib/components/molecules/range-input/range-input.component.d.ts +0 -25
  572. package/lib/components/molecules/range-input/types.d.ts +0 -59
  573. package/lib/components/molecules/rating/rating.component.d.ts +0 -23
  574. package/lib/components/molecules/rating/types.d.ts +0 -41
  575. package/lib/components/molecules/refresher/refresher.component.d.ts +0 -84
  576. package/lib/components/molecules/refresher/types.d.ts +0 -86
  577. package/lib/components/molecules/searchbar/searchbar.component.d.ts +0 -43
  578. package/lib/components/molecules/searchbar/types.d.ts +0 -33
  579. package/lib/components/molecules/segment-control/segment-control.component.d.ts +0 -35
  580. package/lib/components/molecules/segment-control/types.d.ts +0 -46
  581. package/lib/components/molecules/select-input/select-input.component.d.ts +0 -57
  582. package/lib/components/molecules/select-search/select-search.component.d.ts +0 -78
  583. package/lib/components/molecules/share-buttons/share-buttons.component.d.ts +0 -22
  584. package/lib/components/molecules/share-buttons/types.d.ts +0 -108
  585. package/lib/components/molecules/stats-card/stats-card.component.d.ts +0 -20
  586. package/lib/components/molecules/stats-card/types.d.ts +0 -60
  587. package/lib/components/molecules/stepper/stepper.component.d.ts +0 -31
  588. package/lib/components/molecules/stepper/types.d.ts +0 -66
  589. package/lib/components/molecules/swipe-carousel/swipe-carousel.component.d.ts +0 -66
  590. package/lib/components/molecules/swipe-carousel/types.d.ts +0 -35
  591. package/lib/components/molecules/tabs/tabs.component.d.ts +0 -34
  592. package/lib/components/molecules/tabs/types.d.ts +0 -45
  593. package/lib/components/molecules/testimonial-card/testimonial-card.component.d.ts +0 -41
  594. package/lib/components/molecules/testimonial-card/types.d.ts +0 -25
  595. package/lib/components/molecules/text-input/text-input.component.d.ts +0 -42
  596. package/lib/components/molecules/textarea-input/textarea-input.component.d.ts +0 -46
  597. package/lib/components/molecules/textarea-input/types.d.ts +0 -74
  598. package/lib/components/molecules/timeline/timeline.component.d.ts +0 -14
  599. package/lib/components/molecules/timeline/types.d.ts +0 -39
  600. package/lib/components/molecules/title-block/title-block.component.d.ts +0 -12
  601. package/lib/components/molecules/title-block/types.d.ts +0 -15
  602. package/lib/components/molecules/toggle-input/toggle-input.component.d.ts +0 -39
  603. package/lib/components/molecules/toggle-input/types.d.ts +0 -30
  604. package/lib/components/molecules/update-banner/types.d.ts +0 -41
  605. package/lib/components/molecules/update-banner/update-banner.component.d.ts +0 -48
  606. package/lib/components/molecules/username-input/types.d.ts +0 -36
  607. package/lib/components/molecules/username-input/username-input.component.d.ts +0 -58
  608. package/lib/components/organisms/article/article.component.d.ts +0 -108
  609. package/lib/components/organisms/article/types.d.ts +0 -367
  610. package/lib/components/organisms/avatar-upload/avatar-upload.component.d.ts +0 -84
  611. package/lib/components/organisms/avatar-upload/types.d.ts +0 -62
  612. package/lib/components/organisms/banner/banner.component.d.ts +0 -16
  613. package/lib/components/organisms/banner/types.d.ts +0 -29
  614. package/lib/components/organisms/bottom-nav/bottom-nav.component.d.ts +0 -91
  615. package/lib/components/organisms/bottom-nav/types.d.ts +0 -120
  616. package/lib/components/organisms/cards-carousel/cards-carousel.component.d.ts +0 -36
  617. package/lib/components/organisms/cards-carousel/types.d.ts +0 -40
  618. package/lib/components/organisms/comment-section/comment-section.component.d.ts +0 -50
  619. package/lib/components/organisms/comment-section/types.d.ts +0 -144
  620. package/lib/components/organisms/company-footer/company-footer.component.d.ts +0 -37
  621. package/lib/components/organisms/company-footer/types.d.ts +0 -15
  622. package/lib/components/organisms/cookie-banner/cookie-banner.component.d.ts +0 -36
  623. package/lib/components/organisms/cookie-banner/types.d.ts +0 -62
  624. package/lib/components/organisms/data-table/data-table.component.d.ts +0 -63
  625. package/lib/components/organisms/data-table/types.d.ts +0 -219
  626. package/lib/components/organisms/docs-sidebar/docs-sidebar.component.d.ts +0 -51
  627. package/lib/components/organisms/docs-sidebar/types.d.ts +0 -93
  628. package/lib/components/organisms/docs-toc/docs-toc.component.d.ts +0 -62
  629. package/lib/components/organisms/docs-toc/types.d.ts +0 -62
  630. package/lib/components/organisms/faq/faq.component.d.ts +0 -46
  631. package/lib/components/organisms/faq/types.d.ts +0 -53
  632. package/lib/components/organisms/footer/footer.component.d.ts +0 -36
  633. package/lib/components/organisms/footer/types.d.ts +0 -16
  634. package/lib/components/organisms/form/factory.d.ts +0 -17
  635. package/lib/components/organisms/form/form-footer/form-footer.component.d.ts +0 -17
  636. package/lib/components/organisms/form/form.component.d.ts +0 -72
  637. package/lib/components/organisms/fun-header/fun-header.component.d.ts +0 -72
  638. package/lib/components/organisms/fun-header/types.d.ts +0 -28
  639. package/lib/components/organisms/header/header.component.d.ts +0 -22
  640. package/lib/components/organisms/header/types.d.ts +0 -16
  641. package/lib/components/organisms/infinite-list/infinite-list.component.d.ts +0 -113
  642. package/lib/components/organisms/infinite-list/types.d.ts +0 -197
  643. package/lib/components/organisms/item-list/item-list.component.d.ts +0 -43
  644. package/lib/components/organisms/item-list/types.d.ts +0 -126
  645. package/lib/components/organisms/login/login.component.d.ts +0 -79
  646. package/lib/components/organisms/login/types.d.ts +0 -70
  647. package/lib/components/organisms/menu/menu.component.d.ts +0 -44
  648. package/lib/components/organisms/menu/types.d.ts +0 -23
  649. package/lib/components/organisms/no-content/no-content.component.d.ts +0 -14
  650. package/lib/components/organisms/no-content/types.d.ts +0 -17
  651. package/lib/components/organisms/rotating-text/rotating-text.component.d.ts +0 -47
  652. package/lib/components/organisms/rotating-text/types.d.ts +0 -28
  653. package/lib/components/organisms/skeleton-layout/skeleton-layout.component.d.ts +0 -37
  654. package/lib/components/organisms/skeleton-layout/types.d.ts +0 -50
  655. package/lib/components/organisms/tabbed-content/tabbed-content.component.d.ts +0 -65
  656. package/lib/components/organisms/tabbed-content/types.d.ts +0 -53
  657. package/lib/components/organisms/terminal-404/terminal-404.component.d.ts +0 -42
  658. package/lib/components/organisms/terminal-404/types.d.ts +0 -22
  659. package/lib/components/organisms/testimonial-carousel/testimonial-carousel.component.d.ts +0 -33
  660. package/lib/components/organisms/testimonial-carousel/types.d.ts +0 -8
  661. package/lib/components/organisms/toolbar/toolbar.component.d.ts +0 -85
  662. package/lib/components/organisms/toolbar/types.d.ts +0 -31
  663. package/lib/components/organisms/wizard/types.d.ts +0 -42
  664. package/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.d.ts +0 -23
  665. package/lib/components/organisms/wizard/wizard.component.d.ts +0 -27
  666. package/lib/components/templates/auth-background/auth-background.component.d.ts +0 -62
  667. package/lib/components/templates/auth-background/types.d.ts +0 -30
  668. package/lib/components/templates/docs-layout/docs-layout.component.d.ts +0 -42
  669. package/lib/components/templates/docs-layout/types.d.ts +0 -39
  670. package/lib/components/templates/docs-page/docs-page.component.d.ts +0 -61
  671. package/lib/components/templates/docs-page/types.d.ts +0 -121
  672. package/lib/components/templates/docs-shell/docs-shell.component.d.ts +0 -33
  673. package/lib/components/templates/docs-shell/types.d.ts +0 -152
  674. package/lib/components/templates/maintenance-page/maintenance-page.component.d.ts +0 -57
  675. package/lib/components/templates/maintenance-page/types.d.ts +0 -12
  676. package/lib/components/templates/page-content/page-content.component.d.ts +0 -107
  677. package/lib/components/templates/page-content/types.d.ts +0 -27
  678. package/lib/components/templates/page-template/page-template.component.d.ts +0 -54
  679. package/lib/components/templates/page-template/types.d.ts +0 -17
  680. package/lib/components/templates/page-wrapper/page-wrapper.component.d.ts +0 -99
  681. package/lib/components/templates/page-wrapper/types.d.ts +0 -26
  682. package/lib/components/templates/simple/simple.component.d.ts +0 -14
  683. package/lib/components/templates/simple/types.d.ts +0 -10
  684. package/lib/components/types.d.ts +0 -304
  685. package/lib/config/company-footer.config.d.ts +0 -118
  686. package/lib/config/index.d.ts +0 -4
  687. package/lib/services/ads/ads-loader.service.d.ts +0 -41
  688. package/lib/services/ads/ads.service.d.ts +0 -99
  689. package/lib/services/ads/config.d.ts +0 -53
  690. package/lib/services/ads/index.d.ts +0 -9
  691. package/lib/services/ads/types.d.ts +0 -106
  692. package/lib/services/app-config/app-config.service.d.ts +0 -115
  693. package/lib/services/app-config/config.d.ts +0 -31
  694. package/lib/services/app-config/index.d.ts +0 -47
  695. package/lib/services/app-config/types.d.ts +0 -54
  696. package/lib/services/app-config/version.d.ts +0 -64
  697. package/lib/services/app-version/app-version.service.d.ts +0 -64
  698. package/lib/services/app-version/config.d.ts +0 -35
  699. package/lib/services/app-version/index.d.ts +0 -23
  700. package/lib/services/app-version/types.d.ts +0 -35
  701. package/lib/services/auth/auth-state.service.d.ts +0 -106
  702. package/lib/services/auth/auth.service.d.ts +0 -429
  703. package/lib/services/auth/config.d.ts +0 -38
  704. package/lib/services/auth/device.service.d.ts +0 -101
  705. package/lib/services/auth/guards.d.ts +0 -126
  706. package/lib/services/auth/handoff.service.d.ts +0 -159
  707. package/lib/services/auth/index.d.ts +0 -89
  708. package/lib/services/auth/interceptor.d.ts +0 -22
  709. package/lib/services/auth/notification-action.service.d.ts +0 -34
  710. package/lib/services/auth/oauth-callback.component.d.ts +0 -34
  711. package/lib/services/auth/oauth.service.d.ts +0 -99
  712. package/lib/services/auth/org-switch.service.d.ts +0 -127
  713. package/lib/services/auth/session.service.d.ts +0 -60
  714. package/lib/services/auth/storage.service.d.ts +0 -52
  715. package/lib/services/auth/sync.service.d.ts +0 -49
  716. package/lib/services/auth/token.service.d.ts +0 -57
  717. package/lib/services/auth/types.d.ts +0 -862
  718. package/lib/services/confirmation-dialog/confirmation-dialog.service.d.ts +0 -71
  719. package/lib/services/confirmation-dialog/types.d.ts +0 -61
  720. package/lib/services/content/content-types/blog.d.ts +0 -148
  721. package/lib/services/content/content-types/documentation.d.ts +0 -183
  722. package/lib/services/content/content-types/news.d.ts +0 -162
  723. package/lib/services/content/index.d.ts +0 -49
  724. package/lib/services/content/transformer.d.ts +0 -96
  725. package/lib/services/content/types.d.ts +0 -220
  726. package/lib/services/docs/docs-navigation.service.d.ts +0 -51
  727. package/lib/services/donation/config.d.ts +0 -33
  728. package/lib/services/donation/donation.service.d.ts +0 -54
  729. package/lib/services/donation/index.d.ts +0 -25
  730. package/lib/services/donation/types.d.ts +0 -85
  731. package/lib/services/download.service.d.ts +0 -21
  732. package/lib/services/feedback/config.d.ts +0 -35
  733. package/lib/services/feedback/feedback.service.d.ts +0 -134
  734. package/lib/services/feedback/index.d.ts +0 -40
  735. package/lib/services/feedback/types.d.ts +0 -173
  736. package/lib/services/firebase/analytics-error-handler.d.ts +0 -54
  737. package/lib/services/firebase/analytics-router-tracker.d.ts +0 -51
  738. package/lib/services/firebase/analytics-types.d.ts +0 -221
  739. package/lib/services/firebase/analytics.service.d.ts +0 -256
  740. package/lib/services/firebase/config.d.ts +0 -49
  741. package/lib/services/firebase/firebase.service.d.ts +0 -303
  742. package/lib/services/firebase/firestore-collection.d.ts +0 -199
  743. package/lib/services/firebase/firestore.service.d.ts +0 -335
  744. package/lib/services/firebase/index.d.ts +0 -44
  745. package/lib/services/firebase/messaging.service.d.ts +0 -341
  746. package/lib/services/firebase/notifications.service.d.ts +0 -158
  747. package/lib/services/firebase/shared-config.d.ts +0 -151
  748. package/lib/services/firebase/storage.service.d.ts +0 -238
  749. package/lib/services/firebase/types.d.ts +0 -374
  750. package/lib/services/firebase/utils/path-builder.d.ts +0 -132
  751. package/lib/services/firebase/utils/query-builder.d.ts +0 -210
  752. package/lib/services/i18n/config.d.ts +0 -29
  753. package/lib/services/i18n/default-content.d.ts +0 -30
  754. package/lib/services/i18n/i18n.service.d.ts +0 -128
  755. package/lib/services/i18n/index.d.ts +0 -6
  756. package/lib/services/i18n/input-i18n.helper.d.ts +0 -70
  757. package/lib/services/i18n/translate.pipe.d.ts +0 -36
  758. package/lib/services/i18n/types.d.ts +0 -93
  759. package/lib/services/icons.service.d.ts +0 -9
  760. package/lib/services/image/image.service.d.ts +0 -76
  761. package/lib/services/image/index.d.ts +0 -2
  762. package/lib/services/image/types.d.ts +0 -74
  763. package/lib/services/in-app-browser.service.d.ts +0 -16
  764. package/lib/services/legal-link/legal-link.service.d.ts +0 -73
  765. package/lib/services/link-processor.service.d.ts +0 -104
  766. package/lib/services/local-storage.service.d.ts +0 -27
  767. package/lib/services/locale.service.d.ts +0 -52
  768. package/lib/services/markdown-article/legal-content.service.d.ts +0 -73
  769. package/lib/services/markdown-article/markdown-article-parser.d.ts +0 -38
  770. package/lib/services/markdown-article/markdown-article-parser.service.d.ts +0 -12
  771. package/lib/services/meta/index.d.ts +0 -2
  772. package/lib/services/meta/meta.service.d.ts +0 -23
  773. package/lib/services/meta/types.d.ts +0 -12
  774. package/lib/services/modal/modal.service.d.ts +0 -100
  775. package/lib/services/modal/simple-modal-content.component.d.ts +0 -19
  776. package/lib/services/modal/types.d.ts +0 -155
  777. package/lib/services/navigation/index.d.ts +0 -2
  778. package/lib/services/navigation/navigation.service.d.ts +0 -134
  779. package/lib/services/navigation/types.d.ts +0 -67
  780. package/lib/services/page-refresh/page-refresh.service.d.ts +0 -86
  781. package/lib/services/pagination/index.d.ts +0 -2
  782. package/lib/services/pagination/pagination.service.d.ts +0 -43
  783. package/lib/services/pagination/types.d.ts +0 -113
  784. package/lib/services/preferences/index.d.ts +0 -2
  785. package/lib/services/preferences/preferences.service.d.ts +0 -61
  786. package/lib/services/preferences/preferences.types.d.ts +0 -35
  787. package/lib/services/presets/config.d.ts +0 -32
  788. package/lib/services/presets/index.d.ts +0 -3
  789. package/lib/services/presets/preset.service.d.ts +0 -69
  790. package/lib/services/presets/types.d.ts +0 -39
  791. package/lib/services/qr-generator/qr-generator.service.d.ts +0 -115
  792. package/lib/services/qr-generator/types.d.ts +0 -141
  793. package/lib/services/refreshable-stream/index.d.ts +0 -7
  794. package/lib/services/refreshable-stream/refreshable-stream.d.ts +0 -113
  795. package/lib/services/skeleton/config.d.ts +0 -30
  796. package/lib/services/skeleton/directives/loading.directive.d.ts +0 -71
  797. package/lib/services/skeleton/index.d.ts +0 -10
  798. package/lib/services/skeleton/skeleton.service.d.ts +0 -127
  799. package/lib/services/skeleton/templates/detail-skeleton.component.d.ts +0 -18
  800. package/lib/services/skeleton/templates/form-skeleton.component.d.ts +0 -22
  801. package/lib/services/skeleton/templates/grid-skeleton.component.d.ts +0 -18
  802. package/lib/services/skeleton/templates/list-skeleton.component.d.ts +0 -17
  803. package/lib/services/skeleton/templates/profile-skeleton.component.d.ts +0 -20
  804. package/lib/services/skeleton/templates/table-skeleton.component.d.ts +0 -17
  805. package/lib/services/skeleton/types.d.ts +0 -111
  806. package/lib/services/theme.service.d.ts +0 -76
  807. package/lib/services/toast.service.d.ts +0 -28
  808. package/lib/services/types.d.ts +0 -1
  809. package/lib/shared/constants/storage.d.ts +0 -2
  810. package/lib/shared/pipes/process-links.pipe.d.ts +0 -55
  811. package/lib/shared/utils/datetime.d.ts +0 -21
  812. package/lib/shared/utils/dom.d.ts +0 -13
  813. package/lib/shared/utils/form-defaults.d.ts +0 -30
  814. package/lib/shared/utils/styles.d.ts +0 -13
  815. package/lib/shared/utils/text.d.ts +0 -11
  816. package/lib/version.d.ts +0 -5
  817. package/public-api.d.ts +0 -316
@@ -1,189 +0,0 @@
1
- import { Injectable, inject } from '@angular/core';
2
- import { AlertController } from '@ionic/angular/standalone';
3
- import { DEFAULT_CONFIRM_BUTTON, DEFAULT_CANCEL_BUTTON, } from './types';
4
- import * as i0 from "@angular/core";
5
- /**
6
- * Service for displaying confirmation dialogs.
7
- *
8
- * @example Basic usage
9
- * const result = await confirmationService.confirm({
10
- * title: 'Delete Item',
11
- * message: 'Are you sure you want to delete this item?',
12
- * });
13
- *
14
- * if (result.confirmed) {
15
- * // User confirmed
16
- * }
17
- *
18
- * @example Custom buttons
19
- * const result = await confirmationService.confirm({
20
- * title: 'Save Changes',
21
- * message: 'Do you want to save your changes before leaving?',
22
- * confirmButton: { text: 'Save', color: 'success' },
23
- * cancelButton: { text: 'Discard', color: 'danger' },
24
- * extraButtons: [{ text: 'Cancel', role: 'cancel' }]
25
- * });
26
- *
27
- * @example Destructive action
28
- * const result = await confirmationService.confirmDestructive({
29
- * title: 'Delete Account',
30
- * message: 'This action cannot be undone. Are you sure?',
31
- * });
32
- */
33
- export class ConfirmationDialogService {
34
- constructor() {
35
- this.alertController = inject(AlertController);
36
- }
37
- /**
38
- * Shows a confirmation dialog and returns the result.
39
- * @param options - Configuration for the dialog
40
- * @returns Promise resolving to the confirmation result
41
- */
42
- async confirm(options) {
43
- const buttons = this.buildButtons(options);
44
- // Default: usa val-alert (estilo iOS dark unificado de la lib)
45
- const userClasses = options.cssClass
46
- ? Array.isArray(options.cssClass)
47
- ? options.cssClass
48
- : [options.cssClass]
49
- : [];
50
- const cssClass = ['val-alert', ...userClasses];
51
- const alert = await this.alertController.create({
52
- header: options.title,
53
- subHeader: options.subHeader,
54
- message: options.message,
55
- buttons,
56
- backdropDismiss: options.backdropDismiss ?? false,
57
- cssClass,
58
- mode: options.mode ?? 'ios',
59
- translucent: options.translucent ?? true,
60
- animated: options.animated ?? true,
61
- });
62
- await alert.present();
63
- const { role, data } = await alert.onDidDismiss();
64
- // 'destructive' es semánticamente una confirmación (acción peligrosa
65
- // tomada por el user). 'cancel' o backdrop dismiss → no confirmado.
66
- return {
67
- confirmed: role === 'confirm' || role === 'destructive',
68
- role,
69
- data,
70
- };
71
- }
72
- /**
73
- * Shows a simple confirmation dialog with default buttons.
74
- * @param title - Dialog title
75
- * @param message - Dialog message
76
- * @returns Promise resolving to true if confirmed, false otherwise
77
- */
78
- async confirmSimple(title, message) {
79
- const result = await this.confirm({ title, message });
80
- return result.confirmed;
81
- }
82
- /**
83
- * Shows a destructive action confirmation with red confirm button.
84
- * @param options - Configuration for the dialog
85
- * @returns Promise resolving to the confirmation result
86
- */
87
- async confirmDestructive(options) {
88
- // Visualmente idéntico a confirm() — sin colores, solo cambia el role
89
- // semánticamente a 'destructive' para a11y/screen readers.
90
- return this.confirm({
91
- ...options,
92
- confirmButton: {
93
- text: options.confirmButton?.text || 'Delete',
94
- role: 'destructive',
95
- ...options.confirmButton,
96
- },
97
- });
98
- }
99
- /**
100
- * Shows an info alert with just an OK button.
101
- * @param title - Alert title
102
- * @param message - Alert message
103
- */
104
- async alert(title, message) {
105
- const alert = await this.alertController.create({
106
- header: title,
107
- message,
108
- buttons: [{ text: 'OK', role: 'confirm' }],
109
- });
110
- await alert.present();
111
- await alert.onDidDismiss();
112
- }
113
- /**
114
- * Shows a three-option dialog (Save, Discard, Cancel).
115
- * Common for unsaved changes scenarios.
116
- * @param title - Dialog title
117
- * @param message - Dialog message
118
- * @returns Promise resolving to 'save' | 'discard' | 'cancel'
119
- */
120
- async confirmSaveDiscard(title, message) {
121
- const alert = await this.alertController.create({
122
- header: title,
123
- message,
124
- backdropDismiss: false,
125
- buttons: [
126
- {
127
- text: 'Cancel',
128
- role: 'cancel',
129
- },
130
- {
131
- text: 'Discard',
132
- role: 'destructive',
133
- cssClass: 'text-danger',
134
- },
135
- {
136
- text: 'Save',
137
- role: 'confirm',
138
- },
139
- ],
140
- });
141
- await alert.present();
142
- const { role } = await alert.onDidDismiss();
143
- if (role === 'confirm')
144
- return 'save';
145
- if (role === 'destructive')
146
- return 'discard';
147
- return 'cancel';
148
- }
149
- buildButtons(options) {
150
- const buttons = [];
151
- // Cancel button — sin color ionic por default (el CSS de val-alert se encarga)
152
- const cancelBtn = options.cancelButton || DEFAULT_CANCEL_BUTTON;
153
- buttons.push({
154
- text: cancelBtn.text,
155
- role: cancelBtn.role || 'cancel',
156
- cssClass: cancelBtn.cssClass,
157
- handler: cancelBtn.handler,
158
- });
159
- // Extra buttons (if any)
160
- if (options.extraButtons) {
161
- options.extraButtons.forEach(btn => {
162
- buttons.push({
163
- text: btn.text,
164
- role: btn.role,
165
- cssClass: btn.cssClass,
166
- handler: btn.handler,
167
- });
168
- });
169
- }
170
- // Confirm button
171
- const confirmBtn = options.confirmButton || DEFAULT_CONFIRM_BUTTON;
172
- buttons.push({
173
- text: confirmBtn.text,
174
- role: confirmBtn.role || 'confirm',
175
- cssClass: confirmBtn.cssClass,
176
- handler: confirmBtn.handler,
177
- });
178
- return buttons;
179
- }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConfirmationDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
181
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConfirmationDialogService, providedIn: 'root' }); }
182
- }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConfirmationDialogService, decorators: [{
184
- type: Injectable,
185
- args: [{
186
- providedIn: 'root',
187
- }]
188
- }] });
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLWRpYWxvZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUlMLHNCQUFzQixFQUN0QixxQkFBcUIsR0FDdEIsTUFBTSxTQUFTLENBQUM7O0FBRWpCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQkc7QUFJSCxNQUFNLE9BQU8seUJBQXlCO0lBSHRDO1FBSVUsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7S0FtS25EO0lBaktDOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQW1DO1FBQy9DLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0MsK0RBQStEO1FBQy9ELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxRQUFRO1lBQ2xDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUTtnQkFDbEIsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUN0QixDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsTUFBTSxRQUFRLEdBQUcsQ0FBQyxXQUFXLEVBQUUsR0FBRyxXQUFXLENBQUMsQ0FBQztRQUUvQyxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO1lBQzlDLE1BQU0sRUFBRSxPQUFPLENBQUMs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TyxDQUFDO0lBQ2pCLENBQUM7K0dBbktVLHlCQUF5QjttSEFBekIseUJBQXlCLGNBRnhCLE1BQU07OzRGQUVQLHlCQUF5QjtrQkFIckMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFsZXJ0Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHtcbiAgQ29uZmlybWF0aW9uRGlhbG9nTWV0YWRhdGEsXG4gIENvbmZpcm1hdGlvblJlc3VsdCxcbiAgQ29uZmlybWF0aW9uQnV0dG9uLFxuICBERUZBVUxUX0NPTkZJUk1fQlVUVE9OLFxuICBERUZBVUxUX0NBTkNFTF9CVVRUT04sXG59IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIFNlcnZpY2UgZm9yIGRpc3BsYXlpbmcgY29uZmlybWF0aW9uIGRpYWxvZ3MuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XG4gKiAgIHRpdGxlOiAnRGVsZXRlIEl0ZW0nLFxuICogICBtZXNzYWdlOiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGl0ZW0/JyxcbiAqIH0pO1xuICpcbiAqIGlmIChyZXN1bHQuY29uZmlybWVkKSB7XG4gKiAgIC8vIFVzZXIgY29uZmlybWVkXG4gKiB9XG4gKlxuICogQGV4YW1wbGUgQ3VzdG9tIGJ1dHRvbnNcbiAqIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XG4gKiAgIHRpdGxlOiAnU2F2ZSBDaGFuZ2VzJyxcbiAqICAgbWVzc2FnZTogJ0RvIHlvdSB3YW50IHRvIHNhdmUgeW91ciBjaGFuZ2VzIGJlZm9yZSBsZWF2aW5nPycsXG4gKiAgIGNvbmZpcm1CdXR0b246IHsgdGV4dDogJ1NhdmUnLCBjb2xvcjogJ3N1Y2Nlc3MnIH0sXG4gKiAgIGNhbmNlbEJ1dHRvbjogeyB0ZXh0OiAnRGlzY2FyZCcsIGNvbG9yOiAnZGFuZ2VyJyB9LFxuICogICBleHRyYUJ1dHRvbnM6IFt7IHRleHQ6ICdDYW5jZWwnLCByb2xlOiAnY2FuY2VsJyB9XVxuICogfSk7XG4gKlxuICogQGV4YW1wbGUgRGVzdHJ1Y3RpdmUgYWN0aW9uXG4gKiBjb25zdCByZXN1bHQgPSBhd2FpdCBjb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm1EZXN0cnVjdGl2ZSh7XG4gKiAgIHRpdGxlOiAnRGVsZXRlIEFjY291bnQnLFxuICogICBtZXNzYWdlOiAnVGhpcyBhY3Rpb24gY2Fubm90IGJlIHVuZG9uZS4gQXJlIHlvdSBzdXJlPycsXG4gKiB9KTtcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvbkRpYWxvZ1NlcnZpY2Uge1xuICBwcml2YXRlIGFsZXJ0Q29udHJvbGxlciA9IGluamVjdChBbGVydENvbnRyb2xsZXIpO1xuXG4gIC8qKlxuICAgKiBTaG93cyBhIGNvbmZpcm1hdGlvbiBkaWFsb2cgYW5kIHJldHVybnMgdGhlIHJlc3VsdC5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIGZvciB0aGUgZGlhbG9nXG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBjb25maXJtYXRpb24gcmVzdWx0XG4gICAqL1xuICBhc3luYyBjb25maXJtKG9wdGlvbnM6IENvbmZpcm1hdGlvbkRpYWxvZ01ldGFkYXRhKTogUHJvbWlzZTxDb25maXJtYXRpb25SZXN1bHQ+IHtcbiAgICBjb25zdCBidXR0b25zID0gdGhpcy5idWlsZEJ1dHRvbnMob3B0aW9ucyk7XG5cbiAgICAvLyBEZWZhdWx0OiB1c2EgdmFsLWFsZXJ0IChlc3RpbG8gaU9TIGRhcmsgdW5pZmljYWRvIGRlIGxhIGxpYilcbiAgICBjb25zdCB1c2VyQ2xhc3NlcyA9IG9wdGlvbnMuY3NzQ2xhc3NcbiAgICAgID8gQXJyYXkuaXNBcnJheShvcHRpb25zLmNzc0NsYXNzKVxuICAgICAgICA/IG9wdGlvbnMuY3NzQ2xhc3NcbiAgICAgICAgOiBbb3B0aW9ucy5jc3NDbGFzc11cbiAgICAgIDogW107XG4gICAgY29uc3QgY3NzQ2xhc3MgPSBbJ3ZhbC1hbGVydCcsIC4uLnVzZXJDbGFzc2VzXTtcblxuICAgIGNvbnN0IGFsZXJ0ID0gYXdhaXQgdGhpcy5hbGVydENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGhlYWRlcjogb3B0aW9ucy50aXRsZSxcbiAgICAgIHN1YkhlYWRlcjogb3B0aW9ucy5zdWJIZWFkZXIsXG4gICAgICBtZXNzYWdlOiBvcHRpb25zLm1lc3NhZ2UsXG4gICAgICBidXR0b25zLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiBvcHRpb25zLmJhY2tkcm9wRGlzbWlzcyA/PyBmYWxzZSxcbiAgICAgIGNzc0NsYXNzLFxuICAgICAgbW9kZTogb3B0aW9ucy5tb2RlID8/ICdpb3MnLFxuICAgICAgdHJhbnNsdWNlbnQ6IG9wdGlvbnMudHJhbnNsdWNlbnQgPz8gdHJ1ZSxcbiAgICAgIGFuaW1hdGVkOiBvcHRpb25zLmFuaW1hdGVkID8/IHRydWUsXG4gICAgfSk7XG5cbiAgICBhd2FpdCBhbGVydC5wcmVzZW50KCk7XG4gICAgY29uc3QgeyByb2xlLCBkYXRhIH0gPSBhd2FpdCBhbGVydC5vbkRpZERpc21pc3MoKTtcblxuICAgIC8vICdkZXN0cnVjdGl2ZScgZXMgc2Vtw6FudGljYW1lbnRlIHVuYSBjb25maXJtYWNpw7NuIChhY2Npw7NuIHBlbGlncm9zYVxuICAgIC8vIHRvbWFkYSBwb3IgZWwgdXNlcikuICdjYW5jZWwnIG8gYmFja2Ryb3AgZGlzbWlzcyDihpIgbm8gY29uZmlybWFkby5cbiAgICByZXR1cm4ge1xuICAgICAgY29uZmlybWVkOiByb2xlID09PSAnY29uZmlybScgfHwgcm9sZSA9PT0gJ2Rlc3RydWN0aXZlJyxcbiAgICAgIHJvbGUsXG4gICAgICBkYXRhLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogU2hvd3MgYSBzaW1wbGUgY29uZmlybWF0aW9uIGRpYWxvZyB3aXRoIGRlZmF1bHQgYnV0dG9ucy5cbiAgICogQHBhcmFtIHRpdGxlIC0gRGlhbG9nIHRpdGxlXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gRGlhbG9nIG1lc3NhZ2VcbiAgICogQHJldHVybnMgUHJvbWlzZSByZXNvbHZpbmcgdG8gdHJ1ZSBpZiBjb25maXJtZWQsIGZhbHNlIG90aGVyd2lzZVxuICAgKi9cbiAgYXN5bmMgY29uZmlybVNpbXBsZSh0aXRsZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmNvbmZpcm0oeyB0aXRsZSwgbWVzc2FnZSB9KTtcbiAgICByZXR1cm4gcmVzdWx0LmNvbmZpcm1lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93cyBhIGRlc3RydWN0aXZlIGFjdGlvbiBjb25maXJtYXRpb24gd2l0aCByZWQgY29uZmlybSBidXR0b24uXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQ29uZmlndXJhdGlvbiBmb3IgdGhlIGRpYWxvZ1xuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB0byB0aGUgY29uZmlybWF0aW9uIHJlc3VsdFxuICAgKi9cbiAgYXN5bmMgY29uZmlybURlc3RydWN0aXZlKFxuICAgIG9wdGlvbnM6IE9taXQ8Q29uZmlybWF0aW9uRGlhbG9nTWV0YWRhdGEsICdjb25maXJtQnV0dG9uJz4gJiB7XG4gICAgICBjb25maXJtQnV0dG9uPzogUGFydGlhbDxDb25maXJtYXRpb25CdXR0b24+O1xuICAgIH1cbiAgKTogUHJvbWlzZTxDb25maXJtYXRpb25SZXN1bHQ+IHtcbiAgICAvLyBWaXN1YWxtZW50ZSBpZMOpbnRpY28gYSBjb25maXJtKCkg4oCUIHNpbiBjb2xvcmVzLCBzb2xvIGNhbWJpYSBlbCByb2xlXG4gICAgLy8gc2Vtw6FudGljYW1lbnRlIGEgJ2Rlc3RydWN0aXZlJyBwYXJhIGExMXkvc2NyZWVuIHJlYWRlcnMuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlybSh7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgY29uZmlybUJ1dHRvbjoge1xuICAgICAgICB0ZXh0OiBvcHRpb25zLmNvbmZpcm1CdXR0b24/LnRleHQgfHwgJ0RlbGV0ZScsXG4gICAgICAgIHJvbGU6ICdkZXN0cnVjdGl2ZScsXG4gICAgICAgIC4uLm9wdGlvbnMuY29uZmlybUJ1dHRvbixcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2hvd3MgYW4gaW5mbyBhbGVydCB3aXRoIGp1c3QgYW4gT0sgYnV0dG9uLlxuICAgKiBAcGFyYW0gdGl0bGUgLSBBbGVydCB0aXRsZVxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIEFsZXJ0IG1lc3NhZ2VcbiAgICovXG4gIGFzeW5jIGFsZXJ0KHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGFsZXJ0ID0gYXdhaXQgdGhpcy5hbGVydENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGhlYWRlcjogdGl0bGUsXG4gICAgICBtZXNzYWdlLFxuICAgICAgYnV0dG9uczogW3sgdGV4dDogJ09LJywgcm9sZTogJ2NvbmZpcm0nIH1dLFxuICAgIH0pO1xuXG4gICAgYXdhaXQgYWxlcnQucHJlc2VudCgpO1xuICAgIGF3YWl0IGFsZXJ0Lm9uRGlkRGlzbWlzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIGEgdGhyZWUtb3B0aW9uIGRpYWxvZyAoU2F2ZSwgRGlzY2FyZCwgQ2FuY2VsKS5cbiAgICogQ29tbW9uIGZvciB1bnNhdmVkIGNoYW5nZXMgc2NlbmFyaW9zLlxuICAgKiBAcGFyYW0gdGl0bGUgLSBEaWFsb2cgdGl0bGVcbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBEaWFsb2cgbWVzc2FnZVxuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB0byAnc2F2ZScgfCAnZGlzY2FyZCcgfCAnY2FuY2VsJ1xuICAgKi9cbiAgYXN5bmMgY29uZmlybVNhdmVEaXNjYXJkKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8J3NhdmUnIHwgJ2Rpc2NhcmQnIHwgJ2NhbmNlbCc+IHtcbiAgICBjb25zdCBhbGVydCA9IGF3YWl0IHRoaXMuYWxlcnRDb250cm9sbGVyLmNyZWF0ZSh7XG4gICAgICBoZWFkZXI6IHRpdGxlLFxuICAgICAgbWVzc2FnZSxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogZmFsc2UsXG4gICAgICBidXR0b25zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXh0OiAnQ2FuY2VsJyxcbiAgICAgICAgICByb2xlOiAnY2FuY2VsJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRleHQ6ICdEaXNjYXJkJyxcbiAgICAgICAgICByb2xlOiAnZGVzdHJ1Y3RpdmUnLFxuICAgICAgICAgIGNzc0NsYXNzOiAndGV4dC1kYW5nZXInLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGV4dDogJ1NhdmUnLFxuICAgICAgICAgIHJvbGU6ICdjb25maXJtJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBhd2FpdCBhbGVydC5wcmVzZW50KCk7XG4gICAgY29uc3QgeyByb2xlIH0gPSBhd2FpdCBhbGVydC5vbkRpZERpc21pc3MoKTtcblxuICAgIGlmIChyb2xlID09PSAnY29uZmlybScpIHJldHVybiAnc2F2ZSc7XG4gICAgaWYgKHJvbGUgPT09ICdkZXN0cnVjdGl2ZScpIHJldHVybiAnZGlzY2FyZCc7XG4gICAgcmV0dXJuICdjYW5jZWwnO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEJ1dHRvbnMob3B0aW9uczogQ29uZmlybWF0aW9uRGlhbG9nTWV0YWRhdGEpOiBhbnlbXSB7XG4gICAgY29uc3QgYnV0dG9uczogYW55W10gPSBbXTtcblxuICAgIC8vIENhbmNlbCBidXR0b24g4oCUIHNpbiBjb2xvciBpb25pYyBwb3IgZGVmYXVsdCAoZWwgQ1NTIGRlIHZhbC1hbGVydCBzZSBlbmNhcmdhKVxuICAgIGNvbnN0IGNhbmNlbEJ0biA9IG9wdGlvbnMuY2FuY2VsQnV0dG9uIHx8IERFRkFVTFRfQ0FOQ0VMX0JVVFRPTjtcbiAgICBidXR0b25zLnB1c2goe1xuICAgICAgdGV4dDogY2FuY2VsQnRuLnRleHQsXG4gICAgICByb2xlOiBjYW5jZWxCdG4ucm9sZSB8fCAnY2FuY2VsJyxcbiAgICAgIGNzc0NsYXNzOiBjYW5jZWxCdG4uY3NzQ2xhc3MsXG4gICAgICBoYW5kbGVyOiBjYW5jZWxCdG4uaGFuZGxlcixcbiAgICB9KTtcblxuICAgIC8vIEV4dHJhIGJ1dHRvbnMgKGlmIGFueSlcbiAgICBpZiAob3B0aW9ucy5leHRyYUJ1dHRvbnMpIHtcbiAgICAgIG9wdGlvbnMuZXh0cmFCdXR0b25zLmZvckVhY2goYnRuID0+IHtcbiAgICAgICAgYnV0dG9ucy5wdXNoKHtcbiAgICAgICAgICB0ZXh0OiBidG4udGV4dCxcbiAgICAgICAgICByb2xlOiBidG4ucm9sZSxcbiAgICAgICAgICBjc3NDbGFzczogYnRuLmNzc0NsYXNzLFxuICAgICAgICAgIGhhbmRsZXI6IGJ0bi5oYW5kbGVyLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIENvbmZpcm0gYnV0dG9uXG4gICAgY29uc3QgY29uZmlybUJ0biA9IG9wdGlvbnMuY29uZmlybUJ1dHRvbiB8fCBERUZBVUxUX0NPTkZJUk1fQlVUVE9OO1xuICAgIGJ1dHRvbnMucHVzaCh7XG4gICAgICB0ZXh0OiBjb25maXJtQnRuLnRleHQsXG4gICAgICByb2xlOiBjb25maXJtQnRuLnJvbGUgfHwgJ2NvbmZpcm0nLFxuICAgICAgY3NzQ2xhc3M6IGNvbmZpcm1CdG4uY3NzQ2xhc3MsXG4gICAgICBoYW5kbGVyOiBjb25maXJtQnRuLmhhbmRsZXIsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gYnV0dG9ucztcbiAgfVxufVxuIl19
@@ -1,14 +0,0 @@
1
- /**
2
- * Default confirmation dialog options.
3
- */
4
- export const DEFAULT_CONFIRM_BUTTON = {
5
- text: 'Confirm',
6
- role: 'confirm',
7
- color: 'primary',
8
- };
9
- export const DEFAULT_CANCEL_BUTTON = {
10
- text: 'Cancel',
11
- role: 'cancel',
12
- color: 'medium',
13
- };
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi1kaWFsb2cvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNERBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQXVCO0lBQ3hELElBQUksRUFBRSxTQUFTO0lBQ2YsSUFBSSxFQUFFLFNBQVM7SUFDZixLQUFLLEVBQUUsU0FBUztDQUNqQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQXVCO0lBQ3ZELElBQUksRUFBRSxRQUFRO0lBQ2QsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVBQUUsUUFBUTtDQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAaW9uaWMvY29yZSc7XG5cbi8qKlxuICogQnV0dG9uIGNvbmZpZ3VyYXRpb24gZm9yIGNvbmZpcm1hdGlvbiBkaWFsb2cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybWF0aW9uQnV0dG9uIHtcbiAgLyoqIEJ1dHRvbiB0ZXh0ICovXG4gIHRleHQ6IHN0cmluZztcbiAgLyoqIEJ1dHRvbiByb2xlICovXG4gIHJvbGU/OiAnY2FuY2VsJyB8ICdkZXN0cnVjdGl2ZScgfCAnY29uZmlybSc7XG4gIC8qKiBCdXR0b24gY29sb3IgKElvbmljIGNvbG9yKSAqL1xuICBjb2xvcj86IENvbG9yO1xuICAvKiogQ1NTIGNsYXNzIGZvciB0aGUgYnV0dG9uICovXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xuICAvKiogSGFuZGxlciBmdW5jdGlvbiBjYWxsZWQgd2hlbiBidXR0b24gaXMgY2xpY2tlZCAqL1xuICBoYW5kbGVyPzogKCkgPT4gdm9pZCB8IFByb21pc2U8dm9pZD4gfCBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPjtcbn1cblxuLyoqXG4gKiBNZXRhZGF0YSBmb3IgdGhlIGNvbmZpcm1hdGlvbiBkaWFsb2cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybWF0aW9uRGlhbG9nTWV0YWRhdGEge1xuICAvKiogRGlhbG9nIHRpdGxlICovXG4gIHRpdGxlOiBzdHJpbmc7XG4gIC8qKiBEaWFsb2cgbWVzc2FnZS9jb250ZW50ICovXG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgLyoqIENvbmZpcm0gYnV0dG9uIGNvbmZpZ3VyYXRpb24gKi9cbiAgY29uZmlybUJ1dHRvbj86IENvbmZpcm1hdGlvbkJ1dHRvbjtcbiAgLyoqIENhbmNlbCBidXR0b24gY29uZmlndXJhdGlvbiAqL1xuICBjYW5jZWxCdXR0b24/OiBDb25maXJtYXRpb25CdXR0b247XG4gIC8qKiBBZGRpdGlvbmFsIGJ1dHRvbnMgKGJldHdlZW4gY2FuY2VsIGFuZCBjb25maXJtKSAqL1xuICBleHRyYUJ1dHRvbnM/OiBDb25maXJtYXRpb25CdXR0b25bXTtcbiAgLyoqIEFsbG93IGRpc21pc3NpbmcgYnkgY2xpY2tpbmcgYmFja2Ryb3AgKi9cbiAgYmFja2Ryb3BEaXNtaXNzPzogYm9vbGVhbjtcbiAgLyoqIENTUyBjbGFzcyhlcykgZm9yIHRoZSBhbGVydCAqL1xuICBjc3NDbGFzcz86IHN0cmluZyB8IHN0cmluZ1tdO1xuICAvKiogQWxlcnQgbW9kZSAqL1xuICBtb2RlPzogJ2lvcycgfCAnbWQnO1xuICAvKiogVW5pcXVlIHRva2VuIGlkZW50aWZpZXIgKi9cbiAgdG9rZW4/OiBzdHJpbmc7XG4gIC8qKiBUcmFuc2x1Y2VudCBiYWNrZHJvcCAqL1xuICB0cmFuc2x1Y2VudD86IGJvb2xlYW47XG4gIC8qKiBBbmltYXRlZCB0cmFuc2l0aW9ucyAqL1xuICBhbmltYXRlZD86IGJvb2xlYW47XG4gIC8qKiBIZWFkZXIgc3VidGl0bGUgKi9cbiAgc3ViSGVhZGVyPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3VsdCBmcm9tIGNvbmZpcm1hdGlvbiBkaWFsb2cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybWF0aW9uUmVzdWx0IHtcbiAgLyoqIFdoZXRoZXIgdGhlIGRpYWxvZyB3YXMgY29uZmlybWVkICovXG4gIGNvbmZpcm1lZDogYm9vbGVhbjtcbiAgLyoqIFRoZSByb2xlIG9mIHRoZSBidXR0b24gY2xpY2tlZCAqL1xuICByb2xlPzogc3RyaW5nO1xuICAvKiogQW55IGRhdGEgcmV0dXJuZWQgKi9cbiAgZGF0YT86IGFueTtcbn1cblxuLyoqXG4gKiBEZWZhdWx0IGNvbmZpcm1hdGlvbiBkaWFsb2cgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfQ09ORklSTV9CVVRUT046IENvbmZpcm1hdGlvbkJ1dHRvbiA9IHtcbiAgdGV4dDogJ0NvbmZpcm0nLFxuICByb2xlOiAnY29uZmlybScsXG4gIGNvbG9yOiAncHJpbWFyeScsXG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9DQU5DRUxfQlVUVE9OOiBDb25maXJtYXRpb25CdXR0b24gPSB7XG4gIHRleHQ6ICdDYW5jZWwnLFxuICByb2xlOiAnY2FuY2VsJyxcbiAgY29sb3I6ICdtZWRpdW0nLFxufTtcbiJdfQ==
@@ -1,275 +0,0 @@
1
- /**
2
- * Blog Post Content Type
3
- *
4
- * Represents a blog post with title, excerpt, cover image,
5
- * and structured content blocks.
6
- */
7
- import { ContentTransformer } from '../transformer';
8
- /**
9
- * Calculates estimated reading time based on word count
10
- * @param content - Array of content blocks
11
- * @returns Estimated minutes to read
12
- */
13
- function calculateReadingTime(content) {
14
- const wordsPerMinute = 200;
15
- let wordCount = 0;
16
- for (const block of content) {
17
- if ('text' in block && typeof block.text === 'string') {
18
- wordCount += block.text.split(/\s+/).length;
19
- }
20
- if (block.type === 'list') {
21
- wordCount += block.items.join(' ').split(/\s+/).length;
22
- }
23
- if (block.type === 'code') {
24
- wordCount += block.code.split(/\s+/).length * 0.5; // Code reads faster
25
- }
26
- }
27
- return Math.max(1, Math.ceil(wordCount / wordsPerMinute));
28
- }
29
- /**
30
- * BlogPostBuilder provides a fluent API for creating blog posts.
31
- *
32
- * @example
33
- * ```typescript
34
- * const post = new BlogPostBuilder()
35
- * .title('My First Post')
36
- * .excerpt('A brief introduction...')
37
- * .author('John Doe', '/avatars/john.jpg')
38
- * .coverImage('/images/post-cover.jpg')
39
- * .heading('Introduction')
40
- * .paragraph('Welcome to my blog...')
41
- * .build();
42
- *
43
- * // Convert to ArticleMetadata
44
- * const article = post.toArticle();
45
- * ```
46
- */
47
- export class BlogPostBuilder {
48
- constructor() {
49
- this.post = {
50
- type: 'blog',
51
- content: [],
52
- meta: {},
53
- config: { showMeta: true },
54
- };
55
- }
56
- /**
57
- * Sets the blog post title
58
- */
59
- title(title) {
60
- this.post.title = title;
61
- return this;
62
- }
63
- /**
64
- * Sets the blog post excerpt
65
- */
66
- excerpt(excerpt) {
67
- this.post.excerpt = excerpt;
68
- return this;
69
- }
70
- /**
71
- * Sets the cover image URL
72
- */
73
- coverImage(url) {
74
- this.post.coverImage = url;
75
- return this;
76
- }
77
- /**
78
- * Marks the post as featured
79
- */
80
- featured(value = true) {
81
- this.post.featured = value;
82
- return this;
83
- }
84
- /**
85
- * Sets the post author
86
- */
87
- author(name, avatar, role) {
88
- this.post.meta = {
89
- ...this.post.meta,
90
- author: { name, avatar, role },
91
- };
92
- return this;
93
- }
94
- /**
95
- * Sets the publication date
96
- */
97
- publishedAt(date) {
98
- this.post.meta = {
99
- ...this.post.meta,
100
- publishedAt: date,
101
- };
102
- return this;
103
- }
104
- /**
105
- * Sets tags for the post
106
- */
107
- tags(...tags) {
108
- this.post.meta = {
109
- ...this.post.meta,
110
- tags,
111
- };
112
- return this;
113
- }
114
- /**
115
- * Sets the category
116
- */
117
- category(category) {
118
- this.post.meta = {
119
- ...this.post.meta,
120
- category,
121
- };
122
- return this;
123
- }
124
- /**
125
- * Sets the slug
126
- */
127
- slug(slug) {
128
- this.post.meta = {
129
- ...this.post.meta,
130
- slug,
131
- };
132
- return this;
133
- }
134
- /**
135
- * Sets the ID
136
- */
137
- id(id) {
138
- this.post.meta = {
139
- ...this.post.meta,
140
- id,
141
- };
142
- return this;
143
- }
144
- // Content block methods
145
- /**
146
- * Adds a heading block
147
- */
148
- heading(text, level = 2) {
149
- this.post.content.push({ type: 'heading', level, text });
150
- return this;
151
- }
152
- /**
153
- * Adds a paragraph block
154
- */
155
- paragraph(text, emphasis) {
156
- this.post.content.push({ type: 'paragraph', text, emphasis });
157
- return this;
158
- }
159
- /**
160
- * Adds a quote block
161
- */
162
- quote(text, author, source) {
163
- this.post.content.push({ type: 'quote', text, author, source });
164
- return this;
165
- }
166
- /**
167
- * Adds a code block
168
- */
169
- code(code, language) {
170
- this.post.content.push({ type: 'code', code, language });
171
- return this;
172
- }
173
- /**
174
- * Adds an unordered list
175
- */
176
- list(items) {
177
- this.post.content.push({ type: 'list', items });
178
- return this;
179
- }
180
- /**
181
- * Adds an ordered/numbered list
182
- */
183
- orderedList(items) {
184
- this.post.content.push({ type: 'list', items, ordered: true });
185
- return this;
186
- }
187
- /**
188
- * Adds a checklist
189
- */
190
- checklist(items) {
191
- this.post.content.push({ type: 'list', items, checklist: true });
192
- return this;
193
- }
194
- /**
195
- * Adds an image block
196
- */
197
- image(src, alt, caption) {
198
- this.post.content.push({ type: 'image', src, alt, caption });
199
- return this;
200
- }
201
- /**
202
- * Adds a callout/note block
203
- */
204
- callout(text, variant = 'info', title) {
205
- this.post.content.push({ type: 'callout', text, variant, title });
206
- return this;
207
- }
208
- /**
209
- * Adds a divider
210
- */
211
- divider(style) {
212
- this.post.content.push({ type: 'divider', style });
213
- return this;
214
- }
215
- /**
216
- * Adds a button/CTA
217
- */
218
- button(text, href, color) {
219
- this.post.content.push({ type: 'button', text, href, color });
220
- return this;
221
- }
222
- /**
223
- * Configures rendering options
224
- */
225
- config(config) {
226
- this.post.config = { ...this.post.config, ...config };
227
- return this;
228
- }
229
- /**
230
- * Builds the final BlogPost object
231
- */
232
- build() {
233
- const content = this.post.content || [];
234
- // Auto-calculate reading time if not set
235
- if (!this.post.readingTime) {
236
- this.post.readingTime = calculateReadingTime(content);
237
- }
238
- return {
239
- type: 'blog',
240
- title: this.post.title || 'Untitled Post',
241
- excerpt: this.post.excerpt || '',
242
- coverImage: this.post.coverImage,
243
- readingTime: this.post.readingTime,
244
- featured: this.post.featured,
245
- meta: this.post.meta,
246
- content,
247
- config: this.post.config,
248
- };
249
- }
250
- /**
251
- * Builds and converts to ArticleMetadata
252
- */
253
- toArticle() {
254
- return ContentTransformer.toArticle(this.build());
255
- }
256
- /**
257
- * Resets the builder for reuse
258
- */
259
- clear() {
260
- this.post = {
261
- type: 'blog',
262
- content: [],
263
- meta: {},
264
- config: { showMeta: true },
265
- };
266
- return this;
267
- }
268
- }
269
- /**
270
- * Creates a new BlogPostBuilder instance
271
- */
272
- export function blogPost() {
273
- return new BlogPostBuilder();
274
- }
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvY29udGVudC9jb250ZW50LXR5cGVzL2Jsb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFJSCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQWtCcEQ7Ozs7R0FJRztBQUNILFNBQVMsb0JBQW9CLENBQUMsT0FBdUI7SUFDbkQsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO0lBQzNCLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztJQUVsQixLQUFLLE1BQU0sS0FBSyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQzVCLElBQUksTUFBTSxJQUFJLEtBQUssSUFBSSxPQUFPLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDdEQsU0FBUyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQzFCLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDMUIsU0FBUyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxvQkFBb0I7UUFDekUsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLGNBQWMsQ0FBQyxD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R0FBRztZQUNWLElBQUksRUFBRSxNQUFNO1lBQ1osT0FBTyxFQUFFLEVBQUU7WUFDWCxJQUFJLEVBQUUsRUFBRTtZQUNSLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7U0FDM0IsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsUUFBUTtJQUN0QixPQUFPLElBQUksZUFBZSxFQUFFLENBQUM7QUFDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQmxvZyBQb3N0IENvbnRlbnQgVHlwZVxuICpcbiAqIFJlcHJlc2VudHMgYSBibG9nIHBvc3Qgd2l0aCB0aXRsZSwgZXhjZXJwdCwgY292ZXIgaW1hZ2UsXG4gKiBhbmQgc3RydWN0dXJlZCBjb250ZW50IGJsb2Nrcy5cbiAqL1xuXG5pbXBvcnQgeyBBcnRpY2xlTWV0YWRhdGEgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL29yZ2FuaXNtcy9hcnRpY2xlL3R5cGVzJztcbmltcG9ydCB7IENvbnRlbnREb2N1bWVudCwgQ29udGVudE1ldGEsIENvbnRlbnRCbG9jaywgQ29udGVudENvbmZpZyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IENvbnRlbnRUcmFuc2Zvcm1lciB9IGZyb20gJy4uL3RyYW5zZm9ybWVyJztcblxuLyoqXG4gKiBCbG9nIHBvc3QgZG9jdW1lbnQgaW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmxvZ1Bvc3QgZXh0ZW5kcyBDb250ZW50RG9jdW1lbnQ8J2Jsb2cnPiB7XG4gIC8qKiBCbG9nIHBvc3QgdGl0bGUgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqIFNob3J0IGV4Y2VycHQvc3VtbWFyeSBmb3IgbGlzdGluZ3MgKi9cbiAgZXhjZXJwdDogc3RyaW5nO1xuICAvKiogQ292ZXIgaW1hZ2UgVVJMICovXG4gIGNvdmVySW1hZ2U/OiBzdHJpbmc7XG4gIC8qKiBFc3RpbWF0ZWQgcmVhZGluZyB0aW1lIGluIG1pbnV0ZXMgKi9cbiAgcmVhZGluZ1RpbWU/OiBudW1iZXI7XG4gIC8qKiBGZWF0dXJlZCBwb3N0IGZsYWcgKi9cbiAgZmVhdHVyZWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZXMgZXN0aW1hdGVkIHJlYWRpbmcgdGltZSBiYXNlZCBvbiB3b3JkIGNvdW50XG4gKiBAcGFyYW0gY29udGVudCAtIEFycmF5IG9mIGNvbnRlbnQgYmxvY2tzXG4gKiBAcmV0dXJucyBFc3RpbWF0ZWQgbWludXRlcyB0byByZWFkXG4gKi9cbmZ1bmN0aW9uIGNhbGN1bGF0ZVJlYWRpbmdUaW1lKGNvbnRlbnQ6IENvbnRlbnRCbG9ja1tdKTogbnVtYmVyIHtcbiAgY29uc3Qgd29yZHNQZXJNaW51dGUgPSAyMDA7XG4gIGxldCB3b3JkQ291bnQgPSAwO1xuXG4gIGZvciAoY29uc3QgYmxvY2sgb2YgY29udGVudCkge1xuICAgIGlmICgndGV4dCcgaW4gYmxvY2sgJiYgdHlwZW9mIGJsb2NrLnRleHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICB3b3JkQ291bnQgKz0gYmxvY2sudGV4dC5zcGxpdCgvXFxzKy8pLmxlbmd0aDtcbiAgICB9XG4gICAgaWYgKGJsb2NrLnR5cGUgPT09ICdsaXN0Jykge1xuICAgICAgd29yZENvdW50ICs9IGJsb2NrLml0ZW1zLmpvaW4oJyAnKS5zcGxpdCgvXFxzKy8pLmxlbmd0aDtcbiAgICB9XG4gICAgaWYgKGJsb2NrLnR5cGUgPT09ICdjb2RlJykge1xuICAgICAgd29yZENvdW50ICs9IGJsb2NrLmNvZGUuc3BsaXQoL1xccysvKS5sZW5ndGggKiAwLjU7IC8vIENvZGUgcmVhZHMgZmFzdGVyXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIE1hdGgubWF4KDEsIE1hdGguY2VpbCh3b3JkQ291bnQgLyB3b3Jkc1Blck1pbnV0ZSkpO1xufVxuXG4vKipcbiAqIEJsb2dQb3N0QnVpbGRlciBwcm92aWRlcyBhIGZsdWVudCBBUEkgZm9yIGNyZWF0aW5nIGJsb2cgcG9zdHMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHBvc3QgPSBuZXcgQmxvZ1Bvc3RCdWlsZGVyKClcbiAqICAgLnRpdGxlKCdNeSBGaXJzdCBQb3N0JylcbiAqICAgLmV4Y2VycHQoJ0EgYnJpZWYgaW50cm9kdWN0aW9uLi4uJylcbiAqICAgLmF1dGhvcignSm9obiBEb2UnLCAnL2F2YXRhcnMvam9obi5qcGcnKVxuICogICAuY292ZXJJbWFnZSgnL2ltYWdlcy9wb3N0LWNvdmVyLmpwZycpXG4gKiAgIC5oZWFkaW5nKCdJbnRyb2R1Y3Rpb24nKVxuICogICAucGFyYWdyYXBoKCdXZWxjb21lIHRvIG15IGJsb2cuLi4nKVxuICogICAuYnVpbGQoKTtcbiAqXG4gKiAvLyBDb252ZXJ0IHRvIEFydGljbGVNZXRhZGF0YVxuICogY29uc3QgYXJ0aWNsZSA9IHBvc3QudG9BcnRpY2xlKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEJsb2dQb3N0QnVpbGRlciB7XG4gIHByaXZhdGUgcG9zdDogUGFydGlhbDxCbG9nUG9zdD4gPSB7XG4gICAgdHlwZTogJ2Jsb2cnLFxuICAgIGNvbnRlbnQ6IFtdLFxuICAgIG1ldGE6IHt9LFxuICAgIGNvbmZpZzogeyBzaG93TWV0YTogdHJ1ZSB9LFxuICB9O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBibG9nIHBvc3QgdGl0bGVcbiAgICovXG4gIHRpdGxlKHRpdGxlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QudGl0bGUgPSB0aXRsZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBibG9nIHBvc3QgZXhjZXJwdFxuICAgKi9cbiAgZXhjZXJwdChleGNlcnB0OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QuZXhjZXJwdCA9IGV4Y2VycHQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY292ZXIgaW1hZ2UgVVJMXG4gICAqL1xuICBjb3ZlckltYWdlKHVybDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0LmNvdmVySW1hZ2UgPSB1cmw7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogTWFya3MgdGhlIHBvc3QgYXMgZmVhdHVyZWRcbiAgICovXG4gIGZlYXR1cmVkKHZhbHVlOiBib29sZWFuID0gdHJ1ZSk6IHRoaXMge1xuICAgIHRoaXMucG9zdC5mZWF0dXJlZCA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBvc3QgYXV0aG9yXG4gICAqL1xuICBhdXRob3IobmFtZTogc3RyaW5nLCBhdmF0YXI/OiBzdHJpbmcsIHJvbGU/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QubWV0YSA9IHtcbiAgICAgIC4uLnRoaXMucG9zdC5tZXRhLFxuICAgICAgYXV0aG9yOiB7IG5hbWUsIGF2YXRhciwgcm9sZSB9LFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcHVibGljYXRpb24gZGF0ZVxuICAgKi9cbiAgcHVibGlzaGVkQXQoZGF0ZTogRGF0ZSB8IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMucG9zdC5tZXRhID0ge1xuICAgICAgLi4udGhpcy5wb3N0Lm1ldGEsXG4gICAgICBwdWJsaXNoZWRBdDogZGF0ZSxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGFncyBmb3IgdGhlIHBvc3RcbiAgICovXG4gIHRhZ3MoLi4udGFnczogc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QubWV0YSA9IHtcbiAgICAgIC4uLnRoaXMucG9zdC5tZXRhLFxuICAgICAgdGFncyxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNhdGVnb3J5XG4gICAqL1xuICBjYXRlZ29yeShjYXRlZ29yeTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0Lm1ldGEgPSB7XG4gICAgICAuLi50aGlzLnBvc3QubWV0YSxcbiAgICAgIGNhdGVnb3J5LFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2x1Z1xuICAgKi9cbiAgc2x1ZyhzbHVnOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QubWV0YSA9IHtcbiAgICAgIC4uLnRoaXMucG9zdC5tZXRhLFxuICAgICAgc2x1ZyxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIElEXG4gICAqL1xuICBpZChpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0Lm1ldGEgPSB7XG4gICAgICAuLi50aGlzLnBvc3QubWV0YSxcbiAgICAgIGlkLFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvLyBDb250ZW50IGJsb2NrIG1ldGhvZHNcblxuICAvKipcbiAgICogQWRkcyBhIGhlYWRpbmcgYmxvY2tcbiAgICovXG4gIGhlYWRpbmcodGV4dDogc3RyaW5nLCBsZXZlbDogMSB8IDIgfCAzID0gMik6IHRoaXMge1xuICAgIHRoaXMucG9zdC5jb250ZW50IS5wdXNoKHsgdHlwZTogJ2hlYWRpbmcnLCBsZXZlbCwgdGV4dCB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcGFyYWdyYXBoIGJsb2NrXG4gICAqL1xuICBwYXJhZ3JhcGgodGV4dDogc3RyaW5nLCBlbXBoYXNpcz86IGJvb2xlYW4pOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QuY29udGVudCEucHVzaCh7IHR5cGU6ICdwYXJhZ3JhcGgnLCB0ZXh0LCBlbXBoYXNpcyB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcXVvdGUgYmxvY2tcbiAgICovXG4gIHF1b3RlKHRleHQ6IHN0cmluZywgYXV0aG9yPzogc3RyaW5nLCBzb3VyY2U/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QuY29udGVudCEucHVzaCh7IHR5cGU6ICdxdW90ZScsIHRleHQsIGF1dGhvciwgc291cmNlIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBjb2RlIGJsb2NrXG4gICAqL1xuICBjb2RlKGNvZGU6IHN0cmluZywgbGFuZ3VhZ2U/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QuY29udGVudCEucHVzaCh7IHR5cGU6ICdjb2RlJywgY29kZSwgbGFuZ3VhZ2UgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiB1bm9yZGVyZWQgbGlzdFxuICAgKi9cbiAgbGlzdChpdGVtczogc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QuY29udGVudCEucHVzaCh7IHR5cGU6ICdsaXN0JywgaXRlbXMgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBvcmRlcmVkL251bWJlcmVkIGxpc3RcbiAgICovXG4gIG9yZGVyZWRMaXN0KGl0ZW1zOiBzdHJpbmdbXSk6IHRoaXMge1xuICAgIHRoaXMucG9zdC5jb250ZW50IS5wdXNoKHsgdHlwZTogJ2xpc3QnLCBpdGVtcywgb3JkZXJlZDogdHJ1ZSB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgY2hlY2tsaXN0XG4gICAqL1xuICBjaGVja2xpc3QoaXRlbXM6IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0LmNvbnRlbnQhLnB1c2goeyB0eXBlOiAnbGlzdCcsIGl0ZW1zLCBjaGVja2xpc3Q6IHRydWUgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBpbWFnZSBibG9ja1xuICAgKi9cbiAgaW1hZ2Uoc3JjOiBzdHJpbmcsIGFsdDogc3RyaW5nLCBjYXB0aW9uPzogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0LmNvbnRlbnQhLnB1c2goeyB0eXBlOiAnaW1hZ2UnLCBzcmMsIGFsdCwgY2FwdGlvbiB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgY2FsbG91dC9ub3RlIGJsb2NrXG4gICAqL1xuICBjYWxsb3V0KHRleHQ6IHN0cmluZywgdmFyaWFudDogJ2luZm8nIHwgJ3dhcm5pbmcnIHwgJ3N1Y2Nlc3MnIHwgJ2Vycm9yJyA9ICdpbmZvJywgdGl0bGU/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBvc3QuY29udGVudCEucHVzaCh7IHR5cGU6ICdjYWxsb3V0JywgdGV4dCwgdmFyaWFudCwgdGl0bGUgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIGRpdmlkZXJcbiAgICovXG4gIGRpdmlkZXIoc3R5bGU/OiAnbGluZScgfCAnZG90cycgfCAnc3BhY2UnKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0LmNvbnRlbnQhLnB1c2goeyB0eXBlOiAnZGl2aWRlcicsIHN0eWxlIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBidXR0b24vQ1RBXG4gICAqL1xuICBidXR0b24odGV4dDogc3RyaW5nLCBocmVmPzogc3RyaW5nLCBjb2xvcj86ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ3N1Y2Nlc3MnKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0LmNvbnRlbnQhLnB1c2goeyB0eXBlOiAnYnV0dG9uJywgdGV4dCwgaHJlZiwgY29sb3IgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQ29uZmlndXJlcyByZW5kZXJpbmcgb3B0aW9uc1xuICAgKi9cbiAgY29uZmlnKGNvbmZpZzogUGFydGlhbDxDb250ZW50Q29uZmlnPik6IHRoaXMge1xuICAgIHRoaXMucG9zdC5jb25maWcgPSB7IC4uLnRoaXMucG9zdC5jb25maWcsIC4uLmNvbmZpZyB9O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyB0aGUgZmluYWwgQmxvZ1Bvc3Qgb2JqZWN0XG4gICAqL1xuICBidWlsZCgpOiBCbG9nUG9zdCB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMucG9zdC5jb250ZW50IHx8IFtdO1xuXG4gICAgLy8gQXV0by1jYWxjdWxhdGUgcmVhZGluZyB0aW1lIGlmIG5vdCBzZXRcbiAgICBpZiAoIXRoaXMucG9zdC5yZWFkaW5nVGltZSkge1xuICAgICAgdGhpcy5wb3N0LnJlYWRpbmdUaW1lID0gY2FsY3VsYXRlUmVhZGluZ1RpbWUoY29udGVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6ICdibG9nJyxcbiAgICAgIHRpdGxlOiB0aGlzLnBvc3QudGl0bGUgfHwgJ1VudGl0bGVkIFBvc3QnLFxuICAgICAgZXhjZXJwdDogdGhpcy5wb3N0LmV4Y2VycHQgfHwgJycsXG4gICAgICBjb3ZlckltYWdlOiB0aGlzLnBvc3QuY292ZXJJbWFnZSxcbiAgICAgIHJlYWRpbmdUaW1lOiB0aGlzLnBvc3QucmVhZGluZ1RpbWUsXG4gICAgICBmZWF0dXJlZDogdGhpcy5wb3N0LmZlYXR1cmVkLFxuICAgICAgbWV0YTogdGhpcy5wb3N0Lm1ldGEgYXMgQ29udGVudE1ldGEsXG4gICAgICBjb250ZW50LFxuICAgICAgY29uZmlnOiB0aGlzLnBvc3QuY29uZmlnLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQnVpbGRzIGFuZCBjb252ZXJ0cyB0byBBcnRpY2xlTWV0YWRhdGFcbiAgICovXG4gIHRvQXJ0aWNsZSgpOiBBcnRpY2xlTWV0YWRhdGEge1xuICAgIHJldHVybiBDb250ZW50VHJhbnNmb3JtZXIudG9BcnRpY2xlKHRoaXMuYnVpbGQoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSBidWlsZGVyIGZvciByZXVzZVxuICAgKi9cbiAgY2xlYXIoKTogdGhpcyB7XG4gICAgdGhpcy5wb3N0ID0ge1xuICAgICAgdHlwZTogJ2Jsb2cnLFxuICAgICAgY29udGVudDogW10sXG4gICAgICBtZXRhOiB7fSxcbiAgICAgIGNvbmZpZzogeyBzaG93TWV0YTogdHJ1ZSB9LFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IEJsb2dQb3N0QnVpbGRlciBpbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gYmxvZ1Bvc3QoKTogQmxvZ1Bvc3RCdWlsZGVyIHtcbiAgcmV0dXJuIG5ldyBCbG9nUG9zdEJ1aWxkZXIoKTtcbn1cbiJdfQ==