themelia-react-ui 1.0.0 → 1.0.1
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 +53 -1
- package/README.md +39 -6
- package/dist/{accordion-BRWh3BM1.js → accordion-B-5Focs8.js} +2 -2
- package/dist/{accordion-BRWh3BM1.js.map → accordion-B-5Focs8.js.map} +1 -1
- package/dist/{affordance-geometry.generated-DXl-Zb3Z.js → affordance-geometry.generated-D8Jcfb0G.js} +10 -1
- package/dist/affordance-geometry.generated-D8Jcfb0G.js.map +1 -0
- package/dist/{ai-artifact-DkOArd3-.js → ai-artifact-B5tPpXnS.js} +5 -5
- package/dist/{ai-artifact-DkOArd3-.js.map → ai-artifact-B5tPpXnS.js.map} +1 -1
- package/dist/{app-shell-BH_bGcE2.js → app-shell-at8Kt4l_.js} +3 -3
- package/dist/{app-shell-BH_bGcE2.js.map → app-shell-at8Kt4l_.js.map} +1 -1
- package/dist/{attachment-DsLgNHXt.js → attachment-BO2R47wn.js} +2 -2
- package/dist/{attachment-DsLgNHXt.js.map → attachment-BO2R47wn.js.map} +1 -1
- package/dist/{auth-BDB1V_2q.js → auth-OFwWSAap.js} +4 -4
- package/dist/{auth-BDB1V_2q.js.map → auth-OFwWSAap.js.map} +1 -1
- package/dist/{avatar-CsnWaYmt.js → avatar-Bpzty83c.js} +73 -68
- package/dist/avatar-Bpzty83c.js.map +1 -0
- package/dist/base/accordion.js +1 -1
- package/dist/base/attachment.js +1 -1
- package/dist/base/avatar.js +1 -1
- package/dist/base/cards.js +2 -2
- package/dist/base/cascader.js +6 -6
- package/dist/base/choice-inputs.js +3 -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/date-pickers.js +2 -2
- package/dist/base/display.js +1 -1
- package/dist/base/feedback.js +4 -3
- package/dist/base/forms-numeric.js +1 -1
- package/dist/base/forms.js +2 -2
- package/dist/base/inline-edit.js +236 -0
- package/dist/base/inline-edit.js.map +1 -0
- package/dist/base/media-gallery.js +1 -1
- package/dist/base/navigation.js +3 -3
- package/dist/base/popover-menu.js +1 -1
- package/dist/base/popover.js +1 -1
- package/dist/base/repeaters.js +4 -4
- package/dist/base/sheet.js +1 -1
- package/dist/base/sidebar.js +1 -1
- package/dist/base/signature-pad.js +3 -3
- package/dist/base/skeleton.js +1 -1
- package/dist/base/spinner.js +1 -1
- package/dist/base/structure.js +1 -1
- package/dist/base/text-inputs.js +2 -2
- 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/blocks/admin.js +6 -6
- package/dist/blocks/ai.js +6 -6
- package/dist/blocks/analytics/usage-card.js +3 -0
- package/dist/blocks/analytics.js +361 -360
- 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 +15 -15
- package/dist/blocks/data-display.js +1 -1
- package/dist/blocks/onboarding.js +3 -3
- package/dist/blocks/planning.js +311 -0
- package/dist/blocks/planning.js.map +1 -0
- package/dist/blocks/timelines.js +1 -1
- package/dist/{cards-BMB0laLG.js → cards-Cum56XOF.js} +3 -3
- package/dist/{cards-BMB0laLG.js.map → cards-Cum56XOF.js.map} +1 -1
- package/dist/checkbox-BavDRjF7.js +34 -0
- package/dist/checkbox-BavDRjF7.js.map +1 -0
- package/dist/{choice-inputs-CavA-SGV.js → choice-inputs-CC7XqPQO.js} +166 -191
- package/dist/choice-inputs-CC7XqPQO.js.map +1 -0
- package/dist/{code-block-DIlqzoiD.js → code-block-xHKbAJDj.js} +2 -2
- package/dist/{code-block-DIlqzoiD.js.map → code-block-xHKbAJDj.js.map} +1 -1
- package/dist/{combobox-HDftpzxt.js → combobox-DEbdr-3u.js} +2 -2
- package/dist/{combobox-HDftpzxt.js.map → combobox-DEbdr-3u.js.map} +1 -1
- package/dist/{combobox-CHD750do.js → combobox-xv3yJbzl.js} +7 -7
- package/dist/{combobox-CHD750do.js.map → combobox-xv3yJbzl.js.map} +1 -1
- package/dist/{command-D0kWBZfd.js → command-C0xe7u9B.js} +2 -2
- package/dist/{command-D0kWBZfd.js.map → command-C0xe7u9B.js.map} +1 -1
- package/dist/{comments-CvYeglMS.js → comments-DviPLnwy.js} +8 -8
- package/dist/{comments-CvYeglMS.js.map → comments-DviPLnwy.js.map} +1 -1
- package/dist/components/base/cards/smart-card.types.d.ts +2 -0
- package/dist/components/base/inline-edit/index.d.ts +2 -0
- package/dist/components/base/inline-edit/inline-edit.d.ts +81 -0
- package/dist/components/base/inline-edit/inline-edit.recipes.d.ts +6 -0
- package/dist/components/base/structure/structure.recipes.d.ts +6 -0
- package/dist/components/blocks/analytics/index.d.ts +1 -0
- package/dist/components/blocks/analytics/usage-card/index.d.ts +3 -0
- package/dist/components/blocks/analytics/usage-card/types.d.ts +52 -0
- package/dist/components/blocks/analytics/usage-card/usage-card.d.ts +6 -0
- package/dist/components/blocks/analytics/usage-card/usage-card.data.d.ts +19 -0
- package/dist/components/blocks/analytics/usage-card/usage-card.strings.d.ts +22 -0
- package/dist/components/blocks/planning/index.d.ts +3 -0
- package/dist/components/blocks/planning/task-card.d.ts +3 -0
- package/dist/components/blocks/planning/task-card.strings.d.ts +15 -0
- package/dist/components/blocks/planning/task-card.types.d.ts +66 -0
- package/dist/{containers-CPNyNo1_.js → containers-6s-ucRQQ.js} +3 -2
- package/dist/containers-6s-ucRQQ.js.map +1 -0
- package/dist/{data-display-b3d1TfL4.js → data-display-cWIRdeaf.js} +8 -8
- package/dist/{data-display-b3d1TfL4.js.map → data-display-cWIRdeaf.js.map} +1 -1
- package/dist/{date-picker-DI6kPNof.js → date-picker-CA6ogMQB.js} +5 -5
- package/dist/{date-picker-DI6kPNof.js.map → date-picker-CA6ogMQB.js.map} +1 -1
- package/dist/{date-pickers-ByP6Cv2z.js → date-pickers-BPIKLdsD.js} +4 -4
- package/dist/{date-pickers-ByP6Cv2z.js.map → date-pickers-BPIKLdsD.js.map} +1 -1
- package/dist/{display-ByI5tkqy.js → display-CFM5myut.js} +3 -3
- package/dist/{display-ByI5tkqy.js.map → display-CFM5myut.js.map} +1 -1
- package/dist/features/activities.js +4 -4
- package/dist/features/ai-chat.js +4 -4
- package/dist/features/async-preview.js +4 -4
- package/dist/features/combobox.js +1 -1
- package/dist/features/comments.js +1 -1
- package/dist/features/data-view.js +5 -5
- package/dist/features/email-composer.js +11 -11
- package/dist/features/event-calendar.js +2 -2
- package/dist/features/event-calendar.js.map +1 -1
- package/dist/features/filters.js +1 -1
- package/dist/features/global-search.js +6 -6
- package/dist/features/map.js +3 -3
- package/dist/features/media-library.js +8 -8
- package/dist/features/mentions.js +1 -1
- package/dist/features/overlays.js +1 -1
- package/dist/features/products.js +43 -42
- package/dist/features/products.js.map +1 -1
- package/dist/features/questionnaire.js +107 -106
- package/dist/features/questionnaire.js.map +1 -1
- package/dist/features/resource-assignment.js +5 -5
- package/dist/features/resource.js +7 -7
- package/dist/features/rich-text-editor.js +1 -1
- package/dist/features/schema-form.js +11 -11
- package/dist/features/schema-form.js.map +1 -1
- package/dist/features/suggestions.js +2 -2
- package/dist/features/sync.js +2 -2
- package/dist/features/table.js +1 -1
- package/dist/features/theme-tweaker.js +11 -11
- package/dist/feedback-DWUkgEjR.js +233 -0
- package/dist/feedback-DWUkgEjR.js.map +1 -0
- package/dist/{field-affordance-recipes-CHdUtn2Z.js → field-affordance-recipes-IjzPrCTw.js} +2 -2
- package/dist/{field-affordance-recipes-CHdUtn2Z.js.map → field-affordance-recipes-IjzPrCTw.js.map} +1 -1
- package/dist/{filters-qtrcv1hf.js → filters-BhsUtsxW.js} +9 -9
- package/dist/{filters-qtrcv1hf.js.map → filters-BhsUtsxW.js.map} +1 -1
- package/dist/{form-field-C6W-y2hR.js → form-field-Bn7ZH1rA.js} +2 -2
- package/dist/{form-field-C6W-y2hR.js.map → form-field-Bn7ZH1rA.js.map} +1 -1
- package/dist/{form-sizing-39NohSqn.js → form-sizing-BWs70_a2.js} +4 -3
- package/dist/{form-sizing-39NohSqn.js.map → form-sizing-BWs70_a2.js.map} +1 -1
- package/dist/{forms-BF-HSbff.js → forms-B7pzS25o.js} +5 -5
- package/dist/{forms-BF-HSbff.js.map → forms-B7pzS25o.js.map} +1 -1
- package/dist/{forms-numeric-Y15Bg5Nr.js → forms-numeric-BUBxELBv.js} +18 -18
- package/dist/{forms-numeric-Y15Bg5Nr.js.map → forms-numeric-BUBxELBv.js.map} +1 -1
- package/dist/{header-B8ex54cY.js → header-C59QZyxV.js} +6 -6
- package/dist/{header-B8ex54cY.js.map → header-C59QZyxV.js.map} +1 -1
- package/dist/{hooks-D6UBVzf2.js → hooks-CM1Vp9Pe.js} +2 -2
- package/dist/{hooks-D6UBVzf2.js.map → hooks-CM1Vp9Pe.js.map} +1 -1
- package/dist/{input-DMorJiTI.js → input-WwYQZJzG.js} +3 -3
- package/dist/{input-DMorJiTI.js.map → input-WwYQZJzG.js.map} +1 -1
- 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 +9 -0
- package/dist/{media-gallery-Ca4YmvBi.js → media-gallery-DhDRgnVZ.js} +2 -2
- package/dist/{media-gallery-Ca4YmvBi.js.map → media-gallery-DhDRgnVZ.js.map} +1 -1
- package/dist/{mentions-CRio8mTm.js → mentions-B8Ko-fhS.js} +4 -4
- package/dist/{mentions-CRio8mTm.js.map → mentions-B8Ko-fhS.js.map} +1 -1
- package/dist/{message-B5-6LeYl.js → message-COsdEvXT.js} +2 -2
- package/dist/{message-B5-6LeYl.js.map → message-COsdEvXT.js.map} +1 -1
- package/dist/{navigation-DqEITuD2.js → navigation-BUIn2Qxx.js} +2 -2
- package/dist/{navigation-DqEITuD2.js.map → navigation-BUIn2Qxx.js.map} +1 -1
- package/dist/{navigation-BTrEb5u4.js → navigation-DBEu4POU.js} +3 -3
- package/dist/{navigation-BTrEb5u4.js.map → navigation-DBEu4POU.js.map} +1 -1
- package/dist/{navigation-row-recipes-BFpvGPGE.js → navigation-row-recipes-GVh11KiT.js} +2 -2
- package/dist/{navigation-row-recipes-BFpvGPGE.js.map → navigation-row-recipes-GVh11KiT.js.map} +1 -1
- package/dist/{overlays-DBqV0J_V.js → overlays-B11wZka6.js} +4 -4
- package/dist/{overlays-DBqV0J_V.js.map → overlays-B11wZka6.js.map} +1 -1
- package/dist/{page-BMBGjJY8.js → page-BV6ioQg3.js} +5 -5
- package/dist/{page-BMBGjJY8.js.map → page-BV6ioQg3.js.map} +1 -1
- package/dist/{page-header-BH41wCyY.js → page-header-DQRa0jug.js} +2 -2
- package/dist/{page-header-BH41wCyY.js.map → page-header-DQRa0jug.js.map} +1 -1
- package/dist/{popover-TInGXsjg.js → popover-CoLDEg19.js} +2 -2
- package/dist/{popover-TInGXsjg.js.map → popover-CoLDEg19.js.map} +1 -1
- package/dist/{popover-menu-BzqXqE72.js → popover-menu-GLIQTJTx.js} +4 -4
- package/dist/{popover-menu-BzqXqE72.js.map → popover-menu-GLIQTJTx.js.map} +1 -1
- package/dist/progress-BOe8l_FZ.js +168 -0
- package/dist/progress-BOe8l_FZ.js.map +1 -0
- package/dist/{receipt-DYWTQGEc.js → receipt-BM8xsGFy.js} +3 -3
- package/dist/{receipt-DYWTQGEc.js.map → receipt-BM8xsGFy.js.map} +1 -1
- package/dist/{rich-text-editor-BZSJchAF.js → rich-text-editor-CoVrTiSv.js} +2 -2
- package/dist/{rich-text-editor-BZSJchAF.js.map → rich-text-editor-CoVrTiSv.js.map} +1 -1
- package/dist/services/actions.js +1 -1
- package/dist/{settings-D9f_wdIC.js → settings-BnCyyPOJ.js} +3 -3
- package/dist/{settings-D9f_wdIC.js.map → settings-BnCyyPOJ.js.map} +1 -1
- package/dist/{sheet-vOUloJ4O.js → sheet-B-q914Ad.js} +2 -2
- package/dist/{sheet-vOUloJ4O.js.map → sheet-B-q914Ad.js.map} +1 -1
- package/dist/{sidebar-C3UKkbC5.js → sidebar-C_2p3Tfj.js} +6 -6
- package/dist/{sidebar-C3UKkbC5.js.map → sidebar-C_2p3Tfj.js.map} +1 -1
- package/dist/{sidebar-CNBKFDRW.js → sidebar-DPR7fmqN.js} +4 -4
- package/dist/{sidebar-CNBKFDRW.js.map → sidebar-DPR7fmqN.js.map} +1 -1
- package/dist/{skeleton-BvRhK8y-.js → skeleton-CmT1ppqb.js} +2 -2
- package/dist/{skeleton-BvRhK8y-.js.map → skeleton-CmT1ppqb.js.map} +1 -1
- package/dist/{smart-card-B5FcKODh.js → smart-card-CYLn46e6.js} +119 -118
- package/dist/smart-card-CYLn46e6.js.map +1 -0
- package/dist/{spinner-JtlFJ7Nc.js → spinner-BY9HbUEh.js} +2 -2
- package/dist/{spinner-JtlFJ7Nc.js.map → spinner-BY9HbUEh.js.map} +1 -1
- package/dist/{structure-BvW4vG4H.js → structure-MvKVq-oL.js} +13 -13
- package/dist/{structure-BvW4vG4H.js.map → structure-MvKVq-oL.js.map} +1 -1
- package/dist/{structure.recipes-DjqnBpwz.js → structure.recipes-Bqhf9oIh.js} +2 -2
- package/dist/structure.recipes-Bqhf9oIh.js.map +1 -0
- package/dist/style.css +1 -1
- package/dist/{table-ghtAQ-JJ.js → table-BS39xnlq.js} +6 -6
- package/dist/{table-ghtAQ-JJ.js.map → table-BS39xnlq.js.map} +1 -1
- package/dist/{tabs-DY09eoZg.js → tabs-B5cNMWiP.js} +2 -2
- package/dist/{tabs-DY09eoZg.js.map → tabs-B5cNMWiP.js.map} +1 -1
- package/dist/{text-inputs-BhOcedTo.js → text-inputs-Dh9XGyiS.js} +4 -4
- package/dist/{text-inputs-BhOcedTo.js.map → text-inputs-Dh9XGyiS.js.map} +1 -1
- package/dist/{timelines-CnZ2S_Gr.js → timelines-B9ICkQcV.js} +2 -2
- package/dist/{timelines-CnZ2S_Gr.js.map → timelines-B9ICkQcV.js.map} +1 -1
- package/dist/{tree-COD9BGdU.js → tree-BdWSaoFT.js} +2 -2
- package/dist/{tree-COD9BGdU.js.map → tree-BdWSaoFT.js.map} +1 -1
- package/dist/{upload-DIzw1dx1.js → upload-D8Za5x_c.js} +4 -4
- package/dist/{upload-DIzw1dx1.js.map → upload-D8Za5x_c.js.map} +1 -1
- package/dist/{upload-queue-xRJ3qDmd.js → upload-queue-hIIYBLS7.js} +3 -3
- package/dist/{upload-queue-xRJ3qDmd.js.map → upload-queue-hIIYBLS7.js.map} +1 -1
- package/dist/usage-card-DnmnJ58D.js +458 -0
- package/dist/usage-card-DnmnJ58D.js.map +1 -0
- package/dist/{value-inputs-Co1fu-xv.js → value-inputs-DX2dbxjj.js} +7 -7
- package/dist/{value-inputs-Co1fu-xv.js.map → value-inputs-DX2dbxjj.js.map} +1 -1
- package/dist/{workspace-Cbqz4FzN.js → workspace-C1PZmk8L.js} +4 -4
- package/dist/{workspace-Cbqz4FzN.js.map → workspace-C1PZmk8L.js.map} +1 -1
- package/docs/consumer-skill/SKILL.md +120 -17
- package/docs/consumer-skill/examples/detail.tsx +7 -8
- package/docs/consumer-skill/examples/manifest.json +14 -0
- package/docs/consumer-skill/examples/planning-usage-edit.tsx +29 -0
- package/docs/consumer-skill/examples/scoped-directory.tsx +77 -0
- package/docs/consumer-skill/references/composition.md +103 -0
- package/docs/consumer-skill/references/design-contract.md +4 -3
- package/docs/consumer-skill/references/discovery.md +17 -0
- package/docs/consumer-skill/references/installation.md +20 -3
- package/docs/consumer-skill/references/integration.md +12 -0
- package/docs/consumer-skill/references/public-api.json +452 -229
- package/docs/consumer-skill/references/review.md +74 -0
- package/docs/consumer-skill/references/tokens.json +1 -1
- package/docs/consumer-skill/references/workflows.md +97 -1
- package/docs/consumer-skill/scripts/check-composition.mjs +31 -0
- package/docs/consumer-skill/scripts/composition-policy.mjs +155 -0
- package/docs/consumer-skill/scripts/discovery.mjs +6 -1
- package/docs/consumer-skill/scripts/surface-policy.mjs +22 -0
- package/package.json +24 -3
- package/dist/affordance-geometry.generated-DXl-Zb3Z.js.map +0 -1
- package/dist/avatar-CsnWaYmt.js.map +0 -1
- package/dist/choice-inputs-CavA-SGV.js.map +0 -1
- package/dist/containers-CPNyNo1_.js.map +0 -1
- package/dist/feedback-a9j9J-9A.js +0 -391
- package/dist/feedback-a9j9J-9A.js.map +0 -1
- package/dist/smart-card-B5FcKODh.js.map +0 -1
- package/dist/structure.recipes-DjqnBpwz.js.map +0 -1
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { s as e } from "../ui-provider-CftIB6TY.js";
|
|
3
|
+
import { useStrings as t } from "../lib/strings.js";
|
|
4
|
+
import { t as n } from "../utils-C2EKeIw3.js";
|
|
5
|
+
import { t as r } from "../affordance-geometry.generated-D8Jcfb0G.js";
|
|
6
|
+
import { n as i } from "../buttons-Co6GavvM.js";
|
|
7
|
+
import { a } from "../typography-Cv8MT-82.js";
|
|
8
|
+
import { r as ee, t as te } from "../structure-MvKVq-oL.js";
|
|
9
|
+
import { t as ne } from "../editable-text-recipe-Bkm6wKHp.js";
|
|
10
|
+
import { c as re, d as ie, o as ae, p as oe } from "../form-sizing-BWs70_a2.js";
|
|
11
|
+
import { t as se } from "../input-WwYQZJzG.js";
|
|
12
|
+
import { d as ce } from "../text-inputs-Dh9XGyiS.js";
|
|
13
|
+
import { t as le } from "../form-field-Bn7ZH1rA.js";
|
|
14
|
+
import * as o from "react";
|
|
15
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
16
|
+
import { CheckIcon as ue, LoaderCircle as l, PencilIcon as de, XIcon as fe } from "lucide-react";
|
|
17
|
+
//#region src/components/base/inline-edit/inline-edit.recipes.ts
|
|
18
|
+
var u = {
|
|
19
|
+
frame: "transition-[grid-template-columns,column-gap] duration-180 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none",
|
|
20
|
+
closedColumns: "grid-cols-[minmax(0,1fr)_0px]",
|
|
21
|
+
actionsTrack: "min-w-0 flex items-center justify-end overflow-hidden focus-within:overflow-visible transition-opacity duration-180 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"
|
|
22
|
+
}, d = {
|
|
23
|
+
edit: "Edit value",
|
|
24
|
+
save: "Save changes",
|
|
25
|
+
cancel: "Cancel editing",
|
|
26
|
+
saving: "Saving changes",
|
|
27
|
+
required: "Enter a value.",
|
|
28
|
+
saveError: "Unable to save. Try again.",
|
|
29
|
+
empty: "Add a value"
|
|
30
|
+
}, f = o.forwardRef(function({ value: f, defaultValue: pe = "", onValueChange: me, editing: p, defaultEditing: he = !1, onEditingChange: ge, multiline: m = !1, label: h, description: g, placeholder: _, editLabel: v, renderValue: _e, disabled: y = !1, readOnly: b = !1, required: x = !1, validate: ve, onSave: ye, name: S, form: be, autoComplete: xe, maxLength: Se, rows: Ce = 3, strings: we, size: Te, invalid: C = !1, loading: w = !1, clearable: Ee, onClear: De, showCharacterCount: Oe, inputProps: ke, textareaProps: Ae, id: je, className: Me, ...T }, Ne) {
|
|
31
|
+
let E = o.useId(), D = je ?? `inline-edit-${E}`, O = `${D}-supporting`, k = t(d, we), { defaultScale: Pe } = e(), A = oe(Te, Pe), [Fe, j] = o.useState(pe), M = f ?? Fe, [Ie, Le] = o.useState(he), N = (p ?? Ie) && !b && !y, [P, F] = o.useState(M), [I, L] = o.useState(), [R, z] = o.useState(!1), B = o.useRef(null), V = o.useRef(null), H = o.useRef(null), U = o.useRef(0), W = o.useRef({
|
|
32
|
+
value: M,
|
|
33
|
+
editing: N
|
|
34
|
+
});
|
|
35
|
+
W.current = {
|
|
36
|
+
value: M,
|
|
37
|
+
editing: N
|
|
38
|
+
};
|
|
39
|
+
let G = o.useRef({
|
|
40
|
+
value: M,
|
|
41
|
+
editing: !1
|
|
42
|
+
}), K = o.useRef(!1);
|
|
43
|
+
function q() {
|
|
44
|
+
U.current += 1, H.current?.abort(), H.current = null;
|
|
45
|
+
}
|
|
46
|
+
o.useLayoutEffect(() => {
|
|
47
|
+
let e = N && !G.current.editing, t = M !== G.current.value;
|
|
48
|
+
(!N || e || t) && (q(), F(M), L(void 0), z(!1)), e && B.current?.focus(), !N && K.current && (V.current?.focus(), K.current = !1), G.current = {
|
|
49
|
+
value: M,
|
|
50
|
+
editing: N
|
|
51
|
+
};
|
|
52
|
+
}, [M, N]), o.useEffect(() => () => {
|
|
53
|
+
q();
|
|
54
|
+
}, []);
|
|
55
|
+
function J(e) {
|
|
56
|
+
p === void 0 && Le(e), ge?.(e);
|
|
57
|
+
}
|
|
58
|
+
function Y() {
|
|
59
|
+
q(), z(!1), F(M), L(void 0), K.current = !0, J(!1);
|
|
60
|
+
}
|
|
61
|
+
async function X() {
|
|
62
|
+
if (H.current || !N || w) return;
|
|
63
|
+
if (P === M) {
|
|
64
|
+
Y();
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
let e = P, t = new AbortController(), n = ++U.current, r = M, i = () => !t.signal.aborted && U.current === n && W.current.editing && W.current.value === r;
|
|
68
|
+
try {
|
|
69
|
+
let n = (x && !e.trim() ? k.required : ve?.(e)) || (B.current && !B.current.checkValidity() ? B.current.validationMessage : void 0);
|
|
70
|
+
if (n) {
|
|
71
|
+
L(n), B.current?.focus();
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (L(void 0), H.current = t, z(!0), B.current?.focus(), await ye?.(e, { signal: t.signal }), !i()) return;
|
|
75
|
+
H.current = null, z(!1), f === void 0 && j(e), me?.(e), K.current = !0, J(!1);
|
|
76
|
+
} catch (e) {
|
|
77
|
+
if (!i()) return;
|
|
78
|
+
H.current = null, z(!1), L(e instanceof Error && e.message ? e.message : k.saveError), B.current?.focus();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
function Re(e) {
|
|
82
|
+
!N || e.defaultPrevented || e.nativeEvent.isComposing || (e.key === "Escape" ? (e.preventDefault(), e.stopPropagation(), Y()) : e.key === "Enter" && e.target === B.current && (!m || e.ctrlKey || e.metaKey) && (e.preventDefault(), X()));
|
|
83
|
+
}
|
|
84
|
+
let ze = I || g, Be = T["aria-label"] ?? (typeof h == "string" ? h : h ? void 0 : v ?? k.edit), Z = _e?.(M) ?? /* @__PURE__ */ s(a, {
|
|
85
|
+
tag: "span",
|
|
86
|
+
size: "inherit",
|
|
87
|
+
type: M ? "main" : "secondary",
|
|
88
|
+
className: n("min-w-0", m ? "whitespace-pre-wrap break-words" : "truncate"),
|
|
89
|
+
children: M || _ || k.empty
|
|
90
|
+
}), Q = n(ie(A), ne[A], "!h-auto", m ? ["items-start px-control py-control-y-offset", A === "sm" ? "min-h-textarea-sm" : "min-h-textarea"] : re[A]), $ = {
|
|
91
|
+
id: D,
|
|
92
|
+
value: P,
|
|
93
|
+
onChange: (e) => {
|
|
94
|
+
R || (F(e.target.value), L(void 0));
|
|
95
|
+
},
|
|
96
|
+
form: `inline-edit-draft-${E}`,
|
|
97
|
+
placeholder: _,
|
|
98
|
+
autoComplete: xe,
|
|
99
|
+
maxLength: Se,
|
|
100
|
+
size: A,
|
|
101
|
+
loading: w,
|
|
102
|
+
clearable: Ee && !R,
|
|
103
|
+
onClear: De,
|
|
104
|
+
showCharacterCount: Oe,
|
|
105
|
+
"aria-required": x || void 0,
|
|
106
|
+
readOnly: R,
|
|
107
|
+
invalid: C || !!I,
|
|
108
|
+
"aria-label": Be,
|
|
109
|
+
"aria-labelledby": T["aria-labelledby"],
|
|
110
|
+
"aria-describedby": ze ? O : void 0,
|
|
111
|
+
"aria-errormessage": I ? O : void 0
|
|
112
|
+
};
|
|
113
|
+
return /* @__PURE__ */ c(le, {
|
|
114
|
+
...T,
|
|
115
|
+
ref: Ne,
|
|
116
|
+
id: `${D}-root`,
|
|
117
|
+
label: h,
|
|
118
|
+
htmlFor: D,
|
|
119
|
+
required: x,
|
|
120
|
+
helperText: g,
|
|
121
|
+
error: N ? I : void 0,
|
|
122
|
+
supportingTextId: O,
|
|
123
|
+
className: n("inline-edit--component min-w-0", Me),
|
|
124
|
+
"data-editing": N || void 0,
|
|
125
|
+
"data-saving": R || void 0,
|
|
126
|
+
"aria-busy": w || R || void 0,
|
|
127
|
+
children: [S && /* @__PURE__ */ s("input", {
|
|
128
|
+
type: "hidden",
|
|
129
|
+
name: S,
|
|
130
|
+
form: be,
|
|
131
|
+
value: M,
|
|
132
|
+
disabled: y
|
|
133
|
+
}), b ? /* @__PURE__ */ s("div", {
|
|
134
|
+
id: D,
|
|
135
|
+
className: n("inline-edit--value min-w-0", Q),
|
|
136
|
+
"aria-invalid": C || void 0,
|
|
137
|
+
children: Z
|
|
138
|
+
}) : /* @__PURE__ */ c(ee, {
|
|
139
|
+
columns: 1,
|
|
140
|
+
gap: N ? "lg" : "none",
|
|
141
|
+
align: "center",
|
|
142
|
+
className: n("inline-edit--frame", N && "inline-edit--editor", u.frame, N ? r.inlineEditColumns[m ? "multiline" : "single"] : u.closedColumns),
|
|
143
|
+
onKeyDown: Re,
|
|
144
|
+
"aria-busy": R || void 0,
|
|
145
|
+
children: [
|
|
146
|
+
/* @__PURE__ */ s("div", {
|
|
147
|
+
className: "inline-edit--field min-w-0",
|
|
148
|
+
children: N ? m ? /* @__PURE__ */ s(ce, {
|
|
149
|
+
...Ae,
|
|
150
|
+
...$,
|
|
151
|
+
rows: Ce,
|
|
152
|
+
ref: B
|
|
153
|
+
}) : /* @__PURE__ */ s(se, {
|
|
154
|
+
...ke,
|
|
155
|
+
...$,
|
|
156
|
+
ref: B
|
|
157
|
+
}) : /* @__PURE__ */ c(i, {
|
|
158
|
+
id: D,
|
|
159
|
+
ref: V,
|
|
160
|
+
type: "button",
|
|
161
|
+
tone: "neutral",
|
|
162
|
+
buttonStyle: "ghost",
|
|
163
|
+
fullWidth: !0,
|
|
164
|
+
disabled: y || w,
|
|
165
|
+
"aria-invalid": C || void 0,
|
|
166
|
+
"aria-label": v ?? (typeof h == "string" ? `${k.edit}: ${h}` : k.edit),
|
|
167
|
+
"aria-describedby": g ? O : void 0,
|
|
168
|
+
onClick: () => J(!0),
|
|
169
|
+
className: n("inline-edit--trigger group justify-between whitespace-normal text-start", Q),
|
|
170
|
+
children: [Z, w ? /* @__PURE__ */ s(l, {
|
|
171
|
+
"aria-hidden": "true",
|
|
172
|
+
className: n(ae[A], "self-center animate-spin motion-reduce:animate-none")
|
|
173
|
+
}) : /* @__PURE__ */ s(de, {
|
|
174
|
+
"aria-hidden": "true",
|
|
175
|
+
className: "size-icon-sm self-center shrink-0 text-muted-foreground opacity-0 transition-opacity duration-150 motion-reduce:transition-none pointer-coarse:opacity-100 [@media(hover:none)]:opacity-100 group-hover:opacity-100 group-focus-visible:opacity-100"
|
|
176
|
+
})]
|
|
177
|
+
})
|
|
178
|
+
}),
|
|
179
|
+
/* @__PURE__ */ s("div", {
|
|
180
|
+
"aria-hidden": !N || void 0,
|
|
181
|
+
inert: !N || void 0,
|
|
182
|
+
className: n(u.actionsTrack, N ? "opacity-100" : "pointer-events-none opacity-0"),
|
|
183
|
+
children: /* @__PURE__ */ c(te, {
|
|
184
|
+
direction: m ? "vertical" : "horizontal",
|
|
185
|
+
gap: "xs",
|
|
186
|
+
wrap: !1,
|
|
187
|
+
className: "inline-edit--actions shrink-0",
|
|
188
|
+
children: [/* @__PURE__ */ s(i, {
|
|
189
|
+
type: "button",
|
|
190
|
+
size: "sm",
|
|
191
|
+
iconOnly: !0,
|
|
192
|
+
tone: "primary",
|
|
193
|
+
buttonStyle: "solid",
|
|
194
|
+
"aria-label": R ? k.saving : k.save,
|
|
195
|
+
disabled: !N || R || w,
|
|
196
|
+
"aria-busy": R || void 0,
|
|
197
|
+
onClick: () => {
|
|
198
|
+
X();
|
|
199
|
+
},
|
|
200
|
+
children: R ? /* @__PURE__ */ s(l, {
|
|
201
|
+
"aria-hidden": "true",
|
|
202
|
+
className: "size-icon-sm animate-spin motion-reduce:animate-none"
|
|
203
|
+
}) : /* @__PURE__ */ s(ue, {
|
|
204
|
+
"aria-hidden": "true",
|
|
205
|
+
className: "size-icon-sm"
|
|
206
|
+
})
|
|
207
|
+
}), /* @__PURE__ */ s(i, {
|
|
208
|
+
type: "button",
|
|
209
|
+
size: "sm",
|
|
210
|
+
iconOnly: !0,
|
|
211
|
+
tone: "neutral",
|
|
212
|
+
buttonStyle: "ghost",
|
|
213
|
+
"aria-label": k.cancel,
|
|
214
|
+
disabled: !N,
|
|
215
|
+
onClick: Y,
|
|
216
|
+
children: /* @__PURE__ */ s(fe, {
|
|
217
|
+
"aria-hidden": "true",
|
|
218
|
+
className: "size-icon-sm"
|
|
219
|
+
})
|
|
220
|
+
})]
|
|
221
|
+
})
|
|
222
|
+
}),
|
|
223
|
+
R && /* @__PURE__ */ s(a, {
|
|
224
|
+
tag: "span",
|
|
225
|
+
role: "status",
|
|
226
|
+
className: "sr-only",
|
|
227
|
+
children: k.saving
|
|
228
|
+
})
|
|
229
|
+
]
|
|
230
|
+
})]
|
|
231
|
+
});
|
|
232
|
+
});
|
|
233
|
+
//#endregion
|
|
234
|
+
export { f as InlineEdit, d as defaultInlineEditStrings };
|
|
235
|
+
|
|
236
|
+
//# sourceMappingURL=inline-edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline-edit.js","names":["React","useDensityConfig","cn","affordanceGeometry","Button","Grid","Stack","editableTextSizeClasses","formControlMinHeightClasses","formFieldTriggerClasses","formControlIconClasses","resolveFormControlSize","Input","Textarea","FormField","React$1","inlineEditRecipes","defaultInlineEditStrings","InlineEdit","valueProp","editingProp","stringsProp","sizeProp","providedId","rootProps","generatedId","id","supportingId","strings","useStrings","size","defaultScale","localValue","setLocalValue","defaultValue","value","localEditing","setLocalEditing","defaultEditing","editing","readOnly","disabled","draft","setDraft","error","setError","saving","setSaving","editorRef","triggerRef","pending","generation","latest","previous","restoreFocus","invalidate","entering","replaced","requestEditing","next","onEditingChange","dismiss","save","loading","nextValue","controller","version","committedAtStart","current","validationError","required","validate","onSave","onValueChange","cause","onKeyDown","event","multiline","support","description","accessibleName","label","editLabel","display","renderValue","Text","placeholder","displayClasses","editorProps","clearable","invalid","className","name","textareaProps","inputProps","LoaderCircle","PencilIcon","CheckIcon","XIcon"],"sources":["../../src/components/base/inline-edit/inline-edit.recipes.ts","../../src/components/base/inline-edit/inline-edit.tsx"],"sourcesContent":["/** Private field/action layout; geometry remains generated from shared roots. */\nexport const inlineEditRecipes = {\n\tframe: 'transition-[grid-template-columns,column-gap] duration-180 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none',\n\tclosedColumns: 'grid-cols-[minmax(0,1fr)_0px]',\n\tactionsTrack: 'min-w-0 flex items-center justify-end overflow-hidden focus-within:overflow-visible transition-opacity duration-180 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none',\n} as const;\n","import * as React from 'react';\nimport { CheckIcon, LoaderCircle, PencilIcon, XIcon } from 'lucide-react';\nimport { cn } from '../../../lib/utils';\nimport { useStrings, type StringsProp } from '../../../lib/strings';\nimport { affordanceGeometry } from '../../../lib/affordance-geometry.generated';\nimport { editableTextSizeClasses } from '../../../lib/editable-text-recipe';\nimport { useDensityConfig } from '../../../lib/ui-provider';\nimport { formControlIconClasses, formControlMinHeightClasses, formFieldTriggerClasses, resolveFormControlSize } from '../forms/form-sizing';\nimport { Button } from '../buttons';\nimport { FormField } from '../forms/form-field';\nimport { Grid, Stack } from '../structure';\nimport { Input, Textarea, type InputProps, type TextareaProps } from '../text-inputs';\nimport { Text } from '../../typography';\nimport { inlineEditRecipes } from './inline-edit.recipes';\n\nexport interface InlineEditStrings {\n\t/** Accessible name of the edit action when editLabel is absent. */\n\tedit: string;\n\t/** Accessible name of the save action. */\n\tsave: string;\n\t/** Accessible name of the cancel action, including while saving. */\n\tcancel: string;\n\t/** Live announcement and save action name during persistence. */\n\tsaving: string;\n\t/** Validation copy for a required empty value. */\n\trequired: string;\n\t/** Fallback copy for a rejected save without an Error message. */\n\tsaveError: string;\n\t/** Display copy for an empty value when placeholder is absent. */\n\tempty: string;\n}\n\nexport const defaultInlineEditStrings: InlineEditStrings = {\n\tedit: 'Edit value', save: 'Save changes', cancel: 'Cancel editing',\n\tsaving: 'Saving changes', required: 'Enter a value.',\n\tsaveError: 'Unable to save. Try again.', empty: 'Add a value',\n};\n\nexport interface InlineEditSaveContext {\n\t/** Aborted on cancel, unmount, external value replacement, or external dismissal. */\n\tsignal: AbortSignal;\n}\n\ntype SharedControlProps = Pick<InputProps, 'size' | 'invalid' | 'loading' | 'clearable' | 'onClear' | 'showCharacterCount'>;\ntype OwnedEditorProps = keyof SharedControlProps | 'value' | 'defaultValue' | 'onChange' | 'ref' | 'id' | 'name' | 'form' | 'required' | 'disabled' | 'readOnly' | 'placeholder' | 'autoComplete' | 'maxLength' | 'rows' | 'returnValueWithAddons';\n\nexport interface InlineEditProps extends SharedControlProps, Omit<React.ComponentPropsWithoutRef<'div'>, 'children' | 'defaultValue' | 'onChange'> {\n\t/** Native Input attributes, adornments and strings. Draft/state ownership stays with InlineEdit. */\n\tinputProps?: Omit<InputProps, OwnedEditorProps>;\n\t/** Native Textarea attributes, resizing options and strings. Draft/state ownership stays with InlineEdit. */\n\ttextareaProps?: Omit<TextareaProps, OwnedEditorProps>;\n\t/** Committed value. Draft edits remain local until save succeeds. */\n\tvalue?: string;\n\t/** Initial committed value for uncontrolled usage. */\n\tdefaultValue?: string;\n\t/** Called with the new committed value after a successful changed save. */\n\tonValueChange?: (value: string) => void;\n\t/** Controlled editor visibility. */\n\tediting?: boolean;\n\t/** Initial visibility for uncontrolled usage. */\n\tdefaultEditing?: boolean;\n\t/** Requests a visibility change; controlled parents must update editing. */\n\tonEditingChange?: (editing: boolean) => void;\n\t/** Uses Textarea. Plain Enter inserts a newline; Ctrl/Cmd+Enter saves. */\n\tmultiline?: boolean;\n\t/** Field caption above both presentation and editing states. */\n\tlabel?: React.ReactNode;\n\t/** Supporting copy, replaced by a validation or save error when present. */\n\tdescription?: React.ReactNode;\n\t/** Empty display copy and editor placeholder. */\n\tplaceholder?: string;\n\t/** Accessible edit action name, useful when the display is a title. */\n\teditLabel?: string;\n\t/** Custom passive display content. Do not nest interactive elements. */\n\trenderValue?: (value: string) => React.ReactNode;\n\t/** Prevents editing and disables the edit action. */\n\tdisabled?: boolean;\n\t/** Renders passive content with no edit action. */\n\treadOnly?: boolean;\n\t/** Save-time validation for an empty draft; marks the editor aria-required without constraining the parent form. */\n\trequired?: boolean;\n\t/** Return an error message to keep the draft open without calling onSave. */\n\tvalidate?: (value: string) => string | undefined | null;\n\t/** Persist the draft; rejection keeps it open for correction or retry. */\n\tonSave?: (value: string, context: InlineEditSaveContext) => void | Promise<void>;\n\t/** Native form field name. Only the committed value is submitted. */\n\tname?: string;\n\t/** Associates the committed hidden field with a native form. */\n\tform?: string;\n\t/** Native editor autocomplete hint. */\n\tautoComplete?: string;\n\t/** Maximum editor character count. */\n\tmaxLength?: number;\n\t/** Native Textarea row count. */\n\trows?: number;\n\t/** Localized component copy. */\n\tstrings?: StringsProp<InlineEditStrings>;\n}\n\n/** Inline text editing with an isolated draft and explicit, cancellable saves. */\nexport const InlineEdit = React.forwardRef<HTMLDivElement, InlineEditProps>(function InlineEdit({\n\tvalue: valueProp, defaultValue = '', onValueChange,\n\tediting: editingProp, defaultEditing = false, onEditingChange,\n\tmultiline = false, label, description, placeholder, editLabel, renderValue,\n\tdisabled = false, readOnly = false, required = false, validate, onSave,\n\tname, form, autoComplete, maxLength, rows = 3, strings: stringsProp,\n\tsize: sizeProp, invalid = false, loading = false, clearable, onClear, showCharacterCount, inputProps, textareaProps,\n\tid: providedId, className, ...rootProps\n}, ref) {\n\tconst generatedId = React.useId();\n\tconst id = providedId ?? `inline-edit-${generatedId}`;\n\tconst supportingId = `${id}-supporting`;\n\tconst strings = useStrings(defaultInlineEditStrings, stringsProp);\n\tconst { defaultScale } = useDensityConfig();\n\tconst size = resolveFormControlSize(sizeProp, defaultScale);\n\tconst [localValue, setLocalValue] = React.useState(defaultValue);\n\tconst value = valueProp ?? localValue;\n\tconst [localEditing, setLocalEditing] = React.useState(defaultEditing);\n\tconst editing = (editingProp ?? localEditing) && !readOnly && !disabled;\n\tconst [draft, setDraft] = React.useState(value);\n\tconst [error, setError] = React.useState<string>();\n\tconst [saving, setSaving] = React.useState(false);\n\tconst editorRef = React.useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\tconst pending = React.useRef<AbortController | null>(null);\n\tconst generation = React.useRef(0);\n\tconst latest = React.useRef({ value, editing });\n\tlatest.current = { value, editing };\n\tconst previous = React.useRef({ value, editing: false });\n\tconst restoreFocus = React.useRef(false);\n\n\tfunction invalidate() {\n\t\tgeneration.current += 1;\n\t\tpending.current?.abort();\n\t\tpending.current = null;\n\t}\n\n\tReact.useLayoutEffect(() => {\n\t\tconst entering = editing && !previous.current.editing;\n\t\tconst replaced = value !== previous.current.value;\n\t\tif (!editing || entering || replaced) {\n\t\t\tinvalidate();\n\t\t\tsetDraft(value);\n\t\t\tsetError(undefined);\n\t\t\tsetSaving(false);\n\t\t}\n\t\tif (entering) editorRef.current?.focus();\n\t\tif (!editing && restoreFocus.current) {\n\t\t\ttriggerRef.current?.focus();\n\t\t\trestoreFocus.current = false;\n\t\t}\n\t\tprevious.current = { value, editing };\n\t}, [value, editing]);\n\n\tReact.useEffect(() => () => { invalidate(); }, []);\n\n\tfunction requestEditing(next: boolean) {\n\t\tif (editingProp === undefined) setLocalEditing(next);\n\t\tonEditingChange?.(next);\n\t}\n\n\tfunction dismiss() {\n\t\tinvalidate();\n\t\tsetSaving(false);\n\t\tsetDraft(value);\n\t\tsetError(undefined);\n\t\trestoreFocus.current = true;\n\t\trequestEditing(false);\n\t}\n\n\tasync function save() {\n\t\tif (pending.current || !editing || loading) return;\n\t\tif (draft === value) { dismiss(); return; }\n\t\tconst nextValue = draft;\n\t\tconst controller = new AbortController();\n\t\tconst version = ++generation.current;\n\t\tconst committedAtStart = value;\n\t\tconst current = () => !controller.signal.aborted && generation.current === version\n\t\t\t&& latest.current.editing && latest.current.value === committedAtStart;\n\t\ttry {\n\t\t\tconst validationError = (required && !nextValue.trim() ? strings.required : validate?.(nextValue))\n\t\t\t\t|| (editorRef.current && !editorRef.current.checkValidity() ? editorRef.current.validationMessage : undefined);\n\t\t\tif (validationError) {\n\t\t\t\tsetError(validationError);\n\t\t\t\teditorRef.current?.focus();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetError(undefined);\n\t\t\tpending.current = controller;\n\t\t\tsetSaving(true);\n\t\t\t// Keep keyboard cancellation inside the editor when the save action disables.\n\t\t\teditorRef.current?.focus();\n\t\t\tawait onSave?.(nextValue, { signal: controller.signal });\n\t\t\tif (!current()) return;\n\t\t\tpending.current = null;\n\t\t\tsetSaving(false);\n\t\t\tif (valueProp === undefined) setLocalValue(nextValue);\n\t\t\tonValueChange?.(nextValue);\n\t\t\trestoreFocus.current = true;\n\t\t\trequestEditing(false);\n\t\t} catch (cause) {\n\t\t\tif (!current()) return;\n\t\t\tpending.current = null;\n\t\t\tsetSaving(false);\n\t\t\tsetError(cause instanceof Error && cause.message ? cause.message : strings.saveError);\n\t\t\teditorRef.current?.focus();\n\t\t}\n\t}\n\n\tfunction onKeyDown(event: React.KeyboardEvent<HTMLDivElement>) {\n\t\tif (!editing || event.defaultPrevented || event.nativeEvent.isComposing) return;\n\t\tif (event.key === 'Escape') {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tdismiss();\n\t\t} else if (event.key === 'Enter' && event.target === editorRef.current\n\t\t\t&& (!multiline || event.ctrlKey || event.metaKey)) {\n\t\t\tevent.preventDefault();\n\t\t\tvoid save();\n\t\t}\n\t}\n\n\tconst support = error || description;\n\tconst accessibleName = rootProps['aria-label'] ?? (typeof label === 'string' ? label : label ? undefined : editLabel ?? strings.edit);\n\tconst display = renderValue?.(value) ?? <Text tag=\"span\" size=\"inherit\" type={value ? 'main' : 'secondary'} className={cn('min-w-0', multiline ? 'whitespace-pre-wrap break-words' : 'truncate')}>{value || placeholder || strings.empty}</Text>;\n\tconst displayClasses = cn(formFieldTriggerClasses(size), editableTextSizeClasses[size], '!h-auto',\n\t\tmultiline ? ['items-start px-control py-control-y-offset', size === 'sm' ? 'min-h-textarea-sm' : 'min-h-textarea'] : formControlMinHeightClasses[size]);\n\tconst editorProps = {\n\t\tid, value: draft, onChange: (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n\t\t\tif (!saving) { setDraft(event.target.value); setError(undefined); }\n\t\t},\n\t\t// Uncommitted controls must not validate or submit the surrounding native form.\n\t\tform: `inline-edit-draft-${generatedId}`,\n\t\tplaceholder, autoComplete, maxLength, size, loading, clearable: clearable && !saving, onClear, showCharacterCount,\n\t\t'aria-required': required || undefined, readOnly: saving,\n\t\tinvalid: invalid || Boolean(error), 'aria-label': accessibleName, 'aria-labelledby': rootProps['aria-labelledby'],\n\t\t'aria-describedby': support ? supportingId : undefined,\n\t\t'aria-errormessage': error ? supportingId : undefined,\n\t};\n\n\treturn <FormField {...rootProps} ref={ref} id={`${id}-root`} label={label} htmlFor={id}\n\t\trequired={required} helperText={description} error={editing ? error : undefined}\n\t\tsupportingTextId={supportingId} className={cn('inline-edit--component min-w-0', className)}\n\t\tdata-editing={editing || undefined} data-saving={saving || undefined} aria-busy={loading || saving || undefined}>\n\t\t\t{name && <input type=\"hidden\" name={name} form={form} value={value} disabled={disabled} />}\n\t\t\t{readOnly ? <div id={id} className={cn('inline-edit--value min-w-0', displayClasses)} aria-invalid={invalid || undefined}>{display}</div> : <Grid columns={1} gap={editing ? 'lg' : 'none'} align=\"center\"\n\t\t\t\tclassName={cn('inline-edit--frame', editing && 'inline-edit--editor', inlineEditRecipes.frame,\n\t\t\t\t\tediting ? affordanceGeometry.inlineEditColumns[multiline ? 'multiline' : 'single'] : inlineEditRecipes.closedColumns)}\n\t\t\t\tonKeyDown={onKeyDown} aria-busy={saving || undefined}>\n\t\t\t\t<div className=\"inline-edit--field min-w-0\">\n\t\t\t\t\t{editing ? (multiline ? <Textarea {...textareaProps} {...editorProps} rows={rows} ref={editorRef as React.Ref<HTMLTextAreaElement>} />\n\t\t\t\t\t\t: <Input {...inputProps} {...editorProps} ref={editorRef as React.Ref<HTMLInputElement>} />)\n\t\t\t\t\t\t: <Button id={id} ref={triggerRef} type=\"button\" tone=\"neutral\" buttonStyle=\"ghost\" fullWidth\n\t\t\t\t\t\t\tdisabled={disabled || loading} aria-invalid={invalid || undefined} aria-label={editLabel ?? (typeof label === 'string' ? `${strings.edit}: ${label}` : strings.edit)} aria-describedby={description ? supportingId : undefined}\n\t\t\t\t\t\t\tonClick={() => requestEditing(true)}\n\t\t\t\t\t\t\tclassName={cn('inline-edit--trigger group justify-between whitespace-normal text-start', displayClasses)}>\n\t\t\t\t\t\t\t{display}\n\t\t\t\t\t\t\t{loading ? <LoaderCircle aria-hidden=\"true\" className={cn(formControlIconClasses[size], 'self-center animate-spin motion-reduce:animate-none')} /> : <PencilIcon aria-hidden=\"true\" className=\"size-icon-sm self-center shrink-0 text-muted-foreground opacity-0 transition-opacity duration-150 motion-reduce:transition-none pointer-coarse:opacity-100 [@media(hover:none)]:opacity-100 group-hover:opacity-100 group-focus-visible:opacity-100\" />}\n\t\t\t\t\t\t</Button>}\n\t\t\t\t</div>\n\t\t\t\t<div aria-hidden={!editing || undefined} inert={!editing || undefined}\n\t\t\t\t\tclassName={cn(inlineEditRecipes.actionsTrack, editing ? 'opacity-100' : 'pointer-events-none opacity-0')}>\n\t\t\t\t<Stack direction={multiline ? 'vertical' : 'horizontal'} gap=\"xs\" wrap={false} className=\"inline-edit--actions shrink-0\">\n\t\t\t\t\t<Button type=\"button\" size=\"sm\" iconOnly tone=\"primary\" buttonStyle=\"solid\"\n\t\t\t\t\t\taria-label={saving ? strings.saving : strings.save} disabled={!editing || saving || loading} aria-busy={saving || undefined} onClick={() => { void save(); }}>\n\t\t\t\t\t\t{saving ? <LoaderCircle aria-hidden=\"true\" className=\"size-icon-sm animate-spin motion-reduce:animate-none\" /> : <CheckIcon aria-hidden=\"true\" className=\"size-icon-sm\" />}\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button type=\"button\" size=\"sm\" iconOnly tone=\"neutral\" buttonStyle=\"ghost\"\n\t\t\t\t\t\taria-label={strings.cancel} disabled={!editing} onClick={dismiss}><XIcon aria-hidden=\"true\" className=\"size-icon-sm\" /></Button>\n\t\t\t\t</Stack>\n\t\t\t\t</div>\n\t\t\t\t{saving && <Text tag=\"span\" role=\"status\" className=\"sr-only\">{strings.saving}</Text>}\n\t\t\t</Grid>}\n\t</FormField>;\n});\n"],"mappings":"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"}
|
package/dist/base/navigation.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { a as e, c as t, d as n, f as r, g as i, h as a, i as o, l as s, m as c, n as l, o as u, p as d, r as f, s as p, t as m, u as h } from "../dropdown-menu-BlnyHr-9.js";
|
|
3
3
|
import { n as g, t as _ } from "../breadcrumbs-DdQ_I5ra.js";
|
|
4
|
-
import { a as v, i as y, n as b, r as x, t as S } from "../navigation-
|
|
5
|
-
import { i as C, n as w, o as T, r as E, t as D } from "../tabs-
|
|
6
|
-
import { t as O } from "../page-header-
|
|
4
|
+
import { a as v, i as y, n as b, r as x, t as S } from "../navigation-DBEu4POU.js";
|
|
5
|
+
import { i as C, n as w, o as T, r as E, t as D } from "../tabs-B5cNMWiP.js";
|
|
6
|
+
import { t as O } from "../page-header-DQRa0jug.js";
|
|
7
7
|
import { a as k, c as A, i as j, n as M, o as N, r as P, s as F, t as I } from "../pagination-C29vvt3I.js";
|
|
8
8
|
export { _ as Breadcrumbs, m as DropdownMenu, l as DropdownMenuCheckboxItem, f as DropdownMenuContent, o as DropdownMenuGroup, e as DropdownMenuItem, u as DropdownMenuLabel, p as DropdownMenuLinkItem, t as DropdownMenuPortal, s as DropdownMenuRadioGroup, h as DropdownMenuRadioItem, n as DropdownMenuSeparator, r as DropdownMenuShortcut, d as DropdownMenuSub, c as DropdownMenuSubContent, a as DropdownMenuSubTrigger, i as DropdownMenuTrigger, v as LanguageSwitcher, x as NavigationTabs, S as OverflowTabBar, O as PageHeading, I as PaginationContent, M as PaginationEllipsis, P as PaginationItem, j as PaginationLink, k as PaginationNext, N as PaginationPrevious, F as PaginationPrimitive, D as Tabs, w as TabsContent, E as TabsList, C as TabsTrigger, g as defaultBreadcrumbsStrings, y as defaultNavigationTabsStrings, b as defaultOverflowTabBarStrings, A as defaultPaginationStrings, T as defaultTabsScrollStrings };
|
package/dist/base/popover.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../popover-
|
|
2
|
+
import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../popover-CoLDEg19.js";
|
|
3
3
|
export { i as Popover, o as PopoverAnchor, s as PopoverContent, r as PopoverDescription, a as PopoverFooter, n as PopoverHeader, e as PopoverTitle, t as PopoverTrigger };
|
package/dist/base/repeaters.js
CHANGED
|
@@ -4,10 +4,10 @@ import { useStrings as t } from "../lib/strings.js";
|
|
|
4
4
|
import { t as n } from "../utils-C2EKeIw3.js";
|
|
5
5
|
import { n as r } from "../buttons-Co6GavvM.js";
|
|
6
6
|
import { a as i, n as a } from "../typography-Cv8MT-82.js";
|
|
7
|
-
import { t as o } from "../structure-
|
|
8
|
-
import { t as s } from "../input-
|
|
9
|
-
import { d as c } from "../text-inputs-
|
|
10
|
-
import { t as l } from "../form-field-
|
|
7
|
+
import { t as o } from "../structure-MvKVq-oL.js";
|
|
8
|
+
import { t as s } from "../input-WwYQZJzG.js";
|
|
9
|
+
import { d as c } from "../text-inputs-Dh9XGyiS.js";
|
|
10
|
+
import { t as l } from "../form-field-Bn7ZH1rA.js";
|
|
11
11
|
import { forwardRef as u, memo as d, useCallback as f, useId as p, useMemo as m, useReducer as h, useRef as g, useState as _ } from "react";
|
|
12
12
|
import { jsx as v, jsxs as y } from "react/jsx-runtime";
|
|
13
13
|
import { GripVertical as b, Plus as x, Trash2 as S, X as C } from "lucide-react";
|
package/dist/base/sheet.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "../sheet-
|
|
2
|
+
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "../sheet-B-q914Ad.js";
|
|
3
3
|
export { c as Sheet, i as SheetBody, o as SheetClose, n as SheetContent, e as SheetDescription, a as SheetFooter, s as SheetHeader, t as SheetTitle, r as SheetTrigger };
|
package/dist/base/sidebar.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { C as e, D as t, S as n, _ as r, a as i, b as a, c as o, d as s, f as c, g as l, h as u, i as d, l as f, m as p, n as m, o as h, p as g, r as _, s as v, t as y, u as b, v as x, w as S, x as C, y as w } from "../sidebar-
|
|
2
|
+
import { C as e, D as t, S as n, _ as r, a as i, b as a, c as o, d as s, f as c, g as l, h as u, i as d, l as f, m as p, n as m, o as h, p as g, r as _, s as v, t as y, u as b, v as x, w as S, x as C, y as w } from "../sidebar-DPR7fmqN.js";
|
|
3
3
|
export { y as Sidebar, m as SidebarContent, _ as SidebarFooter, d as SidebarGroup, i as SidebarGroupAction, h as SidebarGroupContent, v as SidebarGroupLabel, o as SidebarHeader, f as SidebarInput, b as SidebarInset, s as SidebarMenu, c as SidebarMenuAction, g as SidebarMenuBadge, p as SidebarMenuButton, u as SidebarMenuItem, l as SidebarMenuSkeleton, r as SidebarMenuSub, x as SidebarMenuSubButton, w as SidebarMenuSubItem, a as SidebarProvider, C as SidebarRail, n as SidebarSeparator, e as SidebarTrigger, S as defaultSidebarStrings, t as useSidebar };
|
|
@@ -3,10 +3,10 @@ import { useStrings as e } from "../lib/strings.js";
|
|
|
3
3
|
import { t } from "../utils-C2EKeIw3.js";
|
|
4
4
|
import { n } from "../buttons-Co6GavvM.js";
|
|
5
5
|
import { a as r } from "../typography-Cv8MT-82.js";
|
|
6
|
-
import { t as i } from "../structure-
|
|
6
|
+
import { t as i } from "../structure-MvKVq-oL.js";
|
|
7
7
|
import { t as a } from "../field-state-recipes-CBTRt9Bt.js";
|
|
8
|
-
import { t as o } from "../input-
|
|
9
|
-
import { t as s } from "../form-field-
|
|
8
|
+
import { t as o } from "../input-WwYQZJzG.js";
|
|
9
|
+
import { t as s } from "../form-field-Bn7ZH1rA.js";
|
|
10
10
|
import { forwardRef as c, useEffect as l, useId as ee, useImperativeHandle as te, useMemo as ne, useRef as u, useState as d } from "react";
|
|
11
11
|
import { jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
12
12
|
//#region src/components/base/signature-pad/signature-pad.types.ts
|
package/dist/base/skeleton.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { a as e, i as t, n, r, t as i } from "../skeleton-
|
|
2
|
+
import { a as e, i as t, n, r, t as i } from "../skeleton-CmT1ppqb.js";
|
|
3
3
|
export { i as ContentSkeleton, n as PageSkeleton, r as Skeleton, t as TableSkeleton, e as TwoColumnPageSkeleton };
|
package/dist/base/spinner.js
CHANGED
package/dist/base/structure.js
CHANGED
package/dist/base/text-inputs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { n as e, t } from "../input-
|
|
3
|
-
import { a as n, c as r, d as i, i as a, l as o, n as s, o as c, r as l, s as u, t as d, u as f } from "../text-inputs-
|
|
2
|
+
import { n as e, t } from "../input-WwYQZJzG.js";
|
|
3
|
+
import { a as n, c as r, d as i, i as a, l as o, n as s, o as c, r as l, s as u, t as d, u as f } from "../text-inputs-Dh9XGyiS.js";
|
|
4
4
|
export { t as Input, n as InputGroup, c as InputGroupAddon, u as InputGroupButton, r as InputGroupInput, o as InputGroupText, f as InputGroupTextarea, l as PasswordInput, d as SlugField, i as Textarea, e as defaultInputStrings, a as defaultPasswordInputStrings, s as slugifyValue };
|
package/dist/base/tree.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { i as e, n as t, r as n, t as r } from "../upload-queue-
|
|
2
|
+
import { i as e, n as t, r as n, t as r } from "../upload-queue-hIIYBLS7.js";
|
|
3
3
|
export { n as UploadProgressList, r as UploadTray, e as defaultUploadProgressListStrings, t as defaultUploadTrayStrings };
|
package/dist/base/upload.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { n as e, t } from "../media-gallery-
|
|
3
|
-
import { a as n, i as r, n as i, o as a, r as o, t as s } from "../upload-queue-
|
|
4
|
-
import { a as c, i as l, n as u, o as d, r as f, t as p } from "../upload-
|
|
2
|
+
import { n as e, t } from "../media-gallery-DhDRgnVZ.js";
|
|
3
|
+
import { a as n, i as r, n as i, o as a, r as o, t as s } from "../upload-queue-hIIYBLS7.js";
|
|
4
|
+
import { a as c, i as l, n as u, o as d, r as f, t as p } from "../upload-D8Za5x_c.js";
|
|
5
5
|
export { p as AvatarUpload, n as Dropzone, c as FileUpload, f as ImageUpload, t as MediaGallery, o as UploadProgressList, s as UploadTray, u as defaultAvatarUploadStrings, a as defaultDropzoneStrings, d as defaultFileUploadStrings, l as defaultImageUploadStrings, e as defaultMediaGalleryStrings, r as defaultUploadProgressListStrings, i as defaultUploadTrayStrings };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c, u as l } from "../value-inputs-
|
|
2
|
+
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c, u as l } from "../value-inputs-DX2dbxjj.js";
|
|
3
3
|
export { a as COUNTRY_PREFIX_MAP, n as ColorInput, s as DEFAULT_COUNTRY_PREFIXES, c as DateTimeInput, t as PhoneInput, i as SliderField, l as TagsInput, e as defaultColorInputStrings, r as defaultPhoneInputStrings, o as defaultSliderStrings };
|
package/dist/blocks/admin.js
CHANGED
|
@@ -3,18 +3,18 @@ import { useStrings as e } from "../lib/strings.js";
|
|
|
3
3
|
import { t } from "../utils-C2EKeIw3.js";
|
|
4
4
|
import { n } from "../buttons-Co6GavvM.js";
|
|
5
5
|
import { a as r, r as i } from "../typography-Cv8MT-82.js";
|
|
6
|
-
import { r as a, t as o } from "../structure-
|
|
7
|
-
import { _ as s, f as c, m as l, p as u } from "../smart-card-
|
|
6
|
+
import { r as a, t as o } from "../structure-MvKVq-oL.js";
|
|
7
|
+
import { _ as s, f as c, m as l, p as u } from "../smart-card-CYLn46e6.js";
|
|
8
8
|
import { n as d } from "../action-menu-Cx3SdfbN.js";
|
|
9
9
|
import { m as f } from "../primitives-DKPOGVpj.js";
|
|
10
10
|
import { t as p } from "../icon-badge-Dv0RYQwj.js";
|
|
11
11
|
import { t as m } from "../badge-BZXZT9wd.js";
|
|
12
|
-
import { t as h } from "../input-
|
|
12
|
+
import { t as h } from "../input-WwYQZJzG.js";
|
|
13
13
|
import { t as g } from "../copyable-B7SBXJMr.js";
|
|
14
|
-
import { n as _ } from "../display-
|
|
14
|
+
import { n as _ } from "../display-CFM5myut.js";
|
|
15
15
|
import { n as v, r as y, t as b } from "../collapsible-DsnktFNv.js";
|
|
16
|
-
import { t as x } from "../form-field-
|
|
17
|
-
import {
|
|
16
|
+
import { t as x } from "../form-field-Bn7ZH1rA.js";
|
|
17
|
+
import { t as S } from "../checkbox-BavDRjF7.js";
|
|
18
18
|
import { c as C, n as w, r as T, t as E } from "../item-pJ0GsOiJ.js";
|
|
19
19
|
import { forwardRef as D, useCallback as O, useMemo as ee, useState as k } from "react";
|
|
20
20
|
import { jsx as A, jsxs as j } from "react/jsx-runtime";
|
package/dist/blocks/ai.js
CHANGED
|
@@ -3,18 +3,18 @@ import { mergeStrings as e, useStrings as t } from "../lib/strings.js";
|
|
|
3
3
|
import { t as n } from "../utils-C2EKeIw3.js";
|
|
4
4
|
import { n as r } from "../buttons-Co6GavvM.js";
|
|
5
5
|
import { a as i, r as a, t as o } from "../typography-Cv8MT-82.js";
|
|
6
|
-
import { i as s, t as c } from "../structure-
|
|
7
|
-
import {
|
|
6
|
+
import { i as s, t as c } from "../structure-MvKVq-oL.js";
|
|
7
|
+
import { t as l } from "../progress-BOe8l_FZ.js";
|
|
8
8
|
import { g as u, m as d } from "../primitives-DKPOGVpj.js";
|
|
9
9
|
import { n as f, t as p } from "../number-BNT_BIzJ.js";
|
|
10
10
|
import { t as m } from "../icon-badge-Dv0RYQwj.js";
|
|
11
11
|
import { t as h } from "../badge-BZXZT9wd.js";
|
|
12
12
|
import { t as g } from "../separator-Gk_WXH-l.js";
|
|
13
|
-
import { d as _ } from "../text-inputs-
|
|
13
|
+
import { d as _ } from "../text-inputs-Dh9XGyiS.js";
|
|
14
14
|
import { a as v, c as y, i as b, n as x, o as S, r as C, t as w, u as T } from "../item-pJ0GsOiJ.js";
|
|
15
|
-
import { g as E } from "../data-display-
|
|
16
|
-
import { C as ee, S as te, _ as D, a as O, b as ne, c as re, d as ie, f as ae, g as oe, h as se, i as ce, l as le, m as ue, n as de, o as fe, p as pe, r as me, s as he, t as ge, u as _e, v as ve, x as ye, y as be } from "../ai-artifact-
|
|
17
|
-
import { t as xe } from "../tree-
|
|
15
|
+
import { g as E } from "../data-display-cWIRdeaf.js";
|
|
16
|
+
import { C as ee, S as te, _ as D, a as O, b as ne, c as re, d as ie, f as ae, g as oe, h as se, i as ce, l as le, m as ue, n as de, o as fe, p as pe, r as me, s as he, t as ge, u as _e, v as ve, x as ye, y as be } from "../ai-artifact-B5tPpXnS.js";
|
|
17
|
+
import { t as xe } from "../tree-BdWSaoFT.js";
|
|
18
18
|
import { useMemo as Se, useState as k } from "react";
|
|
19
19
|
import { Fragment as A, jsx as j, jsxs as M } from "react/jsx-runtime";
|
|
20
20
|
import { ChevronDown as Ce, ChevronRight as we, Code2 as Te, ExternalLink as N, File as Ee, FileCode as De, FileText as Oe, Folder as ke, FolderOpen as Ae, Globe as je, Package as P, Quote as Me, RefreshCw as Ne, ThumbsDown as Pe, ThumbsUp as F } from "lucide-react";
|