@studiolxd/brand 38.12.4

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 (1065) hide show
  1. package/CHANGELOG.md +5643 -0
  2. package/README.md +73 -0
  3. package/dist/_shared/appshellcontext.js +10 -0
  4. package/dist/_shared/calendargrid.js +199 -0
  5. package/dist/_shared/copy-to-clipboard.js +30 -0
  6. package/dist/_shared/css-properties.js +12 -0
  7. package/dist/_shared/datepicker.js +172 -0
  8. package/dist/_shared/dialogsurface.js +23 -0
  9. package/dist/_shared/dropdownitems.js +80 -0
  10. package/dist/_shared/env.js +6 -0
  11. package/dist/_shared/field-labels.js +9 -0
  12. package/dist/_shared/form-size.js +9 -0
  13. package/dist/_shared/imagecropdialog.js +504 -0
  14. package/dist/_shared/logo.js +19 -0
  15. package/dist/_shared/logoassets.js +18 -0
  16. package/dist/_shared/messagetimestamp.js +16 -0
  17. package/dist/_shared/progressbar.js +216 -0
  18. package/dist/_shared/radiogroupcontext.js +8 -0
  19. package/dist/_shared/sidebarcontext.js +8 -0
  20. package/dist/_shared/togglegroupcontext.js +8 -0
  21. package/dist/_shared/tokens.js +3281 -0
  22. package/dist/_shared/untrustedtext.js +43 -0
  23. package/dist/_shared/validate.js +9 -0
  24. package/dist/_types/assets/brand-assets.d.ts +83 -0
  25. package/dist/_types/atoms/Accordion/Accordion.d.ts +56 -0
  26. package/dist/_types/atoms/Accordion/AccordionContext.d.ts +13 -0
  27. package/dist/_types/atoms/Arrow/Arrow.d.ts +6 -0
  28. package/dist/_types/atoms/AsyncMultiSelect/AsyncMultiSelect.d.ts +83 -0
  29. package/dist/_types/atoms/AsyncSelect/AsyncSelect.d.ts +74 -0
  30. package/dist/_types/atoms/Avatar/Avatar.d.ts +21 -0
  31. package/dist/_types/atoms/Button/Button.d.ts +64 -0
  32. package/dist/_types/atoms/Checkbox/Checkbox.d.ts +22 -0
  33. package/dist/_types/atoms/CloseButton/CloseButton.d.ts +25 -0
  34. package/dist/_types/atoms/Code/Code.d.ts +21 -0
  35. package/dist/_types/atoms/Collapsible/Collapsible.d.ts +37 -0
  36. package/dist/_types/atoms/Columns/Columns.d.ts +39 -0
  37. package/dist/_types/atoms/Container/Container.d.ts +48 -0
  38. package/dist/_types/atoms/CopyableValue/CopyableValue.d.ts +25 -0
  39. package/dist/_types/atoms/DescriptionList/DescriptionList.d.ts +78 -0
  40. package/dist/_types/atoms/DotsButton/DotsButton.d.ts +14 -0
  41. package/dist/_types/atoms/ErrorBoundary/ErrorBoundary.d.ts +25 -0
  42. package/dist/_types/atoms/ErrorText/ErrorText.d.ts +34 -0
  43. package/dist/_types/atoms/Fieldset/Fieldset.d.ts +22 -0
  44. package/dist/_types/atoms/Figure/Figure.d.ts +44 -0
  45. package/dist/_types/atoms/FileUpload/FileUpload.d.ts +66 -0
  46. package/dist/_types/atoms/FileUpload/validate.d.ts +14 -0
  47. package/dist/_types/atoms/Heading/Heading.d.ts +20 -0
  48. package/dist/_types/atoms/Icon/Icon.d.ts +335 -0
  49. package/dist/_types/atoms/Inline/Inline.d.ts +34 -0
  50. package/dist/_types/atoms/Input/Input.d.ts +23 -0
  51. package/dist/_types/atoms/InputPhone/InputPhone.d.ts +51 -0
  52. package/dist/_types/atoms/Kbd/Kbd.d.ts +16 -0
  53. package/dist/_types/atoms/Label/Label.d.ts +24 -0
  54. package/dist/_types/atoms/Link/Link.d.ts +34 -0
  55. package/dist/_types/atoms/List/List.d.ts +36 -0
  56. package/dist/_types/atoms/Logo/Logo.d.ts +15 -0
  57. package/dist/_types/atoms/Logo/index.d.ts +3 -0
  58. package/dist/_types/atoms/Logo/logoAssets.d.ts +10 -0
  59. package/dist/_types/atoms/Logomark/Logomark.d.ts +20 -0
  60. package/dist/_types/atoms/Logomark/index.d.ts +3 -0
  61. package/dist/_types/atoms/Logomark/logomarkAssets.d.ts +14 -0
  62. package/dist/_types/atoms/MenuButton/MenuButton.d.ts +18 -0
  63. package/dist/_types/atoms/MessageBubble/MessageBubble.d.ts +20 -0
  64. package/dist/_types/atoms/MultiSelect/MultiSelect.d.ts +57 -0
  65. package/dist/_types/atoms/NumberBadge/NumberBadge.d.ts +19 -0
  66. package/dist/_types/atoms/NumberInput/NumberInput.d.ts +42 -0
  67. package/dist/_types/atoms/OtpInput/OtpInput.d.ts +51 -0
  68. package/dist/_types/atoms/Paragraph/Paragraph.d.ts +7 -0
  69. package/dist/_types/atoms/Popover/Popover.d.ts +70 -0
  70. package/dist/_types/atoms/ProgressBar/ProgressBar.d.ts +19 -0
  71. package/dist/_types/atoms/Radio/Radio.d.ts +19 -0
  72. package/dist/_types/atoms/RadioGroup/RadioGroup.d.ts +41 -0
  73. package/dist/_types/atoms/RadioGroup/RadioGroupContext.d.ts +15 -0
  74. package/dist/_types/atoms/ScrollArea/ScrollArea.d.ts +30 -0
  75. package/dist/_types/atoms/Select/Select.d.ts +139 -0
  76. package/dist/_types/atoms/Separator/Separator.d.ts +25 -0
  77. package/dist/_types/atoms/Skeleton/Skeleton.d.ts +22 -0
  78. package/dist/_types/atoms/SkipLink/SkipLink.d.ts +15 -0
  79. package/dist/_types/atoms/Slider/Slider.d.ts +39 -0
  80. package/dist/_types/atoms/Sparkline/Sparkline.d.ts +41 -0
  81. package/dist/_types/atoms/Spinner/Spinner.d.ts +10 -0
  82. package/dist/_types/atoms/Stack/Stack.d.ts +39 -0
  83. package/dist/_types/atoms/StarRating/StarRating.d.ts +55 -0
  84. package/dist/_types/atoms/StepMarker/StepMarker.d.ts +35 -0
  85. package/dist/_types/atoms/Switcher/Switcher.d.ts +22 -0
  86. package/dist/_types/atoms/Tabs/Tabs.d.ts +35 -0
  87. package/dist/_types/atoms/Tag/Tag.d.ts +12 -0
  88. package/dist/_types/atoms/Text/Text.d.ts +55 -0
  89. package/dist/_types/atoms/Textarea/Textarea.d.ts +25 -0
  90. package/dist/_types/atoms/TimeSelect/TimeSelect.d.ts +48 -0
  91. package/dist/_types/atoms/Toggle/Toggle.d.ts +42 -0
  92. package/dist/_types/atoms/ToggleGroup/ToggleGroup.d.ts +41 -0
  93. package/dist/_types/atoms/ToggleGroup/ToggleGroupContext.d.ts +7 -0
  94. package/dist/_types/atoms/Tooltip/Tooltip.d.ts +61 -0
  95. package/dist/_types/atoms/TypingIndicator/TypingIndicator.d.ts +7 -0
  96. package/dist/_types/atoms/VisuallyHidden/VisuallyHidden.d.ts +19 -0
  97. package/dist/_types/constants/copy-to-clipboard.d.ts +34 -0
  98. package/dist/_types/constants/css-properties.d.ts +23 -0
  99. package/dist/_types/constants/env.d.ts +7 -0
  100. package/dist/_types/constants/field-labels.d.ts +15 -0
  101. package/dist/_types/constants/form-size.d.ts +8 -0
  102. package/dist/_types/data/home.d.ts +83 -0
  103. package/dist/_types/email/Email.d.ts +6 -0
  104. package/dist/_types/email/EmailLayout.d.ts +96 -0
  105. package/dist/_types/email/EmailPreview.d.ts +6 -0
  106. package/dist/_types/email/EmailPrimitives.d.ts +164 -0
  107. package/dist/_types/email/emailTheme.d.ts +225 -0
  108. package/dist/_types/email/emailTokens.d.ts +70 -0
  109. package/dist/_types/molecules/Alert/Alert.d.ts +39 -0
  110. package/dist/_types/molecules/AppLauncher/AppLauncher.d.ts +42 -0
  111. package/dist/_types/molecules/AssistantMessage/AssistantMessage.d.ts +34 -0
  112. package/dist/_types/molecules/AsyncMultiSelectField/AsyncMultiSelectField.d.ts +54 -0
  113. package/dist/_types/molecules/AsyncSelectField/AsyncSelectField.d.ts +53 -0
  114. package/dist/_types/molecules/AvatarUpload/AvatarUpload.d.ts +125 -0
  115. package/dist/_types/molecules/Banner/Banner.d.ts +40 -0
  116. package/dist/_types/molecules/Breadcrumb/Breadcrumb.d.ts +23 -0
  117. package/dist/_types/molecules/Calendar/Calendar.d.ts +58 -0
  118. package/dist/_types/molecules/CalendarPlanner/CalendarPlanner.d.ts +71 -0
  119. package/dist/_types/molecules/CalendarRoster/CalendarRoster.d.ts +78 -0
  120. package/dist/_types/molecules/Card/Card.d.ts +141 -0
  121. package/dist/_types/molecules/Carousel/Carousel.d.ts +75 -0
  122. package/dist/_types/molecules/CheckboxField/CheckboxField.d.ts +41 -0
  123. package/dist/_types/molecules/CodeBlock/CodeBlock.d.ts +72 -0
  124. package/dist/_types/molecules/CommandPalette/CommandPalette.d.ts +60 -0
  125. package/dist/_types/molecules/ConfirmDialog/ConfirmDialog.d.ts +84 -0
  126. package/dist/_types/molecules/Consent/Consent.d.ts +127 -0
  127. package/dist/_types/molecules/ContextMenu/ContextMenu.d.ts +25 -0
  128. package/dist/_types/molecules/ConversationList/ConversationList.d.ts +55 -0
  129. package/dist/_types/molecules/CopyButton/CopyButton.d.ts +57 -0
  130. package/dist/_types/molecules/DatePicker/DatePicker.d.ts +87 -0
  131. package/dist/_types/molecules/DatePicker/dateMask.d.ts +21 -0
  132. package/dist/_types/molecules/DatePickerField/DatePickerField.d.ts +26 -0
  133. package/dist/_types/molecules/DateTimeField/DateTimeField.d.ts +69 -0
  134. package/dist/_types/molecules/DocsSearch/DocsSearch.d.ts +95 -0
  135. package/dist/_types/molecules/DropdownField/DropdownField.d.ts +47 -0
  136. package/dist/_types/molecules/EmptyState/EmptyState.d.ts +14 -0
  137. package/dist/_types/molecules/FieldRow/FieldRow.d.ts +70 -0
  138. package/dist/_types/molecules/FileUploadField/FileUploadField.d.ts +30 -0
  139. package/dist/_types/molecules/FilterBar/FilterBar.d.ts +44 -0
  140. package/dist/_types/molecules/Form/Form.d.ts +34 -0
  141. package/dist/_types/molecules/FormField/FormField.d.ts +70 -0
  142. package/dist/_types/molecules/ImageCropDialog/ImageCropDialog.d.ts +42 -0
  143. package/dist/_types/molecules/ImageCropDialog/crop.d.ts +33 -0
  144. package/dist/_types/molecules/InputField/InputField.d.ts +60 -0
  145. package/dist/_types/molecules/InputPhoneField/InputPhoneField.d.ts +45 -0
  146. package/dist/_types/molecules/LanguageSwitcher/LanguageSwitcher.d.ts +58 -0
  147. package/dist/_types/molecules/Menu/Menu.d.ts +39 -0
  148. package/dist/_types/molecules/MessageComposer/MessageComposer.d.ts +45 -0
  149. package/dist/_types/molecules/Modal/Modal.d.ts +71 -0
  150. package/dist/_types/molecules/MultiSelectField/MultiSelectField.d.ts +42 -0
  151. package/dist/_types/molecules/NotificationButton/NotificationButton.d.ts +25 -0
  152. package/dist/_types/molecules/NotificationList/NotificationList.d.ts +85 -0
  153. package/dist/_types/molecules/NotificationPanel/NotificationPanel.d.ts +94 -0
  154. package/dist/_types/molecules/NumberInputField/NumberInputField.d.ts +38 -0
  155. package/dist/_types/molecules/OrgSwitcher/OrgSwitcher.d.ts +23 -0
  156. package/dist/_types/molecules/OtpField/OtpField.d.ts +41 -0
  157. package/dist/_types/molecules/PageIntro/PageIntro.d.ts +48 -0
  158. package/dist/_types/molecules/Pagination/Pagination.d.ts +92 -0
  159. package/dist/_types/molecules/PasswordField/PasswordField.d.ts +40 -0
  160. package/dist/_types/molecules/PrevNextNav/PrevNextNav.d.ts +50 -0
  161. package/dist/_types/molecules/ProjectCard/ProjectCard.d.ts +48 -0
  162. package/dist/_types/molecules/Prose/Prose.d.ts +36 -0
  163. package/dist/_types/molecules/RadioField/RadioField.d.ts +29 -0
  164. package/dist/_types/molecules/RecoveryCodes/RecoveryCodes.d.ts +48 -0
  165. package/dist/_types/molecules/SearchForm/SearchForm.d.ts +66 -0
  166. package/dist/_types/molecules/SelectField/SelectField.d.ts +44 -0
  167. package/dist/_types/molecules/Sheet/Sheet.d.ts +56 -0
  168. package/dist/_types/molecules/SidebarNav/SidebarNav.d.ts +59 -0
  169. package/dist/_types/molecules/SiteNav/SiteNav.d.ts +52 -0
  170. package/dist/_types/molecules/StatTile/StatTile.d.ts +47 -0
  171. package/dist/_types/molecules/Stepper/Stepper.d.ts +88 -0
  172. package/dist/_types/molecules/SwitcherField/SwitcherField.d.ts +42 -0
  173. package/dist/_types/molecules/Table/Table.d.ts +103 -0
  174. package/dist/_types/molecules/TableOfContents/TableOfContents.d.ts +49 -0
  175. package/dist/_types/molecules/TextareaField/TextareaField.d.ts +35 -0
  176. package/dist/_types/molecules/ThemeSwitcher/ThemeSwitcher.d.ts +42 -0
  177. package/dist/_types/molecules/TimeField/TimeField.d.ts +44 -0
  178. package/dist/_types/molecules/Toast/Toaster.d.ts +42 -0
  179. package/dist/_types/molecules/Toast/toast.d.ts +101 -0
  180. package/dist/_types/molecules/TreeView/TreeView.d.ts +93 -0
  181. package/dist/_types/molecules/UptimeBars/UptimeBars.d.ts +64 -0
  182. package/dist/_types/molecules/UptimeBars/uptimeStatus.d.ts +17 -0
  183. package/dist/_types/molecules/UserMenu/UserMenu.d.ts +19 -0
  184. package/dist/_types/molecules/UserMessage/UserMessage.d.ts +35 -0
  185. package/dist/_types/molecules/_shared/calendarGrid.d.ts +114 -0
  186. package/dist/_types/molecules/_shared/dialogSurface.d.ts +30 -0
  187. package/dist/_types/molecules/_shared/dropdownItems.d.ts +71 -0
  188. package/dist/_types/molecules/_shared/messageTimestamp.d.ts +20 -0
  189. package/dist/_types/og/index.d.ts +5 -0
  190. package/dist/_types/og/ogCard.d.ts +27 -0
  191. package/dist/_types/og/ogFonts.d.ts +22 -0
  192. package/dist/_types/og/ogTypeface.d.ts +12 -0
  193. package/dist/_types/organisms/AnnotationThread/AnnotationThread.d.ts +61 -0
  194. package/dist/_types/organisms/Chart/Chart.d.ts +114 -0
  195. package/dist/_types/organisms/ConversationThread/ConversationThread.d.ts +44 -0
  196. package/dist/_types/organisms/DataTable/DataTable.d.ts +100 -0
  197. package/dist/_types/organisms/Steps/Steps.d.ts +69 -0
  198. package/dist/_types/pages/Auth/AuthPage.d.ts +24 -0
  199. package/dist/_types/pages/Onboarding/OnboardingPage.d.ts +37 -0
  200. package/dist/_types/pages/Status/StatusPage.d.ts +37 -0
  201. package/dist/_types/pages/Status/_datos.d.ts +47 -0
  202. package/dist/_types/sections/AppHeader/AppHeader.d.ts +23 -0
  203. package/dist/_types/sections/AppRoot/AppRoot.d.ts +16 -0
  204. package/dist/_types/sections/AppShell/AppShell.d.ts +30 -0
  205. package/dist/_types/sections/AppShell/AppShellContext.d.ts +16 -0
  206. package/dist/_types/sections/AppShell/_datos.d.ts +6 -0
  207. package/dist/_types/sections/FloatingDock/FloatingDock.d.ts +72 -0
  208. package/dist/_types/sections/Hero/Hero.d.ts +28 -0
  209. package/dist/_types/sections/Highlight/Highlight.d.ts +42 -0
  210. package/dist/_types/sections/LegalFooter/LegalFooter.d.ts +35 -0
  211. package/dist/_types/sections/Sidebar/Sidebar.d.ts +37 -0
  212. package/dist/_types/sections/Sidebar/SidebarContext.d.ts +6 -0
  213. package/dist/_types/sections/SiteFooter/SiteFooter.d.ts +68 -0
  214. package/dist/_types/sections/SiteHeader/SiteHeader.d.ts +58 -0
  215. package/dist/_types/sections/SiteShell/SiteShell.d.ts +26 -0
  216. package/dist/_types/templates/ChatShell/ChatShell.d.ts +53 -0
  217. package/dist/_types/templates/ConnectorAuth/ConnectorAuthShell.d.ts +73 -0
  218. package/dist/_types/templates/ConnectorAuth/ConnectorConsentPage.d.ts +129 -0
  219. package/dist/_types/templates/ConnectorAuth/ConnectorExternalSignInPage.d.ts +87 -0
  220. package/dist/_types/templates/ConnectorAuth/ConnectorRejectionPage.d.ts +69 -0
  221. package/dist/_types/templates/ConnectorAuth/ConnectorRequestSummary.d.ts +74 -0
  222. package/dist/_types/templates/ConnectorAuth/ConnectorSignInPage.d.ts +69 -0
  223. package/dist/_types/templates/ConnectorAuth/UntrustedText.d.ts +55 -0
  224. package/dist/_types/templates/ErrorPage/ErrorPage.d.ts +35 -0
  225. package/dist/_types/templates/NotFoundPage/NotFoundPage.d.ts +30 -0
  226. package/dist/_types/templates/OnboardingShell/OnboardingShell.d.ts +104 -0
  227. package/dist/_types/templates/PublicPageShell/PublicPageShell.d.ts +59 -0
  228. package/dist/_types/tokens/tokens.d.ts +24 -0
  229. package/dist/_types/utils/chromaticModes.d.ts +46 -0
  230. package/dist/_types/utils/storyDate.d.ts +11 -0
  231. package/dist/accordion.css +1 -0
  232. package/dist/accordion.js +89 -0
  233. package/dist/alert.css +1 -0
  234. package/dist/alert.js +78 -0
  235. package/dist/annotation-thread.css +1 -0
  236. package/dist/annotation-thread.js +98 -0
  237. package/dist/app-header.css +1 -0
  238. package/dist/app-header.js +37 -0
  239. package/dist/app-launcher.css +1 -0
  240. package/dist/app-launcher.js +119 -0
  241. package/dist/app-root.js +11 -0
  242. package/dist/app-shell.css +1 -0
  243. package/dist/app-shell.js +83 -0
  244. package/dist/arrow.css +1 -0
  245. package/dist/arrow.js +24 -0
  246. package/dist/assets/email/google-sans-flex-normal-latin-v1.woff2 +0 -0
  247. package/dist/assets/email/logo-v3.png +0 -0
  248. package/dist/assets/fonts/google-sans-code/LICENSE.txt +93 -0
  249. package/dist/assets/fonts/google-sans-code/google-sans-code-italic-latin-ext.woff2 +0 -0
  250. package/dist/assets/fonts/google-sans-code/google-sans-code-italic-latin.woff2 +0 -0
  251. package/dist/assets/fonts/google-sans-code/google-sans-code-normal-latin-ext.woff2 +0 -0
  252. package/dist/assets/fonts/google-sans-code/google-sans-code-normal-latin.woff2 +0 -0
  253. package/dist/assets/fonts/google-sans-flex/LICENSE.txt +91 -0
  254. package/dist/assets/fonts/google-sans-flex/README.md +29 -0
  255. package/dist/assets/fonts/google-sans-flex/google-sans-flex-normal-300.ttf +0 -0
  256. package/dist/assets/fonts/google-sans-flex/google-sans-flex-normal-500.ttf +0 -0
  257. package/dist/assets/fonts/google-sans-flex/google-sans-flex-normal-latin-ext.woff2 +0 -0
  258. package/dist/assets/fonts/google-sans-flex/google-sans-flex-normal-latin.woff2 +0 -0
  259. package/dist/assets/fonts/libre-bodoni/LICENSE.txt +93 -0
  260. package/dist/assets/fonts/libre-bodoni/libre-bodoni-italic-latin-ext.woff2 +0 -0
  261. package/dist/assets/fonts/libre-bodoni/libre-bodoni-italic-latin.woff2 +0 -0
  262. package/dist/assets/fonts/libre-bodoni/libre-bodoni-normal-latin-ext.woff2 +0 -0
  263. package/dist/assets/fonts/libre-bodoni/libre-bodoni-normal-latin.woff2 +0 -0
  264. package/dist/assets/icons/apple-touch-icon.png +0 -0
  265. package/dist/assets/icons/favicon.ico +0 -0
  266. package/dist/assets/icons/icon-192.png +0 -0
  267. package/dist/assets/icons/icon-512-maskable.png +0 -0
  268. package/dist/assets/icons/icon-512.png +0 -0
  269. package/dist/assets/icons/icon.svg +8 -0
  270. package/dist/assets/icons/manifest.webmanifest +25 -0
  271. package/dist/assets/logo.svg +12 -0
  272. package/dist/assets/logomark-safe.svg +7 -0
  273. package/dist/assets/logomark.svg +6 -0
  274. package/dist/assistant-message.css +1 -0
  275. package/dist/assistant-message.js +32 -0
  276. package/dist/async-multi-select-field.css +1 -0
  277. package/dist/async-multi-select-field.js +58 -0
  278. package/dist/async-multi-select.css +1 -0
  279. package/dist/async-multi-select.js +196 -0
  280. package/dist/async-select-field.css +1 -0
  281. package/dist/async-select-field.js +57 -0
  282. package/dist/async-select.css +1 -0
  283. package/dist/async-select.js +172 -0
  284. package/dist/avatar-upload.css +1 -0
  285. package/dist/avatar-upload.js +176 -0
  286. package/dist/avatar.css +1 -0
  287. package/dist/avatar.js +34 -0
  288. package/dist/banner.css +1 -0
  289. package/dist/banner.js +39 -0
  290. package/dist/brand-assets.js +75 -0
  291. package/dist/brand.css +6644 -0
  292. package/dist/breadcrumb.css +1 -0
  293. package/dist/breadcrumb.js +39 -0
  294. package/dist/button.css +1 -0
  295. package/dist/button.js +60 -0
  296. package/dist/calendar-planner.css +1 -0
  297. package/dist/calendar-planner.js +123 -0
  298. package/dist/calendar-roster.css +1 -0
  299. package/dist/calendar-roster.js +143 -0
  300. package/dist/calendar.css +1 -0
  301. package/dist/calendar.js +178 -0
  302. package/dist/card.css +1 -0
  303. package/dist/card.js +115 -0
  304. package/dist/carousel.css +1 -0
  305. package/dist/carousel.js +124 -0
  306. package/dist/chart.css +1 -0
  307. package/dist/chart.js +670 -0
  308. package/dist/chat-shell.css +1 -0
  309. package/dist/chat-shell.js +83 -0
  310. package/dist/checkbox-field.css +1 -0
  311. package/dist/checkbox-field.js +55 -0
  312. package/dist/checkbox.css +1 -0
  313. package/dist/checkbox.js +35 -0
  314. package/dist/close-button.css +1 -0
  315. package/dist/close-button.js +22 -0
  316. package/dist/code-block.css +1 -0
  317. package/dist/code-block.js +77 -0
  318. package/dist/code.css +1 -0
  319. package/dist/code.js +14 -0
  320. package/dist/collapsible.css +1 -0
  321. package/dist/collapsible.js +41 -0
  322. package/dist/columns.css +1 -0
  323. package/dist/columns.js +26 -0
  324. package/dist/command-palette.css +1 -0
  325. package/dist/command-palette.js +77 -0
  326. package/dist/confirm-dialog.css +1 -0
  327. package/dist/confirm-dialog.js +64 -0
  328. package/dist/connector-auth-shell.js +37 -0
  329. package/dist/connector-consent-page.js +89 -0
  330. package/dist/connector-external-sign-in-page.js +71 -0
  331. package/dist/connector-rejection-page.js +77 -0
  332. package/dist/connector-request-summary.css +1 -0
  333. package/dist/connector-request-summary.js +36 -0
  334. package/dist/connector-sign-in-page.js +65 -0
  335. package/dist/consent.css +1 -0
  336. package/dist/consent.js +109 -0
  337. package/dist/container.css +1 -0
  338. package/dist/container.js +28 -0
  339. package/dist/context-menu.js +23 -0
  340. package/dist/conversation-list.css +1 -0
  341. package/dist/conversation-list.js +100 -0
  342. package/dist/conversation-thread.css +1 -0
  343. package/dist/conversation-thread.js +42 -0
  344. package/dist/copy-button.css +1 -0
  345. package/dist/copy-button.js +45 -0
  346. package/dist/copyable-value.css +1 -0
  347. package/dist/copyable-value.js +100 -0
  348. package/dist/data-table.css +1 -0
  349. package/dist/data-table.js +1677 -0
  350. package/dist/date-picker-field.css +1 -0
  351. package/dist/date-picker-field.js +44 -0
  352. package/dist/date-picker.js +3 -0
  353. package/dist/date-time-field.css +1 -0
  354. package/dist/date-time-field.js +104 -0
  355. package/dist/datepicker.css +1 -0
  356. package/dist/description-list.css +1 -0
  357. package/dist/description-list.js +45 -0
  358. package/dist/dialogsurface.css +1 -0
  359. package/dist/docs-search.css +1 -0
  360. package/dist/docs-search.js +78 -0
  361. package/dist/dots-button.css +1 -0
  362. package/dist/dots-button.js +29 -0
  363. package/dist/dropdown-field.css +1 -0
  364. package/dist/dropdown-field.js +73 -0
  365. package/dist/email.js +440 -0
  366. package/dist/empty-state.css +1 -0
  367. package/dist/empty-state.js +39 -0
  368. package/dist/error-boundary.js +18 -0
  369. package/dist/error-page.js +28 -0
  370. package/dist/error-text.css +1 -0
  371. package/dist/error-text.js +15 -0
  372. package/dist/field-row.css +1 -0
  373. package/dist/field-row.js +55 -0
  374. package/dist/fieldset.css +1 -0
  375. package/dist/fieldset.js +22 -0
  376. package/dist/figure.css +1 -0
  377. package/dist/figure.js +40 -0
  378. package/dist/file-upload-field.css +1 -0
  379. package/dist/file-upload-field.js +43 -0
  380. package/dist/file-upload.css +1 -0
  381. package/dist/file-upload.js +199 -0
  382. package/dist/filter-bar.css +1 -0
  383. package/dist/filter-bar.js +31 -0
  384. package/dist/floating-dock.css +1 -0
  385. package/dist/floating-dock.js +79 -0
  386. package/dist/fonts.css +113 -0
  387. package/dist/form-field.css +1 -0
  388. package/dist/form-field.js +110 -0
  389. package/dist/form.css +1 -0
  390. package/dist/form.js +63 -0
  391. package/dist/heading.css +1 -0
  392. package/dist/heading.js +19 -0
  393. package/dist/hero.css +1 -0
  394. package/dist/hero.js +41 -0
  395. package/dist/highlight.css +1 -0
  396. package/dist/highlight.js +54 -0
  397. package/dist/icon.css +1 -0
  398. package/dist/icon.js +1745 -0
  399. package/dist/image-crop-dialog.js +3 -0
  400. package/dist/imagecropdialog.css +1 -0
  401. package/dist/inline.css +1 -0
  402. package/dist/inline.js +18 -0
  403. package/dist/input-field.css +1 -0
  404. package/dist/input-field.js +100 -0
  405. package/dist/input-phone-field.css +1 -0
  406. package/dist/input-phone-field.js +55 -0
  407. package/dist/input-phone.css +1 -0
  408. package/dist/input-phone.js +88 -0
  409. package/dist/input.css +1 -0
  410. package/dist/input.js +22 -0
  411. package/dist/kbd.css +1 -0
  412. package/dist/kbd.js +18 -0
  413. package/dist/label.css +1 -0
  414. package/dist/label.js +19 -0
  415. package/dist/language-switcher.css +1 -0
  416. package/dist/language-switcher.js +77 -0
  417. package/dist/legal-footer.css +1 -0
  418. package/dist/legal-footer.js +42 -0
  419. package/dist/link.css +1 -0
  420. package/dist/link.js +45 -0
  421. package/dist/list.css +1 -0
  422. package/dist/list.js +25 -0
  423. package/dist/logo.css +1 -0
  424. package/dist/logo.js +4 -0
  425. package/dist/logomark.css +1 -0
  426. package/dist/logomark.js +26 -0
  427. package/dist/menu-button.css +1 -0
  428. package/dist/menu-button.js +27 -0
  429. package/dist/menu.css +1 -0
  430. package/dist/menu.js +51 -0
  431. package/dist/message-bubble.css +1 -0
  432. package/dist/message-bubble.js +18 -0
  433. package/dist/message-composer.css +1 -0
  434. package/dist/message-composer.js +57 -0
  435. package/dist/modal.css +1 -0
  436. package/dist/modal.js +61 -0
  437. package/dist/multi-select-field.css +1 -0
  438. package/dist/multi-select-field.js +54 -0
  439. package/dist/multi-select.css +1 -0
  440. package/dist/multi-select.js +192 -0
  441. package/dist/not-found-page.js +20 -0
  442. package/dist/notification-button.css +1 -0
  443. package/dist/notification-button.js +32 -0
  444. package/dist/notification-list.css +1 -0
  445. package/dist/notification-list.js +71 -0
  446. package/dist/notification-panel.css +1 -0
  447. package/dist/notification-panel.js +145 -0
  448. package/dist/number-badge.css +1 -0
  449. package/dist/number-badge.js +19 -0
  450. package/dist/number-input-field.css +1 -0
  451. package/dist/number-input-field.js +52 -0
  452. package/dist/number-input.css +1 -0
  453. package/dist/number-input.js +89 -0
  454. package/dist/og.js +121 -0
  455. package/dist/onboarding-shell.css +1 -0
  456. package/dist/onboarding-shell.js +69 -0
  457. package/dist/org-switcher.css +1 -0
  458. package/dist/org-switcher.js +81 -0
  459. package/dist/otp-field.css +1 -0
  460. package/dist/otp-field.js +54 -0
  461. package/dist/otp-input.css +1 -0
  462. package/dist/otp-input.js +115 -0
  463. package/dist/page-intro.css +1 -0
  464. package/dist/page-intro.js +31 -0
  465. package/dist/pagination.css +1 -0
  466. package/dist/pagination.js +178 -0
  467. package/dist/paragraph.css +1 -0
  468. package/dist/paragraph.js +18 -0
  469. package/dist/password-field.css +1 -0
  470. package/dist/password-field.js +65 -0
  471. package/dist/popover.css +1 -0
  472. package/dist/popover.js +36 -0
  473. package/dist/prev-next-nav.css +1 -0
  474. package/dist/prev-next-nav.js +82 -0
  475. package/dist/progress-bar.js +2 -0
  476. package/dist/progressbar.css +1 -0
  477. package/dist/project-card.css +1 -0
  478. package/dist/project-card.js +55 -0
  479. package/dist/prose.css +1 -0
  480. package/dist/prose.js +19 -0
  481. package/dist/public-page-shell.css +1 -0
  482. package/dist/public-page-shell.js +34 -0
  483. package/dist/radio-field.css +1 -0
  484. package/dist/radio-field.js +49 -0
  485. package/dist/radio-group.css +1 -0
  486. package/dist/radio-group.js +33 -0
  487. package/dist/radio.css +1 -0
  488. package/dist/radio.js +30 -0
  489. package/dist/recovery-codes.css +1 -0
  490. package/dist/recovery-codes.js +35 -0
  491. package/dist/scroll-area.css +1 -0
  492. package/dist/scroll-area.js +37 -0
  493. package/dist/search-form.css +1 -0
  494. package/dist/search-form.js +55 -0
  495. package/dist/select-field.css +1 -0
  496. package/dist/select-field.js +67 -0
  497. package/dist/select.css +1 -0
  498. package/dist/select.js +156 -0
  499. package/dist/separator.css +1 -0
  500. package/dist/separator.js +19 -0
  501. package/dist/sheet.css +1 -0
  502. package/dist/sheet.js +53 -0
  503. package/dist/sidebar-nav.css +1 -0
  504. package/dist/sidebar-nav.js +225 -0
  505. package/dist/sidebar.css +1 -0
  506. package/dist/sidebar.js +122 -0
  507. package/dist/site-footer.css +1 -0
  508. package/dist/site-footer.js +72 -0
  509. package/dist/site-header.css +1 -0
  510. package/dist/site-header.js +80 -0
  511. package/dist/site-nav.css +1 -0
  512. package/dist/site-nav.js +54 -0
  513. package/dist/site-shell.css +1 -0
  514. package/dist/site-shell.js +20 -0
  515. package/dist/skeleton.css +1 -0
  516. package/dist/skeleton.js +18 -0
  517. package/dist/skip-link.css +1 -0
  518. package/dist/skip-link.js +18 -0
  519. package/dist/slider.css +1 -0
  520. package/dist/slider.js +35 -0
  521. package/dist/sparkline.css +1 -0
  522. package/dist/sparkline.js +55 -0
  523. package/dist/spinner.css +1 -0
  524. package/dist/spinner.js +34 -0
  525. package/dist/stack.css +1 -0
  526. package/dist/stack.js +18 -0
  527. package/dist/star-rating.css +1 -0
  528. package/dist/star-rating.js +80 -0
  529. package/dist/stat-tile.css +1 -0
  530. package/dist/stat-tile.js +64 -0
  531. package/dist/step-marker.css +1 -0
  532. package/dist/step-marker.js +26 -0
  533. package/dist/stepper.css +1 -0
  534. package/dist/stepper.js +67 -0
  535. package/dist/steps.css +1 -0
  536. package/dist/steps.js +94 -0
  537. package/dist/switcher-field.css +1 -0
  538. package/dist/switcher-field.js +61 -0
  539. package/dist/switcher.css +1 -0
  540. package/dist/switcher.js +32 -0
  541. package/dist/table-of-contents.css +1 -0
  542. package/dist/table-of-contents.js +45 -0
  543. package/dist/table.css +1 -0
  544. package/dist/table.js +122 -0
  545. package/dist/tabs.css +1 -0
  546. package/dist/tabs.js +43 -0
  547. package/dist/tag.css +1 -0
  548. package/dist/tag.js +18 -0
  549. package/dist/text.css +1 -0
  550. package/dist/text.js +24 -0
  551. package/dist/textarea-field.css +1 -0
  552. package/dist/textarea-field.js +53 -0
  553. package/dist/textarea.css +1 -0
  554. package/dist/textarea.js +22 -0
  555. package/dist/theme-switcher.css +1 -0
  556. package/dist/theme-switcher.js +106 -0
  557. package/dist/time-field.css +1 -0
  558. package/dist/time-field.js +54 -0
  559. package/dist/time-select.css +1 -0
  560. package/dist/time-select.js +84 -0
  561. package/dist/toast.js +88 -0
  562. package/dist/toaster.css +1 -0
  563. package/dist/toaster.js +80 -0
  564. package/dist/toggle-group.css +1 -0
  565. package/dist/toggle-group.js +30 -0
  566. package/dist/toggle.css +1 -0
  567. package/dist/toggle.js +23 -0
  568. package/dist/tokens.css +6545 -0
  569. package/dist/tokens.js +2 -0
  570. package/dist/tooltip.css +1 -0
  571. package/dist/tooltip.js +60 -0
  572. package/dist/tree-view.css +1 -0
  573. package/dist/tree-view.js +165 -0
  574. package/dist/typing-indicator.css +1 -0
  575. package/dist/typing-indicator.js +27 -0
  576. package/dist/untrustedtext.css +1 -0
  577. package/dist/uptime-bars.css +1 -0
  578. package/dist/uptime-bars.js +100 -0
  579. package/dist/user-menu.css +1 -0
  580. package/dist/user-menu.js +85 -0
  581. package/dist/user-message.css +1 -0
  582. package/dist/user-message.js +31 -0
  583. package/dist/visually-hidden.js +14 -0
  584. package/dist/visuallyhidden.css +1 -0
  585. package/package.json +786 -0
  586. package/src/tokens/border.ts +13 -0
  587. package/src/tokens/breakpoint.ts +4 -0
  588. package/src/tokens/chart-palette.ts +5 -0
  589. package/src/tokens/colors.ts +168 -0
  590. package/src/tokens/components/accordion.css +32 -0
  591. package/src/tokens/components/accordion.ts +7 -0
  592. package/src/tokens/components/alert.ts +14 -0
  593. package/src/tokens/components/app-header.css +24 -0
  594. package/src/tokens/components/app-header.ts +4 -0
  595. package/src/tokens/components/app-launcher.ts +7 -0
  596. package/src/tokens/components/arrow.css +9 -0
  597. package/src/tokens/components/arrow.ts +4 -0
  598. package/src/tokens/components/assistant-message.ts +7 -0
  599. package/src/tokens/components/async-multi-select.css +64 -0
  600. package/src/tokens/components/async-multi-select.ts +13 -0
  601. package/src/tokens/components/async-select.css +56 -0
  602. package/src/tokens/components/async-select.ts +13 -0
  603. package/src/tokens/components/avatar.css +33 -0
  604. package/src/tokens/components/avatar.ts +4 -0
  605. package/src/tokens/components/breadcrumb.css +34 -0
  606. package/src/tokens/components/breadcrumb.ts +7 -0
  607. package/src/tokens/components/button.css +230 -0
  608. package/src/tokens/components/button.ts +13 -0
  609. package/src/tokens/components/card.css +43 -0
  610. package/src/tokens/components/card.ts +7 -0
  611. package/src/tokens/components/chat-shell.ts +7 -0
  612. package/src/tokens/components/chat.css +7 -0
  613. package/src/tokens/components/checkbox.css +44 -0
  614. package/src/tokens/components/checkbox.ts +9 -0
  615. package/src/tokens/components/close-button.css +22 -0
  616. package/src/tokens/components/close-button.ts +4 -0
  617. package/src/tokens/components/code-block.css +62 -0
  618. package/src/tokens/components/code-block.ts +11 -0
  619. package/src/tokens/components/code.css +13 -0
  620. package/src/tokens/components/code.ts +4 -0
  621. package/src/tokens/components/collapsible.css +29 -0
  622. package/src/tokens/components/collapsible.ts +7 -0
  623. package/src/tokens/components/columns.css +13 -0
  624. package/src/tokens/components/columns.ts +4 -0
  625. package/src/tokens/components/container.css +17 -0
  626. package/src/tokens/components/container.ts +7 -0
  627. package/src/tokens/components/control.css +22 -0
  628. package/src/tokens/components/conversation-list.ts +10 -0
  629. package/src/tokens/components/conversation-thread.ts +4 -0
  630. package/src/tokens/components/copyable-value.css +7 -0
  631. package/src/tokens/components/copyable-value.ts +4 -0
  632. package/src/tokens/components/description-list.css +31 -0
  633. package/src/tokens/components/description-list.ts +7 -0
  634. package/src/tokens/components/empty-state.ts +7 -0
  635. package/src/tokens/components/figure.css +24 -0
  636. package/src/tokens/components/figure.ts +7 -0
  637. package/src/tokens/components/file-upload.css +101 -0
  638. package/src/tokens/components/file-upload.ts +16 -0
  639. package/src/tokens/components/floating-dock.css +50 -0
  640. package/src/tokens/components/floating-dock.ts +4 -0
  641. package/src/tokens/components/floating-panel.css +22 -0
  642. package/src/tokens/components/hero.css +13 -0
  643. package/src/tokens/components/hero.ts +4 -0
  644. package/src/tokens/components/highlight.css +11 -0
  645. package/src/tokens/components/highlight.ts +4 -0
  646. package/src/tokens/components/icon.css +11 -0
  647. package/src/tokens/components/image-crop-dialog.ts +7 -0
  648. package/src/tokens/components/inline.css +9 -0
  649. package/src/tokens/components/inline.ts +4 -0
  650. package/src/tokens/components/input-phone.css +29 -0
  651. package/src/tokens/components/input-phone.ts +4 -0
  652. package/src/tokens/components/input.css +64 -0
  653. package/src/tokens/components/input.ts +11 -0
  654. package/src/tokens/components/kbd.css +35 -0
  655. package/src/tokens/components/kbd.ts +8 -0
  656. package/src/tokens/components/label.css +21 -0
  657. package/src/tokens/components/label.ts +10 -0
  658. package/src/tokens/components/legal-footer.css +10 -0
  659. package/src/tokens/components/legal-footer.ts +4 -0
  660. package/src/tokens/components/link.css +35 -0
  661. package/src/tokens/components/link.ts +4 -0
  662. package/src/tokens/components/logo.css +19 -0
  663. package/src/tokens/components/logo.ts +4 -0
  664. package/src/tokens/components/logomark.css +18 -0
  665. package/src/tokens/components/logomark.ts +4 -0
  666. package/src/tokens/components/menu-button.css +24 -0
  667. package/src/tokens/components/menu-button.ts +4 -0
  668. package/src/tokens/components/menu.ts +9 -0
  669. package/src/tokens/components/message-bubble.css +29 -0
  670. package/src/tokens/components/message-bubble.ts +8 -0
  671. package/src/tokens/components/message-composer.ts +9 -0
  672. package/src/tokens/components/modal.ts +7 -0
  673. package/src/tokens/components/multi-select.css +72 -0
  674. package/src/tokens/components/multi-select.ts +11 -0
  675. package/src/tokens/components/number-badge.css +39 -0
  676. package/src/tokens/components/number-badge.ts +7 -0
  677. package/src/tokens/components/number-input.css +54 -0
  678. package/src/tokens/components/number-input.ts +11 -0
  679. package/src/tokens/components/org-switcher.ts +4 -0
  680. package/src/tokens/components/otp-input.css +8 -0
  681. package/src/tokens/components/otp-input.ts +4 -0
  682. package/src/tokens/components/popover.css +27 -0
  683. package/src/tokens/components/popover.ts +7 -0
  684. package/src/tokens/components/progress-bar.css +47 -0
  685. package/src/tokens/components/progress-bar.ts +10 -0
  686. package/src/tokens/components/radio-group.css +8 -0
  687. package/src/tokens/components/radio-group.ts +4 -0
  688. package/src/tokens/components/radio.css +39 -0
  689. package/src/tokens/components/radio.ts +11 -0
  690. package/src/tokens/components/scroll-area.css +25 -0
  691. package/src/tokens/components/scroll-area.ts +7 -0
  692. package/src/tokens/components/select.css +57 -0
  693. package/src/tokens/components/select.ts +8 -0
  694. package/src/tokens/components/separator.css +18 -0
  695. package/src/tokens/components/separator.ts +8 -0
  696. package/src/tokens/components/sheet.ts +4 -0
  697. package/src/tokens/components/sidebar-nav.ts +4 -0
  698. package/src/tokens/components/sidebar.css +42 -0
  699. package/src/tokens/components/sidebar.ts +4 -0
  700. package/src/tokens/components/site-footer.css +26 -0
  701. package/src/tokens/components/site-footer.ts +7 -0
  702. package/src/tokens/components/site-header.css +35 -0
  703. package/src/tokens/components/site-header.ts +4 -0
  704. package/src/tokens/components/site-shell.css +22 -0
  705. package/src/tokens/components/site-shell.ts +9 -0
  706. package/src/tokens/components/skeleton.css +20 -0
  707. package/src/tokens/components/skeleton.ts +7 -0
  708. package/src/tokens/components/skip-link.css +25 -0
  709. package/src/tokens/components/skip-link.ts +4 -0
  710. package/src/tokens/components/slider.css +40 -0
  711. package/src/tokens/components/slider.ts +7 -0
  712. package/src/tokens/components/sparkline.css +23 -0
  713. package/src/tokens/components/sparkline.ts +4 -0
  714. package/src/tokens/components/spinner.css +13 -0
  715. package/src/tokens/components/spinner.ts +4 -0
  716. package/src/tokens/components/stack.css +9 -0
  717. package/src/tokens/components/stack.ts +4 -0
  718. package/src/tokens/components/star-rating.css +29 -0
  719. package/src/tokens/components/star-rating.ts +7 -0
  720. package/src/tokens/components/step.css +56 -0
  721. package/src/tokens/components/switcher.css +44 -0
  722. package/src/tokens/components/switcher.ts +10 -0
  723. package/src/tokens/components/tabs.css +43 -0
  724. package/src/tokens/components/tabs.ts +7 -0
  725. package/src/tokens/components/tag.css +43 -0
  726. package/src/tokens/components/tag.ts +21 -0
  727. package/src/tokens/components/text-inline.css +19 -0
  728. package/src/tokens/components/text-inline.ts +7 -0
  729. package/src/tokens/components/text.css +91 -0
  730. package/src/tokens/components/text.ts +24 -0
  731. package/src/tokens/components/textarea.css +78 -0
  732. package/src/tokens/components/textarea.ts +13 -0
  733. package/src/tokens/components/time-select.css +17 -0
  734. package/src/tokens/components/time-select.ts +7 -0
  735. package/src/tokens/components/toast.ts +4 -0
  736. package/src/tokens/components/toggle-group.css +7 -0
  737. package/src/tokens/components/toggle-group.ts +4 -0
  738. package/src/tokens/components/toggle.css +50 -0
  739. package/src/tokens/components/toggle.ts +7 -0
  740. package/src/tokens/components/tooltip.css +27 -0
  741. package/src/tokens/components/tooltip.ts +7 -0
  742. package/src/tokens/components/typing-indicator.css +21 -0
  743. package/src/tokens/components/typing-indicator.ts +7 -0
  744. package/src/tokens/components/user-menu.ts +4 -0
  745. package/src/tokens/components/user-message.ts +7 -0
  746. package/src/tokens/form.ts +23 -0
  747. package/src/tokens/global/border.css +18 -0
  748. package/src/tokens/global/breakpoint.css +12 -0
  749. package/src/tokens/global/colors.css +105 -0
  750. package/src/tokens/global/form.css +39 -0
  751. package/src/tokens/global/motion.css +15 -0
  752. package/src/tokens/global/opacity.css +10 -0
  753. package/src/tokens/global/section.css +12 -0
  754. package/src/tokens/global/shadow.css +12 -0
  755. package/src/tokens/global/size.css +11 -0
  756. package/src/tokens/global/spacing.css +14 -0
  757. package/src/tokens/global/typography.css +39 -0
  758. package/src/tokens/global/z-index.css +12 -0
  759. package/src/tokens/icon.ts +4 -0
  760. package/src/tokens/index.css +174 -0
  761. package/src/tokens/layer.ts +4 -0
  762. package/src/tokens/layout.ts +4 -0
  763. package/src/tokens/molecules/alert.css +46 -0
  764. package/src/tokens/molecules/annotation-thread.css +43 -0
  765. package/src/tokens/molecules/annotation-thread.ts +7 -0
  766. package/src/tokens/molecules/app-launcher.css +67 -0
  767. package/src/tokens/molecules/assistant-message.css +24 -0
  768. package/src/tokens/molecules/async-multi-select-field.css +25 -0
  769. package/src/tokens/molecules/async-multi-select-field.ts +8 -0
  770. package/src/tokens/molecules/async-select-field.css +25 -0
  771. package/src/tokens/molecules/async-select-field.ts +8 -0
  772. package/src/tokens/molecules/avatar-upload.css +35 -0
  773. package/src/tokens/molecules/avatar-upload.ts +7 -0
  774. package/src/tokens/molecules/banner.css +21 -0
  775. package/src/tokens/molecules/banner.ts +14 -0
  776. package/src/tokens/molecules/calendar-planner.css +70 -0
  777. package/src/tokens/molecules/calendar-planner.ts +7 -0
  778. package/src/tokens/molecules/calendar-roster.css +69 -0
  779. package/src/tokens/molecules/calendar-roster.ts +7 -0
  780. package/src/tokens/molecules/calendar.css +90 -0
  781. package/src/tokens/molecules/calendar.ts +7 -0
  782. package/src/tokens/molecules/carousel.css +27 -0
  783. package/src/tokens/molecules/carousel.ts +7 -0
  784. package/src/tokens/molecules/chart.css +123 -0
  785. package/src/tokens/molecules/chart.ts +4 -0
  786. package/src/tokens/molecules/chat-shell.css +20 -0
  787. package/src/tokens/molecules/checkbox-field.css +43 -0
  788. package/src/tokens/molecules/checkbox-field.ts +9 -0
  789. package/src/tokens/molecules/command-palette.css +50 -0
  790. package/src/tokens/molecules/command-palette.ts +7 -0
  791. package/src/tokens/molecules/confirm-dialog.css +7 -0
  792. package/src/tokens/molecules/confirm-dialog.ts +4 -0
  793. package/src/tokens/molecules/connector-auth.css +13 -0
  794. package/src/tokens/molecules/consent.css +30 -0
  795. package/src/tokens/molecules/consent.ts +8 -0
  796. package/src/tokens/molecules/conversation-list.css +38 -0
  797. package/src/tokens/molecules/conversation-thread.css +7 -0
  798. package/src/tokens/molecules/copy-button.css +7 -0
  799. package/src/tokens/molecules/copy-button.ts +4 -0
  800. package/src/tokens/molecules/data-table.css +9 -0
  801. package/src/tokens/molecules/data-table.ts +4 -0
  802. package/src/tokens/molecules/date-picker-field.css +25 -0
  803. package/src/tokens/molecules/date-picker-field.ts +8 -0
  804. package/src/tokens/molecules/date-picker.css +40 -0
  805. package/src/tokens/molecules/date-picker.ts +4 -0
  806. package/src/tokens/molecules/date-time-field.css +26 -0
  807. package/src/tokens/molecules/date-time-field.ts +8 -0
  808. package/src/tokens/molecules/docs-search.css +42 -0
  809. package/src/tokens/molecules/docs-search.ts +7 -0
  810. package/src/tokens/molecules/dropdown-field.css +57 -0
  811. package/src/tokens/molecules/dropdown-field.ts +4 -0
  812. package/src/tokens/molecules/empty-state.css +31 -0
  813. package/src/tokens/molecules/field-row.css +31 -0
  814. package/src/tokens/molecules/field-row.ts +7 -0
  815. package/src/tokens/molecules/file-upload-field.css +25 -0
  816. package/src/tokens/molecules/file-upload-field.ts +8 -0
  817. package/src/tokens/molecules/filter-bar.css +11 -0
  818. package/src/tokens/molecules/filter-bar.ts +5 -0
  819. package/src/tokens/molecules/form-field.css +7 -0
  820. package/src/tokens/molecules/image-crop-dialog.css +19 -0
  821. package/src/tokens/molecules/input-field.css +43 -0
  822. package/src/tokens/molecules/input-field.ts +12 -0
  823. package/src/tokens/molecules/input-phone-field.css +25 -0
  824. package/src/tokens/molecules/input-phone-field.ts +8 -0
  825. package/src/tokens/molecules/language-switcher.css +19 -0
  826. package/src/tokens/molecules/language-switcher.ts +4 -0
  827. package/src/tokens/molecules/menu.css +63 -0
  828. package/src/tokens/molecules/message-composer.css +37 -0
  829. package/src/tokens/molecules/modal.css +50 -0
  830. package/src/tokens/molecules/multi-select-field.css +25 -0
  831. package/src/tokens/molecules/multi-select-field.ts +8 -0
  832. package/src/tokens/molecules/notification-button.css +9 -0
  833. package/src/tokens/molecules/notification-button.ts +4 -0
  834. package/src/tokens/molecules/notification-list.css +30 -0
  835. package/src/tokens/molecules/notification-list.ts +4 -0
  836. package/src/tokens/molecules/notification-panel.css +41 -0
  837. package/src/tokens/molecules/notification-panel.ts +4 -0
  838. package/src/tokens/molecules/number-input-field.css +25 -0
  839. package/src/tokens/molecules/number-input-field.ts +8 -0
  840. package/src/tokens/molecules/onboarding-shell.css +18 -0
  841. package/src/tokens/molecules/org-switcher.css +57 -0
  842. package/src/tokens/molecules/otp-field.css +25 -0
  843. package/src/tokens/molecules/otp-field.ts +8 -0
  844. package/src/tokens/molecules/page-intro.css +10 -0
  845. package/src/tokens/molecules/pagination.css +68 -0
  846. package/src/tokens/molecules/pagination.ts +9 -0
  847. package/src/tokens/molecules/password-field.css +29 -0
  848. package/src/tokens/molecules/prev-next-nav.css +42 -0
  849. package/src/tokens/molecules/prev-next-nav.ts +7 -0
  850. package/src/tokens/molecules/project-card.css +21 -0
  851. package/src/tokens/molecules/project-card.ts +7 -0
  852. package/src/tokens/molecules/prose.css +58 -0
  853. package/src/tokens/molecules/prose.ts +7 -0
  854. package/src/tokens/molecules/public-page-shell.css +8 -0
  855. package/src/tokens/molecules/radio-field.css +42 -0
  856. package/src/tokens/molecules/radio-field.ts +9 -0
  857. package/src/tokens/molecules/recovery-codes.css +23 -0
  858. package/src/tokens/molecules/recovery-codes.ts +4 -0
  859. package/src/tokens/molecules/search-form.css +34 -0
  860. package/src/tokens/molecules/search-form.ts +7 -0
  861. package/src/tokens/molecules/select-field.css +25 -0
  862. package/src/tokens/molecules/select-field.ts +4 -0
  863. package/src/tokens/molecules/sheet.css +33 -0
  864. package/src/tokens/molecules/sidebar-nav.css +53 -0
  865. package/src/tokens/molecules/site-nav.css +31 -0
  866. package/src/tokens/molecules/site-nav.ts +4 -0
  867. package/src/tokens/molecules/stat-tile.css +45 -0
  868. package/src/tokens/molecules/stat-tile.ts +7 -0
  869. package/src/tokens/molecules/stepper.css +41 -0
  870. package/src/tokens/molecules/steps.css +11 -0
  871. package/src/tokens/molecules/steps.ts +7 -0
  872. package/src/tokens/molecules/switcher-field.css +42 -0
  873. package/src/tokens/molecules/switcher-field.ts +9 -0
  874. package/src/tokens/molecules/table-of-contents.css +42 -0
  875. package/src/tokens/molecules/table-of-contents.ts +7 -0
  876. package/src/tokens/molecules/table.css +60 -0
  877. package/src/tokens/molecules/table.ts +14 -0
  878. package/src/tokens/molecules/textarea-field.css +25 -0
  879. package/src/tokens/molecules/textarea-field.ts +10 -0
  880. package/src/tokens/molecules/theme-switcher.css +20 -0
  881. package/src/tokens/molecules/theme-switcher.ts +4 -0
  882. package/src/tokens/molecules/time-field.css +25 -0
  883. package/src/tokens/molecules/time-field.ts +8 -0
  884. package/src/tokens/molecules/toast.css +17 -0
  885. package/src/tokens/molecules/tree-view.css +47 -0
  886. package/src/tokens/molecules/tree-view.ts +7 -0
  887. package/src/tokens/molecules/uptime-bars.css +40 -0
  888. package/src/tokens/molecules/uptime-bars.ts +7 -0
  889. package/src/tokens/molecules/user-menu.css +73 -0
  890. package/src/tokens/molecules/user-message.css +24 -0
  891. package/src/tokens/motion.ts +6 -0
  892. package/src/tokens/opacity.ts +4 -0
  893. package/src/tokens/scss/_index.legacy.scss +163 -0
  894. package/src/tokens/scss/_index.scss +163 -0
  895. package/src/tokens/scss/components/_accordion.scss +20 -0
  896. package/src/tokens/scss/components/_app-header.scss +13 -0
  897. package/src/tokens/scss/components/_arrow.scss +6 -0
  898. package/src/tokens/scss/components/_async-multi-select.scss +52 -0
  899. package/src/tokens/scss/components/_async-select.scss +44 -0
  900. package/src/tokens/scss/components/_avatar.scss +22 -0
  901. package/src/tokens/scss/components/_breadcrumb.scss +20 -0
  902. package/src/tokens/scss/components/_button.scss +187 -0
  903. package/src/tokens/scss/components/_card.scss +31 -0
  904. package/src/tokens/scss/components/_chat.scss +4 -0
  905. package/src/tokens/scss/components/_checkbox.scss +28 -0
  906. package/src/tokens/scss/components/_close-button.scss +11 -0
  907. package/src/tokens/scss/components/_code-block.scss +36 -0
  908. package/src/tokens/scss/components/_code.scss +10 -0
  909. package/src/tokens/scss/components/_collapsible.scss +18 -0
  910. package/src/tokens/scss/components/_columns.scss +10 -0
  911. package/src/tokens/scss/components/_container.scss +14 -0
  912. package/src/tokens/scss/components/_control.scss +19 -0
  913. package/src/tokens/scss/components/_copyable-value.scss +4 -0
  914. package/src/tokens/scss/components/_description-list.scss +19 -0
  915. package/src/tokens/scss/components/_figure.scss +13 -0
  916. package/src/tokens/scss/components/_file-upload.scss +72 -0
  917. package/src/tokens/scss/components/_floating-dock.scss +40 -0
  918. package/src/tokens/scss/components/_floating-panel.scss +11 -0
  919. package/src/tokens/scss/components/_hero.scss +10 -0
  920. package/src/tokens/scss/components/_highlight.scss +8 -0
  921. package/src/tokens/scss/components/_icon.scss +8 -0
  922. package/src/tokens/scss/components/_inline.scss +6 -0
  923. package/src/tokens/scss/components/_input-phone.scss +17 -0
  924. package/src/tokens/scss/components/_input.scss +40 -0
  925. package/src/tokens/scss/components/_kbd.scss +23 -0
  926. package/src/tokens/scss/components/_label.scss +11 -0
  927. package/src/tokens/scss/components/_legal-footer.scss +7 -0
  928. package/src/tokens/scss/components/_link.scss +20 -0
  929. package/src/tokens/scss/components/_logo.scss +9 -0
  930. package/src/tokens/scss/components/_logomark.scss +8 -0
  931. package/src/tokens/scss/components/_menu-button.scss +13 -0
  932. package/src/tokens/scss/components/_message-bubble.scss +17 -0
  933. package/src/tokens/scss/components/_multi-select.scss +51 -0
  934. package/src/tokens/scss/components/_number-badge.scss +26 -0
  935. package/src/tokens/scss/components/_number-input.scss +43 -0
  936. package/src/tokens/scss/components/_otp-input.scss +5 -0
  937. package/src/tokens/scss/components/_popover.scss +17 -0
  938. package/src/tokens/scss/components/_progress-bar.scss +32 -0
  939. package/src/tokens/scss/components/_radio-group.scss +5 -0
  940. package/src/tokens/scss/components/_radio.scss +26 -0
  941. package/src/tokens/scss/components/_scroll-area.scss +13 -0
  942. package/src/tokens/scss/components/_select.scss +38 -0
  943. package/src/tokens/scss/components/_separator.scss +8 -0
  944. package/src/tokens/scss/components/_sidebar.scss +29 -0
  945. package/src/tokens/scss/components/_site-footer.scss +16 -0
  946. package/src/tokens/scss/components/_site-header.scss +24 -0
  947. package/src/tokens/scss/components/_site-shell.scss +19 -0
  948. package/src/tokens/scss/components/_skeleton.scss +9 -0
  949. package/src/tokens/scss/components/_skip-link.scss +13 -0
  950. package/src/tokens/scss/components/_slider.scss +25 -0
  951. package/src/tokens/scss/components/_sparkline.scss +11 -0
  952. package/src/tokens/scss/components/_spinner.scss +10 -0
  953. package/src/tokens/scss/components/_stack.scss +6 -0
  954. package/src/tokens/scss/components/_star-rating.scss +17 -0
  955. package/src/tokens/scss/components/_step.scss +37 -0
  956. package/src/tokens/scss/components/_switcher.scss +30 -0
  957. package/src/tokens/scss/components/_tabs.scss +26 -0
  958. package/src/tokens/scss/components/_tag.scss +30 -0
  959. package/src/tokens/scss/components/_text-inline.scss +7 -0
  960. package/src/tokens/scss/components/_text.scss +73 -0
  961. package/src/tokens/scss/components/_textarea.scss +54 -0
  962. package/src/tokens/scss/components/_time-select.scss +7 -0
  963. package/src/tokens/scss/components/_toggle-group.scss +4 -0
  964. package/src/tokens/scss/components/_toggle.scss +34 -0
  965. package/src/tokens/scss/components/_tooltip.scss +16 -0
  966. package/src/tokens/scss/components/_typing-indicator.scss +11 -0
  967. package/src/tokens/scss/global/_border.scss +15 -0
  968. package/src/tokens/scss/global/_breakpoint.scss +9 -0
  969. package/src/tokens/scss/global/_colors.scss +102 -0
  970. package/src/tokens/scss/global/_form.scss +27 -0
  971. package/src/tokens/scss/global/_motion.scss +12 -0
  972. package/src/tokens/scss/global/_opacity.scss +7 -0
  973. package/src/tokens/scss/global/_section.scss +9 -0
  974. package/src/tokens/scss/global/_shadow.scss +9 -0
  975. package/src/tokens/scss/global/_size.scss +8 -0
  976. package/src/tokens/scss/global/_spacing.scss +11 -0
  977. package/src/tokens/scss/global/_typography.scss +36 -0
  978. package/src/tokens/scss/global/_z-index.scss +9 -0
  979. package/src/tokens/scss/molecules/_alert.scss +33 -0
  980. package/src/tokens/scss/molecules/_annotation-thread.scss +28 -0
  981. package/src/tokens/scss/molecules/_app-launcher.scss +46 -0
  982. package/src/tokens/scss/molecules/_assistant-message.scss +13 -0
  983. package/src/tokens/scss/molecules/_async-multi-select-field.scss +14 -0
  984. package/src/tokens/scss/molecules/_async-select-field.scss +14 -0
  985. package/src/tokens/scss/molecules/_avatar-upload.scss +23 -0
  986. package/src/tokens/scss/molecules/_banner.scss +18 -0
  987. package/src/tokens/scss/molecules/_calendar-planner.scss +46 -0
  988. package/src/tokens/scss/molecules/_calendar-roster.scss +45 -0
  989. package/src/tokens/scss/molecules/_calendar.scss +67 -0
  990. package/src/tokens/scss/molecules/_carousel.scss +15 -0
  991. package/src/tokens/scss/molecules/_chart.scss +82 -0
  992. package/src/tokens/scss/molecules/_chat-shell.scss +10 -0
  993. package/src/tokens/scss/molecules/_checkbox-field.scss +31 -0
  994. package/src/tokens/scss/molecules/_command-palette.scss +33 -0
  995. package/src/tokens/scss/molecules/_confirm-dialog.scss +4 -0
  996. package/src/tokens/scss/molecules/_connector-auth.scss +10 -0
  997. package/src/tokens/scss/molecules/_consent.scss +18 -0
  998. package/src/tokens/scss/molecules/_conversation-list.scss +23 -0
  999. package/src/tokens/scss/molecules/_conversation-thread.scss +4 -0
  1000. package/src/tokens/scss/molecules/_copy-button.scss +4 -0
  1001. package/src/tokens/scss/molecules/_data-table.scss +6 -0
  1002. package/src/tokens/scss/molecules/_date-picker-field.scss +14 -0
  1003. package/src/tokens/scss/molecules/_date-picker.scss +26 -0
  1004. package/src/tokens/scss/molecules/_date-time-field.scss +15 -0
  1005. package/src/tokens/scss/molecules/_docs-search.scss +27 -0
  1006. package/src/tokens/scss/molecules/_dropdown-field.scss +41 -0
  1007. package/src/tokens/scss/molecules/_empty-state.scss +19 -0
  1008. package/src/tokens/scss/molecules/_field-row.scss +21 -0
  1009. package/src/tokens/scss/molecules/_file-upload-field.scss +14 -0
  1010. package/src/tokens/scss/molecules/_filter-bar.scss +8 -0
  1011. package/src/tokens/scss/molecules/_form-field.scss +4 -0
  1012. package/src/tokens/scss/molecules/_image-crop-dialog.scss +9 -0
  1013. package/src/tokens/scss/molecules/_input-field.scss +28 -0
  1014. package/src/tokens/scss/molecules/_input-phone-field.scss +14 -0
  1015. package/src/tokens/scss/molecules/_language-switcher.scss +9 -0
  1016. package/src/tokens/scss/molecules/_menu.scss +46 -0
  1017. package/src/tokens/scss/molecules/_message-composer.scss +21 -0
  1018. package/src/tokens/scss/molecules/_modal.scss +35 -0
  1019. package/src/tokens/scss/molecules/_multi-select-field.scss +14 -0
  1020. package/src/tokens/scss/molecules/_notification-button.scss +6 -0
  1021. package/src/tokens/scss/molecules/_notification-list.scss +20 -0
  1022. package/src/tokens/scss/molecules/_notification-panel.scss +31 -0
  1023. package/src/tokens/scss/molecules/_number-input-field.scss +14 -0
  1024. package/src/tokens/scss/molecules/_onboarding-shell.scss +15 -0
  1025. package/src/tokens/scss/molecules/_org-switcher.scss +39 -0
  1026. package/src/tokens/scss/molecules/_otp-field.scss +14 -0
  1027. package/src/tokens/scss/molecules/_page-intro.scss +7 -0
  1028. package/src/tokens/scss/molecules/_pagination.scss +46 -0
  1029. package/src/tokens/scss/molecules/_password-field.scss +17 -0
  1030. package/src/tokens/scss/molecules/_prev-next-nav.scss +25 -0
  1031. package/src/tokens/scss/molecules/_project-card.scss +11 -0
  1032. package/src/tokens/scss/molecules/_prose.scss +47 -0
  1033. package/src/tokens/scss/molecules/_public-page-shell.scss +5 -0
  1034. package/src/tokens/scss/molecules/_radio-field.scss +30 -0
  1035. package/src/tokens/scss/molecules/_recovery-codes.scss +12 -0
  1036. package/src/tokens/scss/molecules/_search-form.scss +21 -0
  1037. package/src/tokens/scss/molecules/_select-field.scss +14 -0
  1038. package/src/tokens/scss/molecules/_sheet.scss +30 -0
  1039. package/src/tokens/scss/molecules/_sidebar-nav.scss +37 -0
  1040. package/src/tokens/scss/molecules/_site-nav.scss +18 -0
  1041. package/src/tokens/scss/molecules/_stat-tile.scss +32 -0
  1042. package/src/tokens/scss/molecules/_stepper.scss +26 -0
  1043. package/src/tokens/scss/molecules/_steps.scss +8 -0
  1044. package/src/tokens/scss/molecules/_switcher-field.scss +30 -0
  1045. package/src/tokens/scss/molecules/_table-of-contents.scss +27 -0
  1046. package/src/tokens/scss/molecules/_table.scss +40 -0
  1047. package/src/tokens/scss/molecules/_textarea-field.scss +14 -0
  1048. package/src/tokens/scss/molecules/_theme-switcher.scss +10 -0
  1049. package/src/tokens/scss/molecules/_time-field.scss +14 -0
  1050. package/src/tokens/scss/molecules/_toast.scss +14 -0
  1051. package/src/tokens/scss/molecules/_tree-view.scss +34 -0
  1052. package/src/tokens/scss/molecules/_uptime-bars.scss +25 -0
  1053. package/src/tokens/scss/molecules/_user-menu.scss +53 -0
  1054. package/src/tokens/scss/molecules/_user-message.scss +13 -0
  1055. package/src/tokens/shadow.ts +6 -0
  1056. package/src/tokens/size.ts +6 -0
  1057. package/src/tokens/spacing.ts +4 -0
  1058. package/src/tokens/surface-dark-derived.css +88 -0
  1059. package/src/tokens/surface-invert.css +682 -0
  1060. package/src/tokens/surface-public.css +151 -0
  1061. package/src/tokens/tokens.json +3267 -0
  1062. package/src/tokens/tokens.ts +59 -0
  1063. package/src/tokens/typography.ts +91 -0
  1064. package/src/tokens/utils.test.ts +86 -0
  1065. package/src/tokens/utils.ts +37 -0
@@ -0,0 +1,55 @@
1
+ import type { ReactNode } from 'react';
2
+ import './UntrustedText.css';
3
+ export interface UntrustedTextProps {
4
+ /**
5
+ * El valor. Si es una cadena recibe el tratamiento entero —marcado de
6
+ * invisibles, aislamiento de dirección, comillas y recorte—; cualquier otro
7
+ * `ReactNode` se pinta tal cual, porque ya no es texto de fuera sino algo que
8
+ * compuso quien monta la pantalla.
9
+ */
10
+ value: ReactNode;
11
+ /**
12
+ * Con `true`, un valor largo se recorta y se ofrece un desplegador nativo
13
+ * (`<details>`, sin una línea de JavaScript) para verlo entero. Default
14
+ * `false`: dentro de una frase el desplegador no cabe —un `<details>` no
15
+ * puede vivir dentro de un `<p>`—, así que ahí el valor se recorta y quien
16
+ * quiera verlo entero lo despliega en la ficha.
17
+ */
18
+ expandable?: boolean;
19
+ /** Etiqueta del desplegador cerrado. Default castellano: «Ver el valor completo». */
20
+ expandLabel?: string;
21
+ /** Etiqueta del desplegador abierto. Default castellano: «Ver menos». */
22
+ collapseLabel?: string;
23
+ /**
24
+ * Las comillas que enmarcan el valor. Default castellano: `['«', '»']`. Van
25
+ * en prop porque cambian con el idioma (`['„', '“']` en alemán).
26
+ */
27
+ quotes?: [string, string];
28
+ /** Se añade DESPUÉS de las clases propias. */
29
+ className?: string;
30
+ }
31
+ /**
32
+ * **Cómo se pinta un dato que escribió un tercero**: el nombre con el que se
33
+ * registró una herramienta, la cuenta, el host de retorno.
34
+ *
35
+ * Tres cosas, y las tres son de seguridad, no de estética:
36
+ *
37
+ * 1. **Los caracteres invisibles se hacen visibles** (`[U+202E]`). Un control
38
+ * de dirección deja que `moodle.ejemplo.org` se lea al revés, y en una
39
+ * pantalla donde se concede acceso eso es suplantación.
40
+ * 2. **El valor va aislado** en un `<bdi>`, que es la herramienta del propio
41
+ * motor para esto: lo que haya dentro no puede reordenar el texto de
42
+ * alrededor, y un nombre legítimamente en árabe o hebreo se sigue pintando
43
+ * bien.
44
+ * 3. **El valor va entrecomillado**, para que se lea como lo que es —una
45
+ * cadena que eligió quien registró la herramienta— y no como interfaz. Un
46
+ * nombre registrado como `<strong>Claude</strong>` se ve con sus signos:
47
+ * eso es la defensa funcionando, y las comillas dicen dónde empieza y dónde
48
+ * acaba el texto ajeno.
49
+ *
50
+ * Y un cuarto, de maqueta: un valor largo se recorta a
51
+ * `--connector-auth-untrusted-max-lines` líneas. El texto **completo sigue en
52
+ * el documento** —un lector de pantalla lo lee entero, el recorte es solo
53
+ * visual— y con `expandable` hay además un desplegador para verlo.
54
+ */
55
+ export declare function UntrustedText({ value, expandable, expandLabel, collapseLabel, quotes, className, }: UntrustedTextProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,35 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface ErrorPageProps {
3
+ /** El título («Error»): `Heading` de nivel 1 vía `PageIntro`, columna izquierda. */
4
+ title: ReactNode;
5
+ /** La frase bajo el título («Algo ha salido mal»), columna izquierda. */
6
+ description?: ReactNode;
7
+ /** El enlace de vuelta, bajo la frase, misma columna izquierda: `<Link icon="arrow-left" href="/">Volver al inicio</Link>`. Sin router dentro. */
8
+ homeAction: ReactNode;
9
+ /** La frase de la columna derecha, sobre el botón («Puedes volver a intentarlo»). */
10
+ retryDescription?: ReactNode;
11
+ /** El `Button` «Reintentar», columna derecha, debajo de `retryDescription` — pásalo con `block` (mismo patrón que las acciones de `AuthPage`/`Form`). */
12
+ retryAction: ReactNode;
13
+ /** Cabecera del sitio, SIN auth. Va dentro de un `ErrorBoundary`. En `global-error.tsx` no se pasa. */
14
+ header?: ReactNode;
15
+ /** Pie del sitio. Ídem. */
16
+ footer?: ReactNode;
17
+ /** `id` del `main` (`main-content` por defecto, destino del `SkipLink`). */
18
+ id?: string;
19
+ /**
20
+ * Con `false` no monta `SiteShell` ni el `main`: solo el contenido (las dos
21
+ * columnas), para pintarlo dentro de un `AppShell` que ya tiene su `main`.
22
+ * Por defecto `true`. Sin marco, `header`, `footer` e `id` no aplican.
23
+ */
24
+ shell?: boolean;
25
+ }
26
+ /**
27
+ * Plantilla de «algo ha salido mal»: dos columnas, mismo molde que `AuthPage`
28
+ * (`Columns` de dos celdas). Izquierda: título, frase y el enlace de vuelta.
29
+ * Derecha: la frase de reintento y el botón en bloque, como las acciones de un
30
+ * formulario de acceso. El marco lo pone `PublicPageShell`, así que cabecera y
31
+ * pie van cada uno en su `ErrorBoundary`: la página de error no puede depender
32
+ * del layout que pudo fallar. Con `shell={false}` devuelve solo el contenido,
33
+ * para una app que ya tiene su `main`.
34
+ */
35
+ export declare function ErrorPage({ title, description, homeAction, retryDescription, retryAction, header, footer, id, shell }: ErrorPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,30 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface NotFoundPageProps {
3
+ /** El título («Página no encontrada»): `Heading` de nivel 1 vía `PageIntro`. */
4
+ title: ReactNode;
5
+ /** La frase bajo el título (el código, una explicación corta). */
6
+ description?: ReactNode;
7
+ /** El enlace de vuelta: el `Link` del producto con su icono (`<Link icon="arrow-left" href="/">Volver al inicio</Link>`). Sin router dentro. */
8
+ homeLink: ReactNode;
9
+ /** Cabecera del sitio. Va dentro de un `ErrorBoundary`: si falla, la página sigue. */
10
+ header?: ReactNode;
11
+ /** Pie del sitio. Ídem. */
12
+ footer?: ReactNode;
13
+ /** `id` del `main` (`main-content` por defecto, destino del `SkipLink`). */
14
+ id?: string;
15
+ /**
16
+ * Con `false` no monta `SiteShell` ni el `main`: solo el contenido (título,
17
+ * frase y enlace de vuelta), para pintarlo dentro de un `AppShell` que ya
18
+ * tiene su `main`. Por defecto `true`. Sin marco, `header`, `footer` e `id`
19
+ * no aplican.
20
+ */
21
+ shell?: boolean;
22
+ }
23
+ /**
24
+ * Plantilla de 404: el marco público (`PublicPageShell`) con cabecera y pie
25
+ * opcionales, y dentro un `main` con la cabecera de página y el enlace de
26
+ * vuelta. Cabecera y pie van cada uno en su `ErrorBoundary`, así que un chrome
27
+ * roto no se lleva por delante el mensaje. Con `shell={false}` devuelve solo
28
+ * el contenido, para una app que ya tiene su `main`.
29
+ */
30
+ export declare function NotFoundPage({ title, description, homeLink, header, footer, id, shell }: NotFoundPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,104 @@
1
+ import type { ReactNode } from 'react';
2
+ import './OnboardingShell.css';
3
+ export interface OnboardingShellProps {
4
+ /** El cuerpo del paso: el formulario, la explicación, lo que toque. */
5
+ children: ReactNode;
6
+ /**
7
+ * La marca, arriba a la izquierda: un `Logo`, o el `Logo` dentro del enlace
8
+ * al inicio. Se pinta en la **ranura de cabecera del marco**, fuera del
9
+ * `main`: es chrome, y respira como la barra pública, no como el contenido.
10
+ * El **alto lo impone la plantilla** —el mismo de la cabecera pública, y con
11
+ * sus mismos peldaños en móvil—, así que la prop `size` del `Logo` no decide
12
+ * el tamaño final: manda el sitio donde se pinta.
13
+ */
14
+ brand?: ReactNode;
15
+ /**
16
+ * Las preferencias globales de la pantalla: idioma y tema. Se pintan en la
17
+ * **banda de preferencias del marco** (`PublicPageShell`), al final y
18
+ * separadas del pie de acciones del paso — una preferencia global no es una
19
+ * acción del flujo y no puede parecerlo. En el alta no hay cabecera pública
20
+ * —el usuario ya tiene sesión, no hay nada que navegar—, así que estos dos
21
+ * son todo el chrome que queda.
22
+ */
23
+ preferences?: ReactNode;
24
+ /**
25
+ * Alias histórico de `preferences`, de cuando el alta montaba la banda por
26
+ * su cuenta. Se conserva para no romper a quien ya lo pasa; en pantallas
27
+ * nuevas, `preferences`. Si se pasan los dos, manda `preferences`.
28
+ *
29
+ * @deprecated Usa `preferences`.
30
+ */
31
+ switchers?: ReactNode;
32
+ /** Nombre accesible de la banda de preferencias. Default: «Preferencias» (castellano). */
33
+ preferencesLabel?: string;
34
+ /**
35
+ * El progreso: un `Stepper`. La ranura se monta siempre; es el `Stepper`
36
+ * quien decide no pintarse cuando el flujo tiene un solo paso.
37
+ */
38
+ stepper?: ReactNode;
39
+ /** La acción principal del paso, la última del renglón: «Continuar», «Terminar». */
40
+ primaryAction?: ReactNode;
41
+ /** «Atrás», la primera del renglón. En el primer paso no se pasa. */
42
+ backAction?: ReactNode;
43
+ /**
44
+ * La salida del paso: «Omitir por ahora», «Cerrar sesión». Va en `text` — es
45
+ * la acción de menos peso de la pantalla y no debe competir con la
46
+ * principal. Se pinta **antes** de la principal: a su izquierda en
47
+ * escritorio, y debajo y centrada en móvil.
48
+ */
49
+ exitAction?: ReactNode;
50
+ /** Nombre accesible del grupo de acciones del pie. Default: «Acciones del paso» (castellano). */
51
+ actionsLabel?: string;
52
+ /** `id` del `main` (`main-content` por defecto, destino del `SkipLink`). */
53
+ id?: string;
54
+ /**
55
+ * Con `false` no monta el marco público ni el `main`: solo la columna del
56
+ * alta, para pintarla dentro de una app que ya tiene su `main`. Por defecto
57
+ * `true`.
58
+ */
59
+ shell?: boolean;
60
+ /**
61
+ * Ancho de la columna del paso. `md` (por defecto) es la medida estrecha de
62
+ * lectura, la de un formulario; `wide` es el ancho de página pública, para
63
+ * un paso que enseña una fila de tarjetas (la elección de plan).
64
+ */
65
+ width?: 'md' | 'wide';
66
+ /** Se añade DESPUÉS de las clases propias del componente. */
67
+ className?: string;
68
+ }
69
+ /**
70
+ * La plantilla del alta: una columna centrada con la marca arriba, el progreso,
71
+ * el paso y un pie de acciones. Cuelga de `PublicPageShell`, así que lee en la
72
+ * **superficie pública** —cuerpo a 20px, controles `lg`—: el alta no es una
73
+ * pantalla de aplicación, es la puerta.
74
+ *
75
+ * Lo que no lleva, a propósito:
76
+ *
77
+ * - **Cabecera pública.** En el alta el usuario ya tiene sesión; no hay sitio
78
+ * al que navegar y una barra de marketing solo invitaría a irse. Arriba queda
79
+ * solo la marca, en la ranura de cabecera del marco —donde iría `SiteHeader`—
80
+ * y con su mismo aire; idioma y tema bajan a la ranura de pie, al borde
81
+ * inferior de la ventana y separados del pie de acciones del paso. Las dos
82
+ * piezas son chrome y viven fuera del `main`: el aire del `Container` con
83
+ * `space="xl"` gobierna solo el contenido del paso.
84
+ * - **Una sola columna a lo ancho de la página.** El chrome ocupa el ancho
85
+ * normal de una página pública —la marca cae donde el ojo ya la espera de la
86
+ * pantalla de acceso—, y lo que se acota a la medida de lectura y se centra
87
+ * es solo la columna del paso: un formulario de cinco campos pegado al borde
88
+ * izquierdo de una pantalla de 27 pulgadas no se lee.
89
+ *
90
+ * El pie de acciones fija la jerarquía en un solo sitio, para que ninguna
91
+ * pantalla del alta la reinvente: la principal cierra el renglón por la
92
+ * derecha, con la salida (`text`) pegada a su izquierda y «Atrás» abriendo. Es
93
+ * el mismo criterio que el pie de un `Form`: la principal, la última. En móvil
94
+ * la principal sube a todo el ancho y la salida cae centrada debajo, como en
95
+ * `Form` con acciones en bloque.
96
+ *
97
+ * **Y también la talla**: la plantilla reparte `lg` al paso **entero**
98
+ * —progreso, cuerpo y acciones— por el contexto de talla del sistema
99
+ * (`FormSizeContext`, el mismo que usa `Form` con sus campos y `Hero` con sus
100
+ * acciones). El alta es superficie pública, así que todo lo que se ponga
101
+ * dentro —un `Form`, un campo suelto, un `AvatarUpload`— sale a la talla que
102
+ * le toca sin que la aplicación tenga que acordarse de pedirla.
103
+ */
104
+ export declare function OnboardingShell({ children, brand, preferences, switchers, preferencesLabel, stepper, primaryAction, backAction, exitAction, actionsLabel, id, shell, width, className, }: OnboardingShellProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,59 @@
1
+ import { type ReactNode } from 'react';
2
+ import './PublicPageShell.css';
3
+ export interface PublicPageShellProps {
4
+ /** El contenido de la página: lo que va dentro del `main`. */
5
+ children: ReactNode;
6
+ /** Cabecera del sitio. Va dentro de un `ErrorBoundary`: si lanza al renderizar, desaparece ella y la página sigue. */
7
+ header?: ReactNode;
8
+ /** Pie del sitio. Ídem. */
9
+ footer?: ReactNode;
10
+ /**
11
+ * Las preferencias de la pantalla —idioma y tema—, en una banda propia
12
+ * **entre el contenido y el `footer`**. Se pasan los conmutadores sueltos
13
+ * (`LanguageSwitcher`, `ThemeSwitcher`): la banda pone la `section` con
14
+ * nombre, el ancho de página, el aire y la fila alineada al final.
15
+ *
16
+ * Va aparte del pie porque una preferencia global no es una legal ni una
17
+ * acción del contenido, y el pie legal es un `footer` que no admite
18
+ * invitados. Con `shell={false}` no se pinta: sin marco no hay ranura de
19
+ * pie, igual que `header` y `footer`.
20
+ */
21
+ preferences?: ReactNode;
22
+ /** Nombre accesible de la banda de preferencias. Default: «Preferencias» (castellano). */
23
+ preferencesLabel?: string;
24
+ /** `id` del `main` (`main-content` por defecto, destino del `SkipLink`). */
25
+ id?: string;
26
+ /**
27
+ * Con `false` no monta `SiteShell` ni el `main`: devuelve solo los
28
+ * `children`, para pintarlos dentro de un `AppShell` que ya tiene su `main`.
29
+ * Por defecto `true`. Sin marco, `header`, `footer`, `preferences` e `id` no
30
+ * aplican —y tampoco el `ref`, porque no hay marco al que engancharlo.
31
+ */
32
+ shell?: boolean;
33
+ }
34
+ /**
35
+ * El marco de una página pública, en una sola pieza: `SiteShell` con cabecera
36
+ * y pie opcionales y, dentro, el `main` acotado (`Container`) al que apunta el
37
+ * `SkipLink`. Es el molde del que cuelgan las plantillas públicas
38
+ * —`ErrorPage`, `NotFoundPage`, `OnboardingShell`, la maqueta de acceso—, para
39
+ * que ninguna pueda divergir del marco real.
40
+ *
41
+ * Cabecera, preferencias y pie van cada uno en su `ErrorBoundary`: una página
42
+ * de error no puede depender del chrome que pudo fallar, y el resto de páginas
43
+ * heredan esa garantía gratis.
44
+ *
45
+ * Con `shell={false}` devuelve solo el contenido: es lo que necesita una
46
+ * plantilla pintada dentro de una app que ya tiene su marco y su `main`.
47
+ *
48
+ * **Reenvía el `ref` al nodo raíz del `SiteShell`** (`.site-shell`), el mismo
49
+ * que reenvía `SiteShell` por su cuenta. Ese nodo es el `container` de un panel
50
+ * flotante abierto desde la página —`ConsentPreferences`, un `Modal`, un
51
+ * `Sheet`—: su portal monta por defecto en `document.body`, que no es
52
+ * descendiente de `.site-shell` y por tanto no hereda el remapeo de superficie
53
+ * pública. Apuntarlo al `main` no serviría: el `main` es un `Container`
54
+ * acotado y con su aire, así que el panel quedaría metido dentro de la columna
55
+ * de contenido en vez de flotar sobre la página. Con `shell={false}` no hay
56
+ * marco y el `ref` se queda sin asignar: ahí el contenedor es el `AppShell` de
57
+ * la app.
58
+ */
59
+ export declare const PublicPageShell: import("react").ForwardRefExoticComponent<PublicPageShellProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,24 @@
1
+ /** Nombre de una custom property del sistema, con sus dos guiones. */
2
+ export type TokenName = string;
3
+ /**
4
+ * Todos los tokens del sistema, `{ '--nombre': 'valor' }`, con los valores ya
5
+ * resueltos (nunca un `var()`).
6
+ */
7
+ export declare const tokens: Readonly<Record<TokenName, string>>;
8
+ /**
9
+ * El valor de un token, o un error si no existe.
10
+ *
11
+ * Falla en vez de devolver `undefined` a propósito: un estilo inline con un
12
+ * valor vacío no se ve roto, se ve «casi bien», y ese fallo viaja hasta la
13
+ * bandeja de entrada de alguien.
14
+ */
15
+ export declare function token(name: TokenName): string;
16
+ /**
17
+ * El valor de un token en píxeles absolutos.
18
+ *
19
+ * La escala del sistema está en `rem`, que fuera del navegador no significa
20
+ * nada: Outlook resuelve `rem` contra su propio contexto y el correo sale con
21
+ * otro tamaño. Los tokens que ya vienen en `px` (radios, grosores de borde) y
22
+ * los sin unidad (interlineados, pesos) pasan tal cual.
23
+ */
24
+ export declare function tokenPx(name: TokenName): string;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Modos de Chromatic: cada story del catálogo se fotografía dos veces, en claro
3
+ * y en oscuro. El oscuro no se documenta con stories duplicadas —se borraron
4
+ * las 110 que solo repetían el mismo componente sobre fondo oscuro—; lo cubre
5
+ * este par de modos, que mueve el global `backgrounds` (el mismo del switcher
6
+ * de fondos, con las claves `light`/`dark` declaradas en `preview.tsx`) y con
7
+ * él el decorator `withSurface`.
8
+ */
9
+ export declare const MODOS_CHROMATIC: {
10
+ readonly claro: {
11
+ readonly backgrounds: {
12
+ readonly value: "light";
13
+ };
14
+ };
15
+ readonly oscuro: {
16
+ readonly backgrounds: {
17
+ readonly value: "dark";
18
+ };
19
+ };
20
+ };
21
+ /**
22
+ * Para lo que no tiene superficie oscura y no la va a tener: el correo (medio
23
+ * sin CSS ni `prefers-color-scheme`, ver § «El correo» en `CLAUDE.md`) y la
24
+ * tarjeta social, que es una imagen de colores fijos. Va en el `meta`:
25
+ * `parameters: { chromatic: SOLO_CLARO }`.
26
+ */
27
+ export declare const SOLO_CLARO: {
28
+ readonly modes: {
29
+ readonly oscuro: {
30
+ readonly disable: true;
31
+ };
32
+ };
33
+ };
34
+ /**
35
+ * Para la story que YA fuerza el oscuro por su cuenta (`parameters.surface` o
36
+ * una prop `surface`/`theme`): en el modo claro saldría exactamente la misma
37
+ * captura, así que se apaga y queda una sola. Va en la story:
38
+ * `parameters: { surface: 'dark', chromatic: SOLO_OSCURO }`.
39
+ */
40
+ export declare const SOLO_OSCURO: {
41
+ readonly modes: {
42
+ readonly claro: {
43
+ readonly disable: true;
44
+ };
45
+ };
46
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * «Hoy» congelado para el catálogo: un domingo de un mes de 31 días que empieza
3
+ * en domingo (marzo de 2026), para que la rejilla de un calendario salga
4
+ * completa y sin huecos raros en las stories que enseñan «el mes actual».
5
+ *
6
+ * `.storybook/preview.tsx` fija `Date` a este instante con `mockdate` para todo
7
+ * el navegador de Storybook (local, `test:stories` y Chromatic); las stories
8
+ * que antes calculaban sobre `new Date()` lo hacen ahora sobre esta constante,
9
+ * para que se lean sin sorpresas y no dependan implícitamente del mock global.
10
+ */
11
+ export declare const STORY_TODAY: Date;
@@ -0,0 +1 @@
1
+ .accordion{width:100%}.accordion__item{border-block-start:var(--accordion-border-width) solid var(--accordion-border-color)}.accordion__header{font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin-block:0}.accordion__trigger{all:unset;box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--accordion-trigger-gap);width:100%;padding-block:var(--accordion-trigger-padding-block);padding-inline:var(--accordion-trigger-padding-inline);cursor:var(--accordion-trigger-cursor);text-align:start;display:flex}.accordion__trigger:focus-visible{outline:var(--accordion-focus-ring-width) solid var(--accordion-focus-ring-color);outline-offset:var(--accordion-focus-ring-offset)}.accordion__trigger[data-disabled]{cursor:default}.accordion__trigger-text{flex:1;min-width:0}.accordion__index{min-inline-size:var(--accordion-index-min-inline-size);font-family:var(--accordion-index-font-family);font-size:var(--accordion-index-font-size);color:var(--accordion-index-color);flex-shrink:0}.accordion--numbered .accordion__content-inner{padding-inline-start:calc(var(--accordion-index-min-inline-size) + var(--accordion-trigger-gap))}.accordion__chevron{transition:transform var(--accordion-transition-duration) var(--accordion-transition-easing);flex-shrink:0;transform:rotate(90deg)}.accordion__trigger[data-panel-open] .accordion__chevron{transform:rotate(-90deg)}.accordion__content{overflow:hidden}.accordion__content[data-open]{animation:accordion-open var(--accordion-transition-duration) var(--accordion-transition-easing)}.accordion__content[data-closed]{animation:accordion-close var(--accordion-transition-duration) var(--accordion-transition-easing)}@keyframes accordion-open{0%{height:0}to{height:var(--collapsible-panel-height)}}@keyframes accordion-close{0%{height:var(--collapsible-panel-height)}to{height:0}}.accordion__content-inner{padding-block-end:var(--accordion-content-padding-block);padding-inline:var(--accordion-content-padding-inline)}
@@ -0,0 +1,89 @@
1
+ 'use client';
2
+ import './accordion.css';
3
+ import { Icon as e } from "./icon.js";
4
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
5
+ import { Children as r, createContext as i, useContext as a } from "react";
6
+ import { Accordion as o } from "@base-ui/react/accordion";
7
+ //#region src/stories/atoms/Accordion/AccordionContext.ts
8
+ var s = i(null);
9
+ function c() {
10
+ return a(s);
11
+ }
12
+ //#endregion
13
+ //#region src/stories/atoms/Accordion/Accordion.tsx
14
+ var l = (e) => String(e).padStart(2, "0");
15
+ function u(e) {
16
+ if (e !== void 0) return Array.isArray(e) ? e : e === "" ? [] : [e];
17
+ }
18
+ function d({ className: e, children: n, id: i, disabled: a, numbered: c = !1, formatIndex: d = l, ...f }) {
19
+ let p = f.type === "multiple", m = f.type === "single" ? f.collapsible ?? !0 : !0, h = f.value;
20
+ return /* @__PURE__ */ t(o.Root, {
21
+ id: i,
22
+ disabled: a,
23
+ multiple: p,
24
+ value: u(h),
25
+ defaultValue: u(f.defaultValue),
26
+ onValueChange: (e) => {
27
+ let t = e ?? [];
28
+ if (p) {
29
+ f.onValueChange?.(t);
30
+ return;
31
+ }
32
+ !m && t.length === 0 || f.onValueChange?.(t[0] ?? "");
33
+ },
34
+ className: [
35
+ "accordion",
36
+ c ? "accordion--numbered" : "",
37
+ e
38
+ ].filter(Boolean).join(" "),
39
+ children: c ? r.map(n, (e, n) => /* @__PURE__ */ t(s.Provider, {
40
+ value: {
41
+ index: n + 1,
42
+ formatIndex: d
43
+ },
44
+ children: e
45
+ })) : n
46
+ });
47
+ }
48
+ function f({ className: e, children: n, ...r }) {
49
+ return /* @__PURE__ */ t(o.Item, {
50
+ className: ["accordion__item", e].filter(Boolean).join(" "),
51
+ ...r,
52
+ children: n
53
+ });
54
+ }
55
+ function p({ className: r, chevronSize: i = "sm", children: a }) {
56
+ let s = c();
57
+ return /* @__PURE__ */ t(o.Header, {
58
+ className: "accordion__header",
59
+ children: /* @__PURE__ */ n(o.Trigger, {
60
+ className: ["accordion__trigger", r].filter(Boolean).join(" "),
61
+ children: [
62
+ s && /* @__PURE__ */ t("span", {
63
+ className: "accordion__index",
64
+ children: s.formatIndex(s.index)
65
+ }),
66
+ /* @__PURE__ */ t("span", {
67
+ className: "accordion__trigger-text",
68
+ children: a
69
+ }),
70
+ /* @__PURE__ */ t(e, {
71
+ name: "chevron",
72
+ className: "accordion__chevron",
73
+ size: i
74
+ })
75
+ ]
76
+ })
77
+ });
78
+ }
79
+ function m({ className: e, children: n }) {
80
+ return /* @__PURE__ */ t(o.Panel, {
81
+ className: ["accordion__content", e].filter(Boolean).join(" "),
82
+ children: /* @__PURE__ */ t("div", {
83
+ className: "accordion__content-inner",
84
+ children: n
85
+ })
86
+ });
87
+ }
88
+ //#endregion
89
+ export { d as Accordion, m as AccordionContent, f as AccordionItem, p as AccordionTrigger };
package/dist/alert.css ADDED
@@ -0,0 +1 @@
1
+ :root{--alert-padding-block:var(--spacing-4);--alert-padding-inline:var(--spacing-5);--alert-gap:var(--spacing-3);--alert-content-gap:var(--spacing-2);--alert-title-line-height:var(--line-height-snug);--alert-close-size:var(--size-component-sm);--alert-close-inset:var(--spacing-2);--alert-border-radius:var(--border-radius-default);--alert-border-width:var(--border-width-default);--alert-bg:var(--color-primary);--alert-border-color:var(--color-text-on-dark);--alert-title-font-size:var(--text-font-size);--alert-title-font-weight:var(--font-weight-emphasis);--alert-title-color:var(--color-text-on-dark);--alert-description-font-size:var(--text-font-size);--alert-description-line-height:var(--text-line-height);--alert-description-color:var(--color-text-on-dark);--alert-success-bg:var(--color-success-fill);--alert-success-border-color:var(--color-success-fill);--alert-success-title-color:var(--color-success-fill-text);--alert-success-description-color:var(--color-success-fill-text);--alert-error-bg:var(--color-error-fill);--alert-error-border-color:var(--color-error-fill);--alert-error-title-color:var(--color-error-fill-text);--alert-error-description-color:var(--color-error-fill-text);--alert-warning-bg:var(--color-warning-fill);--alert-warning-border-color:var(--color-warning-fill);--alert-warning-title-color:var(--color-warning-fill-text);--alert-warning-description-color:var(--color-warning-fill-text);--alert-warning-close-color:var(--color-warning-fill-text)}.surface-dark,.surface-invert,[data-theme=dark],html.dark{--alert-bg:var(--color-text-on-dark);--alert-border-color:var(--color-text-on-dark);--alert-title-color:var(--color-primary);--alert-description-color:var(--color-primary)}.alert{background-color:var(--alert-bg);border:var(--alert-border-width) solid var(--alert-border-color);border-radius:var(--alert-border-radius);padding-block:var(--alert-padding-block);padding-inline:var(--alert-padding-inline);align-items:flex-start;gap:var(--alert-gap);box-sizing:border-box;--alert-title-ink:var(--alert-title-color);--alert-description-ink:var(--alert-description-color);display:flex;position:relative}.alert.alert--dismissible{padding-inline-end:calc(var(--alert-close-inset) * 2 + var(--alert-close-size))}.alert__content{flex:1;min-width:0}.alert__title{font-size:var(--alert-title-font-size);font-weight:var(--alert-title-font-weight);color:var(--alert-title-ink);line-height:var(--alert-title-line-height);margin:0}.alert__description{font-size:var(--alert-description-font-size);color:var(--alert-description-ink);line-height:var(--alert-description-line-height);margin:0;align-items:start;gap:var(--alert-content-gap);flex-direction:column;margin-block-start:var(--alert-content-gap);display:flex}.alert .alert__close{--close-button-size:var(--alert-close-size);position:absolute;inset-block-start:var(--alert-close-inset);inset-inline-end:var(--alert-close-inset)}.alert.alert--success{--alert-bg:var(--alert-success-bg);--alert-border-color:var(--alert-success-border-color);--alert-title-color:var(--alert-success-title-color);--alert-description-color:var(--alert-success-description-color)}.alert.alert--error{--alert-bg:var(--alert-error-bg);--alert-border-color:var(--alert-error-border-color);--alert-title-color:var(--alert-error-title-color);--alert-description-color:var(--alert-error-description-color)}.alert.alert--warning{--alert-bg:var(--alert-warning-bg);--alert-border-color:var(--alert-warning-border-color);--alert-title-color:var(--alert-warning-title-color);--alert-description-color:var(--alert-warning-description-color);--close-button-color:var(--alert-warning-close-color);--close-button-focus-ring-color:var(--alert-warning-close-color)}
package/dist/alert.js ADDED
@@ -0,0 +1,78 @@
1
+ 'use client';
2
+ import './alert.css';
3
+ import { CloseButton as e } from "./close-button.js";
4
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
5
+ import { forwardRef as r, useState as i } from "react";
6
+ //#region src/stories/molecules/Alert/Alert.tsx
7
+ var a = {
8
+ default: "status",
9
+ success: "status",
10
+ error: "alert",
11
+ warning: "alert"
12
+ }, o = r(function({ className: e, children: n, ...r }, i) {
13
+ return /* @__PURE__ */ t("p", {
14
+ ref: i,
15
+ className: ["alert__title", e ?? ""].filter(Boolean).join(" "),
16
+ ...r,
17
+ children: n
18
+ });
19
+ }), s = r(function({ className: e, children: n, ...r }, i) {
20
+ return /* @__PURE__ */ t("div", {
21
+ ref: i,
22
+ className: ["alert__description", e ?? ""].filter(Boolean).join(" "),
23
+ ...r,
24
+ children: n
25
+ });
26
+ }), c = r(function({ variant: r = "default", title: o, description: s, dismissible: c = !1, onDismiss: l, finalFocus: u, closeLabel: d = "Cerrar", className: f, children: p, role: m, ...h }, g) {
27
+ let [_, v] = i(!1);
28
+ if (_) return null;
29
+ let y = [
30
+ "alert",
31
+ r === "default" ? "" : `alert--${r}`,
32
+ r === "success" || r === "error" ? "surface-dark" : "",
33
+ c ? "alert--dismissible" : "",
34
+ f ?? ""
35
+ ].filter(Boolean).join(" "), b = r === "default" ? " surface-invert" : "";
36
+ function x() {
37
+ if (typeof document > "u") return;
38
+ let e = u?.current;
39
+ if (e) {
40
+ e.focus();
41
+ return;
42
+ }
43
+ let t = document.body, n = t.hasAttribute("tabindex");
44
+ n || t.setAttribute("tabindex", "-1"), t.focus(), n || t.removeAttribute("tabindex");
45
+ }
46
+ function S() {
47
+ x(), l ? l() : v(!0);
48
+ }
49
+ return /* @__PURE__ */ n("div", {
50
+ ref: g,
51
+ role: m ?? a[r],
52
+ className: y,
53
+ ...h,
54
+ children: [/* @__PURE__ */ n("div", {
55
+ className: `alert__content${b}`,
56
+ children: [
57
+ o && /* @__PURE__ */ t("p", {
58
+ className: "alert__title",
59
+ children: o
60
+ }),
61
+ s && /* @__PURE__ */ t("div", {
62
+ className: "alert__description",
63
+ children: s
64
+ }),
65
+ p
66
+ ]
67
+ }), c && /* @__PURE__ */ t(e, {
68
+ className: `alert__close${b}`,
69
+ label: d,
70
+ onClick: S
71
+ })]
72
+ });
73
+ }), l = Object.assign(c, {
74
+ Title: o,
75
+ Description: s
76
+ });
77
+ //#endregion
78
+ export { l as Alert, s as AlertDescription, o as AlertTitle };
@@ -0,0 +1 @@
1
+ .annotation-thread{gap:var(--annotation-thread-gap);padding-block:var(--annotation-thread-padding-block);padding-inline:var(--annotation-thread-padding-inline);border:var(--annotation-thread-border-width) var(--annotation-thread-border-style) var(--annotation-thread-border-color);flex-direction:column;display:flex}.annotation-thread.annotation-thread--resolved{opacity:var(--annotation-thread-resolved-opacity)}.annotation-thread__status{display:flex}.annotation-thread__item{gap:var(--annotation-thread-item-gap);flex-direction:column;display:flex}.annotation-thread__header{align-items:center;gap:var(--annotation-thread-header-gap);flex-wrap:wrap;display:flex}.annotation-thread__avatar{flex-shrink:0;display:inline-flex}.annotation-thread__author{font-family:var(--annotation-thread-author-font-family);font-size:var(--annotation-thread-author-font-size);font-weight:var(--annotation-thread-author-font-weight);color:var(--annotation-thread-author-color)}.annotation-thread__date,.annotation-thread__edited{font-size:var(--annotation-thread-meta-font-size);color:var(--annotation-thread-meta-color)}.annotation-thread__body{font-size:var(--annotation-thread-body-font-size);line-height:var(--annotation-thread-body-line-height);color:var(--annotation-thread-body-color)}.annotation-thread__item-actions{gap:var(--annotation-thread-header-gap);flex-wrap:wrap;display:flex}.annotation-thread__replies{gap:var(--annotation-thread-items-gap);border-inline-start:var(--annotation-thread-reply-guide-width) var(--annotation-thread-reply-guide-style) var(--annotation-thread-reply-guide-color);flex-direction:column;padding-inline-start:var(--annotation-thread-reply-indent);display:flex}.annotation-thread__replies-label{font-size:var(--annotation-thread-replies-label-font-size);color:var(--annotation-thread-replies-label-color);margin-block:0}.annotation-thread__actions{gap:var(--annotation-thread-header-gap);flex-wrap:wrap;display:flex}
@@ -0,0 +1,98 @@
1
+ import './annotation-thread.css';
2
+ import { Tag as e } from "./tag.js";
3
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
4
+ import "react";
5
+ //#region src/stories/organisms/AnnotationThread/AnnotationThread.tsx
6
+ var r = {
7
+ day: "numeric",
8
+ month: "short",
9
+ hour: "2-digit",
10
+ minute: "2-digit"
11
+ };
12
+ function i({ entry: e, locale: r, dateFormat: i, editedLabel: a }) {
13
+ let o = e.date instanceof Date ? e.date : new Date(e.date), s = new Intl.DateTimeFormat(r, i).format(o);
14
+ return /* @__PURE__ */ n("article", {
15
+ className: "annotation-thread__item",
16
+ children: [
17
+ /* @__PURE__ */ n("header", {
18
+ className: "annotation-thread__header",
19
+ children: [
20
+ e.avatar && /* @__PURE__ */ t("span", {
21
+ className: "annotation-thread__avatar",
22
+ children: e.avatar
23
+ }),
24
+ /* @__PURE__ */ t("span", {
25
+ className: "annotation-thread__author",
26
+ children: e.author
27
+ }),
28
+ /* @__PURE__ */ t("time", {
29
+ className: "annotation-thread__date",
30
+ dateTime: o.toISOString(),
31
+ children: s
32
+ }),
33
+ e.edited && /* @__PURE__ */ t("span", {
34
+ className: "annotation-thread__edited",
35
+ children: a
36
+ })
37
+ ]
38
+ }),
39
+ /* @__PURE__ */ t("div", {
40
+ className: "annotation-thread__body",
41
+ children: e.body
42
+ }),
43
+ e.actions && /* @__PURE__ */ t("div", {
44
+ className: "annotation-thread__item-actions",
45
+ children: e.actions
46
+ })
47
+ ]
48
+ });
49
+ }
50
+ function a({ annotation: a, replies: o = [], status: s = "open", actions: c, reply: l, locale: u = "es-ES", dateFormat: d = r, openLabel: f = "Abierta", resolvedLabel: p = "Resuelta", editedLabel: m = "editada", repliesLabel: h = (e) => e === 1 ? "1 respuesta" : `${e} respuestas`, label: g = "Hilo de anotaciones", className: _, ...v }) {
51
+ let y = s === "resolved";
52
+ return /* @__PURE__ */ n("article", {
53
+ className: [
54
+ "annotation-thread",
55
+ y ? "annotation-thread--resolved" : "",
56
+ _ ?? ""
57
+ ].filter(Boolean).join(" "),
58
+ "aria-label": g,
59
+ ...v,
60
+ children: [
61
+ /* @__PURE__ */ t("div", {
62
+ className: "annotation-thread__status",
63
+ children: /* @__PURE__ */ t(e, {
64
+ variant: y ? "success" : "warning",
65
+ children: y ? p : f
66
+ })
67
+ }),
68
+ /* @__PURE__ */ t(i, {
69
+ entry: a,
70
+ locale: u,
71
+ dateFormat: d,
72
+ editedLabel: m
73
+ }),
74
+ o.length > 0 && /* @__PURE__ */ n("div", {
75
+ className: "annotation-thread__replies",
76
+ children: [/* @__PURE__ */ t("p", {
77
+ className: "annotation-thread__replies-label",
78
+ children: h(o.length)
79
+ }), o.map((e) => /* @__PURE__ */ t(i, {
80
+ entry: e,
81
+ locale: u,
82
+ dateFormat: d,
83
+ editedLabel: m
84
+ }, e.id))]
85
+ }),
86
+ l && /* @__PURE__ */ t("div", {
87
+ className: "annotation-thread__reply",
88
+ children: l
89
+ }),
90
+ c && /* @__PURE__ */ t("footer", {
91
+ className: "annotation-thread__actions",
92
+ children: c
93
+ })
94
+ ]
95
+ });
96
+ }
97
+ //#endregion
98
+ export { a as AnnotationThread };
@@ -0,0 +1 @@
1
+ .app-header{align-items:center;gap:var(--app-header-gap);block-size:var(--app-header-height);padding-inline:var(--app-header-padding-inline);box-sizing:content-box;background-color:var(--app-header-bg);box-shadow:0 var(--app-header-border-width) 0 var(--app-header-border-color);z-index:var(--app-header-z-index);flex-shrink:0;padding-block-start:env(safe-area-inset-top);display:flex;position:sticky;inset-block-start:0}.app-header__start{flex:1;align-items:center;min-inline-size:0;display:flex}.app-header__notifications,.app-header__end{flex-shrink:0;align-items:center;display:flex}