@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,58 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type ContainerWidth } from '../../atoms/Container/Container';
3
+ import { type LogoSize } from '../../atoms/Logo/Logo';
4
+ import './SiteHeader.css';
5
+ export type SiteHeaderLogoLinkProps = {
6
+ href: string;
7
+ className: string;
8
+ 'aria-label': string;
9
+ children: ReactNode;
10
+ };
11
+ export interface SiteHeaderProps {
12
+ /** Destino del logotipo. */
13
+ logoHref?: string;
14
+ /** Texto accesible del enlace del logotipo. */
15
+ logoLabel?: string;
16
+ /** aria-label del botón de menú. */
17
+ menuLabel?: string;
18
+ /** aria-label del botón de menú cuando está abierto («Cerrar menú»). */
19
+ menuCloseLabel?: string;
20
+ /** La marca. Por defecto el `Logo` de Studio LXD a `logoSize`; un producto de la suite pone la suya. */
21
+ logo?: ReactNode;
22
+ /** Talla del logotipo por defecto. `xxl` (85px): la cabecera es el sitio de la marca. */
23
+ logoSize?: LogoSize;
24
+ /** Talla del botón de menú. `lg` (48px) acompaña al logotipo grande. */
25
+ menuButtonSize?: 'sm' | 'md' | 'lg';
26
+ /**
27
+ * Enlace del logotipo para el router del producto. Recibe `href`, `className`,
28
+ * `aria-label` y `children`, y debe reenviarlos todos.
29
+ */
30
+ renderLogoLink?: (props: SiteHeaderLogoLinkProps) => ReactNode;
31
+ /** Ancho del contenido; el fondo siempre llega de lado a lado. */
32
+ width?: ContainerWidth;
33
+ /** Estado del menú cuando lo gobierna el producto. Si se omite, es interno. */
34
+ open?: boolean;
35
+ /** Notifica el cambio de estado del menú. */
36
+ onOpenChange?: (open: boolean) => void;
37
+ /** Índice del sitio dentro del panel: normalmente un `SiteNav`. */
38
+ children?: ReactNode;
39
+ /** Ajustes del sitio al final del panel (el selector de tema). */
40
+ settings?: ReactNode;
41
+ /** id del panel — `aria-controls` del botón de menú. */
42
+ panelId?: string;
43
+ /** Controles del producto en la barra (acceso, CTA…). */
44
+ actions?: ReactNode;
45
+ /** El selector de idioma (`LanguageSwitcher` compacto): en los ajustes del panel, delante del tema. */
46
+ language?: ReactNode;
47
+ }
48
+ /**
49
+ * Cabecera de las páginas públicas: logotipo, controles del producto y botón
50
+ * de menú: la barra se monta a sangre —el fondo llega de lado a lado y el
51
+ * alto es suyo (`--site-header-height`, más compacto en móvil)— con el
52
+ * contenido acotado por su `Container` interior. El
53
+ * menú es siempre un panel a pantalla completa bajo la barra —no hay
54
+ * navegación en línea— con el índice del sitio y, al final, sus ajustes.
55
+ * El enlace de salto al contenido no va aquí: lo pone `AppRoot`, una vez por
56
+ * documento.
57
+ */
58
+ export declare function SiteHeader({ logoHref, logoLabel, menuLabel, menuCloseLabel, logoSize, logo, menuButtonSize, renderLogoLink, width, open, onOpenChange, children, settings, panelId, actions, language, }: SiteHeaderProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,26 @@
1
+ import { type ReactNode } from 'react';
2
+ import './SiteShell.css';
3
+ export interface SiteShellProps {
4
+ /** La cabecera del sitio (`SiteHeader` o la del producto). */
5
+ header?: ReactNode;
6
+ /** El pie (`LegalFooter`, el del producto…). Siempre queda abajo del todo. */
7
+ footer?: ReactNode;
8
+ /** El contenido de la página: normalmente el `main` con `id="main-content"`. */
9
+ children?: ReactNode;
10
+ className?: string;
11
+ }
12
+ /**
13
+ * El marco de una página pública: cabecera, contenido y pie en columna,
14
+ * con la altura mínima de la pantalla. Con poco contenido, el pie se queda
15
+ * pegado al borde inferior; con mucho, la página entera hace scroll. Es la
16
+ * norma del sistema: ningún producto necesita CSS propio para sujetar el pie.
17
+ * Para las aplicaciones con barra y sidebar está `AppShell`.
18
+ */
19
+ /**
20
+ * Reenvía el `ref` al nodo raíz (`.site-shell`): un `Modal`/`Sheet` abierto
21
+ * desde dentro necesita apuntar su `container` aquí para heredar los tokens
22
+ * de la superficie pública — el portal por defecto monta en `document.body`,
23
+ * que no es descendiente de `.site-shell` (a diferencia del tema oscuro, que
24
+ * se activa en `<html>` y sí llega a cualquier portal sin configuración).
25
+ */
26
+ export declare const SiteShell: import("react").ForwardRefExoticComponent<SiteShellProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,53 @@
1
+ import { type ReactNode } from 'react';
2
+ import './ChatShell.css';
3
+ export interface ChatShellProps extends React.ComponentPropsWithoutRef<'div'> {
4
+ /**
5
+ * La columna de conversaciones, normalmente un `ConversationList`. Sin ella,
6
+ * el armazón es solo hilo y composer — que es como se monta dentro de un
7
+ * `AppShell`, donde la columna vive en el `Sidebar`.
8
+ *
9
+ * Por debajo del punto de ruptura no desaparece ni se encoge: se pliega a un
10
+ * cajón (`Sheet`) que abre un botón en la cabecera.
11
+ */
12
+ list?: ReactNode;
13
+ /** La cabecera del hilo: el título de la conversación y sus controles. */
14
+ header?: ReactNode;
15
+ /** El hilo: un `ConversationThread`. */
16
+ children: ReactNode;
17
+ /** La caja de escribir: un `MessageComposer`. */
18
+ composer?: ReactNode;
19
+ /**
20
+ * `aria-label` de la columna de conversaciones y título del cajón en
21
+ * pantallas estrechas. Default: "Conversaciones" (castellano). Solo se usa
22
+ * si hay `list`.
23
+ */
24
+ listLabel?: string;
25
+ /**
26
+ * Nombre accesible del botón que abre el cajón de conversaciones. Default:
27
+ * "Abrir conversaciones" (castellano).
28
+ */
29
+ listTriggerLabel?: string;
30
+ /**
31
+ * Estado controlado del cajón de conversaciones. Sin él, el armazón lo lleva
32
+ * por dentro; con él, el producto puede cerrarlo al abrir una conversación.
33
+ * En escritorio no se usa: ahí la lista es columna y siempre está a la vista.
34
+ */
35
+ listOpen?: boolean;
36
+ /** Avisa de cada apertura y cierre del cajón de conversaciones. */
37
+ onListOpenChange?: (open: boolean) => void;
38
+ /** Se añade DESPUÉS de las clases propias del componente (el consumidor añade, no sustituye). */
39
+ className?: string;
40
+ }
41
+ /**
42
+ * El armazón de una pantalla de chat: tres zonas —la columna de
43
+ * conversaciones, el hilo y la caja de escribir— colocadas y con el scroll en
44
+ * el sitio correcto.
45
+ *
46
+ * Es **solo maqueta**: no lleva estado de producto ni sabe nada de mensajes.
47
+ * Quién habla, qué se manda y qué conversación está abierta lo lleva el
48
+ * producto y entra por los slots. Lo único que sí lleva es el cajón de
49
+ * conversaciones de las pantallas estrechas, que es maqueta también.
50
+ *
51
+ * Reenvía el resto de props del `<div>` (`data-*`, `id`…) y el `ref`.
52
+ */
53
+ export declare const ChatShell: import("react").ForwardRefExoticComponent<ChatShellProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,73 @@
1
+ import { type ReactNode } from 'react';
2
+ /**
3
+ * El chrome que las cuatro pantallas del conector reenvían al marco público.
4
+ * Va aparte para que cada plantilla lo extienda sin volver a escribirlo: son
5
+ * las mismas ranuras que ya tiene `PublicPageShell`, ni una más.
6
+ *
7
+ * Quien cablee estas pantallas **tiene que rellenarlas**. El servidor de
8
+ * autorización sirve el consentimiento fuera de la aplicación —sin su chasis—,
9
+ * así que la cabecera pública, el pie legal y la banda de preferencias no le
10
+ * llegan de ningún layout: entran por aquí o no existen.
11
+ */
12
+ export interface ConnectorAuthChromeProps {
13
+ /** Cabecera pública (`SiteHeader`). Va dentro de un `ErrorBoundary` del marco. */
14
+ header?: ReactNode;
15
+ /** Pie legal (`LegalFooter`). Ídem. */
16
+ footer?: ReactNode;
17
+ /**
18
+ * Idioma y tema, en la banda de preferencias del marco. En estas pantallas
19
+ * el idioma no es un adorno: el servidor de autorización lo saca de la
20
+ * cookie `NEXT_LOCALE` o de `Accept-Language`, y quien llegue en el idioma
21
+ * equivocado necesita poder cambiarlo **aquí**, porque no hay ninguna otra
22
+ * pantalla de la suite alrededor donde hacerlo.
23
+ */
24
+ preferences?: ReactNode;
25
+ /** Nombre accesible de la banda de preferencias. Default castellano: «Preferencias». */
26
+ preferencesLabel?: string;
27
+ /** `id` del `main` (`main-content` por defecto, destino del `SkipLink`). */
28
+ id?: string;
29
+ /**
30
+ * Con `false` no monta el marco público ni el `main`: solo las dos columnas,
31
+ * para pintarlas dentro de una aplicación que ya tiene su `main`. Por
32
+ * defecto `true`. Sin marco, `header`, `footer`, `preferences` e `id` no
33
+ * aplican —ni el `ref`, porque no hay marco al que engancharlo.
34
+ */
35
+ shell?: boolean;
36
+ }
37
+ export interface ConnectorAuthShellProps extends ConnectorAuthChromeProps {
38
+ /** El título de la pantalla: `Heading` de nivel 1 vía `PageIntro`, columna izquierda. */
39
+ title: ReactNode;
40
+ /** La frase bajo el título, columna izquierda. Es una frase y termina en punto. */
41
+ description?: ReactNode;
42
+ /** Más texto bajo la frase, misma columna. */
43
+ intro?: ReactNode;
44
+ /** Bajo la cabecera, en su misma columna: un enlace de vuelta. El aire lo pone el `PageIntro`. */
45
+ aside?: ReactNode;
46
+ /** La columna de la derecha: la decisión —el formulario, la ficha, los botones—. */
47
+ children: ReactNode;
48
+ /** Se añade DESPUÉS de las clases propias. */
49
+ className?: string;
50
+ }
51
+ /**
52
+ * El marco de las pantallas del conector: **el mismo que el de acceso**.
53
+ *
54
+ * Conectar una herramienta es una pantalla pública de una sola decisión, de la
55
+ * familia de iniciar sesión, recuperar la contraseña o verificar el correo:
56
+ * cuelga de `PublicPageShell` —cabecera pública, `main` acotado, banda de
57
+ * preferencias y pie legal—, se maqueta en dos columnas (`Columns`, la
58
+ * cabecera a la izquierda y la decisión a la derecha) y reparte talla `lg` a
59
+ * todo lo que lleve dentro, que es la talla de la superficie pública. Ninguna
60
+ * de las cuatro pantallas inventa su propio contenedor.
61
+ *
62
+ * La consecuencia de esa decisión es de cableado, no de diseño: el servidor de
63
+ * autorización **sirve el consentimiento fuera de la aplicación**, así que
64
+ * quien lo monte tiene que pasar el chrome por props (`header`, `footer`,
65
+ * `preferences`) — no le va a llegar de ningún layout. Por eso las ranuras
66
+ * están en la plantilla y no dentro de ella.
67
+ *
68
+ * **Reenvía el `ref` al nodo del marco** (`.site-shell`), que es el
69
+ * `container` que pide un panel flotante abierto desde la página (el de
70
+ * cookies, un `Modal`): su portal monta en `document.body`, que no hereda el
71
+ * remapeo de superficie pública.
72
+ */
73
+ export declare const ConnectorAuthShell: import("react").ForwardRefExoticComponent<ConnectorAuthShellProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,129 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type ConnectorAuthChromeProps } from './ConnectorAuthShell';
3
+ import { ConnectorRequestSummary, type ConnectorScope } from './ConnectorRequestSummary';
4
+ export interface ConnectorConsentPageProps extends ConnectorAuthChromeProps {
5
+ /** El nombre con el que la herramienta se registró. **Dato de fuera**: ver `ConnectorRequestSummary`. */
6
+ clientName: string;
7
+ /** El producto de la suite al que se pide acceso. */
8
+ productName?: ReactNode;
9
+ /** La cuenta con la que se está decidiendo. */
10
+ accountEmail: string;
11
+ /** Qué se concede. Default: `'read'`. */
12
+ scope?: ConnectorScope;
13
+ /** El host al que se enviará el acceso, sacado del `redirect_uri` ya validado. */
14
+ redirectHost: string;
15
+ /**
16
+ * Destino del envío nativo. **Con `action` la pantalla funciona sin una
17
+ * línea de JavaScript**: el bloque de decisión es un `<form method="post">`
18
+ * de verdad y los dos botones son `submit`. Es el modo que necesita el
19
+ * servidor de autorización, que la sirve con
20
+ * `Content-Security-Policy: default-src 'none'` —ni un script, ni una hoja
21
+ * de estilos externa— y por tanto no puede depender de un `onClick`.
22
+ *
23
+ * Sin `action`, los botones son botones y la decisión sale por `onApprove` /
24
+ * `onDeny`: el modo de montarla dentro de una aplicación React.
25
+ */
26
+ action?: string | ((formData: FormData) => void | Promise<void>);
27
+ /**
28
+ * Los parámetros de OAuth que tienen que viajar con la decisión —`client_id`,
29
+ * `redirect_uri`, `code_challenge`, `state`, `scope`, `consent_nonce`—, como
30
+ * `<input type="hidden">`. Son **datos en tránsito, no interfaz**: la
31
+ * plantilla no los lee ni los valida, solo los devuelve intactos.
32
+ */
33
+ hiddenFields?: Record<string, string>;
34
+ /** Nombre del campo que distingue la decisión en el envío nativo. Default: `'decision'`. */
35
+ decisionName?: string;
36
+ /** Valor que envía el botón de permitir. Default: `'approve'`. */
37
+ approveValue?: string;
38
+ /** Valor que envía el botón de denegar. Default: `'deny'`. */
39
+ denyValue?: string;
40
+ /** La decisión afirmativa, en modo React (sin `action`). */
41
+ onApprove?: () => void;
42
+ /** La negativa, en modo React (sin `action`). */
43
+ onDeny?: () => void;
44
+ /**
45
+ * Denegar como enlace en vez de como envío: la vuelta a la herramienta con
46
+ * `error=access_denied`, ya compuesta por el servidor. Manda sobre
47
+ * `onDeny` y sobre el envío nativo.
48
+ */
49
+ denyHref?: string;
50
+ /**
51
+ * Dónde empieza el foco. Default `'none'`: **la pantalla no enfoca nada**, y
52
+ * el primer tabulador cae en denegar porque es el primero del DOM. Con
53
+ * `'deny'` se enfoca denegar al cargar. Permitir no es una opción, y no se
54
+ * va a añadir: conceder acceso no puede estar a un Intro de distancia de
55
+ * abrir la página.
56
+ */
57
+ initialFocus?: 'none' | 'deny';
58
+ /** Título de la pantalla. Default castellano: «Conectar una herramienta». */
59
+ title?: ReactNode;
60
+ /**
61
+ * La frase de la cabecera. Recibe las tres piezas ya compuestas —la
62
+ * herramienta y la cuenta en negrita, el permiso en texto corriente— porque
63
+ * el orden cambia con el idioma (en alemán la cuenta va antes del permiso).
64
+ * Default castellano.
65
+ */
66
+ intro?: (parts: {
67
+ client: ReactNode;
68
+ what: ReactNode;
69
+ email: ReactNode;
70
+ }) => ReactNode;
71
+ /**
72
+ * El aviso de a dónde se enviará el acceso, bajo la ficha. Recibe el host ya
73
+ * en negrita. Va a tamaño de cuerpo, no de nota al pie: es la señal que
74
+ * convierte una suplantación en visible y no puede leerse como letra
75
+ * pequeña. Default castellano.
76
+ */
77
+ redirectNotice?: (parts: {
78
+ host: ReactNode;
79
+ }) => ReactNode;
80
+ /** Etiqueta del botón que concede. Default castellano: «Permitir acceso». */
81
+ approveLabel?: string;
82
+ /** Etiqueta del botón que deniega. Default castellano: «Denegar». */
83
+ denyLabel?: string;
84
+ /** Alcance en texto, para la frase y para la ficha. Default castellano. */
85
+ scopeReadLabel?: string;
86
+ /** Ídem, lectura y escritura. Default castellano. */
87
+ scopeWriteLabel?: string;
88
+ /** Etiqueta del desplegador de un valor de fuera recortado. Default castellano: «Ver el valor completo». */
89
+ expandLabel?: string;
90
+ /** Etiqueta del desplegador abierto. Default castellano: «Ver menos». */
91
+ collapseLabel?: string;
92
+ /**
93
+ * Las comillas que enmarcan los datos de fuera —la herramienta, la cuenta, el
94
+ * host—, aquí y en la ficha. Default castellano: `['«', '»']`.
95
+ */
96
+ valueQuotes?: [string, string];
97
+ /** Rótulos de la ficha. Ver `ConnectorRequestSummary`. */
98
+ summaryLabels?: Pick<React.ComponentProps<typeof ConnectorRequestSummary>, 'clientLabel' | 'productLabel' | 'accountLabel' | 'scopeLabel' | 'redirectLabel'>;
99
+ /** Bajo las acciones: un enlace de ayuda, la política de la suite. Se pinta en `links` del `Form`. */
100
+ links?: ReactNode;
101
+ }
102
+ /**
103
+ * **La pantalla principal del flujo**: una herramienta pide acceso a un
104
+ * producto de la suite y hay que concederlo o denegarlo.
105
+ *
106
+ * La cabecera cuenta la petición en una frase; la columna de la decisión la
107
+ * repite como ficha verificable (`ConnectorRequestSummary`), avisa de a dónde
108
+ * saldrá el acceso y ofrece las dos salidas. Nada más: no hay recordar la
109
+ * decisión, ni elegir alcance a la carta, ni ver qué se llevó la última vez.
110
+ * Una pantalla de una sola decisión.
111
+ *
112
+ * ### Las dos acciones
113
+ *
114
+ * Denegar va **primera en el DOM** y permitir después, como el `Cancelar` de
115
+ * un diálogo del sistema: el recorrido del teclado abre por la salida segura.
116
+ * Visualmente permitir es la principal —es la que ejecuta— y denegar va en
117
+ * `outline`; apiladas (`blockActions`, como el resto de la familia de acceso)
118
+ * permitir queda arriba, que es donde el pulgar espera la acción del
119
+ * formulario. Lo que **no** pasa en ninguna talla es que conceder acceso se
120
+ * lleve el foco al cargar: ver `initialFocus`.
121
+ *
122
+ * ### Sin JavaScript
123
+ *
124
+ * Con `action` la pantalla es un formulario nativo y funciona con los scripts
125
+ * desactivados, que es como la sirve hoy el servidor de autorización. Sin
126
+ * `action` es una pantalla de React con dos callbacks. Las dos formas pintan
127
+ * exactamente lo mismo.
128
+ */
129
+ export declare function ConnectorConsentPage({ clientName, productName, accountEmail, scope, redirectHost, action, hiddenFields, decisionName, approveValue, denyValue, onApprove, onDeny, denyHref, initialFocus, title, intro, redirectNotice, approveLabel, denyLabel, scopeReadLabel, scopeWriteLabel, expandLabel, collapseLabel, valueQuotes, summaryLabels, links, header, footer, preferences, preferencesLabel, id, shell, }: ConnectorConsentPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,87 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type ConnectorAuthChromeProps } from './ConnectorAuthShell';
3
+ export interface ConnectorExternalSignInPageProps extends ConnectorAuthChromeProps {
4
+ /**
5
+ * Cómo se llama la instalación de la que es el conector, para la frase y
6
+ * para el botón. Default castellano: «tu Moodle», que hoy es el único
7
+ * conector de esta forma; cambiarlo sirve a cualquier otra instalación
8
+ * ajena a la suite.
9
+ */
10
+ platformName?: ReactNode;
11
+ /**
12
+ * La organización a la que se va a entrar, **ya resuelta**: el conector vive
13
+ * en un subdominio y el servidor la saca del `resource` de la petición. Con
14
+ * ella, la pantalla solo la confirma. Sin ella pinta el campo para
15
+ * escribirla, que es el caso de una conexión al dominio pelado.
16
+ */
17
+ organization?: ReactNode;
18
+ /** Valor inicial del campo de organización, cuando hay que escribirla. */
19
+ organizationDefaultValue?: string;
20
+ /** `name` del campo de organización en el envío. Default: `'org'`. */
21
+ organizationName?: string;
22
+ /**
23
+ * Destino del envío. Una URL, o la acción de servidor que arranca el salto a
24
+ * la instalación: el `<form>` de React 19 acepta las dos, y el flujo de
25
+ * lmsmcp necesita la segunda (2026-09-14).
26
+ */
27
+ action?: string | ((formData: FormData) => void | Promise<void>);
28
+ /** El envío, en modo React (sin `action`). */
29
+ onSubmit?: React.FormEventHandler<HTMLFormElement>;
30
+ /** Los parámetros de OAuth que tienen que sobrevivir al salto, como `<input type="hidden">`. */
31
+ hiddenFields?: Record<string, string>;
32
+ /** Un fallo del intento anterior —«no hay ninguna conexión para esa organización»—, sobre el formulario. */
33
+ error?: ReactNode;
34
+ /** Título de la pantalla. Default castellano: «Autorizar la conexión». */
35
+ title?: ReactNode;
36
+ /** La frase de la cabecera. Recibe el nombre de la instalación. Default castellano. */
37
+ intro?: (parts: {
38
+ platform: ReactNode;
39
+ }) => ReactNode;
40
+ /** La frase que confirma a dónde se entra, con `organization`. Default castellano. */
41
+ signingInTo?: (parts: {
42
+ organization: ReactNode;
43
+ }) => ReactNode;
44
+ /**
45
+ * Las comillas que enmarcan la organización en la frase de confirmación:
46
+ * viene de la petición, así que es dato de fuera y se pinta como tal. Default
47
+ * castellano: `['«', '»']`.
48
+ */
49
+ valueQuotes?: [string, string];
50
+ /** Etiqueta del campo de organización. Default castellano: «Tu organización». */
51
+ organizationLabel?: string;
52
+ /** Etiqueta de la acción. Recibe el nombre de la instalación. Default castellano. */
53
+ submitLabel?: (parts: {
54
+ platform: ReactNode;
55
+ }) => ReactNode;
56
+ /**
57
+ * Debajo del formulario: lo que no es del sistema de diseño. Es la ranura
58
+ * donde el producto cuelga su andamio de desarrollo —pegar una clave de MCP,
59
+ * detrás de un `Accordion`— sin que el DS tenga que conocerlo.
60
+ */
61
+ extra?: ReactNode;
62
+ /** Bajo la acción: ayuda, un enlace de vuelta. Se pinta en `links` del `Form`. */
63
+ links?: ReactNode;
64
+ }
65
+ /**
66
+ * **El caso del conector de Moodle**, que no se parece a los otros tres y por
67
+ * eso tiene pantalla propia.
68
+ *
69
+ * En los conectores de la suite, quien concede es la suite: hay sesión, hay
70
+ * consentimiento y el acceso sale de aquí. En el de Moodle **el conector es de
71
+ * la instalación del cliente**, así que no hay nada que consentir en la suite:
72
+ * la pantalla solo confirma a qué organización se entra y manda a
73
+ * identificarse a su Moodle, que es quien decide. De ahí que no lleve ni ficha
74
+ * de permisos ni botón de denegar — denegar, aquí, es no seguir.
75
+ *
76
+ * Es la única de la familia que **pide un dato**: cuando la organización no
77
+ * viene en la petición (una conexión al dominio pelado), hay que escribirla.
78
+ * Con la organización resuelta, el campo desaparece y queda una frase de
79
+ * confirmación: la pantalla no pregunta lo que ya sabe.
80
+ *
81
+ * Lleva el marco y la talla del resto de la familia —`PublicPageShell`, dos
82
+ * columnas, controles `lg`—, que es lo que hace que las dos familias de
83
+ * conector se lean como hermanas. En el producto esta pantalla vive hoy en una
84
+ * `Card` dentro de una columna estrecha, sin cabecera pública ni pie: al
85
+ * cablearla, ese molde propio se retira y lo pone la plantilla.
86
+ */
87
+ export declare function ConnectorExternalSignInPage({ platformName, organization, organizationDefaultValue, organizationName, action, onSubmit, hiddenFields, error, title, intro, signingInTo, valueQuotes, organizationLabel, submitLabel, extra, links, header, footer, preferences, preferencesLabel, id, shell, }: ConnectorExternalSignInPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,69 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type ConnectorAuthChromeProps } from './ConnectorAuthShell';
3
+ /**
4
+ * Por qué no se ha conectado nada. Son los cinco errores que el servidor de
5
+ * autorización devuelve hoy en crudo —`invalid_client`,
6
+ * `invalid_redirect_uri`, `access_denied`, `invalid_request`,
7
+ * `login_required`—, uno por uno y con el nombre que entiende quien los lee.
8
+ */
9
+ export type ConnectorRejectionReason = 'invalid-client' | 'invalid-redirect-uri' | 'invalid-request' | 'access-denied' | 'session-expired';
10
+ export interface ConnectorRejectionPageProps extends ConnectorAuthChromeProps {
11
+ /** Por qué no se ha conectado nada. De él salen el título, la explicación y el texto de la salida. */
12
+ reason: ConnectorRejectionReason;
13
+ /** Título, si el producto quiere el suyo. Default: el de la variante, en castellano. */
14
+ title?: ReactNode;
15
+ /** La frase bajo el título. Default: la de la variante, en castellano. */
16
+ description?: ReactNode;
17
+ /** Qué se puede hacer, en la columna de la derecha. Default: el de la variante, en castellano. */
18
+ hint?: ReactNode;
19
+ /**
20
+ * El código técnico tal cual lo devuelve el servidor (`invalid_client`…),
21
+ * bajo la explicación. No es para quien lee la pantalla: es para que pueda
22
+ * copiarlo en un correo a soporte sin tener que describir el error con sus
23
+ * palabras. Sin él, no se pinta.
24
+ */
25
+ code?: string;
26
+ /** Rótulo del código. Default castellano: «Código». */
27
+ codeLabel?: string;
28
+ /** La salida, como enlace: la vuelta a la herramienta o al acceso. */
29
+ retryHref?: string;
30
+ /** La salida, en modo React (sin `retryHref`). */
31
+ onRetry?: () => void;
32
+ /** Etiqueta de la salida. Default: la de la variante, en castellano. */
33
+ retryLabel?: string;
34
+ /**
35
+ * La salida entera, ya montada, cuando no basta con un botón (el `Link` del
36
+ * router, dos acciones). Manda sobre `retryHref` / `onRetry`.
37
+ */
38
+ retryAction?: ReactNode;
39
+ /** Bajo la cabecera, en su columna: un enlace de vuelta al producto. */
40
+ aside?: ReactNode;
41
+ }
42
+ /**
43
+ * **Una sola plantilla para los cinco rechazos**, que hoy son cinco respuestas
44
+ * JSON en crudo sin ninguna pantalla detrás.
45
+ *
46
+ * Son cinco variantes y no cinco plantillas porque lo único que cambia entre
47
+ * ellas es el texto. La maqueta es idéntica —la explicación a la izquierda, qué
48
+ * hacer y la salida a la derecha—, y sobre todo lo es la postura: **ninguna
49
+ * ofrece reintentar en el sitio**. Ni un botón que repita la petición ni un
50
+ * formulario que la arregle; la conexión se empieza donde se empezó, en la
51
+ * herramienta. Un rechazo de autorización que se pueda reintentar a golpes
52
+ * desde la propia pantalla de rechazo es un fallo de seguridad, no una
53
+ * comodidad, y por eso la salida por defecto es «volver» y no «reintentar».
54
+ *
55
+ * Los cinco se agrupan en tres causas, y el texto de cada uno lo dice sin
56
+ * jerga:
57
+ *
58
+ * | Causa | Variantes | Qué se le ofrece |
59
+ * | --- | --- | --- |
60
+ * | La petición no vale | `invalid-client`, `invalid-redirect-uri`, `invalid-request` | Volver a la herramienta: el arreglo está allí |
61
+ * | No se ha concedido | `access-denied` | Cerrar, o pedir la conexión otra vez |
62
+ * | La sesión se ha acabado | `session-expired` | Identificarse y repetir |
63
+ *
64
+ * No lleva `Alert` ni color de error. Un rechazo aquí no es un fallo del
65
+ * sistema del que avisar: es el resultado normal de una comprobación que ha
66
+ * hecho su trabajo —y en `access-denied`, ni siquiera eso: es lo que se ha
67
+ * pedido—. La página lo cuenta como cuenta cualquier otra cosa.
68
+ */
69
+ export declare function ConnectorRejectionPage({ reason, title, description, hint, code, codeLabel, retryHref, onRetry, retryLabel, retryAction, aside, header, footer, preferences, preferencesLabel, id, shell, }: ConnectorRejectionPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,74 @@
1
+ import type { ReactNode } from 'react';
2
+ import './ConnectorRequestSummary.css';
3
+ /** Qué se le concede al conector: leer, o leer y modificar. Son los dos únicos alcances que emite el servidor de autorización (`mcp:read` y `mcp:write`). */
4
+ export type ConnectorScope = 'read' | 'write';
5
+ export interface ConnectorRequestSummaryProps {
6
+ /**
7
+ * El nombre con el que la herramienta se registró.
8
+ *
9
+ * **Es dato de quien registró el cliente, no de la suite.** El registro es
10
+ * abierto: cualquiera puede darse de alta con el nombre que quiera, así que
11
+ * un «Claude» falso es indistinguible del real. Pásalo como **cadena**: así
12
+ * lo pinta `UntrustedText` —texto plano entrecomillado, con los caracteres
13
+ * invisibles a la vista, aislado de dirección y recortado si es larguísimo—.
14
+ * Un `ReactNode` se pinta tal cual, sin ese tratamiento, porque ya no es
15
+ * texto de fuera sino algo que compusiste tú. Nunca lo pases por
16
+ * `dangerouslySetInnerHTML` ni lo uses para componer una URL.
17
+ */
18
+ clientName: ReactNode;
19
+ /** El producto de la suite al que se pide acceso: bricks, lmsmcp, lrs, sharescorm, tender. */
20
+ productName?: ReactNode;
21
+ /** La cuenta con la que se está decidiendo. Sin sesión —la pantalla de identificarse— no se pasa. */
22
+ accountEmail?: ReactNode;
23
+ /** El alcance concedido. Sin él, la fila no se pinta. */
24
+ scope?: ConnectorScope;
25
+ /**
26
+ * El host al que se enviará el acceso, sacado del `redirect_uri` ya validado
27
+ * contra lo registrado.
28
+ *
29
+ * **Es la única parte de la ficha que quien ataca NO elige**, y por eso está
30
+ * aquí y no en un párrafo suelto: el nombre lo puso quien registró, el host
31
+ * lo impone el registro.
32
+ */
33
+ redirectHost?: ReactNode;
34
+ /** Rótulo de la herramienta. Default castellano: «Herramienta». */
35
+ clientLabel?: string;
36
+ /** Rótulo del producto. Default castellano: «Producto». */
37
+ productLabel?: string;
38
+ /** Rótulo de la cuenta. Default castellano: «Cuenta». */
39
+ accountLabel?: string;
40
+ /** Rótulo del permiso. Default castellano: «Permiso». */
41
+ scopeLabel?: string;
42
+ /** Rótulo del destino. Default castellano: «Destino». */
43
+ redirectLabel?: string;
44
+ /** Valor del permiso de solo lectura. Default castellano, el del servidor de autorización. */
45
+ scopeReadLabel?: ReactNode;
46
+ /** Valor del permiso de lectura y escritura. Default castellano, el del servidor de autorización. */
47
+ scopeWriteLabel?: ReactNode;
48
+ /** Etiqueta del desplegador de un valor recortado. Default castellano: «Ver el valor completo». */
49
+ expandLabel?: string;
50
+ /** Etiqueta del desplegador abierto. Default castellano: «Ver menos». */
51
+ collapseLabel?: string;
52
+ /** Las comillas que enmarcan los valores de fuera. Default castellano: `['«', '»']`. */
53
+ valueQuotes?: [string, string];
54
+ /** Se añade DESPUÉS de las clases propias. */
55
+ className?: string;
56
+ }
57
+ /**
58
+ * La ficha de la petición: los cinco hechos que hay que mirar antes de
59
+ * conceder nada —qué herramienta, a qué producto, con qué cuenta, con qué
60
+ * permiso y a dónde va el acceso—, en una `DescriptionList`.
61
+ *
62
+ * Es una **lista de datos, no una frase**, a propósito. La frase de la
63
+ * cabecera («X quiere leer los datos de este producto como tú@ejemplo.com»)
64
+ * se lee de corrido y se cree entera; una ficha obliga a que cada dato tenga
65
+ * su rótulo y se pueda comparar con lo que uno esperaba. Los dos textos dicen
66
+ * lo mismo y conviven: la frase explica, la ficha verifica.
67
+ *
68
+ * Los tres valores que vienen de fuera —el nombre de la herramienta, la cuenta
69
+ * y el host— pasan por `UntrustedText`: texto plano entrecomillado, con los
70
+ * caracteres invisibles a la vista, aislados de dirección y recortados con
71
+ * desplegador si son larguísimos. Ver ahí el porqué de cada una de las tres
72
+ * cosas.
73
+ */
74
+ export declare function ConnectorRequestSummary({ clientName, productName, accountEmail, scope, redirectHost, clientLabel, productLabel, accountLabel, scopeLabel, redirectLabel, scopeReadLabel, scopeWriteLabel, expandLabel, collapseLabel, valueQuotes, className, }: ConnectorRequestSummaryProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,69 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type ConnectorAuthChromeProps } from './ConnectorAuthShell';
3
+ import { ConnectorRequestSummary, type ConnectorScope } from './ConnectorRequestSummary';
4
+ export interface ConnectorSignInPageProps extends ConnectorAuthChromeProps {
5
+ /** El nombre con el que la herramienta se registró. **Dato de fuera**: ver `ConnectorRequestSummary`. */
6
+ clientName: string;
7
+ /** El producto de la suite al que se pide acceso. */
8
+ productName?: ReactNode;
9
+ /** Qué pide la herramienta. Se enseña ya aquí: quien se identifica tiene derecho a saber para qué. */
10
+ scope?: ConnectorScope;
11
+ /** El host al que se enviaría el acceso. */
12
+ redirectHost?: string;
13
+ /**
14
+ * A dónde se va a identificar: el acceso de la suite, con la vuelta a esta
15
+ * misma petición ya compuesta por el servidor. Con él, la acción es un
16
+ * enlace y la pantalla **no necesita JavaScript**.
17
+ */
18
+ signInHref?: string;
19
+ /** La acción, en modo React (sin `signInHref`). */
20
+ onSignIn?: () => void;
21
+ /** Destino del envío nativo, para reanudar la petición por POST en vez de por enlace. */
22
+ action?: string;
23
+ /** Los parámetros de OAuth que tienen que sobrevivir al acceso, como `<input type="hidden">`. */
24
+ hiddenFields?: Record<string, string>;
25
+ /** Título de la pantalla. Default castellano. */
26
+ title?: ReactNode;
27
+ /**
28
+ * La frase de la cabecera. Recibe la herramienta y el producto ya
29
+ * compuestos. Default castellano.
30
+ */
31
+ intro?: (parts: {
32
+ client: ReactNode;
33
+ product: ReactNode;
34
+ }) => ReactNode;
35
+ /** Nombre del producto cuando no se pasa `productName`, para la frase. Default castellano: «este producto». */
36
+ fallbackProductName?: ReactNode;
37
+ /** Etiqueta de la acción. Default castellano: «Iniciar sesión». */
38
+ signInLabel?: string;
39
+ /** Alcance en texto. Default castellano. */
40
+ scopeReadLabel?: string;
41
+ /** Ídem, lectura y escritura. Default castellano. */
42
+ scopeWriteLabel?: string;
43
+ /** Etiqueta del desplegador de un valor de fuera recortado. Default castellano: «Ver el valor completo». */
44
+ expandLabel?: string;
45
+ /** Etiqueta del desplegador abierto. Default castellano: «Ver menos». */
46
+ collapseLabel?: string;
47
+ /** Las comillas que enmarcan los datos de fuera. Default castellano: `['«', '»']`. */
48
+ valueQuotes?: [string, string];
49
+ /** Rótulos de la ficha. Ver `ConnectorRequestSummary`. */
50
+ summaryLabels?: Pick<React.ComponentProps<typeof ConnectorRequestSummary>, 'clientLabel' | 'productLabel' | 'scopeLabel' | 'redirectLabel'>;
51
+ /** Bajo la acción: «¿No tienes cuenta?», ayuda. Se pinta en `links` del `Form`. */
52
+ links?: ReactNode;
53
+ }
54
+ /**
55
+ * Se ha llegado al conector **sin sesión**: no hay con qué cuenta conceder
56
+ * nada, así que primero hay que identificarse y luego se vuelve a la pantalla
57
+ * de consentimiento.
58
+ *
59
+ * Enseña ya la ficha de la petición —menos la cuenta, que es justo lo que
60
+ * falta—. Es deliberado: quien va a teclear una contraseña tiene derecho a
61
+ * saber antes qué herramienta está detrás y a dónde va a salir el acceso, y no
62
+ * enterarse dos pantallas más tarde. Y no concede nada: la única acción es
63
+ * identificarse, así que aquí sí es la principal y puede llevarse el foco.
64
+ *
65
+ * Es la pantalla que hoy no existe —el servidor redirige directamente al
66
+ * refresco de sesión del hub— y la que hace falta en cuanto la vuelta falla o
67
+ * el usuario se planta en medio del camino.
68
+ */
69
+ export declare function ConnectorSignInPage({ clientName, productName, scope, redirectHost, signInHref, onSignIn, action, hiddenFields, title, intro, fallbackProductName, signInLabel, scopeReadLabel, scopeWriteLabel, expandLabel, collapseLabel, valueQuotes, summaryLabels, links, header, footer, preferences, preferencesLabel, id, shell, }: ConnectorSignInPageProps): import("react/jsx-runtime").JSX.Element;