themelia-react-ui 2.0.5 → 3.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/CHANGELOG.md +326 -0
- package/MIGRATION.md +858 -0
- package/README.md +35 -24
- package/dist/{accordion-B9MHG0cT.js → accordion-DNVqwEIC.js} +37 -37
- package/dist/accordion-DNVqwEIC.js.map +1 -0
- package/dist/action-menu-D5343RwT.js +286 -0
- package/dist/action-menu-D5343RwT.js.map +1 -0
- package/dist/ai-artifact-otrz9ZwS.js +1214 -0
- package/dist/ai-artifact-otrz9ZwS.js.map +1 -0
- package/dist/anchored-positioning-1U_eBFNx.js +9 -0
- package/dist/anchored-positioning-1U_eBFNx.js.map +1 -0
- package/dist/app-shell-CPN30Nb1.js +372 -0
- package/dist/app-shell-CPN30Nb1.js.map +1 -0
- package/dist/{attachment-Dg_69lPS.js → attachment-D2-fpfmv.js} +15 -15
- package/dist/{attachment-Dg_69lPS.js.map → attachment-D2-fpfmv.js.map} +1 -1
- package/dist/{auth-DTkkshS8.js → auth-g_oUTDDC.js} +236 -243
- package/dist/auth-g_oUTDDC.js.map +1 -0
- package/dist/{avatar-CeZaFmNH.js → avatar-Ca3Ihrq4.js} +4 -4
- package/dist/{avatar-CeZaFmNH.js.map → avatar-Ca3Ihrq4.js.map} +1 -1
- package/dist/{badge-xIiV_E7f.js → badge-oGiXblW7.js} +8 -9
- package/dist/badge-oGiXblW7.js.map +1 -0
- package/dist/base/accordion.js +1 -1
- package/dist/base/action-menu.js +1 -1
- package/dist/base/attachment.js +1 -1
- package/dist/base/avatar.js +1 -1
- package/dist/base/badge.js +1 -1
- package/dist/base/batch-action-bar.js +1 -1
- package/dist/base/buttons.js +2 -2
- package/dist/base/cards.js +3 -3
- package/dist/base/carousel.js +11 -11
- package/dist/base/carousel.js.map +1 -1
- package/dist/base/cascader.js +1 -1
- package/dist/base/chart.js +1 -1
- package/dist/base/choice-inputs.js +2 -2
- package/dist/base/code-block.js +1 -1
- package/dist/base/combobox.js +1 -1
- package/dist/base/command.js +1 -1
- package/dist/base/copyable.js +1 -1
- package/dist/base/date-pickers.js +2 -2
- package/dist/base/display.js +7 -7
- package/dist/base/feedback.js +4 -4
- package/dist/base/forms-numeric.js +2 -2
- package/dist/base/forms.js +2 -2
- package/dist/base/inline-edit.js +13 -13
- package/dist/base/inline-edit.js.map +1 -1
- package/dist/base/item.js +1 -1
- package/dist/base/media-gallery.js +203 -2
- package/dist/base/media-gallery.js.map +1 -0
- package/dist/base/metadata-list.js +1 -1
- package/dist/base/navigation.js +7 -7
- package/dist/base/popover-menu.js +1 -1
- package/dist/base/popover.js +1 -1
- package/dist/base/qr-code.js +32 -22
- package/dist/base/qr-code.js.map +1 -1
- package/dist/base/repeaters.js +208 -198
- package/dist/base/repeaters.js.map +1 -1
- package/dist/base/sidebar.js +2 -2
- package/dist/base/signature-pad.js +14 -14
- package/dist/base/signature-pad.js.map +1 -1
- package/dist/base/skeleton.js +1 -1
- package/dist/base/spinner.js +8 -14
- package/dist/base/spinner.js.map +1 -1
- package/dist/base/structure.js +1 -1
- package/dist/base/table.js +1 -1
- package/dist/base/text-inputs.js +3 -3
- package/dist/base/toaster.js +2 -2
- package/dist/base/tree.js +2 -2
- package/dist/base/upload-queue.js +303 -2
- package/dist/base/upload-queue.js.map +1 -0
- package/dist/base/upload.js +3 -4
- package/dist/base/value-inputs.js +1 -1
- package/dist/{batch-action-bar-Cb8cuvyy.js → batch-action-bar-D6MZQNnC.js} +10 -10
- package/dist/{batch-action-bar-Cb8cuvyy.js.map → batch-action-bar-D6MZQNnC.js.map} +1 -1
- package/dist/blocks/admin.js +242 -228
- package/dist/blocks/admin.js.map +1 -1
- package/dist/blocks/ai.js +398 -354
- package/dist/blocks/ai.js.map +1 -1
- package/dist/blocks/analytics/charts.js +1022 -0
- package/dist/blocks/analytics/charts.js.map +1 -0
- package/dist/blocks/analytics/usage-card.js +1 -1
- package/dist/blocks/analytics.js +173 -1392
- package/dist/blocks/analytics.js.map +1 -1
- package/dist/blocks/collaboration.js +1 -1
- package/dist/blocks/commerce/receipt.js +1 -1
- package/dist/blocks/commerce.js +1533 -1399
- package/dist/blocks/commerce.js.map +1 -1
- package/dist/blocks/data-display.js +2 -3
- package/dist/blocks/onboarding.js +91 -82
- package/dist/blocks/onboarding.js.map +1 -1
- package/dist/blocks/planning.js +25 -25
- package/dist/blocks/planning.js.map +1 -1
- package/dist/blocks/timelines.js +2 -2
- package/dist/breadcrumbs-CQ9JSlez.js +136 -0
- package/dist/breadcrumbs-CQ9JSlez.js.map +1 -0
- package/dist/{button-S2Cubiiz.js → button-rd6FiHfQ.js} +12 -8
- package/dist/button-rd6FiHfQ.js.map +1 -0
- package/dist/{buttons-BedGfygC.js → buttons-pZVgPTZn.js} +230 -246
- package/dist/buttons-pZVgPTZn.js.map +1 -0
- package/dist/{cards-rNX1M4Xn.js → cards-CgWyqvgZ.js} +25 -22
- package/dist/{cards-rNX1M4Xn.js.map → cards-CgWyqvgZ.js.map} +1 -1
- package/dist/cascader-Cf05pwaq.js +444 -0
- package/dist/cascader-Cf05pwaq.js.map +1 -0
- package/dist/{chart-Darg_0Kv.js → chart-CygRCyIZ.js} +5 -5
- package/dist/{chart-Darg_0Kv.js.map → chart-CygRCyIZ.js.map} +1 -1
- package/dist/{checkbox-fflqmODR.js → checkbox-Dy5_XBMZ.js} +4 -4
- package/dist/{checkbox-fflqmODR.js.map → checkbox-Dy5_XBMZ.js.map} +1 -1
- package/dist/{choice-inputs-zUgBZfE4.js → choice-inputs-oJEsrb5Y.js} +195 -184
- package/dist/choice-inputs-oJEsrb5Y.js.map +1 -0
- package/dist/{code-block-BzmM9Eig.js → code-block-BrLD7mCi.js} +44 -60
- package/dist/code-block-BrLD7mCi.js.map +1 -0
- package/dist/collapsible-CRCCg_bO.js +80 -0
- package/dist/collapsible-CRCCg_bO.js.map +1 -0
- package/dist/{collection-content-gDh1v6O4.js → collection-content-D7SoDlYd.js} +3 -3
- package/dist/{collection-content-gDh1v6O4.js.map → collection-content-D7SoDlYd.js.map} +1 -1
- package/dist/combobox-Dl6f6kHz.js +362 -0
- package/dist/combobox-Dl6f6kHz.js.map +1 -0
- package/dist/combobox-DrDXtSSt.js +929 -0
- package/dist/combobox-DrDXtSSt.js.map +1 -0
- package/dist/command-CjZ2VzKC.js +432 -0
- package/dist/command-CjZ2VzKC.js.map +1 -0
- package/dist/comments-C2MZyRmh.js +1214 -0
- package/dist/comments-C2MZyRmh.js.map +1 -0
- package/dist/components/base/accordion/accordion.d.ts +11 -3
- package/dist/components/base/action-menu/action-menu.d.ts +11 -3
- package/dist/components/base/buttons/button.d.ts +2 -2
- package/dist/components/base/buttons/index.d.ts +1 -1
- package/dist/components/base/buttons/loader-button.d.ts +6 -15
- package/dist/components/base/cards/index.d.ts +1 -1
- package/dist/components/base/cards/partials/card-body-context.d.ts +6 -0
- package/dist/components/base/cards/smart-card.d.ts +0 -2
- package/dist/components/base/cards/smart-card.types.d.ts +12 -10
- package/dist/components/base/cascader/cascader.d.ts +8 -2
- package/dist/components/base/cascader/cascader.types.d.ts +24 -2
- package/dist/components/base/cascader/index.d.ts +1 -1
- package/dist/components/base/choice-inputs/choice-types.d.ts +4 -0
- package/dist/components/base/choice-inputs/pill-radio-group.d.ts +7 -6
- package/dist/components/base/choice-inputs/switch.d.ts +1 -1
- package/dist/components/base/code-block/use-code-copy.d.ts +2 -6
- package/dist/components/base/combobox/combobox-field.d.ts +2 -2
- package/dist/components/base/command/command.d.ts +1 -1
- package/dist/components/base/date-pickers/date-picker-internals.d.ts +3 -1
- package/dist/components/base/date-pickers/datepicker.types.d.ts +11 -7
- package/dist/components/base/date-pickers/time-picker.d.ts +17 -3
- package/dist/components/base/display/dialog.d.ts +3 -9
- package/dist/components/base/display/index.d.ts +2 -3
- package/dist/components/base/display/separator.d.ts +1 -1
- package/dist/components/base/feedback/alert.d.ts +2 -1
- package/dist/components/base/feedback/empty.d.ts +10 -2
- package/dist/components/base/feedback/state-display.d.ts +5 -1
- package/dist/components/base/feedback/state-display.strings.d.ts +9 -0
- package/dist/components/base/forms/form-field.d.ts +7 -2
- package/dist/components/base/forms/workflow.d.ts +2 -2
- package/dist/components/base/forms-numeric/coordinates-input.d.ts +4 -1
- package/dist/components/base/forms-numeric/decimal-input.d.ts +2 -2
- package/dist/components/base/forms-numeric/dimensions-input.d.ts +13 -18
- package/dist/components/base/forms-numeric/index.d.ts +3 -3
- package/dist/components/base/forms-numeric/numeric-composite-field.d.ts +12 -0
- package/dist/components/base/forms-numeric/weight-input.d.ts +6 -1
- package/dist/components/base/item/item.types.d.ts +6 -2
- package/dist/components/base/metadata-list/index.d.ts +1 -3
- package/dist/components/base/metadata-list/metadata-list.d.ts +4 -1
- package/dist/components/base/navigation/index.d.ts +2 -2
- package/dist/components/base/navigation/language-switcher.d.ts +17 -8
- package/dist/components/base/navigation/navigation-tabs.d.ts +8 -1
- package/dist/components/base/navigation/page-header/index.d.ts +1 -1
- package/dist/components/base/navigation/page-header/page-header.d.ts +13 -17
- package/dist/components/base/navigation/pagination.d.ts +5 -5
- package/dist/components/base/popover/popover.recipes.d.ts +0 -1
- package/dist/components/base/qr-code/qr-code.d.ts +4 -0
- package/dist/components/base/repeaters/index.d.ts +1 -1
- package/dist/components/base/repeaters/key-value-editor.d.ts +6 -1
- package/dist/components/base/sheet/sheet.d.ts +6 -15
- package/dist/components/base/sidebar/index.d.ts +1 -6
- package/dist/components/base/sidebar/sidebar.d.ts +40 -10
- package/dist/components/base/skeleton/skeleton.d.ts +1 -1
- package/dist/components/base/structure/structure.types.d.ts +11 -2
- package/dist/components/base/text-inputs/index.d.ts +1 -1
- package/dist/components/base/tree/index.d.ts +1 -0
- package/dist/components/base/tree/tree.d.ts +2 -2
- package/dist/components/base/tree/tree.types.d.ts +7 -1
- package/dist/components/base/upload/avatar-upload.d.ts +2 -1
- package/dist/components/base/upload/file-upload.validation.d.ts +37 -1
- package/dist/components/base/upload/image-upload.d.ts +4 -1
- package/dist/components/base/upload/index.d.ts +3 -9
- package/dist/components/base/value-inputs/date-time-input.d.ts +4 -0
- package/dist/components/base/value-inputs/slider.d.ts +5 -2
- package/dist/components/blocks/admin/action-surfaces/index.d.ts +17 -4
- package/dist/components/blocks/admin/api-key-list/api-key-list.types.d.ts +9 -3
- package/dist/components/blocks/admin/index.d.ts +1 -1
- package/dist/components/blocks/ai/ai-artifact/ai-artifact.d.ts +1 -1
- package/dist/components/blocks/ai/ai-artifact/types.d.ts +9 -4
- package/dist/components/blocks/ai/ai-chain-of-thought/ai-chain-of-thought.d.ts +1 -1
- package/dist/components/blocks/ai/ai-chain-of-thought/types.d.ts +11 -1
- package/dist/components/blocks/ai/ai-citation/ai-citation.d.ts +1 -1
- package/dist/components/blocks/ai/ai-citation/types.d.ts +8 -0
- package/dist/components/blocks/ai/ai-confirmation/ai-confirmation.d.ts +1 -1
- package/dist/components/blocks/ai/ai-confirmation/types.d.ts +21 -5
- package/dist/components/blocks/ai/ai-feedback/types.d.ts +7 -2
- package/dist/components/blocks/ai/ai-inline-citation/types.d.ts +9 -3
- package/dist/components/blocks/ai/ai-package-info/ai-package-info.d.ts +1 -1
- package/dist/components/blocks/ai/ai-package-info/types.d.ts +6 -0
- package/dist/components/blocks/ai/ai-reasoning/types.d.ts +2 -0
- package/dist/components/blocks/ai/ai-sources/ai-sources.d.ts +1 -1
- package/dist/components/blocks/ai/ai-sources/types.d.ts +10 -2
- package/dist/components/blocks/ai/ai-task/ai-task.d.ts +1 -1
- package/dist/components/blocks/ai/ai-task/types.d.ts +10 -1
- package/dist/components/blocks/ai/ai-tool-call/ai-tool-call.d.ts +1 -1
- package/dist/components/blocks/ai/ai-tool-call/types.d.ts +8 -0
- package/dist/components/blocks/ai/ai.strings.d.ts +2 -0
- package/dist/components/blocks/analytics/activity-heatmap/types.d.ts +1 -1
- package/dist/components/blocks/analytics/analytics.strings.d.ts +2 -0
- package/dist/components/blocks/analytics/atoms/metric-trend-chip.d.ts +11 -1
- package/dist/components/blocks/analytics/chart-card/chart-card.d.ts +7 -5
- package/dist/components/blocks/analytics/charts/index.d.ts +27 -0
- package/dist/components/blocks/analytics/index.d.ts +17 -24
- package/dist/components/blocks/analytics/metric/metric.d.ts +7 -3
- package/dist/components/blocks/analytics/metric-comparison/metric-comparison.d.ts +2 -0
- package/dist/components/blocks/analytics/metric-grid/metric-grid.d.ts +4 -5
- package/dist/components/blocks/analytics/types.d.ts +13 -4
- package/dist/components/blocks/analytics/usage-card/usage-card.strings.d.ts +2 -0
- package/dist/components/blocks/commerce/address-card/address-card.d.ts +1 -1
- package/dist/components/blocks/commerce/address-card/types.d.ts +5 -16
- package/dist/components/blocks/commerce/booking-calendar-event-card/booking-calendar-event-card.d.ts +2 -2
- package/dist/components/blocks/commerce/booking-calendar-event-card/booking-calendar-event-card.types.d.ts +6 -4
- package/dist/components/blocks/commerce/cart-summary/cart-summary.d.ts +0 -2
- package/dist/components/blocks/commerce/cart-summary/index.d.ts +2 -2
- package/dist/components/blocks/commerce/cart-summary/types.d.ts +9 -11
- package/dist/components/blocks/commerce/coupon-input/coupon-input.d.ts +1 -1
- package/dist/components/blocks/commerce/coupon-input/types.d.ts +7 -3
- package/dist/components/blocks/commerce/discount-stack/discount-stack.d.ts +0 -2
- package/dist/components/blocks/commerce/discount-stack/index.d.ts +2 -2
- package/dist/components/blocks/commerce/discount-stack/types.d.ts +4 -6
- package/dist/components/blocks/commerce/fulfillment-group/fulfillment-group.d.ts +1 -1
- package/dist/components/blocks/commerce/fulfillment-group/types.d.ts +2 -0
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-balance.d.ts +18 -0
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-compact.d.ts +1 -1
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-copy-button.d.ts +0 -1
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-dark.d.ts +1 -1
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-full.d.ts +1 -1
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-illustrated.d.ts +1 -1
- package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-minimal.d.ts +1 -1
- package/dist/components/blocks/commerce/giftcard-card/types.d.ts +16 -5
- package/dist/components/blocks/commerce/index.d.ts +8 -8
- package/dist/components/blocks/commerce/inventory-level/inventory-level.strings.d.ts +2 -0
- package/dist/components/blocks/commerce/inventory-level/types.d.ts +1 -1
- package/dist/components/blocks/commerce/inventory-section/types.d.ts +0 -5
- package/dist/components/blocks/commerce/invoice-line-items/types.d.ts +6 -3
- package/dist/components/blocks/commerce/loyalty-points/loyalty-points.d.ts +1 -1
- package/dist/components/blocks/commerce/loyalty-points/types.d.ts +11 -5
- package/dist/components/blocks/commerce/order-status/order-status.d.ts +1 -1
- package/dist/components/blocks/commerce/order-status/types.d.ts +12 -8
- package/dist/components/blocks/commerce/order-timeline/order-timeline.d.ts +1 -1
- package/dist/components/blocks/commerce/order-timeline/types.d.ts +3 -1
- package/dist/components/blocks/commerce/payment-method/index.d.ts +2 -2
- package/dist/components/blocks/commerce/payment-method/payment-method.d.ts +0 -8
- package/dist/components/blocks/commerce/payment-method/types.d.ts +0 -2
- package/dist/components/blocks/commerce/receipt/index.d.ts +1 -1
- package/dist/components/blocks/commerce/receipt/receipt-items.d.ts +1 -1
- package/dist/components/blocks/commerce/receipt/types.d.ts +10 -0
- package/dist/components/blocks/commerce/refund-status/index.d.ts +2 -2
- package/dist/components/blocks/commerce/refund-status/refund-status.d.ts +0 -2
- package/dist/components/blocks/commerce/refund-status/types.d.ts +0 -2
- package/dist/components/blocks/commerce/seo-listing/types.d.ts +7 -0
- package/dist/components/blocks/commerce/shared/code-entry.d.ts +39 -0
- package/dist/components/blocks/commerce/shared/order-status.d.ts +1 -1
- package/dist/components/blocks/commerce/subscription-summary/subscription-summary.d.ts +1 -1
- package/dist/components/blocks/commerce/subscription-summary/types.d.ts +10 -1
- package/dist/components/blocks/commerce/upcoming-booking/index.d.ts +2 -1
- package/dist/components/blocks/commerce/upcoming-booking/types.d.ts +8 -0
- package/dist/components/blocks/commerce/upcoming-booking/upcoming-booking.d.ts +2 -2
- package/dist/components/blocks/commerce/vendor-profile/types.d.ts +4 -5
- package/dist/components/blocks/commerce/voucher-entry/types.d.ts +6 -3
- package/dist/components/blocks/commerce/voucher-entry/voucher-entry.d.ts +1 -1
- package/dist/components/blocks/content-block-hooks.d.ts +22 -0
- package/dist/components/blocks/data-display/dense-info-card/dense-info.strings.d.ts +5 -1
- package/dist/components/blocks/data-display/dense-info-card/helpers.d.ts +3 -1
- package/dist/components/blocks/data-display/dense-info-card/index.d.ts +1 -1
- package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-classification.d.ts +1 -1
- package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-dashboard.d.ts +1 -1
- package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-financial.d.ts +1 -1
- package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-project.d.ts +1 -1
- package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-score.d.ts +1 -1
- package/dist/components/blocks/data-display/dense-info-card/types.d.ts +12 -5
- package/dist/components/blocks/data-display/empty-state/empty-state.types.d.ts +10 -3
- package/dist/components/blocks/data-display/index.d.ts +0 -1
- package/dist/components/blocks/data-display/relationship-card-frame.d.ts +1 -1
- package/dist/components/blocks/onboarding/checklist/checklist.types.d.ts +5 -3
- package/dist/components/blocks/planning/task-card.types.d.ts +7 -3
- package/dist/components/blocks/timelines/changelog/types.d.ts +2 -2
- package/dist/components/blocks/timelines/index.d.ts +2 -2
- package/dist/components/blocks/timelines/milestones/types.d.ts +2 -2
- package/dist/components/blocks/timelines/shared/timeline.d.ts +6 -0
- package/dist/components/blocks/timelines/steps-card/index.d.ts +2 -1
- package/dist/components/blocks/timelines/steps-card/steps-card.d.ts +2 -2
- package/dist/components/blocks/timelines/steps-card/types.d.ts +13 -1
- package/dist/components/features/activities/activities.strings.d.ts +5 -3
- package/dist/components/features/activities/activities.types.d.ts +46 -22
- package/dist/components/features/activities/hooks/use-activity-feed.d.ts +6 -0
- package/dist/components/features/activities/hooks/use-activity-resources.d.ts +2 -1
- package/dist/components/features/activities/index.d.ts +1 -1
- package/dist/components/features/activities/partials/activity-headline.d.ts +5 -0
- package/dist/components/features/activities/partials/activity-row.d.ts +12 -13
- package/dist/components/features/activities/partials/row-layers.d.ts +7 -0
- package/dist/components/features/activities/relative-time.d.ts +18 -0
- package/dist/components/features/ai-chat/ai-chat.d.ts +6 -2
- package/dist/components/features/ai-chat/ai-chat.strings.d.ts +41 -2
- package/dist/components/features/ai-chat/ai-chat.types.d.ts +6 -0
- package/dist/components/features/ai-chat/hooks/use-ai-chat-scroll.d.ts +1 -1
- package/dist/components/features/ai-chat/partials/ai-chat-attachments-strip.d.ts +5 -1
- package/dist/components/features/ai-chat/partials/ai-chat-prompt-input.d.ts +2 -2
- package/dist/components/features/ai-chat/partials/ai-chat-queue.d.ts +3 -1
- package/dist/components/features/ai-chat/partials/ai-chat-suggestions-row.d.ts +6 -1
- package/dist/components/features/appointment-calendar/appointment-calendar.d.ts +1 -1
- package/dist/components/features/appointment-calendar/appointment-calendar.types.d.ts +20 -4
- package/dist/components/features/appointment-calendar/index.d.ts +1 -1
- package/dist/components/features/appointment-calendar/partials/appointment-agenda.d.ts +18 -10
- package/dist/components/features/async-preview/async-preview.d.ts +2 -2
- package/dist/components/features/async-preview/async-preview.types.d.ts +30 -1
- package/dist/components/features/async-preview/preview-trigger-cell.d.ts +7 -2
- package/dist/components/features/combobox/async-resource-combobox.d.ts +2 -2
- package/dist/components/features/combobox/combobox.d.ts +12 -3
- package/dist/components/features/combobox/components/error-message.d.ts +3 -1
- package/dist/components/features/combobox/hooks/use-combobox-core.d.ts +4 -3
- package/dist/components/features/combobox/hooks/use-combobox-state.d.ts +1 -0
- package/dist/components/features/combobox/hooks/use-load-more.d.ts +1 -0
- package/dist/components/features/combobox/index.d.ts +1 -1
- package/dist/components/features/combobox/types.d.ts +68 -37
- package/dist/components/features/comments/comments.strings.d.ts +6 -5
- package/dist/components/features/comments/comments.types.d.ts +40 -26
- package/dist/components/features/comments/hooks/use-attachment-upload.d.ts +5 -1
- package/dist/components/features/comments/hooks/use-comments.d.ts +8 -1
- package/dist/components/features/data-view/data-view.strings.d.ts +9 -2
- package/dist/components/features/data-view/data-view.types.d.ts +15 -2
- package/dist/components/features/email-composer/email-html.d.ts +5 -0
- package/dist/components/features/email-composer/http.d.ts +2 -0
- package/dist/components/features/email-composer/strings.d.ts +17 -2
- package/dist/components/features/email-composer/types.d.ts +19 -2
- package/dist/components/features/email-composer/use-composer.d.ts +2 -78
- package/dist/components/features/event-calendar/event-calendar-day-cell.d.ts +1 -1
- package/dist/components/features/event-calendar/event-calendar-event-badge.d.ts +1 -1
- package/dist/components/features/event-calendar/event-calendar-header.d.ts +1 -1
- package/dist/components/features/event-calendar/event-calendar-legend.d.ts +2 -2
- package/dist/components/features/event-calendar/event-calendar.d.ts +1 -1
- package/dist/components/features/event-calendar/event-calendar.types.d.ts +126 -21
- package/dist/components/features/filters/facets/date-facet.d.ts +4 -2
- package/dist/components/features/filters/facets/range-facet.d.ts +24 -7
- package/dist/components/features/filters/filter-context.d.ts +9 -0
- package/dist/components/features/filters/filters.strings.d.ts +36 -3
- package/dist/components/features/filters/filters.types.d.ts +75 -8
- package/dist/components/features/filters/hooks/use-filter-draft.d.ts +1 -0
- package/dist/components/features/filters/index.d.ts +2 -2
- package/dist/components/features/filters/operator-options.d.ts +25 -2
- package/dist/components/features/filters/partials/active-filter-item.d.ts +0 -13
- package/dist/components/features/filters/partials/async-options-status.d.ts +32 -0
- package/dist/components/features/filters/partials/date-filter-content.d.ts +3 -2
- package/dist/components/features/filters/partials/filter-draft-footer.d.ts +11 -0
- package/dist/components/features/filters/partials/filter-operator-select.d.ts +4 -2
- package/dist/components/features/filters/partials/filter-pill.d.ts +5 -1
- package/dist/components/features/filters/partials/filter-popover-content.d.ts +4 -2
- package/dist/components/features/filters/partials/filter-tabs.d.ts +2 -1
- package/dist/components/features/filters/partials/range-filter-content.d.ts +12 -0
- package/dist/components/features/filters/partials/regular-filter-content.d.ts +1 -1
- package/dist/components/features/filters/utils/filter-utils.d.ts +34 -5
- package/dist/components/features/global-search/global-search-dialog.d.ts +7 -1
- package/dist/components/features/global-search/global-search.d.ts +7 -1
- package/dist/components/features/global-search/global-search.strings.d.ts +19 -3
- package/dist/components/features/global-search/global-search.types.d.ts +30 -6
- package/dist/components/features/global-search/index.d.ts +1 -1
- package/dist/components/features/global-search/partials/global-search-idle-state.d.ts +6 -1
- package/dist/components/features/global-search/partials/global-search-input.d.ts +2 -0
- package/dist/components/features/kanban/index.d.ts +2 -2
- package/dist/components/features/kanban/kanban-context.d.ts +4 -0
- package/dist/components/features/kanban/kanban-keyboard.d.ts +7 -2
- package/dist/components/features/kanban/kanban.d.ts +10 -1
- package/dist/components/features/kanban/kanban.strings.d.ts +11 -2
- package/dist/components/features/kanban/kanban.types.d.ts +26 -0
- package/dist/components/features/map/map.d.ts +4 -0
- package/dist/components/features/map/place-autocomplete.d.ts +10 -1
- package/dist/components/features/media-library/hooks/use-media-library.d.ts +3 -1
- package/dist/components/features/media-library/media-library.d.ts +1 -1
- package/dist/components/features/media-library/media-library.strings.d.ts +39 -3
- package/dist/components/features/media-library/media-library.types.d.ts +82 -9
- package/dist/components/features/media-library/partials/media-library-partials.d.ts +3 -3
- package/dist/components/features/mentions/hooks/use-mentions-search.d.ts +7 -0
- package/dist/components/features/mentions/hooks/use-mentions.d.ts +16 -1
- package/dist/components/features/mentions/index.d.ts +1 -1
- package/dist/components/features/mentions/mentions.strings.d.ts +10 -2
- package/dist/components/features/mentions/partials/mention-chip.d.ts +1 -0
- package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts +12 -1
- package/dist/components/features/mentions/partials/mention-picker.d.ts +8 -1
- package/dist/components/features/mentions/partials/mention-search-error.d.ts +6 -0
- package/dist/components/features/mentions/utils/index.d.ts +0 -1
- package/dist/components/features/overlays/alert-dialog.d.ts +1 -1
- package/dist/components/features/overlays/dialog.d.ts +1 -1
- package/dist/components/features/overlays/drawer.d.ts +1 -1
- package/dist/components/features/overlays/hooks/use-overlay-visibility.d.ts +2 -2
- package/dist/components/features/overlays/index.d.ts +2 -2
- package/dist/components/features/overlays/overlays.strings.d.ts +2 -1
- package/dist/components/features/overlays/overlays.types.d.ts +27 -10
- package/dist/components/features/products/components/index.d.ts +0 -10
- package/dist/components/features/products/components/product-contract-overview.d.ts +1 -1
- package/dist/components/features/products/components/product-details-card.d.ts +1 -1
- package/dist/components/features/products/components/product-operations-card.d.ts +1 -1
- package/dist/components/features/products/components/product-option-action-menu.d.ts +1 -1
- package/dist/components/features/products/components/product-options-summary.d.ts +1 -1
- package/dist/components/features/products/components/product-policies-card.d.ts +1 -1
- package/dist/components/features/products/components/product-quote-preview-card.d.ts +1 -1
- package/dist/components/features/products/components/product-readiness-card.d.ts +1 -1
- package/dist/components/features/products/components/product-structure-card.d.ts +1 -1
- package/dist/components/features/products/components/product-variant-action-menu.d.ts +1 -1
- package/dist/components/features/products/components/product-variants-manager.d.ts +1 -1
- package/dist/components/features/products/components/product-variants-table.d.ts +1 -1
- package/dist/components/features/products/partials/product-surface.d.ts +15 -0
- package/dist/components/features/products/products.strings.d.ts +8 -0
- package/dist/components/features/products/products.types.d.ts +26 -8
- package/dist/components/features/questionnaire/questionnaire.types.d.ts +7 -2
- package/dist/components/features/resource/index.d.ts +2 -3
- package/dist/components/features/resource/resource.d.ts +2 -10
- package/dist/components/features/resource/resource.types.d.ts +7 -147
- package/dist/components/features/resource-assignment/partials/assignment-surface.d.ts +15 -0
- package/dist/components/features/resource-assignment/resource-assignment.strings.d.ts +6 -1
- package/dist/components/features/resource-assignment/resource-assignment.types.d.ts +6 -0
- package/dist/components/features/rich-text-editor/form-rich-text-editor.d.ts +1 -1
- package/dist/components/features/rich-text-editor/partials/caret-helpers.d.ts +5 -7
- package/dist/components/features/rich-text-editor/partials/editor-field-aria.d.ts +14 -0
- package/dist/components/features/rich-text-editor/partials/html-helpers.d.ts +2 -3
- package/dist/components/features/rich-text-editor/partials/image-uploads.d.ts +6 -2
- package/dist/components/features/rich-text-editor/partials/index.d.ts +2 -3
- package/dist/components/features/rich-text-editor/partials/rich-text-editor-tiptap.d.ts +0 -1
- package/dist/components/features/rich-text-editor/partials/rich-text-editor-toolbar.d.ts +5 -4
- package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +1 -1
- package/dist/components/features/rich-text-editor/rich-text-editor.types.d.ts +30 -4
- package/dist/components/features/schema-form/hooks/use-schema-form.d.ts +10 -1
- package/dist/components/features/schema-form/partials/schema-form-field.d.ts +3 -1
- package/dist/components/features/schema-form/schema-form.d.ts +1 -1
- package/dist/components/features/schema-form/schema-form.types.d.ts +13 -5
- package/dist/components/features/schema-form/schema-form.utils.d.ts +1 -1
- package/dist/components/features/suggestions/suggestions.strings.d.ts +14 -0
- package/dist/components/features/suggestions/suggestions.types.d.ts +13 -5
- package/dist/components/features/table/data-table.d.ts +1 -1
- package/dist/components/features/table/filter-bar.d.ts +1 -1
- package/dist/components/features/table/index.d.ts +1 -0
- package/dist/components/features/table/pagination.d.ts +1 -1
- package/dist/components/features/table/partials/cell-value.d.ts +1 -1
- package/dist/components/features/table/table-body.d.ts +1 -1
- package/dist/components/features/table/table-header.d.ts +1 -1
- package/dist/components/features/table/table-helpers.d.ts +37 -12
- package/dist/components/features/table/table-region.recipes.d.ts +11 -0
- package/dist/components/features/table/table-toolbar.d.ts +1 -1
- package/dist/components/features/table/table.strings.d.ts +4 -0
- package/dist/components/features/table/table.types.d.ts +91 -49
- package/dist/components/features/theme-tweaker/theme-provider-settings.d.ts +4 -0
- package/dist/components/features/theme-tweaker/theme-tweaker.strings.d.ts +10 -7
- package/dist/components/features/theme-tweaker/theme-tweaker.utils.d.ts +17 -0
- package/dist/components/layout/app-shell/app-shell.types.d.ts +46 -49
- package/dist/components/layout/app-shell/index.d.ts +2 -2
- package/dist/components/layout/app-shell/shell-regions.d.ts +9 -0
- package/dist/components/layout/app-shell/shell-skip-link.d.ts +9 -0
- package/dist/components/layout/app-shell/sidebar-inset-layout.d.ts +1 -1
- package/dist/components/layout/app-shell/stacked-layout.d.ts +1 -1
- package/dist/components/layout/app-shell/topbar-sidebar-layout.d.ts +1 -1
- package/dist/components/layout/auth/auth-shell.d.ts +1 -1
- package/dist/components/layout/auth/auth.types.d.ts +0 -5
- package/dist/components/layout/containers/inline-gutter-context.d.ts +7 -0
- package/dist/components/layout/containers/main-landmark-context.d.ts +6 -0
- package/dist/components/layout/header/header.types.d.ts +19 -8
- package/dist/components/layout/header/partials/header-global-search-trigger.d.ts +1 -1
- package/dist/components/layout/header/partials/header-notifications.d.ts +1 -1
- package/dist/components/layout/header/partials/header-search.d.ts +1 -1
- package/dist/components/layout/hooks/use-command-shortcut.d.ts +10 -1
- package/dist/components/layout/layout.types.d.ts +6 -4
- package/dist/components/layout/navigation/breadcrumb-progress/breadcrumb-progress.d.ts +1 -1
- package/dist/components/layout/navigation/breadcrumb-progress/types.d.ts +9 -0
- package/dist/components/layout/navigation/section-nav/section-nav.d.ts +8 -1
- package/dist/components/layout/navigation/side-nav.d.ts +3 -2
- package/dist/components/layout/normalize-layout-path.d.ts +1 -0
- package/dist/components/layout/page/index.d.ts +2 -3
- package/dist/components/layout/page/page.strings.d.ts +12 -0
- package/dist/components/layout/page/page.types.d.ts +7 -110
- package/dist/components/layout/page/partials/page-header.d.ts +1 -1
- package/dist/components/layout/settings/index.d.ts +1 -1
- package/dist/components/layout/settings/settings.d.ts +4 -6
- package/dist/components/layout/sidebar/app-sidebar.d.ts +1 -1
- package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts +1 -1
- package/dist/components/layout/sidebar/components/sidebar-navigation-footer.d.ts +1 -1
- package/dist/components/layout/sidebar/components/sidebar-navigation.d.ts +1 -1
- package/dist/components/layout/sidebar/index.d.ts +1 -1
- package/dist/components/layout/sidebar/sidebar-navigation-rail.d.ts +17 -7
- package/dist/components/layout/sidebar/sidebar.context.d.ts +1 -0
- package/dist/components/layout/sidebar/sidebar.types.d.ts +12 -12
- package/dist/components/layout/sidebar/sidebar.utils.d.ts +4 -0
- package/dist/components/layout/workspace/workspace.strings.d.ts +2 -2
- package/dist/components/layout/workspace/workspace.types.d.ts +13 -7
- package/dist/components/primitives/date.d.ts +22 -3
- package/dist/components/primitives/file-size.d.ts +8 -2
- package/dist/components/primitives/index.d.ts +1 -1
- package/dist/components/primitives/initials.d.ts +3 -1
- package/dist/components/primitives/link.d.ts +11 -3
- package/dist/components/primitives/money.d.ts +2 -2
- package/dist/components/primitives/number.d.ts +3 -2
- package/dist/components/typography/heading.d.ts +9 -3
- package/dist/components/typography/index.d.ts +1 -1
- package/dist/components/typography/rich-text/rich-text-tree.d.ts +7 -5
- package/dist/components/typography/text-link.d.ts +10 -3
- package/dist/components/ui/badge.d.ts +2 -4
- package/dist/components/ui/breadcrumb.d.ts +2 -3
- package/dist/components/ui/button.d.ts +8 -2
- package/dist/components/ui/collapsible.d.ts +1 -4
- package/dist/components/ui/command.d.ts +20 -18
- package/dist/components/ui/dialog.d.ts +3 -9
- package/dist/components/ui/empty.d.ts +2 -2
- package/dist/components/ui/input-group.d.ts +3 -3
- package/dist/components/ui/item.d.ts +3 -3
- package/dist/components/ui/popover.d.ts +3 -7
- package/dist/components/ui/sheet.d.ts +4 -12
- package/dist/components/ui/sidebar-state.d.ts +6 -1
- package/dist/components/ui/sidebar.d.ts +7 -4
- package/dist/components/ui/tabs.d.ts +2 -2
- package/dist/components/ui/toggle-group.d.ts +3 -3
- package/dist/components/ui/toggle.d.ts +2 -2
- package/dist/components/ui/tooltip.d.ts +1 -3
- package/dist/{containers-CIxwbZt5.js → containers-BdfLTP4w.js} +37 -32
- package/dist/containers-BdfLTP4w.js.map +1 -0
- package/dist/content-block-hooks-Z3iKjqd1.js +17 -0
- package/dist/content-block-hooks-Z3iKjqd1.js.map +1 -0
- package/dist/{copyable-DIznBqiT.js → copyable-Bmr14W0d.js} +6 -6
- package/dist/{copyable-DIznBqiT.js.map → copyable-Bmr14W0d.js.map} +1 -1
- package/dist/{data-display-BdgCAw8T.js → data-display-CWe9SOYh.js} +264 -250
- package/dist/data-display-CWe9SOYh.js.map +1 -0
- package/dist/date-3qsCE1ID.js +209 -0
- package/dist/date-3qsCE1ID.js.map +1 -0
- package/dist/date-picker-D1keJQIG.js +1617 -0
- package/dist/date-picker-D1keJQIG.js.map +1 -0
- package/dist/date-pickers-D8aJoeHc.js +185 -0
- package/dist/date-pickers-D8aJoeHc.js.map +1 -0
- package/dist/disclosure-panel-B0HFNZ9x.js.map +1 -1
- package/dist/{display-KsZLw9Ov.js → display-VlmP1I0i.js} +23 -46
- package/dist/display-VlmP1I0i.js.map +1 -0
- package/dist/{dropdown-menu-CLs8Lihj.js → dropdown-menu-B8hjvbkS.js} +9 -9
- package/dist/{dropdown-menu-CLs8Lihj.js.map → dropdown-menu-B8hjvbkS.js.map} +1 -1
- package/dist/dropzone-CHBNK3de.js +116 -0
- package/dist/dropzone-CHBNK3de.js.map +1 -0
- package/dist/features/activities.js +767 -700
- package/dist/features/activities.js.map +1 -1
- package/dist/features/ai-chat.js +280 -235
- package/dist/features/ai-chat.js.map +1 -1
- package/dist/features/appointment-calendar.js +430 -334
- package/dist/features/appointment-calendar.js.map +1 -1
- package/dist/features/async-preview.js +351 -265
- package/dist/features/async-preview.js.map +1 -1
- package/dist/features/combobox.js +2 -2
- package/dist/features/comments.js +1 -1
- package/dist/features/data-view.js +212 -151
- package/dist/features/data-view.js.map +1 -1
- package/dist/features/email-composer/engine.js +1 -1
- package/dist/features/email-composer.js +347 -313
- package/dist/features/email-composer.js.map +1 -1
- package/dist/features/event-calendar.js +501 -348
- package/dist/features/event-calendar.js.map +1 -1
- package/dist/features/filters.js +2 -2
- package/dist/features/global-search.js +250 -210
- package/dist/features/global-search.js.map +1 -1
- package/dist/features/kanban.js +280 -210
- package/dist/features/kanban.js.map +1 -1
- package/dist/features/map/style.css +15 -0
- package/dist/features/map.js +435 -404
- package/dist/features/map.js.map +1 -1
- package/dist/features/media-library.js +1745 -1195
- package/dist/features/media-library.js.map +1 -1
- package/dist/features/mentions.js +2 -2
- package/dist/features/overlays.js +2 -2
- package/dist/features/products.js +1862 -1759
- package/dist/features/products.js.map +1 -1
- package/dist/features/questionnaire.js +188 -168
- package/dist/features/questionnaire.js.map +1 -1
- package/dist/features/resource-assignment.js +223 -191
- package/dist/features/resource-assignment.js.map +1 -1
- package/dist/features/resource.js +55 -217
- package/dist/features/resource.js.map +1 -1
- package/dist/features/rich-text-editor.js +28 -19
- package/dist/features/rich-text-editor.js.map +1 -1
- package/dist/features/schema-form.js +380 -287
- package/dist/features/schema-form.js.map +1 -1
- package/dist/features/suggestions.js +90 -74
- package/dist/features/suggestions.js.map +1 -1
- package/dist/features/table.js +2 -2
- package/dist/features/theme-tweaker.js +718 -627
- package/dist/features/theme-tweaker.js.map +1 -1
- package/dist/feedback-DmqmXKLn.js +254 -0
- package/dist/feedback-DmqmXKLn.js.map +1 -0
- package/dist/{field-affordance-recipes-DWcNcOjh.js → field-affordance-recipes-DfbMadot.js} +13 -9
- package/dist/field-affordance-recipes-DfbMadot.js.map +1 -0
- package/dist/field-control-attributes-B6i335wr.js +18 -0
- package/dist/field-control-attributes-B6i335wr.js.map +1 -0
- package/dist/field-state-recipes-EtCxpEy3.js +18 -0
- package/dist/field-state-recipes-EtCxpEy3.js.map +1 -0
- package/dist/filters-BviMRMLS.js +2692 -0
- package/dist/filters-BviMRMLS.js.map +1 -0
- package/dist/{focus-recipes-B653VaLq.js → focus-recipes-DSkiUvUp.js} +3 -3
- package/dist/focus-recipes-DSkiUvUp.js.map +1 -0
- package/dist/form-field-BdfCwSoQ.js +74 -0
- package/dist/form-field-BdfCwSoQ.js.map +1 -0
- package/dist/{form-sizing-Bs2qFUeE.js → form-sizing-DE_dZw32.js} +3 -3
- package/dist/{form-sizing-Bs2qFUeE.js.map → form-sizing-DE_dZw32.js.map} +1 -1
- package/dist/{forms-C0RGnJTe.js → forms-B8DzJnBN.js} +35 -35
- package/dist/forms-B8DzJnBN.js.map +1 -0
- package/dist/forms-numeric-DOBswjKj.js +992 -0
- package/dist/forms-numeric-DOBswjKj.js.map +1 -0
- package/dist/{header-DMMxG__r.js → header-Cq3G0ZRP.js} +163 -158
- package/dist/header-Cq3G0ZRP.js.map +1 -0
- package/dist/hooks/use-files.d.ts +2 -0
- package/dist/{hooks-DB6CJ4MR.js → hooks-DHfeSMAO.js} +34 -14
- package/dist/hooks-DHfeSMAO.js.map +1 -0
- package/dist/{http-D_6rOnzU.js → http-Cu-GPpss.js} +61 -35
- package/dist/http-Cu-GPpss.js.map +1 -0
- package/dist/{icon-badge-DZF-YjQp.js → icon-badge-B0Kq7wom.js} +3 -3
- package/dist/{icon-badge-DZF-YjQp.js.map → icon-badge-B0Kq7wom.js.map} +1 -1
- package/dist/index.js +6 -6
- package/dist/inline-gutter-context-CSqmrMFZ.js +11 -0
- package/dist/inline-gutter-context-CSqmrMFZ.js.map +1 -0
- package/dist/{input-DMBwAZmr.js → input-2YrgTUrz.js} +3 -3
- package/dist/{input-DMBwAZmr.js.map → input-2YrgTUrz.js.map} +1 -1
- package/dist/{input-CvyDQlY7.js → input-DfJyrjoR.js} +7 -7
- package/dist/{input-CvyDQlY7.js.map → input-DfJyrjoR.js.map} +1 -1
- package/dist/{interaction-recipes-XR9ZpVYL.js → interaction-recipes-DmuS1ase.js} +2 -2
- package/dist/{interaction-recipes-XR9ZpVYL.js.map → interaction-recipes-DmuS1ase.js.map} +1 -1
- package/dist/item-GJ9mvCcg.js +279 -0
- package/dist/item-GJ9mvCcg.js.map +1 -0
- package/dist/layout/app-shell.js +1 -1
- package/dist/layout/auth.js +1 -1
- package/dist/layout/containers.js +1 -1
- package/dist/layout/header.js +1 -1
- package/dist/layout/hooks.js +1 -1
- package/dist/layout/navigation.js +1 -1
- package/dist/layout/page.js +2 -2
- package/dist/layout/settings.js +2 -2
- package/dist/layout/sidebar.js +3 -3
- package/dist/layout/workspace.js +1 -1
- package/dist/layout.js +12 -12
- package/dist/layout.types-DbtnyAtd.js +33 -0
- package/dist/layout.types-DbtnyAtd.js.map +1 -0
- package/dist/lib/anchored-positioning.d.ts +11 -0
- package/dist/lib/field-affordance-recipes.d.ts +10 -0
- package/dist/lib/field-control-attributes.d.ts +11 -0
- package/dist/lib/field-state-recipes.d.ts +8 -0
- package/dist/lib/focus-recipes.d.ts +7 -0
- package/dist/lib/format.d.ts +26 -0
- package/dist/lib/money-format.d.ts +6 -0
- package/dist/lib/motion-recipes.d.ts +6 -0
- package/dist/lib/surface-recipes.d.ts +33 -3
- package/dist/lib/theme-scope.d.ts +17 -1
- package/dist/lib/token-merge.generated.d.ts +19 -25
- package/dist/lib/ui-provider/index.d.ts +1 -1
- package/dist/lib/ui-provider/types.d.ts +5 -0
- package/dist/lib/use-controllable-state.d.ts +16 -0
- package/dist/lib/use-copy-feedback.d.ts +15 -0
- package/dist/lib/utils.js +1 -1
- package/dist/lib/variant-props.d.ts +9 -0
- package/dist/main-landmark-context-BAsyqp2I.js +11 -0
- package/dist/main-landmark-context-BAsyqp2I.js.map +1 -0
- package/dist/mentions-zz0ewNIq.js +670 -0
- package/dist/mentions-zz0ewNIq.js.map +1 -0
- package/dist/message-BiiVrRrm.js +138 -0
- package/dist/message-BiiVrRrm.js.map +1 -0
- package/dist/{metadata-list-C3MkU-Om.js → metadata-list-G85roWjS.js} +13 -12
- package/dist/metadata-list-G85roWjS.js.map +1 -0
- package/dist/{motion-recipes-DitYv6P2.js → motion-recipes-CUc_aHuG.js} +7 -4
- package/dist/motion-recipes-CUc_aHuG.js.map +1 -0
- package/dist/navigation-C0Be5C3i.js +304 -0
- package/dist/navigation-C0Be5C3i.js.map +1 -0
- package/dist/navigation-CmqaQR_G.js +257 -0
- package/dist/navigation-CmqaQR_G.js.map +1 -0
- package/dist/normalize-layout-path-BmEgg6fu.js +14 -0
- package/dist/normalize-layout-path-BmEgg6fu.js.map +1 -0
- package/dist/number-NFWKIoiK.js +340 -0
- package/dist/number-NFWKIoiK.js.map +1 -0
- package/dist/{overflow-tab-bar-IVFVQFV6.js → overflow-tab-bar-DV7HE_3t.js} +8 -8
- package/dist/{overflow-tab-bar-IVFVQFV6.js.map → overflow-tab-bar-DV7HE_3t.js.map} +1 -1
- package/dist/{overlays-BSgCtM2v.js → overlays-D-gAIfPF.js} +369 -364
- package/dist/overlays-D-gAIfPF.js.map +1 -0
- package/dist/page-D4pQhgSq.js +216 -0
- package/dist/page-D4pQhgSq.js.map +1 -0
- package/dist/{page-header-commands-7P3sfE9u.js → page-header-commands-elelNOfd.js} +29 -29
- package/dist/{page-header-commands-7P3sfE9u.js.map → page-header-commands-elelNOfd.js.map} +1 -1
- package/dist/{pagination-CgCjElfu.js → pagination-BuSWw1US.js} +22 -23
- package/dist/pagination-BuSWw1US.js.map +1 -0
- package/dist/popover-BpMxbqEK.js +205 -0
- package/dist/popover-BpMxbqEK.js.map +1 -0
- package/dist/{popover-menu-DlnQ2zlR.js → popover-menu-CO-_iiuz.js} +7 -7
- package/dist/{popover-menu-DlnQ2zlR.js.map → popover-menu-CO-_iiuz.js.map} +1 -1
- package/dist/{popover.recipes-DdiEp0rd.js → popover.recipes-BqkdvlZn.js} +3 -4
- package/dist/{popover.recipes-DdiEp0rd.js.map → popover.recipes-BqkdvlZn.js.map} +1 -1
- package/dist/{portal-recipes-BpsV_iRw.js → portal-recipes-BPeS4rGB.js} +2 -2
- package/dist/{portal-recipes-BpsV_iRw.js.map → portal-recipes-BPeS4rGB.js.map} +1 -1
- package/dist/primitives-BlC1lXBr.js +447 -0
- package/dist/primitives-BlC1lXBr.js.map +1 -0
- package/dist/primitives.js +4 -4
- package/dist/{progress-BJhQP9WX.js → progress-RARK8AjB.js} +5 -5
- package/dist/{progress-BJhQP9WX.js.map → progress-RARK8AjB.js.map} +1 -1
- package/dist/receipt-CUf2Vegp.js +114 -0
- package/dist/receipt-CUf2Vegp.js.map +1 -0
- package/dist/rich-text-Cypm9__d.js +44 -0
- package/dist/rich-text-Cypm9__d.js.map +1 -0
- package/dist/rich-text-editor-Z6cQepsA.js +919 -0
- package/dist/rich-text-editor-Z6cQepsA.js.map +1 -0
- package/dist/rich-text-editor-toolbar-DYbRJARB.js +100 -0
- package/dist/rich-text-editor-toolbar-DYbRJARB.js.map +1 -0
- package/dist/rich-text-tree-DdKHIJx4.js +154 -0
- package/dist/rich-text-tree-DdKHIJx4.js.map +1 -0
- package/dist/{scroll-area-B0dB2cBi.js → scroll-area-B9HKbji0.js} +3 -3
- package/dist/{scroll-area-B0dB2cBi.js.map → scroll-area-B9HKbji0.js.map} +1 -1
- package/dist/{separator-Ct_WSWTJ.js → separator-DaDe26sf.js} +3 -3
- package/dist/separator-DaDe26sf.js.map +1 -0
- package/dist/{separator-Bb17I4pu.js → separator-KGsNXt2J.js} +2 -2
- package/dist/{separator-Bb17I4pu.js.map → separator-KGsNXt2J.js.map} +1 -1
- package/dist/services/actions/action-adapters.d.ts +5 -2
- package/dist/services/actions/index.d.ts +1 -1
- package/dist/services/actions.js +2 -2
- package/dist/services/actions.js.map +1 -1
- package/dist/settings-D5j_RJvT.js +160 -0
- package/dist/settings-D5j_RJvT.js.map +1 -0
- package/dist/sheet-B6j_BE9O.js +241 -0
- package/dist/sheet-B6j_BE9O.js.map +1 -0
- package/dist/{sidebar-f9gRWXIR.js → sidebar-C-iQ_TJP.js} +379 -350
- package/dist/sidebar-C-iQ_TJP.js.map +1 -0
- package/dist/sidebar-D5VO2W8S.js +715 -0
- package/dist/sidebar-D5VO2W8S.js.map +1 -0
- package/dist/{skeleton-BapcJd9C.js → skeleton-Cab_KgVo.js} +13 -13
- package/dist/skeleton-Cab_KgVo.js.map +1 -0
- package/dist/{smart-card-CW0hjetE.js → smart-card-C59z6KFO.js} +217 -210
- package/dist/smart-card-C59z6KFO.js.map +1 -0
- package/dist/{structure-DuxKl954.js → structure-DElaQwwN.js} +2 -2
- package/dist/{structure-DuxKl954.js.map → structure-DElaQwwN.js.map} +1 -1
- package/dist/style.css +1 -1
- package/dist/{surface-recipes-BKRVW8Os.js → surface-recipes-DV6rrOFq.js} +11 -3
- package/dist/surface-recipes-DV6rrOFq.js.map +1 -0
- package/dist/table-CSRUgpdK.js +180 -0
- package/dist/table-CSRUgpdK.js.map +1 -0
- package/dist/table-DdXDBsR_.js +1657 -0
- package/dist/table-DdXDBsR_.js.map +1 -0
- package/dist/tabs-WnHfV2pM.js +192 -0
- package/dist/tabs-WnHfV2pM.js.map +1 -0
- package/dist/{text-inputs-B1culiSK.js → text-inputs-ljyBYaCd.js} +112 -112
- package/dist/text-inputs-ljyBYaCd.js.map +1 -0
- package/dist/theme.css +21 -5
- package/dist/timelines-mOmS9Eh3.js +479 -0
- package/dist/timelines-mOmS9Eh3.js.map +1 -0
- package/dist/tooltip-yjX-Uv-p.js +112 -0
- package/dist/tooltip-yjX-Uv-p.js.map +1 -0
- package/dist/{tree-CzUJHnFs.js → tree-YpkxUG2Z.js} +80 -72
- package/dist/tree-YpkxUG2Z.js.map +1 -0
- package/dist/typography/rich-text.js +1 -1
- package/dist/{typography-BQnine1k.js → typography-C0dELqYV.js} +46 -40
- package/dist/typography-C0dELqYV.js.map +1 -0
- package/dist/typography.js +1 -1
- package/dist/{ui-provider-C-74NVLc.js → ui-provider-Bu1S-o96.js} +4 -3
- package/dist/ui-provider-Bu1S-o96.js.map +1 -0
- package/dist/ui-provider.js +2 -2
- package/dist/upload-DMuMYJFT.js +875 -0
- package/dist/upload-DMuMYJFT.js.map +1 -0
- package/dist/{usage-card-BeSLY0i0.js → usage-card-DDPki5P1.js} +57 -54
- package/dist/usage-card-DDPki5P1.js.map +1 -0
- package/dist/use-controllable-state-BlP8SyBI.js +13 -0
- package/dist/use-controllable-state-BlP8SyBI.js.map +1 -0
- package/dist/use-copy-feedback-CzcaqlLf.js +28 -0
- package/dist/use-copy-feedback-CzcaqlLf.js.map +1 -0
- package/dist/use-metric-format-options-Dk4rC1NO.js +251 -0
- package/dist/use-metric-format-options-Dk4rC1NO.js.map +1 -0
- package/dist/{utils-B6kKb8jB.js → utils-BVbAG2J6.js} +128 -112
- package/dist/utils-BVbAG2J6.js.map +1 -0
- package/dist/value-inputs-h5MwjGCo.js +982 -0
- package/dist/value-inputs-h5MwjGCo.js.map +1 -0
- package/dist/value-typography-D15uwfj-.js +154 -0
- package/dist/value-typography-D15uwfj-.js.map +1 -0
- package/dist/workspace-DIryPqBt.js +400 -0
- package/dist/workspace-DIryPqBt.js.map +1 -0
- package/docs/consumer-skill/SKILL.md +7 -0
- package/docs/consumer-skill/agents/themelia-ui-designer.md +11 -2
- package/docs/consumer-skill/examples/analytics.tsx +1 -1
- package/docs/consumer-skill/examples/app-layout.tsx +3 -3
- package/docs/consumer-skill/examples/commerce-lines.tsx +7 -5
- package/docs/consumer-skill/examples/detail.tsx +3 -2
- package/docs/consumer-skill/examples/edit.tsx +3 -3
- package/docs/consumer-skill/examples/email-composer.tsx +1 -1
- package/docs/consumer-skill/examples/index-table.tsx +2 -2
- package/docs/consumer-skill/examples/scoped-directory.tsx +7 -6
- package/docs/consumer-skill/references/agents-md.md +27 -23
- package/docs/consumer-skill/references/analytics.md +33 -4
- package/docs/consumer-skill/references/building-views.md +213 -0
- package/docs/consumer-skill/references/catalogue.md +617 -0
- package/docs/consumer-skill/references/component-contracts.json +25852 -32067
- package/docs/consumer-skill/references/composition.md +42 -21
- package/docs/consumer-skill/references/design-contract.md +1 -0
- package/docs/consumer-skill/references/discovery.md +8 -5
- package/docs/consumer-skill/references/installation.md +59 -10
- package/docs/consumer-skill/references/integration.md +28 -5
- package/docs/consumer-skill/references/product-composition.md +2 -2
- package/docs/consumer-skill/references/public-api.json +726 -641
- package/docs/consumer-skill/references/review.md +57 -15
- package/docs/consumer-skill/references/rhf-workflows.md +72 -0
- package/docs/consumer-skill/references/screen-archetypes.md +2 -2
- package/docs/consumer-skill/references/theming.md +8 -3
- package/docs/consumer-skill/references/tokens.json +4 -4
- package/docs/consumer-skill/references/workflows.md +7 -7
- package/docs/consumer-skill/scripts/composition-policy.mjs +178 -44
- package/docs/consumer-skill/scripts/composition.mjs +4 -1
- package/docs/consumer-skill/scripts/discovery.mjs +3 -1
- package/docs/consumer-skill/scripts/setup-skills.mjs +74 -10
- package/docs/consumer-skills/themelia-components/SKILL.md +8 -4
- package/docs/consumer-skills/themelia-composition/SKILL.md +7 -3
- package/docs/consumer-skills/themelia-design/SKILL.md +7 -1
- package/docs/consumer-skills/themelia-tokenization/SKILL.md +1 -1
- package/package.json +12 -13
- package/templates/README.md +3 -2
- package/templates/admin-shell-template.tsx +50 -11
- package/templates/analytics-operations-template.tsx +20 -24
- package/templates/customers-template.tsx +30 -25
- package/templates/index.ts +2 -8
- package/templates/orders-template.tsx +28 -24
- package/templates/products-template.tsx +14 -4
- package/templates/user-permissions-template.tsx +11 -14
- package/dist/accordion-B9MHG0cT.js.map +0 -1
- package/dist/action-menu-Dr8K-ghE.js +0 -284
- package/dist/action-menu-Dr8K-ghE.js.map +0 -1
- package/dist/ai-artifact-C58tQcBy.js +0 -1185
- package/dist/ai-artifact-C58tQcBy.js.map +0 -1
- package/dist/anchored-positioning-DPnKTvNs.js +0 -6
- package/dist/anchored-positioning-DPnKTvNs.js.map +0 -1
- package/dist/app-shell-B_IuNWOo.js +0 -321
- package/dist/app-shell-B_IuNWOo.js.map +0 -1
- package/dist/auth-DTkkshS8.js.map +0 -1
- package/dist/badge-xIiV_E7f.js.map +0 -1
- package/dist/base/sheet.js +0 -3
- package/dist/breadcrumbs-J-K2kl4c.js +0 -129
- package/dist/breadcrumbs-J-K2kl4c.js.map +0 -1
- package/dist/button-S2Cubiiz.js.map +0 -1
- package/dist/buttons-BedGfygC.js.map +0 -1
- package/dist/cascader-B1MiqkBq.js +0 -439
- package/dist/cascader-B1MiqkBq.js.map +0 -1
- package/dist/choice-inputs-zUgBZfE4.js.map +0 -1
- package/dist/code-block-BzmM9Eig.js.map +0 -1
- package/dist/collapsible-BkAI_XD4.js +0 -81
- package/dist/collapsible-BkAI_XD4.js.map +0 -1
- package/dist/combobox-BEx0vJgF.js +0 -362
- package/dist/combobox-BEx0vJgF.js.map +0 -1
- package/dist/combobox-BwzoXFSG.js +0 -884
- package/dist/combobox-BwzoXFSG.js.map +0 -1
- package/dist/command-CrlPIL6m.js +0 -425
- package/dist/command-CrlPIL6m.js.map +0 -1
- package/dist/comments-Dmpp0YIc.js +0 -1169
- package/dist/comments-Dmpp0YIc.js.map +0 -1
- package/dist/components/base/buttons/tooltip-button.d.ts +0 -7
- package/dist/components/base/display/content-block.d.ts +0 -75
- package/dist/components/base/display/content-block.strings.d.ts +0 -5
- package/dist/components/base/sheet/index.d.ts +0 -29
- package/dist/components/blocks/ai/use-copy-feedback.d.ts +0 -6
- package/dist/components/blocks/data-display/metadata/index.d.ts +0 -30
- package/dist/components/features/mentions/utils/split-html-by-mentions.d.ts +0 -16
- package/dist/components/features/resource/resource.strings.d.ts +0 -12
- package/dist/components/features/rich-text-editor/partials/rich-text-editor-fallback.d.ts +0 -8
- package/dist/components/features/sync/index.d.ts +0 -26
- package/dist/components/features/sync/sync-range-dialog-form.d.ts +0 -5
- package/dist/components/features/sync/sync.strings.d.ts +0 -18
- package/dist/components/features/sync/sync.types.d.ts +0 -44
- package/dist/components/layout/page/partials/page-actions.d.ts +0 -3
- package/dist/components/ui/slot.d.ts +0 -6
- package/dist/containers-CIxwbZt5.js.map +0 -1
- package/dist/data-display-BdgCAw8T.js.map +0 -1
- package/dist/date-Cq8ioE4o.js +0 -144
- package/dist/date-Cq8ioE4o.js.map +0 -1
- package/dist/date-picker-RlIzKom_.js +0 -1551
- package/dist/date-picker-RlIzKom_.js.map +0 -1
- package/dist/date-pickers-DY-CpXS1.js +0 -179
- package/dist/date-pickers-DY-CpXS1.js.map +0 -1
- package/dist/display-KsZLw9Ov.js.map +0 -1
- package/dist/features/sync.js +0 -142
- package/dist/features/sync.js.map +0 -1
- package/dist/feedback-Dm4izqFn.js +0 -240
- package/dist/feedback-Dm4izqFn.js.map +0 -1
- package/dist/field-affordance-recipes-DWcNcOjh.js.map +0 -1
- package/dist/field-state-recipes-BVA2CWHo.js +0 -12
- package/dist/field-state-recipes-BVA2CWHo.js.map +0 -1
- package/dist/filters-DzgSJpMK.js +0 -2257
- package/dist/filters-DzgSJpMK.js.map +0 -1
- package/dist/focus-recipes-B653VaLq.js.map +0 -1
- package/dist/form-field-BriWAXyg.js +0 -63
- package/dist/form-field-BriWAXyg.js.map +0 -1
- package/dist/forms-C0RGnJTe.js.map +0 -1
- package/dist/forms-numeric-DIhghX1Q.js +0 -910
- package/dist/forms-numeric-DIhghX1Q.js.map +0 -1
- package/dist/header-DMMxG__r.js.map +0 -1
- package/dist/hooks-DB6CJ4MR.js.map +0 -1
- package/dist/http-D_6rOnzU.js.map +0 -1
- package/dist/item-DjCcM18E.js +0 -277
- package/dist/item-DjCcM18E.js.map +0 -1
- package/dist/layout.types-Cn7aUzJp.js +0 -20
- package/dist/layout.types-Cn7aUzJp.js.map +0 -1
- package/dist/media-gallery-C-vChPmE.js +0 -203
- package/dist/media-gallery-C-vChPmE.js.map +0 -1
- package/dist/mentions-0_4nWuI-.js +0 -570
- package/dist/mentions-0_4nWuI-.js.map +0 -1
- package/dist/message-g8p7eVtN.js +0 -128
- package/dist/message-g8p7eVtN.js.map +0 -1
- package/dist/metadata-list-C3MkU-Om.js.map +0 -1
- package/dist/motion-recipes-DitYv6P2.js.map +0 -1
- package/dist/navigation-C90-oQFq.js +0 -255
- package/dist/navigation-C90-oQFq.js.map +0 -1
- package/dist/navigation-DaRjthVk.js +0 -288
- package/dist/navigation-DaRjthVk.js.map +0 -1
- package/dist/number-CRU3kGuk.js +0 -354
- package/dist/number-CRU3kGuk.js.map +0 -1
- package/dist/overlays-BSgCtM2v.js.map +0 -1
- package/dist/page-DUUKDAjo.js +0 -331
- package/dist/page-DUUKDAjo.js.map +0 -1
- package/dist/pagination-CgCjElfu.js.map +0 -1
- package/dist/popover-B85RenIl.js +0 -201
- package/dist/popover-B85RenIl.js.map +0 -1
- package/dist/primitives-ByWgGUgt.js +0 -380
- package/dist/primitives-ByWgGUgt.js.map +0 -1
- package/dist/receipt-tOc7B3hw.js +0 -116
- package/dist/receipt-tOc7B3hw.js.map +0 -1
- package/dist/rich-text-Dth5E882.js +0 -78
- package/dist/rich-text-Dth5E882.js.map +0 -1
- package/dist/rich-text-editor-C1fOjBTd.js +0 -1195
- package/dist/rich-text-editor-C1fOjBTd.js.map +0 -1
- package/dist/rich-text-editor-toolbar-laT3tpBT.js +0 -98
- package/dist/rich-text-editor-toolbar-laT3tpBT.js.map +0 -1
- package/dist/sanitize-html-DsQmI48u.js +0 -92
- package/dist/sanitize-html-DsQmI48u.js.map +0 -1
- package/dist/separator-Ct_WSWTJ.js.map +0 -1
- package/dist/settings-Bar5wiSo.js +0 -167
- package/dist/settings-Bar5wiSo.js.map +0 -1
- package/dist/sheet-BGPERY55.js +0 -250
- package/dist/sheet-BGPERY55.js.map +0 -1
- package/dist/sidebar-D-JYMMbY.js +0 -686
- package/dist/sidebar-D-JYMMbY.js.map +0 -1
- package/dist/sidebar-f9gRWXIR.js.map +0 -1
- package/dist/skeleton-BapcJd9C.js.map +0 -1
- package/dist/slot-CLF9kLrS.js +0 -16
- package/dist/slot-CLF9kLrS.js.map +0 -1
- package/dist/smart-card-CW0hjetE.js.map +0 -1
- package/dist/surface-recipes-BKRVW8Os.js.map +0 -1
- package/dist/table-B4TE7iOV.js +0 -175
- package/dist/table-B4TE7iOV.js.map +0 -1
- package/dist/table-CFOWY9pQ.js +0 -1536
- package/dist/table-CFOWY9pQ.js.map +0 -1
- package/dist/tabs-e7ko9S2o.js +0 -191
- package/dist/tabs-e7ko9S2o.js.map +0 -1
- package/dist/text-inputs-B1culiSK.js.map +0 -1
- package/dist/timelines-D3Sl9ueq.js +0 -458
- package/dist/timelines-D3Sl9ueq.js.map +0 -1
- package/dist/tooltip-8wz5S_Zr.js +0 -113
- package/dist/tooltip-8wz5S_Zr.js.map +0 -1
- package/dist/tree-CzUJHnFs.js.map +0 -1
- package/dist/typography-BQnine1k.js.map +0 -1
- package/dist/ui-provider-C-74NVLc.js.map +0 -1
- package/dist/upload-BOW6U2tI.js +0 -855
- package/dist/upload-BOW6U2tI.js.map +0 -1
- package/dist/upload-queue-qUXn1ykN.js +0 -409
- package/dist/upload-queue-qUXn1ykN.js.map +0 -1
- package/dist/usage-card-BeSLY0i0.js.map +0 -1
- package/dist/utils-B6kKb8jB.js.map +0 -1
- package/dist/value-inputs-skdVB2zh.js +0 -980
- package/dist/value-inputs-skdVB2zh.js.map +0 -1
- package/dist/value-typography-uAmWUAL1.js +0 -116
- package/dist/value-typography-uAmWUAL1.js.map +0 -1
- package/dist/workspace-DHeHv0qw.js +0 -411
- package/dist/workspace-DHeHv0qw.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooltip-yjX-Uv-p.js","names":["TooltipProvider","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","Tooltip","BaseTooltip","TooltipProviderPrimitive","TooltipTriggerPrimitive","TooltipContentPrimitive","useThemePortalContainer","Text","anchoredPositionMethod","portalClassName","motionRecipes","TooltipProvider$1","props","Tooltip","delayDuration","delay","Tooltip$2","TooltipTrigger$1","safeRender","render","_nativeButton","rest","renderProps","state","TooltipContent$1","resolvedContainer","container","cn","className","TooltipDescriptionContext","createContext","SharedTooltipProviderContext","Tooltip$1","hasSharedProvider","useContext","generatedId","useId","descriptionId","setDescriptionId","useState","root","TooltipProvider","TooltipTrigger","TooltipContent","description","content","children"],"sources":["../src/components/ui/tooltip.tsx","../src/components/base/display/tooltip.tsx"],"sourcesContent":["import { anchoredPositionMethod } from '../../lib/anchored-positioning';\nimport { portalClassName } from '../../lib/portal-recipes';\nimport { motionRecipes } from '../../lib/motion-recipes';\nimport { useThemePortalContainer, type ThemePortalContainer } from '../../lib/theme-scope';\nimport { Tooltip as TooltipPrimitive } from \"@base-ui/react/tooltip\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction TooltipProvider({\n delay = 0,\n delayDuration,\n ...props\n}: TooltipPrimitive.Provider.Props & { delayDuration?: number }) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delay={delayDuration ?? delay}\n {...props}\n />\n )\n}\n\nfunction Tooltip({ ...props }: TooltipPrimitive.Root.Props) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n )\n}\n\nfunction TooltipTrigger({\n render,\n children,\n ...props\n}: TooltipPrimitive.Trigger.Props) {\n const safeRender: TooltipPrimitive.Trigger.Props[\"render\"] = typeof render === \"function\"\n ? ((renderProps, state) => {\n const { nativeButton: _nativeButton, ...rest } = renderProps as Record<string, unknown>\n void _nativeButton\n return render(rest as typeof renderProps, state)\n })\n : render\n\n return (\n <TooltipPrimitive.Trigger\n data-slot=\"tooltip-trigger\"\n render={safeRender}\n {...props}\n >\n {children}\n </TooltipPrimitive.Trigger>\n )\n}\n\nfunction TooltipContent({\n className,\n container,\n side = \"top\",\n sideOffset = 4,\n align = \"center\",\n alignOffset = 0,\n positionMethod = anchoredPositionMethod,\n children,\n ...props\n}: TooltipPrimitive.Popup.Props &\n Pick<\n TooltipPrimitive.Positioner.Props,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"positionMethod\"\n > & { container?: ThemePortalContainer }) {\n const resolvedContainer = useThemePortalContainer(container)\n return (\n <TooltipPrimitive.Portal container={resolvedContainer} className={portalClassName()}>\n <TooltipPrimitive.Positioner\n positionMethod={positionMethod}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <TooltipPrimitive.Popup\n data-slot=\"tooltip-content\"\n className={cn(\n motionRecipes.popup,\n \"rounded-radius-xs px-space-md py-space-xs text-xs bg-inverse-background text-inverse-foreground z-50 w-fit max-w-xs origin-(--transform-origin)\",\n className\n )}\n {...props}\n >\n {children}\n </TooltipPrimitive.Popup>\n </TooltipPrimitive.Positioner>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }\n","/** Tokenized base wrappers for short, non-interactive contextual help. */\nimport { Tooltip as BaseTooltip } from '@base-ui/react/tooltip';\nimport { createContext, useContext, useId, useLayoutEffect, useState, type ComponentProps } from 'react';\n\nimport {\n\tTooltipContent as TooltipContentPrimitive,\n\tTooltipProvider as TooltipProviderPrimitive,\n\tTooltipTrigger as TooltipTriggerPrimitive,\n} from '../../ui/tooltip';\nimport { Text } from '../../typography';\nimport { cn } from '../../../lib/utils';\n\nexport type TooltipProps = ComponentProps<typeof BaseTooltip.Root>;\nexport type TooltipProviderProps = ComponentProps<typeof TooltipProviderPrimitive>;\nexport type TooltipTriggerProps = ComponentProps<typeof TooltipTriggerPrimitive>;\nexport type TooltipContentProps = ComponentProps<typeof TooltipContentPrimitive>;\n\nconst TooltipDescriptionContext = createContext<{ id: string; setId: (id: string) => void } | undefined>(undefined);\n\nconst SharedTooltipProviderContext = createContext(false);\n\n/** Tooltip state root. It does not render a DOM node. */\nexport function Tooltip(props: TooltipProps) {\n\tconst hasSharedProvider = useContext(SharedTooltipProviderContext);\n\tconst generatedId = useId();\n\tconst [descriptionId, setDescriptionId] = useState(generatedId);\n\tconst root = <TooltipDescriptionContext.Provider value={{ id: descriptionId, setId: setDescriptionId }}><BaseTooltip.Root data-slot=\"tooltip\" {...props} /></TooltipDescriptionContext.Provider>;\n\n\treturn hasSharedProvider ? root : <TooltipProviderPrimitive>{root}</TooltipProviderPrimitive>;\n}\n\n/** Shared delay provider for a group of tooltip roots. Nested Tooltip roots reuse it. */\nexport function TooltipProvider(props: TooltipProviderProps) {\n\treturn (\n\t\t<SharedTooltipProviderContext.Provider value>\n\t\t\t<TooltipProviderPrimitive {...props} />\n\t\t</SharedTooltipProviderContext.Provider>\n\t);\n}\n\n/** Polymorphic tooltip anchor. */\nexport function TooltipTrigger({ className, ...props }: TooltipTriggerProps) {\n\tconst description = useContext(TooltipDescriptionContext);\n\tconst descriptionId = description?.id;\n\treturn (\n\t\t<TooltipTriggerPrimitive\n\t\t\tclassName={cn('tooltip-trigger--component', className)}\n\t\t\t{...props}\n\t\t\taria-describedby={[props['aria-describedby'], descriptionId].filter(Boolean).join(' ') || undefined}\n\t\t/>\n\t);\n}\n\n/** Inverse contextual-help surface with package spacing and typography. */\nexport function TooltipContent({ children, className, ...props }: TooltipContentProps) {\n\tconst description = useContext(TooltipDescriptionContext);\n\tconst descriptionId = props.id ?? description?.id;\n\tconst setDescriptionId = description?.setId;\n\tuseLayoutEffect(() => { if (descriptionId) setDescriptionId?.(descriptionId); }, [descriptionId, setDescriptionId]);\n\tconst isSimpleText = typeof children === 'string' || typeof children === 'number' || typeof children === 'bigint';\n\tconst content = isSimpleText ? (\n\t\t\t<Text\n\t\t\t\ttag=\"span\"\n\t\t\t\tsize=\"inherit\"\n\t\t\t\t\n\t\t\t\tlineHeight=\"snug\"\n\t\t\t\tclassName=\"tooltip-content--text text-inherit\"\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Text>\n\t\t) : children;\n\n\treturn (\n\t\t<TooltipContentPrimitive\n\t\t\tid={descriptionId}\n\t\t\trole=\"tooltip\"\n\t\t\tclassName={cn(\n\t\t\t\t// Short labels use compact corners, including Button and sidebar hints.\n\t\t\t\t'tooltip-content--component max-w-xs rounded-radius-xs px-space-md py-space-xs text-xs leading-snug',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{content}\n\t\t</TooltipContentPrimitive>\n\t);\n}\n\nTooltip.displayName = 'Tooltip';\nTooltipProvider.displayName = 'TooltipProvider';\nTooltipTrigger.displayName = 'TooltipTrigger';\nTooltipContent.displayName = 'TooltipContent';\n"],"mappings":"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"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
import { t } from "./
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { t as a } from "./
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { t as
|
|
11
|
-
import { t as
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
2
|
+
import { y as e } from "./ui-provider-Bu1S-o96.js";
|
|
3
|
+
import { useStrings as t } from "./lib/strings.js";
|
|
4
|
+
import { t as n } from "./utils-BVbAG2J6.js";
|
|
5
|
+
import { c as r } from "./typography-C0dELqYV.js";
|
|
6
|
+
import { s as i } from "./text.styles-B64My8RZ.js";
|
|
7
|
+
import { t as a } from "./focus-recipes-DSkiUvUp.js";
|
|
8
|
+
import { t as o } from "./button-rd6FiHfQ.js";
|
|
9
|
+
import { n as s } from "./icon-size-B6PVwjbC.js";
|
|
10
|
+
import { t as c } from "./row-recipes-DL8n7t_b.js";
|
|
11
|
+
import { t as ee } from "./collection-content-D7SoDlYd.js";
|
|
12
|
+
import { t as te } from "./interaction-recipes-DmuS1ase.js";
|
|
13
|
+
import { n as l, r as ne, t as u } from "./navigation-row-recipes-BGVLvU_O.js";
|
|
14
|
+
import { useLayoutEffect as d, useMemo as f, useRef as p, useState as m } from "react";
|
|
15
|
+
import { jsx as h, jsxs as g } from "react/jsx-runtime";
|
|
16
|
+
import { Check as re, ChevronDown as ie, ChevronRight as ae } from "lucide-react";
|
|
16
17
|
//#region src/components/base/tree/hierarchy.ts
|
|
17
18
|
function _(e) {
|
|
18
19
|
let t = /* @__PURE__ */ new Map();
|
|
@@ -30,21 +31,28 @@ function _(e) {
|
|
|
30
31
|
}
|
|
31
32
|
return n(e, [], !1), t;
|
|
32
33
|
}
|
|
33
|
-
function
|
|
34
|
+
function oe(e, t) {
|
|
34
35
|
let n = new Set(t);
|
|
35
36
|
return [...e.values()].filter((e) => e.path.slice(0, -1).every((e) => n.has(e.value)));
|
|
36
37
|
}
|
|
37
|
-
function
|
|
38
|
+
function v(e) {
|
|
38
39
|
return !!(e.hasChildren || e.children?.length);
|
|
39
40
|
}
|
|
40
41
|
//#endregion
|
|
42
|
+
//#region src/components/base/tree/tree.types.ts
|
|
43
|
+
var y = {
|
|
44
|
+
expand: (e) => `Expand ${e}`,
|
|
45
|
+
collapse: (e) => `Collapse ${e}`,
|
|
46
|
+
empty: "No items"
|
|
47
|
+
};
|
|
48
|
+
//#endregion
|
|
41
49
|
//#region src/components/base/tree/tree.tsx
|
|
42
|
-
function b({ items: b, expandedValues: x, defaultExpandedValues:
|
|
43
|
-
let [N, P] =
|
|
50
|
+
function b({ items: b, expandedValues: x, defaultExpandedValues: se = [], onExpandedValuesChange: S, selectedValues: C, defaultSelectedValues: w = [], onSelectedValuesChange: T, selectionMode: E = "single", branchActivation: D = "select", disabled: O = !1, density: k = "compact", rowLayout: A = "line", indent: j, showGuides: ce = !0, empty: le, strings: ue, renderLabel: de, className: fe, onKeyDown: pe, ...me }) {
|
|
51
|
+
let M = t(y, ue), [N, P] = m(se), [F, I] = m(w), L = x ?? N, R = C ?? F, z = f(() => _(b), [b]), B = oe(z, L).filter((e) => !e.disabled), [V, H] = m(null), U = new Set(B.map((e) => e.node.value)), he = V === null ? void 0 : z.get(V)?.path.slice(0, -1).reverse().find((e) => U.has(e.value))?.value, W = V !== null && U.has(V) ? V : he ?? B.find((e) => R.includes(e.node.value))?.node.value ?? B[0]?.node.value, G = p(/* @__PURE__ */ new Map()), K = p(null), q = p({
|
|
44
52
|
text: "",
|
|
45
53
|
time: 0
|
|
46
|
-
}), { defaultTextSize:
|
|
47
|
-
|
|
54
|
+
}), { defaultTextSize: ge } = e(), J = l[k], Y = A === "rich";
|
|
55
|
+
d(() => {
|
|
48
56
|
let e = K.current;
|
|
49
57
|
!O && W !== void 0 && e && (e === document.activeElement || !e.isConnected && document.activeElement === document.body) && G.current.get(W)?.focus();
|
|
50
58
|
}, [W, O]);
|
|
@@ -58,7 +66,7 @@ function b({ items: b, expandedValues: x, defaultExpandedValues: ae = [], onExpa
|
|
|
58
66
|
}
|
|
59
67
|
function Q(e) {
|
|
60
68
|
if (O || z.get(e.value)?.disabled) return;
|
|
61
|
-
if (D === "toggle" &&
|
|
69
|
+
if (D === "toggle" && v(e)) {
|
|
62
70
|
Z(e);
|
|
63
71
|
return;
|
|
64
72
|
}
|
|
@@ -66,8 +74,8 @@ function b({ items: b, expandedValues: x, defaultExpandedValues: ae = [], onExpa
|
|
|
66
74
|
let t = E === "multiple" ? R.includes(e.value) ? R.filter((t) => t !== e.value) : [...R, e.value] : [e.value];
|
|
67
75
|
C === void 0 && I(t), T?.(t, e);
|
|
68
76
|
}
|
|
69
|
-
function
|
|
70
|
-
if (
|
|
77
|
+
function _e(e) {
|
|
78
|
+
if (pe?.(e), e.defaultPrevented || O || e.target.closest("button") || e.target.closest("[role=tree]") !== e.currentTarget) return;
|
|
71
79
|
let t = B.findIndex((e) => e.node.value === V), n = z.get(V ?? W ?? "");
|
|
72
80
|
if (!n) return;
|
|
73
81
|
let r = getComputedStyle(e.currentTarget).direction === "rtl", i = r ? "ArrowLeft" : "ArrowRight", a = r ? "ArrowRight" : "ArrowLeft";
|
|
@@ -75,11 +83,11 @@ function b({ items: b, expandedValues: x, defaultExpandedValues: ae = [], onExpa
|
|
|
75
83
|
else if (e.key === "ArrowUp") X(B[Math.max(t - 1, 0)]?.node.value);
|
|
76
84
|
else if (e.key === "Home") X(B[0]?.node.value);
|
|
77
85
|
else if (e.key === "End") X(B.at(-1)?.node.value);
|
|
78
|
-
else if (e.key === i &&
|
|
79
|
-
else if (e.key === a)
|
|
86
|
+
else if (e.key === i && v(n.node)) L.includes(n.node.value) ? X(n.node.children?.find((e) => !z.get(e.value)?.disabled)?.value) : Z(n.node);
|
|
87
|
+
else if (e.key === a) v(n.node) && L.includes(n.node.value) ? Z(n.node) : X(n.parent ?? void 0);
|
|
80
88
|
else if (e.key === "Enter" || e.key === " ") Q(n.node);
|
|
81
89
|
else if (e.key === "*") {
|
|
82
|
-
let e = [.../* @__PURE__ */ new Set([...L, ...[...z.values()].filter((e) => e.parent === n.parent && !e.disabled &&
|
|
90
|
+
let e = [.../* @__PURE__ */ new Set([...L, ...[...z.values()].filter((e) => e.parent === n.parent && !e.disabled && v(e.node)).map((e) => e.node.value)])];
|
|
83
91
|
x === void 0 && P(e), S?.(e, n.node);
|
|
84
92
|
} else if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) {
|
|
85
93
|
let n = Date.now();
|
|
@@ -89,99 +97,99 @@ function b({ items: b, expandedValues: x, defaultExpandedValues: ae = [], onExpa
|
|
|
89
97
|
} else return;
|
|
90
98
|
e.preventDefault();
|
|
91
99
|
}
|
|
92
|
-
function $(e,
|
|
93
|
-
return e.map((
|
|
94
|
-
let
|
|
95
|
-
return /* @__PURE__ */
|
|
96
|
-
"data-tree-value":
|
|
100
|
+
function $(e, t) {
|
|
101
|
+
return e.map((r, l) => {
|
|
102
|
+
let d = O || !!z.get(r.value)?.disabled, f = v(r), p = L.includes(r.value), m = R.includes(r.value);
|
|
103
|
+
return /* @__PURE__ */ g("div", {
|
|
104
|
+
"data-tree-value": r.value,
|
|
97
105
|
className: "tree--branch min-w-0 outline-none [&:focus-visible>.tree--item]:inset-ring [&:focus-visible>.tree--item]:inset-ring-ring [&:focus-visible>.tree--item]:ring-3 [&:focus-visible>.tree--item]:ring-ring/50",
|
|
98
106
|
ref: (e) => {
|
|
99
|
-
e ? G.current.set(
|
|
107
|
+
e ? G.current.set(r.value, e) : G.current.delete(r.value);
|
|
100
108
|
},
|
|
101
109
|
role: "treeitem",
|
|
102
|
-
"aria-label":
|
|
103
|
-
"aria-level":
|
|
110
|
+
"aria-label": r.label,
|
|
111
|
+
"aria-level": t,
|
|
104
112
|
"aria-posinset": l + 1,
|
|
105
113
|
"aria-setsize": e.length,
|
|
106
|
-
title: !Y && typeof
|
|
107
|
-
"aria-description": !Y && typeof
|
|
108
|
-
"aria-expanded":
|
|
109
|
-
"aria-selected": E !== "none" && !(
|
|
110
|
-
"aria-disabled":
|
|
111
|
-
tabIndex: !
|
|
114
|
+
title: !Y && typeof r.description == "string" ? r.description : void 0,
|
|
115
|
+
"aria-description": !Y && typeof r.description == "string" ? r.description : void 0,
|
|
116
|
+
"aria-expanded": f ? p : void 0,
|
|
117
|
+
"aria-selected": E !== "none" && !(f && D === "toggle") ? m : void 0,
|
|
118
|
+
"aria-disabled": d || void 0,
|
|
119
|
+
tabIndex: !d && W === r.value ? 0 : -1,
|
|
112
120
|
onFocus: (e) => {
|
|
113
|
-
e.target === e.currentTarget && (K.current = e.currentTarget, H(
|
|
121
|
+
e.target === e.currentTarget && (K.current = e.currentTarget, H(r.value));
|
|
114
122
|
},
|
|
115
123
|
onClick: (e) => {
|
|
116
|
-
!
|
|
124
|
+
!d && e.target.closest("[role=treeitem]") === e.currentTarget && (X(r.value), Q(r));
|
|
117
125
|
},
|
|
118
|
-
children: [/* @__PURE__ */
|
|
119
|
-
"data-selected":
|
|
120
|
-
"data-disabled":
|
|
121
|
-
className:
|
|
122
|
-
children: [/* @__PURE__ */
|
|
126
|
+
children: [/* @__PURE__ */ g("div", {
|
|
127
|
+
"data-selected": m || void 0,
|
|
128
|
+
"data-disabled": d || void 0,
|
|
129
|
+
className: n(`tree--item flex w-full items-center cursor-default outline-none ${te.rowHover} ${a.edge} data-selected:bg-accent data-selected:hover:bg-accent data-selected:text-accent-foreground data-disabled:opacity-50`, ne, Y ? c[k] : t === 1 ? J.height : J.childHeight, i[ge ?? "sm"]),
|
|
130
|
+
children: [/* @__PURE__ */ h("span", {
|
|
123
131
|
className: "tree--caret relative size-icon-sm shrink-0",
|
|
124
|
-
children:
|
|
132
|
+
children: f && /* @__PURE__ */ h(o, {
|
|
125
133
|
variant: "ghost",
|
|
126
134
|
size: "icon-xs",
|
|
127
135
|
className: "tree--disclosure absolute start-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 rounded-radius rtl:translate-x-1/2 disabled:opacity-100 aria-disabled:opacity-100",
|
|
128
136
|
tabIndex: -1,
|
|
129
|
-
disabled:
|
|
130
|
-
"aria-label":
|
|
137
|
+
disabled: d,
|
|
138
|
+
"aria-label": p ? M.collapse(r.label) : M.expand(r.label),
|
|
131
139
|
onClick: (e) => {
|
|
132
|
-
e.stopPropagation(), X(
|
|
140
|
+
e.stopPropagation(), X(r.value), Z(r);
|
|
133
141
|
},
|
|
134
|
-
children:
|
|
142
|
+
children: p ? /* @__PURE__ */ h(ie, {
|
|
135
143
|
"aria-hidden": "true",
|
|
136
144
|
className: "size-icon-sm"
|
|
137
|
-
}) : /* @__PURE__ */
|
|
145
|
+
}) : /* @__PURE__ */ h(ae, {
|
|
138
146
|
"aria-hidden": "true",
|
|
139
147
|
className: "size-icon-sm rtl:rotate-180"
|
|
140
148
|
})
|
|
141
149
|
})
|
|
142
|
-
}), /* @__PURE__ */
|
|
143
|
-
label:
|
|
144
|
-
description: Y ?
|
|
145
|
-
leading:
|
|
146
|
-
leadingClassName:
|
|
150
|
+
}), /* @__PURE__ */ h(ee, {
|
|
151
|
+
label: de?.(r) ?? r.label,
|
|
152
|
+
description: Y ? r.description : void 0,
|
|
153
|
+
leading: r.icon,
|
|
154
|
+
leadingClassName: s.md,
|
|
147
155
|
leadingDecorative: !0,
|
|
148
156
|
wrap: Y,
|
|
149
157
|
bodyClassName: Y ? void 0 : "overflow-hidden",
|
|
150
|
-
trailing:
|
|
158
|
+
trailing: r.trailing != null || m && E === "multiple" ? /* @__PURE__ */ g("span", {
|
|
151
159
|
className: "inline-flex shrink-0 items-center gap-space-sm",
|
|
152
|
-
children: [
|
|
160
|
+
children: [r.trailing, m && E === "multiple" && /* @__PURE__ */ h(re, {
|
|
153
161
|
"aria-hidden": "true",
|
|
154
162
|
className: "size-icon shrink-0"
|
|
155
163
|
})]
|
|
156
164
|
}) : void 0
|
|
157
165
|
})]
|
|
158
|
-
}),
|
|
166
|
+
}), f && p && !!r.children?.length && /* @__PURE__ */ h("div", {
|
|
159
167
|
role: "group",
|
|
160
|
-
className:
|
|
168
|
+
className: n("tree--group flex flex-col border-s", u, J.childGap, ce ? "border-border" : "border-transparent"),
|
|
161
169
|
style: j === void 0 ? void 0 : {
|
|
162
170
|
marginInlineStart: Math.max(0, j) / 2,
|
|
163
171
|
paddingInlineStart: Math.max(0, j) / 2
|
|
164
172
|
},
|
|
165
|
-
children: $(
|
|
173
|
+
children: $(r.children, t + 1)
|
|
166
174
|
})]
|
|
167
|
-
},
|
|
175
|
+
}, r.value);
|
|
168
176
|
});
|
|
169
177
|
}
|
|
170
|
-
return /* @__PURE__ */
|
|
171
|
-
...
|
|
178
|
+
return /* @__PURE__ */ h("div", {
|
|
179
|
+
...me,
|
|
172
180
|
role: "tree",
|
|
173
181
|
"data-row-layout": A,
|
|
174
182
|
"aria-multiselectable": E === "multiple" || void 0,
|
|
175
183
|
"aria-disabled": O || void 0,
|
|
176
|
-
onKeyDown:
|
|
177
|
-
className:
|
|
178
|
-
children: b.length ? $(b, 1) : /* @__PURE__ */
|
|
184
|
+
onKeyDown: _e,
|
|
185
|
+
className: n("tree--component flex min-w-0 flex-col", J.gap, fe),
|
|
186
|
+
children: b.length ? $(b, 1) : /* @__PURE__ */ h(r, {
|
|
179
187
|
type: "secondary",
|
|
180
|
-
children:
|
|
188
|
+
children: le ?? M.empty
|
|
181
189
|
})
|
|
182
190
|
});
|
|
183
191
|
}
|
|
184
192
|
//#endregion
|
|
185
|
-
export {
|
|
193
|
+
export { v as i, y as n, _ as r, b as t };
|
|
186
194
|
|
|
187
|
-
//# sourceMappingURL=tree-
|
|
195
|
+
//# sourceMappingURL=tree-YpkxUG2Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-YpkxUG2Z.js","names":["DisclosureButton","useTypographyConfig","cn","Text","textSizes","focusRecipes","Button","ICON_DESCENDANT_SIZE_CLASSNAMES","rowBlockPaddingClasses","CollectionContent","interactionRecipes","navigationRowDensityRecipes","navigationRowInlineClasses","navigationChildInsetClasses","indexHierarchy","index","visit","node","nodes","entry","path","disabled","items","visibleHierarchy","open","expanded","isBranch","defaultTreeStrings","label","Tree","stringsProp","props","strings","useStrings","localExpanded","setLocalExpanded","useState","defaultExpandedValues","localSelected","setLocalSelected","defaultSelectedValues","expandedValues","selected","selectedValues","useMemo","visible","focused","setFocused","visibleValues","visibleAncestor","focusValue","refs","useRef","focusedElement","search","recipe","density","rich","rowLayout","previous","focus","value","toggle","next","onExpandedValuesChange","select","branchActivation","selectionMode","onSelectedValuesChange","keyboard","onKeyDown","event","position","rtl","forward","backward","item","now","term","letter","rows","blocked","branch","checked","element","level","defaultTextSize","ChevronDown","ChevronRight","renderLabel","Check","showGuides","indent","className","empty"],"sources":["../src/components/base/tree/hierarchy.ts","../src/components/base/tree/tree.types.ts","../src/components/base/tree/tree.tsx"],"sourcesContent":["import type { TreeNode } from './tree.types';\nexport interface HierarchyEntry<T> { node: TreeNode<T>; parent: string | null; path: TreeNode<T>[]; disabled: boolean }\n/** One canonical traversal for tree focus, cascader paths and local search. */\nexport function indexHierarchy<T>(items: readonly TreeNode<T>[]): Map<string, HierarchyEntry<T>> {\n const index = new Map<string, HierarchyEntry<T>>();\n function visit(nodes: readonly TreeNode<T>[], path: TreeNode<T>[], disabled: boolean) {\n for (const node of nodes) {\n if (index.has(node.value)) throw new Error(`Hierarchy values must be unique: ${node.value}`);\n const entry = { node, parent: path.at(-1)?.value ?? null, path: [...path, node], disabled: disabled || !!node.disabled };\n index.set(node.value, entry);\n visit(node.children ?? [], entry.path, entry.disabled);\n }\n }\n visit(items, [], false);\n return index;\n}\nexport function visibleHierarchy<T>(index: Map<string, HierarchyEntry<T>>, expanded: readonly string[]) {\n const open = new Set(expanded);\n return [...index.values()].filter(entry => entry.path.slice(0, -1).every(node => open.has(node.value)));\n}\nexport function isBranch(node: TreeNode) { return !!(node.hasChildren || node.children?.length); }\n","import type { StringsProp } from '../../../lib/strings';\nimport type { ComponentProps, ReactNode } from 'react';\nimport type { RowDensity } from '../../../lib/row-recipes';\n\n/** Stable values must be unique throughout a hierarchy. */\nexport interface TreeNode<T = unknown> {\n value: string;\n label: string;\n /** Supporting copy in rich rows; plain strings provide a title/description in line rows. */\n description?: ReactNode;\n icon?: ReactNode;\n /** Non-interactive status or metadata, aligned at the end of the row. */\n trailing?: ReactNode;\n children?: readonly TreeNode<T>[];\n /** Declares an unloaded branch. */\n hasChildren?: boolean;\n /** Disables this node and its descendants. */\n disabled?: boolean;\n data?: T;\n}\nexport interface TreeStrings {\n expand: (label: string) => string;\n collapse: (label: string) => string;\n /** Shown when there are no items. The `empty` prop overrides it with any node. */\n empty: string;\n}\nexport const defaultTreeStrings: TreeStrings = {\n expand: (label) => `Expand ${label}`,\n collapse: (label) => `Collapse ${label}`,\n empty: 'No items',\n};\nexport interface TreeProps<T = unknown> extends Omit<ComponentProps<'div'>, 'children' | 'onSelect'> {\n items: readonly TreeNode<T>[];\n expandedValues?: readonly string[];\n defaultExpandedValues?: readonly string[];\n onExpandedValuesChange?: (values: string[], node: TreeNode<T>) => void;\n selectedValues?: readonly string[];\n defaultSelectedValues?: readonly string[];\n onSelectedValuesChange?: (values: string[], node: TreeNode<T>) => void;\n selectionMode?: 'single' | 'multiple' | 'none';\n /** Clicking or pressing Enter/Space on a branch selects it, or toggles its children. */\n branchActivation?: 'select' | 'toggle';\n disabled?: boolean;\n /** Vertical row rhythm. Compact by default; primary text retains the shared size. */\n density?: RowDensity;\n /** Navigation is single-line by default. Rich rows explicitly allow supporting copy and wrapping. */\n rowLayout?: 'line' | 'rich';\n /** Explicit per-level indentation in pixels. Omit to inherit shared spacing. */\n indent?: number;\n /** Decorative guides retain the hierarchy at every nesting level. */\n showGuides?: boolean;\n /** Replaces `strings.empty` with any node. */\n empty?: ReactNode;\n /** Overrides the tree's own copy; merged over `defaultTreeStrings`. */\n strings?: StringsProp<TreeStrings>;\n /** Presentation slot only; interactive content should live outside the tree row. */\n renderLabel?: (node: TreeNode<T>) => ReactNode;\n}\n","import { useLayoutEffect, useMemo, useRef, useState, type KeyboardEvent } from 'react';\nimport { Check, ChevronDown, ChevronRight } from 'lucide-react';\nimport { Button as DisclosureButton } from '../../ui/button';\nimport { CollectionContent } from '../popover/collection-content';\nimport { Text } from '../../typography';\nimport { cn } from '../../../lib/utils';\nimport { useTypographyConfig } from '../../../lib/ui-provider';\nimport { textSizes } from '../../typography/text.styles';\nimport { ICON_DESCENDANT_SIZE_CLASSNAMES } from '../display/icon-size';\nimport { navigationChildInsetClasses, navigationRowDensityRecipes, navigationRowInlineClasses } from '../../../lib/navigation-row-recipes';\nimport { rowBlockPaddingClasses } from '../../../lib/row-recipes';\nimport { indexHierarchy, isBranch, visibleHierarchy } from './hierarchy';\nimport { defaultTreeStrings, type TreeNode, type TreeProps } from './tree.types';\nimport { useStrings } from '../../../lib/strings';\nimport { focusRecipes } from '../../../lib/focus-recipes';\nimport { interactionRecipes } from '../../../lib/interaction-recipes';\n\n/** Accessible data-driven hierarchy. Focus moves independently from selection. */\nexport function Tree<T = unknown>({items, expandedValues, defaultExpandedValues = [], onExpandedValuesChange, selectedValues, defaultSelectedValues = [], onSelectedValuesChange, selectionMode = 'single', branchActivation = 'select', disabled = false, density = 'compact', rowLayout = 'line', indent, showGuides = true, empty, strings: stringsProp, renderLabel, className, onKeyDown, ...props}: TreeProps<T>) {\n const strings = useStrings(defaultTreeStrings, stringsProp);\n const [localExpanded, setLocalExpanded] = useState<readonly string[]>(defaultExpandedValues);\n const [localSelected, setLocalSelected] = useState<readonly string[]>(defaultSelectedValues);\n const expanded = expandedValues ?? localExpanded;\n const selected = selectedValues ?? localSelected;\n const index = useMemo(() => indexHierarchy(items), [items]);\n const visible = visibleHierarchy(index, expanded).filter(entry => !entry.disabled);\n const [focused, setFocused] = useState<string | null>(null);\n const visibleValues = new Set(visible.map(entry => entry.node.value));\n const visibleAncestor = focused === null ? undefined : index.get(focused)?.path.slice(0, -1).reverse().find(node => visibleValues.has(node.value))?.value;\n const focusValue = focused !== null && visibleValues.has(focused) ? focused : visibleAncestor ?? visible.find(entry => selected.includes(entry.node.value))?.node.value ?? visible[0]?.node.value;\n const refs = useRef(new Map<string, HTMLDivElement>());\n const focusedElement = useRef<HTMLDivElement | null>(null);\n const search = useRef({ text: '', time: 0 });\n const { defaultTextSize } = useTypographyConfig();\n const recipe = navigationRowDensityRecipes[density];\n const rich = rowLayout === 'rich';\n useLayoutEffect(() => {\n const previous = focusedElement.current;\n if (disabled || focusValue === undefined || !previous) return;\n // Keep focus inside a changing hierarchy, but do not reclaim it from another control.\n if (previous === document.activeElement || (!previous.isConnected && document.activeElement === document.body)) refs.current.get(focusValue)?.focus();\n }, [focusValue, disabled]);\n function focus(value: string | undefined) { if (value !== undefined) { setFocused(value); refs.current.get(value)?.focus(); } }\n function toggle(node: TreeNode<T>) {\n if (disabled || index.get(node.value)?.disabled) return;\n const next = expanded.includes(node.value) ? expanded.filter(value => value !== node.value) : [...expanded, node.value];\n if (expandedValues === undefined) setLocalExpanded(next);\n onExpandedValuesChange?.(next, node);\n }\n function select(node: TreeNode<T>) {\n if (disabled || index.get(node.value)?.disabled) return;\n if (branchActivation === 'toggle' && isBranch(node)) { toggle(node); return; }\n if (selectionMode === 'none') return;\n const next = selectionMode === 'multiple' ? selected.includes(node.value) ? selected.filter(value => value !== node.value) : [...selected, node.value] : [node.value];\n if (selectedValues === undefined) setLocalSelected(next);\n onSelectedValuesChange?.(next, node);\n }\n function keyboard(event: KeyboardEvent<HTMLDivElement>) {\n onKeyDown?.(event);\n if (event.defaultPrevented || disabled || (event.target as HTMLElement).closest('button') || (event.target as HTMLElement).closest('[role=tree]') !== event.currentTarget) return;\n const position = visible.findIndex(entry => entry.node.value === focused);\n const entry = index.get(focused ?? focusValue ?? '');\n if (!entry) return;\n const rtl = getComputedStyle(event.currentTarget).direction === 'rtl';\n const forward = rtl ? 'ArrowLeft' : 'ArrowRight';\n const backward = rtl ? 'ArrowRight' : 'ArrowLeft';\n if (event.key === 'ArrowDown') focus(visible[Math.min(position + 1, visible.length - 1)]?.node.value);\n else if (event.key === 'ArrowUp') focus(visible[Math.max(position - 1, 0)]?.node.value);\n else if (event.key === 'Home') focus(visible[0]?.node.value);\n else if (event.key === 'End') focus(visible.at(-1)?.node.value);\n else if (event.key === forward && isBranch(entry.node)) {\n if (!expanded.includes(entry.node.value)) toggle(entry.node);\n else focus(entry.node.children?.find(node => !index.get(node.value)?.disabled)?.value);\n } else if (event.key === backward) {\n if (isBranch(entry.node) && expanded.includes(entry.node.value)) toggle(entry.node);\n else focus(entry.parent ?? undefined);\n } else if (event.key === 'Enter' || event.key === ' ') select(entry.node);\n else if (event.key === '*') {\n const next = [...new Set([...expanded, ...[...index.values()].filter(item => item.parent === entry.parent && !item.disabled && isBranch(item.node)).map(item => item.node.value)])];\n if (expandedValues === undefined) setLocalExpanded(next);\n onExpandedValuesChange?.(next, entry.node);\n } else if (event.key.length === 1 && !event.ctrlKey && !event.metaKey && !event.altKey) {\n // oxlint-disable-next-line react/purity -- Runs in the key handler, not during render.\n const now = Date.now();\n search.current.text = (now - search.current.time < 500 ? search.current.text : '') + event.key.toLocaleLowerCase();\n search.current.time = now;\n const term = [...search.current.text].every(letter => letter === event.key.toLocaleLowerCase()) ? event.key.toLocaleLowerCase() : search.current.text;\n const rotated = [...visible.slice(position + 1), ...visible.slice(0, position + 1)];\n focus(rotated.find(item => item.node.label.toLocaleLowerCase().startsWith(term))?.node.value);\n } else return;\n event.preventDefault();\n }\n function rows(nodes: readonly TreeNode<T>[], level: number) { return nodes.map((node, position) => {\n const blocked = disabled || !!index.get(node.value)?.disabled;\n const branch = isBranch(node);\n const open = expanded.includes(node.value);\n const checked = selected.includes(node.value);\n // oxlint-disable-next-line jsx-a11y/click-events-have-key-events -- Tree's onKeyDown handles keys for the focused treeitem.\n return <div key={node.value} data-tree-value={node.value} className=\"tree--branch min-w-0 outline-none [&:focus-visible>.tree--item]:inset-ring [&:focus-visible>.tree--item]:inset-ring-ring [&:focus-visible>.tree--item]:ring-3 [&:focus-visible>.tree--item]:ring-ring/50\" ref={element => { if (element) refs.current.set(node.value, element); else refs.current.delete(node.value); }}\n role=\"treeitem\" aria-label={node.label} aria-level={level} aria-posinset={position + 1} aria-setsize={nodes.length}\n title={!rich && typeof node.description === 'string' ? node.description : undefined}\n aria-description={!rich && typeof node.description === 'string' ? node.description : undefined}\n aria-expanded={branch ? open : undefined} aria-selected={selectionMode !== 'none' && !(branch && branchActivation === 'toggle') ? checked : undefined} aria-disabled={blocked || undefined}\n tabIndex={!blocked && focusValue === node.value ? 0 : -1}\n onFocus={event => { if (event.target === event.currentTarget) { focusedElement.current = event.currentTarget; setFocused(node.value); } }}\n onClick={event => { if (!blocked && (event.target as HTMLElement).closest('[role=treeitem]') === event.currentTarget) { focus(node.value); select(node); } }}>\n <div data-selected={checked || undefined} data-disabled={blocked || undefined}\n className={cn(`tree--item flex w-full items-center cursor-default outline-none ${interactionRecipes.rowHover} ${focusRecipes.edge} data-selected:bg-accent data-selected:hover:bg-accent data-selected:text-accent-foreground data-disabled:opacity-50`, navigationRowInlineClasses, rich ? rowBlockPaddingClasses[density] : level === 1 ? recipe.height : recipe.childHeight, textSizes[defaultTextSize ?? 'sm'])}\n >\n <span className=\"tree--caret relative size-icon-sm shrink-0\">\n {branch && <DisclosureButton variant=\"ghost\" size=\"icon-xs\" className=\"tree--disclosure absolute start-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 rounded-radius rtl:translate-x-1/2 disabled:opacity-100 aria-disabled:opacity-100\" tabIndex={-1} disabled={blocked} aria-label={open ? strings.collapse(node.label) : strings.expand(node.label)} onClick={event => {event.stopPropagation(); focus(node.value); toggle(node);}}>\n {open ? <ChevronDown aria-hidden=\"true\" className=\"size-icon-sm\" /> : <ChevronRight aria-hidden=\"true\" className=\"size-icon-sm rtl:rotate-180\" />}\n </DisclosureButton>}\n </span>\n <CollectionContent label={renderLabel?.(node) ?? node.label} description={rich ? node.description : undefined} leading={node.icon} leadingClassName={ICON_DESCENDANT_SIZE_CLASSNAMES.md} leadingDecorative wrap={rich}\n bodyClassName={rich ? undefined : 'overflow-hidden'}\n trailing={node.trailing != null || (checked && selectionMode === 'multiple') ? <span className=\"inline-flex shrink-0 items-center gap-space-sm\">{node.trailing}{checked && selectionMode === 'multiple' && <Check aria-hidden=\"true\" className=\"size-icon shrink-0\" />}</span> : undefined} />\n </div>\n {branch && open && !!node.children?.length && <div role=\"group\" className={cn('tree--group flex flex-col border-s', navigationChildInsetClasses, recipe.childGap, showGuides ? 'border-border' : 'border-transparent')}\n style={indent === undefined ? undefined : { marginInlineStart: Math.max(0, indent) / 2, paddingInlineStart: Math.max(0, indent) / 2 }}>{rows(node.children, level + 1)}</div>}\n </div>;\n }); }\n // oxlint-disable-next-line jsx-a11y/interactive-supports-focus -- Roving tabindex: focus stays on the items and the container handles their keys.\n return <div {...props} role=\"tree\" data-row-layout={rowLayout} aria-multiselectable={selectionMode === 'multiple' || undefined} aria-disabled={disabled || undefined} onKeyDown={keyboard} className={cn('tree--component flex min-w-0 flex-col', recipe.gap, className)}>\n {items.length ? rows(items, 1) : <Text type=\"secondary\">{empty ?? strings.empty}</Text>}\n </div>;\n}\n"],"mappings":"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"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
import { t as r } from "./utils-
|
|
2
|
+
import { C as e, f as t, y as n } from "./ui-provider-Bu1S-o96.js";
|
|
3
|
+
import { t as r } from "./utils-BVbAG2J6.js";
|
|
4
4
|
import { a as i, c as a, n as o, r as s } from "./text.styles-B64My8RZ.js";
|
|
5
|
-
import { t as c } from "./focus-recipes-
|
|
5
|
+
import { t as c } from "./focus-recipes-DSkiUvUp.js";
|
|
6
6
|
import { createContext as l, forwardRef as u, useContext as d } from "react";
|
|
7
7
|
import { jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
8
|
+
import { useRender as m } from "@base-ui/react/use-render";
|
|
8
9
|
//#region src/components/typography/running-text.ts
|
|
9
|
-
var
|
|
10
|
-
function
|
|
11
|
-
return d(
|
|
10
|
+
var h = l(!1);
|
|
11
|
+
function g() {
|
|
12
|
+
return d(h);
|
|
12
13
|
}
|
|
13
14
|
//#endregion
|
|
14
15
|
//#region src/components/typography/text.tsx
|
|
15
|
-
var
|
|
16
|
+
var _ = u(function({ content: e, children: t, type: i = "main", size: o, weight: s, align: c, lineHeight: l, numeric: u, invert: d = !1, tag: p = "p", className: m, ...g }, _) {
|
|
16
17
|
let { defaultTextSize: v } = n(), y = t ?? e;
|
|
17
18
|
return y == null || y === "" ? null : /* @__PURE__ */ f(p, {
|
|
18
19
|
"data-typography": "text",
|
|
@@ -25,8 +26,8 @@ var g = u(function({ content: e, children: t, type: i = "main", size: o, weight:
|
|
|
25
26
|
align: c,
|
|
26
27
|
lineHeight: l,
|
|
27
28
|
numeric: u
|
|
28
|
-
}),
|
|
29
|
-
children: /* @__PURE__ */ f(
|
|
29
|
+
}), m),
|
|
30
|
+
children: /* @__PURE__ */ f(h.Provider, {
|
|
30
31
|
value: !0,
|
|
31
32
|
children: y
|
|
32
33
|
})
|
|
@@ -34,19 +35,20 @@ var g = u(function({ content: e, children: t, type: i = "main", size: o, weight:
|
|
|
34
35
|
});
|
|
35
36
|
//#endregion
|
|
36
37
|
//#region src/components/typography/heading.tsx
|
|
37
|
-
function
|
|
38
|
+
function v({ tag: e = "h3", size: t = o.subject, subHeading: n, subHeadingClassName: a, subHeadingSize: c, containerClassName: l, align: u = "left", divider: d = !1, className: m, children: g, ref: v, ...y }) {
|
|
39
|
+
let b = e;
|
|
38
40
|
return /* @__PURE__ */ p("div", {
|
|
39
41
|
className: r("heading--component flex min-w-0 flex-col gap-dense", i[u], l),
|
|
40
|
-
children: [
|
|
42
|
+
children: [g != null && /* @__PURE__ */ f(b, {
|
|
41
43
|
...y,
|
|
42
44
|
ref: v,
|
|
43
45
|
"data-typography": "heading",
|
|
44
|
-
className: r("heading--title m-0 font-heading", s[t], "font-semibold text-foreground text-balance break-words", i[u], d && "border-b border-border pb-space-md",
|
|
45
|
-
children: /* @__PURE__ */ f(
|
|
46
|
+
className: r("heading--title m-0 font-heading", s[t], "font-semibold text-foreground text-balance break-words", i[u], d && "border-b border-border pb-space-md", m),
|
|
47
|
+
children: /* @__PURE__ */ f(h.Provider, {
|
|
46
48
|
value: !0,
|
|
47
|
-
children:
|
|
49
|
+
children: g
|
|
48
50
|
})
|
|
49
|
-
}), n != null && /* @__PURE__ */ f(
|
|
51
|
+
}), n != null && /* @__PURE__ */ f(_, {
|
|
50
52
|
type: "secondary",
|
|
51
53
|
size: c,
|
|
52
54
|
align: u,
|
|
@@ -57,8 +59,8 @@ function _({ tag: e = "h3", size: t = o.subject, subHeading: n, subHeadingClassN
|
|
|
57
59
|
}
|
|
58
60
|
//#endregion
|
|
59
61
|
//#region src/components/typography/display-label.tsx
|
|
60
|
-
function
|
|
61
|
-
return /* @__PURE__ */ f(
|
|
62
|
+
function y({ tag: e = "span", tone: t = "default", className: n, ...i }) {
|
|
63
|
+
return /* @__PURE__ */ f(_, {
|
|
62
64
|
...i,
|
|
63
65
|
tag: e,
|
|
64
66
|
size: "sm",
|
|
@@ -71,19 +73,19 @@ function v({ tag: e = "span", tone: t = "default", className: n, ...i }) {
|
|
|
71
73
|
}
|
|
72
74
|
//#endregion
|
|
73
75
|
//#region src/components/typography/label.tsx
|
|
74
|
-
var
|
|
76
|
+
var b = {
|
|
75
77
|
sm: "text-xs",
|
|
76
78
|
md: "text-sm",
|
|
77
79
|
lg: "text-base"
|
|
78
80
|
};
|
|
79
|
-
function
|
|
81
|
+
function x({ content: n, children: i, size: a, className: o, ref: s, ...c }) {
|
|
80
82
|
let { defaultScale: l } = t();
|
|
81
83
|
return /* @__PURE__ */ f("label", {
|
|
82
84
|
...c,
|
|
83
85
|
ref: s,
|
|
84
86
|
"data-typography": "label",
|
|
85
|
-
className: r("label--component font-sans font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
|
|
86
|
-
children: /* @__PURE__ */ f(
|
|
87
|
+
className: r("label--component font-sans font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-50", b[e(a, l)], o),
|
|
88
|
+
children: /* @__PURE__ */ f(h.Provider, {
|
|
87
89
|
value: !0,
|
|
88
90
|
children: i ?? n
|
|
89
91
|
})
|
|
@@ -91,27 +93,31 @@ function b({ content: n, children: i, size: a, className: o, ref: s, ...c }) {
|
|
|
91
93
|
}
|
|
92
94
|
//#endregion
|
|
93
95
|
//#region src/components/typography/text-link.tsx
|
|
94
|
-
var
|
|
95
|
-
function
|
|
96
|
-
let { defaultTextSize:
|
|
97
|
-
return
|
|
98
|
-
|
|
96
|
+
var S = `w-fit max-w-full rounded-radius-xs outline-none box-decoration-clone transition-colors motion-reduce:transition-none ${c.text}`, C = "underline decoration-current underline-offset-[0.2em]", w = "[&_a]:w-fit [&_a]:max-w-full [&_a]:rounded-radius-xs [&_a]:outline-none [&_a]:box-decoration-clone [&_a]:transition-colors motion-reduce:[&_a]:transition-none [&_a]:text-inherit [&_a]:underline [&_a]:decoration-current [&_a]:underline-offset-[0.2em] [&_a:hover]:decoration-transparent [&_a:focus-visible]:outline-solid [&_a:focus-visible]:outline-1 [&_a:focus-visible]:outline-offset-0 [&_a:focus-visible]:outline-ring [&_a:focus-visible]:ring-3 [&_a:focus-visible]:ring-ring/50";
|
|
97
|
+
function T({ type: e = "main", size: t, weight: i, align: o, lineHeight: s, underline: c = !0, className: l, ref: u, render: d, children: p, ..._ }) {
|
|
98
|
+
let { defaultTextSize: v } = n(), y = g();
|
|
99
|
+
return m({
|
|
100
|
+
defaultTagName: "a",
|
|
101
|
+
render: d,
|
|
99
102
|
ref: u,
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
children:
|
|
111
|
-
|
|
103
|
+
props: {
|
|
104
|
+
..._,
|
|
105
|
+
"data-typography": "link",
|
|
106
|
+
className: r("text-link--component", S, a({
|
|
107
|
+
type: e,
|
|
108
|
+
size: t ?? (y ? "inherit" : v),
|
|
109
|
+
weight: i ?? (y ? "inherit" : void 0),
|
|
110
|
+
align: o,
|
|
111
|
+
lineHeight: s ?? (y ? "inherit" : void 0)
|
|
112
|
+
}), c ? `${C} hover:decoration-transparent` : "no-underline", l),
|
|
113
|
+
children: /* @__PURE__ */ f(h.Provider, {
|
|
114
|
+
value: !0,
|
|
115
|
+
children: p
|
|
116
|
+
})
|
|
117
|
+
}
|
|
112
118
|
});
|
|
113
119
|
}
|
|
114
120
|
//#endregion
|
|
115
|
-
export {
|
|
121
|
+
export { x as a, _ as c, C as i, h as l, w as n, y as o, S as r, v as s, T as t, g as u };
|
|
116
122
|
|
|
117
|
-
//# sourceMappingURL=typography-
|
|
123
|
+
//# sourceMappingURL=typography-C0dELqYV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typography-C0dELqYV.js","names":["resolveComponentScale","useDensityConfig","useTypographyConfig","cn","textAlignments","textVariants","headingRoleSizes","headingSizes","focusRecipes","RunningTextContext","createContext","useInRunningText","useContext","Text","forwardRef","Tag","props","value","children","content","invert","type","size","defaultTextSize","className","Heading","tag","align","containerClassName","divider","subHeading","subHeadingSize","subHeadingClassName","DisplayLabel","tone","sizes","Label","defaultScale","inlineLinkClassName","linkUnderlineClassName","descendantInlineLinkClassName","TextLink","inText","useRender","weight","lineHeight","underline"],"sources":["../src/components/typography/running-text.ts","../src/components/typography/text.tsx","../src/components/typography/heading.tsx","../src/components/typography/display-label.tsx","../src/components/typography/label.tsx","../src/components/typography/text-link.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\n/**\n * True below an element that renders running text: `Text`, `Heading`,\n * `DisplayLabel`, `Label`, `TextLink` and the inline value primitives.\n *\n * Inline value primitives read it to tell a value inside a sentence from a\n * standalone value. Inside running text their unset size, colour, weight and\n * leading inherit from the surrounding text; standalone values keep their role\n * defaults. Explicit props always win.\n */\nexport const RunningTextContext = createContext(false);\n\n/** Whether the caller renders inside running text owned by a typography role. */\nexport function useInRunningText(): boolean {\n\treturn useContext(RunningTextContext);\n}\n","import { forwardRef, type ComponentPropsWithoutRef, type ReactNode } from 'react';\nimport { useTypographyConfig, type TextSize } from '../../lib/ui-provider';\nimport { cn } from '../../lib/utils';\nimport { RunningTextContext } from './running-text';\nimport { textVariants, type textTypes, type textWeights, type textAlignments, type textLineHeights } from './text.styles';\n\nexport interface TextProps extends Omit<ComponentPropsWithoutRef<'p'>, 'children'> {\n /** Plain text fallback; children take precedence, including zero and empty strings. */\n content?: string;\n children?: ReactNode;\n /** Colour role. Defaults to `main`; `inherit` keeps the surrounding text colour. */\n type?: keyof typeof textTypes;\n /** Text size. Defaults to the provider `typography.defaultTextSize` (`sm`). */\n size?: TextSize;\n /** Font weight. Defaults to `regular`; `inherit` keeps the surrounding weight. */\n weight?: keyof typeof textWeights;\n /** Text alignment. Defaults to `left`; `left` and `right` follow the reading direction. */\n align?: keyof typeof textAlignments;\n /** Line height. Defaults to `normal`; `inherit` keeps the surrounding leading. */\n lineHeight?: keyof typeof textLineHeights;\n /** Renders the inverse colour role on inverse surfaces. Defaults to `false`. */\n invert?: boolean;\n /**\n * Monospace with tabular figures, for identifiers and code-like values. Numbers,\n * amounts and dates use the number primitives (tabular sans figures) instead.\n * Defaults to `false`.\n */\n numeric?: boolean;\n /** Rendered element. Defaults to `p`. */\n tag?: 'div' | 'p' | 'span';\n}\n\nexport const Text = forwardRef<HTMLElement, TextProps>(function Text({\n content, children, type = 'main', size, weight, align, lineHeight,\n numeric, invert = false, tag: Tag = 'p', className, ...props\n}, ref) {\n const {defaultTextSize} = useTypographyConfig();\n const value = children ?? content;\n if (value === undefined || value === null || value === '') return null;\n return <Tag data-typography=\"text\" {...props} ref={ref as never} className={cn('text--component', textVariants({type: invert ? 'inverse' : type, size: size ?? defaultTextSize, weight, align, lineHeight, numeric}), className)}>\n <RunningTextContext.Provider value>{value}</RunningTextContext.Provider>\n </Tag>;\n});\n","import type { HTMLAttributes, ReactNode, Ref } from 'react';\nimport type { TextSize } from '../../lib/ui-provider';\nimport { cn } from '../../lib/utils';\nimport { RunningTextContext } from './running-text';\nimport { headingRoleSizes, headingSizes, textAlignments } from './text.styles';\nimport { Text } from './text';\n\nexport type HeadingTag = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n/** Non-heading elements that take the heading scale: a hero figure or display value outside the outline. */\nexport type HeadingDisplayTag = 'p' | 'div' | 'span';\nexport type HeadingSize = keyof typeof headingSizes;\nexport interface HeadingProps extends HTMLAttributes<HTMLHeadingElement> {\n ref?: Ref<HTMLHeadingElement>;\n /**\n * Semantic outline level. Defaults to `h3`; it never changes the visual size.\n * `p`, `div` or `span` renders the same scale with no heading semantics, for a\n * hero figure or display value that is not part of the document outline.\n */\n tag?: HeadingTag | HeadingDisplayTag;\n /**\n * Visual emphasis, independent of `tag`. Defaults to the compact admin `base`.\n * `xl` and larger tighten tracking; `2xl` and larger also tighten leading.\n */\n size?: HeadingSize;\n /** Secondary line under the title, rendered as secondary `Text`. */\n subHeading?: ReactNode;\n subHeadingClassName?: string;\n /** Text size of `subHeading`; defaults to the provider text size. */\n subHeadingSize?: TextSize;\n containerClassName?: string;\n /** Text alignment for the title and sub-heading. Defaults to `left`. */\n align?: keyof typeof textAlignments;\n /** Adds a bottom rule under the title. Defaults to `false`. */\n divider?: boolean;\n}\n\n/** Semantic heading levels share Themelia's restrained admin heading scale. */\nexport function Heading({tag = 'h3', size = headingRoleSizes.subject, subHeading, subHeadingClassName, subHeadingSize, containerClassName, align = 'left', divider = false, className, children, ref, ...props}: HeadingProps) {\n // One element type for JSX; the rendered tag is the requested one.\n const Tag = tag as 'h3';\n return <div className={cn('heading--component flex min-w-0 flex-col gap-dense', textAlignments[align], containerClassName)}>\n {children != null && <Tag {...props} ref={ref} data-typography=\"heading\" className={cn('heading--title m-0 font-heading', headingSizes[size], 'font-semibold text-foreground text-balance break-words', textAlignments[align], divider && 'border-b border-border pb-space-md', className)}><RunningTextContext.Provider value>{children}</RunningTextContext.Provider></Tag>}\n {subHeading != null && <Text type=\"secondary\" size={subHeadingSize} align={align} className={subHeadingClassName}>{subHeading}</Text>}\n </div>;\n}\n","import { Text, type TextProps } from './text';\nimport { cn } from '../../lib/utils';\n\nexport interface DisplayLabelProps extends Omit<TextProps, 'size' | 'type' | 'weight' | 'lineHeight'> {tone?: 'default' | 'inverse'}\nexport function DisplayLabel({tag = 'span', tone = 'default', className, ...props}: DisplayLabelProps) {\n return <Text {...props} tag={tag} size=\"sm\" type=\"main\" weight=\"medium\" lineHeight=\"tight\" data-typography=\"display-label\" className={cn('display-label--component', tone === 'inverse' && 'text-inverse-muted', className)} />;\n}\n","import type { LabelHTMLAttributes, ReactNode, Ref } from 'react';\nimport type { ComponentScale } from '../../lib/component-vocabulary';\nimport { useDensityConfig } from '../../lib/ui-provider';\nimport { resolveComponentScale } from '../../lib/ui-provider/scale';\nimport { cn } from '../../lib/utils';\nimport { RunningTextContext } from './running-text';\n\nexport interface LabelProps extends Omit<LabelHTMLAttributes<HTMLLabelElement>, 'content'> {\n /** Fallback content; children take precedence. */\n content?: ReactNode;\n /** Control scale the caption belongs to (`sm` → xs, `md` → sm, `lg` → base). Defaults to the provider density scale. */\n size?: ComponentScale;\n ref?: Ref<HTMLLabelElement>;\n}\nconst sizes = {sm: 'text-xs', md: 'text-sm', lg: 'text-base'} as const;\n/** Form caption for a control; medium weight, foreground, no incidental margins. */\nexport function Label({content, children, size, className, ref, ...props}: LabelProps) {\n const {defaultScale} = useDensityConfig();\n return <label {...props} ref={ref} data-typography=\"label\" className={cn('label--component font-sans font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-50', sizes[resolveComponentScale(size, defaultScale)], className)}>\n <RunningTextContext.Provider value>{children ?? content}</RunningTextContext.Provider>\n </label>;\n}\n","import { useRender } from '@base-ui/react/use-render';\nimport type { AnchorHTMLAttributes, Ref } from 'react';\nimport { useTypographyConfig } from '../../lib/ui-provider';\nimport { cn } from '../../lib/utils';\nimport { RunningTextContext, useInRunningText } from './running-text';\nimport { textVariants } from './text.styles';\nimport type { TextProps } from './text';\nimport { focusRecipes } from '../../lib/focus-recipes';\n\n/**\n * Inline-link mechanics shared by `TextLink` and the link primitives. As a flex\n * or grid item the link hugs its text, so neither the hit area nor the focus\n * ring stretches across the row. The shared focus edge sits just outside the\n * glyphs inside the soft halo, uses the small radius role and follows every line\n * of a wrapped link. Links keep one colour whether\n * or not they were visited: the role colour is explicit.\n */\nexport const inlineLinkClassName = `w-fit max-w-full rounded-radius-xs outline-none box-decoration-clone transition-colors motion-reduce:transition-none ${focusRecipes.text}`;\n\n/** Underline geometry shared with content links: proportional to the text size. */\nexport const linkUnderlineClassName = 'underline decoration-current underline-offset-[0.2em]';\n\n/** Private counterpart for native anchors inside package-owned copy regions.\n * Keep selectors literal for the standalone stylesheet. These anchors inherit\n * the region's colour and follow TextLink's focus and underline mechanics. */\nexport const descendantInlineLinkClassName = '[&_a]:w-fit [&_a]:max-w-full [&_a]:rounded-radius-xs [&_a]:outline-none [&_a]:box-decoration-clone [&_a]:transition-colors motion-reduce:[&_a]:transition-none [&_a]:text-inherit [&_a]:underline [&_a]:decoration-current [&_a]:underline-offset-[0.2em] [&_a:hover]:decoration-transparent [&_a:focus-visible]:outline-solid [&_a:focus-visible]:outline-1 [&_a:focus-visible]:outline-offset-0 [&_a:focus-visible]:outline-ring [&_a:focus-visible]:ring-3 [&_a:focus-visible]:ring-ring/50';\n\nexport interface TextLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'type'>, Pick<TextProps, 'type' | 'size' | 'weight' | 'align' | 'lineHeight'> {\n /** Text size. Defaults to the provider text size; inside running text, the surrounding size. */\n size?: TextProps['size'];\n /**\n * Underlined at rest, clearing on hover. Defaults to `true`; keep it for links\n * whose colour matches the surrounding text. `false` renders no underline and\n * leaves the hover treatment to the composition (a row, chip or menu).\n */\n underline?: boolean;\n /**\n * Router composition: an element or function that replaces the native anchor,\n * such as `render={<RouterLink to=\"/orders\" />}`. It receives the link's\n * classes, attributes and children; the router link supplies navigation.\n */\n render?: useRender.ComponentProps<'a'>['render'];\n ref?: Ref<HTMLAnchorElement>;\n}\n\n/**\n * Anchor sibling of `Text`: the same roles plus link focus and hover states.\n * It renders a native `<a>`, or the router link passed to `render`. Inside running text an unset size, weight and leading follow the\n * sentence; the colour role stays, so the link still reads as a link.\n */\nexport function TextLink({type = 'main', size, weight, align, lineHeight, underline = true, className, ref, render, children, ...props}: TextLinkProps) {\n const {defaultTextSize} = useTypographyConfig();\n const inText = useInRunningText();\n return useRender({\n defaultTagName: 'a',\n render,\n ref,\n props: {\n ...props,\n 'data-typography': 'link',\n className: cn('text-link--component', inlineLinkClassName, textVariants({type, size: size ?? (inText ? 'inherit' : defaultTextSize), weight: weight ?? (inText ? 'inherit' : undefined), align, lineHeight: lineHeight ?? (inText ? 'inherit' : undefined)}), underline ? `${linkUnderlineClassName} hover:decoration-transparent` : 'no-underline', className),\n children: <RunningTextContext.Provider value>{children}</RunningTextContext.Provider>,\n },\n });\n}\n"],"mappings":"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"}
|
package/dist/typography.js
CHANGED
|
@@ -155,7 +155,7 @@ function I() {
|
|
|
155
155
|
}
|
|
156
156
|
var L = t.forwardRef(function({ children: e, style: n, ...r }, i) {
|
|
157
157
|
let { host: a, attachHost: o, context: s } = I();
|
|
158
|
-
return t.useImperativeHandle(i, () => a.current, []), /* @__PURE__ */ c(F, {
|
|
158
|
+
return t.useImperativeHandle(i, () => a.current, [a]), /* @__PURE__ */ c(F, {
|
|
159
159
|
value: s,
|
|
160
160
|
children: /* @__PURE__ */ c("div", {
|
|
161
161
|
"data-theme-scope": "",
|
|
@@ -172,7 +172,8 @@ function R(e) {
|
|
|
172
172
|
if (e !== void 0) return e;
|
|
173
173
|
if (n) return n.mounted ? n.host : null;
|
|
174
174
|
}
|
|
175
|
+
var z = L;
|
|
175
176
|
//#endregion
|
|
176
|
-
export {
|
|
177
|
+
export { f as C, d as S, j as _, R as a, v as b, E as c, S as d, y as f, k as g, x as h, F as i, O as l, T as m, z as n, I as o, b as p, L as r, D as s, l as t, C as u, A as v, u as w, p as x, w as y };
|
|
177
178
|
|
|
178
|
-
//# sourceMappingURL=ui-provider-
|
|
179
|
+
//# sourceMappingURL=ui-provider-Bu1S-o96.js.map
|