@modern-admin/web 0.1.1 → 0.2.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/dist/lib/index.js.map +1 -1
- package/dist/standalone/assets/ai-assistant-widget-D2wY2KOL.js +2 -0
- package/dist/standalone/assets/ai-assistant-widget-D2wY2KOL.js.br +0 -0
- package/dist/standalone/assets/ai-assistant-widget-D2wY2KOL.js.gz +0 -0
- package/dist/standalone/assets/ai-assistant-widget-D2wY2KOL.js.map +1 -0
- package/dist/standalone/assets/audit-log-page-BGeo-dZh.js +2 -0
- package/dist/standalone/assets/audit-log-page-BGeo-dZh.js.br +0 -0
- package/dist/standalone/assets/audit-log-page-BGeo-dZh.js.gz +0 -0
- package/dist/standalone/assets/audit-log-page-BGeo-dZh.js.map +1 -0
- package/dist/standalone/assets/badge-6nyM5Jft.js +2 -0
- package/dist/standalone/assets/badge-6nyM5Jft.js.map +1 -0
- package/dist/standalone/assets/bot-DFDgGfNj.js +2 -0
- package/dist/standalone/assets/bot-DFDgGfNj.js.map +1 -0
- package/dist/standalone/assets/card-4cS4uWCP.js +2 -0
- package/dist/standalone/assets/card-4cS4uWCP.js.br +0 -0
- package/dist/standalone/assets/card-4cS4uWCP.js.gz +0 -0
- package/dist/standalone/assets/card-4cS4uWCP.js.map +1 -0
- package/dist/standalone/assets/clock-OCmX6DtA.js +2 -0
- package/dist/standalone/assets/clock-OCmX6DtA.js.map +1 -0
- package/dist/standalone/assets/command-D6MN0l5a.js +2 -0
- package/dist/standalone/assets/command-D6MN0l5a.js.br +0 -0
- package/dist/standalone/assets/command-D6MN0l5a.js.gz +0 -0
- package/dist/standalone/assets/command-D6MN0l5a.js.map +1 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js +2 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js.br +0 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js.gz +0 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js.map +1 -0
- package/dist/standalone/assets/dist-ByGEq5Uu.js +2 -0
- package/dist/standalone/assets/dist-ByGEq5Uu.js.br +0 -0
- package/dist/standalone/assets/dist-ByGEq5Uu.js.gz +0 -0
- package/dist/standalone/assets/dist-ByGEq5Uu.js.map +1 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js +2 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js.br +0 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js.gz +0 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js.map +1 -0
- package/dist/standalone/assets/edit-page-CYRW56vh.js +2 -0
- package/dist/standalone/assets/edit-page-CYRW56vh.js.br +0 -0
- package/dist/standalone/assets/edit-page-CYRW56vh.js.gz +0 -0
- package/dist/standalone/assets/edit-page-CYRW56vh.js.map +1 -0
- package/dist/standalone/assets/empty-6O1hDBF_.js +2 -0
- package/dist/standalone/assets/empty-6O1hDBF_.js.br +0 -0
- package/dist/standalone/assets/empty-6O1hDBF_.js.gz +0 -0
- package/dist/standalone/assets/empty-6O1hDBF_.js.map +1 -0
- package/dist/standalone/assets/file-text-CcLZq8HA.js +2 -0
- package/dist/standalone/assets/file-text-CcLZq8HA.js.map +1 -0
- package/dist/standalone/assets/folder-symlink-7nZ69llY.js +2 -0
- package/dist/standalone/assets/folder-symlink-7nZ69llY.js.br +0 -0
- package/dist/standalone/assets/folder-symlink-7nZ69llY.js.gz +0 -0
- package/dist/standalone/assets/folder-symlink-7nZ69llY.js.map +1 -0
- package/dist/standalone/assets/global-search-dialog-CTNjBSqC.js +2 -0
- package/dist/standalone/assets/global-search-dialog-CTNjBSqC.js.br +0 -0
- package/dist/standalone/assets/global-search-dialog-CTNjBSqC.js.gz +0 -0
- package/dist/standalone/assets/global-search-dialog-CTNjBSqC.js.map +1 -0
- package/dist/standalone/assets/heavy-fields-D1eCRvg3.js +181 -0
- package/dist/standalone/assets/heavy-fields-D1eCRvg3.js.br +0 -0
- package/dist/standalone/assets/heavy-fields-D1eCRvg3.js.gz +0 -0
- package/dist/standalone/assets/heavy-fields-D1eCRvg3.js.map +1 -0
- package/dist/standalone/assets/home-page-DMm-R675.js +60 -0
- package/dist/standalone/assets/home-page-DMm-R675.js.br +0 -0
- package/dist/standalone/assets/home-page-DMm-R675.js.gz +0 -0
- package/dist/standalone/assets/home-page-DMm-R675.js.map +1 -0
- package/dist/standalone/assets/icon-registry-y57AnfBQ.js +2 -0
- package/dist/standalone/assets/icon-registry-y57AnfBQ.js.br +0 -0
- package/dist/standalone/assets/icon-registry-y57AnfBQ.js.gz +0 -0
- package/dist/standalone/assets/icon-registry-y57AnfBQ.js.map +1 -0
- package/dist/standalone/assets/index-7FvUVXwS.js +15 -0
- package/dist/standalone/assets/index-7FvUVXwS.js.br +0 -0
- package/dist/standalone/assets/index-7FvUVXwS.js.gz +0 -0
- package/dist/standalone/assets/index-7FvUVXwS.js.map +1 -0
- package/dist/standalone/assets/index-DzW3oJ8_.css +2 -0
- package/dist/standalone/assets/index-DzW3oJ8_.css.br +0 -0
- package/dist/standalone/assets/index-DzW3oJ8_.css.gz +0 -0
- package/dist/standalone/assets/info-Bg70Pm3J.js +2 -0
- package/dist/standalone/assets/info-Bg70Pm3J.js.map +1 -0
- package/dist/standalone/assets/json-editor-B6CA7o0q.js +2 -0
- package/dist/standalone/assets/json-editor-B6CA7o0q.js.br +0 -0
- package/dist/standalone/assets/json-editor-B6CA7o0q.js.gz +0 -0
- package/dist/standalone/assets/json-editor-B6CA7o0q.js.map +1 -0
- package/dist/standalone/assets/key-lbuX0yk_.js +2 -0
- package/dist/standalone/assets/key-lbuX0yk_.js.map +1 -0
- package/dist/standalone/assets/key-round-CQLp1Ua9.js +2 -0
- package/dist/standalone/assets/key-round-CQLp1Ua9.js.map +1 -0
- package/dist/standalone/assets/minimize-2-Bx2cH_WS.js +2 -0
- package/dist/standalone/assets/minimize-2-Bx2cH_WS.js.map +1 -0
- package/dist/standalone/assets/pencil-BO-k3yTG.js +2 -0
- package/dist/standalone/assets/pencil-BO-k3yTG.js.map +1 -0
- package/dist/standalone/assets/plus-Dk-FzitW.js +2 -0
- package/dist/standalone/assets/plus-Dk-FzitW.js.map +1 -0
- package/dist/standalone/assets/property-renderer-9Lp1FUJh.js +7 -0
- package/dist/standalone/assets/property-renderer-9Lp1FUJh.js.br +0 -0
- package/dist/standalone/assets/property-renderer-9Lp1FUJh.js.gz +0 -0
- package/dist/standalone/assets/property-renderer-9Lp1FUJh.js.map +1 -0
- package/dist/standalone/assets/reference-BJl0yFxb.js +2 -0
- package/dist/standalone/assets/reference-BJl0yFxb.js.br +0 -0
- package/dist/standalone/assets/reference-BJl0yFxb.js.gz +0 -0
- package/dist/standalone/assets/reference-BJl0yFxb.js.map +1 -0
- package/dist/standalone/assets/refresh-cw-DGaIDN-w.js +2 -0
- package/dist/standalone/assets/refresh-cw-DGaIDN-w.js.map +1 -0
- package/dist/standalone/assets/revisions-button-BMOia5su.js +2 -0
- package/dist/standalone/assets/revisions-button-BMOia5su.js.br +0 -0
- package/dist/standalone/assets/revisions-button-BMOia5su.js.gz +0 -0
- package/dist/standalone/assets/revisions-button-BMOia5su.js.map +1 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js +67 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js.br +0 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js.gz +0 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js.map +1 -0
- package/dist/standalone/assets/rotate-ccw-BLr0QLAg.js +2 -0
- package/dist/standalone/assets/rotate-ccw-BLr0QLAg.js.map +1 -0
- package/dist/standalone/assets/router-CdkN982X.js +186 -0
- package/dist/standalone/assets/router-CdkN982X.js.br +0 -0
- package/dist/standalone/assets/router-CdkN982X.js.gz +0 -0
- package/dist/standalone/assets/router-CdkN982X.js.map +1 -0
- package/dist/standalone/assets/save-Cd3oR3Sj.js +2 -0
- package/dist/standalone/assets/save-Cd3oR3Sj.js.map +1 -0
- package/dist/standalone/assets/select-CYOkMz1v.js +2 -0
- package/dist/standalone/assets/select-CYOkMz1v.js.br +0 -0
- package/dist/standalone/assets/select-CYOkMz1v.js.gz +0 -0
- package/dist/standalone/assets/select-CYOkMz1v.js.map +1 -0
- package/dist/standalone/assets/send-D4KHQGYj.js +2 -0
- package/dist/standalone/assets/send-D4KHQGYj.js.map +1 -0
- package/dist/standalone/assets/settings-page-D_QQH4SM.js +2 -0
- package/dist/standalone/assets/settings-page-D_QQH4SM.js.br +0 -0
- package/dist/standalone/assets/settings-page-D_QQH4SM.js.gz +0 -0
- package/dist/standalone/assets/settings-page-D_QQH4SM.js.map +1 -0
- package/dist/standalone/assets/show-page-B4UVcMHh.js +2 -0
- package/dist/standalone/assets/show-page-B4UVcMHh.js.br +0 -0
- package/dist/standalone/assets/show-page-B4UVcMHh.js.gz +0 -0
- package/dist/standalone/assets/show-page-B4UVcMHh.js.map +1 -0
- package/dist/standalone/assets/sparkles-CqF0zjrF.js +2 -0
- package/dist/standalone/assets/sparkles-CqF0zjrF.js.map +1 -0
- package/dist/standalone/assets/src-WCKJSOko.js +65 -0
- package/dist/standalone/assets/src-WCKJSOko.js.br +0 -0
- package/dist/standalone/assets/src-WCKJSOko.js.gz +0 -0
- package/dist/standalone/assets/src-WCKJSOko.js.map +1 -0
- package/dist/standalone/assets/tabs-jKq6LSSb.js +2 -0
- package/dist/standalone/assets/tabs-jKq6LSSb.js.br +0 -0
- package/dist/standalone/assets/tabs-jKq6LSSb.js.gz +0 -0
- package/dist/standalone/assets/tabs-jKq6LSSb.js.map +1 -0
- package/dist/standalone/assets/textarea-CX_0QVSz.js +2 -0
- package/dist/standalone/assets/textarea-CX_0QVSz.js.map +1 -0
- package/dist/standalone/assets/trash-2-DhyKQCKv.js +2 -0
- package/dist/standalone/assets/trash-2-DhyKQCKv.js.map +1 -0
- package/dist/standalone/assets/triangle-alert-V-AHRhC-.js +2 -0
- package/dist/standalone/assets/triangle-alert-V-AHRhC-.js.map +1 -0
- package/dist/standalone/assets/undo-2-DlSB-5DM.js +2 -0
- package/dist/standalone/assets/undo-2-DlSB-5DM.js.br +0 -0
- package/dist/standalone/assets/undo-2-DlSB-5DM.js.gz +0 -0
- package/dist/standalone/assets/undo-2-DlSB-5DM.js.map +1 -0
- package/dist/standalone/assets/use-dashboard-charts-BnzZ8FtR.js +2 -0
- package/dist/standalone/assets/use-dashboard-charts-BnzZ8FtR.js.br +0 -0
- package/dist/standalone/assets/use-dashboard-charts-BnzZ8FtR.js.gz +0 -0
- package/dist/standalone/assets/use-dashboard-charts-BnzZ8FtR.js.map +1 -0
- package/dist/standalone/assets/useQueries-CG9WO2ym.js +2 -0
- package/dist/standalone/assets/useQueries-CG9WO2ym.js.br +0 -0
- package/dist/standalone/assets/useQueries-CG9WO2ym.js.gz +0 -0
- package/dist/standalone/assets/useQueries-CG9WO2ym.js.map +1 -0
- package/dist/standalone/assets/useQueries-Chw94eNX.css +1 -0
- package/dist/standalone/assets/useQueries-Chw94eNX.css.br +0 -0
- package/dist/standalone/assets/useQueries-Chw94eNX.css.gz +0 -0
- package/dist/standalone/assets/user-directory-B84RcWhn.js +5 -0
- package/dist/standalone/assets/user-directory-B84RcWhn.js.br +0 -0
- package/dist/standalone/assets/user-directory-B84RcWhn.js.gz +0 -0
- package/dist/standalone/assets/user-directory-B84RcWhn.js.map +1 -0
- package/dist/standalone/assets/uuid-DLSnbsz2.js +2 -0
- package/dist/standalone/assets/uuid-DLSnbsz2.js.map +1 -0
- package/dist/standalone/assets/wand-sparkles-BDM69Lk9.js +2 -0
- package/dist/standalone/assets/wand-sparkles-BDM69Lk9.js.map +1 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js +2 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js.br +0 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js.gz +0 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js.map +1 -0
- package/dist/standalone/assets/wizard-create-page-BybrbRRx.js +2 -0
- package/dist/standalone/assets/wizard-create-page-BybrbRRx.js.br +0 -0
- package/dist/standalone/assets/wizard-create-page-BybrbRRx.js.gz +0 -0
- package/dist/standalone/assets/wizard-create-page-BybrbRRx.js.map +1 -0
- package/dist/standalone/assets/x-C3kLunD6.js +2 -0
- package/dist/standalone/assets/x-C3kLunD6.js.map +1 -0
- package/dist/standalone/assets/zap-DIzIW2MP.js +2 -0
- package/dist/standalone/assets/zap-DIzIW2MP.js.br +0 -0
- package/dist/standalone/assets/zap-DIzIW2MP.js.gz +0 -0
- package/dist/standalone/assets/zap-DIzIW2MP.js.map +1 -0
- package/dist/standalone/assets/zod-zGqwQYFX.js +2 -0
- package/dist/standalone/assets/zod-zGqwQYFX.js.br +0 -0
- package/dist/standalone/assets/zod-zGqwQYFX.js.gz +0 -0
- package/dist/standalone/assets/zod-zGqwQYFX.js.map +1 -0
- package/dist/standalone/index.html +11 -2
- package/dist/standalone/index.html.br +0 -0
- package/dist/standalone/index.html.gz +0 -0
- package/package.json +6 -6
- package/vite.config.ts +77 -2
- package/dist/standalone/assets/index-Bq7jl8a_.css +0 -1
- package/dist/standalone/assets/index-COc2pxJ6.js +0 -546
- package/dist/standalone/assets/index-COc2pxJ6.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"empty-6O1hDBF_.js","names":["Switch","Fragment"],"sources":["../../../../../node_modules/.bun/@radix-ui+react-switch@1.3.3+ae2b4604ef263bc9/node_modules/@radix-ui/react-switch/dist/index.mjs","../../../../ui/src/components/switch.tsx","../../../../ui/src/components/info-tooltip.tsx","../../../../ui/src/components/empty.tsx"],"sourcesContent":["\"use client\";\n\n// src/switch.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProviderImpl, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nfunction SwitchProvider(props) {\n const {\n __scopeSwitch,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: SWITCH_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n setChecked,\n disabled,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(SwitchProviderImpl, { scope: __scopeSwitch, ...context, children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children });\n}\nvar TRIGGER_NAME = \"SwitchTrigger\";\nvar SwitchTrigger = React.forwardRef(\n ({ __scopeSwitch, onClick, ...switchProps }, forwardedRef) => {\n const {\n control,\n form,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useSwitchContext(TRIGGER_NAME, __scopeSwitch);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const associatedForm = form ? control?.ownerDocument.getElementById(form) : control?.form;\n if (associatedForm instanceof HTMLFormElement) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n associatedForm.addEventListener(\"reset\", reset);\n return () => associatedForm.removeEventListener(\"reset\", reset);\n }\n }, [control, form, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"switch\",\n \"aria-checked\": checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...switchProps,\n ref: composedRefs,\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nSwitchTrigger.displayName = TRIGGER_NAME;\nvar Switch = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSwitch,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n return /* @__PURE__ */ jsx(\n SwitchProvider,\n {\n __scopeSwitch,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n SwitchTrigger,\n {\n ...switchProps,\n ref: forwardedRef,\n __scopeSwitch\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n SwitchBubbleInput,\n {\n __scopeSwitch\n }\n )\n ] })\n }\n );\n }\n);\nSwitch.displayName = SWITCH_NAME;\nvar THUMB_NAME = \"SwitchThumb\";\nvar SwitchThumb = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSwitch, ...thumbProps } = props;\n const context = useSwitchContext(THUMB_NAME, __scopeSwitch);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...thumbProps,\n ref: forwardedRef\n }\n );\n }\n);\nSwitchThumb.displayName = THUMB_NAME;\nvar BUBBLE_INPUT_NAME = \"SwitchBubbleInput\";\nvar SwitchBubbleInput = React.forwardRef(\n ({ __scopeSwitch, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useSwitchContext(BUBBLE_INPUT_NAME, __scopeSwitch);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nSwitchBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Switch as Root,\n Switch,\n SwitchThumb,\n SwitchThumb as Thumb,\n createSwitchScope,\n SwitchBubbleInput as unstable_BubbleInput,\n SwitchProvider as unstable_Provider,\n SwitchBubbleInput as unstable_SwitchBubbleInput,\n SwitchProvider as unstable_SwitchProvider,\n SwitchTrigger as unstable_SwitchTrigger,\n SwitchTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from 'react'\nimport * as SwitchPrimitive from '@radix-ui/react-switch'\nimport { cn } from '../lib/utils.js'\n\nexport const Switch = React.forwardRef<\n React.ElementRef<typeof SwitchPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <SwitchPrimitive.Root\n ref={ref}\n className={cn(\n 'peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input',\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n className={cn(\n 'pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0',\n )}\n />\n </SwitchPrimitive.Root>\n))\nSwitch.displayName = SwitchPrimitive.Root.displayName\n","import * as React from 'react'\nimport { Info } from 'lucide-react'\nimport { cn } from '../lib/utils.js'\nimport { Tooltip, TooltipContent, TooltipTrigger } from './tooltip.js'\n\nexport interface InfoTooltipProps {\n content: React.ReactNode\n ariaLabel?: string\n className?: string\n iconClassName?: string\n side?: React.ComponentProps<typeof TooltipContent>['side']\n}\n\nexport function InfoTooltip({\n content,\n ariaLabel,\n className,\n iconClassName,\n side = 'top',\n}: InfoTooltipProps): React.ReactElement {\n return (\n <Tooltip>\n <TooltipTrigger asChild>\n <button\n type=\"button\"\n aria-label={ariaLabel}\n className={cn(\n 'inline-flex size-4 shrink-0 items-center justify-center rounded-sm text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n className,\n )}\n >\n <Info className={cn('size-3.5', iconClassName)} />\n </button>\n </TooltipTrigger>\n <TooltipContent side={side} className=\"max-w-80 whitespace-pre-wrap text-left leading-relaxed\">\n {content}\n </TooltipContent>\n </Tooltip>\n )\n}\n","// shadcn-style Empty — placeholder for empty states.\n// Compose: <Empty><EmptyHeader><EmptyMedia/><EmptyTitle/><EmptyDescription/></EmptyHeader><EmptyContent>…</EmptyContent></Empty>\n\nimport * as React from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '../lib/utils.js'\n\nexport const Empty = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"empty\"\n className={cn(\n 'flex w-full flex-col items-center justify-center gap-6 rounded-lg border border-dashed border-border bg-card/40 p-8 text-center',\n className,\n )}\n {...props}\n />\n ),\n)\nEmpty.displayName = 'Empty'\n\nexport const EmptyHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"empty-header\"\n className={cn('flex flex-col items-center gap-3 text-center', className)}\n {...props}\n />\n ),\n)\nEmptyHeader.displayName = 'EmptyHeader'\n\nconst emptyMediaVariants = cva(\n 'flex shrink-0 items-center justify-center [&>svg]:size-6',\n {\n variants: {\n variant: {\n default: 'text-muted-foreground',\n icon: 'flex size-12 items-center justify-center rounded-full bg-muted text-muted-foreground [&>svg]:size-6',\n },\n },\n defaultVariants: { variant: 'icon' },\n },\n)\n\nexport interface EmptyMediaProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof emptyMediaVariants> {}\n\nexport const EmptyMedia = React.forwardRef<HTMLDivElement, EmptyMediaProps>(\n ({ className, variant, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"empty-media\"\n className={cn(emptyMediaVariants({ variant }), className)}\n {...props}\n />\n ),\n)\nEmptyMedia.displayName = 'EmptyMedia'\n\nexport const EmptyTitle = React.forwardRef<\n HTMLHeadingElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n data-slot=\"empty-title\"\n className={cn('text-base font-semibold tracking-tight', className)}\n {...props}\n />\n))\nEmptyTitle.displayName = 'EmptyTitle'\n\nexport const EmptyDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n data-slot=\"empty-description\"\n className={cn('max-w-sm text-sm text-muted-foreground', className)}\n {...props}\n />\n))\nEmptyDescription.displayName = 'EmptyDescription'\n\nexport const EmptyContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"empty-content\"\n className={cn('flex flex-wrap items-center justify-center gap-2', className)}\n {...props}\n />\n ),\n)\nEmptyContent.displayName = 'EmptyContent'\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./createLucideIcon-CUopU_LC.js";var t=e(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]);export{t};
|
|
2
|
+
//# sourceMappingURL=file-text-CcLZq8HA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-text-CcLZq8HA.js","names":[],"sources":["../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/file-text.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\",\n key: \"1oefj6\"\n }\n ],\n [\"path\", { d: \"M14 2v5a1 1 0 0 0 1 1h5\", key: \"wfsgrz\" }],\n [\"path\", { d: \"M10 9H8\", key: \"b1mrlr\" }],\n [\"path\", { d: \"M16 13H8\", key: \"t4e002\" }],\n [\"path\", { d: \"M16 17H8\", key: \"z1uh3a\" }]\n];\nconst FileText = createLucideIcon(\"file-text\", __iconNode);\n\nexport { __iconNode, FileText as default };\n//# sourceMappingURL=file-text.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"mDAsBA,IAAM,EAAW,EAAiB,YAAa,CAZ7C,CACE,OACA,CACE,EAAG,iHACH,IAAK,QACP,CACF,EACA,CAAC,OAAQ,CAAE,EAAG,0BAA2B,IAAK,QAAS,CAAC,EACxD,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,CAEI,CAAU"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./createLucideIcon-CUopU_LC.js";var t=e(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),n=e(`chart-area`,[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M7 11.207a.5.5 0 0 1 .146-.353l2-2a.5.5 0 0 1 .708 0l3.292 3.292a.5.5 0 0 0 .708 0l4.292-4.292a.5.5 0 0 1 .854.353V16a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1z`,key:`q0gr47`}]]),r=e(`chart-line`,[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`m19 9-5 5-4-4-3 3`,key:`2osh9i`}]]),i=e(`chart-no-axes-column`,[[`path`,{d:`M5 21v-6`,key:`1hz6c0`}],[`path`,{d:`M12 21V3`,key:`1lcnhd`}],[`path`,{d:`M19 21V9`,key:`unv183`}]]),a=e(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),o=e(`folder-symlink`,[[`path`,{d:`M2 9.35V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h7`,key:`y8kt7d`}],[`path`,{d:`m8 16 3-3-3-3`,key:`rlqrt1`}]]);export{n as a,r as i,a as n,t as o,i as r,o as t};
|
|
2
|
+
//# sourceMappingURL=folder-symlink-7nZ69llY.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"folder-symlink-7nZ69llY.js","names":["__iconNode","__iconNode","__iconNode","__iconNode","__iconNode"],"sources":["../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/activity.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/chart-area.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/chart-line.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/chart-no-axes-column.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/folder-plus.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/folder-symlink.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2\",\n key: \"169zse\"\n }\n ]\n];\nconst Activity = createLucideIcon(\"activity\", __iconNode);\n\nexport { __iconNode, Activity as default };\n//# sourceMappingURL=activity.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 3v16a2 2 0 0 0 2 2h16\", key: \"c24i48\" }],\n [\n \"path\",\n {\n d: \"M7 11.207a.5.5 0 0 1 .146-.353l2-2a.5.5 0 0 1 .708 0l3.292 3.292a.5.5 0 0 0 .708 0l4.292-4.292a.5.5 0 0 1 .854.353V16a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1z\",\n key: \"q0gr47\"\n }\n ]\n];\nconst ChartArea = createLucideIcon(\"chart-area\", __iconNode);\n\nexport { __iconNode, ChartArea as default };\n//# sourceMappingURL=chart-area.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 3v16a2 2 0 0 0 2 2h16\", key: \"c24i48\" }],\n [\"path\", { d: \"m19 9-5 5-4-4-3 3\", key: \"2osh9i\" }]\n];\nconst ChartLine = createLucideIcon(\"chart-line\", __iconNode);\n\nexport { __iconNode, ChartLine as default };\n//# sourceMappingURL=chart-line.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 21v-6\", key: \"1hz6c0\" }],\n [\"path\", { d: \"M12 21V3\", key: \"1lcnhd\" }],\n [\"path\", { d: \"M19 21V9\", key: \"unv183\" }]\n];\nconst ChartNoAxesColumn = createLucideIcon(\"chart-no-axes-column\", __iconNode);\n\nexport { __iconNode, ChartNoAxesColumn as default };\n//# sourceMappingURL=chart-no-axes-column.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 10v6\", key: \"1bos4e\" }],\n [\"path\", { d: \"M9 13h6\", key: \"1uhe8q\" }],\n [\n \"path\",\n {\n d: \"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\",\n key: \"1kt360\"\n }\n ]\n];\nconst FolderPlus = createLucideIcon(\"folder-plus\", __iconNode);\n\nexport { __iconNode, FolderPlus as default };\n//# sourceMappingURL=folder-plus.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M2 9.35V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h7\",\n key: \"y8kt7d\"\n }\n ],\n [\"path\", { d: \"m8 16 3-3-3-3\", key: \"rlqrt1\" }]\n];\nconst FolderSymlink = createLucideIcon(\"folder-symlink\", __iconNode);\n\nexport { __iconNode, FolderSymlink as default };\n//# sourceMappingURL=folder-symlink.mjs.map\n"],"x_google_ignoreList":[0,1,2,3,4,5],"mappings":"mDAkBA,IAAM,EAAW,EAAiB,WAAYA,CAR5C,CACE,OACA,CACE,EAAG,6HACH,IAAK,QACP,CACF,CAE4CA,CAAU,ECClD,EAAY,EAAiB,aAAcC,CAT/C,CAAC,OAAQ,CAAE,EAAG,2BAA4B,IAAK,QAAS,CAAC,EACzD,CACE,OACA,CACE,EAAG,uJACH,IAAK,QACP,CACF,CAE+CA,CAAU,ECNrD,EAAY,EAAiB,aAAcC,CAH/C,CAAC,OAAQ,CAAE,EAAG,2BAA4B,IAAK,QAAS,CAAC,EACzD,CAAC,OAAQ,CAAE,EAAG,oBAAqB,IAAK,QAAS,CAAC,CAEHA,CAAU,ECCrD,EAAoB,EAAiB,uBAAwBC,CAJjE,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,CAEwBA,CAAU,ECMvE,EAAa,EAAiB,cAAeC,CAVjD,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CACE,OACA,CACE,EAAG,yHACH,IAAK,QACP,CACF,CAEiDA,CAAU,ECDvD,EAAgB,EAAiB,iBAAkB,CATvD,CACE,OACA,CACE,EAAG,6IACH,IAAK,QACP,CACF,EACA,CAAC,OAAQ,CAAE,EAAG,gBAAiB,IAAK,QAAS,CAAC,CAES,CAAU"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,n as t}from"./createLucideIcon-CUopU_LC.js";import{S as n}from"./with-selector-NDLhu4dT.js";import{n as r,t as i}from"./clock-OCmX6DtA.js";import{t as a}from"./x-C3kLunD6.js";import{$ as o,F as s,i as c}from"./router-CdkN982X.js";import{a as l,c as u,i as d,n as f,o as p,r as m,s as h}from"./command-D6MN0l5a.js";import{F as g,R as _,ot as v}from"./index-7FvUVXwS.js";var y=e(t(),1),b=n(),x=300,S=`modern-admin:global-search:recent:v1`,C=6,w=()=>{if(typeof window>`u`)return[];try{let e=window.localStorage.getItem(S);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`).slice(0,C):[]}catch{return[]}},T=e=>{if(!(typeof window>`u`))try{window.localStorage.setItem(S,JSON.stringify(e.slice(0,C)))}catch{}},E=(e,t)=>{if(!t)return e;let n=e.toLowerCase(),r=t.toLowerCase(),i=[],a=0,o=0;for(;a<e.length;){let t=n.indexOf(r,a);if(t===-1){i.push(e.slice(a));break}t>a&&i.push(e.slice(a,t)),i.push((0,b.jsx)(`mark`,{className:`rounded-sm bg-primary/20 px-0.5 text-foreground`,children:e.slice(t,t+r.length)},o++)),a=t+r.length}return i};function D({open:e,onOpenChange:t}){let{t:n}=o(),S=c(),[D,O]=y.useState(``),[k,A]=y.useState(``),[j,M]=y.useState(()=>w());y.useEffect(()=>{e&&(O(``),A(``),M(w()))},[e]),y.useEffect(()=>{let e=window.setTimeout(()=>A(D.trim()),x);return()=>window.clearTimeout(e)},[D]);let{data:N,isFetching:P}=s(k,e),F=y.useCallback(e=>{e&&M(t=>{let n=[e,...t.filter(t=>t!==e)].slice(0,C);return T(n),n})},[]),I=N?.groups??[],L=k.length>0,R=L&&!P&&I.length===0,z=y.useCallback((e,n)=>{F(k),t(!1),S({name:`show`,resourceId:e,recordId:n})},[k,S,t,F]),B=y.useCallback(e=>{F(k),t(!1),S({name:`list`,resourceId:e})},[k,S,t,F]),V=y.useCallback(e=>{O(e),A(e)},[]),H=y.useCallback(()=>{M([]),T([])},[]);return(0,b.jsxs)(f,{open:e,onOpenChange:t,children:[(0,b.jsx)(_,{className:`sr-only`,children:n(`globalSearch:title`)}),(0,b.jsx)(g,{className:`sr-only`,children:n(`globalSearch:description`)}),(0,b.jsx)(l,{placeholder:n(`globalSearch:placeholder`),value:D,onValueChange:O}),(0,b.jsxs)(h,{children:[!L&&j.length===0&&(0,b.jsx)(`div`,{className:`py-6 text-center text-sm text-muted-foreground`,children:n(`globalSearch:hint`)}),!L&&j.length>0&&(0,b.jsx)(d,{heading:(0,b.jsxs)(`span`,{className:`flex items-center justify-between gap-2`,children:[(0,b.jsx)(`span`,{children:n(`globalSearch:recent`)}),(0,b.jsxs)(`button`,{type:`button`,className:`text-xs text-muted-foreground hover:text-foreground`,onClick:H,children:[(0,b.jsx)(a,{className:`mr-1 inline size-3`,"aria-hidden":`true`}),n(`globalSearch:clearRecent`)]})]}),children:j.map(e=>(0,b.jsxs)(p,{value:`recent:${e}`,onSelect:()=>V(e),children:[(0,b.jsx)(i,{className:`mr-2 size-4 text-muted-foreground`,"aria-hidden":`true`}),(0,b.jsx)(`span`,{className:`flex-1 truncate`,children:e})]},`recent:${e}`))}),R&&(0,b.jsx)(m,{children:n(`globalSearch:noResults`)}),L&&P&&I.length===0&&(0,b.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-6 text-sm text-muted-foreground`,role:`status`,"aria-live":`polite`,children:[(0,b.jsx)(v,{className:`size-4 animate-spin`,"aria-hidden":`true`}),(0,b.jsx)(`span`,{children:n(`common:loading`)})]}),I.map((e,t)=>(0,b.jsxs)(y.Fragment,{children:[t>0&&(0,b.jsx)(u,{}),(0,b.jsxs)(d,{heading:e.resourceName,children:[e.records.map(e=>(0,b.jsxs)(p,{value:`${e.resourceId}:${e.recordId} ${e.title} ${e.snippet??``}`,onSelect:()=>z(e.resourceId,e.recordId),className:`flex-col items-start gap-0.5`,children:[(0,b.jsxs)(`div`,{className:`flex w-full items-baseline gap-2`,children:[(0,b.jsx)(`span`,{className:`flex-1 truncate font-medium`,children:E(e.title,k)}),e.matchedField&&(0,b.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:n(`globalSearch:matchedIn`).replace(`{field}`,e.matchedField)})]}),e.snippet&&(0,b.jsx)(`div`,{className:`line-clamp-1 text-xs text-muted-foreground`,children:E(e.snippet,k)})]},`${e.resourceId}:${e.recordId}`)),(0,b.jsxs)(p,{value:`${e.resourceId}:show-all`,forceMount:!0,onSelect:()=>B(e.resourceId),className:`text-xs text-muted-foreground`,children:[(0,b.jsx)(r,{className:`mr-2 size-3.5`,"aria-hidden":`true`}),n(`globalSearch:showAllIn`).replace(`{resource}`,e.resourceName)]},`${e.resourceId}:show-all`)]})]},e.resourceId))]})]})}export{D as GlobalSearchDialog};
|
|
2
|
+
//# sourceMappingURL=global-search-dialog-CTNjBSqC.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-search-dialog-CTNjBSqC.js","names":[],"sources":["../../../../react/src/components/global-search-dialog.tsx"],"sourcesContent":["// Cross-resource command palette. Backed by `useGlobalSearch`, which fans\n// the query out to every registered resource's `search` action server-side.\n// Results are grouped by resource; selecting an entry navigates to the\n// record's show page and closes the palette.\n//\n// Designed as a controlled component — the parent (typically the header)\n// holds the `open` state so it can pair the trigger button with the\n// `mod+k` hotkey.\n\nimport * as React from 'react'\nimport {\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n DialogDescription,\n DialogTitle,\n} from '@modern-admin/ui'\nimport { ArrowRight, Clock, Loader2, X } from 'lucide-react'\nimport { useGlobalSearch } from '../hooks.js'\nimport { useI18n } from '../i18n.js'\nimport { useNavigate } from '../router.js'\n\nconst DEBOUNCE_MS = 300\nconst RECENT_STORAGE_KEY = 'modern-admin:global-search:recent:v1'\nconst RECENT_MAX = 6\n\nexport interface GlobalSearchDialogProps {\n open: boolean\n\n onOpenChange(open: boolean): void\n}\n\nconst readRecent = (): string[] => {\n if (typeof window === 'undefined') return []\n try {\n const raw = window.localStorage.getItem(RECENT_STORAGE_KEY)\n if (!raw) return []\n const parsed = JSON.parse(raw) as unknown\n if (!Array.isArray(parsed)) return []\n return parsed.filter((v): v is string => typeof v === 'string').slice(0, RECENT_MAX)\n } catch {\n return []\n }\n}\n\nconst writeRecent = (entries: string[]): void => {\n if (typeof window === 'undefined') return\n try {\n window.localStorage.setItem(RECENT_STORAGE_KEY, JSON.stringify(entries.slice(0, RECENT_MAX)))\n } catch {\n /* quota exceeded — recent list is best-effort */\n }\n}\n\n/**\n * Highlight every case-insensitive occurrence of `needle` in `text` with\n * `<mark>`. Returns an array of React nodes ready to render inside any\n * inline container. Empty `needle` falls back to the raw string.\n */\nconst highlightMatch = (text: string, needle: string): React.ReactNode => {\n if (!needle) return text\n const lower = text.toLowerCase()\n const target = needle.toLowerCase()\n const nodes: React.ReactNode[] = []\n let cursor = 0\n let key = 0\n while (cursor < text.length) {\n const idx = lower.indexOf(target, cursor)\n if (idx === -1) {\n nodes.push(text.slice(cursor))\n break\n }\n if (idx > cursor) nodes.push(text.slice(cursor, idx))\n nodes.push(\n <mark\n key={key++}\n className=\"rounded-sm bg-primary/20 px-0.5 text-foreground\"\n >\n {text.slice(idx, idx + target.length)}\n </mark>,\n )\n cursor = idx + target.length\n }\n return nodes\n}\n\nexport function GlobalSearchDialog({\n open,\n onOpenChange,\n}: GlobalSearchDialogProps): React.ReactElement {\n const { t } = useI18n()\n const navigate = useNavigate()\n const [query, setQuery] = React.useState('')\n const [debounced, setDebounced] = React.useState('')\n const [recent, setRecent] = React.useState<string[]>(() => readRecent())\n\n // Reset query each time the dialog opens so it starts empty, and rehydrate\n // the recent list (other tabs may have appended entries while we were idle).\n React.useEffect(() => {\n if (open) {\n setQuery('')\n setDebounced('')\n setRecent(readRecent())\n }\n }, [open])\n\n React.useEffect(() => {\n const timer = window.setTimeout(() => setDebounced(query.trim()), DEBOUNCE_MS)\n return () => window.clearTimeout(timer)\n }, [query])\n\n const { data, isFetching } = useGlobalSearch(debounced, open)\n\n // Capture the most recent successful query so it's available for the\n // \"recent\" list. We only persist on user-driven navigation (not every\n // keystroke) to keep the list signal-to-noise high.\n const persistRecent = React.useCallback((value: string): void => {\n if (!value) return\n setRecent((prev) => {\n const next = [value, ...prev.filter((q) => q !== value)].slice(0, RECENT_MAX)\n writeRecent(next)\n return next\n })\n }, [])\n\n const groups = data?.groups ?? []\n const hasQuery = debounced.length > 0\n const showEmpty = hasQuery && !isFetching && groups.length === 0\n\n const handleSelect = React.useCallback(\n (resourceId: string, recordId: string): void => {\n persistRecent(debounced)\n onOpenChange(false)\n navigate({ name: 'show', resourceId, recordId })\n },\n [debounced, navigate, onOpenChange, persistRecent],\n )\n\n const handleShowAll = React.useCallback(\n (resourceId: string): void => {\n persistRecent(debounced)\n onOpenChange(false)\n navigate({ name: 'list', resourceId })\n },\n [debounced, navigate, onOpenChange, persistRecent],\n )\n\n const handlePickRecent = React.useCallback((value: string): void => {\n setQuery(value)\n setDebounced(value)\n }, [])\n\n const handleClearRecent = React.useCallback((): void => {\n setRecent([])\n writeRecent([])\n }, [])\n\n return (\n <CommandDialog open={open} onOpenChange={onOpenChange}>\n {/* Visually-hidden title + description keep Radix Dialog accessibility\n warnings quiet and provide a label for screen readers. */}\n <DialogTitle className=\"sr-only\">{t('globalSearch:title')}</DialogTitle>\n <DialogDescription className=\"sr-only\">\n {t('globalSearch:description')}\n </DialogDescription>\n <CommandInput\n placeholder={t('globalSearch:placeholder')}\n value={query}\n onValueChange={setQuery}\n />\n {/* cmdk dedupes by item value — prefix each value with `resourceId:recordId`\n so identical record ids across resources keep distinct entries.\n shouldFilter is left on (default) so cmdk re-orders by relevance against\n the typed query — server already narrowed the set down. */}\n <CommandList>\n {!hasQuery && recent.length === 0 && (\n <div className=\"py-6 text-center text-sm text-muted-foreground\">\n {t('globalSearch:hint')}\n </div>\n )}\n {!hasQuery && recent.length > 0 && (\n <CommandGroup\n heading={\n <span className=\"flex items-center justify-between gap-2\">\n <span>{t('globalSearch:recent')}</span>\n <button\n type=\"button\"\n className=\"text-xs text-muted-foreground hover:text-foreground\"\n onClick={handleClearRecent}\n >\n <X className=\"mr-1 inline size-3\" aria-hidden=\"true\" />\n {t('globalSearch:clearRecent')}\n </button>\n </span>\n }\n >\n {recent.map((entry) => (\n <CommandItem\n key={`recent:${entry}`}\n value={`recent:${entry}`}\n onSelect={() => handlePickRecent(entry)}\n >\n <Clock className=\"mr-2 size-4 text-muted-foreground\" aria-hidden=\"true\" />\n <span className=\"flex-1 truncate\">{entry}</span>\n </CommandItem>\n ))}\n </CommandGroup>\n )}\n {showEmpty && <CommandEmpty>{t('globalSearch:noResults')}</CommandEmpty>}\n {hasQuery && isFetching && groups.length === 0 && (\n <div\n className=\"flex items-center justify-center gap-2 py-6 text-sm text-muted-foreground\"\n role=\"status\"\n aria-live=\"polite\"\n >\n <Loader2 className=\"size-4 animate-spin\" aria-hidden=\"true\"/>\n <span>{t('common:loading')}</span>\n </div>\n )}\n {groups.map((group, idx) => (\n <React.Fragment key={group.resourceId}>\n {idx > 0 && <CommandSeparator/>}\n <CommandGroup heading={group.resourceName}>\n {group.records.map((hit) => (\n <CommandItem\n key={`${hit.resourceId}:${hit.recordId}`}\n value={`${hit.resourceId}:${hit.recordId} ${hit.title} ${hit.snippet ?? ''}`}\n onSelect={() => handleSelect(hit.resourceId, hit.recordId)}\n className=\"flex-col items-start gap-0.5\"\n >\n <div className=\"flex w-full items-baseline gap-2\">\n <span className=\"flex-1 truncate font-medium\">\n {highlightMatch(hit.title, debounced)}\n </span>\n {hit.matchedField && (\n <span className=\"shrink-0 text-xs text-muted-foreground\">\n {t('globalSearch:matchedIn').replace('{field}', hit.matchedField)}\n </span>\n )}\n </div>\n {hit.snippet && (\n <div className=\"line-clamp-1 text-xs text-muted-foreground\">\n {highlightMatch(hit.snippet, debounced)}\n </div>\n )}\n </CommandItem>\n ))}\n {/* `forceMount` keeps this row visible regardless of the current\n query — cmdk's default fuzzy filter would otherwise drop it\n because the value `${id}:show-all` rarely contains the typed\n needle. */}\n <CommandItem\n key={`${group.resourceId}:show-all`}\n value={`${group.resourceId}:show-all`}\n forceMount\n onSelect={() => handleShowAll(group.resourceId)}\n className=\"text-xs text-muted-foreground\"\n >\n <ArrowRight className=\"mr-2 size-3.5\" aria-hidden=\"true\" />\n {t('globalSearch:showAllIn').replace('{resource}', group.resourceName)}\n </CommandItem>\n </CommandGroup>\n </React.Fragment>\n ))}\n </CommandList>\n </CommandDialog>\n )\n}\n"],"mappings":"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"}
|