@rededor/cura 1.7.1 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (556) hide show
  1. package/dist/cjs/cura-accordion_20.cjs.entry.js +485 -138
  2. package/dist/cjs/cura-accordion_20.cjs.entry.js.map +1 -1
  3. package/dist/cjs/cura-alert.cjs.entry.js +9 -12
  4. package/dist/cjs/cura-alert.cjs.entry.js.map +1 -1
  5. package/dist/cjs/cura-alert.entry.cjs.js.map +1 -0
  6. package/dist/cjs/cura-badge-counter.cjs.entry.js +16 -8
  7. package/dist/cjs/cura-badge-counter.cjs.entry.js.map +1 -1
  8. package/dist/cjs/cura-badge-counter.entry.cjs.js.map +1 -0
  9. package/dist/cjs/cura-badge-dot.cjs.entry.js +14 -5
  10. package/dist/cjs/cura-badge-dot.cjs.entry.js.map +1 -1
  11. package/dist/cjs/cura-badge-dot.entry.cjs.js.map +1 -0
  12. package/dist/cjs/cura-badge-pill.cjs.entry.js +23 -7
  13. package/dist/cjs/cura-badge-pill.cjs.entry.js.map +1 -1
  14. package/dist/cjs/cura-badge-pill.entry.cjs.js.map +1 -0
  15. package/dist/cjs/cura-button-outline.cjs.entry.js +46 -8
  16. package/dist/cjs/cura-button-outline.cjs.entry.js.map +1 -1
  17. package/dist/cjs/cura-button-outline.entry.cjs.js.map +1 -0
  18. package/dist/cjs/cura-button-select.cjs.entry.js +7 -12
  19. package/dist/cjs/cura-button-select.cjs.entry.js.map +1 -1
  20. package/dist/cjs/cura-button-select.entry.cjs.js.map +1 -0
  21. package/dist/cjs/{cura-button.definitions-f036371c.js → cura-button.definitions-B3SK8MaV.js} +2 -1
  22. package/dist/cjs/cura-button.definitions-B3SK8MaV.js.map +1 -0
  23. package/dist/cjs/cura-calendar.cjs.entry.js +203 -94
  24. package/dist/cjs/cura-calendar.cjs.entry.js.map +1 -1
  25. package/dist/cjs/cura-calendar.entry.cjs.js.map +1 -0
  26. package/dist/cjs/cura-card.cjs.entry.js +34 -6
  27. package/dist/cjs/cura-card.cjs.entry.js.map +1 -1
  28. package/dist/cjs/cura-card.entry.cjs.js.map +1 -0
  29. package/dist/cjs/cura-checkbox.cjs.entry.js +72 -20
  30. package/dist/cjs/cura-checkbox.cjs.entry.js.map +1 -1
  31. package/dist/cjs/cura-checkbox.entry.cjs.js.map +1 -0
  32. package/dist/cjs/cura-display.cjs.entry.js +25 -7
  33. package/dist/cjs/cura-display.cjs.entry.js.map +1 -1
  34. package/dist/cjs/cura-display.entry.cjs.js.map +1 -0
  35. package/dist/cjs/cura-dropdown-search-not-found.cjs.entry.js +5 -6
  36. package/dist/cjs/cura-dropdown-search-not-found.cjs.entry.js.map +1 -1
  37. package/dist/cjs/cura-dropdown-search-not-found.entry.cjs.js.map +1 -0
  38. package/dist/cjs/{cura-forms.definitions-c164f1b8.js → cura-forms.definitions-DVLuO67c.js} +2 -1
  39. package/dist/cjs/cura-forms.definitions-DVLuO67c.js.map +1 -0
  40. package/dist/cjs/{cura-icon.definitions-5223028b.js → cura-icon.definitions-DT0wF67y.js} +2 -1
  41. package/dist/cjs/cura-icon.definitions-DT0wF67y.js.map +1 -0
  42. package/dist/cjs/cura-icons-view.cjs.entry.js +7 -8
  43. package/dist/cjs/cura-icons-view.cjs.entry.js.map +1 -1
  44. package/dist/cjs/cura-icons-view.entry.cjs.js.map +1 -0
  45. package/dist/cjs/cura-input-date.cjs.entry.js +32 -15
  46. package/dist/cjs/cura-input-date.cjs.entry.js.map +1 -1
  47. package/dist/cjs/cura-input-date.entry.cjs.js.map +1 -0
  48. package/dist/cjs/cura-loader-bar.cjs.entry.js +4 -5
  49. package/dist/cjs/cura-loader-bar.cjs.entry.js.map +1 -1
  50. package/dist/cjs/cura-loader-bar.entry.cjs.js.map +1 -0
  51. package/dist/cjs/cura-modal.cjs.entry.js +46 -15
  52. package/dist/cjs/cura-modal.cjs.entry.js.map +1 -1
  53. package/dist/cjs/cura-modal.entry.cjs.js.map +1 -0
  54. package/dist/cjs/cura-progress-bar.cura-stepper-item.entry.cjs.js.map +1 -0
  55. package/dist/cjs/cura-progress-bar_2.cjs.entry.js +25 -15
  56. package/dist/cjs/cura-progress-bar_2.cjs.entry.js.map +1 -1
  57. package/dist/cjs/cura-radio.cjs.entry.js +73 -21
  58. package/dist/cjs/cura-radio.cjs.entry.js.map +1 -1
  59. package/dist/cjs/cura-radio.entry.cjs.js.map +1 -0
  60. package/dist/cjs/cura-stepper.cjs.entry.js +23 -6
  61. package/dist/cjs/cura-stepper.cjs.entry.js.map +1 -1
  62. package/dist/cjs/cura-stepper.entry.cjs.js.map +1 -0
  63. package/dist/cjs/cura-switch.cjs.entry.js +61 -18
  64. package/dist/cjs/cura-switch.cjs.entry.js.map +1 -1
  65. package/dist/cjs/cura-switch.entry.cjs.js.map +1 -0
  66. package/dist/cjs/cura-tabs-button.cjs.entry.js +6 -9
  67. package/dist/cjs/cura-tabs-button.cjs.entry.js.map +1 -1
  68. package/dist/cjs/cura-tabs-button.entry.cjs.js.map +1 -0
  69. package/dist/cjs/cura-tabs-transparent.cjs.entry.js +6 -9
  70. package/dist/cjs/cura-tabs-transparent.cjs.entry.js.map +1 -1
  71. package/dist/cjs/cura-tabs-transparent.entry.cjs.js.map +1 -0
  72. package/dist/cjs/{cura-tabs.definitions-b8955ad4.js → cura-tabs.definitions-CGqqGE2e.js} +2 -1
  73. package/dist/cjs/cura-tabs.definitions-CGqqGE2e.js.map +1 -0
  74. package/dist/cjs/{cura-theme-module-09bb63a4.js → cura-theme-module-CJkmAxBA.js} +94 -9
  75. package/dist/cjs/cura-theme-module-CJkmAxBA.js.map +1 -0
  76. package/dist/cjs/cura-toast.cjs.entry.js +8 -11
  77. package/dist/cjs/cura-toast.cjs.entry.js.map +1 -1
  78. package/dist/cjs/cura-toast.entry.cjs.js.map +1 -0
  79. package/dist/cjs/cura-tooltip.cjs.entry.js +9 -11
  80. package/dist/cjs/cura-tooltip.cjs.entry.js.map +1 -1
  81. package/dist/cjs/cura-tooltip.entry.cjs.js.map +1 -0
  82. package/dist/cjs/cura.cjs.js +9 -10
  83. package/dist/cjs/cura.cjs.js.map +1 -1
  84. package/dist/cjs/{index-60783089.js → index-BK9MSAiE.js} +947 -289
  85. package/dist/cjs/index-BK9MSAiE.js.map +1 -0
  86. package/dist/cjs/{index-6dc29195.js → index-EyP6Zlkd.js} +2 -1
  87. package/dist/cjs/index-EyP6Zlkd.js.map +1 -0
  88. package/dist/cjs/index.cjs.js +2 -4
  89. package/dist/cjs/index.cjs.js.map +1 -1
  90. package/dist/cjs/loader.cjs.js +5 -8
  91. package/dist/cjs/loader.cjs.js.map +1 -1
  92. package/dist/collection/collection-manifest.json +1 -1
  93. package/dist/collection/components/accordion/cura-accordion/cura-accordion.js +57 -18
  94. package/dist/collection/components/accordion/cura-accordion/cura-accordion.js.map +1 -1
  95. package/dist/collection/components/accordion/cura-accordion-item/cura-accordion-item.js +45 -9
  96. package/dist/collection/components/accordion/cura-accordion-item/cura-accordion-item.js.map +1 -1
  97. package/dist/collection/components/badges/cura-badge-counter/cura-badge-counter.js +24 -7
  98. package/dist/collection/components/badges/cura-badge-counter/cura-badge-counter.js.map +1 -1
  99. package/dist/collection/components/badges/cura-badge-distance/cura-badge-distance.js +8 -4
  100. package/dist/collection/components/badges/cura-badge-distance/cura-badge-distance.js.map +1 -1
  101. package/dist/collection/components/badges/cura-badge-dot/cura-badge-dot.js +19 -3
  102. package/dist/collection/components/badges/cura-badge-dot/cura-badge-dot.js.map +1 -1
  103. package/dist/collection/components/badges/cura-badge-pill/cura-badge-pill.js +40 -9
  104. package/dist/collection/components/badges/cura-badge-pill/cura-badge-pill.js.map +1 -1
  105. package/dist/collection/components/buttons/cura-button/cura-button.js +86 -17
  106. package/dist/collection/components/buttons/cura-button/cura-button.js.map +1 -1
  107. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.js +86 -17
  108. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.js.map +1 -1
  109. package/dist/collection/components/buttons/cura-button-select/cura-button-select.js +25 -13
  110. package/dist/collection/components/buttons/cura-button-select/cura-button-select.js.map +1 -1
  111. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.js +81 -16
  112. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.js.map +1 -1
  113. package/dist/collection/components/cura-alert/cura-alert.js +19 -11
  114. package/dist/collection/components/cura-alert/cura-alert.js.map +1 -1
  115. package/dist/collection/components/cura-avatar/cura-avatar.js +48 -13
  116. package/dist/collection/components/cura-avatar/cura-avatar.js.map +1 -1
  117. package/dist/collection/components/cura-calendar/cura-calendar.js +196 -24
  118. package/dist/collection/components/cura-calendar/cura-calendar.js.map +1 -1
  119. package/dist/collection/components/cura-card/cura-card.js +48 -7
  120. package/dist/collection/components/cura-card/cura-card.js.map +1 -1
  121. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.js +31 -9
  122. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.js.map +1 -1
  123. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.js +91 -28
  124. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.js.map +1 -1
  125. package/dist/collection/components/cura-icon/cura-icon.js +15 -6
  126. package/dist/collection/components/cura-icon/cura-icon.js.map +1 -1
  127. package/dist/collection/components/cura-icons-view/cura-icons-view.js +1 -1
  128. package/dist/collection/components/cura-icons-view/cura-icons-view.js.map +1 -1
  129. package/dist/collection/components/cura-modal/cura-modal.css +0 -1
  130. package/dist/collection/components/cura-modal/cura-modal.js +65 -17
  131. package/dist/collection/components/cura-modal/cura-modal.js.map +1 -1
  132. package/dist/collection/components/cura-page-template/cura-page-template.js +3 -1
  133. package/dist/collection/components/cura-page-template/cura-page-template.js.map +1 -1
  134. package/dist/collection/components/cura-stepper/cura-progress-bar/cura-progress-bar.js +21 -8
  135. package/dist/collection/components/cura-stepper/cura-progress-bar/cura-progress-bar.js.map +1 -1
  136. package/dist/collection/components/cura-stepper/cura-stepper-item/cura-stepper-item.js +26 -9
  137. package/dist/collection/components/cura-stepper/cura-stepper-item/cura-stepper-item.js.map +1 -1
  138. package/dist/collection/components/cura-stepper/cura-stepper.js +34 -6
  139. package/dist/collection/components/cura-stepper/cura-stepper.js.map +1 -1
  140. package/dist/collection/components/cura-toast/cura-toast.js +24 -12
  141. package/dist/collection/components/cura-toast/cura-toast.js.map +1 -1
  142. package/dist/collection/components/cura-tooltip/cura-tooltip.js +25 -12
  143. package/dist/collection/components/cura-tooltip/cura-tooltip.js.map +1 -1
  144. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.js +114 -29
  145. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.js.map +1 -1
  146. package/dist/collection/components/forms/cura-input-date/cura-input-date.css +1 -1
  147. package/dist/collection/components/forms/cura-input-date/cura-input-date.js +74 -16
  148. package/dist/collection/components/forms/cura-input-date/cura-input-date.js.map +1 -1
  149. package/dist/collection/components/forms/cura-input-date/cura-input-date.stories.js +13 -0
  150. package/dist/collection/components/forms/cura-input-date/cura-input-date.stories.js.map +1 -1
  151. package/dist/collection/components/forms/cura-input-text/cura-input-text.js +132 -28
  152. package/dist/collection/components/forms/cura-input-text/cura-input-text.js.map +1 -1
  153. package/dist/collection/components/forms/cura-label/cura-label.js +46 -9
  154. package/dist/collection/components/forms/cura-label/cura-label.js.map +1 -1
  155. package/dist/collection/components/forms/cura-radio/cura-radio.js +109 -28
  156. package/dist/collection/components/forms/cura-radio/cura-radio.js.map +1 -1
  157. package/dist/collection/components/forms/cura-select/cura-select.js +114 -34
  158. package/dist/collection/components/forms/cura-select/cura-select.js.map +1 -1
  159. package/dist/collection/components/forms/cura-select-options/cura-select-option.js +13 -6
  160. package/dist/collection/components/forms/cura-select-options/cura-select-option.js.map +1 -1
  161. package/dist/collection/components/forms/cura-switch/cura-switch.js +85 -21
  162. package/dist/collection/components/forms/cura-switch/cura-switch.js.map +1 -1
  163. package/dist/collection/components/loaders/cura-loader-bar/cura-loader-bar.js +6 -2
  164. package/dist/collection/components/loaders/cura-loader-bar/cura-loader-bar.js.map +1 -1
  165. package/dist/collection/components/loaders/cura-loader-circle/cura-loader-circle.js +14 -4
  166. package/dist/collection/components/loaders/cura-loader-circle/cura-loader-circle.js.map +1 -1
  167. package/dist/collection/components/tabs/cura-tabs/cura-tabs.js +21 -9
  168. package/dist/collection/components/tabs/cura-tabs/cura-tabs.js.map +1 -1
  169. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.js +21 -9
  170. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.js.map +1 -1
  171. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.js +9 -3
  172. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.js.map +1 -1
  173. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.js +21 -9
  174. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.js.map +1 -1
  175. package/dist/collection/components/text/cura-display/cura-display.js +39 -8
  176. package/dist/collection/components/text/cura-display/cura-display.js.map +1 -1
  177. package/dist/collection/components/text/cura-heading/cura-heading.js +53 -10
  178. package/dist/collection/components/text/cura-heading/cura-heading.js.map +1 -1
  179. package/dist/collection/components/text/cura-paragraph/cura-paragraph.js +39 -8
  180. package/dist/collection/components/text/cura-paragraph/cura-paragraph.js.map +1 -1
  181. package/dist/components/cura-accordion-item.js +24 -6
  182. package/dist/components/cura-accordion-item.js.map +1 -1
  183. package/dist/components/cura-accordion.js +34 -13
  184. package/dist/components/cura-accordion.js.map +1 -1
  185. package/dist/components/cura-alert.js +12 -14
  186. package/dist/components/cura-alert.js.map +1 -1
  187. package/dist/components/cura-avatar.js +25 -8
  188. package/dist/components/cura-avatar.js.map +1 -1
  189. package/dist/components/cura-badge-counter.js +2 -1
  190. package/dist/components/cura-badge-distance.js +7 -7
  191. package/dist/components/cura-badge-distance.js.map +1 -1
  192. package/dist/components/cura-badge-dot.js +14 -4
  193. package/dist/components/cura-badge-dot.js.map +1 -1
  194. package/dist/components/cura-badge-pill.js +2 -1
  195. package/dist/components/cura-button-outline.js +49 -10
  196. package/dist/components/cura-button-outline.js.map +1 -1
  197. package/dist/components/cura-button-select.js +10 -14
  198. package/dist/components/cura-button-select.js.map +1 -1
  199. package/dist/components/cura-button-transparent.js +2 -1
  200. package/dist/components/cura-button.js +49 -10
  201. package/dist/components/cura-button.js.map +1 -1
  202. package/dist/components/cura-calendar.js +2 -1
  203. package/dist/components/cura-card.js +34 -5
  204. package/dist/components/cura-card.js.map +1 -1
  205. package/dist/components/cura-checkbox.js +75 -22
  206. package/dist/components/cura-checkbox.js.map +1 -1
  207. package/dist/components/cura-display.js +25 -6
  208. package/dist/components/cura-display.js.map +1 -1
  209. package/dist/components/cura-dropdown-search-category.js +5 -5
  210. package/dist/components/cura-dropdown-search-category.js.map +1 -1
  211. package/dist/components/cura-dropdown-search-not-found.js +6 -6
  212. package/dist/components/cura-dropdown-search-not-found.js.map +1 -1
  213. package/dist/components/cura-dropdown-search-option.js +22 -10
  214. package/dist/components/cura-dropdown-search-option.js.map +1 -1
  215. package/dist/components/cura-dropdown-search.js +66 -27
  216. package/dist/components/cura-dropdown-search.js.map +1 -1
  217. package/dist/components/cura-heading.js +2 -1
  218. package/dist/components/cura-icon.js +2 -1
  219. package/dist/components/cura-icons-view.js +9 -9
  220. package/dist/components/cura-icons-view.js.map +1 -1
  221. package/dist/components/cura-input-date.js +40 -21
  222. package/dist/components/cura-input-date.js.map +1 -1
  223. package/dist/components/cura-input-text.js +2 -1
  224. package/dist/components/cura-label.js +2 -1
  225. package/dist/components/cura-loader-bar.js +2 -1
  226. package/dist/components/cura-loader-circle.js +2 -1
  227. package/dist/components/cura-modal.js +50 -18
  228. package/dist/components/cura-modal.js.map +1 -1
  229. package/dist/components/cura-page-template.js +4 -4
  230. package/dist/components/cura-page-template.js.map +1 -1
  231. package/dist/components/cura-paragraph.js +2 -1
  232. package/dist/components/cura-progress-bar.js +2 -1
  233. package/dist/components/cura-radio.js +75 -22
  234. package/dist/components/cura-radio.js.map +1 -1
  235. package/dist/components/cura-select-option.js +2 -1
  236. package/dist/components/cura-select.js +2 -1
  237. package/dist/components/cura-stepper-item.js +2 -1
  238. package/dist/components/cura-stepper.js +30 -12
  239. package/dist/components/cura-stepper.js.map +1 -1
  240. package/dist/components/cura-switch.js +62 -18
  241. package/dist/components/cura-switch.js.map +1 -1
  242. package/dist/components/cura-tabs-button.js +9 -11
  243. package/dist/components/cura-tabs-button.js.map +1 -1
  244. package/dist/components/cura-tabs-group.js +5 -5
  245. package/dist/components/cura-tabs-group.js.map +1 -1
  246. package/dist/components/cura-tabs-transparent.js +8 -10
  247. package/dist/components/cura-tabs-transparent.js.map +1 -1
  248. package/dist/components/cura-tabs.js +8 -10
  249. package/dist/components/cura-tabs.js.map +1 -1
  250. package/dist/components/cura-toast.js +12 -14
  251. package/dist/components/cura-toast.js.map +1 -1
  252. package/dist/components/cura-tooltip.js +15 -16
  253. package/dist/components/cura-tooltip.js.map +1 -1
  254. package/dist/components/index.js +3 -547
  255. package/dist/components/index.js.map +1 -1
  256. package/dist/components/{cura-icon2.js → p-B5aO1chh.js} +5 -6
  257. package/dist/components/p-B5aO1chh.js.map +1 -0
  258. package/dist/components/{cura-heading2.js → p-BHEafDKD.js} +34 -7
  259. package/dist/components/p-BHEafDKD.js.map +1 -0
  260. package/dist/components/{cura-button-transparent2.js → p-BRDqwZ4N.js} +48 -11
  261. package/dist/components/p-BRDqwZ4N.js.map +1 -0
  262. package/dist/{esm/cura-button.definitions-617d3bad.js → components/p-BSI2FkNn.js} +2 -1
  263. package/dist/components/p-BSI2FkNn.js.map +1 -0
  264. package/dist/components/{cura-badge-counter2.js → p-C72aF-gL.js} +18 -9
  265. package/dist/components/p-C72aF-gL.js.map +1 -0
  266. package/dist/components/{cura-tabs.definitions.js → p-CHcd-uKK.js} +2 -1
  267. package/dist/components/p-CHcd-uKK.js.map +1 -0
  268. package/dist/components/p-D1cPOZpG.js +2617 -0
  269. package/dist/components/p-D1cPOZpG.js.map +1 -0
  270. package/dist/components/{cura-paragraph2.js → p-DI4g-ZH4.js} +26 -7
  271. package/dist/components/p-DI4g-ZH4.js.map +1 -0
  272. package/dist/components/{cura-label2.js → p-DR1RHrEX.js} +30 -7
  273. package/dist/components/p-DR1RHrEX.js.map +1 -0
  274. package/dist/components/{cura-stepper-item2.js → p-DaPc6Dxl.js} +23 -14
  275. package/dist/components/p-DaPc6Dxl.js.map +1 -0
  276. package/dist/components/{cura-forms.definitions.js → p-Dot54hbB.js} +2 -1
  277. package/dist/components/p-Dot54hbB.js.map +1 -0
  278. package/dist/components/{cura-select-option2.js → p-DpIu_Oxz.js} +8 -9
  279. package/dist/components/p-DpIu_Oxz.js.map +1 -0
  280. package/dist/components/{cura-loader-circle2.js → p-Dqm2sAwv.js} +13 -7
  281. package/dist/components/p-Dqm2sAwv.js.map +1 -0
  282. package/dist/components/{cura-progress-bar2.js → p-FTSrgi0q.js} +11 -8
  283. package/dist/components/p-FTSrgi0q.js.map +1 -0
  284. package/dist/components/{cura-loader-bar2.js → p-KIQMkSRF.js} +5 -5
  285. package/dist/components/p-KIQMkSRF.js.map +1 -0
  286. package/dist/components/{cura-badge-pill2.js → p-cOEGtL9C.js} +26 -9
  287. package/dist/components/p-cOEGtL9C.js.map +1 -0
  288. package/dist/components/{cura-calendar2.js → p-e-P5qR3J.js} +210 -100
  289. package/dist/components/p-e-P5qR3J.js.map +1 -0
  290. package/dist/components/{cura-select2.js → p-y6Cly9DJ.js} +87 -31
  291. package/dist/components/p-y6Cly9DJ.js.map +1 -0
  292. package/dist/components/{cura-input-text2.js → p-zz_zOPBZ.js} +75 -102
  293. package/dist/components/p-zz_zOPBZ.js.map +1 -0
  294. package/dist/cura/cura-alert.entry.esm.js.map +1 -0
  295. package/dist/cura/cura-badge-counter.entry.esm.js.map +1 -0
  296. package/dist/cura/cura-badge-dot.entry.esm.js.map +1 -0
  297. package/dist/cura/cura-badge-pill.entry.esm.js.map +1 -0
  298. package/dist/cura/cura-button-outline.entry.esm.js.map +1 -0
  299. package/dist/cura/cura-button-select.entry.esm.js.map +1 -0
  300. package/dist/cura/{p-12a4ae7e.entry.js.map → cura-calendar.entry.esm.js.map} +1 -1
  301. package/dist/cura/{p-53d68d72.entry.js.map → cura-card.entry.esm.js.map} +1 -1
  302. package/dist/cura/cura-checkbox.entry.esm.js.map +1 -0
  303. package/dist/cura/cura-display.entry.esm.js.map +1 -0
  304. package/dist/cura/cura-dropdown-search-not-found.entry.esm.js.map +1 -0
  305. package/dist/cura/cura-icons-view.entry.esm.js.map +1 -0
  306. package/dist/cura/cura-input-date.entry.esm.js.map +1 -0
  307. package/dist/cura/cura-loader-bar.entry.esm.js.map +1 -0
  308. package/dist/cura/{p-1ef21ae9.entry.js.map → cura-modal.entry.esm.js.map} +1 -1
  309. package/dist/cura/cura-progress-bar.cura-stepper-item.entry.esm.js.map +1 -0
  310. package/dist/cura/cura-radio.entry.esm.js.map +1 -0
  311. package/dist/cura/cura-stepper.entry.esm.js.map +1 -0
  312. package/dist/cura/cura-switch.entry.esm.js.map +1 -0
  313. package/dist/cura/cura-tabs-button.entry.esm.js.map +1 -0
  314. package/dist/cura/cura-tabs-transparent.entry.esm.js.map +1 -0
  315. package/dist/cura/cura-toast.entry.esm.js.map +1 -0
  316. package/dist/cura/cura-tooltip.entry.esm.js.map +1 -0
  317. package/dist/cura/cura.esm.js +1 -1
  318. package/dist/cura/cura.esm.js.map +1 -1
  319. package/dist/cura/index.esm.js +1 -1
  320. package/dist/cura/index.esm.js.map +1 -1
  321. package/dist/cura/loader.esm.js.map +1 -0
  322. package/dist/cura/p-077019da.entry.js +2 -0
  323. package/dist/cura/p-077019da.entry.js.map +1 -0
  324. package/dist/cura/p-07783235.entry.js +2 -0
  325. package/dist/cura/p-07783235.entry.js.map +1 -0
  326. package/dist/cura/p-090e297c.entry.js +2 -0
  327. package/dist/cura/p-090e297c.entry.js.map +1 -0
  328. package/dist/cura/p-16c0b52c.entry.js +2 -0
  329. package/dist/cura/p-16c0b52c.entry.js.map +1 -0
  330. package/dist/cura/p-2632183e.entry.js +2 -0
  331. package/dist/cura/p-2632183e.entry.js.map +1 -0
  332. package/dist/cura/p-32015dcc.entry.js +2 -0
  333. package/dist/cura/p-32015dcc.entry.js.map +1 -0
  334. package/dist/cura/p-32f94709.entry.js +2 -0
  335. package/dist/cura/p-32f94709.entry.js.map +1 -0
  336. package/dist/cura/p-3d6040e2.entry.js +2 -0
  337. package/dist/cura/p-3d6040e2.entry.js.map +1 -0
  338. package/dist/cura/p-4ac578a6.entry.js +2 -0
  339. package/dist/cura/p-4ac578a6.entry.js.map +1 -0
  340. package/dist/cura/p-4bde448e.entry.js +2 -0
  341. package/dist/cura/p-4bde448e.entry.js.map +1 -0
  342. package/dist/cura/p-6feba852.entry.js +2 -0
  343. package/dist/cura/p-6feba852.entry.js.map +1 -0
  344. package/dist/cura/p-7586fd07.entry.js +2 -0
  345. package/dist/cura/p-7586fd07.entry.js.map +1 -0
  346. package/dist/cura/p-76cbb798.entry.js +2 -0
  347. package/dist/cura/p-76cbb798.entry.js.map +1 -0
  348. package/dist/cura/p-7fd143aa.entry.js +2 -0
  349. package/dist/cura/p-7fd143aa.entry.js.map +1 -0
  350. package/dist/cura/p-8c83f259.entry.js +2 -0
  351. package/dist/cura/p-8c83f259.entry.js.map +1 -0
  352. package/dist/cura/p-95cd7918.entry.js +2 -0
  353. package/dist/cura/p-95cd7918.entry.js.map +1 -0
  354. package/dist/cura/{p-272c784a.js → p-964stZ3D.js} +1 -1
  355. package/dist/cura/p-964stZ3D.js.map +1 -0
  356. package/dist/cura/p-9ef5444e.entry.js +2 -0
  357. package/dist/cura/p-9ef5444e.entry.js.map +1 -0
  358. package/dist/cura/p-BPKQjAwN.js +2 -0
  359. package/dist/cura/p-BPKQjAwN.js.map +1 -0
  360. package/dist/cura/{p-53c18ed4.js → p-BSI2FkNn.js} +1 -1
  361. package/dist/cura/p-BSI2FkNn.js.map +1 -0
  362. package/dist/cura/{p-efcb32eb.js → p-CHcd-uKK.js} +1 -1
  363. package/dist/cura/p-CHcd-uKK.js.map +1 -0
  364. package/dist/cura/{p-f9b8f665.js → p-Dot54hbB.js} +1 -1
  365. package/dist/cura/p-Dot54hbB.js.map +1 -0
  366. package/dist/cura/p-PPMZr_VE.js +3 -0
  367. package/dist/cura/p-PPMZr_VE.js.map +1 -0
  368. package/dist/cura/p-c6f240f0.entry.js +2 -0
  369. package/dist/cura/p-c6f240f0.entry.js.map +1 -0
  370. package/dist/cura/p-ceb646df.entry.js +2 -0
  371. package/dist/cura/p-ceb646df.entry.js.map +1 -0
  372. package/dist/cura/p-d040f8b9.entry.js +2 -0
  373. package/dist/cura/p-d040f8b9.entry.js.map +1 -0
  374. package/dist/cura/p-deb0b764.entry.js +2 -0
  375. package/dist/cura/p-deb0b764.entry.js.map +1 -0
  376. package/dist/cura/p-df7cb250.entry.js +2 -0
  377. package/dist/cura/p-df7cb250.entry.js.map +1 -0
  378. package/dist/cura/p-f9af3a3b.entry.js +2 -0
  379. package/dist/cura/p-f9af3a3b.entry.js.map +1 -0
  380. package/dist/cura/p-fc3b57a8.entry.js +2 -0
  381. package/dist/cura/p-fc3b57a8.entry.js.map +1 -0
  382. package/dist/cura/{p-48f9289b.js → p-sjLA93YY.js} +1 -1
  383. package/dist/cura/p-sjLA93YY.js.map +1 -0
  384. package/dist/esm/cura-accordion_20.entry.js +484 -135
  385. package/dist/esm/cura-accordion_20.entry.js.map +1 -1
  386. package/dist/esm/cura-alert.entry.js +9 -10
  387. package/dist/esm/cura-alert.entry.js.map +1 -1
  388. package/dist/esm/cura-badge-counter.entry.js +16 -6
  389. package/dist/esm/cura-badge-counter.entry.js.map +1 -1
  390. package/dist/esm/cura-badge-dot.entry.js +14 -3
  391. package/dist/esm/cura-badge-dot.entry.js.map +1 -1
  392. package/dist/esm/cura-badge-pill.entry.js +23 -5
  393. package/dist/esm/cura-badge-pill.entry.js.map +1 -1
  394. package/dist/esm/cura-button-outline.entry.js +46 -6
  395. package/dist/esm/cura-button-outline.entry.js.map +1 -1
  396. package/dist/esm/cura-button-select.entry.js +7 -10
  397. package/dist/esm/cura-button-select.entry.js.map +1 -1
  398. package/dist/{components/cura-button.definitions.js → esm/cura-button.definitions-BSI2FkNn.js} +2 -1
  399. package/dist/esm/cura-button.definitions-BSI2FkNn.js.map +1 -0
  400. package/dist/esm/cura-calendar.entry.js +203 -92
  401. package/dist/esm/cura-calendar.entry.js.map +1 -1
  402. package/dist/esm/cura-card.entry.js +34 -4
  403. package/dist/esm/cura-card.entry.js.map +1 -1
  404. package/dist/esm/cura-checkbox.entry.js +72 -18
  405. package/dist/esm/cura-checkbox.entry.js.map +1 -1
  406. package/dist/esm/cura-display.entry.js +25 -5
  407. package/dist/esm/cura-display.entry.js.map +1 -1
  408. package/dist/esm/cura-dropdown-search-not-found.entry.js +5 -4
  409. package/dist/esm/cura-dropdown-search-not-found.entry.js.map +1 -1
  410. package/dist/esm/{cura-forms.definitions-2f963167.js → cura-forms.definitions-Dot54hbB.js} +2 -1
  411. package/dist/esm/cura-forms.definitions-Dot54hbB.js.map +1 -0
  412. package/dist/esm/{cura-icon.definitions-a892c0e2.js → cura-icon.definitions-sjLA93YY.js} +2 -1
  413. package/dist/esm/cura-icon.definitions-sjLA93YY.js.map +1 -0
  414. package/dist/esm/cura-icons-view.entry.js +7 -6
  415. package/dist/esm/cura-icons-view.entry.js.map +1 -1
  416. package/dist/esm/cura-input-date.entry.js +32 -13
  417. package/dist/esm/cura-input-date.entry.js.map +1 -1
  418. package/dist/esm/cura-loader-bar.entry.js +4 -3
  419. package/dist/esm/cura-loader-bar.entry.js.map +1 -1
  420. package/dist/esm/cura-modal.entry.js +46 -13
  421. package/dist/esm/cura-modal.entry.js.map +1 -1
  422. package/dist/esm/cura-progress-bar.cura-stepper-item.entry.js.map +1 -0
  423. package/dist/esm/cura-progress-bar_2.entry.js +25 -13
  424. package/dist/esm/cura-progress-bar_2.entry.js.map +1 -1
  425. package/dist/esm/cura-radio.entry.js +73 -19
  426. package/dist/esm/cura-radio.entry.js.map +1 -1
  427. package/dist/esm/cura-stepper.entry.js +23 -4
  428. package/dist/esm/cura-stepper.entry.js.map +1 -1
  429. package/dist/esm/cura-switch.entry.js +61 -16
  430. package/dist/esm/cura-switch.entry.js.map +1 -1
  431. package/dist/esm/cura-tabs-button.entry.js +6 -7
  432. package/dist/esm/cura-tabs-button.entry.js.map +1 -1
  433. package/dist/esm/cura-tabs-transparent.entry.js +6 -7
  434. package/dist/esm/cura-tabs-transparent.entry.js.map +1 -1
  435. package/dist/esm/{cura-tabs.definitions-a017126e.js → cura-tabs.definitions-CHcd-uKK.js} +2 -1
  436. package/dist/esm/cura-tabs.definitions-CHcd-uKK.js.map +1 -0
  437. package/dist/esm/{cura-theme-module-bf286f68.js → cura-theme-module-BPKQjAwN.js} +88 -4
  438. package/dist/esm/cura-theme-module-BPKQjAwN.js.map +1 -0
  439. package/dist/esm/cura-toast.entry.js +8 -9
  440. package/dist/esm/cura-toast.entry.js.map +1 -1
  441. package/dist/esm/cura-tooltip.entry.js +9 -9
  442. package/dist/esm/cura-tooltip.entry.js.map +1 -1
  443. package/dist/esm/cura.js +7 -7
  444. package/dist/esm/cura.js.map +1 -1
  445. package/dist/esm/{index-fbee309a.js → index-964stZ3D.js} +2 -1
  446. package/dist/esm/index-964stZ3D.js.map +1 -0
  447. package/dist/esm/{index-21683715.js → index-OdKytJIH.js} +947 -270
  448. package/dist/esm/index-OdKytJIH.js.map +1 -0
  449. package/dist/esm/index.js +2 -2
  450. package/dist/esm/index.js.map +1 -1
  451. package/dist/esm/loader.js +5 -6
  452. package/dist/esm/loader.js.map +1 -1
  453. package/dist/types/components/forms/cura-input-date/cura-input-date.d.ts +4 -0
  454. package/dist/types/components/forms/cura-input-date/cura-input-date.stories.d.ts +14 -0
  455. package/dist/types/components.d.ts +718 -0
  456. package/dist/types/stencil-public-runtime.d.ts +25 -1
  457. package/package.json +5 -5
  458. package/dist/cjs/app-globals-6d5b51b6.js +0 -70
  459. package/dist/cjs/app-globals-6d5b51b6.js.map +0 -1
  460. package/dist/cjs/cura-button.definitions-f036371c.js.map +0 -1
  461. package/dist/cjs/cura-forms.definitions-c164f1b8.js.map +0 -1
  462. package/dist/cjs/cura-icon.definitions-5223028b.js.map +0 -1
  463. package/dist/cjs/cura-tabs.definitions-b8955ad4.js.map +0 -1
  464. package/dist/cjs/cura-theme-module-09bb63a4.js.map +0 -1
  465. package/dist/cjs/index-60783089.js.map +0 -1
  466. package/dist/cjs/index-6dc29195.js.map +0 -1
  467. package/dist/cjs/static-44199808.js +0 -90
  468. package/dist/cjs/static-44199808.js.map +0 -1
  469. package/dist/components/cura-badge-counter2.js.map +0 -1
  470. package/dist/components/cura-badge-pill2.js.map +0 -1
  471. package/dist/components/cura-button-transparent2.js.map +0 -1
  472. package/dist/components/cura-button.definitions.js.map +0 -1
  473. package/dist/components/cura-calendar2.js.map +0 -1
  474. package/dist/components/cura-forms.definitions.js.map +0 -1
  475. package/dist/components/cura-heading2.js.map +0 -1
  476. package/dist/components/cura-icon2.js.map +0 -1
  477. package/dist/components/cura-input-text2.js.map +0 -1
  478. package/dist/components/cura-label2.js.map +0 -1
  479. package/dist/components/cura-loader-bar2.js.map +0 -1
  480. package/dist/components/cura-loader-circle2.js.map +0 -1
  481. package/dist/components/cura-paragraph2.js.map +0 -1
  482. package/dist/components/cura-progress-bar2.js.map +0 -1
  483. package/dist/components/cura-select-option2.js.map +0 -1
  484. package/dist/components/cura-select2.js.map +0 -1
  485. package/dist/components/cura-stepper-item2.js.map +0 -1
  486. package/dist/components/cura-tabs.definitions.js.map +0 -1
  487. package/dist/cura/p-0aeaf57a.entry.js +0 -2
  488. package/dist/cura/p-0aeaf57a.entry.js.map +0 -1
  489. package/dist/cura/p-0b872499.entry.js +0 -2
  490. package/dist/cura/p-0b872499.entry.js.map +0 -1
  491. package/dist/cura/p-0ccde0ff.entry.js +0 -2
  492. package/dist/cura/p-0ccde0ff.entry.js.map +0 -1
  493. package/dist/cura/p-12a4ae7e.entry.js +0 -2
  494. package/dist/cura/p-137f003b.entry.js +0 -2
  495. package/dist/cura/p-137f003b.entry.js.map +0 -1
  496. package/dist/cura/p-197213c0.entry.js +0 -2
  497. package/dist/cura/p-197213c0.entry.js.map +0 -1
  498. package/dist/cura/p-1ef21ae9.entry.js +0 -2
  499. package/dist/cura/p-202dc01a.entry.js +0 -2
  500. package/dist/cura/p-202dc01a.entry.js.map +0 -1
  501. package/dist/cura/p-20b05d8f.entry.js +0 -2
  502. package/dist/cura/p-20b05d8f.entry.js.map +0 -1
  503. package/dist/cura/p-272c784a.js.map +0 -1
  504. package/dist/cura/p-2db4deb3.js +0 -2
  505. package/dist/cura/p-2db4deb3.js.map +0 -1
  506. package/dist/cura/p-48f9289b.js.map +0 -1
  507. package/dist/cura/p-4ee8efca.js +0 -3
  508. package/dist/cura/p-4ee8efca.js.map +0 -1
  509. package/dist/cura/p-53c18ed4.js.map +0 -1
  510. package/dist/cura/p-53d68d72.entry.js +0 -2
  511. package/dist/cura/p-5a43e745.entry.js +0 -2
  512. package/dist/cura/p-5a43e745.entry.js.map +0 -1
  513. package/dist/cura/p-633c13cd.entry.js +0 -2
  514. package/dist/cura/p-633c13cd.entry.js.map +0 -1
  515. package/dist/cura/p-6cbd49dd.js +0 -2
  516. package/dist/cura/p-6cbd49dd.js.map +0 -1
  517. package/dist/cura/p-7a68835f.entry.js +0 -2
  518. package/dist/cura/p-7a68835f.entry.js.map +0 -1
  519. package/dist/cura/p-7e10b146.entry.js +0 -2
  520. package/dist/cura/p-7e10b146.entry.js.map +0 -1
  521. package/dist/cura/p-7e2d1229.entry.js +0 -2
  522. package/dist/cura/p-7e2d1229.entry.js.map +0 -1
  523. package/dist/cura/p-8aade007.entry.js +0 -2
  524. package/dist/cura/p-8aade007.entry.js.map +0 -1
  525. package/dist/cura/p-9f460031.js +0 -2
  526. package/dist/cura/p-9f460031.js.map +0 -1
  527. package/dist/cura/p-ac0c90af.entry.js +0 -2
  528. package/dist/cura/p-ac0c90af.entry.js.map +0 -1
  529. package/dist/cura/p-b254bbe4.entry.js +0 -2
  530. package/dist/cura/p-b254bbe4.entry.js.map +0 -1
  531. package/dist/cura/p-b4ee956b.entry.js +0 -2
  532. package/dist/cura/p-b4ee956b.entry.js.map +0 -1
  533. package/dist/cura/p-b60a6aaa.entry.js +0 -2
  534. package/dist/cura/p-b60a6aaa.entry.js.map +0 -1
  535. package/dist/cura/p-b6ff8ac1.entry.js +0 -2
  536. package/dist/cura/p-b6ff8ac1.entry.js.map +0 -1
  537. package/dist/cura/p-d8e1e182.entry.js +0 -2
  538. package/dist/cura/p-d8e1e182.entry.js.map +0 -1
  539. package/dist/cura/p-d97719bc.entry.js +0 -2
  540. package/dist/cura/p-d97719bc.entry.js.map +0 -1
  541. package/dist/cura/p-daf422ce.entry.js +0 -2
  542. package/dist/cura/p-daf422ce.entry.js.map +0 -1
  543. package/dist/cura/p-efcb32eb.js.map +0 -1
  544. package/dist/cura/p-f9b8f665.js.map +0 -1
  545. package/dist/esm/app-globals-c2abb41c.js +0 -68
  546. package/dist/esm/app-globals-c2abb41c.js.map +0 -1
  547. package/dist/esm/cura-button.definitions-617d3bad.js.map +0 -1
  548. package/dist/esm/cura-forms.definitions-2f963167.js.map +0 -1
  549. package/dist/esm/cura-icon.definitions-a892c0e2.js.map +0 -1
  550. package/dist/esm/cura-tabs.definitions-a017126e.js.map +0 -1
  551. package/dist/esm/cura-theme-module-bf286f68.js.map +0 -1
  552. package/dist/esm/index-21683715.js.map +0 -1
  553. package/dist/esm/index-fbee309a.js.map +0 -1
  554. package/dist/esm/static-090f0088.js +0 -88
  555. package/dist/esm/static-090f0088.js.map +0 -1
  556. package/dist/loader/package.json +0 -11
@@ -1 +1 @@
1
- {"version":3,"names":["curaCardCss","CuraCardStyle0","CuraCard","connectedCallback","this","weights","window","CuraAPI","theme","fonts","getWeights","styles","spacing","getSpacing","colors","getColor","getSize","getFamily","medium","getClasses","classes","type","href","colorMode","hasPadding","hasShadow","render","h","Host","key","role","class","target","style"],"sources":["src/components/cura-card/cura-card.scss?tag=cura-card&encapsulation=shadow","src/components/cura-card/cura-card.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/shadows.scss';\n\n:host {\n display: block;\n box-sizing: border-box;\n font-size: var(--font-size);\n font-family: var(--font-family);\n ::slotted(*) {\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: var(--font-size);\n font-family: var(--font-family);\n }\n \n}\n\na {\n display: block;\n text-decoration: none !important;\n color: inherit;\n}\n.solid {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-base);\n border-radius: 12px;\n overflow: hidden;\n padding: 0px;\n box-shadow: none;\n\n ::slotted(*) {\n \n border-radius: 0 ;\n }\n &.hasPadding {\n padding: 20px;\n ::slotted(*) {\n border-radius: 4px !important;\n }\n }\n\n &.hasShadow {\n border: 2px solid var(--neutral-base);\n\n @include shadow-level2(--neutral-black-shadow);\n }\n\n &.cardLink {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--primary-base);\n border-radius: 12px;\n padding: 0px;\n box-shadow: none;\n cursor: pointer;\n\n ::slotted(*) {\n border-radius: 0px;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n &.hasPadding {\n padding: 20px;\n ::slotted(*) {\n border-radius: 4px !important;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n }\n\n &.hasShadow {\n border: 2px solid var(--primary-base);\n\n @include shadow-level3(--neutral-black-shadow);\n }\n &:not(.hasPadding).hasShadow {\n ::slotted(*) {\n border-radius: 12px !important;\n }\n }\n\n &.dark {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-purewhite);\n &:hover {\n border: 2px solid var(--primary-lighter);\n }\n }\n }\n}\n\n.transparent {\n background-color: transparent;\n border: 0;\n border-radius: 12px;\n padding: 0px;\n overflow: hidden;\n ::slotted(*) {\n border-radius: 12px;\n }\n\n &.hasPadding {\n padding: 20px;\n\n ::slotted(*) {\n border-radius: 4px;\n }\n }\n\n &.cardLink {\n background-color: transparent;\n border: 2px solid var(--primary-base);\n overflow: hidden;\n border-radius: 12px;\n padding: 0px;\n box-shadow: none;\n ::slotted(*) {\n border-radius: 0px !important;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n\n &.light {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--primary-base);\n ::slotted(*) {\n border-radius: 12px !important;\n }\n &:hover {\n border-color: var(--primary-lighter) !important;\n }\n }\n &.dark {\n background-color: transparent;\n\n border: 2px solid var(--neutral-purewhite);\n\n &:hover {\n border: 0;\n }\n }\n &.hasPadding {\n padding: 20px;\n\n ::slotted(*) {\n border-radius: 4px !important;\n }\n }\n }\n}\n","import { Component, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-card',\n styleUrl: 'cura-card.scss',\n shadow: true,\n})\nexport class CuraCard {\n /**\n * Determines whether the card should have padding.\n * @type {boolean}\n * @default false\n */\n @Prop({ mutable: true }) hasPadding: boolean = true;\n\n /**\n * Determines whether the card should have a shadow effect.\n * @type {boolean}\n * @default false\n */\n @Prop({ mutable: true }) hasShadow: boolean = false;\n\n /**\n * Sets the type of the card background.\n * - 'solid': A solid background.\n * - 'transparent': A transparent background.\n * @type {'solid' | 'transparent'}\n * @default 'solid'\n */\n @Prop({ mutable: true }) type: 'solid' | 'transparent' = 'solid';\n\n /**\n * Sets the color mode of the card.\n * - 'light': Light mode for the card.\n * - 'dark': Dark mode for the card.\n * @type {'light' | 'dark'}\n * @default 'light'\n */\n @Prop({ mutable: true }) colorMode: 'light' | 'dark' = 'light';\n\n /**\n * The URL that the card should link to (if set).\n * If not set, the card acts as a normal card.\n * @type {string | undefined}\n */\n @Prop({ mutable: true, reflect: true }) href?: string;\n\n /**\n * The target attribute for the link.\n * Applicable only if `href` is set.\n * @type {string}\n * @default '_self'\n */\n @Prop({ reflect: true }) target: string = '_self';\n\n @State() styles: any = {};\n\n weights;\n\n connectedCallback() {\n this.weights = window.CuraAPI.theme.fonts.getWeights();\n this.styles['--base-spacing'] = window.CuraAPI.theme.spacing.getSpacing();\n this.styles['--neutral-purewhite'] = window.CuraAPI.theme.colors.getColor(`neutral-purewhite`);\n this.styles['--neutral-white'] = window.CuraAPI.theme.colors.getColor(`neutral-white`);\n this.styles['--neutral-base'] = window.CuraAPI.theme.colors.getColor(`neutral-base`);\n this.styles['--neutral-dark'] = window.CuraAPI.theme.colors.getColor(`neutral-dark`);\n this.styles['--neutral-black'] = window.CuraAPI.theme.colors.getColor(`neutral-black`);\n this.styles['--neutral-black-shadow'] = window.CuraAPI.theme.colors.getColor(`neutral-black`, 0.16);\n this.styles['--primary-lighter'] = window.CuraAPI.theme.colors.getColor(`primary-lighter`);\n this.styles['--primary-base'] = window.CuraAPI.theme.colors.getColor(`primary-base`);\n this.styles['--font-size'] = window.CuraAPI.theme.fonts.getSize();\n this.styles['--font-family'] = window.CuraAPI.theme.fonts.getFamily();\n this.styles['--font-weight-medium'] = this.weights.medium;\n }\n\n getClasses() {\n const classes = {};\n classes[this.type] = true;\n classes[`cardLink`] = this.href;\n classes[this.colorMode] = true;\n classes[`hasPadding`] = this.hasPadding;\n classes[`hasShadow`] = this.hasShadow;\n return classes;\n }\n\n render() {\n return (\n <Host role={this.href ? 'link' : 'div'}>\n {this.href ? (\n <a class={this.getClasses()} target={this.target} style={this.styles} href={this.href}>\n <slot></slot>\n </a>\n ) : (\n <div class={this.getClasses()} style={this.styles}>\n <slot></slot>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"6CAAA,MAAMA,EAAc,ikFACpB,MAAAC,EAAeD,E,MCMFE,EAAQ,M,yCAM4B,K,eAOD,M,UASW,Q,eASF,Q,gCAeb,Q,YAEnB,E,CAIvB,iBAAAC,GACEC,KAAKC,QAAUC,OAAOC,QAAQC,MAAMC,MAAMC,aAC1CN,KAAKO,OAAO,kBAAoBL,OAAOC,QAAQC,MAAMI,QAAQC,aAC7DT,KAAKO,OAAO,uBAAyBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,qBAC1EX,KAAKO,OAAO,mBAAqBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,iBACtEX,KAAKO,OAAO,kBAAoBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,gBACrEX,KAAKO,OAAO,kBAAoBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,gBACrEX,KAAKO,OAAO,mBAAqBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,iBACtEX,KAAKO,OAAO,0BAA4BL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,gBAAiB,KAC9FX,KAAKO,OAAO,qBAAuBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,mBACxEX,KAAKO,OAAO,kBAAoBL,OAAOC,QAAQC,MAAMM,OAAOC,SAAS,gBACrEX,KAAKO,OAAO,eAAiBL,OAAOC,QAAQC,MAAMC,MAAMO,UACxDZ,KAAKO,OAAO,iBAAmBL,OAAOC,QAAQC,MAAMC,MAAMQ,YAC1Db,KAAKO,OAAO,wBAA0BP,KAAKC,QAAQa,M,CAGrD,UAAAC,GACE,MAAMC,EAAU,GAChBA,EAAQhB,KAAKiB,MAAQ,KACrBD,EAAQ,YAAchB,KAAKkB,KAC3BF,EAAQhB,KAAKmB,WAAa,KAC1BH,EAAQ,cAAgBhB,KAAKoB,WAC7BJ,EAAQ,aAAehB,KAAKqB,UAC5B,OAAOL,C,CAGT,MAAAM,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,KAAM1B,KAAKkB,KAAO,OAAS,OAC9BlB,KAAKkB,KACJK,EAAA,KAAGI,MAAO3B,KAAKe,aAAca,OAAQ5B,KAAK4B,OAAQC,MAAO7B,KAAKO,OAAQW,KAAMlB,KAAKkB,MAC/EK,EAAA,cAGFA,EAAA,OAAKI,MAAO3B,KAAKe,aAAcc,MAAO7B,KAAKO,QACzCgB,EAAA,c","ignoreList":[]}
1
+ {"version":3,"file":"cura-card.entry.esm.js","sources":["src/components/cura-card/cura-card.scss?tag=cura-card&encapsulation=shadow","src/components/cura-card/cura-card.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/shadows.scss';\n\n:host {\n display: block;\n box-sizing: border-box;\n font-size: var(--font-size);\n font-family: var(--font-family);\n ::slotted(*) {\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: var(--font-size);\n font-family: var(--font-family);\n }\n \n}\n\na {\n display: block;\n text-decoration: none !important;\n color: inherit;\n}\n.solid {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-base);\n border-radius: 12px;\n overflow: hidden;\n padding: 0px;\n box-shadow: none;\n\n ::slotted(*) {\n \n border-radius: 0 ;\n }\n &.hasPadding {\n padding: 20px;\n ::slotted(*) {\n border-radius: 4px !important;\n }\n }\n\n &.hasShadow {\n border: 2px solid var(--neutral-base);\n\n @include shadow-level2(--neutral-black-shadow);\n }\n\n &.cardLink {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--primary-base);\n border-radius: 12px;\n padding: 0px;\n box-shadow: none;\n cursor: pointer;\n\n ::slotted(*) {\n border-radius: 0px;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n &.hasPadding {\n padding: 20px;\n ::slotted(*) {\n border-radius: 4px !important;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n }\n\n &.hasShadow {\n border: 2px solid var(--primary-base);\n\n @include shadow-level3(--neutral-black-shadow);\n }\n &:not(.hasPadding).hasShadow {\n ::slotted(*) {\n border-radius: 12px !important;\n }\n }\n\n &.dark {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-purewhite);\n &:hover {\n border: 2px solid var(--primary-lighter);\n }\n }\n }\n}\n\n.transparent {\n background-color: transparent;\n border: 0;\n border-radius: 12px;\n padding: 0px;\n overflow: hidden;\n ::slotted(*) {\n border-radius: 12px;\n }\n\n &.hasPadding {\n padding: 20px;\n\n ::slotted(*) {\n border-radius: 4px;\n }\n }\n\n &.cardLink {\n background-color: transparent;\n border: 2px solid var(--primary-base);\n overflow: hidden;\n border-radius: 12px;\n padding: 0px;\n box-shadow: none;\n ::slotted(*) {\n border-radius: 0px !important;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n\n &.light {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--primary-base);\n ::slotted(*) {\n border-radius: 12px !important;\n }\n &:hover {\n border-color: var(--primary-lighter) !important;\n }\n }\n &.dark {\n background-color: transparent;\n\n border: 2px solid var(--neutral-purewhite);\n\n &:hover {\n border: 0;\n }\n }\n &.hasPadding {\n padding: 20px;\n\n ::slotted(*) {\n border-radius: 4px !important;\n }\n }\n }\n}\n","import { Component, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-card',\n styleUrl: 'cura-card.scss',\n shadow: true,\n})\nexport class CuraCard {\n /**\n * Determines whether the card should have padding.\n * @type {boolean}\n * @default false\n */\n @Prop({ mutable: true }) hasPadding: boolean = true;\n\n /**\n * Determines whether the card should have a shadow effect.\n * @type {boolean}\n * @default false\n */\n @Prop({ mutable: true }) hasShadow: boolean = false;\n\n /**\n * Sets the type of the card background.\n * - 'solid': A solid background.\n * - 'transparent': A transparent background.\n * @type {'solid' | 'transparent'}\n * @default 'solid'\n */\n @Prop({ mutable: true }) type: 'solid' | 'transparent' = 'solid';\n\n /**\n * Sets the color mode of the card.\n * - 'light': Light mode for the card.\n * - 'dark': Dark mode for the card.\n * @type {'light' | 'dark'}\n * @default 'light'\n */\n @Prop({ mutable: true }) colorMode: 'light' | 'dark' = 'light';\n\n /**\n * The URL that the card should link to (if set).\n * If not set, the card acts as a normal card.\n * @type {string | undefined}\n */\n @Prop({ mutable: true, reflect: true }) href?: string;\n\n /**\n * The target attribute for the link.\n * Applicable only if `href` is set.\n * @type {string}\n * @default '_self'\n */\n @Prop({ reflect: true }) target: string = '_self';\n\n @State() styles: any = {};\n\n weights;\n\n connectedCallback() {\n this.weights = window.CuraAPI.theme.fonts.getWeights();\n this.styles['--base-spacing'] = window.CuraAPI.theme.spacing.getSpacing();\n this.styles['--neutral-purewhite'] = window.CuraAPI.theme.colors.getColor(`neutral-purewhite`);\n this.styles['--neutral-white'] = window.CuraAPI.theme.colors.getColor(`neutral-white`);\n this.styles['--neutral-base'] = window.CuraAPI.theme.colors.getColor(`neutral-base`);\n this.styles['--neutral-dark'] = window.CuraAPI.theme.colors.getColor(`neutral-dark`);\n this.styles['--neutral-black'] = window.CuraAPI.theme.colors.getColor(`neutral-black`);\n this.styles['--neutral-black-shadow'] = window.CuraAPI.theme.colors.getColor(`neutral-black`, 0.16);\n this.styles['--primary-lighter'] = window.CuraAPI.theme.colors.getColor(`primary-lighter`);\n this.styles['--primary-base'] = window.CuraAPI.theme.colors.getColor(`primary-base`);\n this.styles['--font-size'] = window.CuraAPI.theme.fonts.getSize();\n this.styles['--font-family'] = window.CuraAPI.theme.fonts.getFamily();\n this.styles['--font-weight-medium'] = this.weights.medium;\n }\n\n getClasses() {\n const classes = {};\n classes[this.type] = true;\n classes[`cardLink`] = this.href;\n classes[this.colorMode] = true;\n classes[`hasPadding`] = this.hasPadding;\n classes[`hasShadow`] = this.hasShadow;\n return classes;\n }\n\n render() {\n return (\n <Host role={this.href ? 'link' : 'div'}>\n {this.href ? (\n <a class={this.getClasses()} target={this.target} style={this.styles} href={this.href}>\n <slot></slot>\n </a>\n ) : (\n <div class={this.getClasses()} style={this.styles}>\n <slot></slot>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-checkbox.entry.esm.js","sources":["src/components/forms/cura-checkbox/cura-checkbox.scss?tag=cura-checkbox&encapsulation=shadow","src/components/forms/cura-checkbox/cura-checkbox.tsx"],"sourcesContent":["@import '../../../scss/mixins/text.scss';\n\n:host {\n display: block;\n box-sizing: border-box;\n\n min-width: 0;\n}\n\n/* Container e Layout */\n.container {\n display: flex;\n align-items: center;\n flex-direction: row-reverse;\n justify-content: start;\n gap: var(--gap);\n\n cursor: pointer;\n}\n\n.position {\n &.container {\n flex-direction: row;\n }\n\n .label-wrapper {\n justify-content: end;\n }\n\n .message {\n text-align: right;\n }\n\n .label {\n order: 1;\n }\n}\n\n.info {\n display: flex;\n flex-direction: column;\n\n overflow: hidden;\n}\n\n.label.textoverflow-single {\n @include truncate-single();\n min-width: 0;\n max-width: 100%;\n}\n\n.label-wrapper {\n display: flex;\n justify-content: start;\n align-items: center;\n gap: 5px;\n}\n\n/* Control e Checkbox */\n.control {\n width: fit-content;\n cursor: pointer;\n position: relative;\n}\n\n.checkbox {\n appearance: none;\n border: 2px solid var(--neutral-base-neutral-medium);\n border-radius: 4px;\n background: var(--neutral-black-neutral-purewhite);\n flex: 1 0;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n cursor: pointer;\n box-sizing: border-box;\n width: var(--size);\n height: var(--size);\n flex: 0 0 var(--size);\n}\n\n.icon {\n position: absolute;\n display: flex;\n opacity: 0;\n transition: opacity 0.3s;\n}\n\n/* Estados de Foco */\n.checkbox:focus {\n border-color: var(--info-base) !important;\n}\n\n/* Estado Disabled */\n.disabled .checkbox {\n background: var(--neutral-black-neutral-white);\n border-color: var(--neutral-darker-neutral-base);\n cursor: not-allowed;\n\n &:hover {\n border-color: var(--neutral-darker-neutral-base) !important;\n }\n}\n\n.disabled.checked .checkbox,\n.disabled.indeterminate .checkbox {\n background: var(--neutral-black-neutral-white);\n border-color: var(--neutral-darker-neutral-base);\n\n &:hover {\n border-color: var(--neutral-base-neutral-white);\n background: var(--primary-base-neutral-white);\n }\n}\n\n.disabled .checkbox:focus {\n border-color: var(--neutral-darker-neutral-base) !important;\n}\n\n/* Estado Checked */\n.checked .checkbox {\n border-color: var(--color-dark);\n background: var(--color-base);\n\n &:hover {\n border-color: var(--color-base) !important;\n background: var(--color-light);\n }\n}\n\n/* Estado Indeterminate */\n.indeterminate .checkbox {\n border-color: var(--color-base);\n background: var(--color-light);\n\n &:hover {\n border-color: var(--color-dark) !important;\n background: var(--color-base);\n }\n}\n\n.checked .icon,\n.indeterminate .icon {\n opacity: 1;\n}\n\n/* Hover para não disabled, default, checked, indeterminate */\n:not(.disabled):not(.checked):not(.indeterminate) .checkbox:hover {\n border-color: var(--neutral-purewhite-neutral-dark);\n}\n\n/* Estado Success */\n\n.success.dark .checkbox {\n background: var(--neutral-black);\n}\n\n.success .checkbox {\n border-color: var(--success-base);\n background: var(--success-lighter);\n\n &:hover {\n border-color: var(--success-base) !important;\n }\n}\n\n.success.checked .checkbox {\n border-color: var(--success-dark-base);\n background: var(--success-base-lighter);\n\n &:hover {\n border-color: var(--success-dark-base);\n }\n}\n\n/* Estado Error */\n\n.error.dark .checkbox {\n background: var(--neutral-black);\n}\n\n.error .checkbox {\n border-color: var(--error-base);\n background: var(--error-lighter);\n\n &:hover {\n border-color: var(--error-base) !important;\n }\n}\n\n.error.checked .checkbox {\n border-color: var(--error-dark-base);\n background: var(--error-base-lighter);\n\n &:hover {\n border-color: var(--error-dark-base);\n }\n}\n\n/* Input */\ninput {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n","import { Component, Prop, Event, Element, h, Host, Watch, EventEmitter, State, AttachInternals } from '@stencil/core';\nimport { formsSizes } from '../cura-forms.definitions';\n\n@Component({\n tag: 'cura-checkbox',\n styleUrl: 'cura-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class CuraCheckbox {\n /**\n * Reflects the checked state of the checkbox.\n * Mutable property allowing state change.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false;\n /**\n * Reflects the indeterminate state of the checkbox.\n * Mutable property allowing state change.\n */\n @Prop({ reflect: true, mutable: true }) indeterminate: boolean = false;\n /**\n * Status of the checkbox.\n * Can be 'error', 'success', or 'default'.\n */\n @Prop({ reflect: true, mutable: true }) status: 'error' | 'success' | 'default' = 'default';\n /**\n * Reflects the disabled state of the checkbox.\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n /**\n * Reflects the required state of the checkbox.\n */\n @Prop({ reflect: true }) required: boolean = false;\n /**\n * Text label associated with the checkbox.\n */\n @Prop({ reflect: true }) label: string;\n /**\n * Specifies the tabindex of the checkbox.\n */\n @Prop({ reflect: true }) ontabindex: number = 0;\n /**\n * Position of the label relative to the checkbox.\n * Can be 'left' or 'right'.\n */\n @Prop({ reflect: true }) position: 'left' | 'right' = 'left';\n /**\n * Value associated with the checkbox.\n */\n @Prop({ reflect: true }) value: string;\n /**\n * Name attribute of the checkbox.\n */\n @Prop({ reflect: true }) name: string;\n /**\n * Size of the checkbox.\n * Can be 'small', 'medium', or 'large'.\n */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n /**\n * Background theme of the checkbox.\n * Can be 'dark' or 'light'.\n */\n @Prop() background: 'dark' | 'light' = 'light';\n /**\n * iconColor theme of the checkbox.\n * Can be 'dark' or 'light'.\n */\n @Prop() iconColor: 'dark' | 'light' = 'dark';\n /**\n * Color theme of the checkbox.\n */\n @Prop() color = 'accent';\n\n /**\n * Controls how the label text should handle overflow.\n * - `'none'`: No overflow handling; the label displays normally.\n * - `'single'`: The label will be truncated with an ellipsis if it overflows a single line.\n * - `string`: Custom overflow handling mode.\n *\n * @default 'none'\n */\n @Prop({ reflect: true }) overflowLabel: 'none' | 'single' | string = 'none';\n\n /**\n * Controls how the helper text should handle overflow.\n * - `'none'`: No overflow handling; the label displays normally.\n * - `'single'`: The label will be truncated with an ellipsis if it overflows a single line.\n * - `string`: Custom overflow handling mode.\n *\n * @default 'none'\n */\n @Prop({ reflect: true }) overflowHelper: 'none' | 'single' | string = 'none';\n\n @State() styles = {};\n\n @Element() host: HTMLElement;\n\n @Event() onchange: EventEmitter<{ value: string; checked: boolean; indeterminate: boolean }>;\n\n @AttachInternals() internals: ElementInternals;\n\n isDarkBackground = () => this.background === 'dark';\n\n isDarkIconColor = () => this.iconColor === 'dark';\n\n @Watch('size')\n sizeHandler() {\n this.styles = {\n ...this.styles,\n '--size': `${formsSizes[this.size].size}px`,\n '--gap': `${formsSizes[this.size].gap}px`,\n };\n }\n\n /**\n * Watches changes in color and background properties to update styles.\n */\n @Watch('color')\n @Watch('background')\n setColors() {\n const colors = [\n { name: '--color-base', background: `${this.color}-base` },\n { name: '--color-lighter', background: `${this.color}-lighter` },\n { name: '--color-light', background: `${this.color}-light` },\n { name: '--color-dark', background: `${this.color}-dark` },\n { name: '--info-base', background: 'info-base' },\n { name: '--error-base', background: 'error-base' },\n { name: '--success-lighter', background: 'success-lighter' },\n { name: '--success-base', background: 'success-base' },\n { name: '--success-dark', background: 'success-dark' },\n { name: '--error-lighter', background: 'error-lighter' },\n { name: '--neutral-black', background: 'neutral-black' },\n { name: '--primary-base-neutral-white', background: this.isDarkBackground() ? 'primary-base' : 'neutral-white' },\n { name: '--neutral-base-neutral-medium', background: this.isDarkBackground() ? 'neutral-base' : 'neutral-medium' },\n { name: '--neutral-black-neutral-purewhite', background: this.isDarkBackground() ? 'neutral-black' : 'neutral-purewhite' },\n { name: '--neutral-black-neutral-white', background: this.isDarkBackground() ? 'neutral-black' : 'neutral-white' },\n { name: '--neutral-darker-neutral-base', background: this.isDarkBackground() ? 'neutral-darker' : 'neutral-base' },\n { name: '--neutral-base-neutral-base', background: this.isDarkBackground() ? 'primary-base' : 'neutral-base' },\n { name: '--neutral-purewhite-neutral-dark', background: this.isDarkBackground() ? 'neutral-purewhite' : 'neutral-dark' },\n { name: '--primary-base-neutral-medium', background: this.isDarkBackground() ? 'primary-base' : 'neutral-medium' },\n { name: '--success-base-lighter', background: this.isDarkBackground() ? 'success-base' : 'success-lighter' },\n { name: '--success-dark-base', background: this.isDarkBackground() ? 'success-dark' : 'success-base' },\n { name: '--error-base-lighter', background: this.isDarkBackground() ? 'error-base' : 'error-lighter' },\n { name: '--error-dark-base', background: this.isDarkBackground() ? 'error-dark' : 'error-base' },\n ];\n\n colors.forEach(color => {\n this.styles[color.name] = window.CuraAPI.theme.colors.getColor(color.background);\n });\n this.styles = { ...this.styles };\n }\n\n connectedCallback() {\n this.sizeHandler();\n this.setColors();\n }\n\n /**\n * Callback for form association.\n */\n formAssociatedCallback(form: { ariaLabel: string }) {\n form.ariaLabel = this.label;\n }\n\n /**\n * Callback to restore the switch state from the form.\n */\n formStateRestoreCallback(state: { value: string; checked: boolean; indeterminate: boolean }) {\n this.value = state.value;\n this.checked = state.checked;\n this.indeterminate = state.indeterminate;\n this.internals.setFormValue(this.value);\n }\n\n /**\n * Callback to reset the switch state when the form is reset.\n */\n formResetCallback() {\n this.value = '';\n this.checked = false;\n this.indeterminate = false;\n this.internals.setValidity({});\n this.internals.setFormValue(this.value);\n }\n\n /**\n * Callback to update the switch's disabled state when the form's disabled state changes.\n */\n formDisabledCallback(disabled: boolean) {\n this.disabled = disabled;\n }\n\n handleClick = () => {\n if (this.disabled) return;\n\n this.indeterminate = false;\n this.checked = !this.checked;\n this.internals.setFormValue(this.value);\n this.onchange.emit({ value: this.value, checked: this.checked, indeterminate: this.indeterminate });\n };\n\n getClasses() {\n const classes = {};\n classes['container'] = true;\n classes['checked'] = this.checked;\n classes['disabled'] = this.disabled;\n classes[this.background] = true;\n classes['indeterminate'] = this.indeterminate;\n classes['position'] = this.position === 'right';\n classes[this.status] = true;\n\n return classes;\n }\n\n /**\n * Assigns color based on status and background theme.\n * @param defaultColor Default color.\n */\n @Watch('background')\n @Watch('iconColor')\n assignColor(type: 'icon' | 'label' | 'message') {\n if (this.disabled) return this.isDarkBackground() ? 'neutral-dark' : 'neutral-dark';\n\n const statusColors = {\n success: {\n icon: 'success-dark',\n label: this.isDarkBackground() ? 'success-lighter' : 'success-darker',\n message: this.isDarkBackground() ? 'success-base' : 'success-dark',\n },\n error: {\n icon: 'error-dark',\n label: this.isDarkBackground() ? 'error-lighter' : 'neutral-darker',\n message: this.isDarkBackground() ? 'error-base' : 'error-dark',\n },\n default: {\n icon: this.isDarkIconColor() ? 'neutral-black' : 'neutral-purewhite',\n label: this.isDarkBackground() ? 'neutral-white' : 'neutral-black',\n message: this.isDarkBackground() ? 'primary-lighter' : 'neutral-dark',\n },\n };\n\n return statusColors[this.status][type];\n }\n\n /**\n * Retrieves icon element based on checkbox state.\n */\n getIcon() {\n const iconName = this.indeterminate ? 'minus' : 'check';\n const iconColor = this.assignColor('icon');\n const iconSize = this.size === 'large' ? 20 : 'micro';\n\n return <cura-icon class=\"icon\" name={iconName} size={iconSize} color={iconColor}></cura-icon>;\n }\n\n render() {\n return (\n <Host role=\"checkbox\" aria-checked={this.checked} aria-disabled={this.disabled} aria-required={this.required} aria-invalid={this.status === 'error'}>\n <div class={this.getClasses()} style={this.styles} onClick={this.handleClick}>\n <div class=\"info\">\n <div class=\"label-wrapper\">\n <cura-label\n textOverflow={this.overflowLabel}\n class={`label${this.overflowLabel === 'single' ? ' textoverflow-single' : ''}`}\n weight=\"bold\"\n size={this.size === 'large' ? 'medium' : 'xsmall'}\n color={this.assignColor('label')}\n >\n {this.label}\n </cura-label>\n {this.required && (\n <cura-paragraph lineHeight=\"0%\" marginBlock=\"0\" color=\"error-base\">\n *{' '}\n </cura-paragraph>\n )}\n </div>\n <cura-label textOverflow={this.overflowHelper} color={this.assignColor('message')} size=\"xsmall\" class=\"message\">\n <slot></slot>\n </cura-label>\n </div>\n <div class={'checkbox'} tabIndex={this.ontabindex}>\n <input\n type=\"checkbox\"\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n required={this.required}\n checked={this.checked}\n indeterminate={this.indeterminate}\n />\n {this.getIcon()}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-display.entry.esm.js","sources":["src/components/text/cura-display/cura-display.scss?tag=cura-display&encapsulation=shadow","src/components/text/cura-display/cura-display.tsx"],"sourcesContent":["@import '../../../scss/mixins/responsive.scss';\n\n:host {\n display: block;\n font-size: var(--font-size-base);\n\n h1, h2, h3, h4, h5, h6 {\n font-family: var(--font-family);\n font-size: 3em;\n font-weight: var(--font-weight-bold);\n color: var(--color-body);\n line-height: var(--line-height);\n margin-block: var(--margin-block);\n letter-spacing: 0px;\n\n &.small {\n font-size: 2.2857142857142856em;\n letter-spacing: -1.68px;\n }\n\n ::slotted(b), ::slotted(strong) {\n font-weight: var(--font-weight-bold);\n }\n\n ::slotted(a) {\n font-weight: var(--font-weight-bold);\n color: var(--color-link);\n text-underline-offset: 10%;\n cursor: pointer;\n }\n\n ::slotted(u) {\n text-underline-offset: 10%;\n }\n\n ::slotted(i), ::slotted(em) {\n font-style: italic;\n font-weight: var(--font-weight-medium);\n }\n\n ::slotted(abbr) {\n color: var(--color-link);\n text-decoration: underline dashed 1px var(--color-link);\n text-underline-offset: 10%;\n cursor: default;\n }\n }\n\n @include medium-large() {\n h1, h2, h3, h4, h5, h6 {\n font-size: 3.429em;\n\n &.small {\n font-size: 2.857142857142857em;\n letter-spacing: -1.92px;\n }\n }\n }\n\n @include xlarge-only() {\n h1, h2, h3, h4, h5, h6 {\n font-size: 4.286em;\n line-height: calc(var(--line-height) + 5%);\n\n &.small {\n font-size: 3.5714285714285716em;\n letter-spacing: -1.2px;\n }\n }\n }\n\n}\n","import { Component, Host, h, Element, Prop, State, Watch } from '@stencil/core';\n\n@Component({\n tag: 'cura-display',\n styleUrl: 'cura-display.scss',\n shadow: true,\n})\nexport class CuraDisplay {\n\n /**\n * Heading level for semantics. Will render the related HTML tag <h1>, <h2>, ...\n * Values: 1(default) to 6.\n */\n @Prop({reflect: true}) level: 1 | 2 | 3 | 4 | 5 | 6 = 1;\n\n /**\n * Display size.\n * Values: 'large' (default) | 'small'.\n */\n @Prop({reflect: true}) size: 'large' | 'small' = 'large';\n\n /**\n * Apply design system color to interactive elements like <a> and <abbr> inside the text.\n * Values: Color from design system scheme. Default to 'accent-dark'.\n */\n @Prop() spotColor = 'accent-dark';\n\n /**\n * Text color.\n * Values: Color from design system scheme. Default to the font color from the theme.\n */\n @Prop() color: string;\n @Watch('color')\n @Watch('spotColor')\n handleChangeColor() {\n this.setColors();\n }\n\n /**\n * CSS margin-block property values.\n * Default to 1.25em\n */\n @Prop({reflect: true}) marginBlock = '1.25em';\n\n /**\n * CSS line-height property values.\n * Default to 140%\n */\n @Prop({reflect: true}) lineHeight = '120%';\n\n /**\n * Host element <cura-display>\n */\n @Element() host: HTMLElement;\n\n /**\n * Internal Props\n */\n weights: any;\n fontSizeBase: string;\n theme = window.CuraAPI.theme;\n @State() styles = {};\n\n connectedCallback() {\n this.setFontProperties();\n this.setColors();\n }\n\n setFontProperties() {\n this.weights = this.theme.fonts.getWeights();\n this.fontSizeBase = this.theme.fonts.getSize();\n this.styles = {\n '--font-family': window.CuraAPI.theme.fonts.getFamily('display'),\n '--font-size': window.CuraAPI.theme.fonts.getSize(),\n '--font-weight-bold': this.weights.bold,\n '--font-weight-medium': this.weights.medium\n };\n }\n\n hostCSSProperties() {\n return {\n '--margin-block': this.marginBlock,\n '--font-size-base': this.fontSizeBase,\n '--line-height': this.lineHeight\n };\n }\n\n setColors() {\n const fontColor = this.color\n ? this.theme.colors.getColor(this.color)\n : this.theme.fonts.getColor();\n this.styles = {\n ...this.styles,\n '--color-body': fontColor || this.theme.colors.getColor('neutral-darker'),\n '--color-link': this.theme.colors.getColor(`${this.spotColor}`)\n };\n }\n\n getClasses() {\n const classes = {};\n classes[`${this.size?.toLowerCase()}`] = true;\n return classes;\n }\n\n getHeadingTag() {\n const classes = this.getClasses();\n const tags = {\n '1': <h1 style={this.styles} class={classes}><slot></slot></h1>,\n '2': <h2 style={this.styles} class={classes}><slot></slot></h2>,\n '3': <h3 style={this.styles} class={classes}><slot></slot></h3>,\n '4': <h4 style={this.styles} class={classes}><slot></slot></h4>,\n '5': <h5 style={this.styles} class={classes}><slot></slot></h5>,\n '6': <h6 style={this.styles} class={classes}><slot></slot></h6>,\n 'default': <h1 style={this.styles} class={classes}><slot></slot></h1>\n };\n return tags[`${this.level}`] || tags['default'];\n }\n\n render() {\n return (\n <Host style={this.hostCSSProperties()} role=\"heading\" aria-level={this.level}>\n { this.getHeadingTag() }\n </Host>\n );\n }\n\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-dropdown-search-not-found.entry.esm.js","sources":["src/components/cura-dropdown-search/cura-dropdown-search-not-found/cura-dropdown-search-not-found.scss?tag=cura-dropdown-search-not-found&encapsulation=shadow","src/components/cura-dropdown-search/cura-dropdown-search-not-found/cura-dropdown-search-not-found.tsx"],"sourcesContent":["@import '../../../scss/mixins/spacing.scss';\n@import '../../../scss/mixins/dropdown-search-options.scss';\n\n:host {\n @include host-component();\n\n .component-container {\n @include component-container();\n border-bottom: none;\n cursor: default;\n\n cura-heading {\n --margin-block: 0 !important;\n flex: 1;\n }\n }\n}","import { Component, Host, h, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'cura-dropdown-search-not-found',\n styleUrl: 'cura-dropdown-search-not-found.scss',\n shadow: true,\n})\nexport class CuraDropdownSearchNotFound {\n\n @Event() actionclick: EventEmitter<any>;\n\n handleClick = (ev: Event) => {\n this.actionclick.emit();\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n render() {\n return (\n <Host>\n <div class=\"component-container\" onClick={ this.handleClick }>\n <cura-heading size=\"xsmall\" weight=\"bold\" color=\"error-dark\">\n <slot></slot>\n </cura-heading>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;;AAAA,MAAM,6BAA6B,GAAG,2cAA2c;;MCOpe,0BAA0B,GAAA,MAAA;AALvC,IAAA,WAAA,CAAA,OAAA,EAAA;;;AASE,QAAA,IAAA,CAAA,WAAW,GAAG,CAAC,EAAS,KAAI;AAC1B,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;YACvB,EAAE,CAAC,cAAc,EAAE;YACnB,EAAE,CAAC,eAAe,EAAE;AACtB,SAAC;AAaF;IAXC,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,qBAAqB,EAAC,OAAO,EAAG,IAAI,CAAC,WAAW,EAAA,EACzD,CAAc,CAAA,cAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,YAAY,EAAA,EAC1D,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACA,CACX,CACD;;;;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-icons-view.entry.esm.js","sources":["src/assets/icons/iconset-default-list.ts","src/components/cura-icons-view/cura-icons-view.scss?tag=cura-icons-view&encapsulation=shadow","src/components/cura-icons-view/cura-icons-view.tsx"],"sourcesContent":["export default [\"360\",\"accessibility\",\"accessibility2\",\"accessibility3\",\"accessibility4\",\"addUser\",\"airdrop\",\"alertCircle\",\"alertTriangle\",\"arrowDown\",\"arrowDownCircle\",\"arrowLeft\",\"arrowLeftCircle\",\"arrowRight\",\"arrowRightCircle\",\"arrowUp\",\"arrowUpCircle\",\"attach\",\"avatarF\",\"avatarM\",\"bike\",\"biometry\",\"bloodGroup\",\"calendar\",\"cam\",\"camOff\",\"cart\",\"central\",\"chatCircle\",\"check\",\"checkBadge\",\"checkCircle\",\"checkDouble\",\"clock\",\"close\",\"closeCircle\",\"coffee\",\"collapse\",\"config\",\"contacts\",\"currency\",\"delete\",\"desktop\",\"doc\",\"down\",\"download\",\"drug\",\"duplicate\",\"edit\",\"elevator\",\"exam\",\"examDoc\",\"expand\",\"facebook\",\"fileBmp\",\"fileJpg\",\"filePdf\",\"filePng\",\"fileUpload\",\"fileXls\",\"filter\",\"fullscreen\",\"gallery\",\"geotag\",\"geotagUnity\",\"geotagUnityGroup\",\"google\",\"graph\",\"healthPlan\",\"heart\",\"height\",\"height2\",\"home\",\"horizontalList\",\"id\",\"image\",\"imageUp\",\"infoCircle\",\"instagram\",\"key\",\"lamp\",\"language\",\"language2\",\"languageEN\",\"languagePT\",\"lattes\",\"left\",\"like\",\"link\",\"linkExternal\",\"linkedin\",\"list\",\"login\",\"logout\",\"mail\",\"maintenance\",\"medDoc\",\"medEspec\",\"medImg\",\"medUser\",\"medical\",\"menuHamburguer\",\"menuKebab\",\"menuMeatballs\",\"mic\",\"micOff\",\"minus\",\"minusCircle\",\"minusSquare\",\"mobile\",\"news\",\"notification\",\"npsDeslike\",\"npsHate\",\"npsLike\",\"npsLove\",\"npsNeutral\",\"order\",\"parking\",\"partner\",\"phone\",\"play\",\"plus\",\"plusCircle\",\"plusSquare\",\"print\",\"profile\",\"profileCircle\",\"questionCircle\",\"questionSquare\",\"range\",\"reload\",\"ribbon\",\"right\",\"schedule\",\"scheduleCancel\",\"scheduleCheck\",\"scheduleHistorico\",\"search\",\"secure\",\"share\",\"siren\",\"sound\",\"soundOff\",\"store\",\"subItem\",\"swap\",\"target\",\"team\",\"telegram\",\"twitter\",\"unLink\",\"unSecure\",\"unity\",\"unlike\",\"up\",\"upload\",\"vaccine\",\"verticalList\",\"viewFalse\",\"viewTrue\",\"weight\",\"whatsapp\",\"wifi\",\"wifiOff\",\"youtube\",\"zoomIn\",\"zoomOut\"];",":host {\n display: block;\n padding: 24px;\n font-family: 'Roboto', Arial, Helvetica, sans-serif;\n}\n\n.iconDetail {\n display: block;\n}\n\n.iconSizes {\n display: flex;\n align-items: center;\n\n\n .size {\n display: flex;\n flex-direction: column;\n text-align: center;\n align-items: center;\n margin-right: 9px;\n padding: 8px;\n\n &:last-child { margin-right: 0; }\n span {\n font-size: 10px;\n margin: 8px 0;\n }\n }\n\n &.invert {\n margin-top: 12px;\n\n .size {\n background-color: #2d2d2d;\n color: #F6F6F6;\n border-radius: 3px;\n }\n }\n}\n\n.icons {\n margin-top: 28px;\n display: flex;\n flex-wrap: wrap;\n position: relative;\n\n .icon {\n position: relative;\n padding: 4px;\n cursor: pointer;\n opacity: .6;\n transition: opacity .2s linear;\n width: 105px;\n display: flex;\n flex-direction: column;\n text-align: center;\n align-items: center;\n margin-bottom: 16px;\n box-sizing: border-box;\n cura-label {\n margin-top: 8px;\n }\n cura-paragraph {\n margin-top: 4px;\n }\n /* &.selected {\n transform: scale(1.2);\n } */\n }\n}\n\n","import { Component, Host, h, State } from '@stencil/core';\nimport iconsetdefaulticons from '../../assets/icons/iconset-default-list';\nimport { iconSizes } from '../cura-icon/cura-icon.definitions';\n\n@Component({\n tag: 'cura-icons-view',\n styleUrl: 'cura-icons-view.scss',\n shadow: true,\n})\nexport class CuraIconsView {\n\n sizes = Object.keys(iconSizes).filter(key => key !== 'default');\n colors = ['primary', 'secondary', 'accent', 'info', 'warning', 'error', 'success', 'neutral'];\n @State() selected = iconsetdefaulticons[0];\n\n connectedCallback() {\n this.sizes.unshift(this.sizes.pop());\n }\n\n setSelected = (icon) => {\n this.selected = icon;\n }\n\n render() {\n return (\n <Host>\n <div class=\"iconDetail\">\n <cura-heading size=\"small\" margin-block=\"0 24px\">Icon: <b>{ this.selected }</b></cura-heading>\n <div class=\"iconSizes\">\n { this.sizes.map( size =>\n <div class=\"size\">\n <cura-icon name={this.selected} size={size}></cura-icon>\n <span>{ size }</span>\n </div>\n )}\n </div>\n <div class=\"iconSizes invert\">\n { this.sizes.map( size =>\n <div class=\"size\">\n <cura-icon name={this.selected} size={size} color=\"neutral-white\"></cura-icon>\n <span>{ size }</span>\n </div>\n )}\n </div>\n </div>\n <div class=\"icons\">\n { iconsetdefaulticons.map(icon =>\n <div class={{icon: true, selected: icon === this.selected }} onClick={() => this.setSelected(icon)}>\n <cura-icon\n name={icon}\n size=\"32\"\n color={icon === this.selected ? 'accent-dark' : 'neutral-dark'}></cura-icon>\n <cura-label\n size=\"xsmall\"\n weight={icon === this.selected ? 'bold' : 'regular'}\n color={icon === this.selected ? 'accent-dark' : 'neutral-dark'}>{icon}</cura-label>\n </div>\n )}\n </div>\n </Host>\n );\n }\n\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-input-date.entry.esm.js","sources":["src/components/forms/cura-input-date/cura-input-date.scss?tag=cura-input-date&encapsulation=shadow","src/components/forms/cura-input-date/cura-input-date.tsx"],"sourcesContent":["@import '../../../../src/scss/mixins/shadows.scss';\n@import '../../../../src/scss/mixins/spacing.scss';\n\n:host {\n display: block;\n}\n\n.container{\n display: flex;\n flex-direction: column;\n position: relative;\n\n .calendar{\n padding: #{$spacing-none} #{$spacing-xxxs};\n margin-top: -8px;\n border-radius: 0px 0px 4px 4px;\n border-top: 0px;\n border-right: 2px solid #D4D4D4;\n border-bottom:2px solid #D4D4D4;\n border-left: 2px solid #D4D4D4;\n @include shadow-level3(--neutral-black-shadow);\n position: absolute;\n top: 100%;\n z-index: 10;\n display: none;\n opacity: 0;\n pointer-events: none;\n }\n\n .calendar.visible {\n box-sizing: border-box;\n display: block;\n opacity: 1;\n pointer-events: all;\n width: 100%;\n background-color: #fff;\n }\n}\n","import { Component, Element, Host, Listen, Prop, State, Watch, h, Event, EventEmitter } from '@stencil/core';\nimport { CuraInputTextCustomEvent } from '../../../components';\nimport { isAfter, isBefore } from 'date-fns';\n\n@Component({\n tag: 'cura-input-date',\n styleUrl: 'cura-input-date.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class CuraInputDate {\n @Element() el: HTMLElement;\n\n /**\n * Label text for the input date\n */\n @Prop({ reflect: true }) label?: string = '';\n\n /**\n * Indicates input status (default: default)\n */\n @Prop({ reflect: true, mutable: true }) status: 'error' | 'success' | 'default' = 'default';\n\n /**\n * Size of the input mode default: 'small', 'medium', or 'large' (default: 'medium')\n */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * Name text for the input date\n */\n @Prop({ reflect: true }) name?: string = '';\n\n /**\n * Helper text displayed below the input\n */\n @Prop({ reflect: true }) helperText?: string;\n\n /**\n * Enables the date range selection mode, allowing users to select a period of dates\n */\n @Prop({ reflect: true }) enableRangeDates: boolean;\n\n /**\n * Controls whether future dates (dates before the current date) should be disabled\n */\n @Prop({ reflect: true }) disableFutureDates: boolean;\n\n /**\n * Controls whether past dates (dates before the current date) should be disabled\n */\n @Prop({ reflect: true }) disablePassDates: boolean;\n\n /**\n * Whether to display a cura icon (default: null)\n */\n @Prop({ reflect: true }) iconName?: string = '';\n\n /**\n * Placeholder text for the input\n */\n @Prop({ reflect: true }) placeholder?: string | null = null;\n /**\n * Calendar type (default: 'dropdown')\n */\n @Prop({ reflect: true }) calendarType: 'dropdown' | 'static' = 'dropdown';\n\n /**\n * Emitted when the value of the input changes\n * @type {EventEmitter<string>}\n */\n @Event() dateChange: EventEmitter<string>;\n\n /**\n * Emitted when the value of the status changes\n * @type {EventEmitter<string>}\n */\n @Event() statusInputChange: EventEmitter<string>;\n\n @State() styles = {};\n\n @State() isCalendarVisible: boolean = false;\n\n @State() dates: Date[] = [];\n\n @State() value?: string = '';\n\n @State() dateSettings = {\n placeholder: null,\n mask: 'date',\n mode: 'single',\n };\n\n connectedCallback() {\n const { fonts, colors, spacing } = window.CuraAPI.theme;\n const weights = fonts.getWeights();\n\n this.styles = {\n '--base-spacing': spacing.getSpacing(),\n '--neutral-purewhite': colors.getColor('neutral-purewhite'),\n '--neutral-lighter': colors.getColor('neutral-lighter'),\n '--neutral-base': colors.getColor('neutral-base'),\n '--font-size': fonts.getSize(),\n '--font-color': fonts.getColor(),\n '--font-family': fonts.getFamily(),\n '--font-weight-regular': weights.regular,\n };\n }\n\n componentWillLoad() {\n this.updateDateSettings();\n }\n\n /**\n * Callback for form association\n */\n formAssociatedCallback(form: { ariaLabel: string }) {\n form.ariaLabel = this.label;\n }\n\n @Watch('enableRangeDates')\n updateDateSettings() {\n const newSettings = this.getDateSettings(this.enableRangeDates);\n\n if (this.shouldUpdateDateSettings(newSettings)) {\n this.dateSettings = newSettings;\n }\n }\n\n getDateSettings(isRange: boolean) {\n return {\n placeholder: this.placeholder || (isRange ? 'dd/mm/aaaa - dd/mm/aaaa' : 'dd/mm/aaaa'),\n mask: isRange ? 'dateRange' : 'date',\n mode: isRange ? 'range' : 'single',\n };\n }\n\n shouldUpdateDateSettings(newSettings: any) {\n return this.dateSettings.placeholder !== newSettings.placeholder || this.dateSettings.mask !== newSettings.mask || this.dateSettings.mode !== newSettings.mode;\n }\n\n @Listen('click', { target: 'window' })\n handleClick(ev: { target: Node }) {\n if (this.el.contains(ev.target)) {\n return;\n }\n this.hideCalendar();\n }\n\n hideCalendar() {\n this.isCalendarVisible = false;\n }\n\n showCalendar() {\n this.isCalendarVisible = true;\n }\n\n handleInputDates(event: any) {\n const inputValue = event.target.value;\n\n const dateRangeRegex = /^(\\d{2}\\/\\d{2}\\/\\d{4})\\s*-\\s*(\\d{2}\\/\\d{2}\\/\\d{4})$/;\n const simpleDateRegex = /^(\\d{2}\\/\\d{2}\\/\\d{4})$/;\n\n if (dateRangeRegex.test(inputValue)) {\n const matches = inputValue.match(dateRangeRegex);\n const startDate = this.parseStringToDate(matches[1]);\n const endDate = this.parseStringToDate(matches[2]);\n if (this.isDateValid(startDate) && this.isDateValid(endDate)) {\n this.status = 'default';\n this.dates = [startDate, endDate];\n this.value = `${this.parseDateToString(startDate)} - ${this.parseDateToString(endDate)}`;\n this.dateChange.emit(this.value);\n } else {\n this.resetDates();\n }\n } else if (simpleDateRegex.test(inputValue)) {\n const matches = inputValue.match(simpleDateRegex);\n const singleDate = this.parseStringToDate(matches[1]);\n if (this.isDateValid(singleDate)) {\n this.status = 'default';\n this.dates = [singleDate];\n this.value = this.parseDateToString(singleDate);\n this.dateChange.emit(this.value);\n } else {\n this.resetDates();\n }\n } else {\n this.dates = [];\n }\n }\n\n handleChangeDates(event: CuraInputTextCustomEvent<string | number>) {\n if (event.detail === '') {\n this.dates = [];\n this.status = 'default';\n this.value = '';\n this.dateChange.emit(this.value);\n this.statusInputChange.emit(this.status);\n }\n }\n\n isDateValid(date: Date) {\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n\n if (this.disablePassDates) return !isBefore(date, today);\n if (this.disableFutureDates) return !isAfter(date, today);\n return true;\n }\n\n parseStringToDate(dateString: string): Date {\n const [day, month, year] = dateString.split('/').map(Number);\n return new Date(year, month - 1, day);\n }\n\n parseDateToString(date: Date): string {\n const day = String(date.getDate()).padStart(2, '0');\n const month = String(date.getMonth() + 1).padStart(2, '0');\n const year = date.getFullYear();\n\n return `${day}/${month}/${year}`;\n }\n\n resetDates() {\n this.status = 'error';\n this.dates = [];\n this.statusInputChange.emit(this.status);\n }\n\n renderCalendarOrHelperText() {\n if (this.isCalendarVisible) {\n return (\n <div class=\"calendar visible\">\n <cura-calendar\n customDates={this.dates}\n mode={this.dateSettings.mode as 'single' | 'range'}\n type={this.calendarType || 'dropdown'}\n width=\"100%\"\n maxWidth=\"400px\"\n embedded={false}\n floating={false}\n disableFutureDates={this.disableFutureDates}\n disablePassDates={this.disablePassDates}\n onOnchangeday={e => {\n const days = e.detail.days;\n if (days.length === 1) {\n this.value = this.parseDateToString(days[0]);\n } else if (days.length > 0) {\n this.value = `${this.parseDateToString(days[0])} - ${this.parseDateToString(days[days.length - 1])}`;\n } else {\n this.value = '';\n }\n this.dateChange.emit(this.value);\n }}\n ></cura-calendar>\n </div>\n );\n } else {\n return this.helperText;\n }\n }\n\n render() {\n return (\n <Host>\n <div class=\"container\" style={this.styles}>\n <cura-input-text\n label={this.label}\n name={this.name}\n status={this.status}\n value={this.value}\n onFocus={() => this.showCalendar()}\n size={this.size}\n icon-name={this.iconName}\n placeholder={this.dateSettings.placeholder}\n mask-preset={this.dateSettings.mask}\n enable-selection-mode={true}\n onKeyUp={event => this.handleInputDates(event)}\n autocomplete=\"off\"\n onValueChange={event => this.handleChangeDates(event)}\n >\n {this.renderCalendarOrHelperText()}\n </cura-input-text>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-loader-bar.entry.esm.js","sources":["src/components/loaders/cura-loader-bar/cura-loader-bar.scss?tag=cura-loader-bar&encapsulation=shadow","src/components/loaders/cura-loader-bar/cura-loader-bar.tsx"],"sourcesContent":[":host {\n display: block;\n\n .progress-bar {\n position: absolute;\n left: 0;\n bottom: 0;\n width: 100%;\n height: 4px;\n background-color: var(--neutral-base);\n\n span {\n position: absolute;\n left: 0;\n bottom: 0;\n width: var(--bar-width);\n height: 100%;\n border-radius: 0 2px 2px 0;\n background-color: var(--color-base);\n transition: width 0.2s linear;\n }\n }\n}\n","import { Component, Element, Host, Prop, State, Watch, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-loader-bar',\n styleUrl: 'cura-loader-bar.scss',\n shadow: true,\n})\nexport class CuraLoaderBar {\n @Element() host: HTMLElement;\n\n @Prop() color = 'primary-base';\n @Prop() progress = 0;\n\n @State() styles = {};\n\n @Watch('color')\n handleChangeColor() {\n this.setColor();\n }\n\n @Watch('progress')\n handleProgress() {\n this.setProgress();\n }\n\n connectedCallback() {\n this.setColor();\n this.setProgress();\n }\n\n render() {\n return (\n <Host role=\"progressbar\"\n aria-valuenow={this.progress}\n aria-valuemin={0}\n aria-valuemax={100}>\n <div id=\"progress-bar\" class=\"progress-bar\" style={this.styles}>\n <span class=\"progress-bar-fill\"></span>\n </div>\n </Host>\n );\n }\n\n setColor() {\n this.styles = {\n ...this.styles,\n '--neutral-base': window.CuraAPI.theme.colors.getColor(`neutral-base`, 0.2),\n '--color-base': window.CuraAPI.theme.colors.getColor(this.color),\n }\n }\n\n setProgress() {\n this.styles = {\n ...this.styles,\n '--bar-width': `${this.progress}%`,\n }\n }\n}\n"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,+TAA+T;;MCO3U,aAAa,GAAA,MAAA;AAL1B,IAAA,WAAA,CAAA,OAAA,EAAA;;AAQU,QAAA,IAAK,CAAA,KAAA,GAAG,cAAc;AACtB,QAAA,IAAQ,CAAA,QAAA,GAAG,CAAC;AAEX,QAAA,IAAM,CAAA,MAAA,GAAG,EAAE;AA4CrB;IAzCC,iBAAiB,GAAA;QACf,IAAI,CAAC,QAAQ,EAAE;;IAIjB,cAAc,GAAA;QACZ,IAAI,CAAC,WAAW,EAAE;;IAGpB,iBAAiB,GAAA;QACf,IAAI,CAAC,QAAQ,EAAE;QACf,IAAI,CAAC,WAAW,EAAE;;IAGpB,MAAM,GAAA;AACJ,QAAA,QACE,CAAA,CAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,IAAI,EAAC,aAAa,EACP,eAAA,EAAA,IAAI,CAAC,QAAQ,EACb,eAAA,EAAA,CAAC,mBACD,GAAG,EAAA,EAClB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,EAAE,EAAC,cAAc,EAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAA,EAC5D,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,mBAAmB,GAAQ,CACnC,CACD;;IAIX,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACN,IAAI,CAAC,MAAM,KACd,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA,YAAA,CAAc,EAAE,GAAG,CAAC,EAC3E,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GACjE;;IAGH,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,GACN,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,MAAM,CAAA,EAAA,EACd,aAAa,EAAE,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAA,CAAA,CAAG,GACnC;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"names":["curaModalCss","CuraModalStyle0","CuraModal","this","handleCloseOnEsc","evt","key","open","modalClose","emit","handleClose","setColors","backgroundTheme","dark","window","CuraAPI","theme","colors","getColor","light","styles","Object","assign","background","setOffset","name","value","setTop","top","setBottom","bottom","setLeft","left","setRight","right","connectedCallback","spacing","getSpacing","disconnectedCallback","removeEventListener","componentDidLoad","addEventListener","render","h","Host","role","style","zindex","class","onClick","iconName","color","size","iconOnly","mobileCloseLabel"],"sources":["src/components/cura-modal/cura-modal.scss?tag=cura-modal&encapsulation=shadow","src/components/cura-modal/cura-modal.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/spacing.scss';\n@import '../../../src/scss/mixins/shadows.scss';\n@import '../../../src/scss/mixins/responsive.scss';\n@import '../../../src/scss/mixins/animations.scss';\n\n:host {\n display: block;\n}\n\n.modal {\n position: fixed;\n height: 100%;\n width: 100%;\n top: var(--top-offset);\n bottom: var(--bottom-offset);\n left: var(--left-offset);\n right: var(--right-offset);\n z-index: -1;\n margin-top: var(--offset-top);\n\n &.open {\n z-index: var(--zIndex);\n\n .backdrop,\n .wrapper {\n opacity: 1;\n visibility: visible;\n animation: fadeIn 0.3s ease-out;\n }\n }\n}\n\n.container {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.backdrop,\n.wrapper {\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.backdrop {\n background-color: var(--background-color);\n z-index: calc(var(--zIndex) - 10);\n animation: fadeIn 0.3s ease-out;\n}\n\n.wrapper {\n position: fixed;\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-light);\n border-radius: #{$spacing-xxxs};\n max-width: 600px;\n min-width: 200px;\n padding: calc(#{$spacing-tiny} / 2) #{$spacing-xxs} #{$spacing-xxs} #{$spacing-xxs};\n z-index: var(--zIndex);\n\n @include shadow-level4();\n\n transform: scale(0.95);\n transition: transform 0.3s ease-out, opacity 0.3s ease, visibility 0.3s ease;\n\n ::slotted(*) {\n max-height: 80vh;\n overflow: auto;\n padding-right: #{$spacing-xs};\n }\n}\n\n.modal.open .wrapper {\n transform: scale(1);\n opacity: 1;\n visibility: visible;\n}\n\n.close {\n justify-self: flex-end;\n padding-top: #{$spacing-xxs};\n background: none;\n border: none;\n cursor: pointer;\n\n &.mobile {\n display: none;\n }\n\n &.desktop {\n display: flex;\n padding: 0;\n margin-right: -8px;\n }\n}\n\n@include mobile-only() {\n .wrapper {\n position: fixed;\n bottom: #{$spacing-none};\n width: 80%;\n padding-top: #{$spacing-xxs};\n padding-bottom: #{$spacing-none};\n border-radius: #{$spacing-xxxs} #{$spacing-xxxs} #{$spacing-none} #{$spacing-none};\n border-bottom: none;\n }\n\n .close {\n align-items: center;\n border-top: 1px dashed var(--neutral-light);\n margin-top: #{$spacing-xxs};\n padding: #{$spacing-mini} #{$spacing-none};\n justify-content: center;\n width: 100%;\n\n &.mobile {\n display: flex;\n gap: #{$spacing-mini};\n }\n\n &.desktop {\n display: none;\n }\n }\n}\n\n@include fadeIn();\n@include fadeOut();\n","import { Component, Event, EventEmitter, Host, Prop, State, Watch, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-modal',\n styleUrl: 'cura-modal.scss',\n shadow: true,\n})\nexport class CuraModal {\n /**\n * Property open to control modal visibility.\n * Default: false\n */\n @Prop({ mutable: true, reflect: true }) open?: boolean = false;\n /**\n * Property background to control modal backdrop color.\n * Default: light\n */\n @Prop() background?: 'dark' | 'light' = 'light';\n /**\n * Property top to control modal top position.\n * Default: 0px\n */\n @Prop() top?: number = 0;\n /**\n * Property bottom to control modal bottom position.\n * Default: 0px\n */\n @Prop() bottom?: number = 0;\n /**\n * Property left to control modal left position.\n * Default: 0px\n */\n @Prop() left?: number = 0;\n /**\n * Property right to control modal right position.\n * Default: 0px\n */\n @Prop() right?: number = 0;\n /**\n * Defines the label for the close button when the modal is viewed on mobile.\n * Default: Fechar\n */\n @Prop({ reflect: true }) mobileCloseLabel: string = 'Fechar';\n /**\n * Property zindex to control the z-index value of the component.\n * Default: 100\n */\n @Prop({ reflect: true }) zindex: string = '100';\n /**\n * Event close to handle modal close.\n */\n @Event({ eventName: 'modalClose' }) modalClose: EventEmitter<void>;\n\n @State() styles = {};\n\n @Watch('background')\n setColors() {\n const backgroundTheme = {\n dark: window.CuraAPI.theme.colors.getColor('neutral-black', 0.4),\n light: window.CuraAPI.theme.colors.getColor('primary-darker', 0.8),\n };\n\n this.styles = {\n ...this.styles,\n '--background-color': backgroundTheme[this.background],\n };\n }\n\n setOffset(name: string, value: number) {\n this.styles = {\n ...this.styles,\n [`--${name}-offset`]: `${value}px`,\n };\n }\n\n @Watch('top')\n setTop() {\n this.setOffset('top', this.top);\n }\n\n @Watch('bottom')\n setBottom() {\n this.setOffset('bottom', this.bottom);\n }\n\n @Watch('left')\n setLeft() {\n this.setOffset('left', this.left);\n }\n\n @Watch('right')\n setRight() {\n this.setOffset('right', this.right);\n }\n\n handleCloseOnEsc = (evt: KeyboardEvent) => {\n if (evt.key !== 'Escape' || !this.open) {\n return;\n }\n\n this.open = false;\n this.modalClose.emit();\n };\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--neutral-light': window.CuraAPI.theme.colors.getColor('neutral-light'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n this.setColors();\n this.setTop();\n this.setBottom();\n this.setLeft();\n this.setRight();\n }\n\n private handleClose = () => {\n this.modalClose.emit();\n this.open = false;\n };\n\n disconnectedCallback() {\n window.removeEventListener('keydown', this.handleCloseOnEsc);\n }\n\n componentDidLoad() {\n window.addEventListener('keydown', this.handleCloseOnEsc);\n }\n\n render() {\n return (\n <Host role=\"dialog\" aria-modal=\"true\" style={{ '--zIndex': this.zindex }}>\n <div class={this.open ? 'modal container open' : 'modal container'} style={this.styles}>\n <div class={this.open ? 'modal backdrop open' : 'modal backdrop'} onClick={this.handleClose}></div>\n <div class=\"wrapper\">\n {/* Desktop button */}\n <div class=\"close desktop\">\n <cura-button-transparent iconName=\"close\" color=\"error\" size=\"small\" onClick={this.handleClose} iconOnly></cura-button-transparent>\n </div>\n <slot></slot>\n {/* Mobile button */}\n <div class=\"close mobile\" onClick={this.handleClose}>\n <cura-button-transparent color=\"error\" iconName=\"close\" size=\"small\">\n {this.mobileCloseLabel}\n </cura-button-transparent>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAe,ypEACrB,MAAAC,EAAeD,E,MCMFE,EAAS,M,gEAwFpBC,KAAAC,iBAAoBC,IAClB,GAAIA,EAAIC,MAAQ,WAAaH,KAAKI,KAAM,CACtC,M,CAGFJ,KAAKI,KAAO,MACZJ,KAAKK,WAAWC,MAAM,EAiBhBN,KAAAO,YAAc,KACpBP,KAAKK,WAAWC,OAChBN,KAAKI,KAAO,KAAK,E,UA5GsC,M,gBAKjB,Q,SAKjB,E,YAKG,E,UAKF,E,WAKC,E,sBAK2B,S,YAKV,M,YAMxB,E,CAGlB,SAAAI,GACE,MAAMC,EAAkB,CACtBC,KAAMC,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,gBAAiB,IAC5DC,MAAOL,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,iBAAkB,KAGhEf,KAAKiB,OAAMC,OAAAC,OAAAD,OAAAC,OAAA,GACNnB,KAAKiB,QAAM,CACd,qBAAsBR,EAAgBT,KAAKoB,a,CAI/C,SAAAC,CAAUC,EAAcC,GACtBvB,KAAKiB,OAAMC,OAAAC,OAAAD,OAAAC,OAAA,GACNnB,KAAKiB,QAAM,CACd,CAAC,KAAKK,YAAgB,GAAGC,O,CAK7B,MAAAC,GACExB,KAAKqB,UAAU,MAAOrB,KAAKyB,I,CAI7B,SAAAC,GACE1B,KAAKqB,UAAU,SAAUrB,KAAK2B,O,CAIhC,OAAAC,GACE5B,KAAKqB,UAAU,OAAQrB,KAAK6B,K,CAI9B,QAAAC,GACE9B,KAAKqB,UAAU,QAASrB,KAAK+B,M,CAY/B,iBAAAC,GACEhC,KAAKiB,OAAMC,OAAAC,OAAAD,OAAAC,OAAA,GACNnB,KAAKiB,QAAM,CACd,sBAAuBN,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,qBAC5D,kBAAmBJ,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,iBACxD,iBAAkBJ,OAAOC,QAAQC,MAAMoB,QAAQC,eAEjDlC,KAAKQ,YACLR,KAAKwB,SACLxB,KAAK0B,YACL1B,KAAK4B,UACL5B,KAAK8B,U,CAQP,oBAAAK,GACExB,OAAOyB,oBAAoB,UAAWpC,KAAKC,iB,CAG7C,gBAAAoC,GACE1B,OAAO2B,iBAAiB,UAAWtC,KAAKC,iB,CAG1C,MAAAsC,GACE,OACEC,EAACC,EAAI,CAAAtC,IAAA,2CAACuC,KAAK,SAAQ,aAAY,OAAOC,MAAO,CAAE,WAAY3C,KAAK4C,SAC9DJ,EAAA,OAAArC,IAAA,2CAAK0C,MAAO7C,KAAKI,KAAO,uBAAyB,kBAAmBuC,MAAO3C,KAAKiB,QAC9EuB,EAAA,OAAArC,IAAA,2CAAK0C,MAAO7C,KAAKI,KAAO,sBAAwB,iBAAkB0C,QAAS9C,KAAKO,cAChFiC,EAAA,OAAArC,IAAA,2CAAK0C,MAAM,WAETL,EAAA,OAAArC,IAAA,2CAAK0C,MAAM,iBACTL,EAAA,2BAAArC,IAAA,2CAAyB4C,SAAS,QAAQC,MAAM,QAAQC,KAAK,QAAQH,QAAS9C,KAAKO,YAAa2C,SAAQ,QAE1GV,EAAA,QAAArC,IAAA,6CAEAqC,EAAA,OAAArC,IAAA,2CAAK0C,MAAM,eAAeC,QAAS9C,KAAKO,aACtCiC,EAAA,2BAAArC,IAAA,2CAAyB6C,MAAM,QAAQD,SAAS,QAAQE,KAAK,SAC1DjD,KAAKmD,qB","ignoreList":[]}
1
+ {"version":3,"file":"cura-modal.entry.esm.js","sources":["src/components/cura-modal/cura-modal.scss?tag=cura-modal&encapsulation=shadow","src/components/cura-modal/cura-modal.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/spacing.scss';\n@import '../../../src/scss/mixins/shadows.scss';\n@import '../../../src/scss/mixins/responsive.scss';\n@import '../../../src/scss/mixins/animations.scss';\n\n:host {\n display: block;\n}\n\n.modal {\n position: fixed;\n height: 100%;\n width: 100%;\n top: var(--top-offset);\n bottom: var(--bottom-offset);\n left: var(--left-offset);\n right: var(--right-offset);\n z-index: -1;\n margin-top: var(--offset-top);\n\n &.open {\n z-index: var(--zIndex);\n\n .backdrop,\n .wrapper {\n opacity: 1;\n visibility: visible;\n animation: fadeIn 0.3s ease-out;\n }\n }\n}\n\n.container {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.backdrop,\n.wrapper {\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.backdrop {\n background-color: var(--background-color);\n z-index: calc(var(--zIndex) - 10);\n animation: fadeIn 0.3s ease-out;\n}\n\n.wrapper {\n position: fixed;\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-light);\n border-radius: #{$spacing-xxxs};\n max-width: 600px;\n min-width: 200px;\n padding: calc(#{$spacing-tiny} / 2) #{$spacing-xxs} #{$spacing-xxs} #{$spacing-xxs};\n z-index: var(--zIndex);\n\n @include shadow-level4();\n\n transform: scale(0.95);\n transition: transform 0.3s ease-out, opacity 0.3s ease, visibility 0.3s ease;\n\n ::slotted(*) {\n max-height: 80vh;\n overflow: auto;\n padding-right: #{$spacing-xs};\n }\n}\n\n.modal.open .wrapper {\n transform: scale(1);\n opacity: 1;\n visibility: visible;\n}\n\n.close {\n justify-self: flex-end;\n padding-top: #{$spacing-xxs};\n background: none;\n border: none;\n cursor: pointer;\n\n &.mobile {\n display: none;\n }\n\n &.desktop {\n display: flex;\n padding: 0;\n margin-right: -8px;\n }\n}\n\n@include mobile-only() {\n .wrapper {\n position: fixed;\n bottom: #{$spacing-none};\n width: 80%;\n padding-top: #{$spacing-xxs};\n padding-bottom: #{$spacing-none};\n border-radius: #{$spacing-xxxs} #{$spacing-xxxs} #{$spacing-none} #{$spacing-none};\n border-bottom: none;\n }\n\n .close {\n align-items: center;\n border-top: 1px dashed var(--neutral-light);\n margin-top: #{$spacing-xxs};\n padding: #{$spacing-mini} #{$spacing-none};\n justify-content: center;\n width: 100%;\n\n &.mobile {\n display: flex;\n gap: #{$spacing-mini};\n }\n\n &.desktop {\n display: none;\n }\n }\n}\n\n@include fadeIn();\n@include fadeOut();\n","import { Component, Event, EventEmitter, Host, Prop, State, Watch, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-modal',\n styleUrl: 'cura-modal.scss',\n shadow: true,\n})\nexport class CuraModal {\n /**\n * Property open to control modal visibility.\n * Default: false\n */\n @Prop({ mutable: true, reflect: true }) open?: boolean = false;\n /**\n * Property background to control modal backdrop color.\n * Default: light\n */\n @Prop() background?: 'dark' | 'light' = 'light';\n /**\n * Property top to control modal top position.\n * Default: 0px\n */\n @Prop() top?: number = 0;\n /**\n * Property bottom to control modal bottom position.\n * Default: 0px\n */\n @Prop() bottom?: number = 0;\n /**\n * Property left to control modal left position.\n * Default: 0px\n */\n @Prop() left?: number = 0;\n /**\n * Property right to control modal right position.\n * Default: 0px\n */\n @Prop() right?: number = 0;\n /**\n * Defines the label for the close button when the modal is viewed on mobile.\n * Default: Fechar\n */\n @Prop({ reflect: true }) mobileCloseLabel: string = 'Fechar';\n /**\n * Property zindex to control the z-index value of the component.\n * Default: 100\n */\n @Prop({ reflect: true }) zindex: string = '100';\n /**\n * Event close to handle modal close.\n */\n @Event({ eventName: 'modalClose' }) modalClose: EventEmitter<void>;\n\n @State() styles = {};\n\n @Watch('background')\n setColors() {\n const backgroundTheme = {\n dark: window.CuraAPI.theme.colors.getColor('neutral-black', 0.4),\n light: window.CuraAPI.theme.colors.getColor('primary-darker', 0.8),\n };\n\n this.styles = {\n ...this.styles,\n '--background-color': backgroundTheme[this.background],\n };\n }\n\n setOffset(name: string, value: number) {\n this.styles = {\n ...this.styles,\n [`--${name}-offset`]: `${value}px`,\n };\n }\n\n @Watch('top')\n setTop() {\n this.setOffset('top', this.top);\n }\n\n @Watch('bottom')\n setBottom() {\n this.setOffset('bottom', this.bottom);\n }\n\n @Watch('left')\n setLeft() {\n this.setOffset('left', this.left);\n }\n\n @Watch('right')\n setRight() {\n this.setOffset('right', this.right);\n }\n\n handleCloseOnEsc = (evt: KeyboardEvent) => {\n if (evt.key !== 'Escape' || !this.open) {\n return;\n }\n\n this.open = false;\n this.modalClose.emit();\n };\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--neutral-light': window.CuraAPI.theme.colors.getColor('neutral-light'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n this.setColors();\n this.setTop();\n this.setBottom();\n this.setLeft();\n this.setRight();\n }\n\n private handleClose = () => {\n this.modalClose.emit();\n this.open = false;\n };\n\n disconnectedCallback() {\n window.removeEventListener('keydown', this.handleCloseOnEsc);\n }\n\n componentDidLoad() {\n window.addEventListener('keydown', this.handleCloseOnEsc);\n }\n\n render() {\n return (\n <Host role=\"dialog\" aria-modal=\"true\" style={{ '--zIndex': this.zindex }}>\n <div class={this.open ? 'modal container open' : 'modal container'} style={this.styles}>\n <div class={this.open ? 'modal backdrop open' : 'modal backdrop'} onClick={this.handleClose}></div>\n <div class=\"wrapper\">\n {/* Desktop button */}\n <div class=\"close desktop\">\n <cura-button-transparent iconName=\"close\" color=\"error\" size=\"small\" onClick={this.handleClose} iconOnly></cura-button-transparent>\n </div>\n <slot></slot>\n {/* Mobile button */}\n <div class=\"close mobile\" onClick={this.handleClose}>\n <cura-button-transparent color=\"error\" iconName=\"close\" size=\"small\">\n {this.mobileCloseLabel}\n </cura-button-transparent>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-progress-bar.cura-stepper-item.entry.esm.js","sources":["src/components/cura-stepper/cura-progress-bar/cura-progress-bar.scss?tag=cura-progress-bar&encapsulation=shadow","src/components/cura-stepper/cura-progress-bar/cura-progress-bar.tsx","src/components/cura-stepper/cura-stepper-item/cura-stepper-item.scss?tag=cura-stepper-item&encapsulation=shadow","src/components/cura-stepper/cura-stepper-item/cura-stepper-item.tsx"],"sourcesContent":[":host {\n display: block;\n box-sizing: border-box;\n}\n\n.progress-bar {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n\n & span {\n position: absolute;\n display: flex;\n }\n}","import { Component, Host, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-progress-bar',\n styleUrl: 'cura-progress-bar.scss',\n shadow: true,\n})\nexport class CuraProgressBar {\n /**\n * Defines the color of the progress bar\n */\n @Prop({ reflect: true }) progressColor: string;\n\n /**\n * Defines the percentage of progress\n */\n @Prop({ reflect: true }) progress: number;\n\n /**\n * Defines the size of the progress bar\n */\n @Prop({ reflect: true }) size: number = 40;\n\n /**\n * Defines the width of the stroke (outline) of the progress circle\n */\n @Prop({ reflect: true }) strokeWidth: number = 3.25;\n\n /**\n * Defines whether the progress bar is active\n */\n @Prop({ reflect: true }) active: boolean;\n\n render() {\n const radius = (this.size - this.strokeWidth) / 2;\n const circumference = radius * Math.PI * 2;\n const dash = (this.progress * circumference) / 100;\n\n const viewBox = `0 0 ${this.size} ${this.size}`;\n\n return (\n <Host>\n <div class=\"progress-bar\">\n <svg width={this.size} height={this.size} viewBox={viewBox}>\n <circle fill=\"none\" stroke=\"#ccc\" cx={this.size / 2} cy={this.size / 2} r={radius} stroke-width={`${this.strokeWidth}px`} />\n {this.active && (\n <circle\n fill=\"none\"\n stroke={this.progressColor}\n cx={this.size / 2}\n cy={this.size / 2}\n r={radius}\n stroke-width={`${this.strokeWidth}px`}\n transform={`rotate(-90 ${this.size / 2} ${this.size / 2})`}\n stroke-dasharray={`${dash}px ${circumference - dash}px`}\n stroke-linecap=\"round\"\n style={{ transition: 'all 0.5s' }}\n />\n )}\n </svg>\n <span>\n <slot></slot>\n </span>\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: block;\n box-sizing: border-box;\n}\n\n.item-container{\n display: flex;\n gap: 4px;\n align-items: center;\n}\n","import { Component, Element, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-stepper-item',\n styleUrl: 'cura-stepper-item.scss',\n shadow: true,\n})\nexport class CuraStepperItem {\n /**\n * Determines if the step title is displayed (default: false)\n */\n @Prop({ reflect: true }) displayHeading: boolean = false;\n\n /**\n * The title of the step (displayed if `displayHeading` is true)\n */\n @Prop({ reflect: true }) heading: string;\n\n /**\n * The label displayed inside the badge\n */\n @Prop({ reflect: true }) label: string;\n\n /**\n * The current status of the step\n * Can be:\n * - 'done' for completed steps\n * - 'stop' for failed steps\n * - 'active' for the current active step\n * - 'default' for steps that are neither done, active nor stopped.\n */\n @Prop({ reflect: true }) status: 'done' | 'stop' | 'active' | 'default' = 'default';\n\n @State() styles = {};\n\n @Element() hostElement: HTMLElement;\n\n connectedCallback() {\n this.updateStyles();\n }\n\n statusMap = {\n active: {\n badgeColor: 'info',\n textColor: 'info-dark',\n icon: '',\n iconOnly: false,\n },\n stop: {\n badgeColor: 'error',\n textColor: 'error-darker',\n icon: 'alertCircle',\n iconOnly: true,\n },\n done: {\n badgeColor: 'success',\n textColor: 'success-darker',\n icon: 'checkCircle',\n iconOnly: true,\n },\n default: {\n badgeColor: 'neutral',\n textColor: 'neutral',\n icon: '',\n iconOnly: false,\n },\n };\n\n getStatusProperties() {\n return this.statusMap[this.status] || this.statusMap.default;\n }\n\n updateStyles() {\n const { fonts, colors, spacing } = window.CuraAPI.theme;\n const weights = fonts.getWeights();\n\n this.styles = {\n '--base-spacing': spacing.getSpacing(),\n '--neutral-purewhite': colors.getColor('neutral-purewhite'),\n '--neutral-lighter': colors.getColor('neutral-lighter'),\n '--neutral-base': colors.getColor('neutral-base'),\n '--font-size': fonts.getSize(),\n '--font-color': fonts.getColor(),\n '--font-family': fonts.getFamily(),\n '--font-weight-regular': weights.regular,\n };\n }\n\n render() {\n const { badgeColor, textColor, icon, iconOnly } = this.getStatusProperties();\n return (\n <Host>\n <div class=\"item-container\" style={this.styles}>\n <cura-badge-pill\n type=\"solid\"\n color={badgeColor as 'info' | 'error' | 'success' | 'neutral' | 'primary' | 'secondary' | 'accent' | 'warning'}\n icon-name={icon}\n icon-only={iconOnly}\n border-radius=\"50%\"\n >\n {this.label}\n </cura-badge-pill>\n {this.displayHeading && this.heading && (\n <cura-paragraph marginBlock=\"0\" size=\"xsmall\" color={textColor}>\n {this.heading}\n </cura-paragraph>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-radio.entry.esm.js","sources":["src/components/forms/cura-radio/cura-radio.scss?tag=cura-radio&encapsulation=shadow","src/components/forms/cura-radio/cura-radio.tsx"],"sourcesContent":["@import '../../../scss/mixins/text.scss';\n\n:host {\n display: block;\n box-sizing: border-box;\n\n min-width: 0;\n\n .container {\n display: flex;\n align-items: center;\n flex-direction: row-reverse;\n justify-content: start;\n gap: var(--gap);\n\n cursor: pointer;\n }\n\n .position {\n &.container {\n flex-direction: row;\n }\n\n .label-wrapper {\n justify-content: end;\n }\n\n .message {\n text-align: right;\n }\n\n .label {\n order: 1;\n }\n }\n\n .label.textoverflow-single {\n @include truncate-single();\n min-width: 0;\n max-width: 100%;\n }\n\n .info {\n display: flex;\n flex-direction: column;\n\n overflow: hidden;\n }\n\n .label-wrapper {\n display: flex;\n justify-content: start;\n align-items: center;\n gap: 5px;\n }\n\n .control {\n width: fit-content;\n cursor: pointer;\n position: relative;\n }\n\n .radio {\n margin: 0;\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border-radius: 50%;\n border: 2px solid var(--primary-base-neutral-medium);\n background: var(--neutral-purewhite);\n box-sizing: border-box;\n transition: border-color 0.3s;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n width: var(--size);\n height: var(--size);\n flex: 0 0 var(--size);\n\n &::after {\n content: '';\n background: var(--color-base-light);\n border-radius: 50%;\n opacity: 0;\n transition: opacity 0.3s;\n width: var(--size-after);\n height: var(--size-after);\n }\n\n &:focus {\n border-color: var(--info-base) !important;\n }\n }\n\n /* Estado Success */\n .success .radio {\n border-color: var(--success-base);\n background: var(--success-lighter);\n\n &:hover {\n border-color: var(--success-base) !important;\n }\n }\n\n .success.checked .radio {\n border-color: var(--success-base);\n\n &::after {\n background: var(--success-base);\n }\n\n &:hover {\n background: var(--success-lighter) !important;\n border-color: var(--success-base) !important;\n\n &::after {\n background: var(--success-base) !important;\n }\n }\n }\n\n /* Estado Error */\n .error .radio {\n border-color: var(--error-base);\n background: var(--error-lighter);\n\n &:hover {\n border-color: var(--error-base) !important;\n }\n }\n\n .error.checked .radio {\n border-color: var(--error-base);\n\n &::after {\n background: var(--error-base);\n }\n\n &:hover {\n background: var(--error-lighter) !important;\n border-color: var(--error-base) !important;\n\n &::after {\n background: var(--error-base) !important;\n }\n }\n }\n\n /* Estado checked */\n .checked .radio::after {\n opacity: 1;\n background: var(--color-base);\n }\n\n .checked .radio {\n border-color: var(--color-dark);\n }\n\n .checked .radio:hover {\n border-color: var(--color-light) !important;\n }\n\n .checked .radio:hover::after {\n background: var(--color-light);\n }\n\n /* Estado disabled */\n .disabled .radio {\n background: var(--primary-base-neutral-white);\n border-color: var(--primary-darker-neutral-base);\n cursor: not-allowed;\n }\n\n .disabled .radio::after {\n background: var(--neutral-lighter);\n }\n\n .disabled.checked .radio {\n border-color: var(--primary-base-neutral-base) !important;\n background: var(--primary-darker-neutral-white) !important;\n }\n\n .disabled.checked .radio::after {\n background: var(--primary-base-neutral-base) !important;\n }\n\n /* Estado hover para não disabled e não checked */\n :not(.disabled):not(.checked) .radio:hover {\n border-color: var(--primary-base-neutral-dark);\n }\n}\n","import { Component, Prop, Event, Element, h, Host, Watch, EventEmitter, State, AttachInternals } from '@stencil/core';\nimport { formsSizes } from '../cura-forms.definitions';\n\n@Component({\n tag: 'cura-radio',\n styleUrl: 'cura-radio.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class CuraRadio {\n /**\n * Reflects the checked state of the radio button.\n * Mutable property allowing state change.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false;\n /**\n * Status of the radio button.\n * Can be 'error', 'success', or 'default'.\n */\n @Prop({ reflect: true, mutable: true }) status: 'error' | 'success' | 'default' = 'default';\n /**\n * Reflects the disabled state of the radio button.\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n /**\n * Reflects the required state of the radio button.\n */\n @Prop({ reflect: true }) required: boolean = false;\n /**\n * Text label associated with the radio button.\n */\n @Prop({ reflect: true }) label: string = '';\n /**\n * Specifies the tabindex of the radio button.\n */\n @Prop({ reflect: true }) ontabindex: number;\n /**\n * Position of the label relative to the radio button.\n * Can be 'left' or 'right'.\n */\n @Prop({ reflect: true }) position: 'left' | 'right' = 'left';\n /**\n * Value associated with the radio button.\n */\n @Prop({ reflect: true }) value: string = '';\n /**\n * Name attribute of the radio button.\n */\n @Prop({ reflect: true }) name: string = '';\n /**\n * Background theme of the radio button.\n * Can be 'dark' or 'light'.\n */\n @Prop() background: 'dark' | 'light' = 'light';\n /**\n * Size of the radio button.\n * Can be 'small', 'medium', or 'large'.\n */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n /**\n * Color theme of the radio button.\n */\n @Prop() color = 'accent';\n\n /**\n * Controls how the label text should handle overflow.\n * - `'none'`: No overflow handling; the label displays normally.\n * - `'single'`: The label will be truncated with an ellipsis if it overflows a single line.\n * - `string`: Custom overflow handling mode.\n *\n * @default 'none'\n */\n @Prop({ reflect: true }) overflowLabel: 'none' | 'single' | string = 'none';\n\n /**\n * Controls how the helper text should handle overflow.\n * - `'none'`: No overflow handling; the label displays normally.\n * - `'single'`: The label will be truncated with an ellipsis if it overflows a single line.\n * - `string`: Custom overflow handling mode.\n *\n * @default 'none'\n */\n @Prop({ reflect: true }) overflowHelper: 'none' | 'single' | string = 'none';\n\n @State() styles = {};\n\n @Element() host: HTMLElement;\n\n @Event() onchange: EventEmitter<{ value: string; checked: boolean }>;\n\n @AttachInternals() internals: ElementInternals;\n\n sizes = {\n large: { size: 20 },\n medium: { size: 14 },\n small: { size: 10 },\n };\n\n isDarkbackground = () => this.background === 'dark';\n\n @Watch('size')\n sizeHandler() {\n this.styles = {\n ...this.styles,\n '--size-after': `${this.sizes[this.size].size}px`,\n '--size': `${formsSizes[this.size].size}px`,\n '--gap': `${formsSizes[this.size].gap}px`,\n };\n }\n\n @Watch('color')\n @Watch('background')\n setColors() {\n const colors = [\n { name: '--info-base', background: 'info-base' },\n { name: '--color-light', background: `${this.color}-light` },\n { name: '--color-base', background: `${this.color}-base` },\n { name: '--color-dark', background: `${this.color}-dark` },\n { name: '--neutral-purewhite', background: 'neutral-purewhite' },\n { name: '--success-lighter', background: 'success-lighter' },\n { name: '--success-base', background: 'success-base' },\n { name: '--error-lighter', background: 'error-lighter' },\n { name: '--error-base', background: 'error-base' },\n { name: '--primary-base-neutral-medium', background: this.isDarkbackground() ? 'primary-base' : 'neutral-medium' },\n { name: '--primary-base-neutral-white', background: this.isDarkbackground() ? 'primary-base' : 'neutral-white' },\n { name: '--primary-darker-neutral-white', background: this.isDarkbackground() ? 'primary-darker' : 'neutral-white' },\n { name: '--primary-darker-neutral-base', background: this.isDarkbackground() ? 'primary-darker' : 'neutral-base' },\n { name: '--primary-base-neutral-base', background: this.isDarkbackground() ? 'primary-base' : 'neutral-base' },\n { name: '--primary-base-neutral-dark', background: this.isDarkbackground() ? 'primary-base' : 'neutral-dark' },\n { name: '--primary-base-neutral-medium', background: this.isDarkbackground() ? 'primary-base' : 'neutral-medium' },\n { name: '--success-base-dark', background: this.isDarkbackground() ? 'success-base' : 'success-dark' },\n { name: '--error-base-dark', background: this.isDarkbackground() ? 'error-base' : 'error-dark' },\n ];\n\n colors.forEach(color => {\n this.styles[color.name] = window.CuraAPI.theme.colors.getColor(color.background);\n });\n this.styles = { ...this.styles };\n }\n\n /**\n * Callback for form association.\n */\n formAssociatedCallback(form: { ariaLabel: string }) {\n form.ariaLabel = this.label;\n }\n\n /**\n * Callback to restore the switch state from the form.\n */\n formStateRestoreCallback(state: { value: string; checked: boolean }) {\n this.value = state.value;\n this.checked = state.checked;\n this.internals.setFormValue(this.value);\n }\n\n /**\n * Callback to reset the switch state when the form is reset.\n */\n formResetCallback() {\n this.value = '';\n this.checked = false;\n this.internals.setValidity({});\n this.internals.setFormValue(this.value);\n }\n\n /**\n * Callback to update the switch's disabled state when the form's disabled state changes.\n */\n formDisabledCallback(disabled: boolean) {\n this.disabled = disabled;\n }\n\n connectedCallback() {\n this.sizeHandler();\n this.setColors();\n }\n\n handleClick = () => {\n if (this.disabled) return;\n\n this.checked = !this.checked;\n this.internals.setFormValue(this.value);\n this.onchange.emit({ value: this.value, checked: this.checked });\n };\n\n getClasses() {\n const classes = {};\n classes['container'] = true;\n classes['checked'] = this.checked;\n classes['disabled'] = this.disabled;\n classes['position'] = this.position === 'right';\n classes[this.status] = true;\n\n return classes;\n }\n\n @Watch('background')\n assignColor(type: 'label' | 'message') {\n if (this.disabled) return this.isDarkbackground() ? 'primary-darker' : 'neutral-medium';\n\n const statusColors = {\n success: {\n label: this.isDarkbackground() ? 'success-lighter' : 'success-darker',\n message: this.isDarkbackground() ? 'success-base' : 'success-dark',\n },\n error: {\n label: this.isDarkbackground() ? 'error-lighter' : 'neutral-darker',\n message: this.isDarkbackground() ? 'error-base' : 'error-dark',\n },\n default: {\n label: this.isDarkbackground() ? 'neutral-white' : 'neutral-black',\n message: this.isDarkbackground() ? 'primary-lighter' : 'neutral-dark',\n },\n };\n\n return statusColors[this.status][type];\n }\n\n render() {\n return (\n <Host role=\"radio\" aria-checked={this.checked} aria-disabled={this.disabled} aria-required={this.required} aria-invalid={this.status === 'error'}>\n <div class={this.getClasses()} style={this.styles} onClick={this.handleClick}>\n <div class=\"info\">\n <div class=\"label-wrapper\">\n <cura-label\n textOverflow={this.overflowLabel}\n class={`label${this.overflowLabel === 'single' ? ' textoverflow-single' : ''}`}\n size={this.size === 'large' ? 'medium' : 'xsmall'}\n color={this.assignColor('label')}\n >\n {this.label}\n </cura-label>\n {this.required && (\n <cura-paragraph lineHeight=\"0%\" marginBlock=\"0\" color=\"error-base\">\n *{' '}\n </cura-paragraph>\n )}\n </div>\n <cura-label textOverflow={this.overflowHelper} color={this.assignColor('message')} size=\"xsmall\" class=\"message\">\n <slot></slot>\n </cura-label>\n </div>\n <input\n type=\"radio\"\n class={`radio ${this.size.toLocaleLowerCase()}`}\n name={this.name}\n value={this.value}\n required={this.required}\n tabIndex={this.ontabindex}\n disabled={this.disabled}\n checked={this.checked}\n />\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-stepper.entry.esm.js","sources":["src/components/cura-stepper/cura-stepper.scss?tag=cura-stepper&encapsulation=shadow","src/components/cura-stepper/cura-stepper.tsx"],"sourcesContent":[":host {\n display: block;\n box-sizing: border-box;\n width: 100%;\n}\n\ncura-heading { \n --margin-block: 0 !important;\n}\n\n.container {\n display: flex;\n}\n\n.compact {\n display: flex;\n padding: 0px;\n justify-content: space-between;\n align-items: center;\n\n .heading{\n text-align: right;\n }\n}\n\n.stepper-list {\n gap: 4px;\n display: flex;\n flex-shrink: 0;\n align-items: center;\n padding: 0;\n flex: 1;\n width: 100%;\n justify-content: space-between;\n}\n\n.step{\n display: flex;\n align-items: center;\n flex-direction: row;\n flex: 1;\n gap: 4px;\n\n .wrapper {\n flex: 1;\n position: relative;\n }\n\n .divider{\n background-color: var(--neutral-light);\n height: 2px;\n flex: 1;\n\n transition: all 1s;\n }\n\n .animation {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n width: var(--progress-width);\n }\n\n .done{\n background-color: var(--success-light);\n }\n\n .stop{\n background-color: var(--error-light);\n }\n\n .active{\n background-color: var(--info-light);\n }\n}\n\n.last{\n flex: 0;\n}\n","import { Component, Host, State, h, Element, Prop } from '@stencil/core';\nimport { Step } from './stepper.type';\n\n@Component({\n tag: 'cura-stepper',\n styleUrl: 'cura-stepper.scss',\n shadow: true,\n})\nexport class CuraStepper {\n /**\n * The current active step index\n */\n @Prop({ reflect: true }) activeStepIndex: number;\n\n /**\n * Indicates if a step has encountered an error\n * If `true`, the current step will be marked as 'stop'\n */\n @Prop({ reflect: true }) errorInCurrentStep: boolean = false;\n\n /**\n * Whether to display the title (default: false)\n */\n @Prop({ reflect: true }) displayHeading: boolean = false;\n\n /**\n * Allows you to set the appearance of the component (default: default)\n */\n @Prop({ reflect: true }) variant: 'compact' | 'default' = 'default';\n\n /**\n * List of steps in the stepper.\n */\n @Prop() steps: Step[] | string = [];\n /**\n * Reference to the host element.\n */\n @Element() host: HTMLElement;\n\n @State() styles = {};\n\n /**\n * Array of steps in the stepper.\n *\n * @type {Date[]}\n * @default []\n */\n @State() stepList: Step[] = [];\n\n connectedCallback() {\n this.initializeSteps();\n\n const { fonts, colors, spacing } = window.CuraAPI.theme;\n const weights = fonts.getWeights();\n\n this.styles = this.generateStyles(colors, fonts, spacing, weights);\n }\n\n generateStyles(colors, fonts, spacing, weights) {\n return {\n '--base-spacing': spacing.getSpacing(),\n '--neutral-purewhite': colors.getColor('neutral-purewhite'),\n '--neutral-lighter': colors.getColor('neutral-lighter'),\n '--neutral-base': colors.getColor('neutral-base'),\n '--neutral-light': colors.getColor('neutral-light'),\n '--success-light': colors.getColor('success-light'),\n '--info-light': colors.getColor('info-light'),\n '--error-light': colors.getColor('error-light'),\n '--font-size': fonts.getSize(),\n '--font-color': fonts.getColor(),\n '--font-family': fonts.getFamily(),\n '--font-weight-regular': weights.regular,\n };\n }\n\n initializeSteps() {\n if (typeof this.steps === 'string') {\n this.stepList = JSON.parse(this.steps || '[]');\n } else {\n this.stepList = this.steps;\n }\n }\n\n getStepStatus(step: number): 'done' | 'stop' | 'active' | 'default' {\n if (this.activeStepIndex === step && this.errorInCurrentStep) return 'stop';\n if (this.activeStepIndex === step && this.stepList.length !== step) return 'active';\n if (this.activeStepIndex >= step) return 'done';\n\n return 'default';\n }\n\n getProgressStyles() {\n const progressStyles = {\n default: {\n progressColor: 'var(--info-light)',\n activeStepTextColor: 'info-darker',\n nextStepTextColor: 'info-dark',\n },\n firstStep: {\n progressColor: 'var(--info-light)',\n activeStepTextColor: 'neutral-dark',\n nextStepTextColor: 'neutral-medium',\n },\n completed: {\n progressColor: 'var(--success-light)',\n activeStepTextColor: 'success-darker',\n nextStepTextColor: 'success-dark',\n },\n error: {\n progressColor: 'var(--error-light)',\n activeStepTextColor: 'error-darker',\n nextStepTextColor: 'error-dark',\n },\n };\n\n if (this.errorInCurrentStep) {\n return progressStyles.error;\n }\n\n if (this.activeStepIndex === 0) {\n return progressStyles.firstStep;\n }\n\n if (this.activeStepIndex === this.stepList.length) {\n return progressStyles.completed;\n }\n\n return progressStyles.default;\n }\n\n renderCompactStepper() {\n const title = this.activeStepIndex === 0 ? this.stepList[this.activeStepIndex].title : this.stepList[this.activeStepIndex - 1].title;\n const subtitle = this.activeStepIndex === 0 ? this.stepList[this.activeStepIndex + 1].title : this.stepList[this.activeStepIndex]?.title;\n const completed = this.activeStepIndex === this.stepList.length;\n const inProgress = !(completed || this.errorInCurrentStep);\n const { progressColor, activeStepTextColor, nextStepTextColor } = this.getProgressStyles();\n\n // Representa a porcentagem de progresso (step atual / quantidade de steps;)\n const progress = (this.activeStepIndex * 100) / this.stepList.length;\n\n return (\n <div class=\"container compact\" style={this.styles}>\n <cura-progress-bar progress={progress} progressColor={progressColor} active={this.activeStepIndex !== 0}>\n {!inProgress ? (\n <cura-icon name={this.errorInCurrentStep ? 'alertCircle' : 'checkCircle'} color={this.errorInCurrentStep ? 'error-dark' : 'success-dark'} size=\"16\"></cura-icon>\n ) : (\n <cura-heading color=\"neutral-dark\" size=\"xsmall\">\n {this.activeStepIndex}/{this.stepList.length}\n </cura-heading>\n )}\n </cura-progress-bar>\n {this.displayHeading && (\n <div class=\"heading\">\n <cura-heading size=\"small\" weight=\"bold\" color={activeStepTextColor}>\n {title}\n </cura-heading>\n {!completed && (\n <cura-heading size=\"xsmall\" weight=\"regular\" color={nextStepTextColor}>\n Próximo: {subtitle}\n </cura-heading>\n )}\n </div>\n )}\n </div>\n );\n }\n\n renderStep(step: Step, stepIndex: number) {\n const stepStatus = this.getStepStatus(stepIndex + 1);\n const lastStep = stepIndex === this.stepList.length - 1;\n const progressWidth = stepStatus !== 'default' ? '100%' : '0';\n\n return (\n <div class={`step ${lastStep ? 'last' : ''}`} key={step.title}>\n <cura-stepper-item heading={step.title} label={step.label} displayHeading={this.displayHeading} status={stepStatus}></cura-stepper-item>\n {stepIndex < this.stepList.length - 1 && (\n <div class=\"wrapper\">\n <div class=\"divider\" />\n <div class={`divider ${stepStatus} animation`} style={{ '--progress-width': progressWidth }} />\n </div>\n )}\n </div>\n );\n }\n renderStepper() {\n return (\n <div class=\"container\" style={this.styles}>\n <div class=\"stepper-list\">{this.stepList.map((step, stepIndex) => this.renderStep(step, stepIndex))}</div>\n </div>\n );\n }\n\n render() {\n return <Host>{this.variant === 'default' ? this.renderStepper() : this.renderCompactStepper()}</Host>;\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-switch.entry.esm.js","sources":["src/components/forms/cura-switch/cura-switch.scss?tag=cura-switch&encapsulation=shadow","src/components/forms/cura-switch/cura-switch.tsx"],"sourcesContent":["@import '../../../../src/scss/mixins/shadows.scss';\n@import '../../../scss/mixins/text.scss';\n\n:host {\n display: block;\n box-sizing: border-box;\n\n min-width: 0;\n}\n\n.container {\n display: flex;\n align-items: center;\n flex-direction: row-reverse;\n justify-content: start;\n gap: var(--gap);\n text-align: left;\n\n cursor: pointer;\n}\n\n.position {\n flex-direction: row;\n}\n\n.info {\n overflow: hidden;\n}\n\n.label,\n.message {\n text-align: left;\n}\n\n.control {\n width: fit-content;\n}\n\n/* Estilos para o controle de switch */\n.track {\n background: var(--neutral-dark-base);\n border-radius: 16px;\n transition: background-color 0.3s;\n align-items: flex-start;\n flex-shrink: 0;\n box-sizing: border-box;\n width: var(--size-track);\n height: var(--size);\n position: relative;\n}\n\n.thumb {\n background: var(--neutral-purewhite);\n border: 2px solid var(--neutral-darker-medium);\n border-radius: 50%;\n\n position: absolute;\n transition: transform 0.3s, outline 0.3s;\n display: inline-block;\n cursor: pointer;\n user-select: none;\n box-sizing: border-box;\n width: var(--size);\n height: var(--size);\n top: 50%;\n transform: translateY(-50%);\n}\n\n/* Estado \"checked\" */\n.checked .thumb {\n border-color: var(--color-dark);\n @include shadow-level3(--neutral-black-shadow);\n background: var(--neutral-purewhite);\n transform: translateX(var(--size)) translateY(-50%);\n}\n\n.checked .thumb:hover {\n background: var(--neutral-pale) !important;\n border-color: var(--neutral-darker-medium) !important;\n}\n\n.checked .thumb:active {\n border-color: var(--color-dark);\n background: var(--neutral-pale);\n}\n\n.checked .track {\n background: var(--color-base-light);\n}\n\n/* Estado \"disabled\" */\n.disabled .track {\n background: var(--neutral-black-neutral-pale);\n}\n\n.disabled .thumb {\n background: var(--neutral-black-neutral-base) !important;\n border-color: var(--neutral-black-neutral-pale) !important;\n cursor: not-allowed;\n}\n\n.disabled.checked .track {\n background: var(--neutral-black-neutral-pale);\n}\n\n.container.disabled .thumb:focus {\n outline: none !important;\n border-color: var(--neutral-black-neutral-pale) !important;\n}\n\n/* Estado hover para não disabled e não checked */\n:not(.disabled):not(.checked) .thumb:hover {\n border-color: var(--color-dark);\n background: var(--neutral-pale);\n}\n\n:not(.disabled):not(.checked) .thumb:active {\n border-color: var(--color-dark);\n background: var(--neutral-pale);\n}\n\n/* Estado hover para não disabled */\n:not(.disabled) .thumb:focus {\n outline: 2px solid var(--info-base) !important;\n border: 2px solid var(--neutral-darker-medium);\n z-index: 1;\n}\n\n:not(.disabled) .checked .thumb:focus {\n outline: 2px solid var(--info-base) !important;\n border-color: var(--color-dark);\n}\n","import { Component, Prop, Event, h, Host, Watch, EventEmitter, State, AttachInternals } from '@stencil/core';\nimport { formsSizes } from '../cura-forms.definitions';\n\n@Component({\n tag: 'cura-switch',\n styleUrl: 'cura-switch.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class CuraSwitch {\n /**\n * Indicates whether the switch is checked or not.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false;\n /**\n * Indicates whether the switch is disabled or not.\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n /**\n * The label text to display next to the switch.\n */\n @Prop({ reflect: true }) label: string = '';\n /**\n * Tab index for the switch element.\n * Reflects as an HTML attribute.\n */\n @Prop({ reflect: true }) ontabindex: number = 0;\n /**\n * Position of the label relative to the switch.\n * Can be 'left' or 'right'.\n */\n @Prop({ reflect: true }) position: 'left' | 'right' = 'left';\n /**\n * Size of the switch.\n * Can be 'small', 'medium', or 'large'.\n */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n /**\n * Background style of the switch.\n * Can be 'dark' or 'light'.\n */\n @Prop() background: 'dark' | 'light' = 'light';\n /**\n * Accent color of the switch.\n */\n @Prop() color = 'accent';\n\n /**\n * Controls how the label text should handle overflow.\n * - `'none'`: No overflow handling; the label displays normally.\n * - `'single'`: The label will be truncated with an ellipsis if it overflows a single line.\n * - `string`: Custom overflow handling mode.\n *\n * @default 'none'\n */\n @Prop({ reflect: true }) overflowLabel: 'none' | 'single' | string = 'none';\n\n /**\n * Controls how the helper text should handle overflow.\n * - `'none'`: No overflow handling; the label displays normally.\n * - `'single'`: The label will be truncated with an ellipsis if it overflows a single line.\n * - `string`: Custom overflow handling mode.\n *\n * @default 'none'\n */\n @Prop({ reflect: true }) overflowHelper: 'none' | 'single' | string = 'none';\n\n @State() styles = {};\n\n @Event({ eventName: 'onchange', composed: true, cancelable: true, bubbles: true }) onchange: EventEmitter<{ checked: boolean }>;\n\n @AttachInternals() internals: ElementInternals;\n\n sizes = {\n large: { size: 64 },\n medium: { size: 48 },\n small: { size: 40 },\n };\n\n isDarkbackground = () => this.background === 'dark';\n\n @Watch('size')\n sizeHandler() {\n this.styles = {\n ...this.styles,\n '--size-track': `${this.sizes[this.size].size}px`,\n '--size': `${formsSizes[this.size].size}px`,\n '--gap': `${formsSizes[this.size].gap}px`,\n };\n }\n\n @Watch('color')\n @Watch('background')\n setColors() {\n const colors = [\n { name: '--info-base', background: 'info-base' },\n { name: '--neutral-black-shadow', background: 'neutral-black', opacity: 0.16 },\n { name: '--neutral-purewhite', background: 'neutral-purewhite' },\n { name: '--neutral-medium', background: 'neutral-medium' },\n { name: '--neutral-pale', background: 'neutral-pale' },\n { name: '--neutral-dark-base', background: `neutral-${this.isDarkbackground() ? 'dark' : 'base'}` },\n { name: '--neutral-darker-medium', background: `neutral-${this.isDarkbackground() ? 'darker' : 'medium'}` },\n { name: '--neutral-black-neutral-pale', background: `${this.isDarkbackground() ? 'neutral-black' : 'neutral-pale'}` },\n { name: '--neutral-black-neutral-base', background: `${this.isDarkbackground() ? 'neutral-dark' : 'neutral-base'}` },\n { name: '--color-base-light', background: `${this.color}-light` },\n { name: '--color-dark', background: `${this.color}-dark` },\n ];\n\n colors.forEach(color => {\n this.styles[color.name] = window.CuraAPI.theme.colors.getColor(color.background, color?.opacity);\n });\n this.styles = { ...this.styles };\n }\n\n connectedCallback() {\n this.sizeHandler();\n this.setColors();\n }\n\n /**\n * Callback for form association.\n */\n formAssociatedCallback(form: { ariaLabel: string }) {\n form.ariaLabel = this.label;\n }\n\n /**\n * Callback to restore the switch state from the form.\n */\n formStateRestoreCallback(state: { value: string }) {\n this.checked = state.value === 'true';\n this.internals.setFormValue(this.checked.toString());\n }\n\n /**\n * Callback to reset the switch state when the form is reset.\n */\n formResetCallback() {\n this.checked = false;\n this.internals.setValidity({});\n this.internals.setFormValue(this.checked.toString());\n }\n\n /**\n * Callback to update the switch's disabled state when the form's disabled state changes.\n */\n formDisabledCallback(disabled: boolean) {\n this.disabled = disabled;\n }\n\n toggleSwitch = () => {\n if (this.disabled) return null;\n\n this.checked = !this.checked;\n this.internals.setFormValue(this.checked.toString());\n this.onchange.emit({ checked: this.checked });\n };\n\n assignColor(colorDark: string, colorLight: string) {\n if (this.disabled) return this.isDarkbackground() ? 'neutral-dark' : 'neutral-dark';\n return this.isDarkbackground() ? colorDark : colorLight;\n }\n\n getClasses() {\n const classes = {};\n classes['container'] = true;\n classes['checked'] = this.checked;\n classes['disabled'] = this.disabled;\n classes['position'] = this.position === 'right';\n\n return classes;\n }\n\n render() {\n return (\n <Host role=\"switch\" aria-checked={this.checked} aria-disabled={this.disabled}>\n <div class={this.getClasses()} style={this.styles} onClick={this.toggleSwitch}>\n <div class=\"info\">\n <cura-label\n textOverflow={this.overflowLabel}\n style={{ textAlign: this.position === 'right' ? 'right' : 'left' }}\n class=\"label\"\n weight=\"bold\"\n size={this.size === 'large' ? 'medium' : 'xsmall'}\n lineHeight=\"125%\"\n color={this.assignColor('neutral-white', 'neutral-black')}\n >\n {this.label}\n </cura-label>\n <cura-label\n textOverflow={this.overflowHelper}\n style={{ textAlign: this.position === 'right' ? 'right' : 'left' }}\n color={this.assignColor('primary-lighter', 'neutral-dark')}\n size=\"xsmall\"\n class=\"message\"\n >\n <slot></slot>\n </cura-label>\n </div>\n\n <div class=\"control\">\n <div class={`track ${this.size.toLowerCase()}`}>\n <div class={`thumb ${this.size.toLowerCase()}`} tabIndex={this.ontabindex}></div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-tabs-button.entry.esm.js","sources":["src/components/tabs/cura-tabs-button/cura-tabs-button.scss?tag=cura-tabs-button&encapsulation=shadow","src/components/tabs/cura-tabs-button/cura-tabs-button.tsx"],"sourcesContent":["@import '../../../scss/mixins/spacing.scss';\n@import '../../../scss/mixins/buttons.scss';\n\n$button-sizes: (\n small: $spacing-mini $spacing-mini,\n medium: $spacing-xxxs $spacing-xxxs,\n large: $spacing-xxxs $spacing-xxs,\n);\n\n:host {\n button,\n a {\n @include button-element() {\n background-color: transparent;\n box-sizing: border-box;\n border: none;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n min-width: 120px;\n width: fit-content;\n\n border: 2px solid var(--border-color);\n border-radius: 4px;\n\n &:not(.selected) {\n border: 2px solid var(--border-color);\n }\n\n &:not(.disabled, .selected):hover {\n background-color: var(--background-color-hover);\n\n &.dark {\n border-color: var(--neutral-purewhite);\n }\n }\n\n @each $size, $padding in $button-sizes {\n &.#{$size} {\n padding: $padding;\n }\n }\n\n &:focus {\n border-color: var(--primary-light);\n }\n\n cura-icon {\n margin-right: #{$spacing-mini};\n }\n\n cura-badge-counter {\n margin-left: #{$spacing-mini};\n }\n\n @include button-selected() {\n background-color: var(--background-color-selected);\n\n &.disabled {\n border-color: transparent;\n background-color: var(--background-disabled-selected);\n }\n }\n\n &.disabled {\n &:not(.selected) {\n border-color: var(--neutral-dark);\n }\n\n cursor: not-allowed;\n }\n }\n }\n}\n","import { Component, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { labelSizes } from '../cura-tabs.definitions';\n\n@Component({\n tag: 'cura-tabs-button',\n styleUrl: 'cura-tabs-button.scss',\n shadow: true,\n})\nexport class CuraTabs {\n @Prop({ reflect: true }) name: string;\n @Prop({ reflect: true }) iconName: string;\n @Prop({ reflect: true, mutable: true }) counter?: number = 1;\n @Prop({ reflect: true, mutable: true }) selected: boolean = false;\n @Prop({ reflect: true, mutable: true }) disabled: boolean = false;\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'large';\n @Prop({ reflect: true, mutable: true }) colorMode: 'dark' | 'light' = 'light';\n\n @State() hovered = false;\n @State() styles: Record<string, string> = {};\n\n @Event() tabSelect: EventEmitter<{ name: string }>;\n\n @Watch('colorMode')\n setColors() {\n const colors = [\n { name: '--background-color-selected', theme: this.colorMode === 'light' ? 'primary-base' : 'primary-light' },\n { name: '--background-color-hover', theme: this.colorMode === 'light' ? 'primary-light' : null },\n {\n name: '--background-disabled-selected',\n theme: this.colorMode === 'light' ? 'neutral-white' : 'neutral-black',\n },\n {\n name: '--border-color',\n theme: this.colorMode === 'light' ? 'primary-base' : 'primary-light',\n },\n ];\n\n colors.forEach(c => {\n if (c.theme) this.styles[c.name] = window.CuraAPI.theme.colors.getColor(c.theme);\n });\n\n this.styles = { ...this.styles };\n }\n\n computeContentColor(): string {\n if (this.disabled) return 'neutral-dark';\n\n if (this.colorMode === 'dark') {\n if (this.hovered && !this.selected) {\n return 'neutral-purewhite';\n }\n return this.selected ? 'neutral-black' : 'primary-lighter';\n }\n\n return this.selected ? 'neutral-purewhite' : 'primary-dark';\n }\n\n getIcon() {\n if (!this.iconName) return '';\n const iconSize = this.size === 'large' ? 20 : 16;\n const iconColor = this.computeContentColor();\n\n return <cura-icon name={this.iconName} size={iconSize} color={iconColor}></cura-icon>;\n }\n\n getClasses() {\n return {\n [this.size]: true,\n [this.colorMode]: true,\n selected: this.selected,\n disabled: this.disabled,\n };\n }\n\n getCounter() {\n return <cura-badge-counter number={this.counter} color=\"primary\" disabled={this.disabled} class=\"badge-number\"></cura-badge-counter>;\n }\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--primary-dark': window.CuraAPI.theme.colors.getColor('primary-dark'),\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--neutral-dark': window.CuraAPI.theme.colors.getColor('neutral-dark'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n\n this.setColors();\n }\n\n handleMouseEnter() {\n if (this.disabled) return;\n this.hovered = true;\n }\n\n handleMouseLeave() {\n this.hovered = false;\n }\n\n handleClick(e: Event) {\n if (this.disabled) {\n e.preventDefault();\n return;\n }\n\n this.selected = !this.selected;\n this.tabSelect.emit({ name: this.name });\n }\n\n render() {\n const labelSize = labelSizes[this.size] || labelSizes['default'];\n const labelColor = this.computeContentColor();\n\n return (\n <Host role=\"button\" aria-pressed={this.selected} aria-disabled={this.disabled}>\n <button\n class={this.getClasses()}\n style={this.styles}\n onClick={e => this.handleClick(e)}\n disabled={this.disabled}\n onMouseEnter={this.handleMouseEnter.bind(this)}\n onMouseLeave={this.handleMouseLeave.bind(this)}\n >\n {this.getIcon()}\n <cura-label size={labelSize} color={labelColor} lineHeight=\"0\" marginBlock=\"0\">\n <slot></slot>\n </cura-label>\n {this.counter > 0 && this.getCounter()}\n </button>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-tabs-transparent.entry.esm.js","sources":["src/components/tabs/cura-tabs-transparent/cura-tabs-transparent.scss?tag=cura-tabs-transparent&encapsulation=shadow","src/components/tabs/cura-tabs-transparent/cura-tabs-transparent.tsx"],"sourcesContent":["@import '../../../scss/mixins/spacing.scss';\n@import '../../../scss/mixins/buttons.scss';\n\n$button-sizes: (\n small: $spacing-mini $spacing-mini,\n medium: $spacing-xxxs $spacing-xxxs,\n large: $spacing-xxxs $spacing-xxs,\n);\n\n:host {\n button,\n a {\n @include button-element() {\n background-color: transparent;\n box-sizing: border-box;\n border: none;\n\n min-width: 120px;\n width: fit-content;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n &.border-bottom {\n border-bottom: 1px solid var(--border-bottom-color);\n }\n\n @each $size, $padding in $button-sizes {\n &.#{$size} {\n padding: $padding;\n }\n }\n\n &:not(.selected) {\n border-color: var(--border-color);\n }\n\n &:focus {\n border-color: var(--primary-light);\n }\n\n &:not(.disabled, .selected):hover {\n background-color: var(--background-color-hover);\n\n &.dark {\n border-color: var(--neutral-purewhite);\n }\n }\n\n cura-icon {\n margin-right: #{$spacing-mini};\n }\n\n @include button-selected() {\n &:not(.disabled) {\n border-bottom: 1px solid var(--border-bottom-color-selected);\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n }\n }\n }\n}\n","import { Component, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { labelSizes } from '../cura-tabs.definitions';\n\n@Component({\n tag: 'cura-tabs-transparent',\n styleUrl: 'cura-tabs-transparent.scss',\n shadow: true,\n})\nexport class CuraTabsTransparent {\n @Prop({ reflect: true }) name: string;\n @Prop({ reflect: true }) iconName: string;\n @Prop({ reflect: true, mutable: true }) selected: boolean = false;\n @Prop({ reflect: true, mutable: true }) disabled: boolean = false;\n @Prop({ reflect: true, mutable: true }) borderBottom: boolean = true;\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'large';\n @Prop({ reflect: true, mutable: true }) colorMode: 'dark' | 'light' = 'light';\n\n @State() hovered = false;\n @State() styles: Record<string, string> = {};\n\n @Event() tabSelect: EventEmitter<{ name: string }>;\n\n @Watch('colorMode')\n setColors() {\n const colors = [\n {\n name: '--border-bottom-color',\n theme: this.colorMode === 'light' ? 'neutral-base' : 'primary',\n },\n {\n name: '--border-bottom-color-selected',\n theme: this.colorMode === 'light' ? 'primary-dark' : 'primary-lighter',\n },\n ];\n\n colors.forEach(c => {\n if (c.theme) this.styles[c.name] = window.CuraAPI.theme.colors.getColor(c.theme);\n });\n\n this.styles = { ...this.styles };\n }\n\n computeContentColor(): string {\n if (this.disabled) return 'neutral-dark';\n\n if (this.colorMode === 'dark') {\n if (this.hovered && !this.selected) {\n return 'neutral-purewhite';\n }\n return this.selected ? 'primary-lighter' : 'neutral-purewhite';\n }\n\n if (this.hovered && !this.selected) {\n return 'primary-dark';\n }\n\n return this.selected ? 'primary-base' : 'neutral-black';\n }\n\n getIcon() {\n if (!this.iconName) return '';\n const iconSize = this.size === 'large' ? 20 : 16;\n const iconColor = this.computeContentColor();\n\n return <cura-icon name={this.iconName} size={iconSize} color={iconColor}></cura-icon>;\n }\n\n getClasses() {\n return {\n [this.size]: true,\n [this.colorMode]: true,\n 'selected': this.selected,\n 'disabled': this.disabled,\n 'border-bottom': this.borderBottom,\n };\n }\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--primary-dark': window.CuraAPI.theme.colors.getColor('primary-dark'),\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n\n this.setColors();\n }\n\n handleMouseEnter() {\n if (this.disabled) return;\n this.hovered = true;\n }\n\n handleMouseLeave() {\n this.hovered = false;\n }\n\n handleClick(e: Event) {\n if (this.disabled) {\n e.preventDefault();\n return;\n }\n\n this.selected = !this.selected;\n this.tabSelect.emit({ name: this.name });\n }\n\n render() {\n const labelSize = labelSizes[this.size] || labelSizes['default'];\n const labelColor = this.computeContentColor();\n\n return (\n <Host role=\"button\" aria-pressed={this.selected} aria-disabled={this.disabled}>\n <button\n class={this.getClasses()}\n style={this.styles}\n onClick={e => this.handleClick(e)}\n disabled={this.disabled}\n onMouseEnter={this.handleMouseEnter.bind(this)}\n onMouseLeave={this.handleMouseLeave.bind(this)}\n >\n {this.getIcon()}\n <cura-label size={labelSize} color={labelColor} lineHeight=\"0\" marginBlock=\"0\">\n <slot></slot>\n </cura-label>\n </button>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-toast.entry.esm.js","sources":["src/components/cura-toast/cura-toast.scss?tag=cura-toast&encapsulation=shadow","src/components/cura-toast/cura-toast.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/responsive.scss';\n@import '../../../src/scss/mixins/shadows.scss';\n\n@mixin horizontalConfig($property) {\n #{$property}: 24px;\n\n &.center {\n #{$property}: -100%;\n left: 50%;\n transform: translateX(-50%);\n opacity: 0;\n transition: opacity 0.5s ease-in-out, #{$property} 0.5s ease-in-out;\n\n &.active {\n #{$property}: 24px;\n opacity: 1;\n }\n }\n}\n\n@mixin verticalConfig($property) {\n #{$property}: -100%;\n opacity: 0;\n transition: opacity 0.5s ease-in-out, #{$property} 0.5s ease-in-out;\n\n @include mobile-only() {\n right: unset;\n left: 50%;\n transform: translateX(-50%);\n }\n\n &.active {\n #{$property}: 24px;\n opacity: 1;\n }\n}\n\n:host {\n display: block;\n box-sizing: border-box;\n\n .container {\n position: fixed;\n z-index: 99999;\n display: flex;\n box-sizing: border-box;\n min-width: 320px;\n height: fit-content;\n padding: 16px;\n border: 1px solid var(--color-base);\n border-radius: 12px;\n background-color: var(--neutral-purewhite);\n overflow: hidden;\n @include shadow-level4();\n\n &.loader {\n padding: 16px 16px 20px;\n }\n\n &.top {\n @include horizontalConfig(top);\n }\n\n &.bottom {\n @include horizontalConfig(bottom);\n }\n\n &.left {\n @include verticalConfig(left);\n }\n\n &.right {\n @include verticalConfig(right);\n }\n\n .content {\n flex: 1 1 0;\n display: flex;\n flex-direction: column;\n gap: 4px;\n }\n\n .default-icon {\n margin-right: 12px;\n }\n\n .close-icon {\n margin-left: 12px;\n cursor: pointer;\n }\n }\n}","import { Component, Element, Prop, Host, h, State, Watch, Event, EventEmitter, Method } from '@stencil/core';\n\n@Component({\n tag: 'cura-toast',\n styleUrl: 'cura-toast.scss',\n shadow: true,\n})\nexport class CuraToast {\n @Element() host: HTMLElement;\n\n @Prop() type: 'info' | 'success' | 'warning' | 'error' = 'info';\n @Prop() position: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' = 'top-right';\n @Prop({ reflect: true }) icon: string;\n @Prop({ reflect: true }) label: string;\n @Prop({ reflect: true }) closeButton = true;\n @Prop({ reflect: true }) loader = true;\n @Prop({ reflect: true }) autoCloseDelay = 10000;\n\n @State() styles = {};\n @State() progress = 0;\n\n @Event({ eventName: 'toastClosed' }) toastClosed: EventEmitter<void>;\n\n /**\n * Method to close toast component\n */\n @Method()\n async close() {\n this.closeContainer();\n }\n\n @Watch('type')\n @Watch('position')\n handleChangeType() {\n this.setStyle();\n }\n\n container: HTMLElement;\n\n connectedCallback() {\n this.setStyle();\n }\n\n render() {\n return (\n <Host\n role=\"alert\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n aria-label={this.label}>\n <div class={this.getClasses()} style={this.styles}>\n <cura-icon class=\"default-icon\" name={this.getNameIcon()} size={16} color={`${this.type}-dark`}></cura-icon>\n <div class=\"content\">\n <cura-heading level={4} size=\"xsmall\" color={`${this.type}-dark`} weight=\"bold\" margin-block=\"0\">\n {this.label}\n </cura-heading>\n <cura-paragraph color={`${this.type}-darker`} size=\"xsmall\" marginBlock=\"0\" lineHeight=\"133.33%\">\n <slot></slot>\n </cura-paragraph>\n <slot name=\"actions\"></slot>\n </div>\n {this.closeButton && <cura-icon class=\"close-icon\" name=\"close\" size={16} color=\"error-dark\" onClick={this.handleClose}></cura-icon>}\n {this.loader && !!this.autoCloseDelay && <cura-loader-bar color={`${this.type}-base`} progress={this.progress}></cura-loader-bar>}\n </div>\n </Host>\n );\n }\n\n componentDidLoad() {\n this.openContainer();\n this.startAnimation();\n }\n\n setStyle() {\n this.styles = {\n ...this.styles,\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor(`neutral-purewhite`),\n '--neutral-base': window.CuraAPI.theme.colors.getColor(`neutral-base`, 0.2),\n '--primary-base': window.CuraAPI.theme.colors.getColor(`primary-base`),\n '--color-base': window.CuraAPI.theme.colors.getColor(`${this.type}-base`)\n }\n }\n\n getClasses() {\n const [firstPosition, secondPosition] = this.position.split('-');\n const classes = {};\n\n classes['container'] = true;\n classes[firstPosition] = true;\n classes[secondPosition] = true;\n\n if (this.loader) {\n classes['loader'] = true;\n }\n\n return classes;\n }\n\n getNameIcon() {\n const iconMapping = {\n info: 'infoCircle',\n success: 'checkCircle',\n warning: 'alertCircle',\n error: 'alertTriangle',\n };\n return this.icon ? this.icon : iconMapping[this.type];\n }\n\n openContainer() {\n this.container = this.host.shadowRoot.querySelector('.container') as HTMLElement;\n this.container.classList.add('active');\n }\n\n closeContainer() {\n this.container.classList.remove('active');\n setTimeout(() => {\n this.toastClosed.emit();\n this.host.remove();\n }, 500);\n }\n\n handleClose = () => {\n this.closeContainer();\n };\n\n startAnimation() {\n if (!!this.autoCloseDelay) {\n if (this.loader) {\n this.progress = 0;\n let intervalId = setInterval(() => {\n if (this.progress >= 100) {\n clearInterval(intervalId);\n this.closeContainer();\n } else {\n this.progress++;\n }\n }, this.autoCloseDelay/100);\n } else {\n let intervalId = setInterval(() => {\n clearInterval(intervalId);\n this.closeContainer();\n }, this.autoCloseDelay);\n }\n }\n }\n}\n"],"names":[],"mappings":"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"}