@datum-cloud/datum-ui 3.7.0 → 3.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{action-row-DTvs91_3.mjs → action-row-BEzE9x37.mjs} +2 -3
- package/dist/{adapter-context-h0jCVqGO.mjs → adapter-context-XT749tyT.mjs} +1 -2
- package/dist/alert/index.mjs +1 -2
- package/dist/{alert-SAPwee1h.mjs → alert-CVckvox4.mjs} +2 -3
- package/dist/app-navigation/index.mjs +2 -2
- package/dist/{app-navigation-BB_NLEWv.mjs → app-navigation-DyNZwlSG.mjs} +14 -20
- package/dist/assistant/index.mjs +57 -63
- package/dist/autocomplete/index.mjs +1 -2
- package/dist/{autocomplete-BxtzndxZ.mjs → autocomplete-D0zAcT78.mjs} +6 -8
- package/dist/autosearch/index.mjs +8 -10
- package/dist/avatar/index.mjs +2 -3
- package/dist/avatar-stack/index.mjs +1 -2
- package/dist/{avatar-stack-BUcsjhA6.mjs → avatar-stack-2ow672bR.mjs} +3 -4
- package/dist/badge/index.mjs +181 -1
- package/dist/breadcrumb/index.mjs +1 -2
- package/dist/{breadcrumb-DmdhC8bE.mjs → breadcrumb-D97jAZ2N.mjs} +2 -3
- package/dist/button/index.mjs +2 -2
- package/dist/{button-CsdF61EI.mjs → button-C57mkFkS.mjs} +2 -3
- package/dist/{button-DoMqfQLu.mjs → button-Cn4KagBO.mjs} +4 -6
- package/dist/{button-CDPui_Ov.mjs → button-IK-Lnu_9.mjs} +3 -4
- package/dist/button-group/index.mjs +1 -2
- package/dist/{button-group-DFrTH4L8.mjs → button-group-C3GKo-0p.mjs} +3 -4
- package/dist/calendar/index.mjs +4 -5
- package/dist/{calendar-date-picker-DPvVAW2I.mjs → calendar-date-picker-CknZM6a2.mjs} +3 -4
- package/dist/card/index.mjs +1 -2
- package/dist/{card-save-bar-BZzNnKYj.mjs → card-save-bar-Te8jf-ie.mjs} +5 -8
- package/dist/chart/index.mjs +1 -2
- package/dist/{chart-EgzTS28l.mjs → chart-BsGsx2jb.mjs} +2 -3
- package/dist/checkbox/index.mjs +1 -2
- package/dist/checkbox-BAo5sbHk.mjs +84 -0
- package/dist/{close.icon-DdXKQ4m0.mjs → close.icon-BCPmH4nN.mjs} +2 -3
- package/dist/code-editor/index.mjs +1 -2
- package/dist/{col-BYGWTB4j.mjs → col-CYHIfPJq.mjs} +5 -9
- package/dist/collapsible/index.mjs +1 -7
- package/dist/collapsible-B-KP3JZ-.mjs +104 -0
- package/dist/command/index.mjs +1 -2
- package/dist/{command-C0aGIYnQ.mjs → command-B0be-zU5.mjs} +3 -4
- package/dist/components/base/checkbox/checkbox.d.ts +11 -3
- package/dist/components/base/collapsible/collapsible.d.ts +28 -0
- package/dist/components/base/collapsible/index.d.ts +1 -1
- package/dist/components/base/radio-group/radio-group.d.ts +11 -5
- package/dist/components/base/spinner/index.d.ts +1 -1
- package/dist/components/base/spinner/spinner.d.ts +11 -0
- package/dist/components/base/switch/switch.d.ts +6 -1
- package/dist/components/base/typography/typography.d.ts +1 -1
- package/dist/components/features/_shared/copy-state-icon.d.ts +12 -0
- package/dist/components/features/_shared/index.d.ts +2 -0
- package/dist/components/features/_shared/motion-chip.d.ts +293 -0
- package/dist/components/features/assistant/components/message/plan-card.d.ts +1 -1
- package/dist/components/icons/spinner.icon.d.ts +17 -3
- package/dist/copy-state-icon-DMvXXsZm.mjs +61 -0
- package/dist/data-table/index.mjs +1 -2
- package/dist/{data-table-CJiQQ6TM.mjs → data-table-CpBwO8Ea.mjs} +39 -66
- package/dist/date-picker/index.mjs +3 -3
- package/dist/date-time/index.mjs +1 -2
- package/dist/{date-time-lZdefM4H.mjs → date-time-BBRVM9qb.mjs} +4 -6
- package/dist/date-time-picker/index.mjs +1 -2
- package/dist/{date-time-picker-CricsXgF.mjs → date-time-picker-Bc41Ixrs.mjs} +3 -4
- package/dist/{date-time-range-picker-DM4AIvQ1.mjs → date-time-range-picker-yy1Acntn.mjs} +36 -59
- package/dist/dialog/index.mjs +1 -2
- package/dist/{dialog-Gu70fban.mjs → dialog-C8RXIQYm.mjs} +4 -5
- package/dist/{dialog-CmkrpaYy.mjs → dialog-D6sDXaH6.mjs} +2 -3
- package/dist/dropdown/index.mjs +1 -2
- package/dist/{dropdown-Xvduih96.mjs → dropdown-DR9j3Ni_.mjs} +3 -4
- package/dist/{dropdown-menu-b8zY5Cs6.mjs → dropdown-menu-CjgTr8Ab.mjs} +2 -3
- package/dist/dropzone/index.mjs +1 -2
- package/dist/{dropzone-ihksfjN2.mjs → dropzone-qKYfSe7o.mjs} +6 -8
- package/dist/empty-content/index.mjs +1 -2
- package/dist/{empty-content-CmuVcU0P.mjs → empty-content-CTMHak36.mjs} +8 -13
- package/dist/form/adapters/conform/index.mjs +4 -6
- package/dist/form/adapters/rhf/index.mjs +6 -9
- package/dist/form/index.mjs +2 -2
- package/dist/form/stepper/index.mjs +11 -16
- package/dist/{form-D4R6C609.mjs → form-DTaVgDSV.mjs} +64 -89
- package/dist/{form-context-DzB2a-dw.mjs → form-context-BRzt53M5.mjs} +1 -2
- package/dist/grid/index.mjs +1 -2
- package/dist/grouped-table/index.mjs +1 -2
- package/dist/{grouped-table-fHguJz9W.mjs → grouped-table-Dl6DclbV.mjs} +17 -25
- package/dist/hooks/index.mjs +4 -4
- package/dist/{hooks-CwZ6hyI1.mjs → hooks-WVJbyhCz.mjs} +1 -2
- package/dist/hover-card/index.mjs +1 -2
- package/dist/{hover-card-BNOE5vT5.mjs → hover-card-DSt1lZGg.mjs} +3 -5
- package/dist/{icon-wrapper-DKfJlJd0.mjs → icon-wrapper-CIk2th6R.mjs} +1 -2
- package/dist/icons/index.mjs +3 -3
- package/dist/index.mjs +80 -80
- package/dist/input/index.mjs +1 -2
- package/dist/{input-j4tbmYYz.mjs → input-DsT5qkJn.mjs} +3 -4
- package/dist/{input-DR-XbgpD.mjs → input-Wl1K48ca.mjs} +2 -3
- package/dist/input-group/index.mjs +1 -2
- package/dist/{input-group-DieA8aBt.mjs → input-group-CCzvJIZM.mjs} +5 -6
- package/dist/input-number/index.mjs +1 -2
- package/dist/{input-number-TXmW-X9o.mjs → input-number-DF-bfIo8.mjs} +5 -6
- package/dist/input-with-addons/index.mjs +2 -3
- package/dist/label/index.mjs +1 -2
- package/dist/{label-Bk6FXsju.mjs → label-BR1V3Imy.mjs} +3 -5
- package/dist/{layers-DWYdrGmC.mjs → layers-DLUbkJtt.mjs} +26 -27
- package/dist/loader-overlay/index.mjs +1 -2
- package/dist/{loader-overlay-DD94azZX.mjs → loader-overlay-DP0pvHuG.mjs} +3 -4
- package/dist/logo/index.mjs +2 -2
- package/dist/logo/themed/index.mjs +3 -4
- package/dist/{logo-C3FxD7jb.mjs → logo-CkzKra6H.mjs} +2 -3
- package/dist/{logo-text-Dpm5O6Kg.mjs → logo-text-B54YiEte.mjs} +6 -11
- package/dist/logs/fixtures/index.mjs +2 -4
- package/dist/logs/index.mjs +68 -87
- package/dist/map/index.mjs +1 -2
- package/dist/{map-leaflet-imports-S3kx8Q-S.mjs → map-leaflet-imports-Xdz9Xiaf.mjs} +1 -2
- package/dist/mobile-sheet/index.mjs +1 -2
- package/dist/{mobile-sheet-9TootJGg.mjs → mobile-sheet-1995HYY_.mjs} +6 -9
- package/dist/more-actions/index.mjs +2 -2
- package/dist/{more-actions-C3DYWO0a.mjs → more-actions-BlSOVwa8.mjs} +6 -7
- package/dist/{motion-DvGRWdsm.mjs → motion-DOrRbLmy.mjs} +1 -2
- package/dist/motion-chip-BczV7spP.mjs +52 -0
- package/dist/multi-select/index.mjs +1 -2
- package/dist/{multi-select-CF0Yq5yf.mjs → multi-select-C2cBrqXl.mjs} +61 -57
- package/dist/nprogress/index.mjs +1 -2
- package/dist/page-title/index.mjs +1 -2
- package/dist/{page-title-ipRWEOeM.mjs → page-title-Djl3LvPT.mjs} +2 -3
- package/dist/picker/index.mjs +2 -2
- package/dist/{picker-BoKXW6_s.mjs → picker-DC3GErYg.mjs} +14 -25
- package/dist/popover/index.mjs +1 -2
- package/dist/{popover-X82NwhX9.mjs → popover-7YxyP_W0.mjs} +3 -5
- package/dist/radio-group/index.mjs +1 -2
- package/dist/radio-group-Boxi2hm0.mjs +83 -0
- package/dist/responsive-dropdown/index.mjs +1 -2
- package/dist/{responsive-dropdown-C_KKgLbH.mjs → responsive-dropdown-DsWgpE_i.mjs} +5 -6
- package/dist/responsive-popover/index.mjs +1 -2
- package/dist/{responsive-popover-8VcjBM2d.mjs → responsive-popover-DJYd8lOK.mjs} +5 -6
- package/dist/rich-text-content/index.mjs +1 -2
- package/dist/{rich-text-content-DNonBD39.mjs → rich-text-content-BiIIowBU.mjs} +2 -3
- package/dist/rich-text-editor/index.mjs +2 -2
- package/dist/{rich-text-editor-CP1YyxMR.mjs → rich-text-editor-BUz06s-b.mjs} +14 -22
- package/dist/select/index.mjs +1 -2
- package/dist/{select-D4pk9e2d.mjs → select-DemYhwnG.mjs} +3 -4
- package/dist/{select-daE2Nn0Z.mjs → select-jgK6wyXj.mjs} +2 -3
- package/dist/separator/index.mjs +1 -2
- package/dist/{separator-vbPD_WFQ.mjs → separator-DNiiN2BN.mjs} +2 -3
- package/dist/settings-nav/index.mjs +1 -2
- package/dist/{settings-nav-Hf3GrCGv.mjs → settings-nav-CCZdPD-x.mjs} +2 -3
- package/dist/sheet/index.mjs +2 -2
- package/dist/{sheet-DHn6C_rs.mjs → sheet-DEpEJ_Rk.mjs} +4 -5
- package/dist/{sheet-DXCZyMHI.mjs → sheet-DYPtVIb2.mjs} +2 -3
- package/dist/sidebar/index.mjs +1 -2
- package/dist/{sidebar-sbqOOFii.mjs → sidebar-DWnxQWQ8.mjs} +13 -18
- package/dist/skeleton/index.mjs +3 -4
- package/dist/{skeleton-DFExK4GX.mjs → skeleton-CDPoo7-M.mjs} +2 -3
- package/dist/spinner/index.mjs +1 -2
- package/dist/spinner-DSlDJdWl.mjs +23 -0
- package/dist/spinner.icon-BiUnMAxw.mjs +104 -0
- package/dist/stepper/index.mjs +1 -2
- package/dist/{stepper-dNvkipop.mjs → stepper-ZipxpzWY.mjs} +10 -11
- package/dist/switch/index.mjs +1 -2
- package/dist/switch-IduVwiPZ.mjs +114 -0
- package/dist/table/index.mjs +2 -3
- package/dist/tabs/index.mjs +3 -4
- package/dist/tag-input/index.mjs +1 -2
- package/dist/{tag-input-c9OvWTSe.mjs → tag-input-a3ktkGrH.mjs} +46 -43
- package/dist/task-queue/index.mjs +1 -2
- package/dist/{task-queue-dropdown-CHPP5WIm.mjs → task-queue-dropdown-DuCAAybs.mjs} +39 -59
- package/dist/textarea/index.mjs +1 -2
- package/dist/{textarea-DiSGxCBO.mjs → textarea-CvhdK6JY.mjs} +3 -4
- package/dist/{textarea-CCxpXJdh.mjs → textarea-D36SE4ki.mjs} +2 -3
- package/dist/theme/index.mjs +1 -2
- package/dist/{themes-Ba2bajuF.mjs → themes-BoxnQbbu.mjs} +8 -10
- package/dist/time-picker/index.mjs +1 -2
- package/dist/{time-picker-DQlc2gKW.mjs → time-picker-B_am4eAK.mjs} +3 -4
- package/dist/{to-api-format-QuJ81vQ9.mjs → to-api-format-DyImCzCn.mjs} +15 -23
- package/dist/toast/index.mjs +2 -2
- package/dist/{toast-BUPlDkN3.mjs → toast-CizxCEcK.mjs} +4 -6
- package/dist/tooltip/index.mjs +1 -2
- package/dist/{tooltip-DhbN1BDK.mjs → tooltip-OIySjJWW.mjs} +3 -5
- package/dist/transfer/index.mjs +1 -2
- package/dist/{transfer-DsshYgIk.mjs → transfer-DGUeAQUL.mjs} +8 -14
- package/dist/{types-agDpVXBG.mjs → types-ChINrR8H.mjs} +7 -11
- package/dist/typography/index.mjs +1 -2
- package/dist/{typography-B1bpHKmV.mjs → typography-XFfN6PGD.mjs} +2 -3
- package/dist/{use-breakpoint-CwiUJSmk.mjs → use-breakpoint-zY_JYINK.mjs} +1 -2
- package/dist/{use-controllable-state-Dna7u3r9.mjs → use-controllable-state-DLeVgbAb.mjs} +1 -2
- package/dist/{use-copy-to-clipboard-DZDq_85T.mjs → use-copy-to-clipboard-CWKWHLxI.mjs} +1 -2
- package/dist/{use-debounced-search-input-yu_F0QBt.mjs → use-debounced-search-input-B4u28iLx.mjs} +1 -2
- package/dist/{use-deprecation-warning-DXrGc0jX.mjs → use-deprecation-warning-BS1V4IS5.mjs} +1 -2
- package/dist/{use-display-touched-CMEEv7aT.mjs → use-display-touched-BSq0Ninl.mjs} +3 -5
- package/dist/{use-option-picker-s2bUYwXC.mjs → use-option-picker-DXY2SNnT.mjs} +6 -9
- package/dist/{use-toast-Bpq0yJIT.mjs → use-toast-CZAZeS95.mjs} +3 -5
- package/dist/utils/index.mjs +3 -3
- package/dist/{utils-CA4QEIJ8.mjs → utils-CPJ5MCfd.mjs} +1 -2
- package/dist/{utils-Bu32wN-x.mjs → utils-CTIuhCOs.mjs} +1 -2
- package/dist/visually-hidden/index.mjs +1 -2
- package/dist/{visuallyhidden-D7L_qs8b.mjs → visuallyhidden-Mg4OsZ-l.mjs} +1 -2
- package/dist/{zod-helpers-YEhVo2S-.mjs → zod-helpers-JcfFVJJd.mjs} +1 -2
- package/package.json +20 -23
- package/dist/badge-DOZUr5DV.mjs +0 -183
- package/dist/checkbox-C6P12fio.mjs +0 -30
- package/dist/radio-group-LduBVTnh.mjs +0 -45
- package/dist/spinner-C5Xv-i2C.mjs +0 -14
- package/dist/spinner.icon-BYUMQ8H-.mjs +0 -48
- package/dist/switch-BaR-Vna4.mjs +0 -34
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
2
|
-
import { t as CloseIcon } from "./close.icon-
|
|
1
|
+
import { t as cn } from "./utils-CTIuhCOs.mjs";
|
|
2
|
+
import { t as CloseIcon } from "./close.icon-BCPmH4nN.mjs";
|
|
3
3
|
import { createElement } from "react";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { toast } from "sonner";
|
|
6
|
-
|
|
6
|
+
// src/components/features/toast/headless-toast.tsx
|
|
7
7
|
const variantAccentClass = {
|
|
8
8
|
message: "bg-toast-success-background text-toast-success-foreground",
|
|
9
9
|
info: "bg-toast-success-background text-toast-success-foreground",
|
|
@@ -57,8 +57,7 @@ function HeadlessToast({ variant, title, description, action, cancel, onDismiss
|
|
|
57
57
|
})
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
|
-
|
|
61
|
-
//#region src/components/features/toast/toast.ts
|
|
60
|
+
// src/components/features/toast/toast.ts
|
|
62
61
|
/**
|
|
63
62
|
* Normalize a sonner `action`/`cancel` option (which may be an object with
|
|
64
63
|
* `{ label, onClick }` or arbitrary ReactNode) into a `HeadlessToastAction`
|
|
@@ -119,5 +118,4 @@ const toast$1 = {
|
|
|
119
118
|
return show("warning", title, options);
|
|
120
119
|
}
|
|
121
120
|
};
|
|
122
|
-
//#endregion
|
|
123
121
|
export { toast$1 as t };
|
package/dist/tooltip/index.mjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { Tooltip };
|
|
1
|
+
export { t as Tooltip } from "../tooltip-OIySjJWW.mjs";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
1
|
+
import { t as cn } from "./utils-CTIuhCOs.mjs";
|
|
2
2
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
5
|
-
|
|
5
|
+
// ../shadcn/ui/tooltip.tsx
|
|
6
6
|
function TooltipProvider({ delayDuration = 0, ...props }) {
|
|
7
7
|
return /* @__PURE__ */ jsx(TooltipPrimitive.Provider, {
|
|
8
8
|
"data-slot": "tooltip-provider",
|
|
@@ -31,8 +31,7 @@ function TooltipContent$1({ className, sideOffset = 0, children, ...props }) {
|
|
|
31
31
|
children: [children, /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })]
|
|
32
32
|
}) });
|
|
33
33
|
}
|
|
34
|
-
|
|
35
|
-
//#region src/components/base/tooltip/tooltip.tsx
|
|
34
|
+
// src/components/base/tooltip/tooltip.tsx
|
|
36
35
|
const LONG_PRESS_DURATION = 500;
|
|
37
36
|
const AUTO_DISMISS_DURATION = 1500;
|
|
38
37
|
function TooltipContent({ className, arrowClassName, sideOffset = 0, children, ...props }) {
|
|
@@ -127,5 +126,4 @@ function Tooltip({ message, children, delayDuration = 200, side, align, sideOffs
|
|
|
127
126
|
})]
|
|
128
127
|
});
|
|
129
128
|
}
|
|
130
|
-
//#endregion
|
|
131
129
|
export { TooltipTrigger as a, TooltipProvider as i, Tooltip$1 as n, TooltipContent$1 as r, Tooltip as t };
|
package/dist/transfer/index.mjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { Transfer };
|
|
1
|
+
export { t as Transfer } from "../transfer-DGUeAQUL.mjs";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
2
|
-
import { t as Button } from "./button-
|
|
1
|
+
import { t as cn } from "./utils-CTIuhCOs.mjs";
|
|
2
|
+
import { t as Button } from "./button-Cn4KagBO.mjs";
|
|
3
3
|
import { Search, X } from "lucide-react";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
6
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
-
|
|
7
|
+
// src/components/features/transfer/components/transfer-group.tsx
|
|
8
8
|
const TransferGroup = ({ title, children }) => {
|
|
9
9
|
return /* @__PURE__ */ jsxs("div", {
|
|
10
10
|
className: "space-y-1",
|
|
@@ -14,8 +14,7 @@ const TransferGroup = ({ title, children }) => {
|
|
|
14
14
|
}), children]
|
|
15
15
|
});
|
|
16
16
|
};
|
|
17
|
-
|
|
18
|
-
//#region src/components/features/transfer/components/transfer-item.tsx
|
|
17
|
+
// src/components/features/transfer/components/transfer-item.tsx
|
|
19
18
|
const TransferItem = ({ label, onClick, disabled = false, panelType }) => {
|
|
20
19
|
return /* @__PURE__ */ jsxs("div", {
|
|
21
20
|
className: cn("group flex items-center gap-2 rounded p-2", "hover:bg-accent transition-colors", panelType === "source" && "cursor-pointer", disabled && "opacity-50 cursor-not-allowed"),
|
|
@@ -44,8 +43,7 @@ const TransferItem = ({ label, onClick, disabled = false, panelType }) => {
|
|
|
44
43
|
})]
|
|
45
44
|
});
|
|
46
45
|
};
|
|
47
|
-
|
|
48
|
-
//#region src/components/features/transfer/components/transfer-search.tsx
|
|
46
|
+
// src/components/features/transfer/components/transfer-search.tsx
|
|
49
47
|
const TransferSearch = ({ value, onChange, placeholder = "Search...", disabled = false }) => {
|
|
50
48
|
return /* @__PURE__ */ jsxs("div", {
|
|
51
49
|
className: "relative",
|
|
@@ -60,8 +58,7 @@ const TransferSearch = ({ value, onChange, placeholder = "Search...", disabled =
|
|
|
60
58
|
})]
|
|
61
59
|
});
|
|
62
60
|
};
|
|
63
|
-
|
|
64
|
-
//#region src/components/features/transfer/components/transfer-panel.tsx
|
|
61
|
+
// src/components/features/transfer/components/transfer-panel.tsx
|
|
65
62
|
const TransferPanel = ({ title, items, groups, searchable, searchValue, onSearchChange, searchPlaceholder, onItemClick, onSelectAll, enableSelectAll, disabled = false, panelType }) => {
|
|
66
63
|
const groupedItems = React.useMemo(() => {
|
|
67
64
|
if (groups.length === 0) return { "": items };
|
|
@@ -130,8 +127,7 @@ const TransferPanel = ({ title, items, groups, searchable, searchValue, onSearch
|
|
|
130
127
|
})]
|
|
131
128
|
});
|
|
132
129
|
};
|
|
133
|
-
|
|
134
|
-
//#region src/components/features/transfer/hooks/use-transfer-state.ts
|
|
130
|
+
// src/components/features/transfer/hooks/use-transfer-state.ts
|
|
135
131
|
function useTransferState({ items, value, itemKey, itemLabel, itemGroup }) {
|
|
136
132
|
const [sourceSearch, setSourceSearch] = useState("");
|
|
137
133
|
const [debouncedSourceSearch, setDebouncedSourceSearch] = useState("");
|
|
@@ -200,8 +196,7 @@ function useTransferState({ items, value, itemKey, itemLabel, itemGroup }) {
|
|
|
200
196
|
setSourceSearch
|
|
201
197
|
};
|
|
202
198
|
}
|
|
203
|
-
|
|
204
|
-
//#region src/components/features/transfer/transfer.tsx
|
|
199
|
+
// src/components/features/transfer/transfer.tsx
|
|
205
200
|
function Transfer({ items, value, onChange, itemKey, itemLabel, itemGroup, searchable = true, searchPlaceholder = "Search...", sourceTitle = "Available", targetTitle = "Selected", enableSelectAll = true, disabled = false, className }) {
|
|
206
201
|
const state = useTransferState({
|
|
207
202
|
items,
|
|
@@ -267,5 +262,4 @@ function Transfer({ items, value, onChange, itemKey, itemLabel, itemGroup, searc
|
|
|
267
262
|
});
|
|
268
263
|
}
|
|
269
264
|
Transfer.displayName = "Transfer";
|
|
270
|
-
//#endregion
|
|
271
265
|
export { Transfer as t };
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
1
|
+
import { t as cn } from "./utils-CTIuhCOs.mjs";
|
|
2
2
|
import { Tabs, TabsContent, TabsList, TabsTrigger } from "./tabs/index.mjs";
|
|
3
|
-
import { n as useTheme } from "./themes-
|
|
4
|
-
import { t as toast } from "./toast-
|
|
3
|
+
import { n as useTheme } from "./themes-BoxnQbbu.mjs";
|
|
4
|
+
import { t as toast } from "./toast-CizxCEcK.mjs";
|
|
5
5
|
import { useEffect, useRef, useState } from "react";
|
|
6
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
7
|
import Editor from "@monaco-editor/react";
|
|
8
8
|
import { CORE_SCHEMA, FAILSAFE_SCHEMA, dump, floatCoreTag, intCoreTag, load } from "js-yaml";
|
|
9
9
|
import { z } from "zod";
|
|
10
|
-
|
|
10
|
+
// src/components/features/code-editor/code-editor.tsx
|
|
11
11
|
/** Delay before the initial auto-format runs, giving Monaco time to settle. */
|
|
12
12
|
const AUTO_FORMAT_DELAY_MS = 300;
|
|
13
13
|
/**
|
|
@@ -125,8 +125,7 @@ function CodeEditor({ value, onChange, language, placeholder, id, name = "code-e
|
|
|
125
125
|
]
|
|
126
126
|
});
|
|
127
127
|
}
|
|
128
|
-
|
|
129
|
-
//#region src/components/features/code-editor/lib/editor.ts
|
|
128
|
+
// src/components/features/code-editor/lib/editor.ts
|
|
130
129
|
/**
|
|
131
130
|
* Wraps a numeric CORE scalar tag so that a token whose parsed number cannot be
|
|
132
131
|
* re-serialized without loss is preserved as its original string rather than a
|
|
@@ -208,8 +207,7 @@ function yamlToJson(yamlStr) {
|
|
|
208
207
|
throw new Error(`Invalid YAML format: ${error instanceof Error ? error.message : String(error)}`);
|
|
209
208
|
}
|
|
210
209
|
}
|
|
211
|
-
|
|
212
|
-
//#region src/components/features/code-editor/code-editor-tabs.tsx
|
|
210
|
+
// src/components/features/code-editor/code-editor-tabs.tsx
|
|
213
211
|
/**
|
|
214
212
|
* CodeEditorTabs - Dual-format code editor with JSON ↔ YAML conversion
|
|
215
213
|
*
|
|
@@ -363,8 +361,7 @@ function CodeEditorTabs({ value, onChange, format = "yaml", onFormatChange, erro
|
|
|
363
361
|
]
|
|
364
362
|
});
|
|
365
363
|
}
|
|
366
|
-
|
|
367
|
-
//#region src/components/features/code-editor/types.ts
|
|
364
|
+
// src/components/features/code-editor/types.ts
|
|
368
365
|
const jsonSchema = z.object({ jsonContent: z.string().min(1, "JSON content is required").refine(isValidJson, { message: "Invalid JSON format" }) });
|
|
369
366
|
const yamlSchema = z.object({ yamlContent: z.string().min(1, "YAML content is required").refine(isValidYaml, { message: "Invalid YAML format" }) });
|
|
370
367
|
function createCodeEditorSchema(name = "code-editor") {
|
|
@@ -385,5 +382,4 @@ function createCodeEditorSchema(name = "code-editor") {
|
|
|
385
382
|
});
|
|
386
383
|
});
|
|
387
384
|
}
|
|
388
|
-
//#endregion
|
|
389
385
|
export { formatJson as a, isValidYaml as c, CodeEditor as d, CodeEditorTabs as i, jsonToYaml as l, jsonSchema as n, formatYaml as o, yamlSchema as r, isValidJson as s, createCodeEditorSchema as t, yamlToJson as u };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { Blockquote, Code, Link, List, ListItem, Paragraph, Text, Title, paragraphVariants, textVariants, titleVariants };
|
|
1
|
+
export { t as Blockquote, n as Code, r as Link, i as List, a as ListItem, o as Paragraph, s as Text, c as Title, l as paragraphVariants, u as textVariants, d as titleVariants } from "../typography-XFfN6PGD.mjs";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
1
|
+
import { t as cn } from "./utils-CTIuhCOs.mjs";
|
|
2
2
|
import { cva } from "class-variance-authority";
|
|
3
3
|
import { CopyIcon } from "lucide-react";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
|
|
6
|
+
// src/components/base/typography/typography.tsx
|
|
7
7
|
const titleVariants = cva("font-semibold leading-tight tracking-tight", {
|
|
8
8
|
variants: {
|
|
9
9
|
level: {
|
|
@@ -205,5 +205,4 @@ function Code$1({ className, as = "code", children, ...props }) {
|
|
|
205
205
|
children
|
|
206
206
|
});
|
|
207
207
|
}
|
|
208
|
-
//#endregion
|
|
209
208
|
export { ListItem as a, Title as c, titleVariants as d, List as i, paragraphVariants as l, Code$1 as n, Paragraph as o, Link$1 as r, Text as s, Blockquote as t, textVariants as u };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useEffect, useState } from "react";
|
|
2
|
-
|
|
2
|
+
// src/hooks/use-breakpoint.ts
|
|
3
3
|
const TABLET_MIN = 768;
|
|
4
4
|
const DESKTOP_MIN = 1024;
|
|
5
5
|
function getBreakpoint() {
|
|
@@ -32,5 +32,4 @@ function useBreakpoint() {
|
|
|
32
32
|
}, []);
|
|
33
33
|
return breakpoint;
|
|
34
34
|
}
|
|
35
|
-
//#endregion
|
|
36
35
|
export { useBreakpoint as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useCallback, useState } from "react";
|
|
2
|
-
|
|
2
|
+
// src/components/base/hooks/use-controllable-state.ts
|
|
3
3
|
/**
|
|
4
4
|
* Uncontrolled-by-default state with an optional controlled override.
|
|
5
5
|
* When `controlled` is undefined the hook owns the value; otherwise the prop wins.
|
|
@@ -22,5 +22,4 @@ function useControllableState(controlled, defaultValue, onChange) {
|
|
|
22
22
|
value
|
|
23
23
|
])];
|
|
24
24
|
}
|
|
25
|
-
//#endregion
|
|
26
25
|
export { useControllableState as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
|
-
|
|
2
|
+
// src/hooks/use-copy-to-clipboard.ts
|
|
3
3
|
function useCopyToClipboard() {
|
|
4
4
|
const [isCopied, setIsCopied] = useState(false);
|
|
5
5
|
const timeoutRef = useRef(null);
|
|
@@ -31,5 +31,4 @@ function useCopyToClipboard() {
|
|
|
31
31
|
}
|
|
32
32
|
}, [])];
|
|
33
33
|
}
|
|
34
|
-
//#endregion
|
|
35
34
|
export { useCopyToClipboard as t };
|
package/dist/{use-debounced-search-input-yu_F0QBt.mjs → use-debounced-search-input-B4u28iLx.mjs}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useEffect, useState } from "react";
|
|
2
|
-
|
|
2
|
+
// src/hooks/use-debounced-search-input.ts
|
|
3
3
|
/** Default debounce delay for search inputs, in milliseconds. */
|
|
4
4
|
const DEFAULT_SEARCH_DEBOUNCE_MS = 300;
|
|
5
5
|
/**
|
|
@@ -33,5 +33,4 @@ function useDebouncedSearchInput(value, onChange, delay = 300) {
|
|
|
33
33
|
]);
|
|
34
34
|
return [inputValue, setInputValue];
|
|
35
35
|
}
|
|
36
|
-
//#endregion
|
|
37
36
|
export { useDebouncedSearchInput as n, DEFAULT_SEARCH_DEBOUNCE_MS as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useEffect } from "react";
|
|
2
|
-
|
|
2
|
+
// src/components/features/_shared/use-deprecation-warning.ts
|
|
3
3
|
const warned = /* @__PURE__ */ new Set();
|
|
4
4
|
/**
|
|
5
5
|
* Logs a one-time `console.warn` in development warning that the legacy
|
|
@@ -16,5 +16,4 @@ function useDeprecationWarning(legacyName, replacement) {
|
|
|
16
16
|
console.warn(`[datum-ui] ${legacyName} is deprecated. Use ${replacement} from '@datum-cloud/datum-ui/picker' instead. See picker-migration.mdx.`);
|
|
17
17
|
}, [legacyName, replacement]);
|
|
18
18
|
}
|
|
19
|
-
//#endregion
|
|
20
19
|
export { useDeprecationWarning as t };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { t as getObjectShape } from "./zod-helpers-
|
|
1
|
+
import { t as getObjectShape } from "./zod-helpers-JcfFVJJd.mjs";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import "zod";
|
|
4
|
-
|
|
4
|
+
// src/components/features/form/utils/get-field-constraints.ts
|
|
5
5
|
/**
|
|
6
6
|
* Extract field-level constraints from a Zod schema.
|
|
7
7
|
* Works with ZodObject, ZodIntersection (from .and()), and ZodPipe (from .transform()).
|
|
@@ -23,8 +23,7 @@ function isRequired(schema) {
|
|
|
23
23
|
if (type === "optional" || type === "nullable" || type === "default") return false;
|
|
24
24
|
return true;
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
//#region src/components/features/form/hooks/use-display-touched.ts
|
|
26
|
+
// src/components/features/form/hooks/use-display-touched.ts
|
|
28
27
|
/**
|
|
29
28
|
* Shared display-level touched tracking, independent of adapter-specific blur tracking.
|
|
30
29
|
*
|
|
@@ -54,5 +53,4 @@ function useDisplayTouched(schema) {
|
|
|
54
53
|
markAllFieldsTouched
|
|
55
54
|
};
|
|
56
55
|
}
|
|
57
|
-
//#endregion
|
|
58
56
|
export { getFieldConstraints as n, useDisplayTouched as t };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as
|
|
3
|
-
import { t as LoaderOverlay } from "./loader-overlay-
|
|
1
|
+
import { t as useControllableState } from "./use-controllable-state-DLeVgbAb.mjs";
|
|
2
|
+
import { a as CommandInput, i as CommandGroup, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "./command-B0be-zU5.mjs";
|
|
3
|
+
import { t as LoaderOverlay } from "./loader-overlay-DP0pvHuG.mjs";
|
|
4
4
|
import { CheckIcon } from "lucide-react";
|
|
5
5
|
import { useCallback, useMemo, useRef, useState } from "react";
|
|
6
6
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
7
7
|
import { useVirtualizer } from "@tanstack/react-virtual";
|
|
8
|
-
|
|
8
|
+
// src/components/base/option-picker/types.ts
|
|
9
9
|
/**
|
|
10
10
|
* Detect whether an options prop is grouped.
|
|
11
11
|
*
|
|
@@ -25,8 +25,7 @@ function isGroupedOptions(options) {
|
|
|
25
25
|
function flattenOptions(options) {
|
|
26
26
|
return isGroupedOptions(options) ? options.flatMap((g) => g.options) : options;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
//#region src/components/base/option-picker/option-list.tsx
|
|
28
|
+
// src/components/base/option-picker/option-list.tsx
|
|
30
29
|
function defaultRenderOption(option, isSelected) {
|
|
31
30
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs("div", {
|
|
32
31
|
className: "flex min-w-0 flex-1 flex-col",
|
|
@@ -130,8 +129,7 @@ function VirtualCommandGroup({ options, isSelected, toggle, renderOption, listRe
|
|
|
130
129
|
})
|
|
131
130
|
}) });
|
|
132
131
|
}
|
|
133
|
-
|
|
134
|
-
//#region src/components/base/option-picker/use-option-picker.ts
|
|
132
|
+
// src/components/base/option-picker/use-option-picker.ts
|
|
135
133
|
function useOptionPicker(args) {
|
|
136
134
|
const { options, multiple, value, defaultValue, onValueChange, onSearchChange, creatable = false, creatableLabel, closeOnSelect = true, onOpenChange, getOptionValue: getOptionValueProp, getOptionLabel: getOptionLabelProp } = args;
|
|
137
135
|
const getOptionValue = useMemo(() => getOptionValueProp ?? ((o) => o.value), [getOptionValueProp]);
|
|
@@ -234,5 +232,4 @@ function useOptionPicker(args) {
|
|
|
234
232
|
listRef: useRef(null)
|
|
235
233
|
};
|
|
236
234
|
}
|
|
237
|
-
//#endregion
|
|
238
235
|
export { OptionList as n, useOptionPicker as t };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as toast$1 } from "./toast-
|
|
1
|
+
import { t as toast$1 } from "./toast-CizxCEcK.mjs";
|
|
2
2
|
import { useEffect } from "react";
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
import { Toaster } from "sonner";
|
|
5
|
-
|
|
5
|
+
// src/components/features/toast/toaster.tsx
|
|
6
6
|
/**
|
|
7
7
|
* Sonner Toaster configured for "headless" usage.
|
|
8
8
|
*
|
|
@@ -17,8 +17,7 @@ function Toaster$1({ toastOptions, ...props }) {
|
|
|
17
17
|
...props
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
|
-
|
|
21
|
-
//#region src/components/features/toast/use-toast.ts
|
|
20
|
+
// src/components/features/toast/use-toast.ts
|
|
22
21
|
/**
|
|
23
22
|
* Sonner is a toast library for React.
|
|
24
23
|
* Implementation based on github.com/epicweb-dev/epic-stack
|
|
@@ -40,5 +39,4 @@ function useToast(toastData) {
|
|
|
40
39
|
return () => clearTimeout(timer);
|
|
41
40
|
}, [toastData]);
|
|
42
41
|
}
|
|
43
|
-
//#endregion
|
|
44
42
|
export { Toaster$1 as n, useToast as t };
|
package/dist/utils/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as cn } from "../utils-
|
|
2
|
-
import { n as EASE, t as DURATION } from "../motion-
|
|
3
|
-
import { n as toUTCTimestampStartOfDay, t as toUTCTimestampEndOfDay } from "../utils-
|
|
1
|
+
import { t as cn } from "../utils-CTIuhCOs.mjs";
|
|
2
|
+
import { n as EASE, t as DURATION } from "../motion-DOrRbLmy.mjs";
|
|
3
|
+
import { n as toUTCTimestampStartOfDay, t as toUTCTimestampEndOfDay } from "../utils-CPJ5MCfd.mjs";
|
|
4
4
|
export { DURATION, EASE, cn, toUTCTimestampEndOfDay, toUTCTimestampStartOfDay };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { fromZonedTime, toZonedTime } from "date-fns-tz";
|
|
2
2
|
import { endOfDay, startOfDay } from "date-fns";
|
|
3
|
-
|
|
3
|
+
// src/utils/timezone.ts
|
|
4
4
|
/**
|
|
5
5
|
* Timezone-aware conversion utilities for date filters.
|
|
6
6
|
*
|
|
@@ -35,5 +35,4 @@ function toUTCTimestampEndOfDay(date, timezone) {
|
|
|
35
35
|
const utcDate = fromZonedTime(endOfDayInTz, timezone);
|
|
36
36
|
return Math.floor(utcDate.getTime() / 1e3);
|
|
37
37
|
}
|
|
38
|
-
//#endregion
|
|
39
38
|
export { toUTCTimestampStartOfDay as n, toUTCTimestampEndOfDay as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { clsx } from "clsx";
|
|
2
2
|
import { twMerge } from "tailwind-merge";
|
|
3
|
-
|
|
3
|
+
// ../shadcn/lib/utils.ts
|
|
4
4
|
/**
|
|
5
5
|
* shadcn/ui Utilities
|
|
6
6
|
* Combines multiple class names using clsx and tailwind-merge
|
|
@@ -14,5 +14,4 @@ import { twMerge } from "tailwind-merge";
|
|
|
14
14
|
function cn(...inputs) {
|
|
15
15
|
return twMerge(clsx(inputs));
|
|
16
16
|
}
|
|
17
|
-
//#endregion
|
|
18
17
|
export { cn as t };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { VisuallyHidden };
|
|
1
|
+
export { t as VisuallyHidden } from "../visuallyhidden-Mg4OsZ-l.mjs";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/features/form/utils/zod-helpers.ts
|
|
2
2
|
/**
|
|
3
3
|
* Extract the shape from a ZodObject, ZodIntersection, or ZodPipe.
|
|
4
4
|
* Uses Zod v4's `def.type` discriminant.
|
|
@@ -23,5 +23,4 @@ function getObjectShape(schema) {
|
|
|
23
23
|
if (def.type === "pipe") return getObjectShape(def.in);
|
|
24
24
|
return null;
|
|
25
25
|
}
|
|
26
|
-
//#endregion
|
|
27
26
|
export { getObjectShape as t };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@datum-cloud/datum-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.8.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"url": "https://github.com/datum-cloud/datum-ui"
|
|
@@ -478,7 +478,7 @@
|
|
|
478
478
|
"recharts": ">=3 <4",
|
|
479
479
|
"sonner": ">=2.0.7 <3",
|
|
480
480
|
"streamdown": ">=2 <3",
|
|
481
|
-
"zod": ">=4 <5"
|
|
481
|
+
"zod": ">=4.6.6 <5"
|
|
482
482
|
},
|
|
483
483
|
"peerDependenciesMeta": {
|
|
484
484
|
"@conform-to/react": {
|
|
@@ -559,9 +559,6 @@
|
|
|
559
559
|
"monaco-editor": {
|
|
560
560
|
"optional": true
|
|
561
561
|
},
|
|
562
|
-
"motion": {
|
|
563
|
-
"optional": true
|
|
564
|
-
},
|
|
565
562
|
"nprogress": {
|
|
566
563
|
"optional": true
|
|
567
564
|
},
|
|
@@ -600,6 +597,7 @@
|
|
|
600
597
|
}
|
|
601
598
|
},
|
|
602
599
|
"dependencies": {
|
|
600
|
+
"@datum-cloud/datum-ui-assistant-core": "^0.1.0",
|
|
603
601
|
"@radix-ui/react-avatar": "^1.2.6",
|
|
604
602
|
"@radix-ui/react-checkbox": "^1.3.11",
|
|
605
603
|
"@radix-ui/react-collapsible": "^1.1.20",
|
|
@@ -619,17 +617,16 @@
|
|
|
619
617
|
"class-variance-authority": "^0.7.1",
|
|
620
618
|
"clsx": "^2.1.1",
|
|
621
619
|
"cmdk": "^1.1.1",
|
|
622
|
-
"isomorphic-dompurify": "^3.
|
|
623
|
-
"tailwind-merge": "^3.
|
|
624
|
-
"tw-animate-css": "^1.4.0"
|
|
625
|
-
"@datum-cloud/datum-ui-assistant-core": "^0.1.0"
|
|
620
|
+
"isomorphic-dompurify": "^3.23.0",
|
|
621
|
+
"tailwind-merge": "^3.7.0",
|
|
622
|
+
"tw-animate-css": "^1.4.0"
|
|
626
623
|
},
|
|
627
624
|
"devDependencies": {
|
|
628
625
|
"@conform-to/react": "^1.21.0",
|
|
629
626
|
"@conform-to/zod": "^1.21.0",
|
|
630
627
|
"@dnd-kit/core": "^6.3.1",
|
|
631
628
|
"@dnd-kit/sortable": "^10.0.0",
|
|
632
|
-
"@hookform/resolvers": "^5.
|
|
629
|
+
"@hookform/resolvers": "^5.9.2",
|
|
633
630
|
"@monaco-editor/react": "^4.7.0",
|
|
634
631
|
"@stepperize/react": "^7.0.0",
|
|
635
632
|
"@streamdown/code": "^1.1.1",
|
|
@@ -651,25 +648,25 @@
|
|
|
651
648
|
"@types/nprogress": "^0.2.3",
|
|
652
649
|
"@types/react": "^19.2.18",
|
|
653
650
|
"@types/react-dom": "^19.2.4",
|
|
654
|
-
"@vitest/coverage-v8": "^4.1.
|
|
655
|
-
"ai": "^7.0.
|
|
651
|
+
"@vitest/coverage-v8": "^4.1.12",
|
|
652
|
+
"ai": "^7.0.162",
|
|
656
653
|
"date-fns": "^4.4.0",
|
|
657
654
|
"date-fns-tz": "^3.2.0",
|
|
658
655
|
"eslint": "^10.8.1",
|
|
659
|
-
"js-yaml": "^5.
|
|
660
|
-
"jsdom": "^30.
|
|
656
|
+
"js-yaml": "^5.5.0",
|
|
657
|
+
"jsdom": "^30.1.3",
|
|
661
658
|
"leaflet": "^1.9.4",
|
|
662
659
|
"leaflet-draw": "^1.0.4",
|
|
663
660
|
"leaflet.fullscreen": "^5.3.3",
|
|
664
661
|
"leaflet.markercluster": "^1.5.3",
|
|
665
662
|
"lucide-react": "^1.31.0",
|
|
666
|
-
"monaco-editor": "^0.
|
|
667
|
-
"motion": "^13.1
|
|
663
|
+
"monaco-editor": "^0.57.0",
|
|
664
|
+
"motion": "^13.5.1",
|
|
668
665
|
"nprogress": "^0.2.0",
|
|
669
|
-
"nuqs": "^2.
|
|
670
|
-
"react": "^19.
|
|
666
|
+
"nuqs": "^2.10.2",
|
|
667
|
+
"react": "^19.3.1",
|
|
671
668
|
"react-day-picker": "^10.0.1",
|
|
672
|
-
"react-dom": "^19.
|
|
669
|
+
"react-dom": "^19.3.1",
|
|
673
670
|
"react-dropzone": "^20.1.0",
|
|
674
671
|
"react-hook-form": "^7.85.0",
|
|
675
672
|
"react-leaflet": "^5.0.0",
|
|
@@ -677,12 +674,12 @@
|
|
|
677
674
|
"react-number-format": "^5.4.5",
|
|
678
675
|
"recharts": "^3.10.1",
|
|
679
676
|
"sonner": "^2.0.8",
|
|
680
|
-
"streamdown": "^2.
|
|
677
|
+
"streamdown": "^2.7.1",
|
|
681
678
|
"tailwindcss": "^4.3.3",
|
|
682
|
-
"tsdown": "^0.
|
|
679
|
+
"tsdown": "^0.23.5",
|
|
683
680
|
"typescript": "^6.0.3",
|
|
684
|
-
"vitest": "^4.1.
|
|
685
|
-
"zod": "^4.
|
|
681
|
+
"vitest": "^4.1.12",
|
|
682
|
+
"zod": "^4.6.7"
|
|
686
683
|
},
|
|
687
684
|
"publishConfig": {
|
|
688
685
|
"access": "public"
|