@rededor/cura 0.5.4 → 1.0.0-alpha.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 (640) hide show
  1. package/dist/assets/icons/iconset-default-list.ts +1 -1
  2. package/dist/assets/icons/iconset-default-tmp.svg +8 -0
  3. package/dist/assets/icons/iconset-default.svg +1 -1
  4. package/dist/cjs/app-globals-bcffd819.js +511 -0
  5. package/dist/cjs/app-globals-bcffd819.js.map +1 -0
  6. package/dist/cjs/cura-accordion_9.cjs.entry.js +544 -0
  7. package/dist/cjs/cura-accordion_9.cjs.entry.js.map +1 -0
  8. package/dist/cjs/cura-alert.cjs.entry.js +57 -55
  9. package/dist/cjs/cura-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/cura-avatar.cjs.entry.js +68 -0
  11. package/dist/cjs/cura-avatar.cjs.entry.js.map +1 -0
  12. package/dist/cjs/cura-button-outline.cjs.entry.js +102 -71
  13. package/dist/cjs/cura-button-outline.cjs.entry.js.map +1 -1
  14. package/dist/cjs/cura-button-select.cjs.entry.js +91 -85
  15. package/dist/cjs/cura-button-select.cjs.entry.js.map +1 -1
  16. package/dist/cjs/cura-button-transparent_2.cjs.entry.js +4055 -0
  17. package/dist/cjs/cura-button-transparent_2.cjs.entry.js.map +1 -0
  18. package/dist/cjs/cura-calendar.cjs.entry.js +3913 -0
  19. package/dist/cjs/cura-calendar.cjs.entry.js.map +1 -0
  20. package/dist/cjs/cura-card.cjs.entry.js +53 -0
  21. package/dist/cjs/cura-card.cjs.entry.js.map +1 -0
  22. package/dist/cjs/cura-checkbox.cjs.entry.js +168 -131
  23. package/dist/cjs/cura-checkbox.cjs.entry.js.map +1 -1
  24. package/dist/cjs/cura-display.cjs.entry.js +63 -62
  25. package/dist/cjs/cura-display.cjs.entry.js.map +1 -1
  26. package/dist/cjs/cura-dropdown-search-option-title.cjs.entry.js +22 -0
  27. package/dist/cjs/cura-dropdown-search-option-title.cjs.entry.js.map +1 -0
  28. package/dist/cjs/cura-dropdown-search-option.cjs.entry.js +55 -0
  29. package/dist/cjs/cura-dropdown-search-option.cjs.entry.js.map +1 -0
  30. package/dist/cjs/cura-dropdown-search.cjs.entry.js +209 -0
  31. package/dist/cjs/cura-dropdown-search.cjs.entry.js.map +1 -0
  32. package/dist/cjs/cura-forms.definitions-c164f1b8.js +20 -0
  33. package/dist/cjs/cura-forms.definitions-c164f1b8.js.map +1 -0
  34. package/dist/cjs/cura-icon.definitions-8d714f6a.js +21 -0
  35. package/dist/cjs/cura-icon.definitions-8d714f6a.js.map +1 -0
  36. package/dist/cjs/cura-icons-view.cjs.entry.js +24 -23
  37. package/dist/cjs/cura-icons-view.cjs.entry.js.map +1 -1
  38. package/dist/cjs/cura-radio.cjs.entry.js +142 -103
  39. package/dist/cjs/cura-radio.cjs.entry.js.map +1 -1
  40. package/dist/cjs/cura-select_2.cjs.entry.js +325 -0
  41. package/dist/cjs/cura-select_2.cjs.entry.js.map +1 -0
  42. package/dist/cjs/cura-switch.cjs.entry.js +113 -78
  43. package/dist/cjs/cura-switch.cjs.entry.js.map +1 -1
  44. package/dist/cjs/cura.cjs.js +13 -22
  45. package/dist/cjs/cura.cjs.js.map +1 -1
  46. package/dist/cjs/index-5b63ff7a.js +1529 -0
  47. package/dist/cjs/index-5b63ff7a.js.map +1 -0
  48. package/dist/cjs/index.cjs.js +1 -1
  49. package/dist/cjs/index.cjs.js.map +1 -1
  50. package/dist/cjs/loader.cjs.js +6 -31
  51. package/dist/cjs/loader.cjs.js.map +1 -1
  52. package/dist/collection/api/cura-api.js +30 -30
  53. package/dist/collection/api/cura-api.js.map +1 -1
  54. package/dist/collection/api/cura-api.type.js +2 -2
  55. package/dist/collection/api/cura-api.type.js.map +1 -1
  56. package/dist/collection/api/modules/cura-theme-breakpoints-module.js +10 -10
  57. package/dist/collection/api/modules/cura-theme-breakpoints-module.js.map +1 -1
  58. package/dist/collection/api/modules/cura-theme-colors-module.js +72 -72
  59. package/dist/collection/api/modules/cura-theme-colors-module.js.map +1 -1
  60. package/dist/collection/api/modules/cura-theme-fonts-module.js +28 -28
  61. package/dist/collection/api/modules/cura-theme-fonts-module.js.map +1 -1
  62. package/dist/collection/api/modules/cura-theme-module.js +66 -66
  63. package/dist/collection/api/modules/cura-theme-module.js.map +1 -1
  64. package/dist/collection/api/modules/cura-theme-spacing-module.js +9 -9
  65. package/dist/collection/api/modules/cura-theme-spacing-module.js.map +1 -1
  66. package/dist/collection/api/theme-presets/static.js +63 -63
  67. package/dist/collection/api/theme-presets/static.js.map +1 -1
  68. package/dist/collection/api/theme-presets/theme-default.js +41 -41
  69. package/dist/collection/api/theme-presets/theme-default.js.map +1 -1
  70. package/dist/collection/api/theme-presets/theme-legacy-default.js +24 -24
  71. package/dist/collection/api/theme-presets/theme-legacy-default.js.map +1 -1
  72. package/dist/collection/api/theme-presets/theme-maternity.js +38 -38
  73. package/dist/collection/api/theme-presets/theme-maternity.js.map +1 -1
  74. package/dist/collection/api/theme-presets/theme-oncology.js +46 -46
  75. package/dist/collection/api/theme-presets/theme-oncology.js.map +1 -1
  76. package/dist/collection/api/theme-presets/theme-presets.js +8 -8
  77. package/dist/collection/api/theme-presets/theme-presets.js.map +1 -1
  78. package/dist/collection/assets/icons/iconset-default-list.js +1 -1
  79. package/dist/collection/assets/icons/iconset-default-list.js.map +1 -1
  80. package/dist/collection/assets/icons/iconset-default-tmp.svg +8 -0
  81. package/dist/collection/assets/icons/iconset-default.svg +1 -1
  82. package/dist/collection/assets/images/avatar/doctor-default.svg +8 -0
  83. package/dist/collection/assets/images/avatar/dora-default.svg +5 -0
  84. package/dist/collection/assets/images/avatar/patient-default.svg +12 -0
  85. package/dist/collection/assets/images/avatar/unit-default.svg +9 -0
  86. package/dist/collection/assets/images/logoCura.svg +15 -0
  87. package/dist/collection/assets-raw/icons/default/contacts.svg +3 -0
  88. package/dist/collection/assets-raw/icons/default/scheduleCancel.svg +3 -0
  89. package/dist/collection/collection-manifest.json +29 -21
  90. package/dist/collection/components/accordion/cura-accordion/cura-accordion.js +267 -267
  91. package/dist/collection/components/accordion/cura-accordion/cura-accordion.js.map +1 -1
  92. package/dist/collection/components/accordion/cura-accordion/cura-accordion.stories.js +127 -127
  93. package/dist/collection/components/accordion/cura-accordion/cura-accordion.stories.js.map +1 -1
  94. package/dist/collection/components/accordion/cura-accordion-item/cura-accordion-item.js +196 -196
  95. package/dist/collection/components/accordion/cura-accordion-item/cura-accordion-item.js.map +1 -1
  96. package/dist/collection/components/buttons/cura-button/cura-button.css +112 -46
  97. package/dist/collection/components/buttons/cura-button/cura-button.js +368 -306
  98. package/dist/collection/components/buttons/cura-button/cura-button.js.map +1 -1
  99. package/dist/collection/components/buttons/cura-button/cura-button.stories.js +184 -159
  100. package/dist/collection/components/buttons/cura-button/cura-button.stories.js.map +1 -1
  101. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.css +37 -64
  102. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.js +374 -306
  103. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.js.map +1 -1
  104. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.stories.js +184 -159
  105. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.stories.js.map +1 -1
  106. package/dist/collection/components/buttons/cura-button-select/cura-button-select.css +36 -23
  107. package/dist/collection/components/buttons/cura-button-select/cura-button-select.js +265 -260
  108. package/dist/collection/components/buttons/cura-button-select/cura-button-select.js.map +1 -1
  109. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.css +32 -50
  110. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.js +339 -306
  111. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.js.map +1 -1
  112. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.stories.js +172 -159
  113. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.stories.js.map +1 -1
  114. package/dist/collection/components/cura-alert/cura-alert.js +182 -164
  115. package/dist/collection/components/cura-alert/cura-alert.js.map +1 -1
  116. package/dist/collection/components/cura-alert/cura-alert.stories.js +90 -77
  117. package/dist/collection/components/cura-alert/cura-alert.stories.js.map +1 -1
  118. package/dist/collection/components/cura-avatar/cura-avatar.css +24 -0
  119. package/dist/collection/components/cura-avatar/cura-avatar.definitions.js +7 -0
  120. package/dist/collection/components/cura-avatar/cura-avatar.definitions.js.map +1 -0
  121. package/dist/collection/components/cura-avatar/cura-avatar.js +231 -0
  122. package/dist/collection/components/cura-avatar/cura-avatar.js.map +1 -0
  123. package/dist/collection/components/cura-avatar/cura-avatar.stories.js +198 -0
  124. package/dist/collection/components/cura-avatar/cura-avatar.stories.js.map +1 -0
  125. package/dist/collection/components/cura-calendar/cura-calendar.css +181 -0
  126. package/dist/collection/components/cura-calendar/cura-calendar.js +681 -0
  127. package/dist/collection/components/cura-calendar/cura-calendar.js.map +1 -0
  128. package/dist/collection/components/cura-calendar/cura-calendar.stories.js +126 -0
  129. package/dist/collection/components/cura-calendar/cura-calendar.stories.js.map +1 -0
  130. package/dist/collection/components/cura-card/cura-card.css +175 -0
  131. package/dist/collection/components/cura-card/cura-card.js +201 -0
  132. package/dist/collection/components/cura-card/cura-card.js.map +1 -0
  133. package/dist/collection/components/cura-card/cura-card.stories.js +127 -0
  134. package/dist/collection/components/cura-card/cura-card.stories.js.map +1 -0
  135. package/dist/collection/components/cura-icon/cura-icon.definitions.js +11 -11
  136. package/dist/collection/components/cura-icon/cura-icon.definitions.js.map +1 -1
  137. package/dist/collection/components/cura-icon/cura-icon.js +151 -151
  138. package/dist/collection/components/cura-icon/cura-icon.js.map +1 -1
  139. package/dist/collection/components/cura-icon/cura-icon.stories.js +60 -60
  140. package/dist/collection/components/cura-icon/cura-icon.stories.js.map +1 -1
  141. package/dist/collection/components/cura-icons-view/cura-icons-view.js +37 -37
  142. package/dist/collection/components/cura-icons-view/cura-icons-view.js.map +1 -1
  143. package/dist/collection/components/cura-icons-view/cura-icons-view.stories.js +7 -7
  144. package/dist/collection/components/cura-icons-view/cura-icons-view.stories.js.map +1 -1
  145. package/dist/collection/components/cura-page-template/cura-page-template.js +52 -52
  146. package/dist/collection/components/cura-page-template/cura-page-template.js.map +1 -1
  147. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.css +19 -11
  148. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.js +457 -427
  149. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.js.map +1 -1
  150. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.stories.js +170 -170
  151. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.stories.js.map +1 -1
  152. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.css +50 -0
  153. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.js +136 -0
  154. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.js.map +1 -0
  155. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.stories.js +56 -0
  156. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.stories.js.map +1 -0
  157. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option-title/cura-dropdown-search-option-title.css +10 -0
  158. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option-title/cura-dropdown-search-option-title.js +19 -0
  159. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search-option-title/cura-dropdown-search-option-title.js.map +1 -0
  160. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search.css +149 -0
  161. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search.js +384 -0
  162. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search.js.map +1 -0
  163. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search.stories.js +181 -0
  164. package/dist/collection/components/forms/cura-dropdown-search/cura-dropdown-search.stories.js.map +1 -0
  165. package/dist/collection/components/forms/cura-forms.definitions.js +12 -12
  166. package/dist/collection/components/forms/cura-forms.definitions.js.map +1 -1
  167. package/dist/collection/components/forms/cura-input-text/cura-input-text.css +849 -139
  168. package/dist/collection/components/forms/cura-input-text/cura-input-text.js +732 -641
  169. package/dist/collection/components/forms/cura-input-text/cura-input-text.js.map +1 -1
  170. package/dist/collection/components/forms/cura-input-text/cura-input-text.stories.js +217 -196
  171. package/dist/collection/components/forms/cura-input-text/cura-input-text.stories.js.map +1 -1
  172. package/dist/collection/components/forms/cura-input-text/mask-presets/input-mask-presets.js +40 -40
  173. package/dist/collection/components/forms/cura-input-text/mask-presets/input-mask-presets.js.map +1 -1
  174. package/dist/collection/components/forms/cura-label/cura-label.js +187 -187
  175. package/dist/collection/components/forms/cura-label/cura-label.js.map +1 -1
  176. package/dist/collection/components/forms/cura-label/cura-label.stories.js +108 -108
  177. package/dist/collection/components/forms/cura-label/cura-label.stories.js.map +1 -1
  178. package/dist/collection/components/forms/cura-radio/cura-radio.js +395 -363
  179. package/dist/collection/components/forms/cura-radio/cura-radio.js.map +1 -1
  180. package/dist/collection/components/forms/cura-radio/cura-radio.stories.js +150 -150
  181. package/dist/collection/components/forms/cura-radio/cura-radio.stories.js.map +1 -1
  182. package/dist/collection/components/forms/cura-select/cura-select.css +519 -0
  183. package/dist/collection/components/forms/cura-select/cura-select.js +444 -0
  184. package/dist/collection/components/forms/cura-select/cura-select.js.map +1 -0
  185. package/dist/collection/components/forms/cura-select/cura-select.stories.js +144 -0
  186. package/dist/collection/components/forms/cura-select/cura-select.stories.js.map +1 -0
  187. package/dist/collection/components/forms/cura-select-options/cura-select-option.css +28 -0
  188. package/dist/collection/components/forms/cura-select-options/cura-select-option.js +138 -0
  189. package/dist/collection/components/forms/cura-select-options/cura-select-option.js.map +1 -0
  190. package/dist/collection/components/forms/cura-switch/cura-switch.css +88 -24
  191. package/dist/collection/components/forms/cura-switch/cura-switch.js +292 -264
  192. package/dist/collection/components/forms/cura-switch/cura-switch.js.map +1 -1
  193. package/dist/collection/components/forms/cura-switch/cura-switch.stories.js +115 -115
  194. package/dist/collection/components/forms/cura-switch/cura-switch.stories.js.map +1 -1
  195. package/dist/collection/components/loaders/cura-loader-circle/cura-loader-circle.js +74 -74
  196. package/dist/collection/components/loaders/cura-loader-circle/cura-loader-circle.js.map +1 -1
  197. package/dist/collection/components/loaders/cura-loader-circle/cura-loader-circle.stories.js +41 -41
  198. package/dist/collection/components/loaders/cura-loader-circle/cura-loader-circle.stories.js.map +1 -1
  199. package/dist/collection/components/text/cura-display/cura-display.js +174 -174
  200. package/dist/collection/components/text/cura-display/cura-display.js.map +1 -1
  201. package/dist/collection/components/text/cura-display/cura-display.stories.js +97 -97
  202. package/dist/collection/components/text/cura-display/cura-display.stories.js.map +1 -1
  203. package/dist/collection/components/text/cura-heading/cura-heading.js +220 -220
  204. package/dist/collection/components/text/cura-heading/cura-heading.js.map +1 -1
  205. package/dist/collection/components/text/cura-heading/cura-heading.stories.js +117 -117
  206. package/dist/collection/components/text/cura-heading/cura-heading.stories.js.map +1 -1
  207. package/dist/collection/components/text/cura-paragraph/cura-paragraph.js +168 -168
  208. package/dist/collection/components/text/cura-paragraph/cura-paragraph.js.map +1 -1
  209. package/dist/collection/components/text/cura-paragraph/cura-paragraph.stories.js +98 -98
  210. package/dist/collection/components/text/cura-paragraph/cura-paragraph.stories.js.map +1 -1
  211. package/dist/collection/index.js +1 -1
  212. package/dist/collection/index.js.map +1 -1
  213. package/dist/collection/rededor-cura-start.js +7 -7
  214. package/dist/collection/rededor-cura-start.js.map +1 -1
  215. package/dist/collection/utils/utils.js +11 -11
  216. package/dist/collection/utils/utils.js.map +1 -1
  217. package/dist/components/cura-accordion-item.d.ts +2 -2
  218. package/dist/components/cura-accordion-item.js +62 -61
  219. package/dist/components/cura-accordion-item.js.map +1 -1
  220. package/dist/components/cura-accordion.d.ts +2 -2
  221. package/dist/components/cura-accordion.js +108 -104
  222. package/dist/components/cura-accordion.js.map +1 -1
  223. package/dist/components/cura-alert.d.ts +2 -2
  224. package/dist/components/cura-alert.js +93 -88
  225. package/dist/components/cura-alert.js.map +1 -1
  226. package/dist/components/cura-avatar.d.ts +11 -0
  227. package/dist/components/cura-avatar.js +95 -0
  228. package/dist/components/cura-avatar.js.map +1 -0
  229. package/dist/components/cura-button-outline.d.ts +2 -2
  230. package/dist/components/cura-button-outline.js +147 -109
  231. package/dist/components/cura-button-outline.js.map +1 -1
  232. package/dist/components/cura-button-select.d.ts +2 -2
  233. package/dist/components/cura-button-select.js +129 -113
  234. package/dist/components/cura-button-select.js.map +1 -1
  235. package/dist/components/cura-button-transparent.d.ts +2 -2
  236. package/dist/components/cura-button-transparent.js +1 -116
  237. package/dist/components/cura-button-transparent.js.map +1 -1
  238. package/dist/components/cura-button-transparent2.js +144 -0
  239. package/dist/components/cura-button-transparent2.js.map +1 -0
  240. package/dist/components/cura-button.d.ts +2 -2
  241. package/dist/components/cura-button.js +145 -109
  242. package/dist/components/cura-button.js.map +1 -1
  243. package/dist/components/cura-calendar.d.ts +11 -0
  244. package/dist/components/cura-calendar.js +3969 -0
  245. package/dist/components/cura-calendar.js.map +1 -0
  246. package/dist/components/cura-card.d.ts +11 -0
  247. package/dist/components/cura-card.js +75 -0
  248. package/dist/components/cura-card.js.map +1 -0
  249. package/dist/components/cura-checkbox.d.ts +2 -2
  250. package/dist/components/cura-checkbox.js +210 -174
  251. package/dist/components/cura-checkbox.js.map +1 -1
  252. package/dist/components/cura-display.d.ts +2 -2
  253. package/dist/components/cura-display.js +85 -81
  254. package/dist/components/cura-display.js.map +1 -1
  255. package/dist/components/cura-dropdown-search-option-title.d.ts +11 -0
  256. package/dist/components/cura-dropdown-search-option-title.js +42 -0
  257. package/dist/components/cura-dropdown-search-option-title.js.map +1 -0
  258. package/dist/components/cura-dropdown-search-option.d.ts +11 -0
  259. package/dist/components/cura-dropdown-search-option.js +82 -0
  260. package/dist/components/cura-dropdown-search-option.js.map +1 -0
  261. package/dist/components/cura-dropdown-search.d.ts +11 -0
  262. package/dist/components/cura-dropdown-search.js +272 -0
  263. package/dist/components/cura-dropdown-search.js.map +1 -0
  264. package/dist/components/cura-forms.definitions.js +12 -12
  265. package/dist/components/cura-forms.definitions.js.map +1 -1
  266. package/dist/components/cura-heading.d.ts +2 -2
  267. package/dist/components/cura-heading2.js +97 -93
  268. package/dist/components/cura-heading2.js.map +1 -1
  269. package/dist/components/cura-icon.d.ts +2 -2
  270. package/dist/components/cura-icon2.js +74 -69
  271. package/dist/components/cura-icon2.js.map +1 -1
  272. package/dist/components/cura-icons-view.d.ts +2 -2
  273. package/dist/components/cura-icons-view.js +57 -56
  274. package/dist/components/cura-icons-view.js.map +1 -1
  275. package/dist/components/cura-input-text.d.ts +2 -2
  276. package/dist/components/cura-input-text.js +1 -3954
  277. package/dist/components/cura-input-text.js.map +1 -1
  278. package/dist/{cjs/cura-input-text.cjs.entry.js → components/cura-input-text2.js} +393 -283
  279. package/dist/components/cura-input-text2.js.map +1 -0
  280. package/dist/components/cura-label.d.ts +2 -2
  281. package/dist/components/cura-label2.js +81 -77
  282. package/dist/components/cura-label2.js.map +1 -1
  283. package/dist/components/cura-loader-circle.d.ts +2 -2
  284. package/dist/components/cura-loader-circle2.js +41 -40
  285. package/dist/components/cura-loader-circle2.js.map +1 -1
  286. package/dist/components/cura-page-template.d.ts +2 -2
  287. package/dist/components/cura-page-template.js +36 -35
  288. package/dist/components/cura-page-template.js.map +1 -1
  289. package/dist/components/cura-paragraph.d.ts +2 -2
  290. package/dist/components/cura-paragraph2.js +79 -75
  291. package/dist/components/cura-paragraph2.js.map +1 -1
  292. package/dist/components/cura-radio.d.ts +2 -2
  293. package/dist/components/cura-radio.js +176 -139
  294. package/dist/components/cura-radio.js.map +1 -1
  295. package/dist/components/cura-select-option.d.ts +11 -0
  296. package/dist/components/cura-select-option.js +8 -0
  297. package/dist/components/cura-select-option.js.map +1 -0
  298. package/dist/components/cura-select-option2.js +87 -0
  299. package/dist/components/cura-select-option2.js.map +1 -0
  300. package/dist/components/cura-select.d.ts +11 -0
  301. package/dist/components/cura-select.js +8 -0
  302. package/dist/components/cura-select.js.map +1 -0
  303. package/dist/components/cura-select2.js +308 -0
  304. package/dist/components/cura-select2.js.map +1 -0
  305. package/dist/components/cura-switch.d.ts +2 -2
  306. package/dist/components/cura-switch.js +138 -105
  307. package/dist/components/cura-switch.js.map +1 -1
  308. package/dist/components/index.d.ts +6 -0
  309. package/dist/components/index.js +482 -466
  310. package/dist/components/index.js.map +1 -1
  311. package/dist/cura/cura.esm.js +1 -1
  312. package/dist/cura/cura.esm.js.map +1 -1
  313. package/dist/cura/index.esm.js.map +1 -1
  314. package/dist/cura/p-12d75346.entry.js +2 -0
  315. package/dist/cura/p-12d75346.entry.js.map +1 -0
  316. package/dist/cura/p-2176f253.entry.js +2 -0
  317. package/dist/cura/p-2176f253.entry.js.map +1 -0
  318. package/dist/cura/p-22292bfa.entry.js +2 -0
  319. package/dist/cura/p-22292bfa.entry.js.map +1 -0
  320. package/dist/cura/p-2a8be665.entry.js +2 -0
  321. package/dist/cura/p-2a8be665.entry.js.map +1 -0
  322. package/dist/cura/p-2d70b515.entry.js +2 -0
  323. package/dist/cura/p-2d70b515.entry.js.map +1 -0
  324. package/dist/cura/p-3c2ebc3a.entry.js +2 -0
  325. package/dist/cura/p-3c2ebc3a.entry.js.map +1 -0
  326. package/dist/cura/p-45a0a5e8.entry.js +2 -0
  327. package/dist/cura/p-45a0a5e8.entry.js.map +1 -0
  328. package/dist/cura/p-586bbe43.js +3 -0
  329. package/dist/cura/p-586bbe43.js.map +1 -0
  330. package/dist/cura/p-5d8e3ee3.entry.js +2 -0
  331. package/dist/cura/p-5d8e3ee3.entry.js.map +1 -0
  332. package/dist/cura/{p-f8fffdc1.js → p-70c369b1.js} +1 -1
  333. package/dist/cura/p-70c369b1.js.map +1 -0
  334. package/dist/cura/p-7c41f034.entry.js +2 -0
  335. package/dist/cura/p-7c41f034.entry.js.map +1 -0
  336. package/dist/cura/p-8cecf9e5.entry.js +2 -0
  337. package/dist/cura/p-8cecf9e5.entry.js.map +1 -0
  338. package/dist/cura/p-94b5c3b3.entry.js +2 -0
  339. package/dist/cura/p-94b5c3b3.entry.js.map +1 -0
  340. package/dist/cura/p-a5456007.entry.js +2 -0
  341. package/dist/cura/p-a5456007.entry.js.map +1 -0
  342. package/dist/cura/{p-c791725b.js → p-a7221f0c.js} +1 -1
  343. package/dist/{esm-es5/cura-icon.definitions-a63d1862.js.map → cura/p-a7221f0c.js.map} +1 -1
  344. package/dist/cura/p-cd757625.entry.js +2 -0
  345. package/dist/cura/p-cd757625.entry.js.map +1 -0
  346. package/dist/cura/p-de870781.entry.js +2 -0
  347. package/dist/cura/p-de870781.entry.js.map +1 -0
  348. package/dist/cura/p-e661bcca.entry.js +2 -0
  349. package/dist/cura/p-e661bcca.entry.js.map +1 -0
  350. package/dist/cura/p-ee7388a5.entry.js +2 -0
  351. package/dist/cura/p-ee7388a5.entry.js.map +1 -0
  352. package/dist/cura/{p-3688570d.js → p-f9b8f665.js} +1 -1
  353. package/dist/{esm-es5/cura-forms.definitions-0f774253.js.map → cura/p-f9b8f665.js.map} +1 -1
  354. package/dist/cura/p-fb9bece3.entry.js +2 -0
  355. package/dist/cura/p-fb9bece3.entry.js.map +1 -0
  356. package/dist/esm/app-globals-f2da2b14.js +509 -0
  357. package/dist/esm/app-globals-f2da2b14.js.map +1 -0
  358. package/dist/esm/cura-accordion_9.entry.js +532 -0
  359. package/dist/esm/cura-accordion_9.entry.js.map +1 -0
  360. package/dist/esm/cura-alert.entry.js +57 -55
  361. package/dist/esm/cura-alert.entry.js.map +1 -1
  362. package/dist/esm/cura-avatar.entry.js +64 -0
  363. package/dist/esm/cura-avatar.entry.js.map +1 -0
  364. package/dist/esm/cura-button-outline.entry.js +102 -71
  365. package/dist/esm/cura-button-outline.entry.js.map +1 -1
  366. package/dist/esm/cura-button-select.entry.js +91 -85
  367. package/dist/esm/cura-button-select.entry.js.map +1 -1
  368. package/dist/esm/{cura-input-text.entry.js → cura-button-transparent_2.entry.js} +423 -276
  369. package/dist/esm/cura-button-transparent_2.entry.js.map +1 -0
  370. package/dist/esm/cura-calendar.entry.js +3909 -0
  371. package/dist/esm/cura-calendar.entry.js.map +1 -0
  372. package/dist/esm/cura-card.entry.js +49 -0
  373. package/dist/esm/cura-card.entry.js.map +1 -0
  374. package/dist/esm/cura-checkbox.entry.js +168 -131
  375. package/dist/esm/cura-checkbox.entry.js.map +1 -1
  376. package/dist/esm/cura-display.entry.js +63 -62
  377. package/dist/esm/cura-display.entry.js.map +1 -1
  378. package/dist/esm/cura-dropdown-search-option-title.entry.js +18 -0
  379. package/dist/esm/cura-dropdown-search-option-title.entry.js.map +1 -0
  380. package/dist/esm/cura-dropdown-search-option.entry.js +51 -0
  381. package/dist/esm/cura-dropdown-search-option.entry.js.map +1 -0
  382. package/dist/esm/cura-dropdown-search.entry.js +205 -0
  383. package/dist/esm/cura-dropdown-search.entry.js.map +1 -0
  384. package/dist/esm/cura-forms.definitions-2f963167.js +18 -0
  385. package/dist/esm/cura-forms.definitions-2f963167.js.map +1 -0
  386. package/dist/esm/cura-icon.definitions-aaa4e80f.js +18 -0
  387. package/dist/esm/cura-icon.definitions-aaa4e80f.js.map +1 -0
  388. package/dist/esm/cura-icons-view.entry.js +24 -23
  389. package/dist/esm/cura-icons-view.entry.js.map +1 -1
  390. package/dist/esm/cura-radio.entry.js +142 -103
  391. package/dist/esm/cura-radio.entry.js.map +1 -1
  392. package/dist/esm/cura-select_2.entry.js +320 -0
  393. package/dist/esm/cura-select_2.entry.js.map +1 -0
  394. package/dist/esm/cura-switch.entry.js +113 -78
  395. package/dist/esm/cura-switch.entry.js.map +1 -1
  396. package/dist/esm/cura.js +14 -23
  397. package/dist/esm/cura.js.map +1 -1
  398. package/dist/esm/index-b6c443d5.js +1500 -0
  399. package/dist/esm/index-b6c443d5.js.map +1 -0
  400. package/dist/esm/index.js +1 -1
  401. package/dist/esm/index.js.map +1 -1
  402. package/dist/esm/loader.js +8 -33
  403. package/dist/esm/loader.js.map +1 -1
  404. package/dist/index.js +1 -1
  405. package/dist/loader/cdn.js +1 -3
  406. package/dist/loader/index.cjs.js +1 -3
  407. package/dist/loader/index.d.ts +4 -1
  408. package/dist/loader/index.es2017.js +1 -3
  409. package/dist/loader/index.js +1 -3
  410. package/dist/types/api/cura-api.d.ts +3 -3
  411. package/dist/types/api/cura-api.type.d.ts +44 -44
  412. package/dist/types/api/modules/cura-theme-breakpoints-module.d.ts +3 -3
  413. package/dist/types/api/modules/cura-theme-colors-module.d.ts +46 -46
  414. package/dist/types/api/modules/cura-theme-fonts-module.d.ts +22 -22
  415. package/dist/types/api/modules/cura-theme-module.d.ts +25 -25
  416. package/dist/types/api/modules/cura-theme-spacing-module.d.ts +4 -4
  417. package/dist/types/api/theme-presets/static.d.ts +62 -62
  418. package/dist/types/api/theme-presets/theme-default.d.ts +38 -38
  419. package/dist/types/api/theme-presets/theme-legacy-default.d.ts +38 -38
  420. package/dist/types/api/theme-presets/theme-maternity.d.ts +38 -38
  421. package/dist/types/api/theme-presets/theme-oncology.d.ts +45 -45
  422. package/dist/types/api/theme-presets/theme-presets.d.ts +175 -175
  423. package/dist/types/components/accordion/cura-accordion/cura-accordion.d.ts +37 -37
  424. package/dist/types/components/accordion/cura-accordion/cura-accordion.stories.d.ts +140 -140
  425. package/dist/types/components/accordion/cura-accordion-item/cura-accordion-item.d.ts +27 -27
  426. package/dist/types/components/buttons/cura-button/cura-button.d.ts +70 -59
  427. package/dist/types/components/buttons/cura-button/cura-button.stories.d.ts +184 -155
  428. package/dist/types/components/buttons/cura-button-outline/cura-button-outline.d.ts +70 -59
  429. package/dist/types/components/buttons/cura-button-outline/cura-button-outline.stories.d.ts +184 -155
  430. package/dist/types/components/buttons/cura-button-select/cura-button-select.d.ts +48 -47
  431. package/dist/types/components/buttons/cura-button-transparent/cura-button-transparent.d.ts +65 -59
  432. package/dist/types/components/buttons/cura-button-transparent/cura-button-transparent.stories.d.ts +169 -155
  433. package/dist/types/components/cura-alert/cura-alert.d.ts +14 -13
  434. package/dist/types/components/cura-alert/cura-alert.stories.d.ts +85 -70
  435. package/dist/types/components/cura-avatar/cura-avatar.d.ts +24 -0
  436. package/dist/types/components/cura-avatar/cura-avatar.definitions.d.ts +14 -0
  437. package/dist/types/components/cura-avatar/cura-avatar.stories.d.ts +167 -0
  438. package/dist/types/components/cura-calendar/cura-calendar.d.ts +323 -0
  439. package/dist/types/components/cura-calendar/cura-calendar.stories.d.ts +128 -0
  440. package/dist/types/components/cura-card/cura-card.d.ts +48 -0
  441. package/dist/types/components/cura-card/cura-card.stories.d.ts +98 -0
  442. package/dist/types/components/cura-icon/cura-icon.d.ts +12 -12
  443. package/dist/types/components/cura-icon/cura-icon.definitions.d.ts +44 -44
  444. package/dist/types/components/cura-icon/cura-icon.stories.d.ts +56 -56
  445. package/dist/types/components/cura-icons-view/cura-icons-view.d.ts +6 -6
  446. package/dist/types/components/cura-icons-view/cura-icons-view.stories.d.ts +3 -3
  447. package/dist/types/components/cura-page-template/cura-page-template.d.ts +6 -6
  448. package/dist/types/components/forms/cura-checkbox/cura-checkbox.d.ts +111 -95
  449. package/dist/types/components/forms/cura-checkbox/cura-checkbox.stories.d.ts +193 -193
  450. package/dist/types/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.d.ts +27 -0
  451. package/dist/types/components/forms/cura-dropdown-search/cura-dropdown-search-option/cura-dropdown-search-option.stories.d.ts +44 -0
  452. package/dist/types/components/forms/cura-dropdown-search/cura-dropdown-search-option-title/cura-dropdown-search-option-title.d.ts +3 -0
  453. package/dist/types/components/forms/cura-dropdown-search/cura-dropdown-search.d.ts +103 -0
  454. package/dist/types/components/forms/cura-dropdown-search/cura-dropdown-search.stories.d.ts +112 -0
  455. package/dist/types/components/forms/cura-forms.definitions.d.ts +12 -12
  456. package/dist/types/components/forms/cura-input-text/cura-input-text.d.ts +169 -132
  457. package/dist/types/components/forms/cura-input-text/cura-input-text.stories.d.ts +241 -218
  458. package/dist/types/components/forms/cura-input-text/mask-presets/input-mask-presets.d.ts +1 -2
  459. package/dist/types/components/forms/cura-label/cura-label.d.ts +52 -52
  460. package/dist/types/components/forms/cura-label/cura-label.stories.d.ts +112 -112
  461. package/dist/types/components/forms/cura-radio/cura-radio.d.ts +96 -74
  462. package/dist/types/components/forms/cura-radio/cura-radio.stories.d.ts +162 -162
  463. package/dist/types/components/forms/cura-select/cura-select.d.ts +176 -0
  464. package/dist/types/components/forms/cura-select/cura-select.stories.d.ts +156 -0
  465. package/dist/types/components/forms/cura-select-options/cura-select-option.d.ts +17 -0
  466. package/dist/types/components/forms/cura-switch/cura-switch.d.ts +78 -57
  467. package/dist/types/components/forms/cura-switch/cura-switch.stories.d.ts +121 -121
  468. package/dist/types/components/loaders/cura-loader-circle/cura-loader-circle.d.ts +21 -21
  469. package/dist/types/components/loaders/cura-loader-circle/cura-loader-circle.stories.d.ts +35 -35
  470. package/dist/types/components/text/cura-display/cura-display.d.ts +47 -47
  471. package/dist/types/components/text/cura-display/cura-display.stories.d.ts +101 -101
  472. package/dist/types/components/text/cura-heading/cura-heading.d.ts +58 -58
  473. package/dist/types/components/text/cura-heading/cura-heading.stories.d.ts +127 -127
  474. package/dist/types/components/text/cura-paragraph/cura-paragraph.d.ts +47 -47
  475. package/dist/types/components/text/cura-paragraph/cura-paragraph.stories.d.ts +99 -99
  476. package/dist/types/components.d.ts +689 -13
  477. package/dist/types/index.d.ts +4 -4
  478. package/dist/types/rededor-cura-start.d.ts +4 -4
  479. package/dist/types/stencil-public-runtime.d.ts +51 -15
  480. package/package.json +5 -5
  481. package/dist/cjs/app-globals-2988084b.js +0 -511
  482. package/dist/cjs/app-globals-2988084b.js.map +0 -1
  483. package/dist/cjs/css-shim-83cf0349.js +0 -8
  484. package/dist/cjs/css-shim-83cf0349.js.map +0 -1
  485. package/dist/cjs/cura-accordion_8.cjs.entry.js +0 -445
  486. package/dist/cjs/cura-accordion_8.cjs.entry.js.map +0 -1
  487. package/dist/cjs/cura-button-transparent.cjs.entry.js +0 -83
  488. package/dist/cjs/cura-button-transparent.cjs.entry.js.map +0 -1
  489. package/dist/cjs/cura-forms.definitions-11be2ebd.js +0 -20
  490. package/dist/cjs/cura-forms.definitions-11be2ebd.js.map +0 -1
  491. package/dist/cjs/cura-icon.definitions-b73b0178.js +0 -21
  492. package/dist/cjs/cura-icon.definitions-b73b0178.js.map +0 -1
  493. package/dist/cjs/cura-input-text.cjs.entry.js.map +0 -1
  494. package/dist/cjs/cura-label.cjs.entry.js +0 -69
  495. package/dist/cjs/cura-label.cjs.entry.js.map +0 -1
  496. package/dist/cjs/index-7616f620.js +0 -2281
  497. package/dist/cjs/index-7616f620.js.map +0 -1
  498. package/dist/cjs/shadow-css-8baae635.js +0 -391
  499. package/dist/cjs/shadow-css-8baae635.js.map +0 -1
  500. package/dist/collection/utils/utils.spec.js +0 -16
  501. package/dist/collection/utils/utils.spec.js.map +0 -1
  502. package/dist/cura/cura.js +0 -133
  503. package/dist/cura/p-118112e5.system.js +0 -14
  504. package/dist/cura/p-118112e5.system.js.map +0 -1
  505. package/dist/cura/p-120926c5.system.js +0 -2
  506. package/dist/cura/p-120926c5.system.js.map +0 -1
  507. package/dist/cura/p-1228e771.entry.js +0 -2
  508. package/dist/cura/p-1228e771.entry.js.map +0 -1
  509. package/dist/cura/p-183305c3.js +0 -2
  510. package/dist/cura/p-183305c3.js.map +0 -1
  511. package/dist/cura/p-2d42ccf4.entry.js +0 -2
  512. package/dist/cura/p-2d42ccf4.entry.js.map +0 -1
  513. package/dist/cura/p-3688570d.js.map +0 -1
  514. package/dist/cura/p-36a83bc7.system.js +0 -3
  515. package/dist/cura/p-36a83bc7.system.js.map +0 -1
  516. package/dist/cura/p-3f3355f3.system.entry.js +0 -2
  517. package/dist/cura/p-3f3355f3.system.entry.js.map +0 -1
  518. package/dist/cura/p-3f5de5e2.entry.js +0 -2
  519. package/dist/cura/p-3f5de5e2.entry.js.map +0 -1
  520. package/dist/cura/p-3f6aaefc.system.js +0 -2
  521. package/dist/cura/p-3f6aaefc.system.js.map +0 -1
  522. package/dist/cura/p-48426f60.system.js +0 -2
  523. package/dist/cura/p-48426f60.system.js.map +0 -1
  524. package/dist/cura/p-4db87e8d.system.entry.js +0 -2
  525. package/dist/cura/p-4db87e8d.system.entry.js.map +0 -1
  526. package/dist/cura/p-51e00a16.entry.js +0 -2
  527. package/dist/cura/p-51e00a16.entry.js.map +0 -1
  528. package/dist/cura/p-72a9ed55.entry.js +0 -2
  529. package/dist/cura/p-72a9ed55.entry.js.map +0 -1
  530. package/dist/cura/p-75b2e4d1.system.entry.js +0 -2
  531. package/dist/cura/p-75b2e4d1.system.entry.js.map +0 -1
  532. package/dist/cura/p-880917c1.entry.js +0 -2
  533. package/dist/cura/p-880917c1.entry.js.map +0 -1
  534. package/dist/cura/p-8d959fb2.entry.js +0 -2
  535. package/dist/cura/p-8d959fb2.entry.js.map +0 -1
  536. package/dist/cura/p-9471c93e.system.entry.js +0 -2
  537. package/dist/cura/p-9471c93e.system.entry.js.map +0 -1
  538. package/dist/cura/p-98014544.entry.js +0 -2
  539. package/dist/cura/p-98014544.entry.js.map +0 -1
  540. package/dist/cura/p-98352c92.system.entry.js +0 -2
  541. package/dist/cura/p-98352c92.system.entry.js.map +0 -1
  542. package/dist/cura/p-a32889a4.system.js +0 -2
  543. package/dist/cura/p-a32889a4.system.js.map +0 -1
  544. package/dist/cura/p-ab8c9a8f.system.entry.js +0 -2
  545. package/dist/cura/p-ab8c9a8f.system.entry.js.map +0 -1
  546. package/dist/cura/p-ad194144.entry.js +0 -2
  547. package/dist/cura/p-ad194144.entry.js.map +0 -1
  548. package/dist/cura/p-b0e13882.system.entry.js +0 -2
  549. package/dist/cura/p-b0e13882.system.entry.js.map +0 -1
  550. package/dist/cura/p-ba66d7be.js +0 -3
  551. package/dist/cura/p-ba66d7be.js.map +0 -1
  552. package/dist/cura/p-bb3f9d05.entry.js +0 -2
  553. package/dist/cura/p-bb3f9d05.entry.js.map +0 -1
  554. package/dist/cura/p-beab48cd.js +0 -13
  555. package/dist/cura/p-beab48cd.js.map +0 -1
  556. package/dist/cura/p-c791725b.js.map +0 -1
  557. package/dist/cura/p-cb4e2a0c.system.entry.js +0 -2
  558. package/dist/cura/p-cb4e2a0c.system.entry.js.map +0 -1
  559. package/dist/cura/p-d3f9c888.system.js +0 -2
  560. package/dist/cura/p-d3f9c888.system.js.map +0 -1
  561. package/dist/cura/p-e5e259fd.system.entry.js +0 -2
  562. package/dist/cura/p-e5e259fd.system.entry.js.map +0 -1
  563. package/dist/cura/p-edeffbfc.entry.js +0 -2
  564. package/dist/cura/p-edeffbfc.entry.js.map +0 -1
  565. package/dist/cura/p-f51705c2.system.entry.js +0 -2
  566. package/dist/cura/p-f51705c2.system.entry.js.map +0 -1
  567. package/dist/cura/p-f89f2ecc.system.entry.js +0 -2
  568. package/dist/cura/p-f89f2ecc.system.entry.js.map +0 -1
  569. package/dist/cura/p-f8fffdc1.js.map +0 -1
  570. package/dist/cura/p-fc4ba4ce.system.js +0 -2
  571. package/dist/cura/p-fc4ba4ce.system.js.map +0 -1
  572. package/dist/cura/p-fef52079.entry.js +0 -2
  573. package/dist/cura/p-fef52079.entry.js.map +0 -1
  574. package/dist/cura/p-ffd41520.system.entry.js +0 -2
  575. package/dist/cura/p-ffd41520.system.entry.js.map +0 -1
  576. package/dist/esm/app-globals-29001758.js +0 -509
  577. package/dist/esm/app-globals-29001758.js.map +0 -1
  578. package/dist/esm/css-shim-d13f0738.js +0 -6
  579. package/dist/esm/css-shim-d13f0738.js.map +0 -1
  580. package/dist/esm/cura-accordion_8.entry.js +0 -434
  581. package/dist/esm/cura-accordion_8.entry.js.map +0 -1
  582. package/dist/esm/cura-button-transparent.entry.js +0 -79
  583. package/dist/esm/cura-button-transparent.entry.js.map +0 -1
  584. package/dist/esm/cura-forms.definitions-0f774253.js +0 -18
  585. package/dist/esm/cura-forms.definitions-0f774253.js.map +0 -1
  586. package/dist/esm/cura-icon.definitions-a63d1862.js +0 -18
  587. package/dist/esm/cura-icon.definitions-a63d1862.js.map +0 -1
  588. package/dist/esm/cura-input-text.entry.js.map +0 -1
  589. package/dist/esm/cura-label.entry.js +0 -65
  590. package/dist/esm/cura-label.entry.js.map +0 -1
  591. package/dist/esm/index-81f1a268.js +0 -2249
  592. package/dist/esm/index-81f1a268.js.map +0 -1
  593. package/dist/esm/polyfills/core-js.js +0 -11
  594. package/dist/esm/polyfills/css-shim.js +0 -1
  595. package/dist/esm/polyfills/dom.js +0 -79
  596. package/dist/esm/polyfills/es5-html-element.js +0 -1
  597. package/dist/esm/polyfills/index.js +0 -34
  598. package/dist/esm/polyfills/system.js +0 -6
  599. package/dist/esm/shadow-css-07b0c8c8.js +0 -389
  600. package/dist/esm/shadow-css-07b0c8c8.js.map +0 -1
  601. package/dist/esm-es5/app-globals-29001758.js +0 -2
  602. package/dist/esm-es5/app-globals-29001758.js.map +0 -1
  603. package/dist/esm-es5/css-shim-d13f0738.js +0 -2
  604. package/dist/esm-es5/css-shim-d13f0738.js.map +0 -1
  605. package/dist/esm-es5/cura-accordion_8.entry.js +0 -2
  606. package/dist/esm-es5/cura-accordion_8.entry.js.map +0 -1
  607. package/dist/esm-es5/cura-alert.entry.js +0 -2
  608. package/dist/esm-es5/cura-alert.entry.js.map +0 -1
  609. package/dist/esm-es5/cura-button-outline.entry.js +0 -2
  610. package/dist/esm-es5/cura-button-outline.entry.js.map +0 -1
  611. package/dist/esm-es5/cura-button-select.entry.js +0 -2
  612. package/dist/esm-es5/cura-button-select.entry.js.map +0 -1
  613. package/dist/esm-es5/cura-button-transparent.entry.js +0 -2
  614. package/dist/esm-es5/cura-button-transparent.entry.js.map +0 -1
  615. package/dist/esm-es5/cura-checkbox.entry.js +0 -2
  616. package/dist/esm-es5/cura-checkbox.entry.js.map +0 -1
  617. package/dist/esm-es5/cura-display.entry.js +0 -2
  618. package/dist/esm-es5/cura-display.entry.js.map +0 -1
  619. package/dist/esm-es5/cura-forms.definitions-0f774253.js +0 -2
  620. package/dist/esm-es5/cura-icon.definitions-a63d1862.js +0 -2
  621. package/dist/esm-es5/cura-icons-view.entry.js +0 -2
  622. package/dist/esm-es5/cura-icons-view.entry.js.map +0 -1
  623. package/dist/esm-es5/cura-input-text.entry.js +0 -2
  624. package/dist/esm-es5/cura-input-text.entry.js.map +0 -1
  625. package/dist/esm-es5/cura-label.entry.js +0 -2
  626. package/dist/esm-es5/cura-label.entry.js.map +0 -1
  627. package/dist/esm-es5/cura-radio.entry.js +0 -2
  628. package/dist/esm-es5/cura-radio.entry.js.map +0 -1
  629. package/dist/esm-es5/cura-switch.entry.js +0 -2
  630. package/dist/esm-es5/cura-switch.entry.js.map +0 -1
  631. package/dist/esm-es5/cura.js +0 -2
  632. package/dist/esm-es5/cura.js.map +0 -1
  633. package/dist/esm-es5/index-81f1a268.js +0 -3
  634. package/dist/esm-es5/index-81f1a268.js.map +0 -1
  635. package/dist/esm-es5/index.js +0 -2
  636. package/dist/esm-es5/index.js.map +0 -1
  637. package/dist/esm-es5/loader.js +0 -2
  638. package/dist/esm-es5/loader.js.map +0 -1
  639. package/dist/esm-es5/shadow-css-07b0c8c8.js +0 -13
  640. package/dist/esm-es5/shadow-css-07b0c8c8.js.map +0 -1
@@ -0,0 +1,444 @@
1
+ import { Host, h } from "@stencil/core";
2
+ export class CuraSelect {
3
+ constructor() {
4
+ /**
5
+ * Styles to be applied to the component.
6
+ */
7
+ this.styles = {};
8
+ /**
9
+ * Theme object containing font and color information.
10
+ */
11
+ this.theme = window.CuraAPI.theme;
12
+ /**
13
+ * Handles mutations observed by the MutationObserver.
14
+ * Updates the selected option or filters options based on the mutation type.
15
+ */
16
+ this.handleMutations = (mutations) => {
17
+ mutations.forEach(mutation => {
18
+ if (mutation.type === 'attributes') {
19
+ if (mutation.attributeName === 'selected')
20
+ this.updateSelectedOption();
21
+ if (mutation.attributeName === 'value')
22
+ this.filterOptions();
23
+ }
24
+ });
25
+ };
26
+ /**
27
+ * Handles the selection of an option.
28
+ */
29
+ this.onOptiselected = (event) => {
30
+ const selectedOption = event.target;
31
+ this.clearSelectedAttributes();
32
+ selectedOption.setAttribute('selected', 'true');
33
+ };
34
+ this.handleKeyDown = (event) => {
35
+ var _a;
36
+ if (!this.isOpen)
37
+ return;
38
+ const { key } = event;
39
+ if (key === 'ArrowDown') {
40
+ event.preventDefault();
41
+ this.updateActiveIndex(1);
42
+ }
43
+ if (key === 'ArrowUp') {
44
+ event.preventDefault();
45
+ this.updateActiveIndex(-1);
46
+ }
47
+ if (key === 'Enter') {
48
+ (_a = this.options[this.activeIndex]) === null || _a === void 0 ? void 0 : _a.click();
49
+ }
50
+ };
51
+ this.handleInputChange = (e) => {
52
+ this.value = e.target.value;
53
+ this.isOpen = !!this.value.length;
54
+ this.internals.setFormValue(this.value);
55
+ };
56
+ this.handleClick = (event) => {
57
+ if (this.disabled)
58
+ return event.preventDefault();
59
+ const target = event.target;
60
+ if (target.tagName === 'CURA-SELECT-OPTION')
61
+ return this.onOptiselected(event);
62
+ this.isOpen = !this.isOpen;
63
+ };
64
+ this.label = '';
65
+ this.placeholder = '';
66
+ this.value = '';
67
+ this.mode = 'default';
68
+ this.size = 'medium';
69
+ this.status = 'default';
70
+ this.disabled = false;
71
+ this.required = false;
72
+ this.isHovered = false;
73
+ this.isFocused = false;
74
+ this.isOpen = false;
75
+ this.options = undefined;
76
+ this.activeIndex = -1;
77
+ }
78
+ /**
79
+ * Callback for form association.
80
+ */
81
+ formAssociatedCallback(form) {
82
+ form.ariaLabel = this.label;
83
+ }
84
+ /**
85
+ * Callback to restore the switch state from the form.
86
+ */
87
+ formStateRestoreCallback(state) {
88
+ this.value = state.value;
89
+ this.updateSelectedOption();
90
+ }
91
+ /**
92
+ * Callback to reset the switch state when the form is reset.
93
+ */
94
+ formResetCallback() {
95
+ this.value = '';
96
+ this.clearSelectedAttributes();
97
+ this.internals.setFormValue(this.value);
98
+ this.internals.setValidity({});
99
+ }
100
+ /**
101
+ * Callback to update the switch's disabled state when the form's disabled state changes.
102
+ */
103
+ formDisabledCallback(disabled) {
104
+ this.disabled = disabled;
105
+ }
106
+ /**
107
+ * Lifecycle method called before the component is rendered.
108
+ * Initializes the options for the select component.
109
+ */
110
+ componentWillLoad() {
111
+ this.initializeOptions();
112
+ }
113
+ /**
114
+ * Lifecycle method called after the component is rendered.
115
+ * Initializes select-related functionality.
116
+ */
117
+ componentDidLoad() {
118
+ this.setupMutationObserver();
119
+ }
120
+ /**
121
+ * Lifecycle method called when the component is connected to the DOM.
122
+ * Applies styles based on the theme.
123
+ */
124
+ connectedCallback() {
125
+ this.applyStyles();
126
+ }
127
+ /**
128
+ * Lifecycle method called when the component is disconnected from the DOM.
129
+ * Disconnects the MutationObserver if it exists.
130
+ */
131
+ disconnectedCallback() {
132
+ var _a;
133
+ (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
134
+ }
135
+ initializeOptions() {
136
+ this.options = this.host.querySelectorAll('cura-select-option');
137
+ this.options.forEach(option => {
138
+ option.setAttribute('size', this.size);
139
+ option.setAttribute('selected', 'false');
140
+ });
141
+ }
142
+ /**
143
+ * Applies styles to the component based on the theme.
144
+ */
145
+ applyStyles() {
146
+ const { fonts, colors } = this.theme;
147
+ const fontWeights = fonts.getWeights();
148
+ this.styles = Object.assign(Object.assign({}, this.styles), { '--font-weight-medium': fontWeights.medium, '--font-weight-bold': fontWeights.bold, '--font-weight-regular': fontWeights.regular, '--font-color': fonts.getColor(), '--font-family': fonts.getFamily(), '--font-size': fonts.getSize() });
149
+ const colorKeys = [
150
+ 'primary-base', 'neutral-purewhite', 'neutral-white', 'neutral-black', 'neutral-medium', 'neutral-light',
151
+ 'neutral-base', 'neutral-dark', 'success-dark', 'success-darker', 'success-lighter',
152
+ 'error-lighter', 'error-dark', 'error-darker', 'error-base', 'info-base'
153
+ ];
154
+ colorKeys.forEach(key => {
155
+ this.styles[`--${key}`] = colors.getColor(key);
156
+ });
157
+ }
158
+ /**
159
+ * Sets up a MutationObserver to watch for changes in the component.
160
+ */
161
+ setupMutationObserver() {
162
+ this.mutationObserver = new MutationObserver(this.handleMutations);
163
+ this.mutationObserver.observe(this.host, { attributes: true, subtree: true, attributeFilter: ['selected', 'value'] });
164
+ }
165
+ updateSelectedOption() {
166
+ const selectedOption = this.host.querySelector('cura-select-option[selected]');
167
+ if (selectedOption) {
168
+ const selectedValue = selectedOption.textContent;
169
+ if (this.value !== selectedValue) {
170
+ this.value = selectedValue;
171
+ this.isOpen = false;
172
+ this.internals.setFormValue(this.value);
173
+ this.selected.emit({ value: this.value, selected: true });
174
+ }
175
+ }
176
+ }
177
+ /**
178
+ * Clears the 'selected' attribute from all options.
179
+ */
180
+ clearSelectedAttributes() {
181
+ this.options.forEach(option => option.removeAttribute('selected'));
182
+ }
183
+ /**
184
+ * Filters the options based on the current input value.
185
+ */
186
+ filterOptions() {
187
+ const inputValue = this.value.toLowerCase();
188
+ this.options.forEach(option => {
189
+ var _a;
190
+ const optionValue = ((_a = option.textContent) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || '';
191
+ const isVisible = this.isOpen ? optionValue.includes(inputValue) : true;
192
+ option.style.display = isVisible ? 'block' : 'none';
193
+ });
194
+ }
195
+ updateActiveIndex(direction) {
196
+ if (this.options.length === 0)
197
+ return;
198
+ this.activeIndex = (this.activeIndex + direction + this.options.length) % this.options.length;
199
+ this.updateOptionHighlights();
200
+ }
201
+ updateOptionHighlights() {
202
+ this.options.forEach((option, index) => option.active = index === this.activeIndex);
203
+ }
204
+ getClasses() {
205
+ return {
206
+ wrapper: true,
207
+ label: !!this.label,
208
+ disabled: this.disabled,
209
+ transparent: this.mode === 'transparent',
210
+ [this.size.toLowerCase()]: true,
211
+ [this.status.toLowerCase()]: true,
212
+ };
213
+ }
214
+ /**
215
+ * Determines the color based on the item type and component state.
216
+ */
217
+ getColor(item) {
218
+ if (this.disabled)
219
+ return 'neutral-medium';
220
+ const isStatusDefault = this.status === 'default';
221
+ const isHoveredOrFocused = this.isFocused || this.isHovered;
222
+ if (item === 'label') {
223
+ if (!isStatusDefault || isHoveredOrFocused)
224
+ return 'neutral-black';
225
+ return 'neutral-dark';
226
+ }
227
+ if (isHoveredOrFocused && isStatusDefault)
228
+ return 'neutral-black';
229
+ if (this.status === 'success')
230
+ return 'success-dark';
231
+ if (this.status === 'error')
232
+ return 'error-dark';
233
+ return 'neutral-dark';
234
+ }
235
+ /**
236
+ * Renders the icon based on the component's status.
237
+ */
238
+ renderIcon() {
239
+ if (this.status === 'default')
240
+ return null;
241
+ const icon = { success: 'checkCircle', error: 'alertCircle' }[this.status];
242
+ return (h("cura-icon", { class: 'feedback-icon', name: icon, iconset: 'default', size: this.size === 'large' ? 20 : 16, color: this.getColor('icon'), style: this.styles }));
243
+ }
244
+ render() {
245
+ return (h(Host, { key: '25024f752db0a0189ece93612e54a43b47668efd', style: this.styles }, h("div", { key: 'eae2f00129bb2d82fa1586ce7f6e2e4bb71b20de', class: this.getClasses(), tabIndex: 0, ref: (el) => (this.selectRef = el), onMouseEnter: () => (this.isHovered = true), onMouseLeave: () => (this.isHovered = false), onKeyDown: this.handleKeyDown, onClick: this.handleClick }, this.label && (h("cura-label", { key: '0ac1eb8e18c97432a2c46e35dc04fce4d2dc640a', class: 'label', weight: 'bold', size: this.size === 'large' ? 'small' : 'xsmall', color: this.getColor('label') }, this.label, " ", this.required && h("span", { key: '09e8e758d595c641afbb7729847bc6e123ecd869', class: 'required' }, "* "))), h("div", { key: '2248ebad1ab820689635db06db8725d39118b04b', class: {
246
+ 'cura-input-field': true,
247
+ 'open': this.isOpen
248
+ } }, this.renderIcon(), h("input", { key: 'ea3909b76182006256055be075a446a8cb2813af', tabIndex: 0, type: "text", autocomplete: 'off', onFocus: () => (this.isFocused = true), onBlur: () => (this.isFocused = false), "aria-required": String(this.required), "aria-disabled": String(this.disabled), "aria-invalid": String(this.status === 'error'), onInput: this.handleInputChange, style: this.styles, placeholder: this.placeholder, disabled: this.disabled, required: this.required, value: this.value }), h("cura-icon", { key: '13a28271273b9a96e39cb62ca91e6769ea33ee43', name: this.isOpen ? 'up' : 'down', class: "up-down-icon", color: this.disabled ? 'neutral-dark' : 'primary-base', size: 16, iconset: 'default' })), h("cura-label", { key: 'fb1802d14cf6099e0ddf71f0623c1f0ffba6747c', class: "helper-text", size: 'xsmall', color: this.getColor('text'), weight: this.mode === 'transparent' ? 'bold' : 'regular' }, h("slot", { key: '2c257fd28f5c560dd66fe9f73c2fb3c165174efa' })), this.isOpen && (h("div", { key: '36dbd0fa457f7d1ec9c771dafc7491a821267812', class: {
249
+ 'menu': true,
250
+ 'open': this.isOpen
251
+ } }, h("slot", { key: 'f8d751989092e50820cb7b71903eef743f672a6b', name: 'option' }))))));
252
+ }
253
+ static get is() { return "cura-select"; }
254
+ static get encapsulation() { return "shadow"; }
255
+ static get formAssociated() { return true; }
256
+ static get originalStyleUrls() {
257
+ return {
258
+ "$": ["cura-select.scss"]
259
+ };
260
+ }
261
+ static get styleUrls() {
262
+ return {
263
+ "$": ["cura-select.css"]
264
+ };
265
+ }
266
+ static get properties() {
267
+ return {
268
+ "label": {
269
+ "type": "string",
270
+ "mutable": false,
271
+ "complexType": {
272
+ "original": "string",
273
+ "resolved": "string",
274
+ "references": {}
275
+ },
276
+ "required": false,
277
+ "optional": false,
278
+ "docs": {
279
+ "tags": [],
280
+ "text": "The label text for the select component.\nReflects as an attribute in the DOM."
281
+ },
282
+ "attribute": "label",
283
+ "reflect": true,
284
+ "defaultValue": "''"
285
+ },
286
+ "placeholder": {
287
+ "type": "string",
288
+ "mutable": false,
289
+ "complexType": {
290
+ "original": "string",
291
+ "resolved": "string",
292
+ "references": {}
293
+ },
294
+ "required": false,
295
+ "optional": false,
296
+ "docs": {
297
+ "tags": [],
298
+ "text": "Placeholder text for the input field.\nReflects as an attribute in the DOM."
299
+ },
300
+ "attribute": "placeholder",
301
+ "reflect": true,
302
+ "defaultValue": "''"
303
+ },
304
+ "value": {
305
+ "type": "string",
306
+ "mutable": true,
307
+ "complexType": {
308
+ "original": "string",
309
+ "resolved": "string",
310
+ "references": {}
311
+ },
312
+ "required": false,
313
+ "optional": false,
314
+ "docs": {
315
+ "tags": [],
316
+ "text": "Current value of the select component.\nReflects as an attribute in the DOM and is mutable."
317
+ },
318
+ "attribute": "value",
319
+ "reflect": true,
320
+ "defaultValue": "''"
321
+ },
322
+ "mode": {
323
+ "type": "string",
324
+ "mutable": false,
325
+ "complexType": {
326
+ "original": "'default' | 'transparent'",
327
+ "resolved": "\"default\" | \"transparent\"",
328
+ "references": {}
329
+ },
330
+ "required": false,
331
+ "optional": false,
332
+ "docs": {
333
+ "tags": [],
334
+ "text": "Display mode of the select component.\nCan be 'default' or 'transparent'."
335
+ },
336
+ "attribute": "mode",
337
+ "reflect": true,
338
+ "defaultValue": "'default'"
339
+ },
340
+ "size": {
341
+ "type": "string",
342
+ "mutable": false,
343
+ "complexType": {
344
+ "original": "'small' | 'medium' | 'large'",
345
+ "resolved": "\"large\" | \"medium\" | \"small\"",
346
+ "references": {}
347
+ },
348
+ "required": false,
349
+ "optional": false,
350
+ "docs": {
351
+ "tags": [],
352
+ "text": "Size of the select component.\nCan be 'small', 'medium', or 'large'."
353
+ },
354
+ "attribute": "size",
355
+ "reflect": true,
356
+ "defaultValue": "'medium'"
357
+ },
358
+ "status": {
359
+ "type": "string",
360
+ "mutable": true,
361
+ "complexType": {
362
+ "original": "'success' | 'error' | 'default'",
363
+ "resolved": "\"default\" | \"error\" | \"success\"",
364
+ "references": {}
365
+ },
366
+ "required": false,
367
+ "optional": false,
368
+ "docs": {
369
+ "tags": [],
370
+ "text": "Status of the select component.\nCan be 'success', 'error', or 'default'."
371
+ },
372
+ "attribute": "status",
373
+ "reflect": true,
374
+ "defaultValue": "'default'"
375
+ },
376
+ "disabled": {
377
+ "type": "boolean",
378
+ "mutable": false,
379
+ "complexType": {
380
+ "original": "boolean",
381
+ "resolved": "boolean",
382
+ "references": {}
383
+ },
384
+ "required": false,
385
+ "optional": false,
386
+ "docs": {
387
+ "tags": [],
388
+ "text": "Whether the select component is disabled.\nReflects as an attribute in the DOM."
389
+ },
390
+ "attribute": "disabled",
391
+ "reflect": true,
392
+ "defaultValue": "false"
393
+ },
394
+ "required": {
395
+ "type": "boolean",
396
+ "mutable": false,
397
+ "complexType": {
398
+ "original": "boolean",
399
+ "resolved": "boolean",
400
+ "references": {}
401
+ },
402
+ "required": false,
403
+ "optional": false,
404
+ "docs": {
405
+ "tags": [],
406
+ "text": "Whether the select component is required.\nReflects as an attribute in the DOM."
407
+ },
408
+ "attribute": "required",
409
+ "reflect": true,
410
+ "defaultValue": "false"
411
+ }
412
+ };
413
+ }
414
+ static get states() {
415
+ return {
416
+ "isHovered": {},
417
+ "isFocused": {},
418
+ "isOpen": {},
419
+ "options": {},
420
+ "activeIndex": {}
421
+ };
422
+ }
423
+ static get events() {
424
+ return [{
425
+ "method": "selected",
426
+ "name": "selected",
427
+ "bubbles": true,
428
+ "cancelable": true,
429
+ "composed": true,
430
+ "docs": {
431
+ "tags": [],
432
+ "text": "Event emitted when an option is selected."
433
+ },
434
+ "complexType": {
435
+ "original": "any",
436
+ "resolved": "any",
437
+ "references": {}
438
+ }
439
+ }];
440
+ }
441
+ static get elementRef() { return "host"; }
442
+ static get attachInternalsMemberName() { return "internals"; }
443
+ }
444
+ //# sourceMappingURL=cura-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-select.js","sourceRoot":"","sources":["../../../../src/components/forms/cura-select/cura-select.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAgB,eAAe,EAAE,MAAM,eAAe,CAAC;AAQ/G,MAAM,OAAO,UAAU;;QA+FrB;;WAEG;QACH,WAAM,GAAG,EAAE,CAAC;QAEZ;;WAEG;QACH,UAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QA0G7B;;;WAGG;QACH,oBAAe,GAAG,CAAC,SAA2B,EAAE,EAAE;YAChD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAC3B,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBACnC,IAAI,QAAQ,CAAC,aAAa,KAAK,UAAU;wBAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBACvE,IAAI,QAAQ,CAAC,aAAa,KAAK,OAAO;wBAAE,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC/D,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF;;WAEG;QACH,mBAAc,GAAG,CAAC,KAAY,EAAE,EAAE;YAChC,MAAM,cAAc,GAAG,KAAK,CAAC,MAAqB,CAAC;YACnD,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC/B,cAAc,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC,CAAC;QAoCF,kBAAa,GAAG,CAAC,KAAoB,EAAE,EAAE;;YACvC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO;YACzB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;YAErB,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;gBACxB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;YAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC;YAED,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACpB,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,0CAAE,KAAK,EAAE,CAAC;YAC1C,CAAC;QACH,CAAC,CAAA;QAaD,sBAAiB,GAAG,CAAC,CAAQ,EAAE,EAAE;YAC/B,IAAI,CAAC,KAAK,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK,CAAC;YAClD,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC;QAqDF,gBAAW,GAAG,CAAC,KAAiB,EAAE,EAAE;YAClC,IAAI,IAAI,CAAC,QAAQ;gBAAE,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;YAE3C,IAAI,MAAM,CAAC,OAAO,KAAK,oBAAoB;gBAAE,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QAC7B,CAAC,CAAC;qBAhWuC,EAAE;2BAMI,EAAE;qBAMO,EAAE;oBAMC,SAAS;oBAMN,QAAQ;sBAMY,SAAS;wBAM9C,KAAK;wBAML,KAAK;yBAMpB,KAAK;yBAML,KAAK;sBAMR,KAAK;;2BAQD,CAAC,CAAC;;IAkCjC;;KAEC;IACD,sBAAsB,CAAC,IAA4B;QACjD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;IAC9B,CAAC;IAED;;KAEC;IACD,wBAAwB,CAAC,KAAwB;QAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED;;KAEC;IACD,iBAAiB;QACf,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC9B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED;;MAEE;IACF,oBAAoB,CAAC,QAAiB;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IACD;;;OAGG;IACH,gBAAgB;QACd,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IACD;;;OAGG;IACH,iBAAiB;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IACD;;;OAGG;IACH,oBAAoB;;QAClB,MAAA,IAAI,CAAC,gBAAgB,0CAAE,UAAU,EAAE,CAAC;IACtC,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC5B,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;OAEG;IACH,WAAW;QACT,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACrC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;QAEvC,IAAI,CAAC,MAAM,mCACN,IAAI,CAAC,MAAM,KACd,sBAAsB,EAAE,WAAW,CAAC,MAAM,EAC1C,oBAAoB,EAAE,WAAW,CAAC,IAAI,EACtC,uBAAuB,EAAE,WAAW,CAAC,OAAO,EAC5C,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,EAChC,eAAe,EAAE,KAAK,CAAC,SAAS,EAAE,EAClC,aAAa,EAAE,KAAK,CAAC,OAAO,EAAE,GAC/B,CAAC;QAEF,MAAM,SAAS,GAAG;YAChB,cAAc,EAAE,mBAAmB,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe;YACxG,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB;YACnF,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW;SACzE,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;OAEG;IACH,qBAAqB;QACnB,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACnE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACxH,CAAC;IAsBD,oBAAoB;QAClB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC;QAE/E,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,aAAa,GAAG,cAAc,CAAC,WAAW,CAAC;YACjD,IAAI,IAAI,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;gBACjC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAE;gBAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,aAAa;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAE5C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;;YAC5B,MAAM,WAAW,GAAG,CAAA,MAAA,MAAM,CAAC,WAAW,0CAAE,WAAW,EAAE,KAAI,EAAE,CAAC;YAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACxE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAqBD,iBAAiB,CAAC,SAAiB;QACjC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACtC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAC9F,IAAI,CAAC,sBAAsB,EAAE,CAAA;IAC/B,CAAC;IAED,sBAAsB;QACpB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAE,MAAc,CAAC,MAAM,GAAG,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/F,CAAC;IAUD,UAAU;QACR,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,IAAI,KAAK,aAAa;YACxC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI;YAC/B,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI;SAClC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,IAA+B;QACtC,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,gBAAgB,CAAC;QAE3C,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;QAClD,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAE5D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,eAAe,IAAI,kBAAkB;gBAAE,OAAO,eAAe,CAAC;YACnE,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,IAAI,kBAAkB,IAAI,eAAe;YAAE,OAAO,eAAe,CAAC;QAClE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,cAAc,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,YAAY,CAAC;QAEjD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QAC3C,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3E,OAAO,CACL,iBACE,KAAK,EAAC,eAAe,EACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAC,SAAS,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EACrC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC5B,KAAK,EAAE,IAAI,CAAC,MAAM,GAClB,CACH,CAAC;IACJ,CAAC;IAWD,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,MAAM;YACtB,4DACE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EACxB,QAAQ,EAAE,CAAC,EACX,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,EAAiB,CAAC,EACjD,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAC3C,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,EAC5C,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,OAAO,EAAE,IAAI,CAAC,WAAW;gBAExB,IAAI,CAAC,KAAK,IAAI,CACb,mEACE,KAAK,EAAC,OAAO,EACb,MAAM,EAAC,MAAM,EACb,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAChD,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAE5B,IAAI,CAAC,KAAK;;oBAAG,IAAI,CAAC,QAAQ,IAAI,6DAAM,KAAK,EAAC,UAAU,SAAU,CACpD,CACd;gBAED,4DAAK,KAAK,EAAE;wBACV,kBAAkB,EAAE,IAAI;wBACxB,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB;oBACE,IAAI,CAAC,UAAU,EAAE;oBAClB,8DACE,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,MAAM,EACX,YAAY,EAAC,KAAK,EAClB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EACtC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,mBACvB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,mBACrB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,kBACtB,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,EAC7C,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB;oBACF,kEACE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EACjC,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,EACtD,IAAI,EAAE,EAAE,EACR,OAAO,EAAC,SAAS,GACjB,CACE;gBACN,mEACE,KAAK,EAAC,aAAa,EACnB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;oBACxD,8DAAa,CACF;gBACZ,IAAI,CAAC,MAAM,IAAI,CACd,4DAAK,KAAK,EAAE;wBACV,MAAM,EAAE,IAAI;wBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB;oBACC,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACP,CACG,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, Prop, State, h, Event, EventEmitter, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'cura-select',\n styleUrl: 'cura-select.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class CuraSelect {\n /**\n * The label text for the select component.\n * Reflects as an attribute in the DOM.\n */\n @Prop({ reflect: true }) label: string = '';\n\n /**\n * Placeholder text for the input field.\n * Reflects as an attribute in the DOM.\n */\n @Prop({ reflect: true }) placeholder: string = '';\n\n /**\n * Current value of the select component.\n * Reflects as an attribute in the DOM and is mutable.\n */\n @Prop({ reflect: true, mutable: true }) value: string = '';\n\n /**\n * Display mode of the select component.\n * Can be 'default' or 'transparent'.\n */\n @Prop({ reflect: true }) mode: 'default' | 'transparent' = 'default';\n\n /**\n * Size of the select component.\n * Can be 'small', 'medium', or 'large'.\n */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * Status of the select component.\n * Can be 'success', 'error', or 'default'.\n */\n @Prop({ reflect: true, mutable: true }) status: 'success' | 'error' | 'default' = 'default';\n\n /**\n * Whether the select component is disabled.\n * Reflects as an attribute in the DOM.\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Whether the select component is required.\n * Reflects as an attribute in the DOM.\n */\n @Prop({ reflect: true }) required: boolean = false;\n\n /**\n * Internal state: Whether the input is hovered.\n * Default: false\n */\n @State() isHovered: boolean = false;\n\n /**\n * Internal state: Whether the input is focused.\n * Default: false\n */\n @State() isFocused: boolean = false;\n\n /**\n * Internal state: Whether the dropdown menu is open.\n * Default: false\n */\n @State() isOpen: boolean = false;\n\n /**\n * Internal state: Collection of options for the select component.\n */\n @State() options: NodeListOf<HTMLElement>;\n\n\n @State() activeIndex: number = -1\n\n /**\n * Reference to the host element of the component.\n */\n @Element() host: HTMLElement;\n\n /**\n * Event emitted when an option is selected.\n */\n @Event() selected: EventEmitter;\n\n /**\n * Reference to the select component element.\n */\n selectRef: HTMLElement;\n\n /**\n * MutationObserver to watch changes in the component.\n */\n mutationObserver: MutationObserver;\n\n /**\n * Styles to be applied to the component.\n */\n styles = {};\n\n /**\n * Theme object containing font and color information.\n */\n theme = window.CuraAPI.theme;\n\n @AttachInternals() internals: ElementInternals;\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.value = state.value;\n this.updateSelectedOption();\n }\n\n /**\n * Callback to reset the switch state when the form is reset.\n */\n formResetCallback() {\n this.value = '';\n this.clearSelectedAttributes()\n this.internals.setFormValue(this.value);\n this.internals.setValidity({});\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 /**\n * Lifecycle method called before the component is rendered.\n * Initializes the options for the select component.\n */\n componentWillLoad() {\n this.initializeOptions();\n }\n /**\n * Lifecycle method called after the component is rendered.\n * Initializes select-related functionality.\n */\n componentDidLoad() {\n this.setupMutationObserver();\n }\n /**\n * Lifecycle method called when the component is connected to the DOM.\n * Applies styles based on the theme.\n */\n connectedCallback() {\n this.applyStyles();\n }\n /**\n * Lifecycle method called when the component is disconnected from the DOM.\n * Disconnects the MutationObserver if it exists.\n */\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n }\n\n initializeOptions() {\n this.options = this.host.querySelectorAll('cura-select-option');\n this.options.forEach(option => {\n option.setAttribute('size', this.size);\n option.setAttribute('selected', 'false');\n });\n }\n /**\n * Applies styles to the component based on the theme.\n */\n applyStyles() {\n const { fonts, colors } = this.theme;\n const fontWeights = fonts.getWeights();\n\n this.styles = {\n ...this.styles,\n '--font-weight-medium': fontWeights.medium,\n '--font-weight-bold': fontWeights.bold,\n '--font-weight-regular': fontWeights.regular,\n '--font-color': fonts.getColor(),\n '--font-family': fonts.getFamily(),\n '--font-size': fonts.getSize(),\n };\n\n const colorKeys = [\n 'primary-base', 'neutral-purewhite', 'neutral-white', 'neutral-black', 'neutral-medium', 'neutral-light',\n 'neutral-base', 'neutral-dark', 'success-dark', 'success-darker', 'success-lighter',\n 'error-lighter', 'error-dark', 'error-darker', 'error-base', 'info-base'\n ];\n\n colorKeys.forEach(key => {\n this.styles[`--${key}`] = colors.getColor(key);\n });\n }\n /**\n * Sets up a MutationObserver to watch for changes in the component.\n */\n setupMutationObserver() {\n this.mutationObserver = new MutationObserver(this.handleMutations);\n this.mutationObserver.observe(this.host, { attributes: true, subtree: true, attributeFilter: ['selected', 'value'] });\n }\n /**\n * Handles mutations observed by the MutationObserver.\n * Updates the selected option or filters options based on the mutation type.\n */\n handleMutations = (mutations: MutationRecord[]) => {\n mutations.forEach(mutation => {\n if (mutation.type === 'attributes') {\n if (mutation.attributeName === 'selected') this.updateSelectedOption();\n if (mutation.attributeName === 'value') this.filterOptions();\n }\n });\n };\n /**\n * Handles the selection of an option.\n */\n onOptiselected = (event: Event) => {\n const selectedOption = event.target as HTMLElement;\n this.clearSelectedAttributes();\n selectedOption.setAttribute('selected', 'true');\n };\n\n updateSelectedOption() {\n const selectedOption = this.host.querySelector('cura-select-option[selected]');\n\n if (selectedOption) {\n const selectedValue = selectedOption.textContent;\n if (this.value !== selectedValue) {\n this.value = selectedValue ;\n this.isOpen = false;\n this.internals.setFormValue(this.value);\n this.selected.emit({ value: this.value, selected: true });\n }\n }\n }\n\n /**\n * Clears the 'selected' attribute from all options.\n */\n clearSelectedAttributes() {\n this.options.forEach(option => option.removeAttribute('selected'));\n }\n\n /**\n * Filters the options based on the current input value.\n */\n filterOptions() {\n const inputValue = this.value.toLowerCase();\n\n this.options.forEach(option => {\n const optionValue = option.textContent?.toLowerCase() || '';\n const isVisible = this.isOpen ? optionValue.includes(inputValue) : true;\n option.style.display = isVisible ? 'block' : 'none';\n });\n }\n\n handleKeyDown = (event: KeyboardEvent) => {\n if (!this.isOpen) return;\n const { key } = event\n\n if (key === 'ArrowDown') {\n event.preventDefault();\n this.updateActiveIndex(1);\n }\n\n if (key === 'ArrowUp') {\n event.preventDefault();\n this.updateActiveIndex(-1);\n }\n\n if (key === 'Enter') {\n this.options[this.activeIndex]?.click();\n }\n }\n\n updateActiveIndex(direction: number) {\n if (this.options.length === 0) return;\n this.activeIndex = (this.activeIndex + direction + this.options.length) % this.options.length;\n this.updateOptionHighlights()\n }\n\n updateOptionHighlights() {\n this.options.forEach((option, index) => (option as any).active = index === this.activeIndex);\n }\n\n\n handleInputChange = (e: Event) => {\n this.value = (e.target as HTMLInputElement).value;\n this.isOpen = !!this.value.length;\n this.internals.setFormValue(this.value);\n };\n\n\n getClasses() {\n return {\n wrapper: true,\n label: !!this.label,\n disabled: this.disabled,\n transparent: this.mode === 'transparent',\n [this.size.toLowerCase()]: true,\n [this.status.toLowerCase()]: true,\n };\n }\n\n /**\n * Determines the color based on the item type and component state.\n */\n getColor(item: 'label' | 'text' | 'icon') {\n if (this.disabled) return 'neutral-medium';\n\n const isStatusDefault = this.status === 'default';\n const isHoveredOrFocused = this.isFocused || this.isHovered;\n\n if (item === 'label') {\n if (!isStatusDefault || isHoveredOrFocused) return 'neutral-black';\n return 'neutral-dark';\n }\n\n if (isHoveredOrFocused && isStatusDefault) return 'neutral-black';\n if (this.status === 'success') return 'success-dark';\n if (this.status === 'error') return 'error-dark';\n\n return 'neutral-dark';\n }\n\n /**\n * Renders the icon based on the component's status.\n */\n renderIcon() {\n if (this.status === 'default') return null;\n const icon = { success: 'checkCircle', error: 'alertCircle' }[this.status];\n return (\n <cura-icon\n class='feedback-icon'\n name={icon}\n iconset='default'\n size={this.size === 'large' ? 20 : 16}\n color={this.getColor('icon')}\n style={this.styles}\n />\n );\n }\n\n handleClick = (event: MouseEvent) => {\n if (this.disabled) return event.preventDefault();\n const target = event.target as HTMLElement;\n\n if (target.tagName === 'CURA-SELECT-OPTION') return this.onOptiselected(event);\n this.isOpen = !this.isOpen;\n };\n\n\n render() {\n return (\n <Host style={this.styles}>\n <div\n class={this.getClasses()}\n tabIndex={0}\n ref={(el) => (this.selectRef = el as HTMLElement)}\n onMouseEnter={() => (this.isHovered = true)}\n onMouseLeave={() => (this.isHovered = false)}\n onKeyDown={this.handleKeyDown}\n onClick={this.handleClick}\n >\n {this.label && (\n <cura-label\n class='label'\n weight='bold'\n size={this.size === 'large' ? 'small' : 'xsmall'}\n color={this.getColor('label')}\n >\n {this.label} {this.required && <span class='required'>* </span>}\n </cura-label>\n )}\n\n <div class={{\n 'cura-input-field': true,\n 'open': this.isOpen\n }}>\n {this.renderIcon()}\n <input\n tabIndex={0}\n type=\"text\"\n autocomplete='off'\n onFocus={() => (this.isFocused = true)}\n onBlur={() => (this.isFocused = false)}\n aria-required={String(this.required)}\n aria-disabled={String(this.disabled)}\n aria-invalid={String(this.status === 'error')}\n onInput={this.handleInputChange}\n style={this.styles}\n placeholder={this.placeholder}\n disabled={this.disabled}\n required={this.required}\n value={this.value}\n />\n <cura-icon\n name={this.isOpen ? 'up' : 'down'}\n class=\"up-down-icon\"\n color={this.disabled ? 'neutral-dark' : 'primary-base'}\n size={16}\n iconset='default'\n />\n </div>\n <cura-label\n class=\"helper-text\"\n size='xsmall'\n color={this.getColor('text')}\n weight={this.mode === 'transparent' ? 'bold' : 'regular'} >\n <slot></slot>\n </cura-label>\n {this.isOpen && (\n <div class={{\n 'menu': true,\n 'open': this.isOpen\n }}>\n <slot name='option'></slot>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,144 @@
1
+ const renderCuraSelect = (args) => {
2
+ const optionsMarkup = args.options.map(option => `<cura-select-option value="${option.value}">${option.label}</cura-select-option>`).join('');
3
+ const block = `<cura-select${args.label ? `
4
+ label="${args.label}"` : ''}${args.placeholder ? `
5
+ placeholder="${args.placeholder}"` : ''}${args.defaultValue ? `
6
+ default-value="${args.defaultValue}"` : ''}${args.value ? `
7
+ value="${args.value}"` : ''}${args.mode ? `
8
+ mode="${args.mode}"` : ''}${args.size ? `
9
+ size="${args.size}"` : ''}${args.status ? `
10
+ status="${args.status}"` : ''}${args.disabled ? `
11
+ disabled` : ''}${args.required ? `
12
+ required` : ''}>
13
+ ${args.helperText}
14
+ ${optionsMarkup}
15
+ </cura-select>`;
16
+ return `<div style="height: 200px; padding: 20px;">${block}</div>`;
17
+ };
18
+ export default {
19
+ title: 'Componentes/Forms/Select',
20
+ component: 'cura-select',
21
+ tags: ['autodocs'],
22
+ render: (args) => renderCuraSelect(args),
23
+ argTypes: {
24
+ label: {
25
+ control: 'text',
26
+ description: 'Texto do rótulo para o componente select.',
27
+ table: {
28
+ category: 'Propriedades',
29
+ defaultValue: { summary: '' },
30
+ },
31
+ },
32
+ placeholder: {
33
+ control: 'text',
34
+ description: 'Texto de espaço reservado para o campo de entrada.',
35
+ table: {
36
+ category: 'Propriedades',
37
+ defaultValue: { summary: '' },
38
+ },
39
+ },
40
+ defaultValue: {
41
+ control: 'text',
42
+ description: 'Valor padrão para o componente select.',
43
+ table: {
44
+ category: 'Propriedades',
45
+ defaultValue: { summary: '' },
46
+ },
47
+ },
48
+ value: {
49
+ control: 'text',
50
+ description: 'Valor atual do componente select. Ao inicar a busca o mesmo se refere ao option relacionado',
51
+ table: {
52
+ category: 'Propriedades',
53
+ defaultValue: { summary: '' },
54
+ },
55
+ },
56
+ mode: {
57
+ control: { type: 'inline-radio' },
58
+ options: ['default', 'transparent'],
59
+ description: "Modo de exibição do componente select. Pode ser 'default' ou 'transparent'.",
60
+ table: {
61
+ category: 'Propriedades',
62
+ defaultValue: { summary: 'default' },
63
+ },
64
+ },
65
+ size: {
66
+ control: { type: 'inline-radio' },
67
+ options: ['small', 'medium', 'large'],
68
+ description: "Tamanho do componente select. Pode ser 'small', 'medium' ou 'large'.",
69
+ table: {
70
+ category: 'Propriedades',
71
+ defaultValue: { summary: 'medium' },
72
+ },
73
+ },
74
+ status: {
75
+ control: { type: 'inline-radio' },
76
+ options: ['default', 'success', 'error'],
77
+ description: "Status do componente select. Pode ser 'success', 'error' ou 'default'.",
78
+ table: {
79
+ category: 'Propriedades',
80
+ defaultValue: { summary: 'default' },
81
+ },
82
+ },
83
+ disabled: {
84
+ control: 'boolean',
85
+ description: 'Indica se o componente select está desabilitado.',
86
+ table: {
87
+ category: 'states',
88
+ defaultValue: { summary: 'false' },
89
+ },
90
+ },
91
+ required: {
92
+ control: 'boolean',
93
+ description: 'Indica se o componente select é obrigatório.',
94
+ table: {
95
+ category: 'states',
96
+ defaultValue: { summary: 'false' },
97
+ },
98
+ },
99
+ helperText: {
100
+ name: 'content',
101
+ control: 'text',
102
+ description: 'Define o texto de ajuda do input, renderizado dentro do slot num elemento <cura-label>. Aceita tags HTML.',
103
+ table: {
104
+ category: 'Slots',
105
+ defaultValue: { summary: '' },
106
+ },
107
+ },
108
+ onselect: {
109
+ description: 'Emite um evento via Listener quando um valor é selecionado. { value: string , selected: boolean }',
110
+ table: {
111
+ category: 'Evento',
112
+ defaultValue: { summary: '' },
113
+ },
114
+ },
115
+ options: {
116
+ control: 'array',
117
+ description: 'Lista de opções definido pela aplicação para cura-select-option.',
118
+ table: {
119
+ category: 'aplication',
120
+ defaultValue: { summary: '[]' },
121
+ },
122
+ },
123
+ },
124
+ };
125
+ export const CuraSelect = {
126
+ args: {
127
+ options: [
128
+ { value: '1', label: 'Opção 1' },
129
+ { value: '2', label: 'Escolha 2' },
130
+ { value: '3', label: 'Exemplo 3' },
131
+ ],
132
+ label: 'Escolha uma opção',
133
+ placeholder: 'Selecione...',
134
+ defaultValue: '',
135
+ value: '',
136
+ mode: 'default',
137
+ size: 'medium',
138
+ status: 'default',
139
+ disabled: false,
140
+ required: false,
141
+ helperText: 'Texto de ajuda'
142
+ },
143
+ };
144
+ //# sourceMappingURL=cura-select.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cura-select.stories.js","sourceRoot":"","sources":["../../../../src/components/forms/cura-select/cura-select.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["const renderCuraSelect = (args) => {\n const optionsMarkup = args.options.map(option =>\n `<cura-select-option value=\"${option.value}\">${option.label}</cura-select-option>`\n ).join('');\n\n const block = `<cura-select${args.label ? `\n label=\"${args.label}\"` : ''}${args.placeholder ? `\n placeholder=\"${args.placeholder}\"` : ''}${args.defaultValue ? `\n default-value=\"${args.defaultValue}\"` : ''}${args.value ? `\n value=\"${args.value}\"` : ''}${args.mode ? `\n mode=\"${args.mode}\"` : ''}${args.size ? `\n size=\"${args.size}\"` : ''}${args.status ? `\n status=\"${args.status}\"` : ''}${args.disabled ? `\n disabled` : ''}${args.required ? `\n required` : ''}>\n ${args.helperText}\n ${optionsMarkup}\n</cura-select>`;\n\n return `<div style=\"height: 200px; padding: 20px;\">${block}</div>`;\n};\n\n\n\nexport default {\n title: 'Componentes/Forms/Select',\n component: 'cura-select',\n tags: ['autodocs'],\n render: (args) => renderCuraSelect(args),\n argTypes: {\n label: {\n control: 'text',\n description: 'Texto do rótulo para o componente select.',\n table: {\n category: 'Propriedades',\n defaultValue: { summary: '' },\n },\n },\n placeholder: {\n control: 'text',\n description: 'Texto de espaço reservado para o campo de entrada.',\n table: {\n category: 'Propriedades',\n defaultValue: { summary: '' },\n },\n },\n defaultValue: {\n control: 'text',\n description: 'Valor padrão para o componente select.',\n table: {\n category: 'Propriedades',\n defaultValue: { summary: '' },\n },\n },\n value: {\n control: 'text',\n description: 'Valor atual do componente select. Ao inicar a busca o mesmo se refere ao option relacionado',\n table: {\n category: 'Propriedades',\n defaultValue: { summary: '' },\n },\n },\n mode: {\n control: { type: 'inline-radio' },\n options: ['default', 'transparent'],\n description: \"Modo de exibição do componente select. Pode ser 'default' ou 'transparent'.\",\n table: {\n category: 'Propriedades',\n defaultValue: { summary: 'default' },\n },\n },\n size: {\n control: { type: 'inline-radio' },\n options: ['small', 'medium', 'large'],\n description: \"Tamanho do componente select. Pode ser 'small', 'medium' ou 'large'.\",\n table: {\n category: 'Propriedades',\n defaultValue: { summary: 'medium' },\n },\n },\n status: {\n control: { type: 'inline-radio' },\n options: ['default', 'success', 'error'],\n description: \"Status do componente select. Pode ser 'success', 'error' ou 'default'.\",\n table: {\n category: 'Propriedades',\n defaultValue: { summary: 'default' },\n },\n },\n disabled: {\n control: 'boolean',\n description: 'Indica se o componente select está desabilitado.',\n table: {\n category: 'states',\n defaultValue: { summary: 'false' },\n },\n },\n required: {\n control: 'boolean',\n description: 'Indica se o componente select é obrigatório.',\n table: {\n category: 'states',\n defaultValue: { summary: 'false' },\n },\n },\n helperText: {\n name: 'content',\n control: 'text',\n description: 'Define o texto de ajuda do input, renderizado dentro do slot num elemento <cura-label>. Aceita tags HTML.',\n table: {\n category: 'Slots',\n defaultValue: { summary: '' },\n },\n },\n onselect: {\n description: 'Emite um evento via Listener quando um valor é selecionado. { value: string , selected: boolean }',\n table: {\n category: 'Evento',\n defaultValue: { summary: '' },\n },\n },\n options: {\n control: 'array',\n description: 'Lista de opções definido pela aplicação para cura-select-option.',\n table: {\n category: 'aplication',\n defaultValue: { summary: '[]' },\n },\n },\n },\n};\n\nexport const CuraSelect = {\n args: {\n options: [\n { value: '1', label: 'Opção 1' },\n { value: '2', label: 'Escolha 2' },\n { value: '3', label: 'Exemplo 3' },\n ],\n label: 'Escolha uma opção',\n placeholder: 'Selecione...',\n defaultValue: '',\n value: '',\n mode: 'default',\n size: 'medium',\n status: 'default',\n disabled: false,\n required: false,\n helperText: 'Texto de ajuda'\n },\n};\n"]}