valtech-components 2.0.404 → 2.0.407

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 (280) hide show
  1. package/README.md +71 -0
  2. package/esm2022/lib/components/atoms/avatar/avatar.component.mjs +4 -4
  3. package/esm2022/lib/components/atoms/avatar/types.mjs +1 -1
  4. package/esm2022/lib/components/atoms/box/box.component.mjs +4 -4
  5. package/esm2022/lib/components/atoms/box/types.mjs +1 -1
  6. package/esm2022/lib/components/atoms/button/button.component.mjs +6 -6
  7. package/esm2022/lib/components/atoms/button/factory.mjs +1 -1
  8. package/esm2022/lib/components/atoms/countdown/countdown.component.mjs +343 -0
  9. package/esm2022/lib/components/atoms/countdown/types.mjs +27 -0
  10. package/esm2022/lib/components/atoms/display/display.component.mjs +4 -4
  11. package/esm2022/lib/components/atoms/display/types.mjs +1 -1
  12. package/esm2022/lib/components/atoms/divider/divider.component.mjs +4 -4
  13. package/esm2022/lib/components/atoms/divider/types.mjs +1 -1
  14. package/esm2022/lib/components/atoms/fab/fab.component.mjs +152 -0
  15. package/esm2022/lib/components/atoms/fab/types.mjs +2 -0
  16. package/esm2022/lib/components/atoms/href/href.component.mjs +4 -4
  17. package/esm2022/lib/components/atoms/href/types.mjs +1 -1
  18. package/esm2022/lib/components/atoms/icon/icon.component.mjs +4 -4
  19. package/esm2022/lib/components/atoms/icon/types.mjs +1 -1
  20. package/esm2022/lib/components/atoms/image/image.component.mjs +6 -6
  21. package/esm2022/lib/components/atoms/image/types.mjs +1 -1
  22. package/esm2022/lib/components/atoms/price-tag/price-tag.component.mjs +245 -0
  23. package/esm2022/lib/components/atoms/price-tag/types.mjs +15 -0
  24. package/esm2022/lib/components/atoms/progress-bar/progress-bar.component.mjs +4 -4
  25. package/esm2022/lib/components/atoms/progress-bar/types.mjs +1 -1
  26. package/esm2022/lib/components/atoms/progress-ring/progress-ring.component.mjs +149 -0
  27. package/esm2022/lib/components/atoms/progress-ring/types.mjs +2 -0
  28. package/esm2022/lib/components/atoms/qr-code/qr-code.component.mjs +417 -0
  29. package/esm2022/lib/components/atoms/qr-code/types.mjs +2 -0
  30. package/esm2022/lib/components/atoms/skeleton/skeleton.component.mjs +193 -0
  31. package/esm2022/lib/components/atoms/skeleton/types.mjs +13 -0
  32. package/esm2022/lib/components/atoms/text/text.component.mjs +4 -4
  33. package/esm2022/lib/components/atoms/text/types.mjs +1 -1
  34. package/esm2022/lib/components/atoms/title/title.component.mjs +4 -4
  35. package/esm2022/lib/components/atoms/title/types.mjs +1 -1
  36. package/esm2022/lib/components/molecules/accordion/accordion.component.mjs +139 -0
  37. package/esm2022/lib/components/molecules/accordion/types.mjs +2 -0
  38. package/esm2022/lib/components/molecules/action-header/action-header.component.mjs +4 -4
  39. package/esm2022/lib/components/molecules/action-header/types.mjs +1 -1
  40. package/esm2022/lib/components/molecules/alert-box/alert-box.component.mjs +4 -4
  41. package/esm2022/lib/components/molecules/alert-box/types.mjs +1 -1
  42. package/esm2022/lib/components/molecules/breadcrumb/breadcrumb.component.mjs +137 -0
  43. package/esm2022/lib/components/molecules/breadcrumb/types.mjs +2 -0
  44. package/esm2022/lib/components/molecules/button-group/button-group.component.mjs +4 -4
  45. package/esm2022/lib/components/molecules/button-group/types.mjs +1 -1
  46. package/esm2022/lib/components/molecules/card/card.component.mjs +5 -5
  47. package/esm2022/lib/components/molecules/card/types.mjs +1 -1
  48. package/esm2022/lib/components/molecules/check-input/check-input.component.mjs +4 -4
  49. package/esm2022/lib/components/molecules/chip-group/chip-group.component.mjs +174 -0
  50. package/esm2022/lib/components/molecules/chip-group/types.mjs +2 -0
  51. package/esm2022/lib/components/molecules/code-display/code-display.component.mjs +4 -4
  52. package/esm2022/lib/components/molecules/code-display/types.mjs +1 -1
  53. package/esm2022/lib/components/molecules/command-display/command-display.component.mjs +4 -4
  54. package/esm2022/lib/components/molecules/command-display/types.mjs +1 -1
  55. package/esm2022/lib/components/molecules/comment/comment.component.mjs +634 -0
  56. package/esm2022/lib/components/molecules/comment/types.mjs +2 -0
  57. package/esm2022/lib/components/molecules/comment-input/comment-input.component.mjs +4 -4
  58. package/esm2022/lib/components/molecules/content-loader/content-loader.component.mjs +4 -4
  59. package/esm2022/lib/components/molecules/content-loader/types.mjs +1 -1
  60. package/esm2022/lib/components/molecules/currency-input/currency-input.component.mjs +368 -0
  61. package/esm2022/lib/components/molecules/currency-input/types.mjs +18 -0
  62. package/esm2022/lib/components/molecules/date-input/date-input.component.mjs +5 -5
  63. package/esm2022/lib/components/molecules/date-range-input/date-range-input.component.mjs +418 -0
  64. package/esm2022/lib/components/molecules/date-range-input/types.mjs +2 -0
  65. package/esm2022/lib/components/molecules/email-input/email-input.component.mjs +4 -4
  66. package/esm2022/lib/components/molecules/expandable-text/expandable-text.component.mjs +4 -4
  67. package/esm2022/lib/components/molecules/expandable-text/types.mjs +1 -1
  68. package/esm2022/lib/components/molecules/file-input/file-input.component.mjs +4 -4
  69. package/esm2022/lib/components/molecules/glow-card/glow-card.component.mjs +279 -0
  70. package/esm2022/lib/components/molecules/glow-card/types.mjs +11 -0
  71. package/esm2022/lib/components/molecules/hint/hint.component.mjs +4 -4
  72. package/esm2022/lib/components/molecules/hour-input/hour-input.component.mjs +4 -4
  73. package/esm2022/lib/components/molecules/info/info.component.mjs +4 -4
  74. package/esm2022/lib/components/molecules/info/types.mjs +1 -1
  75. package/esm2022/lib/components/molecules/language-selector/language-selector.component.mjs +4 -4
  76. package/esm2022/lib/components/molecules/language-selector/types.mjs +1 -1
  77. package/esm2022/lib/components/molecules/layered-card/layered-card.component.mjs +4 -4
  78. package/esm2022/lib/components/molecules/layered-card/types.mjs +1 -1
  79. package/esm2022/lib/components/molecules/link/link.component.mjs +4 -4
  80. package/esm2022/lib/components/molecules/link/types.mjs +1 -1
  81. package/esm2022/lib/components/molecules/links-cake/links-cake.component.mjs +4 -4
  82. package/esm2022/lib/components/molecules/links-cake/types.mjs +1 -1
  83. package/esm2022/lib/components/molecules/multi-select-search/multi-select-search.component.mjs +5 -5
  84. package/esm2022/lib/components/molecules/notes-box/notes-box.component.mjs +4 -4
  85. package/esm2022/lib/components/molecules/notes-box/types.mjs +1 -1
  86. package/esm2022/lib/components/molecules/number-from-to/number-from-to.component.mjs +4 -4
  87. package/esm2022/lib/components/molecules/number-input/number-input.component.mjs +4 -4
  88. package/esm2022/lib/components/molecules/number-stepper/number-stepper.component.mjs +377 -0
  89. package/esm2022/lib/components/molecules/number-stepper/types.mjs +2 -0
  90. package/esm2022/lib/components/molecules/pagination/pagination.component.mjs +253 -0
  91. package/esm2022/lib/components/molecules/pagination/types.mjs +2 -0
  92. package/esm2022/lib/components/molecules/participant-card/participant-card.component.mjs +486 -0
  93. package/esm2022/lib/components/molecules/participant-card/types.mjs +21 -0
  94. package/esm2022/lib/components/molecules/password-input/password-input.component.mjs +4 -4
  95. package/esm2022/lib/components/molecules/phone-input/phone-input.component.mjs +336 -0
  96. package/esm2022/lib/components/molecules/phone-input/types.mjs +19 -0
  97. package/esm2022/lib/components/molecules/pill/pill.component.mjs +4 -4
  98. package/esm2022/lib/components/molecules/pill/types.mjs +1 -1
  99. package/esm2022/lib/components/molecules/pin-input/pin-input.component.mjs +4 -4
  100. package/esm2022/lib/components/molecules/plain-code-box/plain-code-box.component.mjs +4 -4
  101. package/esm2022/lib/components/molecules/plain-code-box/types.mjs +1 -1
  102. package/esm2022/lib/components/molecules/popover-selector/popover-selector.component.mjs +5 -5
  103. package/esm2022/lib/components/molecules/popover-selector/types.mjs +1 -1
  104. package/esm2022/lib/components/molecules/progress-status/progress-status.component.mjs +4 -4
  105. package/esm2022/lib/components/molecules/progress-status/types.mjs +1 -1
  106. package/esm2022/lib/components/molecules/prompter/prompter.component.mjs +4 -4
  107. package/esm2022/lib/components/molecules/prompter/types.mjs +1 -1
  108. package/esm2022/lib/components/molecules/quote-box/quote-box.component.mjs +155 -0
  109. package/esm2022/lib/components/molecules/radio-input/radio-input.component.mjs +5 -5
  110. package/esm2022/lib/components/molecules/raffle-status-card/raffle-status-card.component.mjs +484 -0
  111. package/esm2022/lib/components/molecules/raffle-status-card/types.mjs +23 -0
  112. package/esm2022/lib/components/molecules/range-input/range-input.component.mjs +148 -0
  113. package/esm2022/lib/components/molecules/range-input/types.mjs +2 -0
  114. package/esm2022/lib/components/molecules/rating/rating.component.mjs +149 -0
  115. package/esm2022/lib/components/molecules/rating/types.mjs +2 -0
  116. package/esm2022/lib/components/molecules/searchbar/searchbar.component.mjs +4 -4
  117. package/esm2022/lib/components/molecules/segment-control/segment-control.component.mjs +145 -0
  118. package/esm2022/lib/components/molecules/segment-control/types.mjs +2 -0
  119. package/esm2022/lib/components/molecules/select-input/select-input.component.mjs +5 -5
  120. package/esm2022/lib/components/molecules/select-search/select-search.component.mjs +5 -5
  121. package/esm2022/lib/components/molecules/share-buttons/share-buttons.component.mjs +277 -0
  122. package/esm2022/lib/components/molecules/share-buttons/types.mjs +88 -0
  123. package/esm2022/lib/components/molecules/stats-card/stats-card.component.mjs +165 -0
  124. package/esm2022/lib/components/molecules/stats-card/types.mjs +2 -0
  125. package/esm2022/lib/components/molecules/stepper/stepper.component.mjs +239 -0
  126. package/esm2022/lib/components/molecules/stepper/types.mjs +2 -0
  127. package/esm2022/lib/components/molecules/tabs/tabs.component.mjs +135 -0
  128. package/esm2022/lib/components/molecules/tabs/types.mjs +2 -0
  129. package/esm2022/lib/components/molecules/text-input/text-input.component.mjs +4 -4
  130. package/esm2022/lib/components/molecules/textarea-input/textarea-input.component.mjs +204 -0
  131. package/esm2022/lib/components/molecules/textarea-input/types.mjs +2 -0
  132. package/esm2022/lib/components/molecules/ticket-grid/ticket-grid.component.mjs +497 -0
  133. package/esm2022/lib/components/molecules/ticket-grid/types.mjs +11 -0
  134. package/esm2022/lib/components/molecules/timeline/timeline.component.mjs +140 -0
  135. package/esm2022/lib/components/molecules/timeline/types.mjs +2 -0
  136. package/esm2022/lib/components/molecules/title-block/title-block.component.mjs +4 -4
  137. package/esm2022/lib/components/molecules/title-block/types.mjs +1 -1
  138. package/esm2022/lib/components/molecules/toggle-input/toggle-input.component.mjs +89 -0
  139. package/esm2022/lib/components/molecules/toggle-input/types.mjs +2 -0
  140. package/esm2022/lib/components/molecules/winner-display/types.mjs +9 -0
  141. package/esm2022/lib/components/molecules/winner-display/winner-display.component.mjs +370 -0
  142. package/esm2022/lib/components/organisms/article/article.component.mjs +4 -4
  143. package/esm2022/lib/components/organisms/article/types.mjs +1 -1
  144. package/esm2022/lib/components/organisms/banner/banner.component.mjs +4 -4
  145. package/esm2022/lib/components/organisms/banner/types.mjs +1 -1
  146. package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +578 -0
  147. package/esm2022/lib/components/organisms/comment-section/types.mjs +2 -0
  148. package/esm2022/lib/components/organisms/data-table/data-table.component.mjs +853 -0
  149. package/esm2022/lib/components/organisms/data-table/types.mjs +13 -0
  150. package/esm2022/lib/components/organisms/footer/footer.component.mjs +4 -4
  151. package/esm2022/lib/components/organisms/footer/types.mjs +1 -1
  152. package/esm2022/lib/components/organisms/form/factory.mjs +1 -1
  153. package/esm2022/lib/components/organisms/form/form-footer/form-footer.component.mjs +4 -4
  154. package/esm2022/lib/components/organisms/form/form.component.mjs +4 -4
  155. package/esm2022/lib/components/organisms/header/header.component.mjs +4 -4
  156. package/esm2022/lib/components/organisms/header/types.mjs +1 -1
  157. package/esm2022/lib/components/organisms/item-list/item-list.component.mjs +4 -4
  158. package/esm2022/lib/components/organisms/item-list/types.mjs +1 -1
  159. package/esm2022/lib/components/organisms/no-content/no-content.component.mjs +4 -4
  160. package/esm2022/lib/components/organisms/no-content/types.mjs +1 -1
  161. package/esm2022/lib/components/organisms/toolbar/toolbar.component.mjs +4 -4
  162. package/esm2022/lib/components/organisms/toolbar/types.mjs +1 -1
  163. package/esm2022/lib/components/organisms/wizard/types.mjs +1 -1
  164. package/esm2022/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.mjs +4 -4
  165. package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +4 -4
  166. package/esm2022/lib/components/templates/layout/layout.component.mjs +4 -4
  167. package/esm2022/lib/components/templates/simple/simple.component.mjs +5 -5
  168. package/esm2022/lib/components/templates/simple/types.mjs +1 -1
  169. package/esm2022/lib/components/types.mjs +22 -16
  170. package/esm2022/lib/services/confirmation-dialog/confirmation-dialog.service.mjs +180 -0
  171. package/esm2022/lib/services/confirmation-dialog/types.mjs +14 -0
  172. package/esm2022/lib/services/download.service.mjs +4 -4
  173. package/esm2022/lib/services/icons.service.mjs +4 -4
  174. package/esm2022/lib/services/in-app-browser.service.mjs +4 -4
  175. package/esm2022/lib/services/lang-provider/components/lang-settings.mjs +1 -1
  176. package/esm2022/lib/services/lang-provider/content.mjs +1 -1
  177. package/esm2022/lib/services/lang-provider/lang-provider.service.mjs +4 -4
  178. package/esm2022/lib/services/lang-provider/types.mjs +1 -1
  179. package/esm2022/lib/services/link-processor.service.mjs +4 -4
  180. package/esm2022/lib/services/local-storage.service.mjs +1 -1
  181. package/esm2022/lib/services/modal/modal.service.mjs +213 -0
  182. package/esm2022/lib/services/modal/simple-modal-content.component.mjs +133 -0
  183. package/esm2022/lib/services/modal/types.mjs +26 -0
  184. package/esm2022/lib/services/navigation.service.mjs +4 -4
  185. package/esm2022/lib/services/qr-generator/qr-generator.service.mjs +341 -0
  186. package/esm2022/lib/services/qr-generator/types.mjs +46 -0
  187. package/esm2022/lib/services/theme.service.mjs +4 -4
  188. package/esm2022/lib/services/toast.service.mjs +4 -4
  189. package/esm2022/lib/services/types.mjs +1 -1
  190. package/esm2022/lib/shared/constants/storage.mjs +1 -1
  191. package/esm2022/lib/shared/pipes/process-links.pipe.mjs +4 -4
  192. package/esm2022/lib/shared/utils/content.mjs +1 -1
  193. package/esm2022/lib/shared/utils/dom.mjs +1 -1
  194. package/esm2022/lib/shared/utils/form-defaults.mjs +1 -1
  195. package/esm2022/lib/shared/utils/simple-content.mjs +1 -1
  196. package/esm2022/lib/shared/utils/styles.mjs +1 -1
  197. package/esm2022/lib/shared/utils/text.mjs +1 -1
  198. package/esm2022/public-api.mjs +73 -3
  199. package/esm2022/valtech-components.mjs +1 -1
  200. package/fesm2022/valtech-components-simple-modal-content.component-DQhEgUmS.mjs +136 -0
  201. package/fesm2022/valtech-components-simple-modal-content.component-DQhEgUmS.mjs.map +1 -0
  202. package/fesm2022/valtech-components.mjs +14848 -4293
  203. package/fesm2022/valtech-components.mjs.map +1 -1
  204. package/lib/components/atoms/countdown/countdown.component.d.ts +38 -0
  205. package/lib/components/atoms/countdown/types.d.ts +108 -0
  206. package/lib/components/atoms/fab/fab.component.d.ts +16 -0
  207. package/lib/components/atoms/fab/types.d.ts +45 -0
  208. package/lib/components/atoms/price-tag/price-tag.component.d.ts +16 -0
  209. package/lib/components/atoms/price-tag/types.d.ts +59 -0
  210. package/lib/components/atoms/progress-ring/progress-ring.component.d.ts +20 -0
  211. package/lib/components/atoms/progress-ring/types.d.ts +24 -0
  212. package/lib/components/atoms/qr-code/qr-code.component.d.ts +36 -0
  213. package/lib/components/atoms/qr-code/types.d.ts +124 -0
  214. package/lib/components/atoms/skeleton/skeleton.component.d.ts +12 -0
  215. package/lib/components/atoms/skeleton/types.d.ts +29 -0
  216. package/lib/components/molecules/accordion/accordion.component.d.ts +19 -0
  217. package/lib/components/molecules/accordion/types.d.ts +47 -0
  218. package/lib/components/molecules/breadcrumb/breadcrumb.component.d.ts +22 -0
  219. package/lib/components/molecules/breadcrumb/types.d.ts +45 -0
  220. package/lib/components/molecules/chip-group/chip-group.component.d.ts +22 -0
  221. package/lib/components/molecules/chip-group/types.d.ts +65 -0
  222. package/lib/components/molecules/comment/comment.component.d.ts +42 -0
  223. package/lib/components/molecules/comment/types.d.ts +171 -0
  224. package/lib/components/molecules/currency-input/currency-input.component.d.ts +43 -0
  225. package/lib/components/molecules/currency-input/types.d.ts +96 -0
  226. package/lib/components/molecules/date-range-input/date-range-input.component.d.ts +42 -0
  227. package/lib/components/molecules/date-range-input/types.d.ts +109 -0
  228. package/lib/components/molecules/glow-card/glow-card.component.d.ts +51 -0
  229. package/lib/components/molecules/glow-card/types.d.ts +92 -0
  230. package/lib/components/molecules/number-stepper/number-stepper.component.d.ts +34 -0
  231. package/lib/components/molecules/number-stepper/types.d.ts +88 -0
  232. package/lib/components/molecules/pagination/pagination.component.d.ts +15 -0
  233. package/lib/components/molecules/pagination/types.d.ts +41 -0
  234. package/lib/components/molecules/participant-card/participant-card.component.d.ts +26 -0
  235. package/lib/components/molecules/participant-card/types.d.ts +132 -0
  236. package/lib/components/molecules/phone-input/phone-input.component.d.ts +38 -0
  237. package/lib/components/molecules/phone-input/types.d.ts +98 -0
  238. package/lib/components/molecules/quote-box/quote-box.component.d.ts +26 -0
  239. package/lib/components/molecules/raffle-status-card/raffle-status-card.component.d.ts +22 -0
  240. package/lib/components/molecules/raffle-status-card/types.d.ts +108 -0
  241. package/lib/components/molecules/range-input/range-input.component.d.ts +30 -0
  242. package/lib/components/molecules/range-input/types.d.ts +59 -0
  243. package/lib/components/molecules/rating/rating.component.d.ts +17 -0
  244. package/lib/components/molecules/rating/types.d.ts +41 -0
  245. package/lib/components/molecules/segment-control/segment-control.component.d.ts +30 -0
  246. package/lib/components/molecules/segment-control/types.d.ts +46 -0
  247. package/lib/components/molecules/share-buttons/share-buttons.component.d.ts +22 -0
  248. package/lib/components/molecules/share-buttons/types.d.ts +108 -0
  249. package/lib/components/molecules/stats-card/stats-card.component.d.ts +14 -0
  250. package/lib/components/molecules/stats-card/types.d.ts +41 -0
  251. package/lib/components/molecules/stepper/stepper.component.d.ts +21 -0
  252. package/lib/components/molecules/stepper/types.d.ts +66 -0
  253. package/lib/components/molecules/tabs/tabs.component.d.ts +17 -0
  254. package/lib/components/molecules/tabs/types.d.ts +45 -0
  255. package/lib/components/molecules/textarea-input/textarea-input.component.d.ts +27 -0
  256. package/lib/components/molecules/textarea-input/types.d.ts +74 -0
  257. package/lib/components/molecules/ticket-grid/ticket-grid.component.d.ts +41 -0
  258. package/lib/components/molecules/ticket-grid/types.d.ts +122 -0
  259. package/lib/components/molecules/timeline/timeline.component.d.ts +14 -0
  260. package/lib/components/molecules/timeline/types.d.ts +39 -0
  261. package/lib/components/molecules/toggle-input/toggle-input.component.d.ts +24 -0
  262. package/lib/components/molecules/toggle-input/types.d.ts +30 -0
  263. package/lib/components/molecules/winner-display/types.d.ts +103 -0
  264. package/lib/components/molecules/winner-display/winner-display.component.d.ts +37 -0
  265. package/lib/components/organisms/article/article.component.d.ts +1 -1
  266. package/lib/components/organisms/comment-section/comment-section.component.d.ts +52 -0
  267. package/lib/components/organisms/comment-section/types.d.ts +144 -0
  268. package/lib/components/organisms/data-table/data-table.component.d.ts +46 -0
  269. package/lib/components/organisms/data-table/types.d.ts +205 -0
  270. package/lib/components/types.d.ts +21 -15
  271. package/lib/services/confirmation-dialog/confirmation-dialog.service.d.ts +71 -0
  272. package/lib/services/confirmation-dialog/types.d.ts +61 -0
  273. package/lib/services/modal/modal.service.d.ts +98 -0
  274. package/lib/services/modal/simple-modal-content.component.d.ts +19 -0
  275. package/lib/services/modal/types.d.ts +155 -0
  276. package/lib/services/qr-generator/qr-generator.service.d.ts +115 -0
  277. package/lib/services/qr-generator/types.d.ts +141 -0
  278. package/package.json +11 -4
  279. package/public-api.d.ts +72 -2
  280. package/LICENSE +0 -21
@@ -0,0 +1,108 @@
1
+ import { Color } from '@ionic/core';
2
+ import { ImageMetadata } from '../../atoms/image/types';
3
+ import { ButtonMetadata } from '../../types';
4
+ /**
5
+ * Raffle status type.
6
+ */
7
+ export type RaffleStatus = 'upcoming' | 'active' | 'sold_out' | 'drawing' | 'completed' | 'cancelled';
8
+ /**
9
+ * Raffle progress information.
10
+ */
11
+ export interface RaffleProgress {
12
+ /** Total tickets available */
13
+ totalTickets: number;
14
+ /** Tickets sold */
15
+ soldTickets: number;
16
+ /** Tickets reserved (not paid) */
17
+ reservedTickets?: number;
18
+ /** Goal amount (monetary) */
19
+ goalAmount?: number;
20
+ /** Current amount raised */
21
+ currentAmount?: number;
22
+ }
23
+ /**
24
+ * Prize information for the raffle.
25
+ */
26
+ export interface RafflePrize {
27
+ /** Prize name */
28
+ name: string;
29
+ /** Prize description */
30
+ description?: string;
31
+ /** Prize image */
32
+ image?: ImageMetadata;
33
+ /** Prize value */
34
+ value?: number;
35
+ /** Currency for value */
36
+ currency?: string;
37
+ }
38
+ /**
39
+ * Metadata for the raffle status card component.
40
+ */
41
+ export interface RaffleStatusCardMetadata {
42
+ /** Raffle title */
43
+ title: string;
44
+ /** Raffle description */
45
+ description?: string;
46
+ /** Current status */
47
+ status: RaffleStatus;
48
+ /** Progress information */
49
+ progress?: RaffleProgress;
50
+ /** Prize information */
51
+ prize?: RafflePrize;
52
+ /** Cover image */
53
+ coverImage?: ImageMetadata;
54
+ /** Raffle start date */
55
+ startDate?: Date | string;
56
+ /** Raffle end date / draw date */
57
+ endDate?: Date | string;
58
+ /** Show countdown to end date */
59
+ showCountdown?: boolean;
60
+ /** Ticket price */
61
+ ticketPrice?: number;
62
+ /** Currency */
63
+ currency?: string;
64
+ /** Currency symbol */
65
+ currencySymbol?: string;
66
+ /** Card variant */
67
+ variant?: 'default' | 'featured' | 'compact' | 'horizontal';
68
+ /** Size */
69
+ size?: 'small' | 'medium' | 'large';
70
+ /** Show progress bar */
71
+ showProgress?: boolean;
72
+ /** Show ticket stats */
73
+ showTicketStats?: boolean;
74
+ /** Show price */
75
+ showPrice?: boolean;
76
+ /** Show dates */
77
+ showDates?: boolean;
78
+ /** Show status badge */
79
+ showStatusBadge?: boolean;
80
+ /** Primary action button */
81
+ primaryAction?: ButtonMetadata;
82
+ /** Secondary action button */
83
+ secondaryAction?: ButtonMetadata;
84
+ /** Custom CSS class */
85
+ cssClass?: string;
86
+ /** Status color override */
87
+ statusColor?: Color;
88
+ /** Beneficiary name */
89
+ beneficiary?: string;
90
+ /** Beneficiary logo/image */
91
+ beneficiaryImage?: ImageMetadata;
92
+ /** Custom status labels */
93
+ statusLabels?: Partial<Record<RaffleStatus, string>>;
94
+ /** Content class for reactive content */
95
+ contentClass?: string;
96
+ /** Content key for title */
97
+ titleContentKey?: string;
98
+ /** Content key for description */
99
+ descriptionContentKey?: string;
100
+ }
101
+ /**
102
+ * Default status labels.
103
+ */
104
+ export declare const DEFAULT_STATUS_LABELS: Record<RaffleStatus, string>;
105
+ /**
106
+ * Default status colors.
107
+ */
108
+ export declare const DEFAULT_STATUS_COLORS: Record<RaffleStatus, Color>;
@@ -0,0 +1,30 @@
1
+ import { OnInit, OnDestroy, EventEmitter } from '@angular/core';
2
+ import { RangeInputMetadata, RangeValue } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class RangeInputComponent implements OnInit, OnDestroy {
5
+ /**
6
+ * Input configuration object.
7
+ * @type {RangeInputMetadata}
8
+ */
9
+ props: RangeInputMetadata;
10
+ /**
11
+ * Emits the new value when the range changes.
12
+ */
13
+ rangeChange: EventEmitter<number | RangeValue>;
14
+ states: {
15
+ ENABLED: "ENABLED";
16
+ DISABLED: "DISABLED";
17
+ WORKING: "WORKING";
18
+ ERROR: "ERROR";
19
+ };
20
+ displayLabel: string;
21
+ private langService;
22
+ private subscription?;
23
+ defaultPinFormatter: (value: number) => string;
24
+ ngOnInit(): void;
25
+ ngOnDestroy(): void;
26
+ onRangeChange(event: CustomEvent): void;
27
+ private setupLabel;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<RangeInputComponent, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<RangeInputComponent, "val-range-input", never, { "props": { "alias": "props"; "required": false; }; }, { "rangeChange": "rangeChange"; }, never, never, true, never>;
30
+ }
@@ -0,0 +1,59 @@
1
+ import { FormControl } from '@angular/forms';
2
+ import { Color } from '@ionic/core';
3
+ import { ComponentState } from '../../types';
4
+ /**
5
+ * Metadata for the range/slider input component.
6
+ */
7
+ export interface RangeInputMetadata {
8
+ /** Associated form control for single value */
9
+ control: FormControl<number>;
10
+ /** Unique token for the input */
11
+ token?: string;
12
+ /** Display label */
13
+ label?: string;
14
+ /** Minimum value */
15
+ min?: number;
16
+ /** Maximum value */
17
+ max?: number;
18
+ /** Step increment */
19
+ step?: number;
20
+ /** Show pin with current value */
21
+ pin?: boolean;
22
+ /** Pin format function */
23
+ pinFormatter?: (value: number) => string;
24
+ /** Show tick marks */
25
+ ticks?: boolean;
26
+ /** Snap to ticks */
27
+ snaps?: boolean;
28
+ /** Range color */
29
+ color?: Color;
30
+ /** Component state */
31
+ state?: ComponentState;
32
+ /** Enable/disable range */
33
+ disabled?: boolean;
34
+ /** Debounce time for ionChange event (ms) */
35
+ debounce?: number;
36
+ /** Dual knobs for range selection */
37
+ dualKnobs?: boolean;
38
+ /** Control for lower bound (only with dualKnobs) */
39
+ lowerControl?: FormControl<number>;
40
+ /** Control for upper bound (only with dualKnobs) */
41
+ upperControl?: FormControl<number>;
42
+ /** Show start label (min value or custom) */
43
+ startLabel?: string;
44
+ /** Show end label (max value or custom) */
45
+ endLabel?: string;
46
+ /** Reactive content key for label */
47
+ contentKey?: string;
48
+ /** Component class name for content lookup */
49
+ contentClass?: string;
50
+ /** Fallback text if contentKey is not found */
51
+ contentFallback?: string;
52
+ }
53
+ /**
54
+ * Value emitted by range component.
55
+ */
56
+ export interface RangeValue {
57
+ lower?: number;
58
+ upper?: number;
59
+ }
@@ -0,0 +1,17 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { RatingMetadata, RatingChangeEvent } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class RatingComponent {
5
+ props: RatingMetadata;
6
+ ratingChange: EventEmitter<RatingChangeEvent>;
7
+ hoverValue: number | null;
8
+ get displayValue(): number;
9
+ getStars(): number[];
10
+ getStarIcon(position: number): string;
11
+ getStarColor(position: number): string;
12
+ onStarClick(position: number): void;
13
+ onStarHover(position: number): void;
14
+ onStarLeave(): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<RatingComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<RatingComponent, "val-rating", never, { "props": { "alias": "props"; "required": false; }; }, { "ratingChange": "ratingChange"; }, never, never, true, never>;
17
+ }
@@ -0,0 +1,41 @@
1
+ import { Color } from '@ionic/core';
2
+ /**
3
+ * Metadata for the rating component.
4
+ */
5
+ export interface RatingMetadata {
6
+ /** Current rating value */
7
+ value: number;
8
+ /** Maximum rating value */
9
+ max?: number;
10
+ /** Icon name for filled state */
11
+ icon?: string;
12
+ /** Icon name for empty state */
13
+ iconEmpty?: string;
14
+ /** Icon name for half state */
15
+ iconHalf?: string;
16
+ /** Allow half values */
17
+ allowHalf?: boolean;
18
+ /** Readonly mode */
19
+ readonly?: boolean;
20
+ /** Disabled state */
21
+ disabled?: boolean;
22
+ /** Rating color */
23
+ color?: Color;
24
+ /** Empty icon color */
25
+ emptyColor?: Color;
26
+ /** Size variant */
27
+ size?: 'small' | 'medium' | 'large';
28
+ /** Show numeric value */
29
+ showValue?: boolean;
30
+ /** Unique token identifier */
31
+ token?: string;
32
+ }
33
+ /**
34
+ * Event emitted when rating changes.
35
+ */
36
+ export interface RatingChangeEvent {
37
+ /** New rating value */
38
+ value: number;
39
+ /** Previous rating value */
40
+ previousValue: number;
41
+ }
@@ -0,0 +1,30 @@
1
+ import { OnInit, OnDestroy, EventEmitter } from '@angular/core';
2
+ import { SegmentControlMetadata, SegmentOption } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class SegmentControlComponent implements OnInit, OnDestroy {
5
+ /**
6
+ * Input configuration object.
7
+ * @type {SegmentControlMetadata}
8
+ */
9
+ props: SegmentControlMetadata;
10
+ /**
11
+ * Emits the selected value when the segment changes.
12
+ */
13
+ segmentChange: EventEmitter<string>;
14
+ states: {
15
+ ENABLED: "ENABLED";
16
+ DISABLED: "DISABLED";
17
+ WORKING: "WORKING";
18
+ ERROR: "ERROR";
19
+ };
20
+ optionLabels: Map<string, string>;
21
+ private langService;
22
+ private subscriptions;
23
+ ngOnInit(): void;
24
+ ngOnDestroy(): void;
25
+ onSegmentChange(event: CustomEvent): void;
26
+ getOptionLabel(option: SegmentOption): string;
27
+ private setupOptionLabels;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<SegmentControlComponent, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<SegmentControlComponent, "val-segment-control", never, { "props": { "alias": "props"; "required": false; }; }, { "segmentChange": "segmentChange"; }, never, never, true, never>;
30
+ }
@@ -0,0 +1,46 @@
1
+ import { Color } from '@ionic/core';
2
+ import { ComponentState } from '../../types';
3
+ /**
4
+ * Option for segment control.
5
+ */
6
+ export interface SegmentOption {
7
+ /** Unique value for the option */
8
+ value: string;
9
+ /** Display label */
10
+ label?: string;
11
+ /** Icon name (Ionicons) */
12
+ icon?: string;
13
+ /** Whether the option is disabled */
14
+ disabled?: boolean;
15
+ /** Layout direction for icon and label */
16
+ layout?: 'icon-start' | 'icon-end' | 'icon-top' | 'icon-bottom';
17
+ /** Reactive content key for label */
18
+ contentKey?: string;
19
+ /** Component class name for content lookup */
20
+ contentClass?: string;
21
+ /** Fallback text if contentKey is not found */
22
+ contentFallback?: string;
23
+ }
24
+ /**
25
+ * Metadata for the segment control component.
26
+ */
27
+ export interface SegmentControlMetadata {
28
+ /** Available options */
29
+ options: SegmentOption[];
30
+ /** Currently selected value */
31
+ value?: string;
32
+ /** Segment color */
33
+ color?: Color;
34
+ /** Component state */
35
+ state?: ComponentState;
36
+ /** Enable/disable entire segment */
37
+ disabled?: boolean;
38
+ /** Scroll segments horizontally */
39
+ scrollable?: boolean;
40
+ /** Swipe to change segments (iOS only) */
41
+ swipeGesture?: boolean;
42
+ /** Mode style */
43
+ mode?: 'ios' | 'md';
44
+ /** Unique token identifier */
45
+ token?: string;
46
+ }
@@ -0,0 +1,22 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { ShareButtonsMetadata, ShareEvent, SharePlatform, ShareButtonConfig } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ShareButtonsComponent {
5
+ props: ShareButtonsMetadata;
6
+ shareComplete: EventEmitter<ShareEvent>;
7
+ private toastController;
8
+ private langService;
9
+ getButtons(): ShareButtonConfig[];
10
+ getButtonFill(): 'solid' | 'outline' | 'clear';
11
+ getButtonIcon(button: ShareButtonConfig): string;
12
+ getButtonLabel(button: ShareButtonConfig): string;
13
+ getButtonColor(button: ShareButtonConfig): string;
14
+ share(platform: SharePlatform): Promise<void>;
15
+ private openShareUrl;
16
+ private nativeShare;
17
+ private copyToClipboard;
18
+ private getCopySuccessMessage;
19
+ private isNativeShareSupported;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<ShareButtonsComponent, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<ShareButtonsComponent, "val-share-buttons", never, { "props": { "alias": "props"; "required": false; }; }, { "shareComplete": "shareComplete"; }, never, never, true, never>;
22
+ }
@@ -0,0 +1,108 @@
1
+ import { Color } from '@ionic/core';
2
+ /**
3
+ * Social platform identifiers for sharing.
4
+ */
5
+ export type SharePlatform = 'whatsapp' | 'facebook' | 'twitter' | 'telegram' | 'linkedin' | 'email' | 'copy' | 'native';
6
+ /**
7
+ * Configuration for a share button.
8
+ */
9
+ export interface ShareButtonConfig {
10
+ /** Platform identifier */
11
+ platform: SharePlatform;
12
+ /** Custom label (overrides default) */
13
+ label?: string;
14
+ /** Custom icon (overrides default) */
15
+ icon?: string;
16
+ /** Custom color (overrides default) */
17
+ color?: Color | string;
18
+ /** Whether this button is disabled */
19
+ disabled?: boolean;
20
+ /** Additional custom data for the platform */
21
+ customData?: Record<string, string>;
22
+ }
23
+ /**
24
+ * Data to be shared.
25
+ */
26
+ export interface ShareData {
27
+ /** Title of the content */
28
+ title?: string;
29
+ /** Description or message */
30
+ text?: string;
31
+ /** URL to share */
32
+ url?: string;
33
+ /** Hashtags (for Twitter) */
34
+ hashtags?: string[];
35
+ /** Email subject (for email sharing) */
36
+ emailSubject?: string;
37
+ /** Email body (for email sharing) */
38
+ emailBody?: string;
39
+ /** Phone number for WhatsApp (optional, for direct messaging) */
40
+ whatsappPhone?: string;
41
+ }
42
+ /**
43
+ * Metadata for the share buttons component.
44
+ */
45
+ export interface ShareButtonsMetadata {
46
+ /** Data to share */
47
+ shareData: ShareData;
48
+ /** Platforms to show (defaults to all) */
49
+ platforms?: SharePlatform[];
50
+ /** Custom button configurations */
51
+ buttons?: ShareButtonConfig[];
52
+ /** Layout direction */
53
+ layout?: 'horizontal' | 'vertical';
54
+ /** Size variant */
55
+ size?: 'small' | 'medium' | 'large';
56
+ /** Button style */
57
+ variant?: 'solid' | 'outline' | 'icon-only';
58
+ /** Show labels */
59
+ showLabels?: boolean;
60
+ /** Gap between buttons */
61
+ gap?: number;
62
+ /** Custom CSS class */
63
+ cssClass?: string;
64
+ /** Use platform colors */
65
+ usePlatformColors?: boolean;
66
+ /** Default color (when not using platform colors) */
67
+ color?: Color;
68
+ /** Show copy success toast */
69
+ showCopyToast?: boolean;
70
+ /** Copy success message */
71
+ copySuccessMessage?: string;
72
+ /** Use native share when available */
73
+ preferNativeShare?: boolean;
74
+ /** Content class for reactive content */
75
+ contentClass?: string;
76
+ /** Content key for copy success message */
77
+ copySuccessMessageContentKey?: string;
78
+ }
79
+ /**
80
+ * Event emitted when a share action is performed.
81
+ */
82
+ export interface ShareEvent {
83
+ /** Platform that was used */
84
+ platform: SharePlatform;
85
+ /** Whether the share was successful */
86
+ success: boolean;
87
+ /** Error message if failed */
88
+ error?: string;
89
+ /** The share data that was used */
90
+ shareData: ShareData;
91
+ }
92
+ /**
93
+ * Default platform configurations.
94
+ */
95
+ export interface PlatformConfig {
96
+ name: string;
97
+ icon: string;
98
+ color: string;
99
+ getUrl: (data: ShareData) => string;
100
+ }
101
+ /**
102
+ * Default platform configurations.
103
+ */
104
+ export declare const PLATFORM_CONFIGS: Record<SharePlatform, PlatformConfig>;
105
+ /**
106
+ * Default platforms to show.
107
+ */
108
+ export declare const DEFAULT_PLATFORMS: SharePlatform[];
@@ -0,0 +1,14 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { StatsCardMetadata } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class StatsCardComponent {
5
+ props: StatsCardMetadata;
6
+ cardClick: EventEmitter<void>;
7
+ Math: Math;
8
+ getCardColor(): string;
9
+ getBackgroundClass(): string;
10
+ getTrendClass(): string;
11
+ getTrendIcon(): string;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<StatsCardComponent, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<StatsCardComponent, "val-stats-card", never, { "props": { "alias": "props"; "required": false; }; }, { "cardClick": "cardClick"; }, never, never, true, never>;
14
+ }
@@ -0,0 +1,41 @@
1
+ import { Color } from '@ionic/core';
2
+ /**
3
+ * Trend configuration for stats card.
4
+ */
5
+ export interface StatsTrend {
6
+ /** Trend value (percentage or absolute) */
7
+ value: number;
8
+ /** Trend direction */
9
+ direction: 'up' | 'down' | 'neutral';
10
+ /** Trend label (e.g., "vs last month") */
11
+ label?: string;
12
+ /** Invert colors (up=bad, down=good) */
13
+ invertColors?: boolean;
14
+ }
15
+ /**
16
+ * Metadata for the stats card component.
17
+ */
18
+ export interface StatsCardMetadata {
19
+ /** Stat title/label */
20
+ title: string;
21
+ /** Main stat value */
22
+ value: string | number;
23
+ /** Value prefix (e.g., "$", "€") */
24
+ prefix?: string;
25
+ /** Value suffix (e.g., "%", "users") */
26
+ suffix?: string;
27
+ /** Icon name */
28
+ icon?: string;
29
+ /** Card color */
30
+ color?: Color;
31
+ /** Background style */
32
+ background?: 'solid' | 'gradient' | 'light';
33
+ /** Trend indicator */
34
+ trend?: StatsTrend;
35
+ /** Footer text */
36
+ footer?: string;
37
+ /** Loading state */
38
+ loading?: boolean;
39
+ /** Unique token identifier */
40
+ token?: string;
41
+ }
@@ -0,0 +1,21 @@
1
+ import { OnInit, OnDestroy, EventEmitter } from '@angular/core';
2
+ import { StepperMetadata, StepMetadata, StepChangeEvent, StepStatus } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class StepperComponent implements OnInit, OnDestroy {
5
+ props: StepperMetadata;
6
+ stepChange: EventEmitter<StepChangeEvent>;
7
+ private langService;
8
+ private subscriptions;
9
+ private stepLabels;
10
+ ngOnInit(): void;
11
+ ngOnDestroy(): void;
12
+ getCurrentIndex(): number;
13
+ getStepStatus(step: StepMetadata, index: number): StepStatus;
14
+ getStepColor(step: StepMetadata, index: number): string;
15
+ isStepClickable(step: StepMetadata, index: number): boolean;
16
+ onStepClick(step: StepMetadata, index: number): void;
17
+ getStepLabel(step: StepMetadata): string;
18
+ private setupLabels;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<StepperComponent, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<StepperComponent, "val-stepper", never, { "props": { "alias": "props"; "required": false; }; }, { "stepChange": "stepChange"; }, never, never, true, never>;
21
+ }
@@ -0,0 +1,66 @@
1
+ import { Color } from '@ionic/core';
2
+ /**
3
+ * Step status.
4
+ */
5
+ export type StepStatus = 'pending' | 'current' | 'completed' | 'error';
6
+ /**
7
+ * Single step configuration.
8
+ */
9
+ export interface StepMetadata {
10
+ /** Unique step identifier */
11
+ value: string;
12
+ /** Step label */
13
+ label?: string;
14
+ /** Step description/subtitle */
15
+ description?: string;
16
+ /** Step icon (overrides number) */
17
+ icon?: string;
18
+ /** Step status */
19
+ status?: StepStatus;
20
+ /** Whether step is optional */
21
+ optional?: boolean;
22
+ /** Whether step is editable (can go back) */
23
+ editable?: boolean;
24
+ /** Whether step is disabled */
25
+ disabled?: boolean;
26
+ /** Reactive content key for label */
27
+ contentKey?: string;
28
+ /** Component class name for content lookup */
29
+ contentClass?: string;
30
+ /** Fallback for label */
31
+ contentFallback?: string;
32
+ }
33
+ /**
34
+ * Metadata for the stepper component.
35
+ */
36
+ export interface StepperMetadata {
37
+ /** Step items */
38
+ steps: StepMetadata[];
39
+ /** Current step value */
40
+ currentStep?: string;
41
+ /** Current step index (alternative to currentStep) */
42
+ currentIndex?: number;
43
+ /** Stepper orientation */
44
+ orientation?: 'horizontal' | 'vertical';
45
+ /** Linear mode (must complete in order) */
46
+ linear?: boolean;
47
+ /** Stepper color */
48
+ color?: Color;
49
+ /** Show step numbers */
50
+ showNumbers?: boolean;
51
+ /** Connector line style */
52
+ connectorStyle?: 'solid' | 'dashed' | 'none';
53
+ /** Unique token identifier */
54
+ token?: string;
55
+ }
56
+ /**
57
+ * Event emitted when step changes.
58
+ */
59
+ export interface StepChangeEvent {
60
+ /** New step */
61
+ step: StepMetadata;
62
+ /** New step index */
63
+ index: number;
64
+ /** Previous step index */
65
+ previousIndex: number;
66
+ }
@@ -0,0 +1,17 @@
1
+ import { OnInit, OnDestroy, EventEmitter } from '@angular/core';
2
+ import { TabsMetadata, TabMetadata } from './types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TabsComponent implements OnInit, OnDestroy {
5
+ props: TabsMetadata;
6
+ tabChange: EventEmitter<TabMetadata>;
7
+ private langService;
8
+ private subscriptions;
9
+ private tabLabels;
10
+ ngOnInit(): void;
11
+ ngOnDestroy(): void;
12
+ onTabClick(tab: TabMetadata): void;
13
+ getTabLabel(tab: TabMetadata): string;
14
+ private setupLabels;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<TabsComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<TabsComponent, "val-tabs", never, { "props": { "alias": "props"; "required": false; }; }, { "tabChange": "tabChange"; }, never, never, true, never>;
17
+ }
@@ -0,0 +1,45 @@
1
+ import { Color } from '@ionic/core';
2
+ /**
3
+ * Single tab configuration.
4
+ */
5
+ export interface TabMetadata {
6
+ /** Unique tab identifier */
7
+ value: string;
8
+ /** Tab label (static) */
9
+ label?: string;
10
+ /** Tab icon name */
11
+ icon?: string;
12
+ /** Badge text or number */
13
+ badge?: string | number;
14
+ /** Badge color */
15
+ badgeColor?: Color;
16
+ /** Whether the tab is disabled */
17
+ disabled?: boolean;
18
+ /** Reactive content key for label */
19
+ contentKey?: string;
20
+ /** Component class name for content lookup */
21
+ contentClass?: string;
22
+ /** Fallback for label */
23
+ contentFallback?: string;
24
+ }
25
+ /**
26
+ * Metadata for the tabs component.
27
+ */
28
+ export interface TabsMetadata {
29
+ /** Tab items */
30
+ tabs: TabMetadata[];
31
+ /** Currently selected tab value */
32
+ selectedTab?: string;
33
+ /** Tabs color */
34
+ color?: Color;
35
+ /** Tab bar position */
36
+ position?: 'top' | 'bottom';
37
+ /** Tab layout */
38
+ layout?: 'icon-top' | 'icon-start' | 'icon-end' | 'icon-bottom' | 'icon-hide' | 'label-hide';
39
+ /** Unique token identifier */
40
+ token?: string;
41
+ /** Mode style */
42
+ mode?: 'ios' | 'md';
43
+ /** Translucent background */
44
+ translucent?: boolean;
45
+ }