@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,42 @@
1
+ import './MultiSelectField.css';
2
+ import type { MultiSelectOption } from '../../atoms/MultiSelect/MultiSelect';
3
+ export type { MultiSelectOption };
4
+ export interface MultiSelectFieldProps {
5
+ /** `id` del control. Si no se pasa, se genera con `useId`. */
6
+ id?: string;
7
+ label: string;
8
+ /**
9
+ * Oculta la etiqueta a la vista (sigue leyéndola el lector de pantalla).
10
+ * Por defecto `false`: la etiqueta se ve.
11
+ * Sin valor, lo decide quien lo envuelva: dentro de un `FieldRow` que no
12
+ * es la primera de la lista, la etiqueta se oculta sola.
13
+ */
14
+ labelHidden?: boolean;
15
+ options: MultiSelectOption[];
16
+ value?: string[];
17
+ defaultValue?: string[];
18
+ placeholder?: string;
19
+ /** Nombre del campo en el formulario: se monta un input oculto por valor elegido. */
20
+ name?: string;
21
+ disabled?: boolean;
22
+ readOnly?: boolean;
23
+ /** Marca el control en error sin mensaje. Un `errorMessage` ya lo implica. */
24
+ error?: boolean;
25
+ /** Mensaje de error: se anuncia (`role="alert"`) y pone el control en error. */
26
+ errorMessage?: string;
27
+ /** Texto de ayuda, enlazado por `aria-describedby`. */
28
+ helperText?: string;
29
+ size?: 'sm' | 'md' | 'lg';
30
+ /** Se añade DESPUÉS de las clases propias (el consumidor añade, no sustituye). */
31
+ className?: string;
32
+ /** aria-label del botón que quita un valor. Default: `Quitar ${etiqueta}` (castellano). */
33
+ removeLabel?: (label: string) => string;
34
+ onValueChange?: (value: string[]) => void;
35
+ onBlur?: React.FocusEventHandler<HTMLDivElement>;
36
+ }
37
+ /**
38
+ * El `MultiSelect` como campo de formulario. El control es de Base UI: el
39
+ * `ref` va al **disparador** para que react-hook-form pueda enfocarlo al
40
+ * fallar la validación; el `className`, al contenedor.
41
+ */
42
+ export declare const MultiSelectField: import("react").ForwardRefExoticComponent<MultiSelectFieldProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,25 @@
1
+ import { type ButtonBaseProps } from '../../atoms/Button/Button';
2
+ import './NotificationButton.css';
3
+ export interface NotificationButtonProps extends Omit<ButtonBaseProps, 'variant' | 'iconOnly' | 'children' | 'href' | 'size'> {
4
+ /** Notificaciones sin leer. Con 0 (o sin él) no hay contador. */
5
+ count?: number;
6
+ /** Tope del contador («99+»). */
7
+ max?: number;
8
+ /**
9
+ * Nombre accesible cuando no hay contador. Default: «Notificaciones»
10
+ * (castellano). Una app multiidioma debe pasarla traducida.
11
+ */
12
+ label?: string;
13
+ /**
14
+ * Nombre accesible cuando hay contador: recibe el número, para que la frase
15
+ * se pueda rehacer en cualquier idioma. Default: «Notificaciones: N sin
16
+ * leer» (castellano).
17
+ */
18
+ countLabel?: (count: number) => string;
19
+ }
20
+ /**
21
+ * La campana de la barra de la aplicación: un botón de icono con el contador
22
+ * de no leídas volando sobre su esquina, en rojo. Qué abre (un panel, un
23
+ * menú, una página) es del producto: es un botón y sirve de disparador.
24
+ */
25
+ export declare const NotificationButton: import("react").ForwardRefExoticComponent<NotificationButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,85 @@
1
+ import type { ReactNode } from 'react';
2
+ import './NotificationList.css';
3
+ /** Una notificación tal y como la enseña la lista: ya resuelta, sin datos crudos. */
4
+ export interface NotificationListItem {
5
+ id: string;
6
+ /** Título de la notificación. Con `href`, es el enlace de la fila. */
7
+ title: string;
8
+ /** Cuerpo. En la página se lee entero: no se recorta, a diferencia del panel. */
9
+ body?: string;
10
+ /** Fecha relativa **ya formateada** por el consumidor («hace 5 min»): la lista no formatea fechas. */
11
+ time: string;
12
+ /**
13
+ * La misma fecha en formato máquina (`2026-09-10T09:12:00Z`). Con ella la
14
+ * hora se pinta en un `<time datetime>`; sin ella, en texto corriente.
15
+ */
16
+ timeDateTime?: string;
17
+ /**
18
+ * Sin leer: el punto del indicador. Se dice igual que en el
19
+ * `NotificationPanel`, con el mismo booleano y en el mismo sentido.
20
+ */
21
+ unread: boolean;
22
+ /** Destino de la notificación. Sin él, el título no es un enlace. */
23
+ href?: string;
24
+ /**
25
+ * Texto solo para lectores de pantalla de **esta** fila sin leer, cuando el
26
+ * de la lista (`unreadLabel`) no vale. Casi nunca hace falta.
27
+ */
28
+ unreadLabel?: string;
29
+ }
30
+ /** Lo que la lista pasa al `Link` del router de la aplicación. */
31
+ export interface NotificationListLinkProps {
32
+ href: string;
33
+ children: ReactNode;
34
+ className?: string;
35
+ onClick?: () => void;
36
+ }
37
+ export type RenderNotificationListLink = (props: NotificationListLinkProps) => ReactNode;
38
+ export interface NotificationListProps {
39
+ /**
40
+ * Las notificaciones de la página, ya ordenadas y paginadas por el
41
+ * consumidor: la lista no ordena, no pagina y no filtra.
42
+ */
43
+ items: NotificationListItem[];
44
+ /**
45
+ * El `Link` del router de la aplicación (patrón de `Link.mdx`: el router es
46
+ * de la app). Debe propagar **todas** las props que recibe. Por defecto, un
47
+ * `<a>` corriente.
48
+ */
49
+ renderLink?: RenderNotificationListLink;
50
+ /**
51
+ * Las acciones **propias del producto** de cada fila («Eliminar»…), al
52
+ * final de la fila. Van como `Button variant="text" size="sm"`.
53
+ */
54
+ renderActions?: (item: NotificationListItem) => ReactNode;
55
+ /** Se llama al pulsar el título de una fila con `href`, antes de navegar. */
56
+ onItemClick?: (item: NotificationListItem) => void;
57
+ /**
58
+ * Con ella, cada fila sin leer estrena un «Marcar como leída» delante de las
59
+ * acciones del producto; sin ella no se pinta.
60
+ */
61
+ onMarkRead?: (id: string) => void;
62
+ /** Nombre accesible de la lista. **No se pinta**: el título lo pone la página. Default «Notificaciones». */
63
+ label?: string;
64
+ /** Texto solo para lectores de pantalla que marca una fila sin leer. Default «Sin leer». */
65
+ unreadLabel?: string;
66
+ /** Rótulo del botón de marcar una fila. Default «Marcar como leída». */
67
+ markReadLabel?: string;
68
+ /** Se añade DESPUÉS de las clases propias de la lista (el consumidor añade, no sustituye). */
69
+ className?: string;
70
+ }
71
+ /**
72
+ * La bandeja: **todas** las notificaciones, a página completa. La misma fila
73
+ * del `NotificationPanel` —punto de no leída, título y cuerpo— pero leída a la
74
+ * talla de la página, con el texto entero y con las acciones de cada
75
+ * notificación a la vista.
76
+ *
77
+ * Va a sangre en la columna de la página: sin tarjeta, sin borde alrededor y
78
+ * sin línea entre filas. Lo único que separa una notificación de la siguiente
79
+ * es el aire de la propia fila.
80
+ *
81
+ * No ordena, no pagina y no filtra: eso es de la página (`Pagination`,
82
+ * `FilterBar`). Con la lista vacía no pinta nada — el hueco es de un
83
+ * `EmptyState`.
84
+ */
85
+ export declare function NotificationList({ items, renderLink, renderActions, onItemClick, onMarkRead, label, unreadLabel, markReadLabel, className, }: NotificationListProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,94 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type PopoverChangeDetails } from '../../atoms/Popover/Popover';
3
+ import './NotificationPanel.css';
4
+ /** Una notificación tal y como la enseña el panel: ya resuelta, sin datos crudos. */
5
+ export interface NotificationPanelItem {
6
+ id: string;
7
+ /** Título de la notificación. Una línea. */
8
+ title: string;
9
+ /** Cuerpo. Se recorta con elipsis a las líneas del token `item-body-line-clamp`. */
10
+ body?: string;
11
+ /** Fecha relativa **ya formateada** por el consumidor («hace 5 min»): el panel no formatea fechas. */
12
+ time: string;
13
+ /** Sin leer: punto, peso en el título y tinta plena. */
14
+ unread: boolean;
15
+ }
16
+ /** Lo que el panel pasa al `Link` del router de la aplicación. */
17
+ export interface NotificationPanelLinkProps {
18
+ href: string;
19
+ children: ReactNode;
20
+ className?: string;
21
+ onClick?: () => void;
22
+ id?: string;
23
+ 'aria-labelledby'?: string;
24
+ }
25
+ export type RenderNotificationPanelLink = (props: NotificationPanelLinkProps) => ReactNode;
26
+ export interface NotificationPanelProps {
27
+ /**
28
+ * Las notificaciones que se ven en el panel, ya recortadas por el consumidor
29
+ * (el adelanto son cinco como mucho): el panel no pagina ni ordena.
30
+ */
31
+ items?: NotificationPanelItem[];
32
+ /**
33
+ * Sin leer **en total**, para el contador de la campana. No se deduce de
34
+ * `items`: el panel enseña un adelanto y el total suele ser mayor.
35
+ */
36
+ count?: number;
37
+ /** Tope del contador de la campana («99+»). */
38
+ max?: number;
39
+ /**
40
+ * Se llama al pulsar una fila sin leer. El panel la pinta como leída en el
41
+ * sitio sin esperar respuesta.
42
+ */
43
+ onRead: (id: string) => void;
44
+ /**
45
+ * Con ella se pinta «Marcar todas como leídas» bajo la lista, **y solo
46
+ * mientras quede alguna sin leer**; sin ella, no se pinta nunca.
47
+ */
48
+ onMarkAllRead?: () => void;
49
+ /** Destino de la bandeja completa. */
50
+ allHref: string;
51
+ /** Destino de las preferencias de notificación. */
52
+ preferencesHref: string;
53
+ /**
54
+ * El `Link` del router de la aplicación (patrón de `Link.mdx`: el router es
55
+ * de la app). Debe propagar **todas** las props que recibe. Por defecto, un
56
+ * `<a>` corriente.
57
+ */
58
+ renderLink?: RenderNotificationPanelLink;
59
+ /** Nombre accesible de la campana sin contador. Default castellano. */
60
+ label?: string;
61
+ /** Nombre accesible de la campana con contador. Recibe el número. Default castellano. */
62
+ countLabel?: (count: number) => string;
63
+ /**
64
+ * Nombre del panel (`role="dialog"`) y de la lista. **No se pinta**: el
65
+ * panel no lleva cabecera visible. Default «Notificaciones».
66
+ */
67
+ panelLabel?: string;
68
+ /** Texto solo para lectores de pantalla que marca una fila sin leer. Default «Sin leer». */
69
+ unreadLabel?: string;
70
+ /** Mensaje cuando no hay notificaciones. Default «Estás al día». */
71
+ emptyLabel?: string;
72
+ /** Rótulo del enlace a la bandeja. Default «Ver todas las notificaciones». */
73
+ allLabel?: string;
74
+ /** Rótulo del enlace a las preferencias. Default «Preferencias de notificaciones». */
75
+ preferencesLabel?: string;
76
+ /** Rótulo del botón de marcar todas. Default «Marcar todas como leídas». */
77
+ markAllReadLabel?: string;
78
+ open?: boolean;
79
+ defaultOpen?: boolean;
80
+ onOpenChange?: (open: boolean, details: PopoverChangeDetails) => void;
81
+ /** Se añade DESPUÉS de las clases propias del panel (el consumidor añade, no sustituye). */
82
+ className?: string;
83
+ }
84
+ /**
85
+ * La campana de la barra con su panel: al pulsarla se abre un `Popover`
86
+ * anclado al botón con el adelanto de las últimas notificaciones, y debajo
87
+ * los enlaces a la bandeja y a las preferencias.
88
+ *
89
+ * Es un **adelanto**, no la bandeja: aquí se lee y se marca leído, y lo único
90
+ * que navega son los dos enlaces del pie. Pulsar una fila la marca leída y la
91
+ * deja donde está —el panel no se reordena bajo el dedo—; al cerrarlo, la
92
+ * lista vuelve a ser la que diga el consumidor.
93
+ */
94
+ export declare function NotificationPanel({ items, count, max, onRead, onMarkAllRead, allHref, preferencesHref, renderLink, label, countLabel, panelLabel, unreadLabel, emptyLabel, allLabel, preferencesLabel, markAllReadLabel, open, defaultOpen, onOpenChange, className, }: NotificationPanelProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,38 @@
1
+ import { type ComponentPropsWithoutRef } from 'react';
2
+ import './NumberInputField.css';
3
+ export interface NumberInputFieldProps extends Omit<ComponentPropsWithoutRef<'input'>, 'size' | 'type' | 'value' | 'defaultValue' | 'onChange'> {
4
+ /** `id` del control. Si no se pasa, se genera con `useId`. */
5
+ id?: string;
6
+ label: string;
7
+ /**
8
+ * Oculta la etiqueta a la vista (sigue leyéndola el lector de pantalla).
9
+ * Por defecto `false`: la etiqueta se ve, como en el resto de campos.
10
+ * Sin valor, lo decide quien lo envuelva: dentro de un `FieldRow` que no
11
+ * es la primera de la lista, la etiqueta se oculta sola.
12
+ */
13
+ labelHidden?: boolean;
14
+ value?: number;
15
+ defaultValue?: number;
16
+ min?: number;
17
+ max?: number;
18
+ step?: number;
19
+ /** Admite decimales (coma o punto). */
20
+ decimal?: boolean;
21
+ /** Marca el control en error sin mensaje. Un `errorMessage` ya lo implica. */
22
+ error?: boolean;
23
+ /** Mensaje de error: se anuncia (`role="alert"`) y pone el control en error. */
24
+ errorMessage?: string;
25
+ /** Texto de ayuda, enlazado por `aria-describedby`. */
26
+ helperText?: string;
27
+ size?: 'sm' | 'md' | 'lg';
28
+ /** Recibe el valor ya normalizado, no el evento. */
29
+ onChange?: (value: number) => void;
30
+ /** Se añade DESPUÉS de las clases propias (el consumidor añade, no sustituye). */
31
+ className?: string;
32
+ }
33
+ /**
34
+ * El `NumberInput` como campo de formulario. El `ref` y el resto de props
35
+ * nativas de `<input>` van al input real (react-hook-form, `name`, `onBlur`,
36
+ * `aria-*`, `data-*`…); el `className`, al contenedor.
37
+ */
38
+ export declare const NumberInputField: import("react").ForwardRefExoticComponent<NumberInputFieldProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,23 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { MenuItem, MenuRenderLinkProps } from '../Menu/Menu';
3
+ import './OrgSwitcher.css';
4
+ export interface OrgOption {
5
+ id: string;
6
+ name: string;
7
+ logoUrl?: string;
8
+ }
9
+ export interface OrgSwitcherProps {
10
+ /** Nombre accesible del botón. Por defecto, «Organización: ‹nombre›». */
11
+ label?: string;
12
+ /** Ocupa todo el ancho disponible (en la Sidebar). Por defecto mide lo que su contenido. */
13
+ block?: boolean;
14
+ /** Solo el logo. Sin él, lo decide la `Sidebar` (rail). */
15
+ compact?: boolean;
16
+ current: OrgOption;
17
+ organizations: OrgOption[];
18
+ onOrgChange: (id: string) => void;
19
+ defaultOpen?: boolean;
20
+ items?: MenuItem[];
21
+ renderLink?: (props: MenuRenderLinkProps) => ReactNode;
22
+ }
23
+ export declare function OrgSwitcher({ label, block, compact, current, organizations, onOrgChange, defaultOpen, items, renderLink }: OrgSwitcherProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,41 @@
1
+ import './OtpField.css';
2
+ export interface OtpFieldProps {
3
+ /** `id` del control. Si no se pasa, se genera con `useId`. */
4
+ id?: string;
5
+ label: string;
6
+ /**
7
+ * Oculta la etiqueta a la vista (sigue leyéndola el lector de pantalla).
8
+ * Por defecto `false`: la etiqueta se ve, como en el resto de campos.
9
+ * Sin valor, lo decide quien lo envuelva: dentro de un `FieldRow` que no
10
+ * es la primera de la lista, la etiqueta se oculta sola.
11
+ */
12
+ labelHidden?: boolean;
13
+ /** Número de celdas. */
14
+ length: number;
15
+ value?: string;
16
+ defaultValue?: string;
17
+ name?: string;
18
+ disabled?: boolean;
19
+ readOnly?: boolean;
20
+ /** Marca el control en error sin mensaje. Un `errorMessage` ya lo implica. */
21
+ error?: boolean;
22
+ /** Mensaje de error: se anuncia (`role="alert"`) y pone el control en error. */
23
+ errorMessage?: string;
24
+ /** Texto de ayuda, enlazado por `aria-describedby`. */
25
+ helperText?: string;
26
+ size?: 'sm' | 'md' | 'lg';
27
+ /** Se añade DESPUÉS de las clases propias (el consumidor añade, no sustituye). */
28
+ className?: string;
29
+ /** Etiqueta accesible de cada celda. Default: `Dígito N de M` (castellano). */
30
+ digitLabel?: (index: number, length: number) => string;
31
+ /** Recibe el código completo, no el evento. */
32
+ onChange?: (value: string) => void;
33
+ onComplete?: (value: string) => void;
34
+ onBlur?: React.FocusEventHandler<HTMLInputElement>;
35
+ }
36
+ /**
37
+ * El `OtpInput` como campo de formulario. El `ref` va a la primera celda, que
38
+ * es la que react-hook-form enfoca al fallar la validación; el `className`, al
39
+ * contenedor.
40
+ */
41
+ export declare const OtpField: import("react").ForwardRefExoticComponent<OtpFieldProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,48 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type HeadingProps } from '../../atoms/Heading/Heading';
3
+ import './PageIntro.css';
4
+ export interface PageIntroProps {
5
+ /** El título de la página: un `Heading` de nivel 1 (o el que diga `level`). */
6
+ title: ReactNode;
7
+ /**
8
+ * La frase bajo el título, opcional: va como entradilla (`Paragraph
9
+ * size="large"`, un peldaño por encima del cuerpo).
10
+ *
11
+ * **Es una frase y termina con puntuación final** —un punto, o el signo que
12
+ * le toque—: no es un rótulo ni un subtítulo. Sin el punto, el párrafo se
13
+ * lee como un `Heading` menor y la jerarquía de la cabecera se deshace. Lo
14
+ * que no llegue a frase o cabe en el título, o va en `children`.
15
+ */
16
+ description?: ReactNode;
17
+ /** Más texto bajo la frase (otro `Paragraph`, una lista…): mismo aire. */
18
+ children?: ReactNode;
19
+ /**
20
+ * La acción principal de la página —«Invitar miembro», «Crear webhook»—, a la
21
+ * derecha del título y en su misma fila. Una, o dos como mucho: la principal
22
+ * y una alternativa (`Button variant="outline"`), en ese orden en el JSX. Las
23
+ * acciones sobre los filtros van en `FilterBar actions`, y las que operan
24
+ * sobre la tabla, en el `toolbar` del `DataTable`.
25
+ */
26
+ actions?: ReactNode;
27
+ /** Nivel del título: 1 por defecto (una cabecera de página). */
28
+ level?: HeadingProps['level'];
29
+ /** Talla tipográfica del título; si no, la que el Heading da a su nivel. */
30
+ size?: HeadingProps['size'];
31
+ /**
32
+ * El elemento que envuelve la cabecera: `header` por defecto. `div` para
33
+ * cuando la cabecera abre una sección que ya vive dentro de otro `header`, o
34
+ * cuando el molde de fuera necesita un elemento neutro.
35
+ */
36
+ as?: 'header' | 'div';
37
+ className?: string;
38
+ }
39
+ /**
40
+ * Cabecera de una página: el título y, si hace falta, una frase debajo, con
41
+ * el aire justo entre los dos. Es un `header`: lo que abre acceso, registro,
42
+ * recuperación… y cualquier página que empiece por su nombre. Va como celda
43
+ * de `Columns` o directamente en el `Container`.
44
+ *
45
+ * Con `actions` sirve además de cabecera de una sección dentro de la página
46
+ * (`level={2}`): el título a la izquierda y la acción principal a la derecha.
47
+ */
48
+ export declare function PageIntro({ title, description, actions, level, size, as: Tag, className, children, }: PageIntroProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,92 @@
1
+ import type { ComponentType, ReactNode } from 'react';
2
+ import type { SelectOption } from '../../atoms/Select/Select';
3
+ import './Pagination.css';
4
+ export interface PaginationProps {
5
+ /**
6
+ * Con páginas numeradas (`pages`, por defecto) o solo anterior/siguiente
7
+ * (`cursor`): para listados por cursor, donde no se sabe cuántas páginas hay.
8
+ */
9
+ mode?: 'pages' | 'cursor';
10
+ /** Total de registros. Con `pageCount` o en modo `cursor` no hace falta. */
11
+ total?: number;
12
+ /** Número de páginas, cuando quien pagina ya lo sabe (en vez de `total` + `pageSize`). */
13
+ pageCount?: number;
14
+ /** Página activa (1-indexed). En modo `cursor`, opcional. */
15
+ page?: number;
16
+ /** Registros por página. "all" muestra todos los registros sin paginación. */
17
+ pageSize?: number | 'all';
18
+ /** Enlaces por página, ya calculados (útil desde un Server Component, donde no se puede pasar una función). */
19
+ hrefs?: Record<number, string>;
20
+ /** Modo `cursor`: enlaces de anterior/siguiente. Sin ellos, el botón va deshabilitado. */
21
+ previousHref?: string;
22
+ nextHref?: string;
23
+ /** Modo `cursor`: manejadores de anterior/siguiente cuando no hay enlaces. */
24
+ onPrevious?: () => void;
25
+ onNext?: () => void;
26
+ /**
27
+ * Callback al cambiar de página. Opcional cuando se usa hrefBuilder
28
+ * (la navegación ocurre mediante el href nativo del <a>).
29
+ */
30
+ onPageChange?: (page: number) => void;
31
+ /**
32
+ * Si se pasa, los botones de página y los de Anterior/Siguiente
33
+ * se renderizan como <a href={hrefBuilder(n)}> en lugar de <button>.
34
+ * Útil para SSR, SEO y comportamientos nativos del navegador.
35
+ */
36
+ hrefBuilder?: (page: number) => string;
37
+ /** Si se pasa, aparece el selector de registros por página */
38
+ onPageSizeChange?: (size: string) => void;
39
+ /** Opciones del selector. Default: 10, 20, 50, 100, Todos */
40
+ pageSizeOptions?: SelectOption[];
41
+ /**
42
+ * Ranura a continuación del selector de registros por página, dentro del
43
+ * mismo grupo que el total: acciones sobre el conjunto (exportar, imprimir).
44
+ * Los botones de página se quedan solos al otro extremo. Con la ranura llena
45
+ * el nav se pinta aunque no haya páginas que recorrer.
46
+ */
47
+ afterPageSize?: ReactNode;
48
+ /** Mostrar "X resultados" antes de los controles. Default: false */
49
+ showTotal?: boolean;
50
+ /**
51
+ * Componente Link del router. Default: "a" (recarga completa).
52
+ * Acepta next/link, react-router Link, etc. — cualquier componente
53
+ * que acepte las props estándar de <a> (href, className, …).
54
+ */
55
+ linkComponent?: ComponentType<any>;
56
+ /** Tamaño del componente. Default: "md" */
57
+ size?: 'sm' | 'md' | 'lg';
58
+ /** aria-label del <nav>. Default: «Paginación» (castellano). Una app multiidioma debe pasarlo traducido. */
59
+ ariaLabel?: string;
60
+ /**
61
+ * aria-label de cada botón/enlace de página. Default: `Página ${page}` (castellano).
62
+ * Una app multiidioma debe pasarla traducida.
63
+ */
64
+ pageLabel?: (page: number) => string;
65
+ /**
66
+ * aria-label del botón "anterior". Default: "Página anterior" (castellano).
67
+ * Una app multiidioma debe pasarla traducida.
68
+ */
69
+ previousLabel?: string;
70
+ /**
71
+ * aria-label del botón "siguiente". Default: "Página siguiente" (castellano).
72
+ * Una app multiidioma debe pasarla traducida.
73
+ */
74
+ nextLabel?: string;
75
+ /**
76
+ * aria-label del `role="group"` que envuelve los controles de página.
77
+ * Default: "Páginas" (castellano). Una app multiidioma debe pasarla traducida.
78
+ */
79
+ pagesGroupLabel?: string;
80
+ /**
81
+ * aria-label del selector de registros por página.
82
+ * Default: "Registros por página" (castellano). Una app multiidioma debe pasarla traducida.
83
+ */
84
+ pageSizeLabel?: string;
85
+ /**
86
+ * Texto del sumario que muestra `showTotal`. Default: `${total} resultados` (castellano).
87
+ * Una app multiidioma debe pasarla traducida.
88
+ */
89
+ totalLabel?: (total: number) => string;
90
+ className?: string;
91
+ }
92
+ export declare function Pagination({ mode, total, pageCount, page, pageSize, hrefs, previousHref, nextHref, onPrevious, onNext, onPageChange, hrefBuilder: hrefBuilderProp, linkComponent, onPageSizeChange, pageSizeOptions, afterPageSize, showTotal, size, ariaLabel, pageLabel, previousLabel, nextLabel, pagesGroupLabel, pageSizeLabel, totalLabel, className, }: PaginationProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,40 @@
1
+ import './PasswordField.css';
2
+ export interface PasswordFieldProps extends Omit<React.ComponentPropsWithoutRef<'input'>, 'size' | 'type'> {
3
+ /**
4
+ * Etiqueta del campo. **Opcional**: si se omite, el componente renderiza solo
5
+ * el campo + toggle (sin `<label>`, sin error ni ayuda), para componerlo
6
+ * dentro de una capa de formulario propia.
7
+ */
8
+ label?: string;
9
+ /** Oculta visualmente el label (solo aplica cuando hay `label`). Default: true. */
10
+ labelHidden?: boolean;
11
+ /** Marca el estado de error (borde) y `aria-invalid` en el input. */
12
+ error?: boolean;
13
+ /** Mensaje de error propio del componente (solo se renderiza si hay `label`-mode completo). */
14
+ errorMessage?: string;
15
+ /** Texto de ayuda propio del componente. */
16
+ helperText?: string;
17
+ /** Una acción bajo el campo: «¿Olvidaste tu contraseña?» (un `Link` del router). No es ayuda: enlace normal, a la izquierda, con su aire. */
18
+ action?: React.ReactNode;
19
+ /** Tamaño del campo. */
20
+ size?: 'sm' | 'md' | 'lg';
21
+ /** aria-label del toggle cuando la contraseña está oculta. Default: "Mostrar contraseña". */
22
+ showPasswordLabel?: string;
23
+ /** aria-label del toggle cuando la contraseña es visible. Default: "Ocultar contraseña". */
24
+ hidePasswordLabel?: string;
25
+ /**
26
+ * Se añade DESPUÉS de las clases propias, sobre el wrapper raíz `.password-field`.
27
+ * (El `ref` y el resto de props nativas — `name`, `onChange`, `data-*`, `aria-*`… —
28
+ * se reenvían al `<input>` interno, no al wrapper.)
29
+ */
30
+ className?: string;
31
+ }
32
+ /**
33
+ * Campo de contraseña con toggle mostrar/ocultar integrado.
34
+ *
35
+ * El `ref` y `{...rest}` (props nativas de `<input>`) se reenvían al `<input>`
36
+ * interno — no al wrapper — para soportar react-hook-form (`{...register()}`) y la
37
+ * inyección de props del consumidor (`id`, `aria-describedby`, `aria-invalid`,
38
+ * `data-*`…). El `className` se aplica al wrapper raíz.
39
+ */
40
+ export declare const PasswordField: import("react").ForwardRefExoticComponent<PasswordFieldProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,50 @@
1
+ import type { ComponentType, MouseEvent, ReactNode } from 'react';
2
+ import './PrevNextNav.css';
3
+ export interface PrevNextNavProps {
4
+ /** href del enlace anterior. Mutuamente exclusivo con prevOnClick */
5
+ prevHref?: string;
6
+ /** href del enlace siguiente. Mutuamente exclusivo con nextOnClick */
7
+ nextHref?: string;
8
+ /**
9
+ * Handler del control anterior. Con `prevHref` puesto se dispara **además**
10
+ * del enlace: es la puerta para la navegación SPA (`preventDefault()` en el
11
+ * handler y ruta por el router).
12
+ */
13
+ prevOnClick?: (event: MouseEvent<HTMLElement>) => void;
14
+ /** Handler del control siguiente. Mismo contrato que `prevOnClick`. */
15
+ nextOnClick?: (event: MouseEvent<HTMLElement>) => void;
16
+ /**
17
+ * Rótulo del control anterior. Sin `prevTitle` es el `aria-label` del
18
+ * chevron; con `prevTitle` es el rótulo **visible** que lo encabeza.
19
+ * Default: "Anterior"
20
+ */
21
+ prevLabel?: string;
22
+ /** Rótulo del control siguiente. Mismo contrato que `prevLabel`. Default: "Siguiente" */
23
+ nextLabel?: string;
24
+ /**
25
+ * Título visible del destino anterior (el de la página, el capítulo…). Con
26
+ * él el control deja de ser un chevron pelado: se lee «Anterior ·
27
+ * Instalación», y ese texto visible es ya su nombre accesible.
28
+ */
29
+ prevTitle?: string;
30
+ /** Título visible del destino siguiente. Mismo contrato que `prevTitle`. */
31
+ nextTitle?: string;
32
+ /**
33
+ * Contenido central: texto de periodo, semana, mes, etc. Opcional — el
34
+ * paginador de documentación no tiene centro, solo los dos destinos.
35
+ */
36
+ label?: ReactNode;
37
+ /**
38
+ * id del label central, para que otro elemento pueda tomarlo como nombre
39
+ * accesible (`aria-labelledby`).
40
+ */
41
+ labelId?: string;
42
+ /**
43
+ * Componente `Link` del router para los controles con `href`. Default: `"a"`.
44
+ * Recibe `href` y el resto de props tal cual.
45
+ */
46
+ linkComponent?: ComponentType<any>;
47
+ /** Variante de densidad. Default: "md" */
48
+ size?: 'sm' | 'md';
49
+ }
50
+ export declare function PrevNextNav({ prevHref, nextHref, prevOnClick, nextOnClick, prevLabel, nextLabel, prevTitle, nextTitle, label, labelId, linkComponent, size, }: PrevNextNavProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,48 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type HeadingLevel, type HeadingSize } from '../../atoms/Heading/Heading';
3
+ import { type TagVariant } from '../../atoms/Tag/Tag';
4
+ import type { CardMedia } from '../Card/Card';
5
+ import './ProjectCard.css';
6
+ export type { TagVariant };
7
+ export interface ProjectCardTag {
8
+ /** Clave de React. Sin ella se usa la etiqueta. */
9
+ id?: string;
10
+ label: string;
11
+ variant?: TagVariant;
12
+ }
13
+ export interface ProjectCardProps {
14
+ /** Título del proyecto. Es el enlace de la tarjeta. */
15
+ title: ReactNode;
16
+ /** Descripción breve. */
17
+ description?: ReactNode;
18
+ /** Imagen del proyecto. */
19
+ media?: CardMedia;
20
+ /** Etiquetas de categoría. */
21
+ tags?: ProjectCardTag[];
22
+ /** URL de destino. Pinta un `<a>` nativo. */
23
+ href?: string;
24
+ /**
25
+ * Elemento sobre el que renderizar el enlace del título (el `Link` del
26
+ * router de la aplicación). Manda sobre `href`, igual que en `Card`.
27
+ */
28
+ render?: React.ReactElement<Record<string, unknown>>;
29
+ /** Nivel semántico del título. Por defecto `3`. */
30
+ headingLevel?: HeadingLevel;
31
+ /** Talla del título. Por defecto `5` (24px). */
32
+ headingSize?: HeadingSize;
33
+ /** Nombre accesible de la lista de etiquetas. Por defecto «Categorías». */
34
+ tagsLabel?: string;
35
+ className?: string;
36
+ id?: string;
37
+ }
38
+ /**
39
+ * Tarjeta de un proyecto para una portada de marketing: imagen, etiquetas de
40
+ * categoría, título y una descripción breve.
41
+ *
42
+ * No es una `Card` con `href`: allí el bloque entero es un enlace, aquí hay
43
+ * etiquetas y texto alrededor del enlace. El enlace es **el título**, y su
44
+ * área pulsable se estira sobre toda la tarjeta con un pseudoelemento: se
45
+ * puede pulsar en cualquier sitio, pero el teclado solo se para una vez y el
46
+ * lector de pantalla anuncia el nombre del proyecto, no la tarjeta entera.
47
+ */
48
+ export declare function ProjectCard({ title, description, media, tags, href, render, headingLevel, headingSize, tagsLabel, className, id, }: ProjectCardProps): import("react/jsx-runtime").JSX.Element;