themelia-react-ui 2.0.1 → 2.0.2
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 +307 -131
- package/README.md +28 -8
- package/THIRD_PARTY_NOTICES.md +13 -0
- package/dist/{accordion-B6a3vVgA.js → accordion-Cjb6sx0G.js} +14 -13
- package/dist/accordion-Cjb6sx0G.js.map +1 -0
- package/dist/action-menu-CllU52Mm.js +280 -0
- package/dist/action-menu-CllU52Mm.js.map +1 -0
- package/dist/affordance-geometry.generated-tF36bREk.js +140 -0
- package/dist/affordance-geometry.generated-tF36bREk.js.map +1 -0
- package/dist/ai-artifact-DvTwDVyL.js +1148 -0
- package/dist/ai-artifact-DvTwDVyL.js.map +1 -0
- package/dist/{app-shell-ZK5RWdo6.js → app-shell-C4FhvCqF.js} +5 -5
- package/dist/{app-shell-ZK5RWdo6.js.map → app-shell-C4FhvCqF.js.map} +1 -1
- package/dist/attachment-BxDfL2mw.js +246 -0
- package/dist/attachment-BxDfL2mw.js.map +1 -0
- package/dist/{auth-CYxKfo69.js → auth-ax2BqjrI.js} +58 -54
- package/dist/auth-ax2BqjrI.js.map +1 -0
- package/dist/{avatar-BBnEJIx8.js → avatar-DAPlDvhJ.js} +7 -7
- package/dist/avatar-DAPlDvhJ.js.map +1 -0
- package/dist/{badge-MrKVNzW9.js → badge-HpFqoqSY.js} +40 -40
- package/dist/badge-HpFqoqSY.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 +1 -1
- package/dist/base/cards.js +2 -2
- package/dist/base/carousel.js +40 -36
- package/dist/base/carousel.js.map +1 -1
- package/dist/base/cascader.js +92 -92
- package/dist/base/cascader.js.map +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 +2 -2
- 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 +6 -6
- package/dist/base/feedback.js +3 -3
- package/dist/base/forms-numeric.js +1 -1
- package/dist/base/forms.js +2 -2
- package/dist/base/inline-edit.js +14 -14
- package/dist/base/inline-edit.js.map +1 -1
- package/dist/base/item.js +1 -1
- package/dist/base/media-gallery.js +1 -1
- package/dist/base/metadata-list.js +1 -1
- package/dist/base/navigation.js +6 -6
- package/dist/base/popover-menu.js +1 -1
- package/dist/base/popover.js +1 -1
- package/dist/base/qr-code.js +1 -1
- package/dist/base/repeaters.js +171 -176
- package/dist/base/repeaters.js.map +1 -1
- package/dist/base/sheet.js +1 -1
- package/dist/base/sidebar.js +1 -1
- package/dist/base/signature-pad.js +6 -6
- package/dist/base/skeleton.js +1 -1
- package/dist/base/spinner.js +79 -2
- package/dist/base/spinner.js.map +1 -0
- package/dist/base/structure.js +1 -1
- package/dist/base/table.js +1 -1
- package/dist/base/text-inputs.js +2 -2
- package/dist/base/toaster.js +46 -45
- package/dist/base/toaster.js.map +1 -1
- package/dist/base/tree.js +1 -1
- package/dist/base/upload-queue.js +1 -1
- package/dist/base/upload.js +3 -3
- package/dist/base/value-inputs.js +1 -1
- package/dist/{batch-action-bar-BZGDG-Si.js → batch-action-bar-DnUJ21NQ.js} +6 -5
- package/dist/batch-action-bar-DnUJ21NQ.js.map +1 -0
- package/dist/blocks/admin.js +42 -42
- package/dist/blocks/admin.js.map +1 -1
- package/dist/blocks/ai.js +260 -240
- package/dist/blocks/ai.js.map +1 -1
- package/dist/blocks/analytics/usage-card.js +1 -1
- package/dist/blocks/analytics.js +620 -585
- 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 +1152 -1109
- package/dist/blocks/commerce.js.map +1 -1
- package/dist/blocks/data-display.js +2 -2
- package/dist/blocks/onboarding.js +48 -39
- package/dist/blocks/onboarding.js.map +1 -1
- package/dist/blocks/planning.js +13 -12
- package/dist/blocks/planning.js.map +1 -1
- package/dist/blocks/timelines.js +1 -1
- package/dist/{breadcrumbs-D5t7I023.js → breadcrumbs-C-oqs1sQ.js} +5 -5
- package/dist/breadcrumbs-C-oqs1sQ.js.map +1 -0
- package/dist/{button-QYwiyhD2.js → button-DVzspB_G.js} +2 -2
- package/dist/{button-QYwiyhD2.js.map → button-DVzspB_G.js.map} +1 -1
- package/dist/{buttons-SbIcm1HJ.js → buttons-DPZekJFu.js} +20 -15
- package/dist/buttons-DPZekJFu.js.map +1 -0
- package/dist/cards-BaBZR-AU.js +68 -0
- package/dist/cards-BaBZR-AU.js.map +1 -0
- package/dist/{chart-QfrARkXl.js → chart-ZOYyK2xG.js} +58 -55
- package/dist/chart-ZOYyK2xG.js.map +1 -0
- package/dist/{checkbox-DhB6K0bK.js → checkbox-AWIhNhmo.js} +2 -2
- package/dist/{checkbox-DhB6K0bK.js.map → checkbox-AWIhNhmo.js.map} +1 -1
- package/dist/{choice-inputs-t6w3ATNz.js → choice-inputs-CNHvARCJ.js} +49 -45
- package/dist/choice-inputs-CNHvARCJ.js.map +1 -0
- package/dist/{code-block-Dgbu-CU3.js → code-block-DeneBJR_.js} +8 -8
- package/dist/code-block-DeneBJR_.js.map +1 -0
- package/dist/{collapsible-D8AEGU1-.js → collapsible-C-_l4hpy.js} +3 -3
- package/dist/{collapsible-D8AEGU1-.js.map → collapsible-C-_l4hpy.js.map} +1 -1
- package/dist/{collection-content-uK16Grv0.js → collection-content-By56pLog.js} +3 -3
- package/dist/{collection-content-uK16Grv0.js.map → collection-content-By56pLog.js.map} +1 -1
- package/dist/combobox-C0EQW6dr.js +875 -0
- package/dist/combobox-C0EQW6dr.js.map +1 -0
- package/dist/combobox-xCQ2RMNE.js +309 -0
- package/dist/combobox-xCQ2RMNE.js.map +1 -0
- package/dist/{command-kNR20o7x.js → command-C25VMRII.js} +7 -7
- package/dist/{command-kNR20o7x.js.map → command-C25VMRII.js.map} +1 -1
- package/dist/{comments-BpDuCUUu.js → comments-BYYlTA8E.js} +114 -105
- package/dist/comments-BYYlTA8E.js.map +1 -0
- package/dist/components/base/badge/badge.recipes.d.ts +1 -1
- package/dist/components/base/buttons/loader-button.d.ts +2 -1
- package/dist/components/base/cards/card.recipes.d.ts +2 -3
- package/dist/components/base/cards/partials/smart-card-skeleton.d.ts +3 -13
- package/dist/components/base/cards/smart-card.types.d.ts +11 -4
- package/dist/components/base/chart/chart.d.ts +2 -5
- package/dist/components/base/combobox/combobox.strings.d.ts +7 -0
- package/dist/components/base/combobox/index.d.ts +30 -4
- package/dist/components/base/forms/form-sizing.d.ts +11 -3
- package/dist/components/base/navigation/pagination.d.ts +5 -2
- package/dist/components/base/popover/popover.recipes.d.ts +15 -1
- package/dist/components/base/table/index.d.ts +9 -2
- package/dist/components/base/text-inputs/input-group.d.ts +2 -2
- package/dist/components/blocks/ai/ai-shimmer/ai-shimmer.d.ts +1 -1
- package/dist/components/blocks/ai/ai-shimmer/types.d.ts +3 -0
- package/dist/components/blocks/commerce/fulfillment-group/types.d.ts +3 -1
- package/dist/components/blocks/data-display/inline-stat/inline-stat.d.ts +16 -8
- package/dist/components/features/activities/partials/activity-marker.d.ts +6 -3
- package/dist/components/features/appointment-calendar/appointment-calendar.d.ts +5 -0
- package/dist/components/features/appointment-calendar/appointment-calendar.types.d.ts +220 -0
- package/dist/components/features/appointment-calendar/appointment-calendar.utils.d.ts +41 -0
- package/dist/components/features/appointment-calendar/index.d.ts +3 -0
- package/dist/components/features/appointment-calendar/partials/appointment-agenda.d.ts +32 -0
- package/dist/components/features/appointment-calendar/partials/appointment-month.d.ts +13 -0
- package/dist/components/features/combobox/combobox.strings.d.ts +15 -1
- package/dist/components/features/combobox/types.d.ts +4 -0
- package/dist/components/features/media-library/media-library.strings.d.ts +2 -0
- package/dist/components/features/rich-text-editor/index.d.ts +1 -1
- package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +6 -0
- package/dist/components/features/rich-text-editor/rich-text-editor.types.d.ts +9 -1
- package/dist/components/features/table/table-header.d.ts +1 -1
- package/dist/components/features/table/table.strings.d.ts +55 -1
- package/dist/components/features/table/table.types.d.ts +17 -4
- package/dist/components/features/theme-tweaker/theme-tweaker.types.d.ts +5 -0
- package/dist/components/primitives/number.d.ts +4 -2
- package/dist/components/primitives/value.d.ts +3 -1
- package/dist/components/typography/text-link.d.ts +4 -0
- package/dist/components/ui/combobox.d.ts +6 -2
- package/dist/components/ui/item.d.ts +8 -8
- package/dist/components/ui/tabs.d.ts +1 -1
- package/dist/{containers-DmWiJa2I.js → containers-Mu1LMGV1.js} +2 -2
- package/dist/{containers-DmWiJa2I.js.map → containers-Mu1LMGV1.js.map} +1 -1
- package/dist/{copyable-B3Gwgdqc.js → copyable-ClBuk_UK.js} +4 -4
- package/dist/{copyable-B3Gwgdqc.js.map → copyable-ClBuk_UK.js.map} +1 -1
- package/dist/{data-display-DafIvCl5.js → data-display-DT_khPl_.js} +98 -87
- package/dist/data-display-DT_khPl_.js.map +1 -0
- package/dist/{date-BgK3bTdo.js → date-DCrsDTZc.js} +5 -5
- package/dist/{date-BgK3bTdo.js.map → date-DCrsDTZc.js.map} +1 -1
- package/dist/{date-picker-CF-DtUpF.js → date-picker-ay0Pha_a.js} +594 -593
- package/dist/date-picker-ay0Pha_a.js.map +1 -0
- package/dist/date-pickers-Ccw8DL2b.js +175 -0
- package/dist/date-pickers-Ccw8DL2b.js.map +1 -0
- package/dist/{display-DsQTVzMz.js → display-hAc1HjpI.js} +49 -49
- package/dist/display-hAc1HjpI.js.map +1 -0
- package/dist/dropdown-menu-Cl4X7L5S.js +193 -0
- package/dist/dropdown-menu-Cl4X7L5S.js.map +1 -0
- package/dist/editable-text-recipe-Cn61kEcv.js +10 -0
- package/dist/editable-text-recipe-Cn61kEcv.js.map +1 -0
- package/dist/features/activities.js +398 -375
- package/dist/features/activities.js.map +1 -1
- package/dist/features/ai-chat.js +188 -179
- package/dist/features/ai-chat.js.map +1 -1
- package/dist/features/appointment-calendar.js +683 -0
- package/dist/features/appointment-calendar.js.map +1 -0
- package/dist/features/async-preview.js +109 -107
- package/dist/features/async-preview.js.map +1 -1
- package/dist/features/combobox.js +1 -1
- package/dist/features/comments.js +1 -1
- package/dist/features/data-view.js +137 -137
- package/dist/features/data-view.js.map +1 -1
- package/dist/features/email-composer.js +255 -255
- package/dist/features/email-composer.js.map +1 -1
- package/dist/features/event-calendar.js +254 -248
- package/dist/features/event-calendar.js.map +1 -1
- package/dist/features/filters.js +1 -1
- package/dist/features/global-search.js +35 -32
- package/dist/features/global-search.js.map +1 -1
- package/dist/features/kanban.js +118 -117
- package/dist/features/kanban.js.map +1 -1
- package/dist/features/map.js +233 -231
- package/dist/features/map.js.map +1 -1
- package/dist/features/media-library.js +789 -775
- package/dist/features/media-library.js.map +1 -1
- package/dist/features/mentions.js +1 -1
- package/dist/features/overlays.js +1 -1
- package/dist/features/products.js +922 -902
- package/dist/features/products.js.map +1 -1
- package/dist/features/questionnaire.js +28 -24
- package/dist/features/questionnaire.js.map +1 -1
- package/dist/features/resource-assignment.js +18 -15
- package/dist/features/resource-assignment.js.map +1 -1
- package/dist/features/resource.js +12 -12
- package/dist/features/resource.js.map +1 -1
- package/dist/features/rich-text-editor.js +2 -2
- package/dist/features/schema-form.js +15 -13
- package/dist/features/schema-form.js.map +1 -1
- package/dist/features/suggestions.js +3 -3
- package/dist/features/sync.js +11 -5
- package/dist/features/sync.js.map +1 -1
- package/dist/features/table.js +1 -1
- package/dist/features/theme-tweaker.js +493 -489
- package/dist/features/theme-tweaker.js.map +1 -1
- package/dist/feedback-BYIhtitP.js +239 -0
- package/dist/feedback-BYIhtitP.js.map +1 -0
- package/dist/{field-affordance-recipes-qQeIf4lG.js → field-affordance-recipes-DZhnIL_Y.js} +11 -18
- package/dist/field-affordance-recipes-DZhnIL_Y.js.map +1 -0
- package/dist/{filters-BkHH53uv.js → filters-BGfvjP4d.js} +589 -580
- package/dist/filters-BGfvjP4d.js.map +1 -0
- package/dist/{form-field-DUt4UxSV.js → form-field-CwH9y77i.js} +6 -5
- package/dist/form-field-CwH9y77i.js.map +1 -0
- package/dist/{form-sizing-By94KzXE.js → form-sizing-BdP_Mf5p.js} +39 -44
- package/dist/form-sizing-BdP_Mf5p.js.map +1 -0
- package/dist/{forms-Bzha-Y3B.js → forms-B9G_xwzi.js} +8 -8
- package/dist/{forms-Bzha-Y3B.js.map → forms-B9G_xwzi.js.map} +1 -1
- package/dist/{forms-numeric-C0bvjRPZ.js → forms-numeric-B_jraJaQ.js} +309 -309
- package/dist/forms-numeric-B_jraJaQ.js.map +1 -0
- package/dist/{header-BOefOKd1.js → header-CGXuhcRm.js} +160 -153
- package/dist/header-CGXuhcRm.js.map +1 -0
- package/dist/{hooks-9k_TtmKh.js → hooks-Dkz0K2WT.js} +2 -2
- package/dist/{hooks-9k_TtmKh.js.map → hooks-Dkz0K2WT.js.map} +1 -1
- package/dist/{icon-badge-CAuKupo9.js → icon-badge-DYKIwvOV.js} +4 -4
- package/dist/{icon-badge-CAuKupo9.js.map → icon-badge-DYKIwvOV.js.map} +1 -1
- package/dist/index.js +3 -3
- package/dist/input-CZw8iU99.js +21 -0
- package/dist/input-CZw8iU99.js.map +1 -0
- package/dist/input-DQdEd0YD.js +263 -0
- package/dist/input-DQdEd0YD.js.map +1 -0
- package/dist/{interaction-recipes-CHr0dJUs.js → interaction-recipes-XR9ZpVYL.js} +2 -1
- package/dist/interaction-recipes-XR9ZpVYL.js.map +1 -0
- package/dist/item-K5_ghvze.js +275 -0
- package/dist/item-K5_ghvze.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 +1 -1
- package/dist/layout/settings.js +1 -1
- package/dist/layout/sidebar.js +2 -2
- package/dist/layout/workspace.js +1 -1
- package/dist/layout.js +10 -10
- package/dist/lib/affordance-geometry.generated.d.ts +71 -0
- package/dist/lib/editable-text-recipe.d.ts +4 -4
- package/dist/lib/field-affordance-recipes.d.ts +2 -2
- package/dist/lib/interaction-recipes.d.ts +5 -0
- package/dist/lib/theme-mode-css.d.ts +7 -0
- package/dist/lib/tone-recipes.d.ts +8 -0
- package/dist/lib/ui-provider/types.d.ts +2 -2
- package/dist/lib/utils.js +1 -1
- package/dist/{media-gallery-DcTtAaeC.js → media-gallery-3zIVLMWH.js} +8 -8
- package/dist/media-gallery-3zIVLMWH.js.map +1 -0
- package/dist/{mentions-D-uyCh01.js → mentions-utuUvH1K.js} +144 -142
- package/dist/mentions-utuUvH1K.js.map +1 -0
- package/dist/{message-CdHgIWKf.js → message-DZ_ruyUV.js} +6 -5
- package/dist/message-DZ_ruyUV.js.map +1 -0
- package/dist/{metadata-list-X5rYAKSB.js → metadata-list-8N16ZMW_.js} +130 -119
- package/dist/metadata-list-8N16ZMW_.js.map +1 -0
- package/dist/{navigation-D3KwXmaq.js → navigation-Bnotn4AQ.js} +19 -19
- package/dist/navigation-Bnotn4AQ.js.map +1 -0
- package/dist/{navigation-HJf5zxlH.js → navigation-BzhHI3lo.js} +36 -35
- package/dist/navigation-BzhHI3lo.js.map +1 -0
- package/dist/{navigation-row-recipes-BVowojQw.js → navigation-row-recipes-BFLCk_Aq.js} +2 -2
- package/dist/{navigation-row-recipes-BVowojQw.js.map → navigation-row-recipes-BFLCk_Aq.js.map} +1 -1
- package/dist/{number-DMhe-Vsk.js → number-DbV1Dija.js} +36 -34
- package/dist/{number-DMhe-Vsk.js.map → number-DbV1Dija.js.map} +1 -1
- package/dist/{overflow-tab-bar-sQHXLlwQ.js → overflow-tab-bar-CWY7Nogn.js} +105 -103
- package/dist/overflow-tab-bar-CWY7Nogn.js.map +1 -0
- package/dist/{overlays-I0axtYA6.js → overlays-DNWmZrJ4.js} +14 -12
- package/dist/overlays-DNWmZrJ4.js.map +1 -0
- package/dist/{page-B5dTH9gE.js → page-Bgl1F560.js} +8 -8
- package/dist/{page-B5dTH9gE.js.map → page-Bgl1F560.js.map} +1 -1
- package/dist/{page-header-commands-DjzFEq3E.js → page-header-commands-DOb6WsfD.js} +5 -5
- package/dist/{page-header-commands-DjzFEq3E.js.map → page-header-commands-DOb6WsfD.js.map} +1 -1
- package/dist/pagination-BL25hu2s.js +158 -0
- package/dist/pagination-BL25hu2s.js.map +1 -0
- package/dist/{popover-Di55PyAI.js → popover-7_m66eYW.js} +8 -7
- package/dist/{popover-Di55PyAI.js.map → popover-7_m66eYW.js.map} +1 -1
- package/dist/popover-menu-B9WWygpa.js +100 -0
- package/dist/popover-menu-B9WWygpa.js.map +1 -0
- package/dist/{popover.recipes-Bdyhj2db.js → popover.recipes-D3j8R8Yp.js} +17 -10
- package/dist/popover.recipes-D3j8R8Yp.js.map +1 -0
- package/dist/{primitives-B-CkiEMU.js → primitives-BFK08r9M.js} +45 -44
- package/dist/primitives-BFK08r9M.js.map +1 -0
- package/dist/primitives.js +4 -4
- package/dist/{progress-rnS8-uAW.js → progress-B1VnCT0K.js} +5 -5
- package/dist/{progress-rnS8-uAW.js.map → progress-B1VnCT0K.js.map} +1 -1
- package/dist/{receipt-D0oswZ0p.js → receipt-BVSOH3Xo.js} +9 -6
- package/dist/{receipt-D0oswZ0p.js.map → receipt-BVSOH3Xo.js.map} +1 -1
- package/dist/{rich-text-DvGulsNJ.js → rich-text-GOUyKQ-s.js} +3 -3
- package/dist/{rich-text-DvGulsNJ.js.map → rich-text-GOUyKQ-s.js.map} +1 -1
- package/dist/{rich-text-editor-sMU_Scqm.js → rich-text-editor-cRLC-eBK.js} +418 -426
- package/dist/rich-text-editor-cRLC-eBK.js.map +1 -0
- package/dist/rich-text-editor-toolbar-DfXg0-VC.js +94 -0
- package/dist/rich-text-editor-toolbar-DfXg0-VC.js.map +1 -0
- package/dist/{scroll-area-Bt_vXY2b.js → scroll-area-DcI-M1UT.js} +2 -2
- package/dist/{scroll-area-Bt_vXY2b.js.map → scroll-area-DcI-M1UT.js.map} +1 -1
- package/dist/{separator-C8DlRGwF.js → separator-BDV-Y648.js} +3 -3
- package/dist/{separator-C8DlRGwF.js.map → separator-BDV-Y648.js.map} +1 -1
- package/dist/{separator-CYHnjsAb.js → separator-Bom7NsGO.js} +2 -2
- package/dist/{separator-CYHnjsAb.js.map → separator-Bom7NsGO.js.map} +1 -1
- package/dist/services/actions.js +1 -1
- package/dist/{settings-CQW3b-Cu.js → settings-ybnjVwbd.js} +20 -19
- package/dist/settings-ybnjVwbd.js.map +1 -0
- package/dist/{sheet-4SEvVYzA.js → sheet-CGpB3omz.js} +8 -7
- package/dist/{sheet-4SEvVYzA.js.map → sheet-CGpB3omz.js.map} +1 -1
- package/dist/{sidebar-d7Dg80ln.js → sidebar-A0ElHINE.js} +14 -13
- package/dist/{sidebar-d7Dg80ln.js.map → sidebar-A0ElHINE.js.map} +1 -1
- package/dist/{sidebar-C7WWR29L.js → sidebar-CPx_7YBa.js} +183 -182
- package/dist/sidebar-CPx_7YBa.js.map +1 -0
- package/dist/{skeleton-Cz890JZF.js → skeleton-Byjnt7qr.js} +3 -3
- package/dist/{skeleton-Cz890JZF.js.map → skeleton-Byjnt7qr.js.map} +1 -1
- package/dist/smart-card-DiC5aac3.js +604 -0
- package/dist/smart-card-DiC5aac3.js.map +1 -0
- package/dist/{structure-DC2dygdA.js → structure-BmisBK-3.js} +2 -2
- package/dist/{structure-DC2dygdA.js.map → structure-BmisBK-3.js.map} +1 -1
- package/dist/style.css +1 -1
- package/dist/table-BweFy_P9.js +1530 -0
- package/dist/table-BweFy_P9.js.map +1 -0
- package/dist/{table-CIKyLUsy.js → table-DsfzoUia.js} +75 -63
- package/dist/table-DsfzoUia.js.map +1 -0
- package/dist/{tabs-DwBJfjxX.js → tabs-CDocW5D1.js} +14 -13
- package/dist/tabs-CDocW5D1.js.map +1 -0
- package/dist/text-inputs-f9Ia-aCi.js +353 -0
- package/dist/text-inputs-f9Ia-aCi.js.map +1 -0
- package/dist/theme-mode-css-BB-_RYab.js +14 -0
- package/dist/theme-mode-css-BB-_RYab.js.map +1 -0
- package/dist/theme-scope-BJ6eE2xt.js +50 -0
- package/dist/theme-scope-BJ6eE2xt.js.map +1 -0
- package/dist/theme.css +285 -228
- package/dist/themes/green.css +16 -12
- package/dist/timelines-CwM_9IhD.js +457 -0
- package/dist/timelines-CwM_9IhD.js.map +1 -0
- package/dist/{tone-recipes-CPoExcTE.js → tone-recipes-BPsRAvhu.js} +5 -2
- package/dist/tone-recipes-BPsRAvhu.js.map +1 -0
- package/dist/{tooltip-CsfgrfS7.js → tooltip-yiRJUFjp.js} +4 -4
- package/dist/{tooltip-CsfgrfS7.js.map → tooltip-yiRJUFjp.js.map} +1 -1
- package/dist/{tree-BiKhg8AY.js → tree-WnKQzwbq.js} +9 -9
- package/dist/{tree-BiKhg8AY.js.map → tree-WnKQzwbq.js.map} +1 -1
- package/dist/typography/rich-text.js +1 -1
- package/dist/{typography-DTRkE9zL.js → typography-UTnveOEy.js} +6 -6
- package/dist/typography-UTnveOEy.js.map +1 -0
- package/dist/typography.js +2 -2
- package/dist/{ui-provider-1D_NSYzO.js → ui-provider-C_U0Xma4.js} +3 -3
- package/dist/ui-provider-C_U0Xma4.js.map +1 -0
- package/dist/ui-provider.js +2 -2
- package/dist/{upload-BO8-CLN6.js → upload-CXyxmQBP.js} +13 -12
- package/dist/upload-CXyxmQBP.js.map +1 -0
- package/dist/{upload-queue-EOC8g1gf.js → upload-queue-Boscubn9.js} +11 -9
- package/dist/upload-queue-Boscubn9.js.map +1 -0
- package/dist/{usage-card-obRaBskq.js → usage-card-BhO5eqkX.js} +53 -37
- package/dist/usage-card-BhO5eqkX.js.map +1 -0
- package/dist/{utils-l5LpDw2z.js → utils-BRhFDwuU.js} +59 -44
- package/dist/utils-BRhFDwuU.js.map +1 -0
- package/dist/{value-inputs-TAYMX111.js → value-inputs-DXPDjvBU.js} +268 -252
- package/dist/value-inputs-DXPDjvBU.js.map +1 -0
- package/dist/{value-typography-b8wpz1eX.js → value-typography-BP8OG6h5.js} +2 -2
- package/dist/{value-typography-b8wpz1eX.js.map → value-typography-BP8OG6h5.js.map} +1 -1
- package/dist/{workspace-DH0v0KcB.js → workspace-Cdrg7k9f.js} +34 -33
- package/dist/workspace-Cdrg7k9f.js.map +1 -0
- package/docs/consumer-skill/SKILL.md +2 -2
- package/docs/consumer-skill/references/agents-md.md +1 -1
- package/docs/consumer-skill/references/composition.md +8 -6
- package/docs/consumer-skill/references/integration.md +4 -3
- package/docs/consumer-skill/references/public-api.json +105 -2
- package/docs/consumer-skill/references/review.md +7 -0
- package/docs/consumer-skill/references/theming.md +71 -6
- package/docs/consumer-skill/references/tokens.json +1 -1
- package/docs/consumer-skill/references/workflows.md +25 -0
- package/docs/consumer-skill/scripts/composition-policy.mjs +3 -2
- package/docs/consumer-skill/scripts/surface-policy.mjs +11 -0
- package/package.json +8 -4
- package/dist/accordion-B6a3vVgA.js.map +0 -1
- package/dist/action-menu-TzCoSlwL.js +0 -280
- package/dist/action-menu-TzCoSlwL.js.map +0 -1
- package/dist/affordance-geometry.generated-B5iu-Mkr.js +0 -69
- package/dist/affordance-geometry.generated-B5iu-Mkr.js.map +0 -1
- package/dist/ai-artifact-BMJdv-6q.js +0 -1115
- package/dist/ai-artifact-BMJdv-6q.js.map +0 -1
- package/dist/attachment-BtfhGm8i.js +0 -245
- package/dist/attachment-BtfhGm8i.js.map +0 -1
- package/dist/auth-CYxKfo69.js.map +0 -1
- package/dist/avatar-BBnEJIx8.js.map +0 -1
- package/dist/badge-MrKVNzW9.js.map +0 -1
- package/dist/batch-action-bar-BZGDG-Si.js.map +0 -1
- package/dist/breadcrumbs-D5t7I023.js.map +0 -1
- package/dist/buttons-SbIcm1HJ.js.map +0 -1
- package/dist/cards-CiiHpKYd.js +0 -66
- package/dist/cards-CiiHpKYd.js.map +0 -1
- package/dist/chart-QfrARkXl.js.map +0 -1
- package/dist/choice-inputs-t6w3ATNz.js.map +0 -1
- package/dist/code-block-Dgbu-CU3.js.map +0 -1
- package/dist/combobox-2Ic8N9bL.js +0 -278
- package/dist/combobox-2Ic8N9bL.js.map +0 -1
- package/dist/combobox-DLl0bfiq.js +0 -867
- package/dist/combobox-DLl0bfiq.js.map +0 -1
- package/dist/comments-BpDuCUUu.js.map +0 -1
- package/dist/data-display-DafIvCl5.js.map +0 -1
- package/dist/date-picker-CF-DtUpF.js.map +0 -1
- package/dist/date-pickers-BmzxJl5l.js +0 -174
- package/dist/date-pickers-BmzxJl5l.js.map +0 -1
- package/dist/display-DsQTVzMz.js.map +0 -1
- package/dist/dropdown-menu-E2qmdC7o.js +0 -193
- package/dist/dropdown-menu-E2qmdC7o.js.map +0 -1
- package/dist/editable-text-recipe-Bkm6wKHp.js +0 -10
- package/dist/editable-text-recipe-Bkm6wKHp.js.map +0 -1
- package/dist/feedback-qNuMBtRH.js +0 -233
- package/dist/feedback-qNuMBtRH.js.map +0 -1
- package/dist/field-affordance-recipes-qQeIf4lG.js.map +0 -1
- package/dist/filters-BkHH53uv.js.map +0 -1
- package/dist/form-field-DUt4UxSV.js.map +0 -1
- package/dist/form-sizing-By94KzXE.js.map +0 -1
- package/dist/forms-numeric-C0bvjRPZ.js.map +0 -1
- package/dist/header-BOefOKd1.js.map +0 -1
- package/dist/input-DWhBBBww.js +0 -262
- package/dist/input-DWhBBBww.js.map +0 -1
- package/dist/input-Ddi_LSYv.js +0 -20
- package/dist/input-Ddi_LSYv.js.map +0 -1
- package/dist/interaction-recipes-CHr0dJUs.js.map +0 -1
- package/dist/item-DEmDiTlD.js +0 -265
- package/dist/item-DEmDiTlD.js.map +0 -1
- package/dist/media-gallery-DcTtAaeC.js.map +0 -1
- package/dist/mentions-D-uyCh01.js.map +0 -1
- package/dist/message-CdHgIWKf.js.map +0 -1
- package/dist/metadata-list-X5rYAKSB.js.map +0 -1
- package/dist/navigation-D3KwXmaq.js.map +0 -1
- package/dist/navigation-HJf5zxlH.js.map +0 -1
- package/dist/overflow-tab-bar-sQHXLlwQ.js.map +0 -1
- package/dist/overlays-I0axtYA6.js.map +0 -1
- package/dist/pagination-3bPA_a6K.js +0 -149
- package/dist/pagination-3bPA_a6K.js.map +0 -1
- package/dist/popover-menu-B71Tn2Qz.js +0 -99
- package/dist/popover-menu-B71Tn2Qz.js.map +0 -1
- package/dist/popover.recipes-Bdyhj2db.js.map +0 -1
- package/dist/primitives-B-CkiEMU.js.map +0 -1
- package/dist/rich-text-editor-sMU_Scqm.js.map +0 -1
- package/dist/rich-text-editor.recipes-CadiF_Uu.js +0 -88
- package/dist/rich-text-editor.recipes-CadiF_Uu.js.map +0 -1
- package/dist/settings-CQW3b-Cu.js.map +0 -1
- package/dist/sidebar-C7WWR29L.js.map +0 -1
- package/dist/smart-card-lFKxn5Hu.js +0 -595
- package/dist/smart-card-lFKxn5Hu.js.map +0 -1
- package/dist/spinner-fa3h1Aif.js +0 -80
- package/dist/spinner-fa3h1Aif.js.map +0 -1
- package/dist/table-CIKyLUsy.js.map +0 -1
- package/dist/table-CrcLN9Io.js +0 -1458
- package/dist/table-CrcLN9Io.js.map +0 -1
- package/dist/tabs-DwBJfjxX.js.map +0 -1
- package/dist/text-inputs-aaK9wcDT.js +0 -326
- package/dist/text-inputs-aaK9wcDT.js.map +0 -1
- package/dist/theme-scope-kStaAer0.js +0 -39
- package/dist/theme-scope-kStaAer0.js.map +0 -1
- package/dist/timelines-C_SBwHNP.js +0 -442
- package/dist/timelines-C_SBwHNP.js.map +0 -1
- package/dist/tone-recipes-CPoExcTE.js.map +0 -1
- package/dist/typography-DTRkE9zL.js.map +0 -1
- package/dist/ui-provider-1D_NSYzO.js.map +0 -1
- package/dist/upload-BO8-CLN6.js.map +0 -1
- package/dist/upload-queue-EOC8g1gf.js.map +0 -1
- package/dist/usage-card-obRaBskq.js.map +0 -1
- package/dist/utils-l5LpDw2z.js.map +0 -1
- package/dist/value-inputs-TAYMX111.js.map +0 -1
- package/dist/workspace-DH0v0KcB.js.map +0 -1
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
import type { ComponentProps } from 'react';
|
|
22
22
|
import { InputGroup as InputGroupPrimitive, InputGroupAddon as InputGroupAddonPrimitive, InputGroupInput as InputGroupInputPrimitive, InputGroupText as InputGroupTextPrimitive, InputGroupTextarea as InputGroupTextareaPrimitive } from '../../ui/input-group';
|
|
23
23
|
import { type ButtonProps } from '../buttons';
|
|
24
|
-
import type
|
|
24
|
+
import { type ComponentScale } from '../../../lib/ui-provider';
|
|
25
25
|
export type InputGroupProps = ComponentProps<typeof InputGroupPrimitive>;
|
|
26
26
|
export type InputGroupAddonProps = ComponentProps<typeof InputGroupAddonPrimitive>;
|
|
27
27
|
export interface InputGroupButtonProps extends Omit<ButtonProps, 'size'> {
|
|
@@ -36,7 +36,7 @@ declare function InputGroup({ className, ...props }: InputGroupProps): import("r
|
|
|
36
36
|
/** Leading/trailing (or block start/end) affordance slot inside the frame. */
|
|
37
37
|
declare function InputGroupAddon({ className, align, ...props }: InputGroupAddonProps): import("react").JSX.Element;
|
|
38
38
|
/** Inline action button sized to sit inside the control frame; its label stays on one line. */
|
|
39
|
-
declare function InputGroupButton({ className, tone, buttonStyle, truncate, ...props }: InputGroupButtonProps): import("react").JSX.Element;
|
|
39
|
+
declare function InputGroupButton({ className, tone, buttonStyle, truncate, iconOnly, ...props }: InputGroupButtonProps): import("react").JSX.Element;
|
|
40
40
|
/** Static copy segment — scalar text renders through Typography. */
|
|
41
41
|
declare function InputGroupText({ children, className, ...props }: InputGroupTextProps): import("react").JSX.Element;
|
|
42
42
|
/** Single-line control that inherits the group's frame instead of its own. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AiShimmerProps } from './types';
|
|
2
|
-
export declare function AiShimmer({ children, paused, duration, className, }: AiShimmerProps): import("react").JSX.Element;
|
|
2
|
+
export declare function AiShimmer({ children, paused, duration, size, className, }: AiShimmerProps): import("react").JSX.Element;
|
|
3
3
|
export declare namespace AiShimmer {
|
|
4
4
|
var displayName: string;
|
|
5
5
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
|
+
import type { TextProps } from '../../../typography';
|
|
2
3
|
export interface AiShimmerProps {
|
|
3
4
|
/** Children rendered with the shimmer gradient. Defaults to a placeholder string. */
|
|
4
5
|
children?: ReactNode;
|
|
@@ -6,6 +7,8 @@ export interface AiShimmerProps {
|
|
|
6
7
|
paused?: boolean;
|
|
7
8
|
/** Animation duration in seconds. */
|
|
8
9
|
duration?: number;
|
|
10
|
+
/** Text size of the shimmering copy. Defaults to the provider text size. */
|
|
11
|
+
size?: TextProps['size'];
|
|
9
12
|
/** Merged onto the outermost node. */
|
|
10
13
|
className?: string;
|
|
11
14
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ComponentPropsWithoutRef, ComponentType, ReactNode } from 'react';
|
|
2
2
|
import type { ActionMenuAction, ActionMenuProps } from '../../../base/action-menu';
|
|
3
|
+
import type { CardProps } from '../../../base/cards';
|
|
3
4
|
import type { StringsProp } from '../../../../lib/strings';
|
|
4
5
|
import type { OrderLine, OrderLineItemStrings } from '../order-line-item/types';
|
|
5
6
|
import { type FulfillmentStatus } from '../shared/order-status';
|
|
@@ -12,7 +13,8 @@ export interface FulfillmentGroupStrings extends OrderLineItemStrings {
|
|
|
12
13
|
moreActions: string;
|
|
13
14
|
}
|
|
14
15
|
export declare const defaultFulfillmentGroupStrings: FulfillmentGroupStrings;
|
|
15
|
-
|
|
16
|
+
/** Header and footer rules follow Card's provider defaults; `headerDivider` / `footerDivider` override them per group. */
|
|
17
|
+
export interface FulfillmentGroupProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children' | 'title'>, Pick<CardProps, 'headerDivider' | 'footerDivider'> {
|
|
16
18
|
/** Where these goods are. Drives the heading chip's label and tone. */
|
|
17
19
|
status: FulfillmentStatus;
|
|
18
20
|
/** Where the group ships from. */
|
|
@@ -6,15 +6,18 @@
|
|
|
6
6
|
* - `inline`: label sits immediately before the value, separator-style.
|
|
7
7
|
* - `stacked`: label above (xs secondary), value below (md).
|
|
8
8
|
*
|
|
9
|
-
* `
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
9
|
+
* The value takes the shared `Value` text role at the provider text size.
|
|
10
|
+
* `valueWeight` emphasises a fact or a total through that role. `mono`
|
|
11
|
+
* switches the value to the monospace identifier role (references, codes,
|
|
12
|
+
* keys). Amounts, counts, percentages and dates stay in the sans UI font: pass
|
|
13
|
+
* `valueClassName="tabular-nums"` (or a value primitive such as `Money` /
|
|
14
|
+
* `Percent`, which are already tabular) when figures should align. Keep
|
|
15
|
+
* `valueClassName` for layout (alignment, truncation, figures); the
|
|
16
|
+
* surrounding row is intentionally plain so consumers can stack many of these
|
|
17
|
+
* without visual clutter.
|
|
16
18
|
*/
|
|
17
19
|
import type { ReactNode } from 'react';
|
|
20
|
+
import { type ValueProps } from '../../../primitives';
|
|
18
21
|
export type InlineStatLayout = 'between' | 'inline' | 'stacked';
|
|
19
22
|
export interface InlineStatProps {
|
|
20
23
|
/** Display label. Scalar labels use DisplayLabel; rich content owns its typography. */
|
|
@@ -25,6 +28,11 @@ export interface InlineStatProps {
|
|
|
25
28
|
layout?: InlineStatLayout;
|
|
26
29
|
/** Renders the value in tabular monospace figures. */
|
|
27
30
|
mono?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Weight of the value's text role. Defaults to the role weight: regular, or
|
|
33
|
+
* medium with `mono`. Use `medium` for emphasised facts and `semibold` for totals.
|
|
34
|
+
*/
|
|
35
|
+
valueWeight?: ValueProps['weight'];
|
|
28
36
|
/** Merged onto the outermost node. */
|
|
29
37
|
className?: string;
|
|
30
38
|
/** Merged onto the label. */
|
|
@@ -32,7 +40,7 @@ export interface InlineStatProps {
|
|
|
32
40
|
/** Merged onto the value. */
|
|
33
41
|
valueClassName?: string;
|
|
34
42
|
}
|
|
35
|
-
export declare function InlineStat({ label, value, layout, mono, className, labelClassName, valueClassName, }: InlineStatProps): import("react").JSX.Element;
|
|
43
|
+
export declare function InlineStat({ label, value, layout, mono, valueWeight, className, labelClassName, valueClassName, }: InlineStatProps): import("react").JSX.Element;
|
|
36
44
|
export declare namespace InlineStat {
|
|
37
45
|
var displayName: string;
|
|
38
46
|
}
|
|
@@ -3,10 +3,13 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Density mapping:
|
|
5
5
|
* - `compact` → small tone-coloured dot
|
|
6
|
-
* - `default` →
|
|
7
|
-
* - `rich` →
|
|
6
|
+
* - `default` → icon-lg tone-tinted disc with the event icon
|
|
7
|
+
* - `rich` → small IconBadge (avatar-sm) with the event icon
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* Every marker heads a first-line box at least `icon-lg` tall, the height of
|
|
10
|
+
* the headline's first line, so the glyph centres on that line by layout
|
|
11
|
+
* rather than by a nudge. Always renders the connector line beneath unless
|
|
12
|
+
* `last` is true.
|
|
10
13
|
*/
|
|
11
14
|
import type { LucideIcon } from 'lucide-react';
|
|
12
15
|
import type { ActivityDensity, ActivityTone } from '../activities.types';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type Appointment, type AppointmentCalendarProps } from './appointment-calendar.types';
|
|
2
|
+
export declare function AppointmentCalendar<T extends Appointment = Appointment>({ appointments, categories, staff: staffProp, title, date: dateProp, defaultDate, onDateChange, view: viewProp, defaultView, onViewChange, category: categoryProp, defaultCategory, onCategoryChange, staffId: staffIdProp, defaultStaffId, onStaffChange, onAppointmentClick, appointmentActions, renderAppointment, onRangeChange, onCreateAppointment, onConflictsDismiss, loading, error, onRetry, weekStartsOn: weekStartsOnProp, strings: stringsProp, className, }: AppointmentCalendarProps<T>): import("react").JSX.Element;
|
|
3
|
+
export declare namespace AppointmentCalendar {
|
|
4
|
+
var displayName: string;
|
|
5
|
+
}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ActionMenuAction } from '../../base/action-menu';
|
|
3
|
+
import type { BadgeTone } from '../../base/badge';
|
|
4
|
+
import type { StringsProp } from '../../../lib/strings';
|
|
5
|
+
/** Where an appointment stands. Conflicts are derived, never a status. */
|
|
6
|
+
export type AppointmentStatus = 'confirmed' | 'pending' | 'completed' | 'cancelled' | 'noShow';
|
|
7
|
+
/** The day agenda or the seven-day week agenda beside the month. */
|
|
8
|
+
export type AppointmentCalendarView = 'day' | 'week';
|
|
9
|
+
/**
|
|
10
|
+
* Categorical colour for a service category. Categories are kinds, not
|
|
11
|
+
* statuses, so they draw from the chart series palette and never from the
|
|
12
|
+
* success, warning or destructive tones that status chips own.
|
|
13
|
+
*/
|
|
14
|
+
export type AppointmentCategoryColor = 'chart-1' | 'chart-2' | 'chart-3' | 'chart-4' | 'chart-5';
|
|
15
|
+
/** A service category: its label, filter chip and marker colour. */
|
|
16
|
+
export interface AppointmentCategory {
|
|
17
|
+
/** Stable identity, referenced by `Appointment.category`. */
|
|
18
|
+
id: string;
|
|
19
|
+
/** Chip and legend label. */
|
|
20
|
+
label: string;
|
|
21
|
+
/** Marker colour. Defaults to the chart series by the category's position. */
|
|
22
|
+
color?: AppointmentCategoryColor;
|
|
23
|
+
}
|
|
24
|
+
/** A person on an appointment: the staff member who delivers it, or the client. */
|
|
25
|
+
export interface AppointmentPerson {
|
|
26
|
+
/** Stable identity. Staff overlap is detected by this id. */
|
|
27
|
+
id: string;
|
|
28
|
+
/** Display name. */
|
|
29
|
+
name: string;
|
|
30
|
+
/** Portrait. Initials stand in without one, or when it fails to load. */
|
|
31
|
+
avatarUrl?: string;
|
|
32
|
+
}
|
|
33
|
+
/** One booked slot. The calendar formats it; it never fetches or saves. */
|
|
34
|
+
export interface Appointment {
|
|
35
|
+
/** Stable identity. */
|
|
36
|
+
id: string;
|
|
37
|
+
/** The service: "Cut and blow-dry". */
|
|
38
|
+
title: string;
|
|
39
|
+
/** Start of the slot. */
|
|
40
|
+
start: Date;
|
|
41
|
+
/** End of the slot; later than `start`. */
|
|
42
|
+
end: Date;
|
|
43
|
+
/** Category id, matching an `AppointmentCategory`. */
|
|
44
|
+
category: string;
|
|
45
|
+
/** Booking state. Cancelled appointments are listed but never conflict. */
|
|
46
|
+
status: AppointmentStatus;
|
|
47
|
+
/** Who the appointment is for, shown after the time. */
|
|
48
|
+
client?: AppointmentPerson | string;
|
|
49
|
+
/** Who delivers it. Two overlapping appointments for one staff member conflict. */
|
|
50
|
+
staff?: AppointmentPerson;
|
|
51
|
+
}
|
|
52
|
+
/** The days on screen: the month grid and the agenda. `end` is exclusive (midnight after the last day). */
|
|
53
|
+
export interface AppointmentDateRange {
|
|
54
|
+
start: Date;
|
|
55
|
+
end: Date;
|
|
56
|
+
}
|
|
57
|
+
/** Overlapping appointments for one staff member. */
|
|
58
|
+
export interface AppointmentConflict<T extends Appointment = Appointment> {
|
|
59
|
+
/** The double-booked staff member. */
|
|
60
|
+
staff: AppointmentPerson;
|
|
61
|
+
/** The appointments that overlap, earliest first. */
|
|
62
|
+
appointments: T[];
|
|
63
|
+
/** When the overlap begins. */
|
|
64
|
+
start: Date;
|
|
65
|
+
}
|
|
66
|
+
export interface AppointmentCalendarStrings {
|
|
67
|
+
/** Booked count beside the title: "8 booked". */
|
|
68
|
+
formatBooked: (count: number) => string;
|
|
69
|
+
/** Conflict count beside the title: "2 conflicts". */
|
|
70
|
+
formatConflicts: (count: number) => string;
|
|
71
|
+
/** Accessible name of the Day/Week switch. */
|
|
72
|
+
viewLabel: string;
|
|
73
|
+
day: string;
|
|
74
|
+
week: string;
|
|
75
|
+
/** Accessible name of the staff filter. */
|
|
76
|
+
staffLabel: string;
|
|
77
|
+
/** The staff filter's "everyone" option. */
|
|
78
|
+
allStaff: string;
|
|
79
|
+
/** Primary command. */
|
|
80
|
+
newAppointment: string;
|
|
81
|
+
/** Conflict alert title. */
|
|
82
|
+
conflictTitle: string;
|
|
83
|
+
/** One overlapping-booking sentence per double-booked staff member. */
|
|
84
|
+
formatConflict: (staffName: string, count: number, time: string) => string;
|
|
85
|
+
/** Hides the conflict alert. */
|
|
86
|
+
dismiss: string;
|
|
87
|
+
previousMonth: string;
|
|
88
|
+
nextMonth: string;
|
|
89
|
+
/** Accessible name of the month select. */
|
|
90
|
+
monthLabel: string;
|
|
91
|
+
/** Accessible name of the year select. */
|
|
92
|
+
yearLabel: string;
|
|
93
|
+
/** Accessible name of the category filter. */
|
|
94
|
+
categoriesLabel: string;
|
|
95
|
+
/** The category filter's "every category" chip. */
|
|
96
|
+
allCategories: string;
|
|
97
|
+
/** Count beside the agenda heading: "8 appointments". */
|
|
98
|
+
formatCount: (count: number) => string;
|
|
99
|
+
/** A slot: "9 AM to 10 AM". Receives already formatted times. */
|
|
100
|
+
formatTimeRange: (start: string, end: string) => string;
|
|
101
|
+
/** Accessible day label in the month: "Tuesday, June 9, 3 appointments". */
|
|
102
|
+
formatDayLabel: (date: string, count: number) => string;
|
|
103
|
+
/** Agenda heading for the week view: "June 8 to 14". */
|
|
104
|
+
formatWeekRange: (start: string, end: string) => string;
|
|
105
|
+
/** Status chip words. */
|
|
106
|
+
status: Record<AppointmentStatus, string>;
|
|
107
|
+
/** Chip shown instead of the status when an appointment overlaps another. */
|
|
108
|
+
conflict: string;
|
|
109
|
+
/** Agenda copy when nothing matches the day or week. */
|
|
110
|
+
empty: string;
|
|
111
|
+
/** Loading copy for assistive technology. */
|
|
112
|
+
loading: string;
|
|
113
|
+
/** Default error state title. */
|
|
114
|
+
errorTitle: string;
|
|
115
|
+
/** Default error state description, when `error` carries no message. */
|
|
116
|
+
errorDescription: string;
|
|
117
|
+
/** Retry command in the default error state. */
|
|
118
|
+
retry: string;
|
|
119
|
+
/** Accessible name of an appointment's actions menu: "Actions for Balayage". */
|
|
120
|
+
formatActionsLabel: (title: string) => string;
|
|
121
|
+
}
|
|
122
|
+
export declare const defaultAppointmentCalendarStrings: AppointmentCalendarStrings;
|
|
123
|
+
/** What the calendar has worked out for one appointment, handed to `renderAppointment`. */
|
|
124
|
+
export interface AppointmentRenderContext {
|
|
125
|
+
/** The appointment's category, when one matches. */
|
|
126
|
+
category?: AppointmentCategory;
|
|
127
|
+
/** The category's marker class (`bg-chart-N`), for a stripe or dot of your own. */
|
|
128
|
+
categoryColorClass: string;
|
|
129
|
+
/** Whether it overlaps another booking for the same staff member. */
|
|
130
|
+
conflict: boolean;
|
|
131
|
+
/** The status chip's word, or the conflict word when it overlaps. */
|
|
132
|
+
statusLabel: string;
|
|
133
|
+
/** The status chip's tone: destructive for a conflict, otherwise the status tone. */
|
|
134
|
+
statusTone: BadgeTone;
|
|
135
|
+
/** The formatted slot: "09:00 to 10:00". */
|
|
136
|
+
time: string;
|
|
137
|
+
/** Opens it through `onAppointmentClick`. Undefined when rows are not interactive. */
|
|
138
|
+
open?: () => void;
|
|
139
|
+
/** The visible commands `appointmentActions` returned for it. */
|
|
140
|
+
actions: readonly ActionMenuAction[];
|
|
141
|
+
/** The built-in actions menu for those commands, or null when there are none. */
|
|
142
|
+
actionsMenu: ReactNode;
|
|
143
|
+
/** The built-in row, to wrap or extend instead of replacing. */
|
|
144
|
+
defaultRender: () => ReactNode;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Props for `AppointmentCalendar`. `T` is the app's own appointment type: extra
|
|
148
|
+
* fields such as a price or notes come back, typed, in every callback.
|
|
149
|
+
*/
|
|
150
|
+
export interface AppointmentCalendarProps<T extends Appointment = Appointment> {
|
|
151
|
+
/** Appointments to place. The calendar filters and formats; it never fetches. */
|
|
152
|
+
appointments: T[];
|
|
153
|
+
/** Service categories: filter chips, markers and day dots. */
|
|
154
|
+
categories: AppointmentCategory[];
|
|
155
|
+
/** Staff offered by the staff filter. Defaults to the staff found on appointments. */
|
|
156
|
+
staff?: AppointmentPerson[];
|
|
157
|
+
/** Heading above the calendar: the location or calendar name. */
|
|
158
|
+
title?: ReactNode;
|
|
159
|
+
/** Selected day. Controlled with `onDateChange`. */
|
|
160
|
+
date?: Date;
|
|
161
|
+
/** Selected day for uncontrolled use. Defaults to today. */
|
|
162
|
+
defaultDate?: Date;
|
|
163
|
+
/** Fired when a day is chosen or the month moves. */
|
|
164
|
+
onDateChange?: (date: Date) => void;
|
|
165
|
+
/** Day or week agenda. Controlled with `onViewChange`. */
|
|
166
|
+
view?: AppointmentCalendarView;
|
|
167
|
+
/** View for uncontrolled use. Defaults to `day`. */
|
|
168
|
+
defaultView?: AppointmentCalendarView;
|
|
169
|
+
/** Fired when the Day/Week switch changes. */
|
|
170
|
+
onViewChange?: (view: AppointmentCalendarView) => void;
|
|
171
|
+
/** Category filter: a category id, or `all`. Controlled with `onCategoryChange`. */
|
|
172
|
+
category?: string;
|
|
173
|
+
/** Category filter for uncontrolled use. Defaults to `all`. */
|
|
174
|
+
defaultCategory?: string;
|
|
175
|
+
/** Fired when a category chip is chosen. */
|
|
176
|
+
onCategoryChange?: (category: string) => void;
|
|
177
|
+
/** Staff filter: a staff id, or `all`. Controlled with `onStaffChange`. */
|
|
178
|
+
staffId?: string;
|
|
179
|
+
/** Staff filter for uncontrolled use. Defaults to `all`. */
|
|
180
|
+
defaultStaffId?: string;
|
|
181
|
+
/** Fired when the staff filter changes. */
|
|
182
|
+
onStaffChange?: (staffId: string) => void;
|
|
183
|
+
/** Fired when an appointment is activated. Without it, rows are not interactive. */
|
|
184
|
+
onAppointmentClick?: (appointment: T) => void;
|
|
185
|
+
/**
|
|
186
|
+
* Commands for one appointment, such as confirm, reschedule or cancel,
|
|
187
|
+
* offered in a menu at the end of its row. Return an empty list for none.
|
|
188
|
+
*/
|
|
189
|
+
appointmentActions?: (appointment: T) => readonly ActionMenuAction[];
|
|
190
|
+
/**
|
|
191
|
+
* Renders one appointment in the agenda instead of the built-in row. The
|
|
192
|
+
* context carries its category colour, conflict, time, `open`, its actions
|
|
193
|
+
* and a ready actions menu, and `defaultRender` for the built-in row.
|
|
194
|
+
*/
|
|
195
|
+
renderAppointment?: (appointment: T, context: AppointmentRenderContext) => ReactNode;
|
|
196
|
+
/**
|
|
197
|
+
* Fired with the days on screen, the month grid and the agenda together, once
|
|
198
|
+
* on mount and whenever they change. Load appointments for this range.
|
|
199
|
+
*/
|
|
200
|
+
onRangeChange?: (range: AppointmentDateRange) => void;
|
|
201
|
+
/** Shows the primary "New appointment" command; receives the selected day. */
|
|
202
|
+
onCreateAppointment?: (date: Date) => void;
|
|
203
|
+
/** Fired when the conflict alert is dismissed, with the conflicts it showed. */
|
|
204
|
+
onConflictsDismiss?: (conflicts: AppointmentConflict<T>[]) => void;
|
|
205
|
+
/** Shows the loading state in the agenda. */
|
|
206
|
+
loading?: boolean;
|
|
207
|
+
/**
|
|
208
|
+
* Shows the error state in the agenda. A string or Error becomes its
|
|
209
|
+
* description; any other element replaces the default state.
|
|
210
|
+
*/
|
|
211
|
+
error?: ReactNode | Error;
|
|
212
|
+
/** Adds Retry to the default error state. */
|
|
213
|
+
onRetry?: () => void;
|
|
214
|
+
/** First column of the month and first day of the week. Defaults to the provider, then Sunday. */
|
|
215
|
+
weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
216
|
+
/** Overrides this calendar's own copy. */
|
|
217
|
+
strings?: StringsProp<AppointmentCalendarStrings>;
|
|
218
|
+
/** Merged onto the root. */
|
|
219
|
+
className?: string;
|
|
220
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure helpers for the appointment calendar: day arithmetic, filtering,
|
|
3
|
+
* conflict detection and time formatting. No React, so they are testable and
|
|
4
|
+
* reusable by an application that pre-computes its own view.
|
|
5
|
+
*/
|
|
6
|
+
import type { Appointment, AppointmentCategory, AppointmentCategoryColor, AppointmentConflict, AppointmentPerson } from './appointment-calendar.types';
|
|
7
|
+
/** Marker colour classes per chart series. Literal so Tailwind generates them. */
|
|
8
|
+
export declare const appointmentCategoryColorClasses: Record<AppointmentCategoryColor, string>;
|
|
9
|
+
/** A category's colour: its own, or the chart series at its position. */
|
|
10
|
+
export declare function categoryColor(categories: AppointmentCategory[], id: string): AppointmentCategoryColor;
|
|
11
|
+
export declare function startOfDay(date: Date): Date;
|
|
12
|
+
export declare function addDays(date: Date, days: number): Date;
|
|
13
|
+
export declare function isSameDay(a: Date, b: Date): boolean;
|
|
14
|
+
/** The same day of the month in another month, clamped to that month's length. */
|
|
15
|
+
export declare function addMonths(date: Date, months: number): Date;
|
|
16
|
+
export declare function startOfWeek(date: Date, weekStartsOn: number): Date;
|
|
17
|
+
/** The seven days of the week that holds `date`. */
|
|
18
|
+
export declare function weekDays(date: Date, weekStartsOn: number): Date[];
|
|
19
|
+
/** Six full weeks covering the month of `date`, so the grid never changes height. */
|
|
20
|
+
export declare function monthGrid(date: Date, weekStartsOn: number): Date[][];
|
|
21
|
+
/** Whether an appointment touches a day (it may run past midnight). */
|
|
22
|
+
export declare function occursOn(appointment: Appointment, day: Date): boolean;
|
|
23
|
+
export declare function appointmentsOn<T extends Appointment>(appointments: T[], day: Date): T[];
|
|
24
|
+
/** Applies the category and staff filters; `all` keeps everything. */
|
|
25
|
+
export declare function filterAppointments<T extends Appointment>(appointments: T[], category: string, staffId: string): T[];
|
|
26
|
+
/**
|
|
27
|
+
* Overlapping appointments per staff member. Two appointments conflict when
|
|
28
|
+
* the same staff member is booked for both and their times overlap; touching
|
|
29
|
+
* ends (10:00 to 10:00) do not overlap, and cancelled appointments never conflict.
|
|
30
|
+
*/
|
|
31
|
+
export declare function findConflicts<T extends Appointment>(appointments: T[]): AppointmentConflict<T>[];
|
|
32
|
+
/** Ids of every appointment that takes part in a conflict. */
|
|
33
|
+
export declare function conflictingIds(conflicts: AppointmentConflict[]): Set<string>;
|
|
34
|
+
/** Distinct staff found on appointments, in first-seen order. */
|
|
35
|
+
export declare function staffFrom(appointments: Appointment[]): AppointmentPerson[];
|
|
36
|
+
/**
|
|
37
|
+
* "9 AM", or "9:30 AM" when the minutes matter. A 24-hour clock always keeps
|
|
38
|
+
* its minutes ("09:00"), since a bare "09" does not read as a time.
|
|
39
|
+
*/
|
|
40
|
+
export declare function formatTime(date: Date, locale?: string): string;
|
|
41
|
+
export declare function personName(person: AppointmentPerson | string | undefined): string | undefined;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { AppointmentCalendar } from './appointment-calendar';
|
|
2
|
+
export { defaultAppointmentCalendarStrings, type Appointment, type AppointmentCalendarProps, type AppointmentCalendarStrings, type AppointmentCalendarView, type AppointmentCategory, type AppointmentCategoryColor, type AppointmentConflict, type AppointmentDateRange, type AppointmentPerson, type AppointmentRenderContext, type AppointmentStatus, } from './appointment-calendar.types';
|
|
3
|
+
export { appointmentsOn, filterAppointments, findConflicts, } from './appointment-calendar.utils';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AppointmentAgenda — the list beside the month: one day's appointments, or
|
|
3
|
+
* the selected week grouped by day. Each row shows its category stripe, the
|
|
4
|
+
* service with its status chip (or the conflict chip when it overlaps another
|
|
5
|
+
* booking for the same staff member), the time range and client, and the
|
|
6
|
+
* staff member's avatar. A row opens only when the app can open it: a
|
|
7
|
+
* transparent button stretched over the row takes the click, and the actions
|
|
8
|
+
* menu sits above it, since a button cannot hold another. Private to the
|
|
9
|
+
* appointment calendar.
|
|
10
|
+
*/
|
|
11
|
+
import { type ReactNode } from 'react';
|
|
12
|
+
import { type ActionMenuAction } from '../../../base/action-menu';
|
|
13
|
+
import type { Appointment, AppointmentCalendarStrings, AppointmentCategory, AppointmentRenderContext } from '../appointment-calendar.types';
|
|
14
|
+
export interface AppointmentAgendaProps {
|
|
15
|
+
/** The days to list: one for the day view, seven for the week view. */
|
|
16
|
+
days: Date[];
|
|
17
|
+
/** Appointments after the category and staff filters. */
|
|
18
|
+
appointments: Appointment[];
|
|
19
|
+
categories: AppointmentCategory[];
|
|
20
|
+
/** Ids of appointments that overlap another booking for the same staff member. */
|
|
21
|
+
conflicts: Set<string>;
|
|
22
|
+
heading: string;
|
|
23
|
+
loading: boolean;
|
|
24
|
+
error?: ReactNode | Error;
|
|
25
|
+
onRetry?: () => void;
|
|
26
|
+
locale?: string;
|
|
27
|
+
onAppointmentClick?: (appointment: Appointment) => void;
|
|
28
|
+
appointmentActions?: (appointment: Appointment) => readonly ActionMenuAction[];
|
|
29
|
+
renderAppointment?: (appointment: Appointment, context: AppointmentRenderContext) => ReactNode;
|
|
30
|
+
strings: AppointmentCalendarStrings;
|
|
31
|
+
}
|
|
32
|
+
export declare function AppointmentAgenda({ days, appointments, categories, conflicts, heading, loading, error, onRetry, locale, onAppointmentClick, appointmentActions, renderAppointment, strings }: AppointmentAgendaProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Appointment, AppointmentCalendarStrings, AppointmentCategory } from '../appointment-calendar.types';
|
|
2
|
+
export interface AppointmentMonthProps {
|
|
3
|
+
selected: Date;
|
|
4
|
+
onSelect: (date: Date) => void;
|
|
5
|
+
/** The first day of the month on screen, which keyboard focus can move away from the selection. */
|
|
6
|
+
onVisibleMonthChange?: (month: Date) => void;
|
|
7
|
+
appointments: Appointment[];
|
|
8
|
+
categories: AppointmentCategory[];
|
|
9
|
+
weekStartsOn: number;
|
|
10
|
+
locale?: string;
|
|
11
|
+
strings: AppointmentCalendarStrings;
|
|
12
|
+
}
|
|
13
|
+
export declare function AppointmentMonth({ selected, onSelect, onVisibleMonthChange, appointments, categories, weekStartsOn, locale, strings }: AppointmentMonthProps): import("react").JSX.Element;
|
|
@@ -10,5 +10,19 @@
|
|
|
10
10
|
* here for the constants file.
|
|
11
11
|
*/
|
|
12
12
|
import type { ComboboxStrings } from './types';
|
|
13
|
-
export declare const defaultComboboxStrings:
|
|
13
|
+
export declare const defaultComboboxStrings: {
|
|
14
|
+
placeholder: string;
|
|
15
|
+
clear: string;
|
|
16
|
+
toggle: string;
|
|
17
|
+
dismiss: string;
|
|
18
|
+
removeSelection: (itemLabel: string) => string;
|
|
19
|
+
searching: string;
|
|
20
|
+
noResults: string;
|
|
21
|
+
typeToSearch: string;
|
|
22
|
+
typeMore: string;
|
|
23
|
+
createNew: string;
|
|
24
|
+
loadingMore: string;
|
|
25
|
+
apply: string;
|
|
26
|
+
cancel: string;
|
|
27
|
+
};
|
|
14
28
|
export type { ComboboxStrings };
|
|
@@ -9,6 +9,10 @@ export type ComboboxStrings = {
|
|
|
9
9
|
placeholder: string;
|
|
10
10
|
clear: string;
|
|
11
11
|
toggle: string;
|
|
12
|
+
/** Accessible name of both screen-reader dismissal controls. */
|
|
13
|
+
dismiss?: string;
|
|
14
|
+
/** Names an individual selected item's removal button. */
|
|
15
|
+
removeSelection?: (itemLabel: string) => string;
|
|
12
16
|
searching: string;
|
|
13
17
|
noResults: string;
|
|
14
18
|
typeToSearch: string;
|
|
@@ -44,6 +44,8 @@ export interface MediaLibraryStrings {
|
|
|
44
44
|
selectMode: string;
|
|
45
45
|
/** Check control that selects one asset while browsing; `{name}` is the asset. */
|
|
46
46
|
selectItem: string;
|
|
47
|
+
/** Accessible name of the selected-assets action region. Defaults to "Batch actions". */
|
|
48
|
+
batchActionsLabel?: string;
|
|
47
49
|
privateLabel: string;
|
|
48
50
|
publicLabel: string;
|
|
49
51
|
typeImage: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { RichTextEditor } from './rich-text-editor';
|
|
2
2
|
export { FormRichTextEditor, type FormRichTextEditorProps } from './form-rich-text-editor';
|
|
3
|
-
export type { RichTextEditorProps, RichTextEditorHandle, RichTextEditorToolbarItem, RichTextCaretContext, ToolbarButtonConfig, RichTextEditorImages, RichTextImage, RichTextImageUploadContext, } from './rich-text-editor.types';
|
|
3
|
+
export type { RichTextEditorProps, RichTextEditorBodyHeight, RichTextEditorHandle, RichTextEditorToolbarItem, RichTextCaretContext, ToolbarButtonConfig, RichTextEditorImages, RichTextImage, RichTextImageUploadContext, } from './rich-text-editor.types';
|
|
4
4
|
export { useRichTextImages } from './use-rich-text-images';
|
|
5
5
|
export { defaultRichTextEditorStrings, type RichTextEditorStrings, } from './rich-text-editor.strings';
|
|
6
6
|
export { RichTextEditorToolbar, type RichTextEditorToolbarProps, CountsFooterText, type CountsFooterTextProps, } from './partials';
|
|
@@ -3,5 +3,11 @@ export declare const richTextEditorRecipes: {
|
|
|
3
3
|
readonly source: string;
|
|
4
4
|
readonly frame: "min-w-0 overflow-hidden border-input bg-background rounded-inner border";
|
|
5
5
|
readonly disabled: "opacity-50";
|
|
6
|
+
readonly disabledControl: "disabled:opacity-100 aria-disabled:opacity-100";
|
|
6
7
|
readonly content: "h-full [&_.ProseMirror]:h-full [&_.ProseMirror]:min-h-full [&_.ProseMirror]:outline-none";
|
|
8
|
+
readonly bodyMinHeight: {
|
|
9
|
+
readonly control: "min-h-control-sm";
|
|
10
|
+
readonly field: "min-h-textarea-sm";
|
|
11
|
+
readonly document: "min-h-48";
|
|
12
|
+
};
|
|
7
13
|
};
|
|
@@ -92,6 +92,8 @@ export interface RichTextEditorImages extends RichTextImageRendering {
|
|
|
92
92
|
/** Receives upload failures and refused files, for reporting. */
|
|
93
93
|
onError?: (error: unknown, file: File) => void;
|
|
94
94
|
}
|
|
95
|
+
/** Body floor roles for the rich text editor. */
|
|
96
|
+
export type RichTextEditorBodyHeight = 'control' | 'field' | 'document';
|
|
95
97
|
export interface RichTextEditorProps {
|
|
96
98
|
/** Editor content as HTML. Controlled. */
|
|
97
99
|
value: string;
|
|
@@ -101,7 +103,13 @@ export interface RichTextEditorProps {
|
|
|
101
103
|
placeholder?: string;
|
|
102
104
|
/** Tightens the toolbar and body for inline use. */
|
|
103
105
|
compact?: boolean;
|
|
104
|
-
/**
|
|
106
|
+
/**
|
|
107
|
+
* Body floor role: `control` (one small control line), `field` (a textarea, for
|
|
108
|
+
* composers and replies) or `document` (a short page). Defaults to `control`
|
|
109
|
+
* when `compact`, otherwise `document`; follows density. `minHeight` wins.
|
|
110
|
+
*/
|
|
111
|
+
bodyHeight?: RichTextEditorBodyHeight;
|
|
112
|
+
/** Smallest height the body may take, as a CSS length. Overrides `bodyHeight`. */
|
|
105
113
|
minHeight?: string;
|
|
106
114
|
/** Height at which the body starts scrolling. */
|
|
107
115
|
maxHeight?: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type DataTableHeaderProps } from './table.types';
|
|
3
|
-
export declare function DataTableHeader<TData>({ table, enableResizing, stickyHeader, headerClassName, cellClassName, stickyFirstColumn, columnGroups, headerTransparent, }: DataTableHeaderProps<TData>): React.JSX.Element;
|
|
3
|
+
export declare function DataTableHeader<TData>({ table, enableResizing, stickyHeader, headerClassName, cellClassName, stickyFirstColumn, columnGroups, headerTransparent, strings, }: DataTableHeaderProps<TData>): React.JSX.Element;
|
|
4
4
|
export declare namespace DataTableHeader {
|
|
5
5
|
var displayName: string;
|
|
6
6
|
}
|
|
@@ -1,3 +1,57 @@
|
|
|
1
1
|
import { type DataTableStrings, type DataTableStringsOverride } from './table.types';
|
|
2
|
-
export declare const defaultDataTableStrings:
|
|
2
|
+
export declare const defaultDataTableStrings: {
|
|
3
|
+
emptyState: {
|
|
4
|
+
message: string;
|
|
5
|
+
ariaLabel: string;
|
|
6
|
+
};
|
|
7
|
+
actions: {
|
|
8
|
+
triggerLabel: string;
|
|
9
|
+
srLabel: string;
|
|
10
|
+
menuLabel: string;
|
|
11
|
+
};
|
|
12
|
+
filter: {
|
|
13
|
+
searchPlaceholder: string;
|
|
14
|
+
columnsButton: string;
|
|
15
|
+
};
|
|
16
|
+
columnVisibility: {
|
|
17
|
+
title: string;
|
|
18
|
+
triggerLabel: string;
|
|
19
|
+
formatLabel: (columnId: string, currentLabel?: string | null) => string;
|
|
20
|
+
};
|
|
21
|
+
toolbar: {
|
|
22
|
+
scrollLeft: string;
|
|
23
|
+
scrollRight: string;
|
|
24
|
+
columns: string;
|
|
25
|
+
enterFullscreen: string;
|
|
26
|
+
exitFullscreen: string;
|
|
27
|
+
};
|
|
28
|
+
pagination: {
|
|
29
|
+
showing: string;
|
|
30
|
+
to: string;
|
|
31
|
+
of: string;
|
|
32
|
+
entries: string;
|
|
33
|
+
previous: string;
|
|
34
|
+
next: string;
|
|
35
|
+
previousLabel: string;
|
|
36
|
+
nextLabel: string;
|
|
37
|
+
morePages: string;
|
|
38
|
+
page: string;
|
|
39
|
+
rowsPerPage: string;
|
|
40
|
+
ariaLabel: string;
|
|
41
|
+
};
|
|
42
|
+
selection: {
|
|
43
|
+
summary: (selected: number, total: number) => string;
|
|
44
|
+
row: (index: number) => string;
|
|
45
|
+
selectAll: string;
|
|
46
|
+
clear: string;
|
|
47
|
+
label: string;
|
|
48
|
+
};
|
|
49
|
+
accessibility: {
|
|
50
|
+
scrollRegion: string;
|
|
51
|
+
fullscreenRegion: string;
|
|
52
|
+
sortColumn: (columnLabel: string) => string;
|
|
53
|
+
sortPriority: (direction: "asc" | "desc", priority: number, total: number) => string;
|
|
54
|
+
resizeColumn: (columnLabel: string) => string;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
3
57
|
export declare const mergeDataTableStrings: (overrides?: DataTableStringsOverride) => DataTableStrings;
|