@studiolxd/brand 50.0.0 → 51.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_shared/alert.js +98 -0
- package/dist/_shared/asyncmultiselect.js +133 -0
- package/dist/_shared/asyncselect.js +122 -0
- package/dist/_shared/brandmessagescontext.js +27 -11
- package/dist/_shared/{calendargrid.js → calendar.js} +11 -1
- package/dist/_shared/closebutton.js +34 -0
- package/dist/_shared/colorpicker.js +141 -122
- package/dist/_shared/connectorrequestsummary.js +46 -0
- package/dist/_shared/{copy-to-clipboard.js → copy.js} +8 -1
- package/dist/_shared/datepicker.js +80 -67
- package/dist/_shared/default-render-link.js +6 -1
- package/dist/_shared/dotsbutton.js +31 -0
- package/dist/_shared/env.js +13 -2
- package/dist/_shared/field-optional.js +9 -0
- package/dist/_shared/fieldshell.js +85 -0
- package/dist/_shared/fileupload.js +237 -0
- package/dist/_shared/focusable-when-disabled.js +10 -0
- package/dist/_shared/imagecropdialog.js +65 -57
- package/dist/_shared/inputfield.js +92 -0
- package/dist/_shared/inputphone.js +91 -0
- package/dist/_shared/legalfooter.js +42 -0
- package/dist/_shared/logo.js +10 -9
- package/dist/_shared/menubutton.js +31 -0
- package/dist/_shared/modal.js +69 -0
- package/dist/_shared/multiselect.js +128 -0
- package/dist/_shared/notificationbutton.js +35 -0
- package/dist/_shared/numberinput.js +104 -0
- package/dist/_shared/otpinput.js +119 -0
- package/dist/_shared/pagination.js +198 -0
- package/dist/_shared/prevnextnav.js +93 -0
- package/dist/_shared/progressbar.js +25 -23
- package/dist/_shared/publicpageshell.js +39 -0
- package/dist/_shared/requiredinput.js +23 -0
- package/dist/_shared/searchform.js +65 -0
- package/dist/_shared/select.js +163 -0
- package/dist/_shared/sheet.js +58 -0
- package/dist/_shared/slider.js +43 -0
- package/dist/_shared/spinner.js +5 -0
- package/dist/_shared/table.js +140 -0
- package/dist/_shared/timeselect.js +91 -0
- package/dist/_shared/tokens.js +116 -11
- package/dist/_shared/typingindicator.js +32 -0
- package/dist/_shared/untrustedtext.js +27 -23
- package/dist/_types/atoms/AsyncMultiSelect/AsyncMultiSelect.d.ts +6 -1
- package/dist/_types/atoms/AsyncSelect/AsyncSelect.d.ts +6 -1
- package/dist/_types/atoms/Autocomplete/Autocomplete.d.ts +6 -1
- package/dist/_types/atoms/Button/Button.d.ts +13 -0
- package/dist/_types/atoms/CloseButton/CloseButton.d.ts +9 -0
- package/dist/_types/atoms/DescriptionList/DescriptionList.d.ts +4 -4
- package/dist/_types/atoms/EmbedFrame/EmbedFrame.d.ts +13 -1
- package/dist/_types/atoms/Fieldset/Fieldset.d.ts +11 -5
- package/dist/_types/atoms/FileUpload/FileUpload.d.ts +7 -2
- package/dist/_types/atoms/Input/Input.d.ts +1 -1
- package/dist/_types/atoms/InputPhone/InputPhone.d.ts +6 -1
- package/dist/_types/atoms/Link/Link.d.ts +7 -3
- package/dist/_types/atoms/List/List.d.ts +4 -2
- package/dist/_types/atoms/Logo/Logo.d.ts +11 -5
- package/dist/_types/atoms/Logo/index.d.ts +1 -1
- package/dist/_types/atoms/MultiSelect/MultiSelect.d.ts +11 -1
- package/dist/_types/atoms/NumberBadge/NumberBadge.d.ts +14 -2
- package/dist/_types/atoms/NumberInput/NumberInput.d.ts +1 -1
- package/dist/_types/atoms/OtpInput/OtpInput.d.ts +2 -0
- package/dist/_types/atoms/Paragraph/Paragraph.d.ts +14 -2
- package/dist/_types/atoms/Popover/Popover.d.ts +5 -1
- package/dist/_types/atoms/ProgressBar/ProgressBar.d.ts +12 -4
- package/dist/_types/atoms/Sparkline/Sparkline.d.ts +2 -0
- package/dist/_types/atoms/StepMarker/StepMarker.d.ts +9 -4
- package/dist/_types/atoms/Tag/Tag.d.ts +13 -2
- package/dist/_types/atoms/Text/Text.d.ts +11 -5
- package/dist/_types/atoms/TimeSelect/TimeSelect.d.ts +6 -1
- package/dist/_types/atoms/Toggle/Toggle.d.ts +9 -0
- package/dist/_types/atoms/Tooltip/Tooltip.d.ts +11 -13
- package/dist/_types/constants/default-render-link.d.ts +8 -1
- package/dist/_types/constants/env.d.ts +9 -5
- package/dist/_types/constants/field-optional.d.ts +14 -0
- package/dist/_types/constants/focusable-when-disabled.d.ts +2 -0
- package/dist/_types/messages/BrandMessages.d.ts +53 -14
- package/dist/_types/messages/BrandMessagesContext.d.ts +534 -12
- package/dist/_types/messages/BrandMessagesProvider.d.ts +33 -11
- package/dist/_types/messages/brandMessagesEs.d.ts +18 -0
- package/dist/_types/messages/es/alert.d.ts +3 -0
- package/dist/_types/messages/es/annotationThread.d.ts +3 -0
- package/dist/_types/messages/es/appHeader.d.ts +3 -0
- package/dist/_types/messages/es/appLauncher.d.ts +3 -0
- package/dist/_types/messages/es/appRoot.d.ts +3 -0
- package/dist/_types/messages/es/appShell.d.ts +3 -0
- package/dist/_types/messages/es/asyncMultiSelect.d.ts +3 -0
- package/dist/_types/messages/es/asyncSelect.d.ts +3 -0
- package/dist/_types/messages/es/avatarUpload.d.ts +3 -0
- package/dist/_types/messages/es/banner.d.ts +3 -0
- package/dist/_types/messages/es/breadcrumb.d.ts +3 -0
- package/dist/_types/messages/es/calendar.d.ts +3 -0
- package/dist/_types/messages/es/calendarPlanner.d.ts +3 -0
- package/dist/_types/messages/es/calendarRoster.d.ts +3 -0
- package/dist/_types/messages/es/carousel.d.ts +3 -0
- package/dist/_types/messages/es/chart.d.ts +3 -0
- package/dist/_types/messages/es/chatShell.d.ts +3 -0
- package/dist/_types/messages/es/clockWidget.d.ts +3 -0
- package/dist/_types/messages/es/closeButton.d.ts +3 -0
- package/dist/_types/messages/es/codeBlock.d.ts +3 -0
- package/dist/_types/messages/es/colorPicker.d.ts +3 -0
- package/dist/_types/messages/es/commandPalette.d.ts +3 -0
- package/dist/_types/messages/es/confirmDialog.d.ts +3 -0
- package/dist/_types/messages/es/connectorConsent.d.ts +3 -0
- package/dist/_types/messages/es/connectorExternalSignIn.d.ts +3 -0
- package/dist/_types/messages/es/connectorRejection.d.ts +3 -0
- package/dist/_types/messages/es/connectorRequestSummary.d.ts +3 -0
- package/dist/_types/messages/es/connectorSignIn.d.ts +3 -0
- package/dist/_types/messages/es/consent.d.ts +3 -0
- package/dist/_types/messages/es/conversationList.d.ts +3 -0
- package/dist/_types/messages/es/conversationThread.d.ts +3 -0
- package/dist/_types/messages/es/copy.d.ts +3 -0
- package/dist/_types/messages/es/dataTable.d.ts +3 -0
- package/dist/_types/messages/es/datePicker.d.ts +3 -0
- package/dist/_types/messages/es/docsSearch.d.ts +3 -0
- package/dist/_types/messages/es/dotsButton.d.ts +3 -0
- package/dist/_types/messages/es/field.d.ts +3 -0
- package/dist/_types/messages/es/fileUpload.d.ts +3 -0
- package/dist/_types/messages/es/filterBar.d.ts +3 -0
- package/dist/_types/messages/es/floatingDock.d.ts +3 -0
- package/dist/_types/messages/es/heatmap.d.ts +3 -0
- package/dist/_types/messages/es/imageCropDialog.d.ts +3 -0
- package/dist/_types/messages/es/inputField.d.ts +3 -0
- package/dist/_types/messages/es/inputPhone.d.ts +3 -0
- package/dist/_types/messages/es/languageSwitcher.d.ts +3 -0
- package/dist/_types/messages/es/legalFooter.d.ts +3 -0
- package/dist/_types/messages/es/menuButton.d.ts +3 -0
- package/dist/_types/messages/es/messageComposer.d.ts +3 -0
- package/dist/_types/messages/es/modal.d.ts +3 -0
- package/dist/_types/messages/es/multiSelect.d.ts +3 -0
- package/dist/_types/messages/es/notificationButton.d.ts +3 -0
- package/dist/_types/messages/es/notificationList.d.ts +3 -0
- package/dist/_types/messages/es/notificationPanel.d.ts +3 -0
- package/dist/_types/messages/es/numberInput.d.ts +3 -0
- package/dist/_types/messages/es/onboardingShell.d.ts +3 -0
- package/dist/_types/messages/es/orgChart.d.ts +3 -0
- package/dist/_types/messages/es/orgSwitcher.d.ts +3 -0
- package/dist/_types/messages/es/otpInput.d.ts +3 -0
- package/dist/_types/messages/es/pagination.d.ts +3 -0
- package/dist/_types/messages/es/passwordField.d.ts +3 -0
- package/dist/_types/messages/es/planningGrid.d.ts +3 -0
- package/dist/_types/messages/es/prevNextNav.d.ts +3 -0
- package/dist/_types/messages/es/progressBar.d.ts +3 -0
- package/dist/_types/messages/es/projectCard.d.ts +3 -0
- package/dist/_types/messages/es/publicPageShell.d.ts +3 -0
- package/dist/_types/messages/es/recurrenceField.d.ts +3 -0
- package/dist/_types/messages/es/searchForm.d.ts +3 -0
- package/dist/_types/messages/es/select.d.ts +3 -0
- package/dist/_types/messages/es/sheet.d.ts +3 -0
- package/dist/_types/messages/es/sidebar.d.ts +3 -0
- package/dist/_types/messages/es/sidebarNav.d.ts +3 -0
- package/dist/_types/messages/es/siteHeader.d.ts +3 -0
- package/dist/_types/messages/es/siteNav.d.ts +3 -0
- package/dist/_types/messages/es/siteSearch.d.ts +3 -0
- package/dist/_types/messages/es/slider.d.ts +3 -0
- package/dist/_types/messages/es/spinner.d.ts +3 -0
- package/dist/_types/messages/es/statTile.d.ts +3 -0
- package/dist/_types/messages/es/stepper.d.ts +3 -0
- package/dist/_types/messages/es/table.d.ts +3 -0
- package/dist/_types/messages/es/tableOfContents.d.ts +3 -0
- package/dist/_types/messages/es/themeSwitcher.d.ts +3 -0
- package/dist/_types/messages/es/timeSelect.d.ts +3 -0
- package/dist/_types/messages/es/timeline.d.ts +3 -0
- package/dist/_types/messages/es/toaster.d.ts +3 -0
- package/dist/_types/messages/es/treeView.d.ts +3 -0
- package/dist/_types/messages/es/typingIndicator.d.ts +3 -0
- package/dist/_types/messages/es/untrustedText.d.ts +3 -0
- package/dist/_types/messages/es/uptimeBars.d.ts +3 -0
- package/dist/_types/messages/es/userMenu.d.ts +3 -0
- package/dist/_types/messages/index.d.ts +1 -1
- package/dist/_types/molecules/Alert/Alert.d.ts +11 -2
- package/dist/_types/molecules/AsyncMultiSelectField/AsyncMultiSelectField.d.ts +2 -1
- package/dist/_types/molecules/AsyncSelectField/AsyncSelectField.d.ts +2 -1
- package/dist/_types/molecules/AutocompleteField/AutocompleteField.d.ts +2 -1
- package/dist/_types/molecules/Banner/Banner.d.ts +11 -3
- package/dist/_types/molecules/Breadcrumb/Breadcrumb.d.ts +3 -1
- package/dist/_types/molecules/CalendarPlanner/CalendarPlanner.d.ts +7 -1
- package/dist/_types/molecules/CalendarRoster/CalendarRoster.d.ts +14 -2
- package/dist/_types/molecules/Card/Card.d.ts +10 -2
- package/dist/_types/molecules/CheckboxField/CheckboxField.d.ts +8 -1
- package/dist/_types/molecules/ColorPicker/ColorPicker.d.ts +15 -1
- package/dist/_types/molecules/ColorPickerField/ColorPickerField.d.ts +10 -1
- package/dist/_types/molecules/CommandPalette/CommandPalette.d.ts +5 -0
- package/dist/_types/molecules/ConfirmDialog/ConfirmDialog.d.ts +6 -1
- package/dist/_types/molecules/ContextMenu/ContextMenu.d.ts +3 -3
- package/dist/_types/molecules/CopyButton/CopyButton.d.ts +8 -0
- package/dist/_types/molecules/DatePicker/DatePicker.d.ts +12 -1
- package/dist/_types/molecules/DatePickerField/DatePickerField.d.ts +2 -1
- package/dist/_types/molecules/DateTimeField/DateTimeField.d.ts +8 -1
- package/dist/_types/molecules/DropdownField/DropdownField.d.ts +11 -1
- package/dist/_types/molecules/FileUploadField/FileUploadField.d.ts +2 -1
- package/dist/_types/molecules/FilterBar/FilterBar.d.ts +3 -1
- package/dist/_types/molecules/FloatingToolbar/FloatingToolbar.d.ts +19 -1
- package/dist/_types/molecules/Form/Form.d.ts +8 -0
- package/dist/_types/molecules/Heatmap/Heatmap.d.ts +42 -5
- package/dist/_types/molecules/Heatmap/heatmapScale.d.ts +50 -0
- package/dist/_types/molecules/ImageCropDialog/ImageCropDialog.d.ts +18 -2
- package/dist/_types/molecules/InputField/InputField.d.ts +2 -1
- package/dist/_types/molecules/InputPhoneField/InputPhoneField.d.ts +2 -1
- package/dist/_types/molecules/Menu/Menu.d.ts +5 -0
- package/dist/_types/molecules/Modal/Modal.d.ts +14 -2
- package/dist/_types/molecules/MultiSelectField/MultiSelectField.d.ts +4 -1
- package/dist/_types/molecules/NotificationPanel/NotificationPanel.d.ts +6 -1
- package/dist/_types/molecules/NumberInputField/NumberInputField.d.ts +2 -1
- package/dist/_types/molecules/OrgSwitcher/OrgSwitcher.d.ts +3 -2
- package/dist/_types/molecules/OtpField/OtpField.d.ts +4 -1
- package/dist/_types/molecules/PageIntro/PageIntro.d.ts +1 -1
- package/dist/_types/molecules/Pagination/Pagination.d.ts +26 -5
- package/dist/_types/molecules/PasswordField/PasswordField.d.ts +4 -3
- package/dist/_types/molecules/PrevNextNav/PrevNextNav.d.ts +20 -4
- package/dist/_types/molecules/ProjectCard/ProjectCard.d.ts +8 -2
- package/dist/_types/molecules/RadioField/RadioField.d.ts +8 -0
- package/dist/_types/molecules/RecoveryCodes/RecoveryCodes.d.ts +1 -1
- package/dist/_types/molecules/RecurrenceField/RecurrenceField.d.ts +19 -1
- package/dist/_types/molecules/SelectField/SelectField.d.ts +2 -1
- package/dist/_types/molecules/Sheet/Sheet.d.ts +5 -0
- package/dist/_types/molecules/Table/Table.d.ts +6 -1
- package/dist/_types/molecules/TableOfContents/TableOfContents.d.ts +3 -1
- package/dist/_types/molecules/TextareaField/TextareaField.d.ts +2 -1
- package/dist/_types/molecules/TimeField/TimeField.d.ts +2 -1
- package/dist/_types/molecules/Timeline/Timeline.d.ts +6 -3
- package/dist/_types/molecules/UserMenu/UserMenu.d.ts +3 -2
- package/dist/_types/molecules/_shared/FieldShell.d.ts +130 -0
- package/dist/_types/molecules/_shared/requiredInput.d.ts +8 -0
- package/dist/_types/organisms/AnnotationThread/AnnotationThread.d.ts +3 -2
- package/dist/_types/organisms/DataTable/DataTable.d.ts +1 -1
- package/dist/_types/organisms/PlanningGrid/PlanningGrid.d.ts +12 -1
- package/dist/_types/organisms/Steps/Steps.d.ts +3 -3
- package/dist/_types/sections/Hero/Hero.d.ts +1 -1
- package/dist/_types/sections/SiteHeader/SiteHeader.d.ts +3 -3
- package/dist/accordion.css +1 -1
- package/dist/alert.css +1 -1
- package/dist/alert.js +2 -94
- package/dist/annotation-thread.css +1 -1
- package/dist/annotation-thread.js +38 -31
- package/dist/app-header.css +1 -1
- package/dist/app-header.js +24 -21
- package/dist/app-launcher.css +1 -1
- package/dist/app-launcher.js +42 -35
- package/dist/app-root.js +9 -6
- package/dist/app-shell.js +46 -46
- package/dist/assistant-message.js +1 -1
- package/dist/async-multi-select-field.js +46 -51
- package/dist/async-multi-select.js +2 -128
- package/dist/async-select-field.js +45 -50
- package/dist/async-select.js +2 -117
- package/dist/asyncmultiselect.css +1 -0
- package/dist/autocomplete-field.js +45 -50
- package/dist/avatar-upload.js +82 -69
- package/dist/banner.js +33 -30
- package/dist/brand.css +464 -223
- package/dist/breadcrumb.css +1 -1
- package/dist/breadcrumb.js +25 -20
- package/dist/button.css +1 -1
- package/dist/button.js +44 -41
- package/dist/calendar-planner.css +1 -1
- package/dist/calendar-planner.js +108 -90
- package/dist/calendar-roster.js +84 -69
- package/dist/calendar.css +1 -1
- package/dist/calendar.js +95 -95
- package/dist/card.css +1 -1
- package/dist/card.js +75 -73
- package/dist/carousel.css +1 -1
- package/dist/carousel.js +66 -52
- package/dist/chart.js +213 -206
- package/dist/chat-shell.css +1 -1
- package/dist/chat-shell.js +39 -36
- package/dist/checkbox-field.js +40 -49
- package/dist/checkbox.css +1 -1
- package/dist/clock-widget.js +49 -33
- package/dist/close-button.js +2 -23
- package/dist/code-block.js +45 -39
- package/dist/collapsible.css +1 -1
- package/dist/color-picker-field.js +38 -39
- package/dist/colorpicker.css +1 -1
- package/dist/command-palette.css +1 -1
- package/dist/command-palette.js +39 -31
- package/dist/confirm-dialog.js +29 -22
- package/dist/connector-auth-shell.js +1 -1
- package/dist/connector-consent-page.js +56 -50
- package/dist/connector-external-sign-in-page.js +40 -33
- package/dist/connector-rejection-page.js +28 -25
- package/dist/connector-request-summary.js +2 -37
- package/dist/connector-sign-in-page.js +44 -37
- package/dist/consent.css +1 -1
- package/dist/consent.js +55 -44
- package/dist/container.css +1 -1
- package/dist/context-menu.js +1 -1
- package/dist/conversation-list.css +1 -1
- package/dist/conversation-list.js +42 -33
- package/dist/conversation-thread.js +23 -20
- package/dist/copy-button.js +35 -33
- package/dist/copyable-value.js +40 -40
- package/dist/data-table.js +71 -65
- package/dist/date-picker-field.js +32 -37
- package/dist/date-time-field.js +78 -80
- package/dist/datepicker.css +1 -1
- package/dist/description-list.js +5 -5
- package/dist/docs-search.css +1 -1
- package/dist/docs-search.js +32 -23
- package/dist/dots-button.js +2 -29
- package/dist/dropdown-field.css +1 -1
- package/dist/dropdown-field.js +52 -51
- package/dist/embed-frame.css +1 -1
- package/dist/embed-frame.js +5 -4
- package/dist/error-page.js +2 -2
- package/dist/fieldset.css +1 -1
- package/dist/fieldset.js +6 -6
- package/dist/file-upload-field.js +31 -36
- package/dist/file-upload.js +2 -223
- package/dist/{file-upload.css → fileupload.css} +1 -1
- package/dist/filter-bar.css +1 -1
- package/dist/filter-bar.js +22 -17
- package/dist/floating-dock.css +1 -1
- package/dist/floating-dock.js +35 -29
- package/dist/floating-toolbar.js +22 -15
- package/dist/form.js +56 -52
- package/dist/heatmap.css +1 -1
- package/dist/heatmap.js +96 -36
- package/dist/hero.js +1 -1
- package/dist/highlight.js +1 -1
- package/dist/input-field.js +2 -100
- package/dist/input-phone-field.js +43 -48
- package/dist/input-phone.js +2 -88
- package/dist/input.js +14 -13
- package/dist/inputphone.css +1 -0
- package/dist/label.css +1 -1
- package/dist/language-switcher.css +1 -1
- package/dist/language-switcher.js +28 -25
- package/dist/legal-footer.js +2 -39
- package/dist/link.css +1 -1
- package/dist/list.js +8 -8
- package/dist/loading-region.js +34 -33
- package/dist/loading-state.css +1 -1
- package/dist/loading-state.js +29 -28
- package/dist/logo.css +1 -1
- package/dist/menu-button.js +2 -28
- package/dist/menu.css +1 -1
- package/dist/message-composer.js +32 -29
- package/dist/messages.js +10 -7
- package/dist/modal.css +1 -1
- package/dist/modal.js +2 -61
- package/dist/multi-select-field.js +43 -47
- package/dist/multi-select.js +2 -124
- package/dist/not-found-page.js +1 -1
- package/dist/notification-button.js +2 -32
- package/dist/notification-list.js +23 -16
- package/dist/notification-panel.css +1 -1
- package/dist/notification-panel.js +54 -46
- package/dist/notificationbutton.css +1 -0
- package/dist/number-badge.css +1 -1
- package/dist/number-badge.js +15 -11
- package/dist/number-input-field.js +44 -48
- package/dist/number-input.js +2 -99
- package/dist/onboarding-shell.css +1 -1
- package/dist/onboarding-shell.js +37 -34
- package/dist/org-chart.css +1 -1
- package/dist/org-chart.js +46 -35
- package/dist/org-switcher.css +1 -1
- package/dist/org-switcher.js +26 -23
- package/dist/otp-field.js +44 -47
- package/dist/otp-input.js +2 -115
- package/dist/otpinput.css +1 -0
- package/dist/page-intro.js +1 -1
- package/dist/pagination.css +1 -1
- package/dist/pagination.js +2 -179
- package/dist/paragraph.css +1 -1
- package/dist/paragraph.js +16 -10
- package/dist/password-field.css +1 -1
- package/dist/password-field.js +56 -57
- package/dist/planning-grid.css +1 -1
- package/dist/planning-grid.js +89 -75
- package/dist/prev-next-nav.js +2 -84
- package/dist/prevnextnav.css +1 -0
- package/dist/project-card.css +1 -1
- package/dist/project-card.js +41 -32
- package/dist/public-page-shell.js +2 -39
- package/dist/radio-field.js +29 -39
- package/dist/recurrence-field.css +1 -1
- package/dist/recurrence-field.js +129 -94
- package/dist/search-form.js +2 -61
- package/dist/searchform.css +1 -0
- package/dist/select-field.js +49 -54
- package/dist/select.js +2 -159
- package/dist/sheet.css +1 -1
- package/dist/sheet.js +2 -54
- package/dist/sidebar-nav.css +1 -1
- package/dist/sidebar-nav.js +33 -26
- package/dist/sidebar.css +1 -1
- package/dist/sidebar.js +66 -59
- package/dist/site-footer.js +2 -2
- package/dist/site-header.css +1 -1
- package/dist/site-header.js +37 -34
- package/dist/site-nav.css +1 -1
- package/dist/site-nav.js +17 -14
- package/dist/site-search.css +1 -1
- package/dist/site-search.js +70 -54
- package/dist/skip-link.css +1 -1
- package/dist/slider.css +1 -1
- package/dist/slider.js +2 -34
- package/dist/sparkline.js +37 -35
- package/dist/spinner.js +19 -18
- package/dist/star-rating.js +2 -2
- package/dist/stat-tile.js +27 -23
- package/dist/step-marker.css +1 -1
- package/dist/step-marker.js +19 -16
- package/dist/stepper.css +1 -1
- package/dist/stepper.js +25 -16
- package/dist/switcher-field.js +39 -55
- package/dist/switcher.css +1 -1
- package/dist/table-of-contents.css +1 -1
- package/dist/table-of-contents.js +33 -28
- package/dist/table.css +1 -1
- package/dist/table.js +2 -133
- package/dist/tabs.css +1 -1
- package/dist/tag.css +1 -1
- package/dist/tag.js +16 -10
- package/dist/text.css +1 -1
- package/dist/textarea-field.js +41 -45
- package/dist/theme-switcher.css +1 -1
- package/dist/theme-switcher.js +47 -41
- package/dist/time-field.js +42 -47
- package/dist/time-select.js +2 -84
- package/dist/timeline.js +14 -11
- package/dist/toaster.css +1 -1
- package/dist/toaster.js +32 -29
- package/dist/toggle.js +33 -13
- package/dist/tokens.css +379 -197
- package/dist/tooltip.js +48 -34
- package/dist/tree-view.css +1 -1
- package/dist/tree-view.js +60 -60
- package/dist/typing-indicator.js +2 -29
- package/dist/{typing-indicator.css → typingindicator.css} +1 -1
- package/dist/uptime-bars.js +36 -33
- package/dist/user-menu.css +1 -1
- package/dist/user-menu.js +29 -26
- package/package.json +2 -2
- package/src/tokens/colors.ts +6 -6
- package/src/tokens/components/accordion.css +1 -1
- package/src/tokens/components/app-header.css +2 -2
- package/src/tokens/components/async-multi-select.css +1 -1
- package/src/tokens/components/breadcrumb.css +2 -2
- package/src/tokens/components/button.css +9 -2
- package/src/tokens/components/card.css +3 -3
- package/src/tokens/components/checkbox.css +5 -5
- package/src/tokens/components/collapsible.css +1 -0
- package/src/tokens/components/embed-frame.css +8 -0
- package/src/tokens/components/file-upload.css +5 -5
- package/src/tokens/components/floating-dock.css +2 -2
- package/src/tokens/components/floating-panel.css +2 -2
- package/src/tokens/components/input.css +2 -2
- package/src/tokens/components/kbd.css +1 -1
- package/src/tokens/components/label.css +2 -0
- package/src/tokens/components/link.css +20 -6
- package/src/tokens/components/logo.css +1 -1
- package/src/tokens/components/message-bubble.css +2 -2
- package/src/tokens/components/multi-select.css +2 -2
- package/src/tokens/components/number-badge.css +3 -3
- package/src/tokens/components/otp-input.css +1 -1
- package/src/tokens/components/select.css +2 -2
- package/src/tokens/components/sidebar.css +2 -2
- package/src/tokens/components/site-header.css +5 -5
- package/src/tokens/components/slider.css +1 -1
- package/src/tokens/components/spinner.css +3 -3
- package/src/tokens/components/step.css +4 -4
- package/src/tokens/components/switcher.css +3 -3
- package/src/tokens/components/tabs.css +5 -4
- package/src/tokens/components/tag.css +4 -4
- package/src/tokens/components/text-inline.css +3 -1
- package/src/tokens/components/text.css +2 -2
- package/src/tokens/components/textarea.css +2 -2
- package/src/tokens/components/tooltip.css +2 -2
- package/src/tokens/components/typing-indicator.css +1 -1
- package/src/tokens/deprecated-aliases.css +74 -0
- package/src/tokens/global/colors.css +2 -2
- package/src/tokens/global/shadow.css +4 -4
- package/src/tokens/index.css +6 -0
- package/src/tokens/molecules/alert.css +1 -0
- package/src/tokens/molecules/annotation-thread.css +0 -2
- package/src/tokens/molecules/app-launcher.css +1 -1
- package/src/tokens/molecules/calendar-planner.css +2 -1
- package/src/tokens/molecules/calendar-roster.css +9 -9
- package/src/tokens/molecules/calendar.css +5 -4
- package/src/tokens/molecules/carousel.css +3 -3
- package/src/tokens/molecules/chart.css +3 -3
- package/src/tokens/molecules/chat-shell.css +2 -2
- package/src/tokens/molecules/color-picker.css +2 -2
- package/src/tokens/molecules/command-palette.css +1 -0
- package/src/tokens/molecules/consent.css +3 -3
- package/src/tokens/molecules/conversation-list.css +1 -0
- package/src/tokens/molecules/date-picker.css +1 -1
- package/src/tokens/molecules/docs-search.css +1 -1
- package/src/tokens/molecules/dropdown-field.css +2 -1
- package/src/tokens/molecules/filter-bar.css +1 -1
- package/src/tokens/molecules/heatmap.css +33 -6
- package/src/tokens/molecules/loading-state.css +2 -2
- package/src/tokens/molecules/menu.css +2 -1
- package/src/tokens/molecules/message-composer.css +1 -1
- package/src/tokens/molecules/modal.css +5 -5
- package/src/tokens/molecules/notification-panel.css +2 -2
- package/src/tokens/molecules/org-chart.css +4 -4
- package/src/tokens/molecules/pagination.css +1 -0
- package/src/tokens/molecules/password-field.css +2 -2
- package/src/tokens/molecules/planning-grid.css +7 -7
- package/src/tokens/molecules/recurrence-field.css +5 -0
- package/src/tokens/molecules/search-form.css +1 -1
- package/src/tokens/molecules/sheet.css +2 -2
- package/src/tokens/molecules/site-nav.css +3 -1
- package/src/tokens/molecules/site-search.css +4 -4
- package/src/tokens/molecules/table-of-contents.css +1 -1
- package/src/tokens/molecules/table.css +3 -3
- package/src/tokens/molecules/toast.css +1 -0
- package/src/tokens/scss/_index.legacy.scss +1 -0
- package/src/tokens/scss/_index.scss +1 -0
- package/src/tokens/scss/components/_accordion.scss +4 -1
- package/src/tokens/scss/components/_async-multi-select.scss +4 -1
- package/src/tokens/scss/components/_breadcrumb.scss +4 -1
- package/src/tokens/scss/components/_button.scss +7 -2
- package/src/tokens/scss/components/_card.scss +1 -1
- package/src/tokens/scss/components/_checkbox.scss +6 -2
- package/src/tokens/scss/components/_collapsible.scss +1 -0
- package/src/tokens/scss/components/_embed-frame.scss +9 -0
- package/src/tokens/scss/components/_file-upload.scss +4 -1
- package/src/tokens/scss/components/_floating-dock.scss +6 -2
- package/src/tokens/scss/components/_label.scss +1 -0
- package/src/tokens/scss/components/_link.scss +16 -6
- package/src/tokens/scss/components/_logo.scss +4 -1
- package/src/tokens/scss/components/_number-badge.scss +6 -2
- package/src/tokens/scss/components/_otp-input.scss +4 -1
- package/src/tokens/scss/components/_site-header.scss +1 -1
- package/src/tokens/scss/components/_slider.scss +4 -1
- package/src/tokens/scss/components/_spinner.scss +3 -3
- package/src/tokens/scss/components/_step.scss +6 -2
- package/src/tokens/scss/components/_switcher.scss +5 -2
- package/src/tokens/scss/components/_tabs.scss +7 -2
- package/src/tokens/scss/components/_tag.scss +6 -2
- package/src/tokens/scss/components/_text-inline.scss +2 -1
- package/src/tokens/scss/components/_text.scss +4 -1
- package/src/tokens/scss/components/_typing-indicator.scss +4 -1
- package/src/tokens/scss/global/_colors.scss +6 -2
- package/src/tokens/scss/global/_shadow.scss +4 -4
- package/src/tokens/scss/molecules/_alert.scss +1 -0
- package/src/tokens/scss/molecules/_annotation-thread.scss +0 -2
- package/src/tokens/scss/molecules/_app-launcher.scss +4 -1
- package/src/tokens/scss/molecules/_calendar-planner.scss +1 -0
- package/src/tokens/scss/molecules/_calendar.scss +9 -3
- package/src/tokens/scss/molecules/_carousel.scss +8 -3
- package/src/tokens/scss/molecules/_chart.scss +1 -1
- package/src/tokens/scss/molecules/_color-picker.scss +6 -2
- package/src/tokens/scss/molecules/_command-palette.scss +1 -0
- package/src/tokens/scss/molecules/_consent.scss +4 -1
- package/src/tokens/scss/molecules/_conversation-list.scss +1 -0
- package/src/tokens/scss/molecules/_date-picker.scss +4 -1
- package/src/tokens/scss/molecules/_docs-search.scss +4 -1
- package/src/tokens/scss/molecules/_dropdown-field.scss +1 -0
- package/src/tokens/scss/molecules/_filter-bar.scss +4 -1
- package/src/tokens/scss/molecules/_heatmap.scss +15 -2
- package/src/tokens/scss/molecules/_loading-state.scss +6 -2
- package/src/tokens/scss/molecules/_menu.scss +2 -1
- package/src/tokens/scss/molecules/_modal.scss +7 -3
- package/src/tokens/scss/molecules/_notification-panel.scss +6 -2
- package/src/tokens/scss/molecules/_org-chart.scss +6 -2
- package/src/tokens/scss/molecules/_pagination.scss +1 -0
- package/src/tokens/scss/molecules/_password-field.scss +4 -1
- package/src/tokens/scss/molecules/_planning-grid.scss +3 -2
- package/src/tokens/scss/molecules/_recurrence-field.scss +5 -0
- package/src/tokens/scss/molecules/_search-form.scss +4 -1
- package/src/tokens/scss/molecules/_sheet.scss +6 -2
- package/src/tokens/scss/molecules/_site-nav.scss +2 -1
- package/src/tokens/scss/molecules/_site-search.scss +10 -4
- package/src/tokens/scss/molecules/_table-of-contents.scss +4 -1
- package/src/tokens/scss/molecules/_table.scss +4 -1
- package/src/tokens/scss/molecules/_toast.scss +1 -0
- package/src/tokens/surface-dark-derived.css +1 -0
- package/src/tokens/surface-invert.css +57 -34
- package/src/tokens/surface-public.css +4 -2
- package/src/tokens/tokens.json +116 -11
- package/dist/async-multi-select.css +0 -1
- package/dist/input-phone.css +0 -1
- package/dist/notification-button.css +0 -1
- package/dist/otp-input.css +0 -1
- package/dist/prev-next-nav.css +0 -1
- package/dist/search-form.css +0 -1
- /package/dist/{async-select.css → asyncselect.css} +0 -0
- /package/dist/{close-button.css → closebutton.css} +0 -0
- /package/dist/{connector-request-summary.css → connectorrequestsummary.css} +0 -0
- /package/dist/{dots-button.css → dotsbutton.css} +0 -0
- /package/dist/{input-field.css → inputfield.css} +0 -0
- /package/dist/{legal-footer.css → legalfooter.css} +0 -0
- /package/dist/{menu-button.css → menubutton.css} +0 -0
- /package/dist/{multi-select.css → multiselect.css} +0 -0
- /package/dist/{number-input.css → numberinput.css} +0 -0
- /package/dist/{public-page-shell.css → publicpageshell.css} +0 -0
- /package/dist/{time-select.css → timeselect.css} +0 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type ComponentPropsWithoutRef } from 'react';
|
|
2
2
|
import './NumberInputField.css';
|
|
3
|
+
import { type FieldOptionalProps } from '../_shared/FieldShell';
|
|
3
4
|
import { type NumberInputCommitMode } from '../../atoms/NumberInput/NumberInput';
|
|
4
|
-
export interface NumberInputFieldProps extends Omit<ComponentPropsWithoutRef<'input'>, 'size' | 'type' | 'value' | 'defaultValue' | 'onChange'
|
|
5
|
+
export interface NumberInputFieldProps extends Omit<ComponentPropsWithoutRef<'input'>, 'size' | 'type' | 'value' | 'defaultValue' | 'onChange'>, FieldOptionalProps {
|
|
5
6
|
/** `id` del control. Si no se pasa, se genera con `useId`. */
|
|
6
7
|
id?: string;
|
|
7
8
|
label: string;
|
|
@@ -35,8 +35,9 @@ export interface OrgSwitcherProps {
|
|
|
35
35
|
renderLink?: (props: MenuRenderLinkProps) => ReactNode;
|
|
36
36
|
/**
|
|
37
37
|
* Se añade DESPUÉS de las clases propias (el consumidor añade, no sustituye).
|
|
38
|
-
* Va al disparador
|
|
39
|
-
*
|
|
38
|
+
* **Va al disparador, que pinta el componente**: el panel sale por un
|
|
39
|
+
* portal y se personaliza con tokens (regla de `className` en componentes
|
|
40
|
+
* con portal, CLAUDE.md § Base UI).
|
|
40
41
|
*/
|
|
41
42
|
className?: string;
|
|
42
43
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import './OtpField.css';
|
|
2
|
-
|
|
2
|
+
import { type FieldOptionalProps } from '../_shared/FieldShell';
|
|
3
|
+
export interface OtpFieldProps extends FieldOptionalProps {
|
|
3
4
|
/** `id` del control. Si no se pasa, se genera con `useId`. */
|
|
4
5
|
id?: string;
|
|
5
6
|
label: string;
|
|
@@ -17,6 +18,8 @@ export interface OtpFieldProps {
|
|
|
17
18
|
name?: string;
|
|
18
19
|
disabled?: boolean;
|
|
19
20
|
readOnly?: boolean;
|
|
21
|
+
/** Obligatorio: `required` nativo en cada celda (ver `OtpInput`). */
|
|
22
|
+
required?: boolean;
|
|
20
23
|
/** Marca el control en error sin mensaje. Un `errorMessage` ya lo implica. */
|
|
21
24
|
error?: boolean;
|
|
22
25
|
/** Mensaje de error: se anuncia (`role="alert"`) y pone el control en error. */
|
|
@@ -14,7 +14,7 @@ export interface PageIntroProps {
|
|
|
14
14
|
title: ReactNode;
|
|
15
15
|
/**
|
|
16
16
|
* La frase bajo el título, opcional: va como entradilla (`Paragraph
|
|
17
|
-
* size="
|
|
17
|
+
* size="lg"`, un peldaño por encima del cuerpo). Termina en punto (ver
|
|
18
18
|
* Foundations → Redacción). Lo que no llegue a frase, o cabe en el título,
|
|
19
19
|
* o va en `children`.
|
|
20
20
|
*/
|
|
@@ -1,6 +1,15 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type AnchorHTMLAttributes, type ComponentType, type ReactNode } from 'react';
|
|
2
2
|
import type { SelectOption } from '../../atoms/Select/Select';
|
|
3
3
|
import './Pagination.css';
|
|
4
|
+
/**
|
|
5
|
+
* Lo que recibe `renderLink`: los atributos del `<a>` que pintaría el
|
|
6
|
+
* paginador. Hay que reenviarlos **todos** al enlace del router.
|
|
7
|
+
*/
|
|
8
|
+
export type PaginationRenderLinkProps = AnchorHTMLAttributes<HTMLAnchorElement> & {
|
|
9
|
+
href: string;
|
|
10
|
+
className: string;
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
};
|
|
4
13
|
/**
|
|
5
14
|
* Los textos que el paginador emite por su cuenta. Los nombres calcan el
|
|
6
15
|
* espacio `pagination` del catálogo de la suite, así que montarlo es mapear
|
|
@@ -91,9 +100,19 @@ export interface PaginationProps {
|
|
|
91
100
|
/** Mostrar "X resultados" antes de los controles. Default: false */
|
|
92
101
|
showTotal?: boolean;
|
|
93
102
|
/**
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
103
|
+
* Pinta cada enlace del paginador con el `Link` del router:
|
|
104
|
+
* `renderLink={(props) => <Link {...props} />}`. Recibe todos los atributos
|
|
105
|
+
* del `<a>` (`href`, `className`, `aria-label`, `onClick`, `children`) y
|
|
106
|
+
* tiene que reenviarlos todos. Sin él, un `<a>` (recarga completa).
|
|
107
|
+
*
|
|
108
|
+
* Es una función: desde un Server Component no cruza al cliente. Ahí, o se
|
|
109
|
+
* monta el paginador en un fichero de cliente propio, o se navega con
|
|
110
|
+
* `<a>` (sin `renderLink`).
|
|
111
|
+
*/
|
|
112
|
+
renderLink?: (props: PaginationRenderLinkProps) => ReactNode;
|
|
113
|
+
/**
|
|
114
|
+
* @deprecated Usa `renderLink` (`renderLink={(props) => <Link {...props} />}`).
|
|
115
|
+
* Sigue funcionando y avisa en desarrollo; se retira en la v52.
|
|
97
116
|
*/
|
|
98
117
|
linkComponent?: ComponentType<any>;
|
|
99
118
|
/** Tamaño del componente. Default: "md" */
|
|
@@ -102,6 +121,8 @@ export interface PaginationProps {
|
|
|
102
121
|
* `aria-label` del `<nav>`. Sin default: cuando no se pasa, sale de
|
|
103
122
|
* `pagination.label` del `BrandMessagesProvider`.
|
|
104
123
|
*/
|
|
124
|
+
'aria-label'?: string;
|
|
125
|
+
/** @deprecated Usa `aria-label`. Sigue funcionando y avisa en desarrollo; se retira en la v52. */
|
|
105
126
|
ariaLabel?: string;
|
|
106
127
|
/** `aria-label` de cada botón/enlace de página. Sin default: `pagination.goToPage`. */
|
|
107
128
|
pageLabel?: (page: number) => string;
|
|
@@ -120,4 +141,4 @@ export interface PaginationProps {
|
|
|
120
141
|
totalLabel?: (total: number) => string;
|
|
121
142
|
className?: string;
|
|
122
143
|
}
|
|
123
|
-
export declare function Pagination({ mode, total, pageCount, page, pageSize, hrefs, previousHref, nextHref, onPrevious, onNext, onPageChange, hrefBuilder: hrefBuilderProp, linkComponent, onPageSizeChange, pageSizeOptions, afterPageSize, showTotal, size, ariaLabel, pageLabel, previousLabel, nextLabel, pagesGroupLabel, pageSizeLabel, totalLabel, className, }: PaginationProps): import("react/jsx-runtime").JSX.Element | null;
|
|
144
|
+
export declare function Pagination({ mode, total, pageCount, page, pageSize, hrefs, previousHref, nextHref, onPrevious, onNext, onPageChange, hrefBuilder: hrefBuilderProp, renderLink: renderLinkProp, linkComponent, onPageSizeChange, pageSizeOptions, afterPageSize, showTotal, size, 'aria-label': ariaLabelProp, ariaLabel: ariaLabelDeprecated, pageLabel, previousLabel, nextLabel, pagesGroupLabel, pageSizeLabel, totalLabel, className, }: PaginationProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import './PasswordField.css';
|
|
2
|
+
import { type FieldOptionalProps } from '../_shared/FieldShell';
|
|
2
3
|
/**
|
|
3
4
|
* Los dos textos que el campo emite por su cuenta: las dos caras del
|
|
4
5
|
* interruptor de mostrar/ocultar. Son cromo —dicen lo mismo en toda la
|
|
@@ -13,11 +14,11 @@ export interface PasswordFieldMessages {
|
|
|
13
14
|
/** Nombre accesible del interruptor con la contraseña a la vista. */
|
|
14
15
|
hide: string;
|
|
15
16
|
}
|
|
16
|
-
export interface PasswordFieldProps extends Omit<React.ComponentPropsWithoutRef<'input'>, 'size' | 'type'
|
|
17
|
+
export interface PasswordFieldProps extends Omit<React.ComponentPropsWithoutRef<'input'>, 'size' | 'type'>, FieldOptionalProps {
|
|
17
18
|
/**
|
|
18
19
|
* Etiqueta del campo. **Opcional**: si se omite, el componente renderiza solo
|
|
19
|
-
* el campo + toggle
|
|
20
|
-
*
|
|
20
|
+
* el campo + toggle, sin `<label>`, para componerlo dentro de una capa de
|
|
21
|
+
* formulario propia (el error y la ayuda se pintan igual si se pasan).
|
|
21
22
|
*/
|
|
22
23
|
label?: string;
|
|
23
24
|
/**
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import type { ComponentType, MouseEvent, ReactNode } from 'react';
|
|
1
|
+
import type { AnchorHTMLAttributes, ComponentType, MouseEvent, ReactNode } from 'react';
|
|
2
2
|
import './PrevNextNav.css';
|
|
3
|
+
/**
|
|
4
|
+
* Lo que recibe `renderLink`: los atributos del `<a>` que pintaría el
|
|
5
|
+
* control. Hay que reenviarlos **todos** al enlace del router.
|
|
6
|
+
*/
|
|
7
|
+
export type PrevNextNavRenderLinkProps = AnchorHTMLAttributes<HTMLAnchorElement> & {
|
|
8
|
+
href: string;
|
|
9
|
+
className: string;
|
|
10
|
+
children: ReactNode;
|
|
11
|
+
};
|
|
3
12
|
export interface PrevNextNavProps {
|
|
4
13
|
/** href del enlace anterior. Mutuamente exclusivo con prevOnClick */
|
|
5
14
|
prevHref?: string;
|
|
@@ -44,8 +53,15 @@ export interface PrevNextNavProps {
|
|
|
44
53
|
*/
|
|
45
54
|
labelId?: string;
|
|
46
55
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
56
|
+
* Pinta los controles con `href` con el `Link` del router:
|
|
57
|
+
* `renderLink={(props) => <Link {...props} />}`. Recibe todos los atributos
|
|
58
|
+
* del `<a>` (`href`, `className`, `aria-label`, `onClick`, `children`) y
|
|
59
|
+
* tiene que reenviarlos todos. Sin él, un `<a>`.
|
|
60
|
+
*/
|
|
61
|
+
renderLink?: (props: PrevNextNavRenderLinkProps) => ReactNode;
|
|
62
|
+
/**
|
|
63
|
+
* @deprecated Usa `renderLink` (`renderLink={(props) => <Link {...props} />}`).
|
|
64
|
+
* Sigue funcionando y avisa en desarrollo; se retira en la v52.
|
|
49
65
|
*/
|
|
50
66
|
linkComponent?: ComponentType<any>;
|
|
51
67
|
/** Variante de densidad. Default: "md" */
|
|
@@ -64,4 +80,4 @@ export interface PrevNextNavMessages {
|
|
|
64
80
|
/** Rótulo del control siguiente. */
|
|
65
81
|
next: string;
|
|
66
82
|
}
|
|
67
|
-
export declare function PrevNextNav({ prevHref, nextHref, prevOnClick, nextOnClick, prevLabel, nextLabel, prevTitle, nextTitle, label, labelId, linkComponent, size, className, }: PrevNextNavProps): import("react/jsx-runtime").JSX.Element;
|
|
83
|
+
export declare function PrevNextNav({ prevHref, nextHref, prevOnClick, nextOnClick, prevLabel, nextLabel, prevTitle, nextTitle, label, labelId, renderLink: renderLinkProp, linkComponent, size, className, }: PrevNextNavProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
import { type HeadingLevel, type HeadingSize } from '../../atoms/Heading/Heading';
|
|
3
|
-
import { type TagVariant } from '../../atoms/Tag/Tag';
|
|
3
|
+
import { type TagTone, type TagVariant } from '../../atoms/Tag/Tag';
|
|
4
4
|
import type { CardMedia } from '../Card/Card';
|
|
5
5
|
import './ProjectCard.css';
|
|
6
6
|
/**
|
|
@@ -12,11 +12,17 @@ export interface ProjectCardMessages {
|
|
|
12
12
|
/** Nombre accesible de la lista de etiquetas de categoría. */
|
|
13
13
|
tags: string;
|
|
14
14
|
}
|
|
15
|
-
export type { TagVariant };
|
|
15
|
+
export type { TagTone, TagVariant };
|
|
16
16
|
export interface ProjectCardTag {
|
|
17
17
|
/** Clave de React. Sin ella se usa la etiqueta. */
|
|
18
18
|
id?: string;
|
|
19
19
|
label: string;
|
|
20
|
+
/** Color de la etiqueta (el `tone` de `Tag`). Default `'neutral'`. */
|
|
21
|
+
tone?: TagTone;
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Usa `tone`. `variant: 'danger'` es `tone: 'error'`. Sigue
|
|
24
|
+
* funcionando, con un aviso en desarrollo, hasta la v52.
|
|
25
|
+
*/
|
|
20
26
|
variant?: TagVariant;
|
|
21
27
|
}
|
|
22
28
|
export interface ProjectCardProps {
|
|
@@ -3,6 +3,14 @@ import './RadioField.css';
|
|
|
3
3
|
export interface RadioFieldProps extends Omit<ComponentPropsWithoutRef<'input'>, 'size' | 'type' | 'id'> {
|
|
4
4
|
/** Texto de la opción, a la derecha de la marca. Acepta JSX (un enlace, por ejemplo). */
|
|
5
5
|
label: ReactNode;
|
|
6
|
+
/**
|
|
7
|
+
* Oculta el texto de la opción **visualmente**, sin quitarlo del árbol de
|
|
8
|
+
* accesibilidad: el radio conserva su nombre. Misma prop que en
|
|
9
|
+
* `CheckboxField` y `SwitcherField`. Default: `false`.
|
|
10
|
+
* Sin valor, lo decide quien lo envuelva: dentro de un `FieldRow` que no
|
|
11
|
+
* es la primera de la lista, la etiqueta se oculta sola.
|
|
12
|
+
*/
|
|
13
|
+
labelHidden?: boolean;
|
|
6
14
|
/** `id` del control. Si no se pasa, se genera con `useId`. */
|
|
7
15
|
id?: string;
|
|
8
16
|
/** Talla del sistema. Sin ella, la del `Form` que lo envuelva; sin `Form`, `md`. */
|
|
@@ -10,7 +10,7 @@ export interface RecoveryCodesLabels {
|
|
|
10
10
|
/**
|
|
11
11
|
* Aviso del botón de copiar si el portapapeles falla (contexto no seguro,
|
|
12
12
|
* permiso denegado). Opcional: sin él sale de `copy.error` del
|
|
13
|
-
* `BrandMessagesProvider`, y sin ninguno de los dos
|
|
13
|
+
* `BrandMessagesProvider`, y sin ninguno de los dos, del castellano de respaldo.
|
|
14
14
|
*/
|
|
15
15
|
error?: string;
|
|
16
16
|
}
|
|
@@ -57,8 +57,26 @@ export interface RecurrenceFieldProps {
|
|
|
57
57
|
* texto del catálogo, pásale `recurrenceField.legend`.
|
|
58
58
|
*/
|
|
59
59
|
legend?: ReactNode;
|
|
60
|
+
/**
|
|
61
|
+
* Oculta la leyenda a la vista (sigue nombrando el grupo para el lector de
|
|
62
|
+
* pantalla): la `legendHidden` del `Fieldset`. Por defecto `false`. Sin
|
|
63
|
+
* valor, lo decide quien lo envuelva: dentro de un `FieldRow` que no es la
|
|
64
|
+
* primera de la lista, se oculta sola, como la etiqueta de los demás campos.
|
|
65
|
+
* Sin `legend` no hace nada.
|
|
66
|
+
*/
|
|
67
|
+
labelHidden?: boolean;
|
|
60
68
|
/** Deshabilita el editor entero. */
|
|
61
69
|
disabled?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Texto de ayuda del editor entero, bajo los campos. Describe el grupo
|
|
72
|
+
* (`aria-describedby` en el `fieldset`, o en el `role="group"` sin `legend`).
|
|
73
|
+
*/
|
|
74
|
+
helperText?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Mensaje de error del editor entero (una regla que no cuadra con el
|
|
77
|
+
* evento). Se anuncia (`role="alert"`) y describe el grupo, como la ayuda.
|
|
78
|
+
*/
|
|
79
|
+
errorMessage?: string;
|
|
62
80
|
/** Talla de los campos. Sin ella, la del contexto de formulario. */
|
|
63
81
|
size?: 'sm' | 'md' | 'lg';
|
|
64
82
|
/** Locale de los nombres de los días y del campo de fecha. Default `'es-ES'`. */
|
|
@@ -95,4 +113,4 @@ export interface RecurrenceFieldProps {
|
|
|
95
113
|
* Es **controlado**, como el resto de campos del sistema: recibe `value` y
|
|
96
114
|
* llama a `onValueChange` con el valor entero. `null` es «no se repite».
|
|
97
115
|
*/
|
|
98
|
-
export declare function RecurrenceField({ value, onValueChange, id: idProp, legend, disabled, size, locale, weekStartsOn, minDate, maxDate, today, className, frequencyLabel, weekdaysLabel, endLabel, }: RecurrenceFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
116
|
+
export declare function RecurrenceField({ value, onValueChange, id: idProp, legend, labelHidden: labelHiddenProp, disabled, helperText, errorMessage, size, locale, weekStartsOn, minDate, maxDate, today, className, frequencyLabel, weekdaysLabel, endLabel, }: RecurrenceFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import './SelectField.css';
|
|
2
|
+
import { type FieldOptionalProps } from '../_shared/FieldShell';
|
|
2
3
|
import type { SelectOptionOrGroup } from '../../atoms/Select/Select';
|
|
3
|
-
export interface SelectFieldProps {
|
|
4
|
+
export interface SelectFieldProps extends FieldOptionalProps {
|
|
4
5
|
/** `id` del control. Si no se pasa, se genera con `useId`. */
|
|
5
6
|
id?: string;
|
|
6
7
|
label: string;
|
|
@@ -54,6 +54,11 @@ export interface SheetProps extends Omit<React.ComponentPropsWithoutRef<'div'>,
|
|
|
54
54
|
* Sirve para desmontar el panel solo después de que haya salido de pantalla.
|
|
55
55
|
*/
|
|
56
56
|
onAnimationEndCapture?: (event: React.AnimationEvent) => void;
|
|
57
|
+
/**
|
|
58
|
+
* Se añade DESPUÉS de las clases propias (el consumidor añade, no sustituye).
|
|
59
|
+
* **Va al panel; el disparador, si lo hay, es tuyo y ya lleva tus clases**
|
|
60
|
+
* (regla de `className` en componentes con portal, CLAUDE.md § Base UI).
|
|
61
|
+
*/
|
|
57
62
|
className?: string;
|
|
58
63
|
}
|
|
59
64
|
/**
|
|
@@ -73,7 +73,12 @@ export interface TableRowProps extends Omit<React.HTMLAttributes<HTMLTableRowEle
|
|
|
73
73
|
onClick?: () => void;
|
|
74
74
|
/** Alternativa explícita a onClick para control manual */
|
|
75
75
|
interactive?: boolean;
|
|
76
|
-
/**
|
|
76
|
+
/**
|
|
77
|
+
* Marca la fila como seleccionada: **solo visual** (`table__row--selected`,
|
|
78
|
+
* tinta y peso, sin fondo). No emite `aria-selected`, que fuera de un
|
|
79
|
+
* `role="grid"` no es válido en una fila: el estado lo anuncia el control
|
|
80
|
+
* de la fila —normalmente una casilla, como en `DataTable`—.
|
|
81
|
+
*/
|
|
77
82
|
selected?: boolean;
|
|
78
83
|
/**
|
|
79
84
|
* Nombre accesible de la fila. Por defecto el rol `row` toma su nombre del
|
|
@@ -20,6 +20,8 @@ export interface TableOfContentsProps extends Omit<React.ComponentPropsWithoutRe
|
|
|
20
20
|
* Nombre accesible del `nav`. **Sin default**: sin él, sale de
|
|
21
21
|
* `tableOfContents.label` del `BrandMessagesProvider`.
|
|
22
22
|
*/
|
|
23
|
+
'aria-label'?: string;
|
|
24
|
+
/** @deprecated Usa `aria-label`. Sigue funcionando y avisa en desarrollo; se retira en la v52. */
|
|
23
25
|
ariaLabel?: string;
|
|
24
26
|
/** Rótulo visible sobre la lista. Sin él, no se pinta ninguno. */
|
|
25
27
|
title?: string;
|
|
@@ -44,7 +46,7 @@ export interface TableOfContentsProps extends Omit<React.ComponentPropsWithoutRe
|
|
|
44
46
|
* sigue al hash y para uno estático.
|
|
45
47
|
*
|
|
46
48
|
* `{...rest}` (`id`, `data-*`, `role`…) se reenvía al `<nav>`. El nombre
|
|
47
|
-
* accesible
|
|
49
|
+
* accesible es `aria-label`.
|
|
48
50
|
*/
|
|
49
51
|
/**
|
|
50
52
|
* El único texto que el índice dice por su cuenta, y es **cromo**: «En esta
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type ComponentPropsWithoutRef } from 'react';
|
|
2
2
|
import './TextareaField.css';
|
|
3
|
-
|
|
3
|
+
import { type FieldOptionalProps } from '../_shared/FieldShell';
|
|
4
|
+
export interface TextareaFieldProps extends Omit<ComponentPropsWithoutRef<'textarea'>, 'value' | 'defaultValue' | 'rows'>, FieldOptionalProps {
|
|
4
5
|
id: string;
|
|
5
6
|
label: string;
|
|
6
7
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { type FieldOptionalProps } from '../_shared/FieldShell';
|
|
1
2
|
import type { TimeValue } from '../../atoms/TimeSelect/TimeSelect';
|
|
2
3
|
import './TimeField.css';
|
|
3
|
-
export interface TimeFieldProps {
|
|
4
|
+
export interface TimeFieldProps extends FieldOptionalProps {
|
|
4
5
|
/** `id` del control. Si no se pasa, se genera con `useId`. */
|
|
5
6
|
id?: string;
|
|
6
7
|
label: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ComponentPropsWithoutRef, type ReactNode } from 'react';
|
|
2
|
-
import { type StepMarkerTone } from '../../atoms/StepMarker/StepMarker';
|
|
2
|
+
import { type StepMarkerTone, type StepMarkerToneDeprecated } from '../../atoms/StepMarker/StepMarker';
|
|
3
3
|
import type { IconName } from '../../atoms/Icon/Icon';
|
|
4
4
|
import './Timeline.css';
|
|
5
5
|
/**
|
|
@@ -14,8 +14,11 @@ export interface TimelineMessages {
|
|
|
14
14
|
/** Lo que se lee tras el título del hito vigente: «estado actual». */
|
|
15
15
|
current: string;
|
|
16
16
|
}
|
|
17
|
-
/**
|
|
18
|
-
|
|
17
|
+
/**
|
|
18
|
+
* El tono de la marca: los mismos ocho que `StepMarker`, sin traducción. Admite
|
|
19
|
+
* todavía el obsoleto `danger` (hoy `error`), que la marca traduce y avisa.
|
|
20
|
+
*/
|
|
21
|
+
export type TimelineTone = StepMarkerTone | StepMarkerToneDeprecated;
|
|
19
22
|
/** Un hito del historial: un cambio de estado, con su fecha y quien lo firmó. */
|
|
20
23
|
export interface TimelineItem {
|
|
21
24
|
id: string;
|
|
@@ -32,8 +32,9 @@ export interface UserMenuProps {
|
|
|
32
32
|
defaultOpen?: boolean;
|
|
33
33
|
/**
|
|
34
34
|
* Se añade DESPUÉS de las clases propias (el consumidor añade, no sustituye).
|
|
35
|
-
* Va al disparador
|
|
36
|
-
*
|
|
35
|
+
* **Va al disparador, que pinta el componente**: el panel sale por un
|
|
36
|
+
* portal y se personaliza con tokens (regla de `className` en componentes
|
|
37
|
+
* con portal, CLAUDE.md § Base UI).
|
|
37
38
|
*/
|
|
38
39
|
className?: string;
|
|
39
40
|
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
import type { FormSize } from '../../constants/form-size';
|
|
3
|
+
/**
|
|
4
|
+
* El espacio `field` del catálogo: los textos que pinta el armazón común de
|
|
5
|
+
* los campos. Como todo el catálogo, opcional en `BrandMessages`: sin él
|
|
6
|
+
* la marca cae al castellano «(opcional)».
|
|
7
|
+
*/
|
|
8
|
+
export interface FieldMessages {
|
|
9
|
+
/** La marca tras la etiqueta de un campo `optional`. Castellano: «(opcional)». */
|
|
10
|
+
optional: string;
|
|
11
|
+
/**
|
|
12
|
+
* La descripción oculta que anuncia un campo obligatorio cuyo disparador es
|
|
13
|
+
* un botón, que no admite `aria-required` (D73): `ColorPickerField` y
|
|
14
|
+
* `DropdownField`. Castellano: «obligatorio».
|
|
15
|
+
*/
|
|
16
|
+
required: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* La marca de campo opcional (D70), común a todos los `*Field`. Se marca lo
|
|
20
|
+
* **opcional**, no lo obligatorio: en un formulario donde casi todo es
|
|
21
|
+
* obligatorio, lo que hay que señalar es la excepción. Es explícita —un campo
|
|
22
|
+
* sin `required` no la lleva sola—, porque un campo suelto (un buscador, un
|
|
23
|
+
* filtro) no es «opcional» de ningún formulario.
|
|
24
|
+
*/
|
|
25
|
+
export interface FieldOptionalProps {
|
|
26
|
+
/**
|
|
27
|
+
* Pinta « (opcional)» tras la etiqueta, en la tinta apagada de la etiqueta.
|
|
28
|
+
* Va dentro del `<label>`, así que el lector de pantalla la lee como parte
|
|
29
|
+
* del nombre del campo. No se combina con `required`. Sin valor, lo decide
|
|
30
|
+
* el `Form` que lo envuelva: con `markOptional`, todo campo sin `required`
|
|
31
|
+
* la lleva (D74); `optional={false}` la apaga en un campo concreto. Sin
|
|
32
|
+
* `Form markOptional`, por defecto `false`.
|
|
33
|
+
*/
|
|
34
|
+
optional?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Texto de la marca de opcional. **Sin default en la prop**: sin ella, sale
|
|
37
|
+
* de `field.optional` del `BrandMessagesProvider` y, si el catálogo no la
|
|
38
|
+
* trae, del castellano «(opcional)».
|
|
39
|
+
*/
|
|
40
|
+
optionalLabel?: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Lo obligatorio de un campo cuyo disparador es un botón (D73). ARIA 1.2 no
|
|
44
|
+
* admite `aria-required` ni en `role="button"` ni en `role="group"`, así que
|
|
45
|
+
* lo obligatorio va en la **descripción** del disparador: un texto oculto
|
|
46
|
+
* («obligatorio») enlazado por su `aria-describedby`, detrás de la ayuda y el
|
|
47
|
+
* error. El `<form>` lo sigue validando el campo oculto con `required`.
|
|
48
|
+
*/
|
|
49
|
+
export interface FieldRequiredProps {
|
|
50
|
+
/**
|
|
51
|
+
* Texto que anuncia lo obligatorio. **Sin default en la prop**: sin ella,
|
|
52
|
+
* sale de `field.required` del `BrandMessagesProvider` y, si el catálogo no
|
|
53
|
+
* la trae, del castellano «obligatorio». Solo se lee con `required`.
|
|
54
|
+
*/
|
|
55
|
+
requiredLabel?: string;
|
|
56
|
+
}
|
|
57
|
+
/** El `id` del texto oculto de obligatorio de un control. */
|
|
58
|
+
export declare function requiredTextId(controlId: string): string;
|
|
59
|
+
/**
|
|
60
|
+
* El texto oculto «obligatorio» al que apunta el `aria-describedby` del
|
|
61
|
+
* disparador (ver `FieldRequiredProps`). Se pinta solo con `required`.
|
|
62
|
+
*/
|
|
63
|
+
export declare function FieldRequiredText({ id, label }: {
|
|
64
|
+
id: string;
|
|
65
|
+
label?: string;
|
|
66
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
67
|
+
/** Une ids para un `aria-*` de referencias; sin ninguno, `undefined` (no un atributo vacío). */
|
|
68
|
+
export declare function joinIds(...ids: Array<string | false | null | undefined>): string | undefined;
|
|
69
|
+
export interface FieldShellOptions {
|
|
70
|
+
/** `id` del control. Sin él, uno de `useId`. */
|
|
71
|
+
id?: string;
|
|
72
|
+
/** Error sin mensaje. Un `errorMessage` ya lo implica. */
|
|
73
|
+
error?: boolean;
|
|
74
|
+
errorMessage?: string;
|
|
75
|
+
helperText?: string;
|
|
76
|
+
/** `aria-describedby` que trae el consumidor: se suma detrás de los propios. */
|
|
77
|
+
describedBy?: string;
|
|
78
|
+
}
|
|
79
|
+
export interface FieldShellState {
|
|
80
|
+
/** `id` del control (el del consumidor o uno generado). */
|
|
81
|
+
id: string;
|
|
82
|
+
/** `id` de la etiqueta, para los controles que se nombran por `aria-labelledby`. */
|
|
83
|
+
labelId: string;
|
|
84
|
+
errorId?: string;
|
|
85
|
+
helperId?: string;
|
|
86
|
+
/** Lo que va en el `aria-describedby` del control. */
|
|
87
|
+
describedBy?: string;
|
|
88
|
+
/** Error con o sin mensaje: lo que pone el control en error. */
|
|
89
|
+
hasError: boolean;
|
|
90
|
+
errorMessage?: string;
|
|
91
|
+
helperText?: string;
|
|
92
|
+
}
|
|
93
|
+
export declare function useFieldShell({ id: idProp, error, errorMessage, helperText, describedBy }: FieldShellOptions): FieldShellState;
|
|
94
|
+
export interface FieldShellProps {
|
|
95
|
+
/** El estado de `useFieldShell`. */
|
|
96
|
+
field: FieldShellState;
|
|
97
|
+
/** Bloque BEM del campo (`input-field`): clase raíz y prefijo de `__helper`/`__label`/`__control`. */
|
|
98
|
+
block: string;
|
|
99
|
+
/** Clases de modificador ya formadas (`checkbox-field--sm`); los falsos se descartan. */
|
|
100
|
+
modifiers?: Array<string | false | null | undefined>;
|
|
101
|
+
/** Se añade DESPUÉS de las clases propias. */
|
|
102
|
+
className?: string;
|
|
103
|
+
/** Talla de la etiqueta (`stack`). */
|
|
104
|
+
size?: FormSize;
|
|
105
|
+
/** Texto de la etiqueta. Sin él no se pinta etiqueta (el control se nombra por otra vía). */
|
|
106
|
+
label?: ReactNode;
|
|
107
|
+
/** Marca de campo opcional tras la etiqueta (ver `FieldOptionalProps`). */
|
|
108
|
+
optional?: boolean;
|
|
109
|
+
/** Texto de la marca; sin él, `field.optional` del catálogo o «(opcional)». */
|
|
110
|
+
optionalLabel?: string;
|
|
111
|
+
/** Etiqueta oculta a la vista, presente para el lector de pantalla. */
|
|
112
|
+
labelHidden?: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* - `stack` (por defecto): `Label` encima del control.
|
|
115
|
+
* - `inline`: un `<label>` (`__control`) envuelve el control y, a su derecha,
|
|
116
|
+
* el texto (`__label`): casilla, radio, interruptor.
|
|
117
|
+
*/
|
|
118
|
+
layout?: 'stack' | 'inline';
|
|
119
|
+
/** A qué apunta el `htmlFor` de la etiqueta. Default: `field.id`. */
|
|
120
|
+
labelFor?: string;
|
|
121
|
+
/** La etiqueta lleva `id` (`field.labelId`) para que la apunte un `aria-labelledby`. */
|
|
122
|
+
labelIdentified?: boolean;
|
|
123
|
+
/** Atributos del contenedor (el `role="group"` de un editor compuesto). */
|
|
124
|
+
rootProps?: HTMLAttributes<HTMLDivElement>;
|
|
125
|
+
/** El control (y lo que vaya pegado a él). */
|
|
126
|
+
children: ReactNode;
|
|
127
|
+
/** Lo que va tras la ayuda: la acción de `PasswordField`. */
|
|
128
|
+
footer?: ReactNode;
|
|
129
|
+
}
|
|
130
|
+
export declare function FieldShell({ field, block, modifiers, className, size, label, optional, optionalLabel, labelHidden, layout, labelFor, labelIdentified, rootProps, children, footer, }: FieldShellProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface RequiredInputProps {
|
|
2
|
+
name?: string;
|
|
3
|
+
value: string;
|
|
4
|
+
required?: boolean;
|
|
5
|
+
/** El control al que se devuelve el foco cuando el navegador lo pide para avisar. */
|
|
6
|
+
focusTarget?: () => HTMLElement | null | undefined;
|
|
7
|
+
}
|
|
8
|
+
export declare function RequiredInput({ name, value, required, focusTarget }: RequiredInputProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -68,8 +68,9 @@ export interface AnnotationThreadProps extends React.ComponentPropsWithoutRef<'a
|
|
|
68
68
|
replies?: AnnotationEntry[];
|
|
69
69
|
/**
|
|
70
70
|
* Estado del hilo, en orden de flujo. `open` pide atención; `acknowledged`
|
|
71
|
-
* es el hilo que alguien ya ha mirado
|
|
72
|
-
*
|
|
71
|
+
* es el hilo que alguien ya ha mirado, sin cerrarse; `resolved` está
|
|
72
|
+
* cerrado. Lo dice la etiqueta de estado que abre el hilo: el hilo se lee
|
|
73
|
+
* a contraste pleno en los tres.
|
|
73
74
|
*/
|
|
74
75
|
status?: AnnotationThreadStatus;
|
|
75
76
|
/**
|
|
@@ -55,7 +55,7 @@ export interface DataTableServerPagination {
|
|
|
55
55
|
/** Etiquetas accesibles que la tabla reenvía a sus cabeceras ordenables. */
|
|
56
56
|
export type DataTableHeaderLabels = Pick<TableHeaderProps, 'actionsLabel' | 'sortedAscLabel' | 'sortedDescLabel' | 'sortableLabel'>;
|
|
57
57
|
/** Etiquetas accesibles que la tabla reenvía a su paginación. */
|
|
58
|
-
export type DataTablePaginationLabels = Pick<PaginationProps, 'ariaLabel' | 'pageLabel' | 'previousLabel' | 'nextLabel' | 'pagesGroupLabel' | 'pageSizeLabel' | 'totalLabel' | 'pageSizeOptions'>;
|
|
58
|
+
export type DataTablePaginationLabels = Pick<PaginationProps, 'aria-label' | 'ariaLabel' | 'pageLabel' | 'previousLabel' | 'nextLabel' | 'pagesGroupLabel' | 'pageSizeLabel' | 'totalLabel' | 'pageSizeOptions'>;
|
|
59
59
|
export interface DataTableProps<TData, TValue> {
|
|
60
60
|
columns: ColumnDef<TData, TValue>[];
|
|
61
61
|
data: TData[];
|
|
@@ -21,6 +21,11 @@ export interface PlanningGridMessages {
|
|
|
21
21
|
remaining: string;
|
|
22
22
|
/** Lo que se lee tras un resto negativo: hay más horas asignadas que disponibles. */
|
|
23
23
|
over: string;
|
|
24
|
+
/**
|
|
25
|
+
* Lo que anuncia la marca de guardado de un cruce en vuelo («Guardando…»).
|
|
26
|
+
* **Opcional**: un catálogo sin ella compila, y la rejilla cae al castellano.
|
|
27
|
+
*/
|
|
28
|
+
saving?: string;
|
|
24
29
|
}
|
|
25
30
|
/** Una fila: un proyecto, una persona. Lo que se planifica. */
|
|
26
31
|
export interface PlanningGridRow {
|
|
@@ -56,7 +61,7 @@ export interface PlanningGridCell {
|
|
|
56
61
|
value: number | null;
|
|
57
62
|
/** Este cruce en concreto no se edita. */
|
|
58
63
|
readOnly?: boolean;
|
|
59
|
-
/** El cambio está en vuelo: la celda
|
|
64
|
+
/** El cambio está en vuelo: la cifra sigue a contraste pleno y la celda lleva una marca de guardado (un `Spinner` pequeño). */
|
|
60
65
|
pending?: boolean;
|
|
61
66
|
/** Lo que falló al guardar este cruce. Pone el campo en error y se anuncia. */
|
|
62
67
|
error?: string;
|
|
@@ -103,6 +108,12 @@ export interface PlanningGridProps extends Omit<ComponentPropsWithoutRef<'div'>,
|
|
|
103
108
|
label?: string;
|
|
104
109
|
/** Nombre accesible del campo de un cruce. Sin él, sale de `planningGrid.cellLabel`. */
|
|
105
110
|
cellLabel?: (row: string, column: string) => string;
|
|
111
|
+
/**
|
|
112
|
+
* Lo que anuncia la marca de guardado de un cruce en vuelo. Sin ella, sale
|
|
113
|
+
* de `planningGrid.saving` del catálogo y, si el catálogo no la trae, del
|
|
114
|
+
* default castellano «Guardando…». Solo se lee cuando hay un cruce en vuelo.
|
|
115
|
+
*/
|
|
116
|
+
savingLabel?: string;
|
|
106
117
|
}
|
|
107
118
|
/**
|
|
108
119
|
* La rejilla editable de horas: fila × columna —persona por semana, proyecto
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
2
|
import { type HeadingLevel, type HeadingSize } from '../../atoms/Heading/Heading';
|
|
3
3
|
import { type IconName } from '../../atoms/Icon/Icon';
|
|
4
|
-
import { type StepMarkerTone } from '../../atoms/StepMarker/StepMarker';
|
|
4
|
+
import { type StepMarkerTone, type StepMarkerToneDeprecated } from '../../atoms/StepMarker/StepMarker';
|
|
5
5
|
import './Steps.css';
|
|
6
6
|
export interface StepItem {
|
|
7
7
|
/** Clave de React. Sin ella se usa la posición. */
|
|
@@ -23,9 +23,9 @@ export interface StepsProps {
|
|
|
23
23
|
/** Uno debajo de otro (por defecto) o en fila. */
|
|
24
24
|
orientation?: 'vertical' | 'horizontal';
|
|
25
25
|
/** Color de la marca. Por defecto `primary`. */
|
|
26
|
-
tone?: StepMarkerTone;
|
|
26
|
+
tone?: StepMarkerTone | StepMarkerToneDeprecated;
|
|
27
27
|
/** @deprecated Usar `tone`. Se mantiene como alias por compatibilidad. */
|
|
28
|
-
badgeVariant?: StepMarkerTone;
|
|
28
|
+
badgeVariant?: StepMarkerTone | StepMarkerToneDeprecated;
|
|
29
29
|
/** Nivel semántico del título de cada paso. Por defecto `3`. */
|
|
30
30
|
titleLevel?: HeadingLevel;
|
|
31
31
|
/** Talla del título de cada paso. Por defecto `1` (14px, la de la etiqueta de `Stepper`). */
|
|
@@ -5,7 +5,7 @@ export interface HeroProps {
|
|
|
5
5
|
/** El título de la portada: un `Heading` de nivel 1 a talla 10 (display). */
|
|
6
6
|
title: ReactNode;
|
|
7
7
|
/**
|
|
8
|
-
* La frase bajo el título, opcional: `Paragraph size="
|
|
8
|
+
* La frase bajo el título, opcional: `Paragraph size="lg"`. Termina en
|
|
9
9
|
* punto (ver Foundations → Redacción).
|
|
10
10
|
*/
|
|
11
11
|
description?: ReactNode;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
2
|
import { type ContainerWidth } from '../../atoms/Container/Container';
|
|
3
|
-
import { type LogoSize } from '../../atoms/Logo/Logo';
|
|
3
|
+
import { type LogoSize, type LogoSizeDeprecated } from '../../atoms/Logo/Logo';
|
|
4
4
|
import './SiteHeader.css';
|
|
5
5
|
export type SiteHeaderLogoLinkProps = {
|
|
6
6
|
href: string;
|
|
@@ -28,8 +28,8 @@ export interface SiteHeaderProps {
|
|
|
28
28
|
menuCloseLabel?: string;
|
|
29
29
|
/** La marca. Por defecto el `Logo` de Studio LXD a `logoSize`; un producto de la suite pone la suya. */
|
|
30
30
|
logo?: ReactNode;
|
|
31
|
-
/** Talla del logotipo por defecto. `
|
|
32
|
-
logoSize?: LogoSize;
|
|
31
|
+
/** Talla del logotipo por defecto. `2xl` (85px): la cabecera es el sitio de la marca. `xxl` es el alias obsoleto de `2xl` (se retira en la v52). */
|
|
32
|
+
logoSize?: LogoSize | LogoSizeDeprecated;
|
|
33
33
|
/** Talla del botón de menú. `lg` (48px) acompaña al logotipo grande. */
|
|
34
34
|
menuButtonSize?: 'sm' | 'md' | 'lg';
|
|
35
35
|
/**
|
package/dist/accordion.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.accordion{inline-size:100%}.accordion__item{border-block-start:var(--accordion-border-width) solid var(--accordion-border-color)}.accordion__header{font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin-block:0}.accordion__trigger{all:unset;box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--accordion-trigger-gap);inline-size:100%;padding-block:var(--accordion-trigger-padding-block);padding-inline:var(--accordion-trigger-padding-inline);cursor:var(--accordion-trigger-cursor);text-align:start;display:flex}.accordion__trigger:focus-visible{outline:var(--accordion-focus-ring-width) solid var(--accordion-focus-ring-color);outline-offset:var(--accordion-focus-ring-offset)}.accordion__trigger[data-disabled]{cursor:default}.accordion__trigger-text{flex:1;min-inline-size:0}.accordion__index{min-inline-size:var(--accordion-index-min-
|
|
1
|
+
.accordion{inline-size:100%}.accordion__item{border-block-start:var(--accordion-border-width) solid var(--accordion-border-color)}.accordion__header{font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin-block:0}.accordion__trigger{all:unset;box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--accordion-trigger-gap);inline-size:100%;padding-block:var(--accordion-trigger-padding-block);padding-inline:var(--accordion-trigger-padding-inline);cursor:var(--accordion-trigger-cursor);text-align:start;display:flex}.accordion__trigger:focus-visible{outline:var(--accordion-focus-ring-width) solid var(--accordion-focus-ring-color);outline-offset:var(--accordion-focus-ring-offset)}.accordion__trigger[data-disabled]{cursor:default}.accordion__trigger-text{flex:1;min-inline-size:0}.accordion__index{min-inline-size:var(--accordion-index-min-width);font-family:var(--accordion-index-font-family);font-size:var(--accordion-index-font-size);color:var(--accordion-index-color);flex-shrink:0}.accordion--numbered .accordion__content-inner{padding-inline-start:calc(var(--accordion-index-min-width) + var(--accordion-trigger-gap))}.accordion__chevron{transition:transform var(--accordion-transition-duration) var(--accordion-transition-easing);flex-shrink:0;transform:rotate(90deg)}.accordion__trigger[data-panel-open] .accordion__chevron{transform:rotate(-90deg)}.accordion__content{overflow:hidden}.accordion__content[data-open]{animation:accordion-open var(--accordion-transition-duration) var(--accordion-transition-easing)}.accordion__content[data-closed]{animation:accordion-close var(--accordion-transition-duration) var(--accordion-transition-easing)}@keyframes accordion-open{0%{height:0}to{height:var(--collapsible-panel-height)}}@keyframes accordion-close{0%{height:var(--collapsible-panel-height)}to{height:0}}.accordion__content-inner{padding-block-end:var(--accordion-content-padding-block);padding-inline:var(--accordion-content-padding-inline)}
|