@mediquo/medicore 0.1.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 (907) hide show
  1. package/README.md +89 -0
  2. package/dist/components/advisor-contact/advisor-contact.d.ts +39 -0
  3. package/dist/components/advisor-contact/advisor-contact.js +94 -0
  4. package/dist/components/advisor-contact/advisor-contact.js.map +1 -0
  5. package/dist/components/advisor-contact/index.d.ts +1 -0
  6. package/dist/components/announcement/announcement-dialog.d.ts +39 -0
  7. package/dist/components/announcement/announcement-dialog.js +107 -0
  8. package/dist/components/announcement/announcement-dialog.js.map +1 -0
  9. package/dist/components/announcement/announcement-illustration.d.ts +9 -0
  10. package/dist/components/announcement/announcement-illustration.js +58 -0
  11. package/dist/components/announcement/announcement-illustration.js.map +1 -0
  12. package/dist/components/announcement/index.d.ts +2 -0
  13. package/dist/components/app-shell/app-shell.d.ts +74 -0
  14. package/dist/components/app-shell/app-shell.js +208 -0
  15. package/dist/components/app-shell/app-shell.js.map +1 -0
  16. package/dist/components/app-shell/index.d.ts +1 -0
  17. package/dist/components/appointment-row/appointment-row.d.ts +59 -0
  18. package/dist/components/appointment-row/appointment-row.js +160 -0
  19. package/dist/components/appointment-row/appointment-row.js.map +1 -0
  20. package/dist/components/appointment-row/index.d.ts +1 -0
  21. package/dist/components/auth-panel/auth-panel.d.ts +20 -0
  22. package/dist/components/auth-panel/auth-panel.js +36 -0
  23. package/dist/components/auth-panel/auth-panel.js.map +1 -0
  24. package/dist/components/auth-panel/index.d.ts +1 -0
  25. package/dist/components/availability-column/availability-column.d.ts +28 -0
  26. package/dist/components/availability-column/availability-column.js +57 -0
  27. package/dist/components/availability-column/availability-column.js.map +1 -0
  28. package/dist/components/availability-column/index.d.ts +1 -0
  29. package/dist/components/availability-row/availability-row.d.ts +36 -0
  30. package/dist/components/availability-row/availability-row.js +60 -0
  31. package/dist/components/availability-row/availability-row.js.map +1 -0
  32. package/dist/components/availability-row/index.d.ts +1 -0
  33. package/dist/components/avatar/avatar.d.ts +57 -0
  34. package/dist/components/avatar/avatar.js +115 -0
  35. package/dist/components/avatar/avatar.js.map +1 -0
  36. package/dist/components/avatar/index.d.ts +1 -0
  37. package/dist/components/badge/badge.d.ts +20 -0
  38. package/dist/components/badge/badge.js +42 -0
  39. package/dist/components/badge/badge.js.map +1 -0
  40. package/dist/components/badge/index.d.ts +1 -0
  41. package/dist/components/banner/banner.d.ts +32 -0
  42. package/dist/components/banner/banner.js +93 -0
  43. package/dist/components/banner/banner.js.map +1 -0
  44. package/dist/components/banner/index.d.ts +1 -0
  45. package/dist/components/bottom-bar/bottom-bar.d.ts +41 -0
  46. package/dist/components/bottom-bar/bottom-bar.js +76 -0
  47. package/dist/components/bottom-bar/bottom-bar.js.map +1 -0
  48. package/dist/components/bottom-bar/index.d.ts +1 -0
  49. package/dist/components/brand-mark/brand-mark.d.ts +22 -0
  50. package/dist/components/brand-mark/brand-mark.js +72 -0
  51. package/dist/components/brand-mark/brand-mark.js.map +1 -0
  52. package/dist/components/brand-mark/index.d.ts +1 -0
  53. package/dist/components/breadcrumb/breadcrumb.d.ts +36 -0
  54. package/dist/components/breadcrumb/breadcrumb.js +70 -0
  55. package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
  56. package/dist/components/breadcrumb/index.d.ts +1 -0
  57. package/dist/components/button/button.d.ts +29 -0
  58. package/dist/components/button/button.js +104 -0
  59. package/dist/components/button/button.js.map +1 -0
  60. package/dist/components/button/index.d.ts +1 -0
  61. package/dist/components/card/card.d.ts +84 -0
  62. package/dist/components/card/card.js +157 -0
  63. package/dist/components/card/card.js.map +1 -0
  64. package/dist/components/card/index.d.ts +1 -0
  65. package/dist/components/card-appointment/card-appointment.d.ts +58 -0
  66. package/dist/components/card-appointment/card-appointment.js +136 -0
  67. package/dist/components/card-appointment/card-appointment.js.map +1 -0
  68. package/dist/components/card-appointment/index.d.ts +1 -0
  69. package/dist/components/card-article/card-article.d.ts +28 -0
  70. package/dist/components/card-article/card-article.js +46 -0
  71. package/dist/components/card-article/card-article.js.map +1 -0
  72. package/dist/components/card-article/index.d.ts +1 -0
  73. package/dist/components/card-professional/card-professional.d.ts +56 -0
  74. package/dist/components/card-professional/card-professional.js +77 -0
  75. package/dist/components/card-professional/card-professional.js.map +1 -0
  76. package/dist/components/card-professional/index.d.ts +1 -0
  77. package/dist/components/card-professional-mini/card-professional-mini.d.ts +22 -0
  78. package/dist/components/card-professional-mini/card-professional-mini.js +37 -0
  79. package/dist/components/card-professional-mini/card-professional-mini.js.map +1 -0
  80. package/dist/components/card-professional-mini/index.d.ts +1 -0
  81. package/dist/components/card-program/card-program.d.ts +45 -0
  82. package/dist/components/card-program/card-program.js +142 -0
  83. package/dist/components/card-program/card-program.js.map +1 -0
  84. package/dist/components/card-program/index.d.ts +1 -0
  85. package/dist/components/card-service-option/card-service-option.d.ts +33 -0
  86. package/dist/components/card-service-option/card-service-option.js +49 -0
  87. package/dist/components/card-service-option/card-service-option.js.map +1 -0
  88. package/dist/components/card-service-option/index.d.ts +1 -0
  89. package/dist/components/card-testimonial/card-testimonial.d.ts +17 -0
  90. package/dist/components/card-testimonial/card-testimonial.js +36 -0
  91. package/dist/components/card-testimonial/card-testimonial.js.map +1 -0
  92. package/dist/components/card-testimonial/index.d.ts +1 -0
  93. package/dist/components/chat/chat-attachment.d.ts +34 -0
  94. package/dist/components/chat/chat-attachment.js +90 -0
  95. package/dist/components/chat/chat-attachment.js.map +1 -0
  96. package/dist/components/chat/chat-bubble.d.ts +49 -0
  97. package/dist/components/chat/chat-bubble.js +102 -0
  98. package/dist/components/chat/chat-bubble.js.map +1 -0
  99. package/dist/components/chat/chat-composer.d.ts +40 -0
  100. package/dist/components/chat/chat-composer.js +114 -0
  101. package/dist/components/chat/chat-composer.js.map +1 -0
  102. package/dist/components/chat/chat-conversation-row.d.ts +42 -0
  103. package/dist/components/chat/chat-conversation-row.js +104 -0
  104. package/dist/components/chat/chat-conversation-row.js.map +1 -0
  105. package/dist/components/chat/chat-date-separator.d.ts +15 -0
  106. package/dist/components/chat/chat-date-separator.js +29 -0
  107. package/dist/components/chat/chat-date-separator.js.map +1 -0
  108. package/dist/components/chat/chat-delivery-status.d.ts +21 -0
  109. package/dist/components/chat/chat-delivery-status.js +43 -0
  110. package/dist/components/chat/chat-delivery-status.js.map +1 -0
  111. package/dist/components/chat/chat-launcher.d.ts +24 -0
  112. package/dist/components/chat/chat-launcher.js +52 -0
  113. package/dist/components/chat/chat-launcher.js.map +1 -0
  114. package/dist/components/chat/chat-message-list.d.ts +13 -0
  115. package/dist/components/chat/chat-message-list.js +23 -0
  116. package/dist/components/chat/chat-message-list.js.map +1 -0
  117. package/dist/components/chat/chat-room-header.d.ts +33 -0
  118. package/dist/components/chat/chat-room-header.js +53 -0
  119. package/dist/components/chat/chat-room-header.js.map +1 -0
  120. package/dist/components/chat/chat-typing-indicator.d.ts +20 -0
  121. package/dist/components/chat/chat-typing-indicator.js +61 -0
  122. package/dist/components/chat/chat-typing-indicator.js.map +1 -0
  123. package/dist/components/chat/index.d.ts +10 -0
  124. package/dist/components/checkbox/checkbox-field.d.ts +25 -0
  125. package/dist/components/checkbox/checkbox-field.js +62 -0
  126. package/dist/components/checkbox/checkbox-field.js.map +1 -0
  127. package/dist/components/checkbox/checkbox.d.ts +28 -0
  128. package/dist/components/checkbox/checkbox.js +62 -0
  129. package/dist/components/checkbox/checkbox.js.map +1 -0
  130. package/dist/components/checkbox/index.d.ts +2 -0
  131. package/dist/components/chip/chip.d.ts +60 -0
  132. package/dist/components/chip/chip.js +101 -0
  133. package/dist/components/chip/chip.js.map +1 -0
  134. package/dist/components/chip/index.d.ts +1 -0
  135. package/dist/components/date-badge/date-badge.d.ts +15 -0
  136. package/dist/components/date-badge/date-badge.js +35 -0
  137. package/dist/components/date-badge/date-badge.js.map +1 -0
  138. package/dist/components/date-badge/index.d.ts +1 -0
  139. package/dist/components/day-cell/day-cell.d.ts +45 -0
  140. package/dist/components/day-cell/day-cell.js +124 -0
  141. package/dist/components/day-cell/day-cell.js.map +1 -0
  142. package/dist/components/day-cell/index.d.ts +1 -0
  143. package/dist/components/divider/divider.d.ts +23 -0
  144. package/dist/components/divider/divider.js +49 -0
  145. package/dist/components/divider/divider.js.map +1 -0
  146. package/dist/components/divider/index.d.ts +1 -0
  147. package/dist/components/empty-state/empty-state.d.ts +53 -0
  148. package/dist/components/empty-state/empty-state.js +57 -0
  149. package/dist/components/empty-state/empty-state.js.map +1 -0
  150. package/dist/components/empty-state/index.d.ts +1 -0
  151. package/dist/components/field/field-context.d.ts +19 -0
  152. package/dist/components/field/field-context.js +10 -0
  153. package/dist/components/field/field-context.js.map +1 -0
  154. package/dist/components/field/field.d.ts +47 -0
  155. package/dist/components/field/field.js +116 -0
  156. package/dist/components/field/field.js.map +1 -0
  157. package/dist/components/field/index.d.ts +1 -0
  158. package/dist/components/footer/footer.d.ts +29 -0
  159. package/dist/components/footer/footer.js +88 -0
  160. package/dist/components/footer/footer.js.map +1 -0
  161. package/dist/components/footer/index.d.ts +1 -0
  162. package/dist/components/health-record/health-record.d.ts +88 -0
  163. package/dist/components/health-record/health-record.js +255 -0
  164. package/dist/components/health-record/health-record.js.map +1 -0
  165. package/dist/components/health-record/index.d.ts +1 -0
  166. package/dist/components/hero-greeting/hero-greeting.d.ts +17 -0
  167. package/dist/components/hero-greeting/hero-greeting.js +29 -0
  168. package/dist/components/hero-greeting/hero-greeting.js.map +1 -0
  169. package/dist/components/hero-greeting/index.d.ts +1 -0
  170. package/dist/components/icon-button/icon-button.d.ts +37 -0
  171. package/dist/components/icon-button/icon-button.js +64 -0
  172. package/dist/components/icon-button/icon-button.js.map +1 -0
  173. package/dist/components/icon-button/index.d.ts +1 -0
  174. package/dist/components/icon-container/icon-container.d.ts +29 -0
  175. package/dist/components/icon-container/icon-container.js +49 -0
  176. package/dist/components/icon-container/icon-container.js.map +1 -0
  177. package/dist/components/icon-container/index.d.ts +1 -0
  178. package/dist/components/included-item/included-item.d.ts +10 -0
  179. package/dist/components/included-item/included-item.js +37 -0
  180. package/dist/components/included-item/included-item.js.map +1 -0
  181. package/dist/components/included-item/index.d.ts +1 -0
  182. package/dist/components/input/control-styles.d.ts +34 -0
  183. package/dist/components/input/control-styles.js +36 -0
  184. package/dist/components/input/control-styles.js.map +1 -0
  185. package/dist/components/input/index.d.ts +1 -0
  186. package/dist/components/input/input.d.ts +35 -0
  187. package/dist/components/input/input.js +123 -0
  188. package/dist/components/input/input.js.map +1 -0
  189. package/dist/components/link/index.d.ts +1 -0
  190. package/dist/components/link/link.d.ts +52 -0
  191. package/dist/components/link/link.js +94 -0
  192. package/dist/components/link/link.js.map +1 -0
  193. package/dist/components/list-row/index.d.ts +1 -0
  194. package/dist/components/list-row/list-row.d.ts +47 -0
  195. package/dist/components/list-row/list-row.js +71 -0
  196. package/dist/components/list-row/list-row.js.map +1 -0
  197. package/dist/components/logo/index.d.ts +1 -0
  198. package/dist/components/logo/logo.d.ts +13 -0
  199. package/dist/components/logo/logo.js +48 -0
  200. package/dist/components/logo/logo.js.map +1 -0
  201. package/dist/components/menu/index.d.ts +1 -0
  202. package/dist/components/menu/menu.d.ts +79 -0
  203. package/dist/components/menu/menu.js +250 -0
  204. package/dist/components/menu/menu.js.map +1 -0
  205. package/dist/components/mobile-header/index.d.ts +1 -0
  206. package/dist/components/mobile-header/mobile-header.d.ts +49 -0
  207. package/dist/components/mobile-header/mobile-header.js +84 -0
  208. package/dist/components/mobile-header/mobile-header.js.map +1 -0
  209. package/dist/components/modal/confirm-modal.d.ts +32 -0
  210. package/dist/components/modal/confirm-modal.js +78 -0
  211. package/dist/components/modal/confirm-modal.js.map +1 -0
  212. package/dist/components/modal/index.d.ts +2 -0
  213. package/dist/components/modal/modal.d.ts +103 -0
  214. package/dist/components/modal/modal.js +248 -0
  215. package/dist/components/modal/modal.js.map +1 -0
  216. package/dist/components/modal/use-media-query.d.ts +7 -0
  217. package/dist/components/modal/use-media-query.js +22 -0
  218. package/dist/components/modal/use-media-query.js.map +1 -0
  219. package/dist/components/nav-item/index.d.ts +1 -0
  220. package/dist/components/nav-item/nav-item.d.ts +54 -0
  221. package/dist/components/nav-item/nav-item.js +124 -0
  222. package/dist/components/nav-item/nav-item.js.map +1 -0
  223. package/dist/components/otp-input/index.d.ts +1 -0
  224. package/dist/components/otp-input/otp-input.d.ts +40 -0
  225. package/dist/components/otp-input/otp-input.js +152 -0
  226. package/dist/components/otp-input/otp-input.js.map +1 -0
  227. package/dist/components/page-header/index.d.ts +1 -0
  228. package/dist/components/page-header/page-header.d.ts +24 -0
  229. package/dist/components/page-header/page-header.js +41 -0
  230. package/dist/components/page-header/page-header.js.map +1 -0
  231. package/dist/components/phone-input/index.d.ts +1 -0
  232. package/dist/components/phone-input/phone-input.d.ts +46 -0
  233. package/dist/components/phone-input/phone-input.js +219 -0
  234. package/dist/components/phone-input/phone-input.js.map +1 -0
  235. package/dist/components/promo-app/index.d.ts +1 -0
  236. package/dist/components/promo-app/promo-app.d.ts +29 -0
  237. package/dist/components/promo-app/promo-app.js +51 -0
  238. package/dist/components/promo-app/promo-app.js.map +1 -0
  239. package/dist/components/radio/field-item-label.d.ts +13 -0
  240. package/dist/components/radio/field-item-label.js +29 -0
  241. package/dist/components/radio/field-item-label.js.map +1 -0
  242. package/dist/components/radio/index.d.ts +1 -0
  243. package/dist/components/radio/radio.d.ts +38 -0
  244. package/dist/components/radio/radio.js +90 -0
  245. package/dist/components/radio/radio.js.map +1 -0
  246. package/dist/components/radio/use-field-group-label.d.ts +7 -0
  247. package/dist/components/radio/use-field-group-label.js +16 -0
  248. package/dist/components/radio/use-field-group-label.js.map +1 -0
  249. package/dist/components/rating/index.d.ts +1 -0
  250. package/dist/components/rating/rating.d.ts +23 -0
  251. package/dist/components/rating/rating.js +93 -0
  252. package/dist/components/rating/rating.js.map +1 -0
  253. package/dist/components/section-header/index.d.ts +1 -0
  254. package/dist/components/section-header/section-header.d.ts +37 -0
  255. package/dist/components/section-header/section-header.js +60 -0
  256. package/dist/components/section-header/section-header.js.map +1 -0
  257. package/dist/components/segmented-control/index.d.ts +1 -0
  258. package/dist/components/segmented-control/segmented-control.d.ts +34 -0
  259. package/dist/components/segmented-control/segmented-control.js +51 -0
  260. package/dist/components/segmented-control/segmented-control.js.map +1 -0
  261. package/dist/components/select/index.d.ts +2 -0
  262. package/dist/components/select/native-select.d.ts +30 -0
  263. package/dist/components/select/native-select.js +83 -0
  264. package/dist/components/select/native-select.js.map +1 -0
  265. package/dist/components/select/select.d.ts +49 -0
  266. package/dist/components/select/select.js +125 -0
  267. package/dist/components/select/select.js.map +1 -0
  268. package/dist/components/selection-card/index.d.ts +1 -0
  269. package/dist/components/selection-card/selection-card.d.ts +31 -0
  270. package/dist/components/selection-card/selection-card.js +90 -0
  271. package/dist/components/selection-card/selection-card.js.map +1 -0
  272. package/dist/components/severity-indicator/index.d.ts +1 -0
  273. package/dist/components/severity-indicator/severity-indicator.d.ts +18 -0
  274. package/dist/components/severity-indicator/severity-indicator.js +64 -0
  275. package/dist/components/severity-indicator/severity-indicator.js.map +1 -0
  276. package/dist/components/severity-scale/index.d.ts +1 -0
  277. package/dist/components/severity-scale/severity-scale.d.ts +17 -0
  278. package/dist/components/severity-scale/severity-scale.js +22 -0
  279. package/dist/components/severity-scale/severity-scale.js.map +1 -0
  280. package/dist/components/sidebar/index.d.ts +1 -0
  281. package/dist/components/sidebar/sidebar.d.ts +99 -0
  282. package/dist/components/sidebar/sidebar.js +228 -0
  283. package/dist/components/sidebar/sidebar.js.map +1 -0
  284. package/dist/components/skeleton/index.d.ts +1 -0
  285. package/dist/components/skeleton/skeleton.d.ts +33 -0
  286. package/dist/components/skeleton/skeleton.js +47 -0
  287. package/dist/components/skeleton/skeleton.js.map +1 -0
  288. package/dist/components/social-button/index.d.ts +1 -0
  289. package/dist/components/social-button/social-button.d.ts +29 -0
  290. package/dist/components/social-button/social-button.js +53 -0
  291. package/dist/components/social-button/social-button.js.map +1 -0
  292. package/dist/components/spinner/index.d.ts +1 -0
  293. package/dist/components/spinner/spinner.d.ts +20 -0
  294. package/dist/components/spinner/spinner.js +54 -0
  295. package/dist/components/spinner/spinner.js.map +1 -0
  296. package/dist/components/stat-tile/index.d.ts +1 -0
  297. package/dist/components/stat-tile/stat-tile.d.ts +15 -0
  298. package/dist/components/stat-tile/stat-tile.js +28 -0
  299. package/dist/components/stat-tile/stat-tile.js.map +1 -0
  300. package/dist/components/step-indicator/index.d.ts +1 -0
  301. package/dist/components/step-indicator/step-indicator.d.ts +17 -0
  302. package/dist/components/step-indicator/step-indicator.js +35 -0
  303. package/dist/components/step-indicator/step-indicator.js.map +1 -0
  304. package/dist/components/store-badge/index.d.ts +1 -0
  305. package/dist/components/store-badge/store-badge.d.ts +22 -0
  306. package/dist/components/store-badge/store-badge.js +40 -0
  307. package/dist/components/store-badge/store-badge.js.map +1 -0
  308. package/dist/components/switch/index.d.ts +1 -0
  309. package/dist/components/switch/switch.d.ts +23 -0
  310. package/dist/components/switch/switch.js +67 -0
  311. package/dist/components/switch/switch.js.map +1 -0
  312. package/dist/components/table/index.d.ts +1 -0
  313. package/dist/components/table/table.d.ts +85 -0
  314. package/dist/components/table/table.js +175 -0
  315. package/dist/components/table/table.js.map +1 -0
  316. package/dist/components/tabs/index.d.ts +1 -0
  317. package/dist/components/tabs/tabs.d.ts +58 -0
  318. package/dist/components/tabs/tabs.js +89 -0
  319. package/dist/components/tabs/tabs.js.map +1 -0
  320. package/dist/components/textarea/index.d.ts +1 -0
  321. package/dist/components/textarea/textarea.d.ts +25 -0
  322. package/dist/components/textarea/textarea.js +79 -0
  323. package/dist/components/textarea/textarea.js.map +1 -0
  324. package/dist/components/time-slot/index.d.ts +1 -0
  325. package/dist/components/time-slot/time-slot.d.ts +50 -0
  326. package/dist/components/time-slot/time-slot.js +75 -0
  327. package/dist/components/time-slot/time-slot.js.map +1 -0
  328. package/dist/components/toast/index.d.ts +1 -0
  329. package/dist/components/toast/toast.d.ts +60 -0
  330. package/dist/components/toast/toast.js +159 -0
  331. package/dist/components/toast/toast.js.map +1 -0
  332. package/dist/components/tooltip/index.d.ts +1 -0
  333. package/dist/components/tooltip/tooltip.d.ts +40 -0
  334. package/dist/components/tooltip/tooltip.js +110 -0
  335. package/dist/components/tooltip/tooltip.js.map +1 -0
  336. package/dist/components/video/index.d.ts +4 -0
  337. package/dist/components/video/video-control-button.d.ts +33 -0
  338. package/dist/components/video/video-control-button.js +119 -0
  339. package/dist/components/video/video-control-button.js.map +1 -0
  340. package/dist/components/video/video-label.d.ts +14 -0
  341. package/dist/components/video/video-label.js +25 -0
  342. package/dist/components/video/video-label.js.map +1 -0
  343. package/dist/components/video/video-stage.d.ts +39 -0
  344. package/dist/components/video/video-stage.js +96 -0
  345. package/dist/components/video/video-stage.js.map +1 -0
  346. package/dist/components/video/video-tile.d.ts +37 -0
  347. package/dist/components/video/video-tile.js +61 -0
  348. package/dist/components/video/video-tile.js.map +1 -0
  349. package/dist/icons/create-icon.d.ts +18 -0
  350. package/dist/icons/create-icon.js +46 -0
  351. package/dist/icons/create-icon.js.map +1 -0
  352. package/dist/icons/generated/activity-heart.d.ts +1 -0
  353. package/dist/icons/generated/activity-heart.js +10 -0
  354. package/dist/icons/generated/activity-heart.js.map +1 -0
  355. package/dist/icons/generated/activity.d.ts +1 -0
  356. package/dist/icons/generated/activity.js +10 -0
  357. package/dist/icons/generated/activity.js.map +1 -0
  358. package/dist/icons/generated/alert-circle.d.ts +1 -0
  359. package/dist/icons/generated/alert-circle.js +10 -0
  360. package/dist/icons/generated/alert-circle.js.map +1 -0
  361. package/dist/icons/generated/alert-triangle.d.ts +1 -0
  362. package/dist/icons/generated/alert-triangle.js +10 -0
  363. package/dist/icons/generated/alert-triangle.js.map +1 -0
  364. package/dist/icons/generated/allergy-peanut.d.ts +1 -0
  365. package/dist/icons/generated/allergy-peanut.js +16 -0
  366. package/dist/icons/generated/allergy-peanut.js.map +1 -0
  367. package/dist/icons/generated/annotation-alert.d.ts +1 -0
  368. package/dist/icons/generated/annotation-alert.js +10 -0
  369. package/dist/icons/generated/annotation-alert.js.map +1 -0
  370. package/dist/icons/generated/annotation-check.d.ts +1 -0
  371. package/dist/icons/generated/annotation-check.js +10 -0
  372. package/dist/icons/generated/annotation-check.js.map +1 -0
  373. package/dist/icons/generated/annotation-info.d.ts +1 -0
  374. package/dist/icons/generated/annotation-info.js +10 -0
  375. package/dist/icons/generated/annotation-info.js.map +1 -0
  376. package/dist/icons/generated/annotation-question.d.ts +1 -0
  377. package/dist/icons/generated/annotation-question.js +10 -0
  378. package/dist/icons/generated/annotation-question.js.map +1 -0
  379. package/dist/icons/generated/annotation.d.ts +1 -0
  380. package/dist/icons/generated/annotation.js +10 -0
  381. package/dist/icons/generated/annotation.js.map +1 -0
  382. package/dist/icons/generated/arrow-circle-down.d.ts +1 -0
  383. package/dist/icons/generated/arrow-circle-down.js +10 -0
  384. package/dist/icons/generated/arrow-circle-down.js.map +1 -0
  385. package/dist/icons/generated/arrow-circle-left.d.ts +1 -0
  386. package/dist/icons/generated/arrow-circle-left.js +10 -0
  387. package/dist/icons/generated/arrow-circle-left.js.map +1 -0
  388. package/dist/icons/generated/arrow-circle-right.d.ts +1 -0
  389. package/dist/icons/generated/arrow-circle-right.js +10 -0
  390. package/dist/icons/generated/arrow-circle-right.js.map +1 -0
  391. package/dist/icons/generated/arrow-circle-up.d.ts +1 -0
  392. package/dist/icons/generated/arrow-circle-up.js +10 -0
  393. package/dist/icons/generated/arrow-circle-up.js.map +1 -0
  394. package/dist/icons/generated/arrow-narrow-down.d.ts +1 -0
  395. package/dist/icons/generated/arrow-narrow-down.js +10 -0
  396. package/dist/icons/generated/arrow-narrow-down.js.map +1 -0
  397. package/dist/icons/generated/arrow-narrow-left.d.ts +1 -0
  398. package/dist/icons/generated/arrow-narrow-left.js +10 -0
  399. package/dist/icons/generated/arrow-narrow-left.js.map +1 -0
  400. package/dist/icons/generated/arrow-narrow-right.d.ts +1 -0
  401. package/dist/icons/generated/arrow-narrow-right.js +10 -0
  402. package/dist/icons/generated/arrow-narrow-right.js.map +1 -0
  403. package/dist/icons/generated/arrow-narrow-up.d.ts +1 -0
  404. package/dist/icons/generated/arrow-narrow-up.js +10 -0
  405. package/dist/icons/generated/arrow-narrow-up.js.map +1 -0
  406. package/dist/icons/generated/arrow-right.d.ts +1 -0
  407. package/dist/icons/generated/arrow-right.js +10 -0
  408. package/dist/icons/generated/arrow-right.js.map +1 -0
  409. package/dist/icons/generated/bar-chart-01.d.ts +1 -0
  410. package/dist/icons/generated/bar-chart-01.js +10 -0
  411. package/dist/icons/generated/bar-chart-01.js.map +1 -0
  412. package/dist/icons/generated/bar-chart-02.d.ts +1 -0
  413. package/dist/icons/generated/bar-chart-02.js +10 -0
  414. package/dist/icons/generated/bar-chart-02.js.map +1 -0
  415. package/dist/icons/generated/bar-chart-03.d.ts +1 -0
  416. package/dist/icons/generated/bar-chart-03.js +10 -0
  417. package/dist/icons/generated/bar-chart-03.js.map +1 -0
  418. package/dist/icons/generated/bell-01.d.ts +1 -0
  419. package/dist/icons/generated/bell-01.js +10 -0
  420. package/dist/icons/generated/bell-01.js.map +1 -0
  421. package/dist/icons/generated/bell-02.d.ts +1 -0
  422. package/dist/icons/generated/bell-02.js +10 -0
  423. package/dist/icons/generated/bell-02.js.map +1 -0
  424. package/dist/icons/generated/bookmark.d.ts +1 -0
  425. package/dist/icons/generated/bookmark.js +10 -0
  426. package/dist/icons/generated/bookmark.js.map +1 -0
  427. package/dist/icons/generated/broken-heart.d.ts +1 -0
  428. package/dist/icons/generated/broken-heart.js +10 -0
  429. package/dist/icons/generated/broken-heart.js.map +1 -0
  430. package/dist/icons/generated/calendar-chat.d.ts +1 -0
  431. package/dist/icons/generated/calendar-chat.js +13 -0
  432. package/dist/icons/generated/calendar-chat.js.map +1 -0
  433. package/dist/icons/generated/calendar-check-01.d.ts +1 -0
  434. package/dist/icons/generated/calendar-check-01.js +10 -0
  435. package/dist/icons/generated/calendar-check-01.js.map +1 -0
  436. package/dist/icons/generated/calendar-check-02.d.ts +1 -0
  437. package/dist/icons/generated/calendar-check-02.js +10 -0
  438. package/dist/icons/generated/calendar-check-02.js.map +1 -0
  439. package/dist/icons/generated/calendar-heart-01.d.ts +1 -0
  440. package/dist/icons/generated/calendar-heart-01.js +10 -0
  441. package/dist/icons/generated/calendar-heart-01.js.map +1 -0
  442. package/dist/icons/generated/calendar-minus-01.d.ts +1 -0
  443. package/dist/icons/generated/calendar-minus-01.js +10 -0
  444. package/dist/icons/generated/calendar-minus-01.js.map +1 -0
  445. package/dist/icons/generated/calendar-minus-02.d.ts +1 -0
  446. package/dist/icons/generated/calendar-minus-02.js +10 -0
  447. package/dist/icons/generated/calendar-minus-02.js.map +1 -0
  448. package/dist/icons/generated/calendar-plus-01.d.ts +1 -0
  449. package/dist/icons/generated/calendar-plus-01.js +10 -0
  450. package/dist/icons/generated/calendar-plus-01.js.map +1 -0
  451. package/dist/icons/generated/calendar-plus-02.d.ts +1 -0
  452. package/dist/icons/generated/calendar-plus-02.js +10 -0
  453. package/dist/icons/generated/calendar-plus-02.js.map +1 -0
  454. package/dist/icons/generated/calendar.d.ts +1 -0
  455. package/dist/icons/generated/calendar.js +10 -0
  456. package/dist/icons/generated/calendar.js.map +1 -0
  457. package/dist/icons/generated/camera-01.d.ts +1 -0
  458. package/dist/icons/generated/camera-01.js +13 -0
  459. package/dist/icons/generated/camera-01.js.map +1 -0
  460. package/dist/icons/generated/camera-off.d.ts +1 -0
  461. package/dist/icons/generated/camera-off.js +10 -0
  462. package/dist/icons/generated/camera-off.js.map +1 -0
  463. package/dist/icons/generated/certificate-02.d.ts +1 -0
  464. package/dist/icons/generated/certificate-02.js +10 -0
  465. package/dist/icons/generated/certificate-02.js.map +1 -0
  466. package/dist/icons/generated/check-circle.d.ts +1 -0
  467. package/dist/icons/generated/check-circle.js +10 -0
  468. package/dist/icons/generated/check-circle.js.map +1 -0
  469. package/dist/icons/generated/check-heart.d.ts +1 -0
  470. package/dist/icons/generated/check-heart.js +10 -0
  471. package/dist/icons/generated/check-heart.js.map +1 -0
  472. package/dist/icons/generated/check-square.d.ts +1 -0
  473. package/dist/icons/generated/check-square.js +10 -0
  474. package/dist/icons/generated/check-square.js.map +1 -0
  475. package/dist/icons/generated/check-verified-02.d.ts +1 -0
  476. package/dist/icons/generated/check-verified-02.js +10 -0
  477. package/dist/icons/generated/check-verified-02.js.map +1 -0
  478. package/dist/icons/generated/check.d.ts +1 -0
  479. package/dist/icons/generated/check.js +7 -0
  480. package/dist/icons/generated/check.js.map +1 -0
  481. package/dist/icons/generated/chevron-down.d.ts +1 -0
  482. package/dist/icons/generated/chevron-down.js +10 -0
  483. package/dist/icons/generated/chevron-down.js.map +1 -0
  484. package/dist/icons/generated/chevron-left.d.ts +1 -0
  485. package/dist/icons/generated/chevron-left.js +10 -0
  486. package/dist/icons/generated/chevron-left.js.map +1 -0
  487. package/dist/icons/generated/chevron-right.d.ts +1 -0
  488. package/dist/icons/generated/chevron-right.js +10 -0
  489. package/dist/icons/generated/chevron-right.js.map +1 -0
  490. package/dist/icons/generated/chevron-up.d.ts +1 -0
  491. package/dist/icons/generated/chevron-up.js +10 -0
  492. package/dist/icons/generated/chevron-up.js.map +1 -0
  493. package/dist/icons/generated/clipboard-check.d.ts +1 -0
  494. package/dist/icons/generated/clipboard-check.js +10 -0
  495. package/dist/icons/generated/clipboard-check.js.map +1 -0
  496. package/dist/icons/generated/clock.d.ts +1 -0
  497. package/dist/icons/generated/clock.js +10 -0
  498. package/dist/icons/generated/clock.js.map +1 -0
  499. package/dist/icons/generated/copy-01.d.ts +1 -0
  500. package/dist/icons/generated/copy-01.js +10 -0
  501. package/dist/icons/generated/copy-01.js.map +1 -0
  502. package/dist/icons/generated/credit-card-01.d.ts +1 -0
  503. package/dist/icons/generated/credit-card-01.js +10 -0
  504. package/dist/icons/generated/credit-card-01.js.map +1 -0
  505. package/dist/icons/generated/credit-card-02.d.ts +1 -0
  506. package/dist/icons/generated/credit-card-02.js +10 -0
  507. package/dist/icons/generated/credit-card-02.js.map +1 -0
  508. package/dist/icons/generated/credit-card-check.d.ts +1 -0
  509. package/dist/icons/generated/credit-card-check.js +10 -0
  510. package/dist/icons/generated/credit-card-check.js.map +1 -0
  511. package/dist/icons/generated/currency-euro.d.ts +1 -0
  512. package/dist/icons/generated/currency-euro.js +10 -0
  513. package/dist/icons/generated/currency-euro.js.map +1 -0
  514. package/dist/icons/generated/dots-horizontal.d.ts +1 -0
  515. package/dist/icons/generated/dots-horizontal.js +14 -0
  516. package/dist/icons/generated/dots-horizontal.js.map +1 -0
  517. package/dist/icons/generated/dots-vertical.d.ts +1 -0
  518. package/dist/icons/generated/dots-vertical.js +14 -0
  519. package/dist/icons/generated/dots-vertical.js.map +1 -0
  520. package/dist/icons/generated/download-02.d.ts +1 -0
  521. package/dist/icons/generated/download-02.js +10 -0
  522. package/dist/icons/generated/download-02.js.map +1 -0
  523. package/dist/icons/generated/download-cloud-01.d.ts +1 -0
  524. package/dist/icons/generated/download-cloud-01.js +10 -0
  525. package/dist/icons/generated/download-cloud-01.js.map +1 -0
  526. package/dist/icons/generated/edit-01.d.ts +1 -0
  527. package/dist/icons/generated/edit-01.js +10 -0
  528. package/dist/icons/generated/edit-01.js.map +1 -0
  529. package/dist/icons/generated/edit-05.d.ts +1 -0
  530. package/dist/icons/generated/edit-05.js +10 -0
  531. package/dist/icons/generated/edit-05.js.map +1 -0
  532. package/dist/icons/generated/eye-off.d.ts +1 -0
  533. package/dist/icons/generated/eye-off.js +10 -0
  534. package/dist/icons/generated/eye-off.js.map +1 -0
  535. package/dist/icons/generated/eye.d.ts +1 -0
  536. package/dist/icons/generated/eye.js +13 -0
  537. package/dist/icons/generated/eye.js.map +1 -0
  538. package/dist/icons/generated/face-content.d.ts +1 -0
  539. package/dist/icons/generated/face-content.js +10 -0
  540. package/dist/icons/generated/face-content.js.map +1 -0
  541. package/dist/icons/generated/face-frown.d.ts +1 -0
  542. package/dist/icons/generated/face-frown.js +10 -0
  543. package/dist/icons/generated/face-frown.js.map +1 -0
  544. package/dist/icons/generated/face-happy.d.ts +1 -0
  545. package/dist/icons/generated/face-happy.js +10 -0
  546. package/dist/icons/generated/face-happy.js.map +1 -0
  547. package/dist/icons/generated/face-id.d.ts +1 -0
  548. package/dist/icons/generated/face-id.js +10 -0
  549. package/dist/icons/generated/face-id.js.map +1 -0
  550. package/dist/icons/generated/female.d.ts +1 -0
  551. package/dist/icons/generated/female.js +10 -0
  552. package/dist/icons/generated/female.js.map +1 -0
  553. package/dist/icons/generated/file-06.d.ts +1 -0
  554. package/dist/icons/generated/file-06.js +10 -0
  555. package/dist/icons/generated/file-06.js.map +1 -0
  556. package/dist/icons/generated/file-lock-02.d.ts +1 -0
  557. package/dist/icons/generated/file-lock-02.js +10 -0
  558. package/dist/icons/generated/file-lock-02.js.map +1 -0
  559. package/dist/icons/generated/filter-funnel-01.d.ts +1 -0
  560. package/dist/icons/generated/filter-funnel-01.js +10 -0
  561. package/dist/icons/generated/filter-funnel-01.js.map +1 -0
  562. package/dist/icons/generated/filter-lines.d.ts +1 -0
  563. package/dist/icons/generated/filter-lines.js +10 -0
  564. package/dist/icons/generated/filter-lines.js.map +1 -0
  565. package/dist/icons/generated/fingerprint-01.d.ts +1 -0
  566. package/dist/icons/generated/fingerprint-01.js +10 -0
  567. package/dist/icons/generated/fingerprint-01.js.map +1 -0
  568. package/dist/icons/generated/fingerprint-04.d.ts +1 -0
  569. package/dist/icons/generated/fingerprint-04.js +10 -0
  570. package/dist/icons/generated/fingerprint-04.js.map +1 -0
  571. package/dist/icons/generated/flag-01.d.ts +1 -0
  572. package/dist/icons/generated/flag-01.js +10 -0
  573. package/dist/icons/generated/flag-01.js.map +1 -0
  574. package/dist/icons/generated/flash-off.d.ts +1 -0
  575. package/dist/icons/generated/flash-off.js +10 -0
  576. package/dist/icons/generated/flash-off.js.map +1 -0
  577. package/dist/icons/generated/flash.d.ts +1 -0
  578. package/dist/icons/generated/flash.js +10 -0
  579. package/dist/icons/generated/flash.js.map +1 -0
  580. package/dist/icons/generated/flip-backward.d.ts +1 -0
  581. package/dist/icons/generated/flip-backward.js +10 -0
  582. package/dist/icons/generated/flip-backward.js.map +1 -0
  583. package/dist/icons/generated/globe-01.d.ts +1 -0
  584. package/dist/icons/generated/globe-01.js +10 -0
  585. package/dist/icons/generated/globe-01.js.map +1 -0
  586. package/dist/icons/generated/globe-04.d.ts +1 -0
  587. package/dist/icons/generated/globe-04.js +10 -0
  588. package/dist/icons/generated/globe-04.js.map +1 -0
  589. package/dist/icons/generated/heart.d.ts +1 -0
  590. package/dist/icons/generated/heart.js +17 -0
  591. package/dist/icons/generated/heart.js.map +1 -0
  592. package/dist/icons/generated/help-circle.d.ts +1 -0
  593. package/dist/icons/generated/help-circle.js +10 -0
  594. package/dist/icons/generated/help-circle.js.map +1 -0
  595. package/dist/icons/generated/help-square.d.ts +1 -0
  596. package/dist/icons/generated/help-square.js +10 -0
  597. package/dist/icons/generated/help-square.js.map +1 -0
  598. package/dist/icons/generated/home-02.d.ts +1 -0
  599. package/dist/icons/generated/home-02.js +10 -0
  600. package/dist/icons/generated/home-02.js.map +1 -0
  601. package/dist/icons/generated/hourglass-01.d.ts +1 -0
  602. package/dist/icons/generated/hourglass-01.js +10 -0
  603. package/dist/icons/generated/hourglass-01.js.map +1 -0
  604. package/dist/icons/generated/image-01.d.ts +1 -0
  605. package/dist/icons/generated/image-01.js +10 -0
  606. package/dist/icons/generated/image-01.js.map +1 -0
  607. package/dist/icons/generated/image-03.d.ts +1 -0
  608. package/dist/icons/generated/image-03.js +10 -0
  609. package/dist/icons/generated/image-03.js.map +1 -0
  610. package/dist/icons/generated/image-check.d.ts +1 -0
  611. package/dist/icons/generated/image-check.js +10 -0
  612. package/dist/icons/generated/image-check.js.map +1 -0
  613. package/dist/icons/generated/image-plus.d.ts +1 -0
  614. package/dist/icons/generated/image-plus.js +10 -0
  615. package/dist/icons/generated/image-plus.js.map +1 -0
  616. package/dist/icons/generated/inbox-01.d.ts +1 -0
  617. package/dist/icons/generated/inbox-01.js +10 -0
  618. package/dist/icons/generated/inbox-01.js.map +1 -0
  619. package/dist/icons/generated/info-circle.d.ts +1 -0
  620. package/dist/icons/generated/info-circle.js +10 -0
  621. package/dist/icons/generated/info-circle.js.map +1 -0
  622. package/dist/icons/generated/info-square.d.ts +1 -0
  623. package/dist/icons/generated/info-square.js +10 -0
  624. package/dist/icons/generated/info-square.js.map +1 -0
  625. package/dist/icons/generated/key-02.d.ts +1 -0
  626. package/dist/icons/generated/key-02.js +10 -0
  627. package/dist/icons/generated/key-02.js.map +1 -0
  628. package/dist/icons/generated/link-01.d.ts +1 -0
  629. package/dist/icons/generated/link-01.js +10 -0
  630. package/dist/icons/generated/link-01.js.map +1 -0
  631. package/dist/icons/generated/link-03.d.ts +1 -0
  632. package/dist/icons/generated/link-03.js +10 -0
  633. package/dist/icons/generated/link-03.js.map +1 -0
  634. package/dist/icons/generated/link-broken-01.d.ts +1 -0
  635. package/dist/icons/generated/link-broken-01.js +10 -0
  636. package/dist/icons/generated/link-broken-01.js.map +1 -0
  637. package/dist/icons/generated/link-external-01.d.ts +1 -0
  638. package/dist/icons/generated/link-external-01.js +10 -0
  639. package/dist/icons/generated/link-external-01.js.map +1 -0
  640. package/dist/icons/generated/loading-01.d.ts +1 -0
  641. package/dist/icons/generated/loading-01.js +10 -0
  642. package/dist/icons/generated/loading-01.js.map +1 -0
  643. package/dist/icons/generated/lock-01.d.ts +1 -0
  644. package/dist/icons/generated/lock-01.js +10 -0
  645. package/dist/icons/generated/lock-01.js.map +1 -0
  646. package/dist/icons/generated/lock-03.d.ts +1 -0
  647. package/dist/icons/generated/lock-03.js +10 -0
  648. package/dist/icons/generated/lock-03.js.map +1 -0
  649. package/dist/icons/generated/lock-unlocked-01.d.ts +1 -0
  650. package/dist/icons/generated/lock-unlocked-01.js +10 -0
  651. package/dist/icons/generated/lock-unlocked-01.js.map +1 -0
  652. package/dist/icons/generated/log-in-01.d.ts +1 -0
  653. package/dist/icons/generated/log-in-01.js +10 -0
  654. package/dist/icons/generated/log-in-01.js.map +1 -0
  655. package/dist/icons/generated/log-out-01.d.ts +1 -0
  656. package/dist/icons/generated/log-out-01.js +10 -0
  657. package/dist/icons/generated/log-out-01.js.map +1 -0
  658. package/dist/icons/generated/mail-01.d.ts +1 -0
  659. package/dist/icons/generated/mail-01.js +10 -0
  660. package/dist/icons/generated/mail-01.js.map +1 -0
  661. package/dist/icons/generated/mail-02.d.ts +1 -0
  662. package/dist/icons/generated/mail-02.js +10 -0
  663. package/dist/icons/generated/mail-02.js.map +1 -0
  664. package/dist/icons/generated/male.d.ts +1 -0
  665. package/dist/icons/generated/male.js +10 -0
  666. package/dist/icons/generated/male.js.map +1 -0
  667. package/dist/icons/generated/marker-pin-01.d.ts +1 -0
  668. package/dist/icons/generated/marker-pin-01.js +13 -0
  669. package/dist/icons/generated/marker-pin-01.js.map +1 -0
  670. package/dist/icons/generated/medical-circle.d.ts +1 -0
  671. package/dist/icons/generated/medical-circle.js +13 -0
  672. package/dist/icons/generated/medical-circle.js.map +1 -0
  673. package/dist/icons/generated/medical-cross.d.ts +1 -0
  674. package/dist/icons/generated/medical-cross.js +10 -0
  675. package/dist/icons/generated/medical-cross.js.map +1 -0
  676. package/dist/icons/generated/medical-square.d.ts +1 -0
  677. package/dist/icons/generated/medical-square.js +13 -0
  678. package/dist/icons/generated/medical-square.js.map +1 -0
  679. package/dist/icons/generated/menu-01.d.ts +1 -0
  680. package/dist/icons/generated/menu-01.js +10 -0
  681. package/dist/icons/generated/menu-01.js.map +1 -0
  682. package/dist/icons/generated/message-alert-square.d.ts +1 -0
  683. package/dist/icons/generated/message-alert-square.js +10 -0
  684. package/dist/icons/generated/message-alert-square.js.map +1 -0
  685. package/dist/icons/generated/message-check-square.d.ts +1 -0
  686. package/dist/icons/generated/message-check-square.js +10 -0
  687. package/dist/icons/generated/message-check-square.js.map +1 -0
  688. package/dist/icons/generated/message-notification-square.d.ts +1 -0
  689. package/dist/icons/generated/message-notification-square.js +10 -0
  690. package/dist/icons/generated/message-notification-square.js.map +1 -0
  691. package/dist/icons/generated/message-plus-square.d.ts +1 -0
  692. package/dist/icons/generated/message-plus-square.js +10 -0
  693. package/dist/icons/generated/message-plus-square.js.map +1 -0
  694. package/dist/icons/generated/message-question-square.d.ts +1 -0
  695. package/dist/icons/generated/message-question-square.js +10 -0
  696. package/dist/icons/generated/message-question-square.js.map +1 -0
  697. package/dist/icons/generated/message-smile-square.d.ts +1 -0
  698. package/dist/icons/generated/message-smile-square.js +10 -0
  699. package/dist/icons/generated/message-smile-square.js.map +1 -0
  700. package/dist/icons/generated/message-x-square.d.ts +1 -0
  701. package/dist/icons/generated/message-x-square.js +10 -0
  702. package/dist/icons/generated/message-x-square.js.map +1 -0
  703. package/dist/icons/generated/message.d.ts +1 -0
  704. package/dist/icons/generated/message.js +10 -0
  705. package/dist/icons/generated/message.js.map +1 -0
  706. package/dist/icons/generated/microphone-01.d.ts +1 -0
  707. package/dist/icons/generated/microphone-01.js +10 -0
  708. package/dist/icons/generated/microphone-01.js.map +1 -0
  709. package/dist/icons/generated/microphone-off-01.d.ts +1 -0
  710. package/dist/icons/generated/microphone-off-01.js +10 -0
  711. package/dist/icons/generated/microphone-off-01.js.map +1 -0
  712. package/dist/icons/generated/microscope.d.ts +1 -0
  713. package/dist/icons/generated/microscope.js +10 -0
  714. package/dist/icons/generated/microscope.js.map +1 -0
  715. package/dist/icons/generated/minus.d.ts +1 -0
  716. package/dist/icons/generated/minus.js +7 -0
  717. package/dist/icons/generated/minus.js.map +1 -0
  718. package/dist/icons/generated/paperclip.d.ts +1 -0
  719. package/dist/icons/generated/paperclip.js +10 -0
  720. package/dist/icons/generated/paperclip.js.map +1 -0
  721. package/dist/icons/generated/passport.d.ts +1 -0
  722. package/dist/icons/generated/passport.js +10 -0
  723. package/dist/icons/generated/passport.js.map +1 -0
  724. package/dist/icons/generated/pause-circle.d.ts +1 -0
  725. package/dist/icons/generated/pause-circle.js +10 -0
  726. package/dist/icons/generated/pause-circle.js.map +1 -0
  727. package/dist/icons/generated/phone-02.d.ts +1 -0
  728. package/dist/icons/generated/phone-02.js +10 -0
  729. package/dist/icons/generated/phone-02.js.map +1 -0
  730. package/dist/icons/generated/phone.d.ts +1 -0
  731. package/dist/icons/generated/phone.js +10 -0
  732. package/dist/icons/generated/phone.js.map +1 -0
  733. package/dist/icons/generated/pill.d.ts +1 -0
  734. package/dist/icons/generated/pill.js +10 -0
  735. package/dist/icons/generated/pill.js.map +1 -0
  736. package/dist/icons/generated/pin-01.d.ts +1 -0
  737. package/dist/icons/generated/pin-01.js +10 -0
  738. package/dist/icons/generated/pin-01.js.map +1 -0
  739. package/dist/icons/generated/pin-02.d.ts +1 -0
  740. package/dist/icons/generated/pin-02.js +10 -0
  741. package/dist/icons/generated/pin-02.js.map +1 -0
  742. package/dist/icons/generated/play.d.ts +1 -0
  743. package/dist/icons/generated/play.js +10 -0
  744. package/dist/icons/generated/play.js.map +1 -0
  745. package/dist/icons/generated/plus-circle.d.ts +1 -0
  746. package/dist/icons/generated/plus-circle.js +10 -0
  747. package/dist/icons/generated/plus-circle.js.map +1 -0
  748. package/dist/icons/generated/plus-square.d.ts +1 -0
  749. package/dist/icons/generated/plus-square.js +10 -0
  750. package/dist/icons/generated/plus-square.js.map +1 -0
  751. package/dist/icons/generated/plus.d.ts +1 -0
  752. package/dist/icons/generated/plus.js +7 -0
  753. package/dist/icons/generated/plus.js.map +1 -0
  754. package/dist/icons/generated/prescription.d.ts +1 -0
  755. package/dist/icons/generated/prescription.js +10 -0
  756. package/dist/icons/generated/prescription.js.map +1 -0
  757. package/dist/icons/generated/receipt-check.d.ts +1 -0
  758. package/dist/icons/generated/receipt-check.js +10 -0
  759. package/dist/icons/generated/receipt-check.js.map +1 -0
  760. package/dist/icons/generated/receipt.d.ts +1 -0
  761. package/dist/icons/generated/receipt.js +10 -0
  762. package/dist/icons/generated/receipt.js.map +1 -0
  763. package/dist/icons/generated/refresh-ccw-01.d.ts +1 -0
  764. package/dist/icons/generated/refresh-ccw-01.js +10 -0
  765. package/dist/icons/generated/refresh-ccw-01.js.map +1 -0
  766. package/dist/icons/generated/refresh-ccw-02.d.ts +1 -0
  767. package/dist/icons/generated/refresh-ccw-02.js +10 -0
  768. package/dist/icons/generated/refresh-ccw-02.js.map +1 -0
  769. package/dist/icons/generated/reverse-left.d.ts +1 -0
  770. package/dist/icons/generated/reverse-left.js +10 -0
  771. package/dist/icons/generated/reverse-left.js.map +1 -0
  772. package/dist/icons/generated/scan.d.ts +1 -0
  773. package/dist/icons/generated/scan.js +10 -0
  774. package/dist/icons/generated/scan.js.map +1 -0
  775. package/dist/icons/generated/search-lg.d.ts +1 -0
  776. package/dist/icons/generated/search-lg.js +10 -0
  777. package/dist/icons/generated/search-lg.js.map +1 -0
  778. package/dist/icons/generated/search-md.d.ts +1 -0
  779. package/dist/icons/generated/search-md.js +10 -0
  780. package/dist/icons/generated/search-md.js.map +1 -0
  781. package/dist/icons/generated/search-sm.d.ts +1 -0
  782. package/dist/icons/generated/search-sm.js +10 -0
  783. package/dist/icons/generated/search-sm.js.map +1 -0
  784. package/dist/icons/generated/send-01.d.ts +1 -0
  785. package/dist/icons/generated/send-01.js +10 -0
  786. package/dist/icons/generated/send-01.js.map +1 -0
  787. package/dist/icons/generated/settings-02.d.ts +1 -0
  788. package/dist/icons/generated/settings-02.js +13 -0
  789. package/dist/icons/generated/settings-02.js.map +1 -0
  790. package/dist/icons/generated/settings-04.d.ts +1 -0
  791. package/dist/icons/generated/settings-04.js +10 -0
  792. package/dist/icons/generated/settings-04.js.map +1 -0
  793. package/dist/icons/generated/share-01.d.ts +1 -0
  794. package/dist/icons/generated/share-01.js +10 -0
  795. package/dist/icons/generated/share-01.js.map +1 -0
  796. package/dist/icons/generated/share-03.d.ts +1 -0
  797. package/dist/icons/generated/share-03.js +10 -0
  798. package/dist/icons/generated/share-03.js.map +1 -0
  799. package/dist/icons/generated/share-06.d.ts +1 -0
  800. package/dist/icons/generated/share-06.js +10 -0
  801. package/dist/icons/generated/share-06.js.map +1 -0
  802. package/dist/icons/generated/share-07.d.ts +1 -0
  803. package/dist/icons/generated/share-07.js +10 -0
  804. package/dist/icons/generated/share-07.js.map +1 -0
  805. package/dist/icons/generated/shield-tick.d.ts +1 -0
  806. package/dist/icons/generated/shield-tick.js +10 -0
  807. package/dist/icons/generated/shield-tick.js.map +1 -0
  808. package/dist/icons/generated/slash-circle-01.d.ts +1 -0
  809. package/dist/icons/generated/slash-circle-01.js +10 -0
  810. package/dist/icons/generated/slash-circle-01.js.map +1 -0
  811. package/dist/icons/generated/star-01.d.ts +1 -0
  812. package/dist/icons/generated/star-01.js +10 -0
  813. package/dist/icons/generated/star-01.js.map +1 -0
  814. package/dist/icons/generated/star-04.d.ts +1 -0
  815. package/dist/icons/generated/star-04.js +10 -0
  816. package/dist/icons/generated/star-04.js.map +1 -0
  817. package/dist/icons/generated/star-06.d.ts +1 -0
  818. package/dist/icons/generated/star-06.js +10 -0
  819. package/dist/icons/generated/star-06.js.map +1 -0
  820. package/dist/icons/generated/stethoscope-doctor.d.ts +1 -0
  821. package/dist/icons/generated/stethoscope-doctor.js +14 -0
  822. package/dist/icons/generated/stethoscope-doctor.js.map +1 -0
  823. package/dist/icons/generated/tag-01.d.ts +1 -0
  824. package/dist/icons/generated/tag-01.js +10 -0
  825. package/dist/icons/generated/tag-01.js.map +1 -0
  826. package/dist/icons/generated/thumbs-down.d.ts +1 -0
  827. package/dist/icons/generated/thumbs-down.js +10 -0
  828. package/dist/icons/generated/thumbs-down.js.map +1 -0
  829. package/dist/icons/generated/thumbs-up.d.ts +1 -0
  830. package/dist/icons/generated/thumbs-up.js +10 -0
  831. package/dist/icons/generated/thumbs-up.js.map +1 -0
  832. package/dist/icons/generated/trash-01.d.ts +1 -0
  833. package/dist/icons/generated/trash-01.js +10 -0
  834. package/dist/icons/generated/trash-01.js.map +1 -0
  835. package/dist/icons/generated/trash-02.d.ts +1 -0
  836. package/dist/icons/generated/trash-02.js +10 -0
  837. package/dist/icons/generated/trash-02.js.map +1 -0
  838. package/dist/icons/generated/upload-01.d.ts +1 -0
  839. package/dist/icons/generated/upload-01.js +10 -0
  840. package/dist/icons/generated/upload-01.js.map +1 -0
  841. package/dist/icons/generated/user-01.d.ts +1 -0
  842. package/dist/icons/generated/user-01.js +10 -0
  843. package/dist/icons/generated/user-01.js.map +1 -0
  844. package/dist/icons/generated/user-03.d.ts +1 -0
  845. package/dist/icons/generated/user-03.js +10 -0
  846. package/dist/icons/generated/user-03.js.map +1 -0
  847. package/dist/icons/generated/user-check-01.d.ts +1 -0
  848. package/dist/icons/generated/user-check-01.js +10 -0
  849. package/dist/icons/generated/user-check-01.js.map +1 -0
  850. package/dist/icons/generated/user-check-02.d.ts +1 -0
  851. package/dist/icons/generated/user-check-02.js +10 -0
  852. package/dist/icons/generated/user-check-02.js.map +1 -0
  853. package/dist/icons/generated/user-edit.d.ts +1 -0
  854. package/dist/icons/generated/user-edit.js +10 -0
  855. package/dist/icons/generated/user-edit.js.map +1 -0
  856. package/dist/icons/generated/user-plus-01.d.ts +1 -0
  857. package/dist/icons/generated/user-plus-01.js +10 -0
  858. package/dist/icons/generated/user-plus-01.js.map +1 -0
  859. package/dist/icons/generated/user-square.d.ts +1 -0
  860. package/dist/icons/generated/user-square.js +10 -0
  861. package/dist/icons/generated/user-square.js.map +1 -0
  862. package/dist/icons/generated/users-02.d.ts +1 -0
  863. package/dist/icons/generated/users-02.js +10 -0
  864. package/dist/icons/generated/users-02.js.map +1 -0
  865. package/dist/icons/generated/video-recorder-off.d.ts +1 -0
  866. package/dist/icons/generated/video-recorder-off.js +10 -0
  867. package/dist/icons/generated/video-recorder-off.js.map +1 -0
  868. package/dist/icons/generated/video-recorder.d.ts +1 -0
  869. package/dist/icons/generated/video-recorder.js +13 -0
  870. package/dist/icons/generated/video-recorder.js.map +1 -0
  871. package/dist/icons/generated/virus.d.ts +1 -0
  872. package/dist/icons/generated/virus.js +10 -0
  873. package/dist/icons/generated/virus.js.map +1 -0
  874. package/dist/icons/generated/weight.d.ts +1 -0
  875. package/dist/icons/generated/weight.js +15 -0
  876. package/dist/icons/generated/weight.js.map +1 -0
  877. package/dist/icons/generated/x-close.d.ts +1 -0
  878. package/dist/icons/generated/x-close.js +10 -0
  879. package/dist/icons/generated/x-close.js.map +1 -0
  880. package/dist/icons/generated/x.d.ts +1 -0
  881. package/dist/icons/generated/x.js +7 -0
  882. package/dist/icons/generated/x.js.map +1 -0
  883. package/dist/icons/generated/zap.d.ts +1 -0
  884. package/dist/icons/generated/zap.js +10 -0
  885. package/dist/icons/generated/zap.js.map +1 -0
  886. package/dist/icons/index.d.ts +182 -0
  887. package/dist/icons/index.js +542 -0
  888. package/dist/icons/index.js.map +1 -0
  889. package/dist/index.d.ts +73 -0
  890. package/dist/index.js +263 -0
  891. package/dist/index.js.map +1 -0
  892. package/dist/lib/cn.d.ts +2 -0
  893. package/dist/lib/cn.js +51 -0
  894. package/dist/lib/cn.js.map +1 -0
  895. package/dist/provider/index.d.ts +2 -0
  896. package/dist/provider/labels.d.ts +97 -0
  897. package/dist/provider/labels.js +99 -0
  898. package/dist/provider/labels.js.map +1 -0
  899. package/dist/provider/medicore-provider.d.ts +10 -0
  900. package/dist/provider/medicore-provider.js +19 -0
  901. package/dist/provider/medicore-provider.js.map +1 -0
  902. package/dist/styles/primitives.css +59 -0
  903. package/dist/styles/theme.css +15 -0
  904. package/dist/styles/tokens.css +253 -0
  905. package/dist/styles/typography.css +115 -0
  906. package/dist/styles/utilities.css +37 -0
  907. package/package.json +80 -0
@@ -0,0 +1,83 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Field } from "@base-ui/react/field";
3
+ import { ChevronDownIcon } from "../../icons/generated/chevron-down.js";
4
+ import { cn } from "../../lib/cn.js";
5
+ import { controlIcon, wrappedControlStates, controlHeight, controlBox } from "../input/control-styles.js";
6
+ function NativeSelect({
7
+ size = "default",
8
+ invalid = false,
9
+ leadingIcon,
10
+ placeholder,
11
+ className,
12
+ children,
13
+ id,
14
+ name,
15
+ value,
16
+ defaultValue,
17
+ disabled,
18
+ onValueChange,
19
+ "aria-describedby": ariaDescribedBy,
20
+ ref,
21
+ ...props
22
+ }) {
23
+ const startOnPlaceholder = placeholder !== void 0 && value === void 0 && defaultValue === void 0;
24
+ return /* @__PURE__ */ jsxs(
25
+ "div",
26
+ {
27
+ "data-slot": "native-select",
28
+ className: cn(
29
+ "group/control relative flex items-center text-label-default",
30
+ controlBox,
31
+ controlHeight[size],
32
+ wrappedControlStates,
33
+ className
34
+ ),
35
+ children: [
36
+ leadingIcon && /* @__PURE__ */ jsx(
37
+ "span",
38
+ {
39
+ className: cn(controlIcon, "pointer-events-none absolute start-3"),
40
+ children: leadingIcon
41
+ }
42
+ ),
43
+ /* @__PURE__ */ jsx(
44
+ Field.Control,
45
+ {
46
+ ref,
47
+ "data-slot": "native-select-control",
48
+ id,
49
+ name,
50
+ value,
51
+ defaultValue: startOnPlaceholder ? "" : defaultValue,
52
+ disabled,
53
+ onValueChange,
54
+ "aria-describedby": ariaDescribedBy,
55
+ "aria-invalid": invalid && !disabled ? true : void 0,
56
+ className: cn(
57
+ "size-full min-w-0 cursor-pointer appearance-none truncate bg-transparent pe-9 outline-none",
58
+ "enabled:has-[option[value='']:checked]:text-text-secondary disabled:cursor-not-allowed",
59
+ // Some platforms paint the open list with the select's colours.
60
+ "[&_option]:bg-background [&_option]:text-text-primary",
61
+ leadingIcon ? "ps-9" : "ps-3"
62
+ ),
63
+ render: /* @__PURE__ */ jsxs("select", { ...props, children: [
64
+ placeholder !== void 0 && /* @__PURE__ */ jsx("option", { value: "", disabled: true, hidden: true, children: placeholder }),
65
+ children
66
+ ] })
67
+ }
68
+ ),
69
+ /* @__PURE__ */ jsx(
70
+ ChevronDownIcon,
71
+ {
72
+ size: "sm",
73
+ className: "pointer-events-none absolute end-3 text-text-primary group-has-[select:disabled]/control:text-text-disabled"
74
+ }
75
+ )
76
+ ]
77
+ }
78
+ );
79
+ }
80
+ export {
81
+ NativeSelect
82
+ };
83
+ //# sourceMappingURL=native-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select.js","sources":["../../../src/components/select/native-select.tsx"],"sourcesContent":["import { Field as BaseField } from \"@base-ui/react/field\";\nimport type { ComponentProps, ReactNode, Ref } from \"react\";\n\nimport { ChevronDownIcon } from \"../../icons\";\nimport { cn } from \"../../lib/cn\";\nimport {\n type ControlSize,\n controlBox,\n controlHeight,\n controlIcon,\n wrappedControlStates,\n} from \"../input/control-styles\";\n\nexport interface NativeSelectProps\n extends Omit<ComponentProps<\"select\">, \"className\" | \"size\" | \"ref\"> {\n ref?: Ref<HTMLSelectElement>;\n /** `default` 40px, `small` 36px: the same heights as Input and Button. */\n size?: ControlSize;\n /** Red 2px border and `aria-invalid`. The message goes under it, in `Field`. */\n invalid?: boolean;\n /** Content icon before the value. The chevron is structure, not a prop. */\n leadingIcon?: ReactNode;\n /**\n * First, unselectable option shown in text-secondary while nothing is chosen\n * (\"Elige una opción\"). Without `value`/`defaultValue` the select starts on it.\n */\n placeholder?: string;\n /** Called with the chosen option's value. */\n onValueChange?: (value: string) => void;\n /** Applied to the box: use it for the width. */\n className?: string;\n}\n\n/**\n * Dropdown on a native `<select>` with the geometry of Input. The default choice,\n * and the only one on mobile: it opens the operating system's picker and is\n * accessible out of the box (keyboard, screen reader, type to search). GOV.UK uses it\n * by rule; Doctolib on mobile.\n *\n * Options are plain `<option>` / `<optgroup>` children. For a list styled like\n * MediCore on desktop use `Select`.\n */\nexport function NativeSelect({\n size = \"default\",\n invalid = false,\n leadingIcon,\n placeholder,\n className,\n children,\n id,\n name,\n value,\n defaultValue,\n disabled,\n onValueChange,\n \"aria-describedby\": ariaDescribedBy,\n ref,\n ...props\n}: NativeSelectProps): React.JSX.Element {\n const startOnPlaceholder =\n placeholder !== undefined &&\n value === undefined &&\n defaultValue === undefined;\n\n return (\n <div\n data-slot=\"native-select\"\n className={cn(\n \"group/control relative flex items-center text-label-default\",\n controlBox,\n controlHeight[size],\n wrappedControlStates,\n className,\n )}\n >\n {leadingIcon && (\n <span\n className={cn(controlIcon, \"pointer-events-none absolute start-3\")}\n >\n {leadingIcon}\n </span>\n )}\n <BaseField.Control\n ref={ref}\n data-slot=\"native-select-control\"\n id={id}\n name={name}\n value={value}\n defaultValue={startOnPlaceholder ? \"\" : defaultValue}\n disabled={disabled}\n onValueChange={onValueChange}\n aria-describedby={ariaDescribedBy}\n aria-invalid={invalid && !disabled ? true : undefined}\n className={cn(\n \"size-full min-w-0 cursor-pointer appearance-none truncate bg-transparent pe-9 outline-none\",\n \"enabled:has-[option[value='']:checked]:text-text-secondary disabled:cursor-not-allowed\",\n // Some platforms paint the open list with the select's colours.\n \"[&_option]:bg-background [&_option]:text-text-primary\",\n leadingIcon ? \"ps-9\" : \"ps-3\",\n )}\n render={\n <select {...props}>\n {placeholder !== undefined && (\n <option value=\"\" disabled hidden>\n {placeholder}\n </option>\n )}\n {children}\n </select>\n }\n />\n <ChevronDownIcon\n size=\"sm\"\n className=\"pointer-events-none absolute end-3 text-text-primary group-has-[select:disabled]/control:text-text-disabled\"\n />\n </div>\n );\n}\n"],"names":["BaseField"],"mappings":";;;;;AA0CO,SAAS,aAAa;AAAA,EAC3B,OAAO;AAAA,EACP,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB;AAAA,EACA,GAAG;AACL,GAAyC;AACvC,QAAM,qBACJ,gBAAgB,UAChB,UAAU,UACV,iBAAiB;AAEnB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA,cAAc,IAAI;AAAA,QAClB;AAAA,QACA;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAA,eACC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAW,GAAG,aAAa,sCAAsC;AAAA,YAEhE,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGL;AAAA,UAACA,MAAU;AAAA,UAAV;AAAA,YACC;AAAA,YACA,aAAU;AAAA,YACV;AAAA,YACA;AAAA,YACA;AAAA,YACA,cAAc,qBAAqB,KAAK;AAAA,YACxC;AAAA,YACA;AAAA,YACA,oBAAkB;AAAA,YAClB,gBAAc,WAAW,CAAC,WAAW,OAAO;AAAA,YAC5C,WAAW;AAAA,cACT;AAAA,cACA;AAAA;AAAA,cAEA;AAAA,cACA,cAAc,SAAS;AAAA,YAAA;AAAA,YAEzB,QACE,qBAAC,UAAA,EAAQ,GAAG,OACT,UAAA;AAAA,cAAA,gBAAgB,8BACd,UAAA,EAAO,OAAM,IAAG,UAAQ,MAAC,QAAM,MAC7B,UAAA,YAAA,CACH;AAAA,cAED;AAAA,YAAA,EAAA,CACH;AAAA,UAAA;AAAA,QAAA;AAAA,QAGJ;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,WAAU;AAAA,UAAA;AAAA,QAAA;AAAA,MACZ;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -0,0 +1,49 @@
1
+ import { Select as BaseSelect } from "@base-ui/react/select";
2
+ import { type ReactNode, type Ref } from "react";
3
+ import { type ControlSize } from "../input/control-styles";
4
+ export interface SelectOption<Value> {
5
+ value: Value;
6
+ label: ReactNode;
7
+ disabled?: boolean;
8
+ }
9
+ export interface SelectProps<Value> extends Omit<BaseSelect.Root.Props<Value, false>, "multiple" | "items" | "children"> {
10
+ /** The options. Also lets the trigger show the label of the chosen value. */
11
+ items?: readonly SelectOption<Value>[];
12
+ /** Custom options (`SelectItem`) instead of `items`. */
13
+ children?: ReactNode;
14
+ /** Shown in text-secondary while nothing is chosen: "Elige una opción". */
15
+ placeholder?: ReactNode;
16
+ /** `default` 40px, `small` 36px: the same heights as Input and Button. */
17
+ size?: ControlSize;
18
+ /** Red 2px border and `aria-invalid`. The message goes under it, in `Field`. */
19
+ invalid?: boolean;
20
+ /** Content icon before the value. The chevron is structure, not a prop. */
21
+ leadingIcon?: ReactNode;
22
+ /** Applied to the trigger. */
23
+ className?: string;
24
+ "aria-label"?: string;
25
+ "aria-labelledby"?: string;
26
+ "aria-describedby"?: string;
27
+ ref?: Ref<HTMLButtonElement>;
28
+ }
29
+ /**
30
+ * Dropdown with a styled list (Base UI Select). The trigger has exactly the geometry
31
+ * of Input, so a field and a select in the same row only differ by the chevron.
32
+ *
33
+ * The open list is not in Figma on purpose. Prefer `NativeSelect` on mobile and
34
+ * whenever the options are plain text: it opens the operating system's picker and
35
+ * is accessible out of the box. Use this one on desktop screens (the clinics admin)
36
+ * where the list has to look like MediCore. Options that an `<option>` can't draw
37
+ * (a doctor with photo and licence number) are a `Menu`, not this.
38
+ *
39
+ * Name it with `Field`'s label, or with `aria-label` when there is no visible label.
40
+ */
41
+ export declare function Select<Value>({ items, children, placeholder, size, invalid, leadingIcon, className, disabled, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, ref, ...props }: SelectProps<Value>): React.JSX.Element;
42
+ export interface SelectItemProps extends Omit<BaseSelect.Item.Props, "className"> {
43
+ className?: string;
44
+ }
45
+ /**
46
+ * One option of `Select`: 40px rows like MenuItem (a list is used with a finger on
47
+ * it), surface on hover / arrow keys, a check on the chosen one.
48
+ */
49
+ export declare function SelectItem({ className, children, ...props }: SelectItemProps): React.JSX.Element;
@@ -0,0 +1,125 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Select as Select$1 } from "@base-ui/react/select";
3
+ import { useLayoutEffect } from "react";
4
+ import { CheckIcon } from "../../icons/generated/check.js";
5
+ import { ChevronDownIcon } from "../../icons/generated/chevron-down.js";
6
+ import { cn } from "../../lib/cn.js";
7
+ import { useFieldContext } from "../field/field-context.js";
8
+ import { controlIcon, triggerControlStates, controlHeight, controlRow, controlBox } from "../input/control-styles.js";
9
+ function Select({
10
+ items,
11
+ children,
12
+ placeholder,
13
+ size = "default",
14
+ invalid = false,
15
+ leadingIcon,
16
+ className,
17
+ disabled,
18
+ "aria-label": ariaLabel,
19
+ "aria-labelledby": ariaLabelledBy,
20
+ "aria-describedby": ariaDescribedBy,
21
+ ref,
22
+ ...props
23
+ }) {
24
+ const setNativeLabel = useFieldContext()?.setNativeLabel;
25
+ useLayoutEffect(() => {
26
+ if (!setNativeLabel) {
27
+ return void 0;
28
+ }
29
+ setNativeLabel(false);
30
+ return () => setNativeLabel(true);
31
+ }, [setNativeLabel]);
32
+ return /* @__PURE__ */ jsxs(Select$1.Root, { items, disabled, ...props, children: [
33
+ /* @__PURE__ */ jsxs(
34
+ Select$1.Trigger,
35
+ {
36
+ ref,
37
+ "data-slot": "select",
38
+ ...ariaLabel !== void 0 && { "aria-label": ariaLabel },
39
+ ...ariaLabelledBy !== void 0 && {
40
+ "aria-labelledby": ariaLabelledBy
41
+ },
42
+ "aria-describedby": ariaDescribedBy,
43
+ "aria-invalid": invalid && !disabled ? true : void 0,
44
+ className: cn(
45
+ "group/control cursor-pointer text-start",
46
+ controlBox,
47
+ controlRow,
48
+ controlHeight[size],
49
+ triggerControlStates,
50
+ className
51
+ ),
52
+ children: [
53
+ leadingIcon && /* @__PURE__ */ jsx("span", { className: controlIcon, children: leadingIcon }),
54
+ /* @__PURE__ */ jsx(
55
+ Select$1.Value,
56
+ {
57
+ placeholder,
58
+ className: "min-w-0 flex-1 truncate data-placeholder:text-text-secondary group-data-disabled/control:text-text-disabled"
59
+ }
60
+ ),
61
+ /* @__PURE__ */ jsx(Select$1.Icon, { className: "flex shrink-0 text-text-primary group-data-disabled/control:text-text-disabled", children: /* @__PURE__ */ jsx(ChevronDownIcon, { size: "sm" }) })
62
+ ]
63
+ }
64
+ ),
65
+ /* @__PURE__ */ jsx(Select$1.Portal, { children: /* @__PURE__ */ jsx(
66
+ Select$1.Positioner,
67
+ {
68
+ alignItemWithTrigger: false,
69
+ sideOffset: 4,
70
+ className: "z-50 outline-none",
71
+ children: /* @__PURE__ */ jsx(
72
+ Select$1.Popup,
73
+ {
74
+ "data-slot": "select-popup",
75
+ className: cn(
76
+ // Same surface as Menu: shadow-md to lift it and a border for when the
77
+ // shadow doesn't show (dark backgrounds, poor screens).
78
+ "max-h-[min(20rem,var(--available-height))] min-w-(--anchor-width) origin-(--transform-origin) overflow-y-auto",
79
+ "rounded-lg border border-border-subtle bg-background p-1 shadow-md outline-none",
80
+ "transition-[opacity,scale] duration-150 motion-reduce:transition-none",
81
+ "data-ending-style:scale-95 data-ending-style:opacity-0 data-starting-style:scale-95 data-starting-style:opacity-0"
82
+ ),
83
+ children: /* @__PURE__ */ jsx(Select$1.List, { children: children ?? items?.map((item) => /* @__PURE__ */ jsx(
84
+ SelectItem,
85
+ {
86
+ value: item.value,
87
+ disabled: item.disabled,
88
+ children: item.label
89
+ },
90
+ String(item.value)
91
+ )) })
92
+ }
93
+ )
94
+ }
95
+ ) })
96
+ ] });
97
+ }
98
+ function SelectItem({
99
+ className,
100
+ children,
101
+ ...props
102
+ }) {
103
+ return /* @__PURE__ */ jsxs(
104
+ Select$1.Item,
105
+ {
106
+ "data-slot": "select-item",
107
+ className: cn(
108
+ "flex h-control-md cursor-pointer select-none items-center gap-3 rounded-md px-3 text-label-default text-text-primary outline-none",
109
+ "data-highlighted:bg-surface focus-visible:ring-2 focus-visible:ring-border-focus focus-visible:ring-inset",
110
+ "data-disabled:cursor-not-allowed data-disabled:text-text-disabled",
111
+ className
112
+ ),
113
+ ...props,
114
+ children: [
115
+ /* @__PURE__ */ jsx(Select$1.ItemText, { className: "min-w-0 flex-1 truncate", children }),
116
+ /* @__PURE__ */ jsx(Select$1.ItemIndicator, { className: "flex shrink-0 text-text-brand", children: /* @__PURE__ */ jsx(CheckIcon, { size: "sm" }) })
117
+ ]
118
+ }
119
+ );
120
+ }
121
+ export {
122
+ Select,
123
+ SelectItem
124
+ };
125
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.js","sources":["../../../src/components/select/select.tsx"],"sourcesContent":["import { Select as BaseSelect } from \"@base-ui/react/select\";\nimport { type ReactNode, type Ref, useLayoutEffect } from \"react\";\n\nimport { CheckIcon, ChevronDownIcon } from \"../../icons\";\nimport { cn } from \"../../lib/cn\";\nimport { useFieldContext } from \"../field/field-context\";\nimport {\n type ControlSize,\n controlBox,\n controlHeight,\n controlIcon,\n controlRow,\n triggerControlStates,\n} from \"../input/control-styles\";\n\nexport interface SelectOption<Value> {\n value: Value;\n label: ReactNode;\n disabled?: boolean;\n}\n\nexport interface SelectProps<Value>\n extends Omit<\n BaseSelect.Root.Props<Value, false>,\n \"multiple\" | \"items\" | \"children\"\n > {\n /** The options. Also lets the trigger show the label of the chosen value. */\n items?: readonly SelectOption<Value>[];\n /** Custom options (`SelectItem`) instead of `items`. */\n children?: ReactNode;\n /** Shown in text-secondary while nothing is chosen: \"Elige una opción\". */\n placeholder?: ReactNode;\n /** `default` 40px, `small` 36px: the same heights as Input and Button. */\n size?: ControlSize;\n /** Red 2px border and `aria-invalid`. The message goes under it, in `Field`. */\n invalid?: boolean;\n /** Content icon before the value. The chevron is structure, not a prop. */\n leadingIcon?: ReactNode;\n /** Applied to the trigger. */\n className?: string;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n \"aria-describedby\"?: string;\n ref?: Ref<HTMLButtonElement>;\n}\n\n/**\n * Dropdown with a styled list (Base UI Select). The trigger has exactly the geometry\n * of Input, so a field and a select in the same row only differ by the chevron.\n *\n * The open list is not in Figma on purpose. Prefer `NativeSelect` on mobile and\n * whenever the options are plain text: it opens the operating system's picker and\n * is accessible out of the box. Use this one on desktop screens (the clinics admin)\n * where the list has to look like MediCore. Options that an `<option>` can't draw\n * (a doctor with photo and licence number) are a `Menu`, not this.\n *\n * Name it with `Field`'s label, or with `aria-label` when there is no visible label.\n */\nexport function Select<Value>({\n items,\n children,\n placeholder,\n size = \"default\",\n invalid = false,\n leadingIcon,\n className,\n disabled,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n ref,\n ...props\n}: SelectProps<Value>): React.JSX.Element {\n const setNativeLabel = useFieldContext()?.setNativeLabel;\n\n // A native <label> around a button would open the list on click: Field renders a\n // non-native label while a Select is inside.\n useLayoutEffect(() => {\n if (!setNativeLabel) {\n return undefined;\n }\n setNativeLabel(false);\n return () => setNativeLabel(true);\n }, [setNativeLabel]);\n\n return (\n <BaseSelect.Root items={items} disabled={disabled} {...props}>\n <BaseSelect.Trigger\n ref={ref}\n data-slot=\"select\"\n // Only when given: an explicit undefined would override Field's aria-labelledby.\n {...(ariaLabel !== undefined && { \"aria-label\": ariaLabel })}\n {...(ariaLabelledBy !== undefined && {\n \"aria-labelledby\": ariaLabelledBy,\n })}\n aria-describedby={ariaDescribedBy}\n aria-invalid={invalid && !disabled ? true : undefined}\n className={cn(\n \"group/control cursor-pointer text-start\",\n controlBox,\n controlRow,\n controlHeight[size],\n triggerControlStates,\n className,\n )}\n >\n {leadingIcon && <span className={controlIcon}>{leadingIcon}</span>}\n <BaseSelect.Value\n placeholder={placeholder}\n className=\"min-w-0 flex-1 truncate data-placeholder:text-text-secondary group-data-disabled/control:text-text-disabled\"\n />\n <BaseSelect.Icon className=\"flex shrink-0 text-text-primary group-data-disabled/control:text-text-disabled\">\n <ChevronDownIcon size=\"sm\" />\n </BaseSelect.Icon>\n </BaseSelect.Trigger>\n <BaseSelect.Portal>\n <BaseSelect.Positioner\n alignItemWithTrigger={false}\n sideOffset={4}\n className=\"z-50 outline-none\"\n >\n <BaseSelect.Popup\n data-slot=\"select-popup\"\n className={cn(\n // Same surface as Menu: shadow-md to lift it and a border for when the\n // shadow doesn't show (dark backgrounds, poor screens).\n \"max-h-[min(20rem,var(--available-height))] min-w-(--anchor-width) origin-(--transform-origin) overflow-y-auto\",\n \"rounded-lg border border-border-subtle bg-background p-1 shadow-md outline-none\",\n \"transition-[opacity,scale] duration-150 motion-reduce:transition-none\",\n \"data-ending-style:scale-95 data-ending-style:opacity-0 data-starting-style:scale-95 data-starting-style:opacity-0\",\n )}\n >\n <BaseSelect.List>\n {children ??\n items?.map((item) => (\n <SelectItem\n key={String(item.value)}\n value={item.value}\n disabled={item.disabled}\n >\n {item.label}\n </SelectItem>\n ))}\n </BaseSelect.List>\n </BaseSelect.Popup>\n </BaseSelect.Positioner>\n </BaseSelect.Portal>\n </BaseSelect.Root>\n );\n}\n\nexport interface SelectItemProps\n extends Omit<BaseSelect.Item.Props, \"className\"> {\n className?: string;\n}\n\n/**\n * One option of `Select`: 40px rows like MenuItem (a list is used with a finger on\n * it), surface on hover / arrow keys, a check on the chosen one.\n */\nexport function SelectItem({\n className,\n children,\n ...props\n}: SelectItemProps): React.JSX.Element {\n return (\n <BaseSelect.Item\n data-slot=\"select-item\"\n className={cn(\n \"flex h-control-md cursor-pointer select-none items-center gap-3 rounded-md px-3 text-label-default text-text-primary outline-none\",\n \"data-highlighted:bg-surface focus-visible:ring-2 focus-visible:ring-border-focus focus-visible:ring-inset\",\n \"data-disabled:cursor-not-allowed data-disabled:text-text-disabled\",\n className,\n )}\n {...props}\n >\n <BaseSelect.ItemText className=\"min-w-0 flex-1 truncate\">\n {children}\n </BaseSelect.ItemText>\n <BaseSelect.ItemIndicator className=\"flex shrink-0 text-text-brand\">\n <CheckIcon size=\"sm\" />\n </BaseSelect.ItemIndicator>\n </BaseSelect.Item>\n );\n}\n"],"names":["BaseSelect"],"mappings":";;;;;;;;AA0DO,SAAS,OAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,oBAAoB;AAAA,EACpB;AAAA,EACA,GAAG;AACL,GAA0C;AACxC,QAAM,iBAAiB,mBAAmB;AAI1C,kBAAgB,MAAM;AACpB,QAAI,CAAC,gBAAgB;AACnB,aAAO;AAAA,IACT;AACA,mBAAe,KAAK;AACpB,WAAO,MAAM,eAAe,IAAI;AAAA,EAClC,GAAG,CAAC,cAAc,CAAC;AAEnB,8BACGA,SAAW,MAAX,EAAgB,OAAc,UAAqB,GAAG,OACrD,UAAA;AAAA,IAAA;AAAA,MAACA,SAAW;AAAA,MAAX;AAAA,QACC;AAAA,QACA,aAAU;AAAA,QAET,GAAI,cAAc,UAAa,EAAE,cAAc,UAAA;AAAA,QAC/C,GAAI,mBAAmB,UAAa;AAAA,UACnC,mBAAmB;AAAA,QAAA;AAAA,QAErB,oBAAkB;AAAA,QAClB,gBAAc,WAAW,CAAC,WAAW,OAAO;AAAA,QAC5C,WAAW;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,UACA,cAAc,IAAI;AAAA,UAClB;AAAA,UACA;AAAA,QAAA;AAAA,QAGD,UAAA;AAAA,UAAA,eAAe,oBAAC,QAAA,EAAK,WAAW,aAAc,UAAA,aAAY;AAAA,UAC3D;AAAA,YAACA,SAAW;AAAA,YAAX;AAAA,cACC;AAAA,cACA,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,UAEZ,oBAACA,SAAW,MAAX,EAAgB,WAAU,kFACzB,UAAA,oBAAC,iBAAA,EAAgB,MAAK,KAAA,CAAK,EAAA,CAC7B;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAEF,oBAACA,SAAW,QAAX,EACC,UAAA;AAAA,MAACA,SAAW;AAAA,MAAX;AAAA,QACC,sBAAsB;AAAA,QACtB,YAAY;AAAA,QACZ,WAAU;AAAA,QAEV,UAAA;AAAA,UAACA,SAAW;AAAA,UAAX;AAAA,YACC,aAAU;AAAA,YACV,WAAW;AAAA;AAAA;AAAA,cAGT;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YAAA;AAAA,YAGF,UAAA,oBAACA,SAAW,MAAX,EACE,sBACC,OAAO,IAAI,CAAC,SACV;AAAA,cAAC;AAAA,cAAA;AAAA,gBAEC,OAAO,KAAK;AAAA,gBACZ,UAAU,KAAK;AAAA,gBAEd,UAAA,KAAK;AAAA,cAAA;AAAA,cAJD,OAAO,KAAK,KAAK;AAAA,YAAA,CAMzB,EAAA,CACL;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA,EACF,CACF;AAAA,EAAA,GACF;AAEJ;AAWO,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAuC;AACrC,SACE;AAAA,IAACA,SAAW;AAAA,IAAX;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA,oBAACA,SAAW,UAAX,EAAoB,WAAU,2BAC5B,UACH;AAAA,QACA,oBAACA,SAAW,eAAX,EAAyB,WAAU,iCAClC,UAAA,oBAAC,WAAA,EAAU,MAAK,KAAA,CAAK,EAAA,CACvB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -0,0 +1 @@
1
+ export { SelectionCard, SelectionCardGroup, type SelectionCardGroupProps, type SelectionCardProps, } from "./selection-card";
@@ -0,0 +1,31 @@
1
+ import { Radio as BaseRadio } from "@base-ui/react/radio";
2
+ import { type ReactNode } from "react";
3
+ import { type RadioGroupProps } from "../radio/radio";
4
+ export interface SelectionCardGroupProps<Value = string> extends RadioGroupProps<Value> {
5
+ }
6
+ /**
7
+ * The group of `SelectionCard`s: one choice, arrow keys to move between cards.
8
+ * Name it with `aria-labelledby` (the question: "¿Cómo quieres la consulta?") or put
9
+ * it inside `Field` (Control=Custom).
10
+ */
11
+ export declare function SelectionCardGroup<Value = string>({ className, ...props }: SelectionCardGroupProps<Value>): React.JSX.Element;
12
+ export interface SelectionCardProps<Value = string> extends Omit<BaseRadio.Root.Props<Value>, "className" | "children" | "title"> {
13
+ /** "Videoconsulta". It is the radio's accessible name. */
14
+ title: ReactNode;
15
+ /**
16
+ * What the person needs to know to choose: "Con cámara, desde el móvil o el
17
+ * ordenador". Leave it out if it adds nothing new; don't fill it in.
18
+ */
19
+ description?: ReactNode;
20
+ /** A MediCore icon, shown in a 40px IconContainer that turns brand when selected. */
21
+ icon?: ReactNode;
22
+ className?: string;
23
+ }
24
+ /**
25
+ * Large selectable option: consultation type, payment method, who the appointment is
26
+ * for. Goes inside `SelectionCardGroup`.
27
+ *
28
+ * The whole card is the target (a `<label>` wrapping a real radio), at least 56px
29
+ * high. Selected reads without colour: 2px border, ticked radio and the icon in brand.
30
+ */
31
+ export declare function SelectionCard<Value = string>({ title, description, icon, className, ...props }: SelectionCardProps<Value>): React.JSX.Element;
@@ -0,0 +1,90 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Radio } from "@base-ui/react/radio";
3
+ import { useId } from "react";
4
+ import { cn } from "../../lib/cn.js";
5
+ import { FieldItemLabel } from "../radio/field-item-label.js";
6
+ import { RadioDot, radioVariants, RadioGroup } from "../radio/radio.js";
7
+ import { IconContainer } from "../icon-container/icon-container.js";
8
+ function SelectionCardGroup({
9
+ className,
10
+ ...props
11
+ }) {
12
+ return /* @__PURE__ */ jsx(
13
+ RadioGroup,
14
+ {
15
+ "data-slot": "selection-card-group",
16
+ className: cn("gap-3", className),
17
+ ...props
18
+ }
19
+ );
20
+ }
21
+ function SelectionCard({
22
+ title,
23
+ description,
24
+ icon,
25
+ className,
26
+ ...props
27
+ }) {
28
+ const id = useId();
29
+ const titleId = `${id}-title`;
30
+ const descriptionId = `${id}-description`;
31
+ return /* @__PURE__ */ jsxs(
32
+ FieldItemLabel,
33
+ {
34
+ "data-slot": "selection-card",
35
+ className: cn(
36
+ "group/selection-card flex min-h-14 cursor-pointer items-center gap-3 rounded-lg border border-border bg-background p-4 transition-colors",
37
+ "focus-ring-within",
38
+ // 2px border without moving the content: the 1px border plus a 1px inset ring.
39
+ "has-data-checked:border-text-brand has-data-checked:bg-brand-subtle has-data-checked:inset-ring has-data-checked:inset-ring-text-brand",
40
+ "has-data-disabled:cursor-not-allowed has-data-disabled:border-border-subtle has-data-disabled:bg-surface",
41
+ className
42
+ ),
43
+ children: [
44
+ icon && /* @__PURE__ */ jsx(
45
+ IconContainer,
46
+ {
47
+ size: 40,
48
+ tone: "neutral",
49
+ icon,
50
+ className: "group-has-data-checked/selection-card:bg-brand-subtle group-has-data-checked/selection-card:text-text-brand group-has-data-disabled/selection-card:opacity-50"
51
+ }
52
+ ),
53
+ /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
54
+ /* @__PURE__ */ jsx(
55
+ "span",
56
+ {
57
+ id: titleId,
58
+ className: "text-label-strong text-text-primary group-has-data-disabled/selection-card:text-text-disabled",
59
+ children: title
60
+ }
61
+ ),
62
+ description && /* @__PURE__ */ jsx(
63
+ "span",
64
+ {
65
+ id: descriptionId,
66
+ className: "text-body-small text-text-secondary group-has-data-checked/selection-card:text-text-primary group-has-data-disabled/selection-card:text-text-disabled",
67
+ children: description
68
+ }
69
+ )
70
+ ] }),
71
+ /* @__PURE__ */ jsx(
72
+ Radio.Root,
73
+ {
74
+ "data-slot": "selection-card-radio",
75
+ "aria-labelledby": titleId,
76
+ "aria-describedby": description ? descriptionId : void 0,
77
+ className: radioVariants({ standalone: false }),
78
+ ...props,
79
+ children: /* @__PURE__ */ jsx(RadioDot, {})
80
+ }
81
+ )
82
+ ]
83
+ }
84
+ );
85
+ }
86
+ export {
87
+ SelectionCard,
88
+ SelectionCardGroup
89
+ };
90
+ //# sourceMappingURL=selection-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection-card.js","sources":["../../../src/components/selection-card/selection-card.tsx"],"sourcesContent":["import { Radio as BaseRadio } from \"@base-ui/react/radio\";\nimport { type ReactNode, useId } from \"react\";\n\nimport { cn } from \"../../lib/cn\";\nimport { IconContainer } from \"../icon-container\";\nimport { FieldItemLabel } from \"../radio/field-item-label\";\nimport {\n RadioDot,\n RadioGroup,\n type RadioGroupProps,\n radioVariants,\n} from \"../radio/radio\";\n\nexport interface SelectionCardGroupProps<Value = string>\n extends RadioGroupProps<Value> {}\n\n/**\n * The group of `SelectionCard`s: one choice, arrow keys to move between cards.\n * Name it with `aria-labelledby` (the question: \"¿Cómo quieres la consulta?\") or put\n * it inside `Field` (Control=Custom).\n */\nexport function SelectionCardGroup<Value = string>({\n className,\n ...props\n}: SelectionCardGroupProps<Value>): React.JSX.Element {\n return (\n <RadioGroup<Value>\n data-slot=\"selection-card-group\"\n className={cn(\"gap-3\", className)}\n {...props}\n />\n );\n}\n\nexport interface SelectionCardProps<Value = string>\n extends Omit<\n BaseRadio.Root.Props<Value>,\n \"className\" | \"children\" | \"title\"\n > {\n /** \"Videoconsulta\". It is the radio's accessible name. */\n title: ReactNode;\n /**\n * What the person needs to know to choose: \"Con cámara, desde el móvil o el\n * ordenador\". Leave it out if it adds nothing new; don't fill it in.\n */\n description?: ReactNode;\n /** A MediCore icon, shown in a 40px IconContainer that turns brand when selected. */\n icon?: ReactNode;\n className?: string;\n}\n\n/**\n * Large selectable option: consultation type, payment method, who the appointment is\n * for. Goes inside `SelectionCardGroup`.\n *\n * The whole card is the target (a `<label>` wrapping a real radio), at least 56px\n * high. Selected reads without colour: 2px border, ticked radio and the icon in brand.\n */\nexport function SelectionCard<Value = string>({\n title,\n description,\n icon,\n className,\n ...props\n}: SelectionCardProps<Value>): React.JSX.Element {\n const id = useId();\n const titleId = `${id}-title`;\n const descriptionId = `${id}-description`;\n\n return (\n <FieldItemLabel\n data-slot=\"selection-card\"\n className={cn(\n \"group/selection-card flex min-h-14 cursor-pointer items-center gap-3 rounded-lg border border-border bg-background p-4 transition-colors\",\n \"focus-ring-within\",\n // 2px border without moving the content: the 1px border plus a 1px inset ring.\n \"has-data-checked:border-text-brand has-data-checked:bg-brand-subtle has-data-checked:inset-ring has-data-checked:inset-ring-text-brand\",\n \"has-data-disabled:cursor-not-allowed has-data-disabled:border-border-subtle has-data-disabled:bg-surface\",\n className,\n )}\n >\n {icon && (\n <IconContainer\n size={40}\n tone=\"neutral\"\n icon={icon}\n className=\"group-has-data-checked/selection-card:bg-brand-subtle group-has-data-checked/selection-card:text-text-brand group-has-data-disabled/selection-card:opacity-50\"\n />\n )}\n <span className=\"flex min-w-0 flex-1 flex-col gap-0.5\">\n <span\n id={titleId}\n className=\"text-label-strong text-text-primary group-has-data-disabled/selection-card:text-text-disabled\"\n >\n {title}\n </span>\n {description && (\n <span\n id={descriptionId}\n className=\"text-body-small text-text-secondary group-has-data-checked/selection-card:text-text-primary group-has-data-disabled/selection-card:text-text-disabled\"\n >\n {description}\n </span>\n )}\n </span>\n <BaseRadio.Root\n data-slot=\"selection-card-radio\"\n aria-labelledby={titleId}\n aria-describedby={description ? descriptionId : undefined}\n className={radioVariants({ standalone: false })}\n {...props}\n >\n <RadioDot />\n </BaseRadio.Root>\n </FieldItemLabel>\n );\n}\n"],"names":["BaseRadio"],"mappings":";;;;;;;AAqBO,SAAS,mBAAmC;AAAA,EACjD;AAAA,EACA,GAAG;AACL,GAAsD;AACpD,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,SAAS,SAAS;AAAA,MAC/B,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AA0BO,SAAS,cAA8B;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAiD;AAC/C,QAAM,KAAK,MAAA;AACX,QAAM,UAAU,GAAG,EAAE;AACrB,QAAM,gBAAgB,GAAG,EAAE;AAE3B,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAA,QACC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAM;AAAA,YACN,MAAK;AAAA,YACL;AAAA,YACA,WAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAGd,qBAAC,QAAA,EAAK,WAAU,wCACd,UAAA;AAAA,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,cACJ,WAAU;AAAA,cAET,UAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAEF,eACC;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,cACJ,WAAU;AAAA,cAET,UAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QACH,GAEJ;AAAA,QACA;AAAA,UAACA,MAAU;AAAA,UAAV;AAAA,YACC,aAAU;AAAA,YACV,mBAAiB;AAAA,YACjB,oBAAkB,cAAc,gBAAgB;AAAA,YAChD,WAAW,cAAc,EAAE,YAAY,OAAO;AAAA,YAC7C,GAAG;AAAA,YAEJ,8BAAC,UAAA,CAAA,CAAS;AAAA,UAAA;AAAA,QAAA;AAAA,MACZ;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -0,0 +1 @@
1
+ export { SeverityIndicator, type SeverityIndicatorProps, severityIndicatorVariants, } from "./severity-indicator";
@@ -0,0 +1,18 @@
1
+ import type { ComponentProps } from "react";
2
+ import type { SeverityLevel } from "../severity-scale";
3
+ export declare const severityIndicatorVariants: (props?: ({
4
+ level?: 1 | 2 | 3 | 4 | 5 | null | undefined;
5
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
+ export interface SeverityIndicatorProps extends Omit<ComponentProps<"span">, "children"> {
7
+ /** 1 Muy leve · 2 Leve · 3 Moderada · 4 Alta · 5 Crítica. */
8
+ level: SeverityLevel;
9
+ }
10
+ /**
11
+ * The severity of an allergy or condition already recorded (1–5). Read only: to
12
+ * choose it use `SeverityScale`.
13
+ *
14
+ * The written label is the main cue; the dots and the colour back it up. Never drop
15
+ * the label: colour alone fails WCAG 1.4.1. It is a `role="img"` named "Gravedad 3
16
+ * de 5, moderada" (`severity` and `severityLevel` labels); the dots are hidden.
17
+ */
18
+ export declare function SeverityIndicator({ level, className, ...props }: SeverityIndicatorProps): React.JSX.Element;
@@ -0,0 +1,64 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { cn } from "../../lib/cn.js";
4
+ import { useMediCoreLabels } from "../../provider/medicore-provider.js";
5
+ const MAX = 5;
6
+ const DOTS = [1, 2, 3, 4, 5];
7
+ const severityIndicatorVariants = cva(
8
+ "inline-flex w-fit shrink-0 items-center gap-1 whitespace-nowrap rounded-full px-2 py-0.5 text-label-small text-text-primary",
9
+ {
10
+ variants: {
11
+ level: {
12
+ 1: "bg-accent-subtle",
13
+ 2: "bg-accent-subtle",
14
+ 3: "bg-warning-subtle",
15
+ 4: "bg-error-subtle",
16
+ 5: "bg-error-subtle"
17
+ }
18
+ }
19
+ }
20
+ );
21
+ const dotColors = {
22
+ 1: "bg-text-accent",
23
+ 2: "bg-text-accent",
24
+ 3: "bg-text-warning",
25
+ 4: "bg-text-error",
26
+ 5: "bg-text-error"
27
+ };
28
+ function SeverityIndicator({
29
+ level,
30
+ className,
31
+ ...props
32
+ }) {
33
+ const labels = useMediCoreLabels();
34
+ const name = labels.severityLevel(level);
35
+ return /* @__PURE__ */ jsxs(
36
+ "span",
37
+ {
38
+ "data-slot": "severity-indicator",
39
+ "data-level": level,
40
+ role: "img",
41
+ "aria-label": labels.severity(level, MAX, name),
42
+ className: cn(severityIndicatorVariants({ level }), className),
43
+ ...props,
44
+ children: [
45
+ /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "flex items-center gap-0.5", children: DOTS.map((dot) => /* @__PURE__ */ jsx(
46
+ "span",
47
+ {
48
+ className: cn(
49
+ "size-2 rounded-full",
50
+ dot <= level ? dotColors[level] : "bg-text-disabled"
51
+ )
52
+ },
53
+ dot
54
+ )) }),
55
+ /* @__PURE__ */ jsx("span", { "aria-hidden": true, children: name })
56
+ ]
57
+ }
58
+ );
59
+ }
60
+ export {
61
+ SeverityIndicator,
62
+ severityIndicatorVariants
63
+ };
64
+ //# sourceMappingURL=severity-indicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"severity-indicator.js","sources":["../../../src/components/severity-indicator/severity-indicator.tsx"],"sourcesContent":["import { cva } from \"class-variance-authority\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"../../lib/cn\";\nimport { useMediCoreLabels } from \"../../provider\";\nimport type { SeverityLevel } from \"../severity-scale\";\n\nconst MAX = 5;\nconst DOTS = [1, 2, 3, 4, 5] as const;\n\n// Fill in *-subtle and the label in text-primary, which passes in both modes: the\n// orange of text-warning on warning-subtle is 3.93:1, so it only colours the dots.\nexport const severityIndicatorVariants = cva(\n \"inline-flex w-fit shrink-0 items-center gap-1 whitespace-nowrap rounded-full px-2 py-0.5 text-label-small text-text-primary\",\n {\n variants: {\n level: {\n 1: \"bg-accent-subtle\",\n 2: \"bg-accent-subtle\",\n 3: \"bg-warning-subtle\",\n 4: \"bg-error-subtle\",\n 5: \"bg-error-subtle\",\n },\n },\n },\n);\n\nconst dotColors: Record<SeverityLevel, string> = {\n 1: \"bg-text-accent\",\n 2: \"bg-text-accent\",\n 3: \"bg-text-warning\",\n 4: \"bg-text-error\",\n 5: \"bg-text-error\",\n};\n\nexport interface SeverityIndicatorProps\n extends Omit<ComponentProps<\"span\">, \"children\"> {\n /** 1 Muy leve · 2 Leve · 3 Moderada · 4 Alta · 5 Crítica. */\n level: SeverityLevel;\n}\n\n/**\n * The severity of an allergy or condition already recorded (1–5). Read only: to\n * choose it use `SeverityScale`.\n *\n * The written label is the main cue; the dots and the colour back it up. Never drop\n * the label: colour alone fails WCAG 1.4.1. It is a `role=\"img\"` named \"Gravedad 3\n * de 5, moderada\" (`severity` and `severityLevel` labels); the dots are hidden.\n */\nexport function SeverityIndicator({\n level,\n className,\n ...props\n}: SeverityIndicatorProps): React.JSX.Element {\n const labels = useMediCoreLabels();\n const name = labels.severityLevel(level);\n\n return (\n <span\n data-slot=\"severity-indicator\"\n data-level={level}\n role=\"img\"\n aria-label={labels.severity(level, MAX, name)}\n className={cn(severityIndicatorVariants({ level }), className)}\n {...props}\n >\n <span aria-hidden className=\"flex items-center gap-0.5\">\n {DOTS.map((dot) => (\n <span\n key={dot}\n className={cn(\n \"size-2 rounded-full\",\n dot <= level ? dotColors[level] : \"bg-text-disabled\",\n )}\n />\n ))}\n </span>\n <span aria-hidden>{name}</span>\n </span>\n );\n}\n"],"names":[],"mappings":";;;;AAOA,MAAM,MAAM;AACZ,MAAM,OAAO,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;AAIpB,MAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,OAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,MAAA;AAAA,IACL;AAAA,EACF;AAEJ;AAEA,MAAM,YAA2C;AAAA,EAC/C,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAgBO,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA8C;AAC5C,QAAM,SAAS,kBAAA;AACf,QAAM,OAAO,OAAO,cAAc,KAAK;AAEvC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,cAAY;AAAA,MACZ,MAAK;AAAA,MACL,cAAY,OAAO,SAAS,OAAO,KAAK,IAAI;AAAA,MAC5C,WAAW,GAAG,0BAA0B,EAAE,MAAA,CAAO,GAAG,SAAS;AAAA,MAC5D,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA,oBAAC,QAAA,EAAK,eAAW,MAAC,WAAU,6BACzB,UAAA,KAAK,IAAI,CAAC,QACT;AAAA,UAAC;AAAA,UAAA;AAAA,YAEC,WAAW;AAAA,cACT;AAAA,cACA,OAAO,QAAQ,UAAU,KAAK,IAAI;AAAA,YAAA;AAAA,UACpC;AAAA,UAJK;AAAA,QAAA,CAMR,GACH;AAAA,QACA,oBAAC,QAAA,EAAK,eAAW,MAAE,UAAA,KAAA,CAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG9B;"}
@@ -0,0 +1 @@
1
+ export { type SeverityLevel, SeverityScale, type SeverityScaleProps, } from "./severity-scale";
@@ -0,0 +1,17 @@
1
+ import { type RadioGroupProps } from "../radio";
2
+ declare const LEVELS: readonly [1, 2, 3, 4, 5];
3
+ export type SeverityLevel = (typeof LEVELS)[number];
4
+ export interface SeverityScaleProps extends Omit<RadioGroupProps<SeverityLevel>, "children"> {
5
+ }
6
+ /**
7
+ * Clinical severity from 1 to 5, to record an allergy or a condition. Starts with
8
+ * nothing selected (don't pass `defaultValue`): preselecting a clinical value nudges
9
+ * the patient into leaving it.
10
+ *
11
+ * Goes inside `Field` (Control=Custom): its label names the group ("Gravedad") and
12
+ * its message explains the scale ("Del 1 (molestia leve) al 5 (reacción grave)").
13
+ * Without Field, name it with `aria-labelledby`. Every option is 44px high. To show
14
+ * a saved severity use Severity/Indicator, not this.
15
+ */
16
+ export declare function SeverityScale({ className, ...props }: SeverityScaleProps): React.JSX.Element;
17
+ export {};
@@ -0,0 +1,22 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { cn } from "../../lib/cn.js";
3
+ import { RadioGroup, RadioField } from "../radio/radio.js";
4
+ const LEVELS = [1, 2, 3, 4, 5];
5
+ function SeverityScale({
6
+ className,
7
+ ...props
8
+ }) {
9
+ return /* @__PURE__ */ jsx(
10
+ RadioGroup,
11
+ {
12
+ "data-slot": "severity-scale",
13
+ className: cn("flex-row flex-wrap gap-x-4", className),
14
+ ...props,
15
+ children: LEVELS.map((level) => /* @__PURE__ */ jsx(RadioField, { value: level, label: level }, level))
16
+ }
17
+ );
18
+ }
19
+ export {
20
+ SeverityScale
21
+ };
22
+ //# sourceMappingURL=severity-scale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"severity-scale.js","sources":["../../../src/components/severity-scale/severity-scale.tsx"],"sourcesContent":["import { cn } from \"../../lib/cn\";\nimport { RadioField, RadioGroup, type RadioGroupProps } from \"../radio\";\n\nconst LEVELS = [1, 2, 3, 4, 5] as const;\n\nexport type SeverityLevel = (typeof LEVELS)[number];\n\nexport interface SeverityScaleProps\n extends Omit<RadioGroupProps<SeverityLevel>, \"children\"> {}\n\n/**\n * Clinical severity from 1 to 5, to record an allergy or a condition. Starts with\n * nothing selected (don't pass `defaultValue`): preselecting a clinical value nudges\n * the patient into leaving it.\n *\n * Goes inside `Field` (Control=Custom): its label names the group (\"Gravedad\") and\n * its message explains the scale (\"Del 1 (molestia leve) al 5 (reacción grave)\").\n * Without Field, name it with `aria-labelledby`. Every option is 44px high. To show\n * a saved severity use Severity/Indicator, not this.\n */\nexport function SeverityScale({\n className,\n ...props\n}: SeverityScaleProps): React.JSX.Element {\n return (\n <RadioGroup<SeverityLevel>\n data-slot=\"severity-scale\"\n className={cn(\"flex-row flex-wrap gap-x-4\", className)}\n {...props}\n >\n {LEVELS.map((level) => (\n <RadioField<SeverityLevel> key={level} value={level} label={level} />\n ))}\n </RadioGroup>\n );\n}\n"],"names":[],"mappings":";;;AAGA,MAAM,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;AAiBtB,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA,GAAG;AACL,GAA0C;AACxC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,8BAA8B,SAAS;AAAA,MACpD,GAAG;AAAA,MAEH,UAAA,OAAO,IAAI,CAAC,UACX,oBAAC,YAAA,EAAsC,OAAO,OAAO,OAAO,MAAA,GAA5B,KAAmC,CACpE;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -0,0 +1 @@
1
+ export { Sidebar, SidebarFooter, type SidebarFooterProps, SidebarHeader, type SidebarHeaderProps, SidebarItem, type SidebarItemProps, SidebarNav, type SidebarNavProps, type SidebarProps, SidebarSection, type SidebarSectionProps, SidebarUser, type SidebarUserProps, useSidebar, } from "./sidebar";