@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 @@
1
+ {"version":3,"file":"availability-column.js","sources":["../../../src/components/availability-column/availability-column.tsx"],"sourcesContent":["import { Children, type ComponentProps, type ReactNode, useId } from \"react\";\n\nimport { cn } from \"../../lib/cn\";\nimport { useMediCoreLabels } from \"../../provider\";\nimport { DayCell } from \"../day-cell\";\nimport { TimeSlot } from \"../time-slot\";\n\nconst LOADING_SLOTS = [1, 2, 3, 4] as const;\n\nexport interface AvailabilityColumnProps\n extends Omit<ComponentProps<\"fieldset\">, \"children\"> {\n /** The day of the column. Its header (`DayCell`) is formatted from it. */\n date: Date;\n /** Default `\"es\"`. */\n locale?: string;\n /** The patient's time zone, to read `date` in. */\n timeZone?: string;\n today?: boolean;\n /**\n * The day's `TimeSlot`s, five at most: more than five per day in a result card is\n * noise, the rest go to the full agenda. None → the Empty state.\n */\n children?: ReactNode;\n /** The availability is loading: the day shows, the slots are grey placeholders. */\n loading?: boolean;\n}\n\n/**\n * One day of the agenda as a column: `DayCell` on top, its hours below, 64px wide\n * like both of them (if they didn't match, the grid would break). Goes inside\n * `TimeSlotGroup`; six of these side by side make `CardProfessional`'s agenda.\n *\n * It is a `<fieldset>` named by the full date, so a screen reader hears \"jueves, 1 de\n * octubre\" when entering the column. Empty (no slots) keeps its column with the day\n * dimmed and a dash: if it disappeared, the other days would shift and Tuesday would\n * be read as Monday.\n */\nexport function AvailabilityColumn({\n date,\n locale,\n timeZone,\n today,\n loading = false,\n className,\n children,\n ...props\n}: AvailabilityColumnProps): React.JSX.Element {\n const labels = useMediCoreLabels();\n const dayId = useId();\n const empty = !loading && Children.toArray(children).length === 0;\n\n return (\n <fieldset\n data-slot=\"availability-column\"\n aria-labelledby={dayId}\n aria-busy={loading || undefined}\n className={cn(\n \"flex w-16 min-w-0 shrink-0 flex-col items-center gap-2\",\n className,\n )}\n {...props}\n >\n <DayCell\n id={dayId}\n date={date}\n locale={locale}\n timeZone={timeZone}\n today={today}\n disabled={empty}\n />\n {loading && LOADING_SLOTS.map((slot) => <TimeSlot key={slot} loading />)}\n {empty && (\n <p className=\"text-body-default text-text-secondary\">\n <span aria-hidden>—</span>\n <span className=\"sr-only\">{labels.availabilityNoSlots}</span>\n </p>\n )}\n {!loading && children}\n </fieldset>\n );\n}\n"],"names":[],"mappings":";;;;;;AAOA,MAAM,gBAAgB,CAAC,GAAG,GAAG,GAAG,CAAC;AA8B1B,SAAS,mBAAmB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA+C;AAC7C,QAAM,SAAS,kBAAA;AACf,QAAM,QAAQ,MAAA;AACd,QAAM,QAAQ,CAAC,WAAW,SAAS,QAAQ,QAAQ,EAAE,WAAW;AAEhE,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,mBAAiB;AAAA,MACjB,aAAW,WAAW;AAAA,MACtB,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,YACJ;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,UAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAEX,WAAW,cAAc,IAAI,CAAC,6BAAU,UAAA,EAAoB,SAAO,KAAA,GAAb,IAAc,CAAE;AAAA,QACtE,SACC,qBAAC,KAAA,EAAE,WAAU,yCACX,UAAA;AAAA,UAAA,oBAAC,QAAA,EAAK,eAAW,MAAC,UAAA,KAAC;AAAA,UACnB,oBAAC,QAAA,EAAK,WAAU,WAAW,iBAAO,oBAAA,CAAoB;AAAA,QAAA,GACxD;AAAA,QAED,CAAC,WAAW;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGnB;"}
@@ -0,0 +1 @@
1
+ export { AvailabilityColumn, type AvailabilityColumnProps, } from "./availability-column";
@@ -0,0 +1,36 @@
1
+ import { type ComponentProps, type ReactNode } from "react";
2
+ export interface AvailabilityRowProps extends Omit<ComponentProps<"fieldset">, "children"> {
3
+ /** The day of the row. Its header (`DayCell`) is formatted from it. */
4
+ date: Date;
5
+ /** Default `"es"`. */
6
+ locale?: string;
7
+ /** The patient's time zone, to read `date` in. */
8
+ timeZone?: string;
9
+ today?: boolean;
10
+ /**
11
+ * The day's `TimeSlot`s, six at most (the portal shows four to seven; the rest go
12
+ * to the full agenda through `more`). None → the Empty state.
13
+ */
14
+ children?: ReactNode;
15
+ /**
16
+ * "+3 más": a `Link` to the professional's full agenda. It navigates, it doesn't
17
+ * load more slots here.
18
+ */
19
+ more?: ReactNode;
20
+ /**
21
+ * Empty state: the way out to the next day with availability, a `Link` ("Ver el
22
+ * jueves 25"). "No slots" without a way out is a dead end.
23
+ */
24
+ nextAvailable?: ReactNode;
25
+ /** The availability is loading: the day shows, the slots are grey placeholders. */
26
+ loading?: boolean;
27
+ }
28
+ /**
29
+ * One row of the agenda: the day and its hours, for compact single-day lists (the
30
+ * multi-day grid is `AvailabilityColumn`). Goes inside
31
+ * `<TimeSlotGroup layout="rows">`.
32
+ *
33
+ * It is a `<fieldset>` named by the full date. Empty (no slots) says "Sin huecos este día"
34
+ * (`availabilityNoSlotsThisDay` label) and offers the next day with slots.
35
+ */
36
+ export declare function AvailabilityRow({ date, locale, timeZone, today, more, nextAvailable, loading, className, children, ...props }: AvailabilityRowProps): React.JSX.Element;
@@ -0,0 +1,60 @@
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import { useId, Children } from "react";
3
+ import { cn } from "../../lib/cn.js";
4
+ import { useMediCoreLabels } from "../../provider/medicore-provider.js";
5
+ import { DayCell } from "../day-cell/day-cell.js";
6
+ import { TimeSlot } from "../time-slot/time-slot.js";
7
+ const LOADING_SLOTS = [1, 2, 3, 4];
8
+ function AvailabilityRow({
9
+ date,
10
+ locale,
11
+ timeZone,
12
+ today,
13
+ more,
14
+ nextAvailable,
15
+ loading = false,
16
+ className,
17
+ children,
18
+ ...props
19
+ }) {
20
+ const labels = useMediCoreLabels();
21
+ const dayId = useId();
22
+ const empty = !loading && Children.toArray(children).length === 0;
23
+ return /* @__PURE__ */ jsxs(
24
+ "fieldset",
25
+ {
26
+ "data-slot": "availability-row",
27
+ "aria-labelledby": dayId,
28
+ "aria-busy": loading || void 0,
29
+ className: cn("flex min-w-0 items-center gap-2", className),
30
+ ...props,
31
+ children: [
32
+ /* @__PURE__ */ jsx(
33
+ DayCell,
34
+ {
35
+ id: dayId,
36
+ date,
37
+ locale,
38
+ timeZone,
39
+ today,
40
+ disabled: empty
41
+ }
42
+ ),
43
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2", children: [
44
+ loading && LOADING_SLOTS.map((slot) => /* @__PURE__ */ jsx(TimeSlot, { loading: true }, slot)),
45
+ empty ? /* @__PURE__ */ jsxs(Fragment, { children: [
46
+ /* @__PURE__ */ jsx("p", { className: "text-body-small text-text-secondary", children: labels.availabilityNoSlotsThisDay }),
47
+ nextAvailable
48
+ ] }) : !loading && /* @__PURE__ */ jsxs(Fragment, { children: [
49
+ children,
50
+ more
51
+ ] })
52
+ ] })
53
+ ]
54
+ }
55
+ );
56
+ }
57
+ export {
58
+ AvailabilityRow
59
+ };
60
+ //# sourceMappingURL=availability-row.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"availability-row.js","sources":["../../../src/components/availability-row/availability-row.tsx"],"sourcesContent":["import { Children, type ComponentProps, type ReactNode, useId } from \"react\";\n\nimport { cn } from \"../../lib/cn\";\nimport { useMediCoreLabels } from \"../../provider\";\nimport { DayCell } from \"../day-cell\";\nimport { TimeSlot } from \"../time-slot\";\n\nconst LOADING_SLOTS = [1, 2, 3, 4] as const;\n\nexport interface AvailabilityRowProps\n extends Omit<ComponentProps<\"fieldset\">, \"children\"> {\n /** The day of the row. Its header (`DayCell`) is formatted from it. */\n date: Date;\n /** Default `\"es\"`. */\n locale?: string;\n /** The patient's time zone, to read `date` in. */\n timeZone?: string;\n today?: boolean;\n /**\n * The day's `TimeSlot`s, six at most (the portal shows four to seven; the rest go\n * to the full agenda through `more`). None → the Empty state.\n */\n children?: ReactNode;\n /**\n * \"+3 más\": a `Link` to the professional's full agenda. It navigates, it doesn't\n * load more slots here.\n */\n more?: ReactNode;\n /**\n * Empty state: the way out to the next day with availability, a `Link` (\"Ver el\n * jueves 25\"). \"No slots\" without a way out is a dead end.\n */\n nextAvailable?: ReactNode;\n /** The availability is loading: the day shows, the slots are grey placeholders. */\n loading?: boolean;\n}\n\n/**\n * One row of the agenda: the day and its hours, for compact single-day lists (the\n * multi-day grid is `AvailabilityColumn`). Goes inside\n * `<TimeSlotGroup layout=\"rows\">`.\n *\n * It is a `<fieldset>` named by the full date. Empty (no slots) says \"Sin huecos este día\"\n * (`availabilityNoSlotsThisDay` label) and offers the next day with slots.\n */\nexport function AvailabilityRow({\n date,\n locale,\n timeZone,\n today,\n more,\n nextAvailable,\n loading = false,\n className,\n children,\n ...props\n}: AvailabilityRowProps): React.JSX.Element {\n const labels = useMediCoreLabels();\n const dayId = useId();\n const empty = !loading && Children.toArray(children).length === 0;\n\n return (\n <fieldset\n data-slot=\"availability-row\"\n aria-labelledby={dayId}\n aria-busy={loading || undefined}\n className={cn(\"flex min-w-0 items-center gap-2\", className)}\n {...props}\n >\n <DayCell\n id={dayId}\n date={date}\n locale={locale}\n timeZone={timeZone}\n today={today}\n disabled={empty}\n />\n <div className=\"flex min-w-0 flex-1 flex-wrap items-center gap-2\">\n {loading &&\n LOADING_SLOTS.map((slot) => <TimeSlot key={slot} loading />)}\n {empty ? (\n <>\n <p className=\"text-body-small text-text-secondary\">\n {labels.availabilityNoSlotsThisDay}\n </p>\n {nextAvailable}\n </>\n ) : (\n !loading && (\n <>\n {children}\n {more}\n </>\n )\n )}\n </div>\n </fieldset>\n );\n}\n"],"names":[],"mappings":";;;;;;AAOA,MAAM,gBAAgB,CAAC,GAAG,GAAG,GAAG,CAAC;AAsC1B,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA4C;AAC1C,QAAM,SAAS,kBAAA;AACf,QAAM,QAAQ,MAAA;AACd,QAAM,QAAQ,CAAC,WAAW,SAAS,QAAQ,QAAQ,EAAE,WAAW;AAEhE,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,mBAAiB;AAAA,MACjB,aAAW,WAAW;AAAA,MACtB,WAAW,GAAG,mCAAmC,SAAS;AAAA,MACzD,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,YACJ;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,UAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAEZ,qBAAC,OAAA,EAAI,WAAU,oDACZ,UAAA;AAAA,UAAA,WACC,cAAc,IAAI,CAAC,6BAAU,UAAA,EAAoB,SAAO,KAAA,GAAb,IAAc,CAAE;AAAA,UAC5D,QACC,qBAAA,UAAA,EACE,UAAA;AAAA,YAAA,oBAAC,KAAA,EAAE,WAAU,uCACV,UAAA,OAAO,4BACV;AAAA,YACC;AAAA,UAAA,EAAA,CACH,IAEA,CAAC,WACC,qBAAA,UAAA,EACG,UAAA;AAAA,YAAA;AAAA,YACA;AAAA,UAAA,EAAA,CACH;AAAA,QAAA,EAAA,CAGN;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -0,0 +1 @@
1
+ export { AvailabilityRow, type AvailabilityRowProps } from "./availability-row";
@@ -0,0 +1,57 @@
1
+ import { Avatar as BaseAvatar } from "@base-ui/react/avatar";
2
+ export declare const avatarVariants: (props?: ({
3
+ size?: 24 | 32 | 40 | 48 | 56 | null | undefined;
4
+ shape?: "circle" | "square" | null | undefined;
5
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
+ export declare const avatarStatusVariants: (props?: ({
7
+ size?: 24 | 32 | 40 | 48 | 56 | null | undefined;
8
+ shape?: "circle" | "square" | null | undefined;
9
+ status?: "online" | "busy" | "away" | null | undefined;
10
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
+ export type AvatarSize = 24 | 32 | 40 | 48 | 56;
12
+ export type AvatarShape = "circle" | "square";
13
+ /** `online`: can attend now · `busy`: in a consultation, will be back · `away`: absent. */
14
+ export type AvatarStatus = "online" | "busy" | "away";
15
+ interface AvatarBaseProps extends Omit<BaseAvatar.Root.Props, "className" | "children"> {
16
+ /** 56 is the professional's: profile, chat header and appointment card. */
17
+ size?: AvatarSize;
18
+ /** `circle` for people. `square` only for entities: a medical centre, an insurer. */
19
+ shape?: AvatarShape;
20
+ /** Photo URL. Healthcare professionals ALWAYS have a real photo. */
21
+ src?: string;
22
+ /**
23
+ * Who it is ("Dra. Laura Díaz"). It names the whole avatar (photo or initials).
24
+ * Leave it out when the name is already visible next to it: the avatar is then
25
+ * hidden from screen readers (unless it has a status).
26
+ */
27
+ alt?: string;
28
+ /** Shown while there is no photo, or if it fails. For patients only, never for professionals. */
29
+ initials?: string;
30
+ className?: string;
31
+ }
32
+ interface AvatarWithStatusProps {
33
+ /** Availability dot, bottom-right. */
34
+ status: AvatarStatus;
35
+ /**
36
+ * The status in words ("en consulta"). Required: a coloured dot is not read by a
37
+ * screen reader. It is appended to `alt`: "Dra. Martín, en consulta".
38
+ */
39
+ statusLabel: string;
40
+ }
41
+ interface AvatarWithoutStatusProps {
42
+ status?: undefined;
43
+ statusLabel?: undefined;
44
+ }
45
+ export type AvatarProps = AvatarBaseProps & (AvatarWithStatusProps | AvatarWithoutStatusProps);
46
+ /**
47
+ * Person avatar: photo, or initials when there is none.
48
+ *
49
+ * - Healthcare professionals ALWAYS go with a real photo, name and licence number:
50
+ * it is the product's #1 trust element, never replaced by initials or an icon.
51
+ * Initials are for patients without a profile picture.
52
+ * - `circle` for people, `square` for entities (medical centre, insurer).
53
+ * - `status` adds the availability dot, which scales with the avatar
54
+ * (8 · 10 · 12 · 14 · 16). It always needs `statusLabel`.
55
+ */
56
+ export declare function Avatar({ size, shape, src, alt, initials, status, statusLabel, className, ...props }: AvatarProps): React.JSX.Element;
57
+ export {};
@@ -0,0 +1,115 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Avatar as Avatar$1 } from "@base-ui/react/avatar";
3
+ import { cva } from "class-variance-authority";
4
+ import { cn } from "../../lib/cn.js";
5
+ const avatarVariants = cva(
6
+ [
7
+ "relative inline-flex shrink-0 select-none items-center justify-center",
8
+ "bg-brand-subtle text-text-brand",
9
+ // Figma's 1px inside stroke. A pseudo-element so it is drawn over the photo too.
10
+ "before:pointer-events-none before:absolute before:inset-0 before:rounded-[inherit] before:border before:border-border-subtle"
11
+ ],
12
+ {
13
+ variants: {
14
+ // Initials scale with the avatar.
15
+ size: {
16
+ 24: "size-avatar-sm text-label-small",
17
+ 32: "size-avatar-md text-label-strong",
18
+ 40: "size-avatar-lg text-body-default-strong",
19
+ 48: "size-avatar-xl text-heading-h4",
20
+ 56: "size-avatar-2xl text-heading-h3"
21
+ },
22
+ shape: {
23
+ circle: "rounded-full",
24
+ square: "rounded-lg"
25
+ }
26
+ },
27
+ defaultVariants: {
28
+ size: 24,
29
+ shape: "circle"
30
+ }
31
+ }
32
+ );
33
+ const avatarStatusVariants = cva(
34
+ // 2px ring in the page background so the dot detaches from the photo.
35
+ "absolute right-0 bottom-0 rounded-full ring-2 ring-background",
36
+ {
37
+ variants: {
38
+ size: {
39
+ 24: "size-2",
40
+ 32: "size-2.5",
41
+ 40: "size-3",
42
+ 48: "size-3.5",
43
+ 56: "size-4"
44
+ },
45
+ // On a circle the corner is empty, so the dot sits flush; on a square it
46
+ // hangs a quarter of its size outside the corner.
47
+ shape: {
48
+ circle: "",
49
+ square: "translate-x-1/4 translate-y-1/4"
50
+ },
51
+ // The dark text-* shades, not the success/error/warning fills: the dot is often
52
+ // the ONLY sign of availability, so it needs 3:1 against the ring (#34C759 is
53
+ // 2.22:1; success-strong 5.39:1).
54
+ status: {
55
+ online: "bg-text-success",
56
+ busy: "bg-text-error",
57
+ away: "bg-text-warning"
58
+ }
59
+ },
60
+ defaultVariants: {
61
+ size: 24,
62
+ shape: "circle",
63
+ status: "online"
64
+ }
65
+ }
66
+ );
67
+ function Avatar({
68
+ size,
69
+ shape,
70
+ src,
71
+ alt,
72
+ initials,
73
+ status,
74
+ statusLabel,
75
+ className,
76
+ ...props
77
+ }) {
78
+ const label = [alt, status ? statusLabel : void 0].filter(Boolean).join(", ") || void 0;
79
+ return /* @__PURE__ */ jsxs(
80
+ Avatar$1.Root,
81
+ {
82
+ "data-slot": "avatar",
83
+ role: label ? "img" : void 0,
84
+ "aria-label": label,
85
+ "aria-hidden": label ? void 0 : true,
86
+ className: cn(avatarVariants({ size, shape }), className),
87
+ ...props,
88
+ children: [
89
+ src && /* @__PURE__ */ jsx(
90
+ Avatar$1.Image,
91
+ {
92
+ src,
93
+ alt: "",
94
+ className: "size-full rounded-[inherit] object-cover"
95
+ }
96
+ ),
97
+ initials && /* @__PURE__ */ jsx(Avatar$1.Fallback, { children: initials }),
98
+ status && /* @__PURE__ */ jsx(
99
+ "span",
100
+ {
101
+ "data-slot": "avatar-status",
102
+ "data-status": status,
103
+ className: avatarStatusVariants({ size, shape, status })
104
+ }
105
+ )
106
+ ]
107
+ }
108
+ );
109
+ }
110
+ export {
111
+ Avatar,
112
+ avatarStatusVariants,
113
+ avatarVariants
114
+ };
115
+ //# sourceMappingURL=avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.js","sources":["../../../src/components/avatar/avatar.tsx"],"sourcesContent":["import { Avatar as BaseAvatar } from \"@base-ui/react/avatar\";\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"../../lib/cn\";\n\nexport const avatarVariants = cva(\n [\n \"relative inline-flex shrink-0 select-none items-center justify-center\",\n \"bg-brand-subtle text-text-brand\",\n // Figma's 1px inside stroke. A pseudo-element so it is drawn over the photo too.\n \"before:pointer-events-none before:absolute before:inset-0 before:rounded-[inherit] before:border before:border-border-subtle\",\n ],\n {\n variants: {\n // Initials scale with the avatar.\n size: {\n 24: \"size-avatar-sm text-label-small\",\n 32: \"size-avatar-md text-label-strong\",\n 40: \"size-avatar-lg text-body-default-strong\",\n 48: \"size-avatar-xl text-heading-h4\",\n 56: \"size-avatar-2xl text-heading-h3\",\n },\n shape: {\n circle: \"rounded-full\",\n square: \"rounded-lg\",\n },\n },\n defaultVariants: {\n size: 24,\n shape: \"circle\",\n },\n },\n);\n\nexport const avatarStatusVariants = cva(\n // 2px ring in the page background so the dot detaches from the photo.\n \"absolute right-0 bottom-0 rounded-full ring-2 ring-background\",\n {\n variants: {\n size: {\n 24: \"size-2\",\n 32: \"size-2.5\",\n 40: \"size-3\",\n 48: \"size-3.5\",\n 56: \"size-4\",\n },\n // On a circle the corner is empty, so the dot sits flush; on a square it\n // hangs a quarter of its size outside the corner.\n shape: {\n circle: \"\",\n square: \"translate-x-1/4 translate-y-1/4\",\n },\n // The dark text-* shades, not the success/error/warning fills: the dot is often\n // the ONLY sign of availability, so it needs 3:1 against the ring (#34C759 is\n // 2.22:1; success-strong 5.39:1).\n status: {\n online: \"bg-text-success\",\n busy: \"bg-text-error\",\n away: \"bg-text-warning\",\n },\n },\n defaultVariants: {\n size: 24,\n shape: \"circle\",\n status: \"online\",\n },\n },\n);\n\nexport type AvatarSize = 24 | 32 | 40 | 48 | 56;\n\nexport type AvatarShape = \"circle\" | \"square\";\n\n/** `online`: can attend now · `busy`: in a consultation, will be back · `away`: absent. */\nexport type AvatarStatus = \"online\" | \"busy\" | \"away\";\n\ninterface AvatarBaseProps\n extends Omit<BaseAvatar.Root.Props, \"className\" | \"children\"> {\n /** 56 is the professional's: profile, chat header and appointment card. */\n size?: AvatarSize;\n /** `circle` for people. `square` only for entities: a medical centre, an insurer. */\n shape?: AvatarShape;\n /** Photo URL. Healthcare professionals ALWAYS have a real photo. */\n src?: string;\n /**\n * Who it is (\"Dra. Laura Díaz\"). It names the whole avatar (photo or initials).\n * Leave it out when the name is already visible next to it: the avatar is then\n * hidden from screen readers (unless it has a status).\n */\n alt?: string;\n /** Shown while there is no photo, or if it fails. For patients only, never for professionals. */\n initials?: string;\n className?: string;\n}\n\ninterface AvatarWithStatusProps {\n /** Availability dot, bottom-right. */\n status: AvatarStatus;\n /**\n * The status in words (\"en consulta\"). Required: a coloured dot is not read by a\n * screen reader. It is appended to `alt`: \"Dra. Martín, en consulta\".\n */\n statusLabel: string;\n}\n\ninterface AvatarWithoutStatusProps {\n status?: undefined;\n statusLabel?: undefined;\n}\n\nexport type AvatarProps = AvatarBaseProps &\n (AvatarWithStatusProps | AvatarWithoutStatusProps);\n\n/**\n * Person avatar: photo, or initials when there is none.\n *\n * - Healthcare professionals ALWAYS go with a real photo, name and licence number:\n * it is the product's #1 trust element, never replaced by initials or an icon.\n * Initials are for patients without a profile picture.\n * - `circle` for people, `square` for entities (medical centre, insurer).\n * - `status` adds the availability dot, which scales with the avatar\n * (8 · 10 · 12 · 14 · 16). It always needs `statusLabel`.\n */\nexport function Avatar({\n size,\n shape,\n src,\n alt,\n initials,\n status,\n statusLabel,\n className,\n ...props\n}: AvatarProps): React.JSX.Element {\n const label =\n [alt, status ? statusLabel : undefined].filter(Boolean).join(\", \") ||\n undefined;\n\n return (\n <BaseAvatar.Root\n data-slot=\"avatar\"\n role={label ? \"img\" : undefined}\n aria-label={label}\n aria-hidden={label ? undefined : true}\n className={cn(avatarVariants({ size, shape }), className)}\n {...props}\n >\n {src && (\n <BaseAvatar.Image\n src={src}\n alt=\"\"\n className=\"size-full rounded-[inherit] object-cover\"\n />\n )}\n {initials && <BaseAvatar.Fallback>{initials}</BaseAvatar.Fallback>}\n {status && (\n <span\n data-slot=\"avatar-status\"\n data-status={status}\n className={avatarStatusVariants({ size, shape, status })}\n />\n )}\n </BaseAvatar.Root>\n );\n}\n"],"names":["BaseAvatar"],"mappings":";;;;AAKO,MAAM,iBAAiB;AAAA,EAC5B;AAAA,IACE;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,EAAA;AAAA,EAEF;AAAA,IACE,UAAU;AAAA;AAAA,MAER,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,MAEN,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,QAAQ;AAAA,MAAA;AAAA,IACV;AAAA,IAEF,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ;AAEO,MAAM,uBAAuB;AAAA;AAAA,EAElC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA;AAAA;AAAA,MAIN,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,QAAQ;AAAA,MAAA;AAAA;AAAA;AAAA;AAAA,MAKV,QAAQ;AAAA,QACN,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,IAEF,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,IAAA;AAAA,EACV;AAEJ;AAwDO,SAAS,OAAO;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,QAAM,QACJ,CAAC,KAAK,SAAS,cAAc,MAAS,EAAE,OAAO,OAAO,EAAE,KAAK,IAAI,KACjE;AAEF,SACE;AAAA,IAACA,SAAW;AAAA,IAAX;AAAA,MACC,aAAU;AAAA,MACV,MAAM,QAAQ,QAAQ;AAAA,MACtB,cAAY;AAAA,MACZ,eAAa,QAAQ,SAAY;AAAA,MACjC,WAAW,GAAG,eAAe,EAAE,MAAM,MAAA,CAAO,GAAG,SAAS;AAAA,MACvD,GAAG;AAAA,MAEH,UAAA;AAAA,QAAA,OACC;AAAA,UAACA,SAAW;AAAA,UAAX;AAAA,YACC;AAAA,YACA,KAAI;AAAA,YACJ,WAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAGb,YAAY,oBAACA,SAAW,UAAX,EAAqB,UAAA,UAAS;AAAA,QAC3C,UACC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,aAAU;AAAA,YACV,eAAa;AAAA,YACb,WAAW,qBAAqB,EAAE,MAAM,OAAO,QAAQ;AAAA,UAAA;AAAA,QAAA;AAAA,MACzD;AAAA,IAAA;AAAA,EAAA;AAIR;"}
@@ -0,0 +1 @@
1
+ export { Avatar, type AvatarProps, type AvatarShape, type AvatarSize, type AvatarStatus, avatarStatusVariants, avatarVariants, } from "./avatar";
@@ -0,0 +1,20 @@
1
+ import type { ComponentProps } from "react";
2
+ export declare const badgeVariants: (props?: ({
3
+ variant?: "error" | "brand" | "neutral" | "success" | "warning" | "info" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ export type BadgeVariant = "neutral" | "brand" | "success" | "warning" | "error" | "info";
6
+ export interface BadgeProps extends ComponentProps<"span"> {
7
+ variant?: BadgeVariant;
8
+ }
9
+ /**
10
+ * Category or status tag (documents: Receta, Informe, Orden médica; program cards).
11
+ * 12px (Label/Small) because it is metadata: if people need to read it to decide,
12
+ * it isn't a badge, it's text.
13
+ *
14
+ * - It is NOT a button: no click, no focus, no close icon. Removable → `Chip`.
15
+ * - On a photo use `neutral` (solid). Never a translucent pill: its contrast depends
16
+ * on the photo.
17
+ * - `warning` keeps its text in text-primary: the orange-on-orange pair doesn't reach
18
+ * 4.5:1 with the current tokens.
19
+ */
20
+ export declare function Badge({ variant, className, ...props }: BadgeProps): React.JSX.Element;
@@ -0,0 +1,42 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { cn } from "../../lib/cn.js";
4
+ const badgeVariants = cva(
5
+ "inline-flex w-fit shrink-0 items-center whitespace-nowrap rounded-sm px-2 py-1 text-label-small",
6
+ {
7
+ variants: {
8
+ variant: {
9
+ neutral: "bg-surface-raised text-text-primary",
10
+ brand: "bg-brand-subtle text-text-brand",
11
+ success: "bg-success-subtle text-text-success",
12
+ // Token gap, not an aesthetic choice: warning-strong on warning-subtle is
13
+ // 3.93:1, so the text stays in text-primary and the orange lives in the fill.
14
+ warning: "bg-warning-subtle text-text-primary",
15
+ error: "bg-error-subtle text-text-error",
16
+ info: "bg-info-subtle text-text-info"
17
+ }
18
+ },
19
+ defaultVariants: {
20
+ variant: "neutral"
21
+ }
22
+ }
23
+ );
24
+ function Badge({
25
+ variant,
26
+ className,
27
+ ...props
28
+ }) {
29
+ return /* @__PURE__ */ jsx(
30
+ "span",
31
+ {
32
+ "data-slot": "badge",
33
+ className: cn(badgeVariants({ variant }), className),
34
+ ...props
35
+ }
36
+ );
37
+ }
38
+ export {
39
+ Badge,
40
+ badgeVariants
41
+ };
42
+ //# sourceMappingURL=badge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge.js","sources":["../../../src/components/badge/badge.tsx"],"sourcesContent":["import { cva } from \"class-variance-authority\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"../../lib/cn\";\n\nexport const badgeVariants = cva(\n \"inline-flex w-fit shrink-0 items-center whitespace-nowrap rounded-sm px-2 py-1 text-label-small\",\n {\n variants: {\n variant: {\n neutral: \"bg-surface-raised text-text-primary\",\n brand: \"bg-brand-subtle text-text-brand\",\n success: \"bg-success-subtle text-text-success\",\n // Token gap, not an aesthetic choice: warning-strong on warning-subtle is\n // 3.93:1, so the text stays in text-primary and the orange lives in the fill.\n warning: \"bg-warning-subtle text-text-primary\",\n error: \"bg-error-subtle text-text-error\",\n info: \"bg-info-subtle text-text-info\",\n },\n },\n defaultVariants: {\n variant: \"neutral\",\n },\n },\n);\n\nexport type BadgeVariant =\n | \"neutral\"\n | \"brand\"\n | \"success\"\n | \"warning\"\n | \"error\"\n | \"info\";\n\nexport interface BadgeProps extends ComponentProps<\"span\"> {\n variant?: BadgeVariant;\n}\n\n/**\n * Category or status tag (documents: Receta, Informe, Orden médica; program cards).\n * 12px (Label/Small) because it is metadata: if people need to read it to decide,\n * it isn't a badge, it's text.\n *\n * - It is NOT a button: no click, no focus, no close icon. Removable → `Chip`.\n * - On a photo use `neutral` (solid). Never a translucent pill: its contrast depends\n * on the photo.\n * - `warning` keeps its text in text-primary: the orange-on-orange pair doesn't reach\n * 4.5:1 with the current tokens.\n */\nexport function Badge({\n variant,\n className,\n ...props\n}: BadgeProps): React.JSX.Element {\n return (\n <span\n data-slot=\"badge\"\n className={cn(badgeVariants({ variant }), className)}\n {...props}\n />\n );\n}\n"],"names":[],"mappings":";;;AAKO,MAAM,gBAAgB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,OAAO;AAAA,QACP,SAAS;AAAA;AAAA;AAAA,QAGT,SAAS;AAAA,QACT,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ;AAyBO,SAAS,MAAM;AAAA,EACpB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAkC;AAChC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,cAAc,EAAE,QAAA,CAAS,GAAG,SAAS;AAAA,MAClD,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
@@ -0,0 +1 @@
1
+ export { Badge, type BadgeProps, type BadgeVariant, badgeVariants, } from "./badge";
@@ -0,0 +1,32 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ import type { ComponentProps, ReactNode } from "react";
3
+ declare const bannerVariants: (props?: ({
4
+ tone?: "error" | "brand" | "success" | "warning" | "info" | null | undefined;
5
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
+ export interface BannerProps extends Omit<ComponentProps<"div">, "title">, VariantProps<typeof bannerVariants> {
7
+ /** What is going on, in a few words: "No puedes modificar estos datos". */
8
+ title: ReactNode;
9
+ /** What it means or what to do about it. */
10
+ description?: ReactNode;
11
+ /**
12
+ * One way to resolve it, below the text: usually a `Link` ("Escribir a soporte") or
13
+ * a `Button size="small"`. Links take text-primary here (still underlined): the link
14
+ * blue is 4.45:1 on `error-subtle`.
15
+ */
16
+ action?: ReactNode;
17
+ /**
18
+ * Shows the close X. Leave it out for anything the person has to resolve: a failed
19
+ * payment notice that can be closed unread is a notice nobody reads.
20
+ */
21
+ onClose?: () => void;
22
+ }
23
+ /**
24
+ * Persistent notice inside the page. Unlike a Toast, it stays until the situation
25
+ * changes or the person closes it — that is why Banner has `warning` and Toast doesn't.
26
+ *
27
+ * All text in text-primary on every tone (the lightest pair is 14.66:1); the icon
28
+ * carries the tone. `error` is announced with `role="alert"`; the rest use
29
+ * `role="status"`, which doesn't interrupt the screen reader.
30
+ */
31
+ export declare function Banner({ tone, title, description, action, onClose, className, ...props }: BannerProps): React.JSX.Element;
32
+ export {};
@@ -0,0 +1,93 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { AlertCircleIcon } from "../../icons/generated/alert-circle.js";
4
+ import { AlertTriangleIcon } from "../../icons/generated/alert-triangle.js";
5
+ import { CheckCircleIcon } from "../../icons/generated/check-circle.js";
6
+ import { InfoCircleIcon } from "../../icons/generated/info-circle.js";
7
+ import { XCloseIcon } from "../../icons/generated/x-close.js";
8
+ import { cn } from "../../lib/cn.js";
9
+ import { useMediCoreLabels } from "../../provider/medicore-provider.js";
10
+ import { IconButton } from "../icon-button/icon-button.js";
11
+ const bannerVariants = cva(
12
+ "flex items-center gap-3 rounded-lg p-4 text-text-primary",
13
+ {
14
+ variants: {
15
+ tone: {
16
+ info: "bg-info-subtle",
17
+ success: "bg-success-subtle",
18
+ warning: "bg-warning-subtle",
19
+ error: "bg-error-subtle",
20
+ brand: "bg-brand-subtle"
21
+ }
22
+ },
23
+ defaultVariants: {
24
+ tone: "info"
25
+ }
26
+ }
27
+ );
28
+ const iconVariants = cva("shrink-0", {
29
+ variants: {
30
+ tone: {
31
+ info: "text-text-info",
32
+ success: "text-text-success",
33
+ warning: "text-text-warning",
34
+ error: "text-text-error",
35
+ brand: "text-text-brand"
36
+ }
37
+ },
38
+ defaultVariants: {
39
+ tone: "info"
40
+ }
41
+ });
42
+ const toneIcons = {
43
+ info: InfoCircleIcon,
44
+ success: CheckCircleIcon,
45
+ warning: AlertTriangleIcon,
46
+ error: AlertCircleIcon,
47
+ brand: InfoCircleIcon
48
+ };
49
+ function Banner({
50
+ tone = "info",
51
+ title,
52
+ description,
53
+ action,
54
+ onClose,
55
+ className,
56
+ ...props
57
+ }) {
58
+ const labels = useMediCoreLabels();
59
+ const resolvedTone = tone ?? "info";
60
+ const Icon = toneIcons[resolvedTone];
61
+ return /* @__PURE__ */ jsxs(
62
+ "div",
63
+ {
64
+ "data-slot": "banner",
65
+ "data-tone": resolvedTone,
66
+ role: resolvedTone === "error" ? "alert" : "status",
67
+ className: cn(bannerVariants({ tone: resolvedTone }), className),
68
+ ...props,
69
+ children: [
70
+ /* @__PURE__ */ jsx(Icon, { size: "md", className: iconVariants({ tone: resolvedTone }) }),
71
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col items-start gap-1", children: [
72
+ /* @__PURE__ */ jsx("p", { className: "text-label-strong", children: title }),
73
+ description && /* @__PURE__ */ jsx("p", { className: "text-body-small", children: description }),
74
+ action && /* @__PURE__ */ jsx("div", { className: "[&_[data-slot=link]]:text-text-primary", children: action })
75
+ ] }),
76
+ onClose && /* @__PURE__ */ jsx(
77
+ IconButton,
78
+ {
79
+ variant: "ghost",
80
+ size: "small",
81
+ icon: /* @__PURE__ */ jsx(XCloseIcon, {}),
82
+ "aria-label": labels.close,
83
+ onClick: onClose
84
+ }
85
+ )
86
+ ]
87
+ }
88
+ );
89
+ }
90
+ export {
91
+ Banner
92
+ };
93
+ //# sourceMappingURL=banner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.js","sources":["../../../src/components/banner/banner.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport type { ComponentProps, ReactNode } from \"react\";\n\nimport {\n AlertCircleIcon,\n AlertTriangleIcon,\n CheckCircleIcon,\n InfoCircleIcon,\n XCloseIcon,\n} from \"../../icons\";\nimport { cn } from \"../../lib/cn\";\nimport { useMediCoreLabels } from \"../../provider\";\nimport { IconButton } from \"../icon-button\";\n\nconst bannerVariants = cva(\n \"flex items-center gap-3 rounded-lg p-4 text-text-primary\",\n {\n variants: {\n tone: {\n info: \"bg-info-subtle\",\n success: \"bg-success-subtle\",\n warning: \"bg-warning-subtle\",\n error: \"bg-error-subtle\",\n brand: \"bg-brand-subtle\",\n },\n },\n defaultVariants: {\n tone: \"info\",\n },\n },\n);\n\n// The icon goes in the strong tone (3:1 on every background); the text never does.\nconst iconVariants = cva(\"shrink-0\", {\n variants: {\n tone: {\n info: \"text-text-info\",\n success: \"text-text-success\",\n warning: \"text-text-warning\",\n error: \"text-text-error\",\n brand: \"text-text-brand\",\n },\n },\n defaultVariants: {\n tone: \"info\",\n },\n});\n\nconst toneIcons = {\n info: InfoCircleIcon,\n success: CheckCircleIcon,\n warning: AlertTriangleIcon,\n error: AlertCircleIcon,\n brand: InfoCircleIcon,\n} as const;\n\ntype BannerTone = NonNullable<VariantProps<typeof bannerVariants>[\"tone\"]>;\n\nexport interface BannerProps\n extends Omit<ComponentProps<\"div\">, \"title\">,\n VariantProps<typeof bannerVariants> {\n /** What is going on, in a few words: \"No puedes modificar estos datos\". */\n title: ReactNode;\n /** What it means or what to do about it. */\n description?: ReactNode;\n /**\n * One way to resolve it, below the text: usually a `Link` (\"Escribir a soporte\") or\n * a `Button size=\"small\"`. Links take text-primary here (still underlined): the link\n * blue is 4.45:1 on `error-subtle`.\n */\n action?: ReactNode;\n /**\n * Shows the close X. Leave it out for anything the person has to resolve: a failed\n * payment notice that can be closed unread is a notice nobody reads.\n */\n onClose?: () => void;\n}\n\n/**\n * Persistent notice inside the page. Unlike a Toast, it stays until the situation\n * changes or the person closes it — that is why Banner has `warning` and Toast doesn't.\n *\n * All text in text-primary on every tone (the lightest pair is 14.66:1); the icon\n * carries the tone. `error` is announced with `role=\"alert\"`; the rest use\n * `role=\"status\"`, which doesn't interrupt the screen reader.\n */\nexport function Banner({\n tone = \"info\",\n title,\n description,\n action,\n onClose,\n className,\n ...props\n}: BannerProps): React.JSX.Element {\n const labels = useMediCoreLabels();\n const resolvedTone: BannerTone = tone ?? \"info\";\n const Icon = toneIcons[resolvedTone];\n\n return (\n <div\n data-slot=\"banner\"\n data-tone={resolvedTone}\n role={resolvedTone === \"error\" ? \"alert\" : \"status\"}\n className={cn(bannerVariants({ tone: resolvedTone }), className)}\n {...props}\n >\n <Icon size=\"md\" className={iconVariants({ tone: resolvedTone })} />\n <div className=\"flex min-w-0 flex-1 flex-col items-start gap-1\">\n <p className=\"text-label-strong\">{title}</p>\n {description && <p className=\"text-body-small\">{description}</p>}\n {action && (\n <div className=\"[&_[data-slot=link]]:text-text-primary\">{action}</div>\n )}\n </div>\n {onClose && (\n <IconButton\n variant=\"ghost\"\n size=\"small\"\n icon={<XCloseIcon />}\n aria-label={labels.close}\n onClick={onClose}\n />\n )}\n </div>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;AAcA,MAAM,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,MAAM;AAAA,QACN,SAAS;AAAA,QACT,SAAS;AAAA,QACT,OAAO;AAAA,QACP,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAEF,iBAAiB;AAAA,MACf,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ;AAGA,MAAM,eAAe,IAAI,YAAY;AAAA,EACnC,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,SAAS;AAAA,MACT,OAAO;AAAA,MACP,OAAO;AAAA,IAAA;AAAA,EACT;AAAA,EAEF,iBAAiB;AAAA,IACf,MAAM;AAAA,EAAA;AAEV,CAAC;AAED,MAAM,YAAY;AAAA,EAChB,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,OAAO;AACT;AAgCO,SAAS,OAAO;AAAA,EACrB,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,QAAM,SAAS,kBAAA;AACf,QAAM,eAA2B,QAAQ;AACzC,QAAM,OAAO,UAAU,YAAY;AAEnC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,aAAW;AAAA,MACX,MAAM,iBAAiB,UAAU,UAAU;AAAA,MAC3C,WAAW,GAAG,eAAe,EAAE,MAAM,aAAA,CAAc,GAAG,SAAS;AAAA,MAC9D,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA,oBAAC,MAAA,EAAK,MAAK,MAAK,WAAW,aAAa,EAAE,MAAM,aAAA,CAAc,GAAG;AAAA,QACjE,qBAAC,OAAA,EAAI,WAAU,kDACb,UAAA;AAAA,UAAA,oBAAC,KAAA,EAAE,WAAU,qBAAqB,UAAA,OAAM;AAAA,UACvC,eAAe,oBAAC,KAAA,EAAE,WAAU,mBAAmB,UAAA,aAAY;AAAA,UAC3D,UACC,oBAAC,OAAA,EAAI,WAAU,0CAA0C,UAAA,OAAA,CAAO;AAAA,QAAA,GAEpE;AAAA,QACC,WACC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,0BAAO,YAAA,EAAW;AAAA,YAClB,cAAY,OAAO;AAAA,YACnB,SAAS;AAAA,UAAA;AAAA,QAAA;AAAA,MACX;AAAA,IAAA;AAAA,EAAA;AAIR;"}
@@ -0,0 +1 @@
1
+ export { Banner, type BannerProps } from "./banner";
@@ -0,0 +1,41 @@
1
+ import { useRender } from "@base-ui/react/use-render";
2
+ import type { ComponentProps, ReactNode } from "react";
3
+ export interface BottomBarProps extends ComponentProps<"nav"> {
4
+ }
5
+ /**
6
+ * Mobile tab bar: a `<nav>` named "Navegación principal" with a list of links, the
7
+ * current one with `aria-current="page"`. Tabs share the width equally (five at 75px
8
+ * on a 375 phone) and it adds the iPhone's `safe-area-inset-bottom` under its 77px.
9
+ *
10
+ * - Up to five tabs, the main sections. Everything else must stay reachable from the
11
+ * menu in `MobileHeader` (see `AppShell`).
12
+ * - A tab may use the short form of the section's name ("Documentos" for "Mis
13
+ * documentos"), never a different name. If a label doesn't fit, shorten the word;
14
+ * don't lower the 12px.
15
+ * - `AppShell` keeps it at the bottom of the screen below the desktop breakpoint.
16
+ */
17
+ export declare function BottomBar({ "aria-label": ariaLabel, className, children, ...props }: BottomBarProps): React.JSX.Element;
18
+ export declare const bottomBarItemVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
19
+ export interface BottomBarItemProps extends Omit<useRender.ComponentProps<"a">, "className" | "children"> {
20
+ /** A MediCore icon, drawn at 22px. */
21
+ icon: ReactNode;
22
+ /** 12px label (Label/Small). Always visible: an icon-only tab bar is a guessing game. */
23
+ children: ReactNode;
24
+ /**
25
+ * The tab of the current screen: `aria-current="page"`, brand colour and a 3px bar
26
+ * on top (the non-colour cue). Leave it out if the router link sets
27
+ * `aria-current="page"` itself.
28
+ */
29
+ active?: boolean;
30
+ /**
31
+ * The central action of the product ("Pedir cita"): the icon sits in a
32
+ * `brand-subtle` circle. At most one per bar.
33
+ */
34
+ featured?: boolean;
35
+ className?: string;
36
+ }
37
+ /**
38
+ * One tab (Figma `Nav/TabItem`). Renders an `<a>` inside an `<li>`; pass the router's
39
+ * link with `render={<Link to="/agenda" />}`.
40
+ */
41
+ export declare function BottomBarItem({ icon, children, active, featured, className, render, ...props }: BottomBarItemProps): React.JSX.Element;