@satoshibits/react-json-schema-builder 1.1.3 → 1.1.5

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.
Files changed (196) hide show
  1. package/dist/index.cjs.js +1 -1
  2. package/dist/index.cjs10.js +1 -1
  3. package/dist/index.cjs10.js.map +1 -1
  4. package/dist/index.cjs11.js +1 -1
  5. package/dist/index.cjs11.js.map +1 -1
  6. package/dist/index.cjs12.js +1 -1
  7. package/dist/index.cjs12.js.map +1 -1
  8. package/dist/index.cjs13.js +1 -1
  9. package/dist/index.cjs13.js.map +1 -1
  10. package/dist/index.cjs14.js +1 -1
  11. package/dist/index.cjs14.js.map +1 -1
  12. package/dist/index.cjs15.js +6 -1
  13. package/dist/index.cjs15.js.map +1 -1
  14. package/dist/index.cjs16.js +1 -1
  15. package/dist/index.cjs16.js.map +1 -1
  16. package/dist/index.cjs17.js +1 -1
  17. package/dist/index.cjs17.js.map +1 -1
  18. package/dist/index.cjs18.js +1 -1
  19. package/dist/index.cjs18.js.map +1 -1
  20. package/dist/index.cjs19.js +1 -1
  21. package/dist/index.cjs19.js.map +1 -1
  22. package/dist/index.cjs2.js +1 -1
  23. package/dist/index.cjs2.js.map +1 -1
  24. package/dist/index.cjs20.js +1 -1
  25. package/dist/index.cjs20.js.map +1 -1
  26. package/dist/index.cjs21.js +1 -1
  27. package/dist/index.cjs21.js.map +1 -1
  28. package/dist/index.cjs22.js +1 -1
  29. package/dist/index.cjs22.js.map +1 -1
  30. package/dist/index.cjs23.js +1 -6
  31. package/dist/index.cjs23.js.map +1 -1
  32. package/dist/index.cjs24.js +1 -6
  33. package/dist/index.cjs24.js.map +1 -1
  34. package/dist/index.cjs25.js +1 -6
  35. package/dist/index.cjs25.js.map +1 -1
  36. package/dist/index.cjs26.js +1 -1
  37. package/dist/index.cjs26.js.map +1 -1
  38. package/dist/index.cjs27.js +1 -1
  39. package/dist/index.cjs27.js.map +1 -1
  40. package/dist/index.cjs28.js +6 -1
  41. package/dist/index.cjs28.js.map +1 -1
  42. package/dist/index.cjs29.js +6 -1
  43. package/dist/index.cjs29.js.map +1 -1
  44. package/dist/index.cjs3.js +1 -1
  45. package/dist/index.cjs3.js.map +1 -1
  46. package/dist/index.cjs30.js +1 -1
  47. package/dist/index.cjs30.js.map +1 -1
  48. package/dist/index.cjs31.js +1 -1
  49. package/dist/index.cjs34.js +1 -1
  50. package/dist/index.cjs36.js +1 -1
  51. package/dist/index.cjs37.js +1 -1
  52. package/dist/index.cjs38.js +1 -1
  53. package/dist/index.cjs39.js +1 -1
  54. package/dist/index.cjs4.js +1 -1
  55. package/dist/index.cjs4.js.map +1 -1
  56. package/dist/index.cjs41.js +1 -1
  57. package/dist/index.cjs42.js +1 -1
  58. package/dist/index.cjs42.js.map +1 -1
  59. package/dist/index.cjs43.js +1 -1
  60. package/dist/index.cjs47.js +1 -1
  61. package/dist/index.cjs5.js +1 -1
  62. package/dist/index.cjs5.js.map +1 -1
  63. package/dist/index.cjs55.js +1 -5
  64. package/dist/index.cjs55.js.map +1 -1
  65. package/dist/index.cjs56.js +1 -1
  66. package/dist/index.cjs56.js.map +1 -1
  67. package/dist/index.cjs57.js +1 -1
  68. package/dist/index.cjs57.js.map +1 -1
  69. package/dist/index.cjs58.js +1 -1
  70. package/dist/index.cjs58.js.map +1 -1
  71. package/dist/index.cjs59.js +1 -1
  72. package/dist/index.cjs59.js.map +1 -1
  73. package/dist/index.cjs6.js +1 -1
  74. package/dist/index.cjs6.js.map +1 -1
  75. package/dist/index.cjs60.js +1 -1
  76. package/dist/index.cjs60.js.map +1 -1
  77. package/dist/index.cjs61.js +1 -1
  78. package/dist/index.cjs61.js.map +1 -1
  79. package/dist/index.cjs62.js +5 -1
  80. package/dist/index.cjs62.js.map +1 -1
  81. package/dist/index.cjs63.js +1 -1
  82. package/dist/index.cjs63.js.map +1 -1
  83. package/dist/index.cjs65.js +1 -1
  84. package/dist/index.cjs67.js +1 -1
  85. package/dist/index.cjs69.js +1 -1
  86. package/dist/index.cjs7.js +1 -1
  87. package/dist/index.cjs7.js.map +1 -1
  88. package/dist/index.cjs71.js +1 -1
  89. package/dist/index.cjs72.js +1 -1
  90. package/dist/index.cjs75.js +1 -1
  91. package/dist/index.cjs78.js +1 -1
  92. package/dist/index.cjs8.js +1 -1
  93. package/dist/index.cjs8.js.map +1 -1
  94. package/dist/index.cjs81.js +1 -1
  95. package/dist/index.cjs9.js +1 -1
  96. package/dist/index.cjs9.js.map +1 -1
  97. package/dist/index.d.mts +5 -4
  98. package/dist/index.d.mts.map +1 -1
  99. package/dist/index.es.js +18 -28
  100. package/dist/index.es10.js +22 -22
  101. package/dist/index.es10.js.map +1 -1
  102. package/dist/index.es11.js +14 -42
  103. package/dist/index.es11.js.map +1 -1
  104. package/dist/index.es12.js +5 -65
  105. package/dist/index.es12.js.map +1 -1
  106. package/dist/index.es13.js +43 -24
  107. package/dist/index.es13.js.map +1 -1
  108. package/dist/index.es14.js +21 -126
  109. package/dist/index.es14.js.map +1 -1
  110. package/dist/index.es15.js +13 -20
  111. package/dist/index.es15.js.map +1 -1
  112. package/dist/index.es16.js +129 -130
  113. package/dist/index.es16.js.map +1 -1
  114. package/dist/index.es17.js +3 -137
  115. package/dist/index.es17.js.map +1 -1
  116. package/dist/index.es18.js +20 -61
  117. package/dist/index.es18.js.map +1 -1
  118. package/dist/index.es19.js +65 -10
  119. package/dist/index.es19.js.map +1 -1
  120. package/dist/index.es2.js +156 -113
  121. package/dist/index.es2.js.map +1 -1
  122. package/dist/index.es20.js +134 -22
  123. package/dist/index.es20.js.map +1 -1
  124. package/dist/index.es21.js +131 -421
  125. package/dist/index.es21.js.map +1 -1
  126. package/dist/index.es22.js +63 -5
  127. package/dist/index.es22.js.map +1 -1
  128. package/dist/index.es23.js +11 -13
  129. package/dist/index.es23.js.map +1 -1
  130. package/dist/index.es24.js +23 -16
  131. package/dist/index.es24.js.map +1 -1
  132. package/dist/index.es25.js +428 -13
  133. package/dist/index.es25.js.map +1 -1
  134. package/dist/index.es26.js +7 -13
  135. package/dist/index.es26.js.map +1 -1
  136. package/dist/index.es27.js +9 -3
  137. package/dist/index.es27.js.map +1 -1
  138. package/dist/index.es28.js +13 -19
  139. package/dist/index.es28.js.map +1 -1
  140. package/dist/index.es29.js +19 -23
  141. package/dist/index.es29.js.map +1 -1
  142. package/dist/index.es3.js +129 -340
  143. package/dist/index.es3.js.map +1 -1
  144. package/dist/index.es30.js +4 -7
  145. package/dist/index.es30.js.map +1 -1
  146. package/dist/index.es31.js +1 -1
  147. package/dist/index.es34.js +1 -1
  148. package/dist/index.es36.js +7 -7
  149. package/dist/index.es37.js +3 -3
  150. package/dist/index.es38.js +3 -3
  151. package/dist/index.es39.js +2 -2
  152. package/dist/index.es4.js +92 -70
  153. package/dist/index.es4.js.map +1 -1
  154. package/dist/index.es41.js +2 -2
  155. package/dist/index.es42.js +4 -4
  156. package/dist/index.es43.js +6 -6
  157. package/dist/index.es47.js +4 -4
  158. package/dist/index.es5.js +225 -79
  159. package/dist/index.es5.js.map +1 -1
  160. package/dist/index.es55.js +30 -252
  161. package/dist/index.es55.js.map +1 -1
  162. package/dist/index.es56.js +26 -21
  163. package/dist/index.es56.js.map +1 -1
  164. package/dist/index.es57.js +6 -32
  165. package/dist/index.es57.js.map +1 -1
  166. package/dist/index.es58.js +62 -23
  167. package/dist/index.es58.js.map +1 -1
  168. package/dist/index.es59.js +29 -6
  169. package/dist/index.es59.js.map +1 -1
  170. package/dist/index.es6.js +117 -57
  171. package/dist/index.es6.js.map +1 -1
  172. package/dist/index.es60.js +4 -64
  173. package/dist/index.es60.js.map +1 -1
  174. package/dist/index.es61.js +24 -29
  175. package/dist/index.es61.js.map +1 -1
  176. package/dist/index.es62.js +254 -5
  177. package/dist/index.es62.js.map +1 -1
  178. package/dist/index.es63.js +21 -24
  179. package/dist/index.es63.js.map +1 -1
  180. package/dist/index.es65.js +2 -2
  181. package/dist/index.es67.js +3 -3
  182. package/dist/index.es69.js +2 -2
  183. package/dist/index.es7.js +345 -48
  184. package/dist/index.es7.js.map +1 -1
  185. package/dist/index.es71.js +4 -4
  186. package/dist/index.es72.js +1 -1
  187. package/dist/index.es75.js +1 -1
  188. package/dist/index.es78.js +1 -1
  189. package/dist/index.es8.js +73 -163
  190. package/dist/index.es8.js.map +1 -1
  191. package/dist/index.es81.js +1 -1
  192. package/dist/index.es9.js +18 -3
  193. package/dist/index.es9.js.map +1 -1
  194. package/dist/packages/builder/add-dialog.d.ts +5 -5
  195. package/dist/packages/builder/context.d.ts.map +1 -1
  196. package/package.json +1 -1
@@ -1,138 +1,137 @@
1
- import { jsx as s, jsxs as u } from "react/jsx-runtime";
2
- import { useMemo as R, useEffect as V } from "react";
3
- import { Button as A } from "./index.es11.js";
4
- import { Dialog as $, DialogContent as N, DialogHeader as j, DialogTitle as w, DialogDescription as E, DialogFooter as I } from "./index.es37.js";
5
- import { Label as L } from "./index.es15.js";
6
- import { a as d } from "./index.es10.js";
7
- import { useConstraints as _ } from "./index.es4.js";
8
- import k from "./index.es38.js";
9
- import { Separator as z } from "./index.es39.js";
10
- import { AddFormSchema as B } from "./index.es21.js";
11
- import { useForm as H } from "react-hook-form";
12
- import { zodResolver as M } from "./index.es40.js";
13
- import { Form as O } from "./index.es41.js";
14
- const P = B.pick({
15
- constraints: !0,
16
- property: !0
17
- });
18
- function et({
19
- open: p,
20
- onOpenChange: f,
21
- onSubmit: h,
22
- property: i,
23
- propertyKey: g
1
+ import { jsx as e, jsxs as o } from "react/jsx-runtime";
2
+ import { Root as i, Trigger as d, Icon as c, Value as u, Portal as m, Content as p, Viewport as f, Item as g, ItemIndicator as v, ItemText as h, ScrollUpButton as x, ScrollDownButton as b } from "./index.es43.js";
3
+ import { cn as r } from "./index.es12.js";
4
+ import n from "./index.es44.js";
5
+ import w from "./index.es45.js";
6
+ import y from "./index.es46.js";
7
+ function B({
8
+ ...t
24
9
  }) {
25
- const e = H({
26
- resolver: M(P),
27
- defaultValues: {
28
- property: i
10
+ return /* @__PURE__ */ e(i, { "data-slot": "select", ...t });
11
+ }
12
+ function D({
13
+ ...t
14
+ }) {
15
+ return /* @__PURE__ */ e(u, { "data-slot": "select-value", ...t });
16
+ }
17
+ function T({
18
+ className: t,
19
+ children: a,
20
+ ...s
21
+ }) {
22
+ return /* @__PURE__ */ o(
23
+ d,
24
+ {
25
+ "data-slot": "select-trigger",
26
+ "data-testid": "select-trigger",
27
+ className: r(
28
+ "border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive flex h-9 w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
29
+ t
30
+ ),
31
+ ...s,
32
+ children: [
33
+ a,
34
+ /* @__PURE__ */ e(c, { asChild: !0, children: /* @__PURE__ */ e(n, { className: "size-4 opacity-50" }) })
35
+ ]
36
+ }
37
+ );
38
+ }
39
+ function U({
40
+ className: t,
41
+ children: a,
42
+ position: s = "popper",
43
+ ...l
44
+ }) {
45
+ return /* @__PURE__ */ e(m, { children: /* @__PURE__ */ o(
46
+ p,
47
+ {
48
+ "data-slot": "select-content",
49
+ className: r(
50
+ "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md",
51
+ s === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
52
+ t
53
+ ),
54
+ position: s,
55
+ ...l,
56
+ children: [
57
+ /* @__PURE__ */ e(z, {}),
58
+ /* @__PURE__ */ e(
59
+ f,
60
+ {
61
+ className: r(
62
+ "p-1",
63
+ s === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
64
+ ),
65
+ children: a
66
+ }
67
+ ),
68
+ /* @__PURE__ */ e(N, {})
69
+ ]
29
70
  }
30
- }), m = e.watch("constraints"), {
31
- getConstraintDefinitionsForType: C,
32
- getRendererForConstraint: y,
33
- validateConstraintValue: v
34
- } = _(), D = (t) => {
35
- const { constraints: r } = t, a = {
36
- ...r?.reduce((n, o) => ({
37
- ...n,
38
- [o.name]: o.value
39
- }), {})
40
- };
41
- h([g, a]), e.reset();
42
- }, S = (t, r) => {
43
- const a = d(m), n = a?.[t];
44
- if (!n) {
45
- e.setError(`constraints.${t}`, {
46
- message: "The constraint was not found",
47
- type: "constraint_not_found"
48
- });
49
- return;
71
+ ) });
72
+ }
73
+ function V({
74
+ className: t,
75
+ children: a,
76
+ ...s
77
+ }) {
78
+ return /* @__PURE__ */ o(
79
+ g,
80
+ {
81
+ "data-slot": "select-item",
82
+ className: r(
83
+ "focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
84
+ t
85
+ ),
86
+ ...s,
87
+ children: [
88
+ /* @__PURE__ */ e("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ e(v, { children: /* @__PURE__ */ e(w, { className: "size-4" }) }) }),
89
+ /* @__PURE__ */ e(h, { children: a })
90
+ ]
91
+ }
92
+ );
93
+ }
94
+ function z({
95
+ className: t,
96
+ ...a
97
+ }) {
98
+ return /* @__PURE__ */ e(
99
+ x,
100
+ {
101
+ "data-slot": "select-scroll-up-button",
102
+ className: r(
103
+ "flex cursor-default items-center justify-center py-1",
104
+ t
105
+ ),
106
+ ...a,
107
+ children: /* @__PURE__ */ e(y, { className: "size-4" })
50
108
  }
51
- const o = v(
52
- n.name,
53
- r
54
- );
55
- if (o.status === "error") {
56
- let c = o.message;
57
- o.code === "invalid" && (c = `${c}: ${o.error?.map((b) => b.message).join(", ")}`), e.setError(`constraints.${t}`, {
58
- type: o.code,
59
- message: c
60
- });
61
- return;
109
+ );
110
+ }
111
+ function N({
112
+ className: t,
113
+ ...a
114
+ }) {
115
+ return /* @__PURE__ */ e(
116
+ b,
117
+ {
118
+ "data-slot": "select-scroll-down-button",
119
+ className: r(
120
+ "flex cursor-default items-center justify-center py-1",
121
+ t
122
+ ),
123
+ ...a,
124
+ children: /* @__PURE__ */ e(n, { className: "size-4" })
62
125
  }
63
- n.value = r, e.setValue("constraints", a), e.clearErrors(`constraints.${t}`);
64
- }, F = (t) => {
65
- if (!m) return;
66
- const a = d(m).filter((n) => n.name !== t);
67
- e.setValue("constraints", a);
68
- }, l = R(() => C(
69
- typeof i?.type == "string" ? i.type : ""
70
- ), [i.type]);
71
- return V(() => {
72
- const t = [];
73
- for (const r of l)
74
- r.name in i && t.push({
75
- name: r.name,
76
- value: i[r.name]
77
- });
78
- e.setValue("constraints", t);
79
- }, [l]), /* @__PURE__ */ s($, { open: p, onOpenChange: f, children: /* @__PURE__ */ u(N, { children: [
80
- /* @__PURE__ */ u(j, { children: [
81
- /* @__PURE__ */ s(w, { children: "Edit" }),
82
- /* @__PURE__ */ s(E, { children: "Constraints and other properties" })
83
- ] }),
84
- /* @__PURE__ */ s(O, { ...e, children: /* @__PURE__ */ u(
85
- "form",
86
- {
87
- onSubmit: e.handleSubmit(D),
88
- className: "space-y-4",
89
- "data-testid": "edit-property-form",
90
- children: [
91
- l.length ? /* @__PURE__ */ u("div", { className: "space-y-2", children: [
92
- /* @__PURE__ */ s(L, { children: "Constraints" }),
93
- /* @__PURE__ */ s(
94
- k,
95
- {
96
- addedConstraints: m ?? [],
97
- availableDefinitions: l,
98
- onAdd: (t) => {
99
- e.setValue("constraints", t);
100
- }
101
- }
102
- ),
103
- /* @__PURE__ */ s(z, {}),
104
- m?.map((t, r) => {
105
- const a = y(t.name);
106
- if (!a) return null;
107
- const n = e.formState.errors.constraints?.[r];
108
- let o;
109
- return n && (o = {
110
- code: n?.type ?? "INVALID",
111
- message: n.message ?? "An error occurred"
112
- }), /* @__PURE__ */ s(
113
- a,
114
- {
115
- constraintName: t.name,
116
- value: t.value,
117
- onConstraintChange: (c) => {
118
- S(r, c);
119
- },
120
- onRemoveConstraint: () => {
121
- F(t.name);
122
- },
123
- error: o
124
- },
125
- t.name
126
- );
127
- })
128
- ] }) : null,
129
- /* @__PURE__ */ s(I, { children: /* @__PURE__ */ s(A, { type: "submit", children: "Save" }) })
130
- ]
131
- }
132
- ) })
133
- ] }) });
126
+ );
134
127
  }
135
128
  export {
136
- et as EditPropertyDialog
129
+ B as Select,
130
+ U as SelectContent,
131
+ V as SelectItem,
132
+ N as SelectScrollDownButton,
133
+ z as SelectScrollUpButton,
134
+ T as SelectTrigger,
135
+ D as SelectValue
137
136
  };
138
137
  //# sourceMappingURL=index.es16.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es16.js","sources":["../src/packages/builder/edit-dialog.tsx"],"sourcesContent":["import { useEffect, useMemo } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogFooter,\n DialogDescription,\n} from \"@/components/ui/dialog\";\nimport { Label } from \"@/components/ui/label\";\n\nimport type { JSONSchema7 } from \"json-schema\";\nimport { clone } from \"remeda\";\nimport { Constraint, useConstraints } from \"@/packages/constraints/context\";\nimport ConstraintsAdd from \"@/packages/constraints/constraint-add\";\nimport { Separator } from \"@/components/ui/separator\";\nimport { z } from \"zod\";\nimport { AddFormSchema } from \"./add-dialog\";\nimport { useForm } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport { OperationError } from \"./shared-types\";\nimport { Form } from \"@/components/ui/form\";\nimport { useSchema } from \"./context\";\n\nexport interface EditPropertyDialogProps {\n property: JSONSchema7;\n propertyKey: string;\n open: boolean;\n onOpenChange: (open: boolean) => void;\n onSubmit: (\n params: Parameters<ReturnType<typeof useSchema>[\"handlePropertyChange\"]>,\n ) => void;\n}\n\nconst EditFormSchema = AddFormSchema.pick({\n constraints: true,\n property: true,\n});\n\n/**\n * Handles editing a constraints and other properties of a JSON schema property\n * that aren't shown in the main UI.\n */\nexport function EditPropertyDialog({\n open,\n onOpenChange,\n onSubmit,\n property: propertyToEdit,\n propertyKey,\n}: EditPropertyDialogProps) {\n const form = useForm<z.infer<typeof EditFormSchema>>({\n resolver: zodResolver(EditFormSchema),\n defaultValues: {\n property: propertyToEdit,\n },\n });\n\n const currentConstraints = form.watch(\"constraints\");\n\n const {\n getConstraintDefinitionsForType,\n getRendererForConstraint,\n validateConstraintValue,\n } = useConstraints();\n\n const handleSubmit = (data: z.infer<typeof EditFormSchema>) => {\n const { constraints } = data;\n const propertyUpdatesOnly: JSONSchema7 = {\n ...constraints?.reduce((acc, constraint) => {\n return {\n ...acc,\n [constraint.name]: constraint.value,\n } satisfies JSONSchema7;\n }, {}),\n };\n onSubmit([propertyKey, propertyUpdatesOnly]);\n form.reset();\n };\n\n const handleConstraintChange = (\n index: number,\n newVal: Constraint[\"value\"],\n ) => {\n const constraintsCopy = clone(currentConstraints);\n\n const constraintToChange = constraintsCopy?.[index];\n\n if (!constraintToChange) {\n form.setError(`constraints.${index}`, {\n message: \"The constraint was not found\",\n type: \"constraint_not_found\",\n });\n return;\n }\n\n const validationResult = validateConstraintValue(\n constraintToChange.name,\n newVal,\n );\n\n if (validationResult.status === \"error\") {\n let message = validationResult.message;\n if (validationResult.code === \"invalid\") {\n message = `${message}: ${validationResult.error?.map((i) => i.message).join(\", \")}`;\n }\n form.setError(`constraints.${index}`, {\n type: validationResult.code,\n message,\n });\n return;\n }\n\n //edit reference\n constraintToChange.value = newVal;\n form.setValue(\"constraints\", constraintsCopy);\n form.clearErrors(`constraints.${index}`);\n };\n\n const handleRemoveConstraint = (constraintName: Constraint[\"name\"]) => {\n if (!currentConstraints) return;\n const copy = clone(currentConstraints);\n const newConstraints = copy.filter((c) => c.name !== constraintName);\n form.setValue(\"constraints\", newConstraints);\n };\n\n const availableDefinitions = useMemo(() => {\n return getConstraintDefinitionsForType(\n typeof propertyToEdit?.type === \"string\" ? propertyToEdit.type : \"\",\n );\n }, [propertyToEdit.type]);\n\n useEffect(() => {\n //get the current constraints from the property based on the available definitions\n const newConstraints: Constraint[] = [];\n for (const constraintDef of availableDefinitions) {\n if (constraintDef.name in propertyToEdit) {\n newConstraints.push({\n name: constraintDef.name,\n value: propertyToEdit[constraintDef.name],\n });\n }\n }\n form.setValue(\"constraints\", newConstraints);\n }, [availableDefinitions]);\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogContent>\n <DialogHeader>\n <DialogTitle>Edit</DialogTitle>\n <DialogDescription>\n Constraints and other properties\n </DialogDescription>\n </DialogHeader>\n <Form {...form}>\n <form\n onSubmit={form.handleSubmit(handleSubmit)}\n className=\"space-y-4\"\n data-testid=\"edit-property-form\"\n >\n {availableDefinitions.length ? (\n <div className=\"space-y-2\">\n <Label>Constraints</Label>\n <ConstraintsAdd\n addedConstraints={currentConstraints ?? []}\n availableDefinitions={availableDefinitions}\n onAdd={(newConstraints) => {\n form.setValue(\"constraints\", newConstraints);\n }}\n />\n <Separator />\n {currentConstraints?.map((constraint, i) => {\n const Renderer = getRendererForConstraint(constraint.name);\n if (!Renderer) return null;\n\n const error = form.formState.errors.constraints?.[i];\n let mappedError: OperationError | undefined;\n\n if (error) {\n mappedError = {\n code: error?.type ?? \"INVALID\",\n message: error.message ?? \"An error occurred\",\n };\n }\n\n return (\n <Renderer\n key={constraint.name}\n constraintName={constraint.name}\n value={constraint.value}\n onConstraintChange={(newVal) => {\n handleConstraintChange(i, newVal);\n }}\n onRemoveConstraint={() => {\n handleRemoveConstraint(constraint.name);\n }}\n error={mappedError}\n />\n );\n })}\n </div>\n ) : null}\n\n <DialogFooter>\n <Button type=\"submit\">Save</Button>\n </DialogFooter>\n </form>\n </Form>\n </DialogContent>\n </Dialog>\n );\n}\n"],"names":["EditFormSchema","AddFormSchema","EditPropertyDialog","open","onOpenChange","onSubmit","propertyToEdit","propertyKey","form","useForm","zodResolver","currentConstraints","getConstraintDefinitionsForType","getRendererForConstraint","validateConstraintValue","useConstraints","handleSubmit","data","constraints","propertyUpdatesOnly","acc","constraint","handleConstraintChange","index","newVal","constraintsCopy","clone","constraintToChange","validationResult","message","i","handleRemoveConstraint","constraintName","newConstraints","c","availableDefinitions","useMemo","useEffect","constraintDef","jsx","Dialog","DialogContent","jsxs","DialogHeader","DialogTitle","DialogDescription","Form","Label","ConstraintsAdd","Separator","Renderer","error","mappedError","DialogFooter","Button"],"mappings":"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"}
1
+ {"version":3,"file":"index.es16.js","sources":["../src/components/ui/select.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Select({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nfunction SelectGroup({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nfunction SelectValue({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nfunction SelectTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Trigger>) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-testid=\"select-trigger\"\n className={cn(\n \"border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive flex h-9 w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"size-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nfunction SelectContent({\n className,\n children,\n position = \"popper\",\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n \"p-1\",\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1\",\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nfunction SelectLabel({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\"px-2 py-1.5 text-sm font-medium\", className)}\n {...props}\n />\n );\n}\n\nfunction SelectItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\n className,\n )}\n {...props}\n >\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nfunction SelectSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"bg-border pointer-events-none -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\n return (\n <SelectPrimitive.ScrollUpButton\n data-slot=\"select-scroll-up-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronUpIcon className=\"size-4\" />\n </SelectPrimitive.ScrollUpButton>\n );\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\n return (\n <SelectPrimitive.ScrollDownButton\n data-slot=\"select-scroll-down-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronDownIcon className=\"size-4\" />\n </SelectPrimitive.ScrollDownButton>\n );\n}\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n};\n"],"names":["Select","props","SelectPrimitive.Root","SelectValue","SelectPrimitive.Value","SelectTrigger","className","children","jsxs","SelectPrimitive.Trigger","cn","jsx","SelectPrimitive.Icon","ChevronDownIcon","SelectContent","position","SelectPrimitive.Portal","SelectPrimitive.Content","SelectScrollUpButton","SelectPrimitive.Viewport","SelectScrollDownButton","SelectItem","SelectPrimitive.Item","SelectPrimitive.ItemIndicator","CheckIcon","SelectPrimitive.ItemText","SelectPrimitive.ScrollUpButton","ChevronUpIcon","SelectPrimitive.ScrollDownButton"],"mappings":"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"}
@@ -1,141 +1,7 @@
1
- import { jsx as e, jsxs as r } from "react/jsx-runtime";
2
- import { Root as n, Content as i, Title as s, Description as d, Cancel as c, Action as u, Portal as f, Overlay as m } from "./index.es47.js";
3
- import { cn as o } from "./index.es22.js";
4
- import { buttonVariants as l } from "./index.es11.js";
5
- function N({
6
- ...t
7
- }) {
8
- return /* @__PURE__ */ e(n, { "data-slot": "alert-dialog", ...t });
9
- }
10
- function g({
11
- ...t
12
- }) {
13
- return /* @__PURE__ */ e(f, { "data-slot": "alert-dialog-portal", ...t });
14
- }
15
- function p({
16
- className: t,
17
- ...a
18
- }) {
19
- return /* @__PURE__ */ e(
20
- m,
21
- {
22
- "data-slot": "alert-dialog-overlay",
23
- className: o(
24
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",
25
- t
26
- ),
27
- ...a
28
- }
29
- );
30
- }
31
- function b({
32
- className: t,
33
- ...a
34
- }) {
35
- return /* @__PURE__ */ r(g, { children: [
36
- /* @__PURE__ */ e(p, {}),
37
- /* @__PURE__ */ e(
38
- i,
39
- {
40
- "data-slot": "alert-dialog-content",
41
- className: o(
42
- "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",
43
- t
44
- ),
45
- ...a
46
- }
47
- )
48
- ] });
49
- }
50
- function y({
51
- className: t,
52
- ...a
53
- }) {
54
- return /* @__PURE__ */ e(
55
- "div",
56
- {
57
- "data-slot": "alert-dialog-header",
58
- className: o("flex flex-col gap-2 text-center sm:text-left", t),
59
- ...a
60
- }
61
- );
62
- }
63
- function w({
64
- className: t,
65
- ...a
66
- }) {
67
- return /* @__PURE__ */ e(
68
- "div",
69
- {
70
- "data-slot": "alert-dialog-footer",
71
- className: o(
72
- "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
73
- t
74
- ),
75
- ...a
76
- }
77
- );
78
- }
79
- function C({
80
- className: t,
81
- ...a
82
- }) {
83
- return /* @__PURE__ */ e(
84
- s,
85
- {
86
- "data-slot": "alert-dialog-title",
87
- className: o("text-lg font-semibold", t),
88
- ...a
89
- }
90
- );
91
- }
92
- function z({
93
- className: t,
94
- ...a
95
- }) {
96
- return /* @__PURE__ */ e(
97
- d,
98
- {
99
- "data-slot": "alert-dialog-description",
100
- className: o("text-muted-foreground text-sm", t),
101
- ...a
102
- }
103
- );
104
- }
105
- function h({
106
- className: t,
107
- ...a
108
- }) {
109
- return /* @__PURE__ */ e(
110
- u,
111
- {
112
- className: o(l(), t),
113
- ...a
114
- }
115
- );
116
- }
117
- function j({
118
- className: t,
119
- ...a
120
- }) {
121
- return /* @__PURE__ */ e(
122
- c,
123
- {
124
- className: o(l({ variant: "outline" }), t),
125
- ...a
126
- }
127
- );
1
+ function t(r) {
2
+ return r === void 0 ? !0 : typeof r == "string" || Array.isArray(r) ? r.length === 0 : Object.keys(r).length === 0;
128
3
  }
129
4
  export {
130
- N as AlertDialog,
131
- h as AlertDialogAction,
132
- j as AlertDialogCancel,
133
- b as AlertDialogContent,
134
- z as AlertDialogDescription,
135
- w as AlertDialogFooter,
136
- y as AlertDialogHeader,
137
- p as AlertDialogOverlay,
138
- g as AlertDialogPortal,
139
- C as AlertDialogTitle
5
+ t as a
140
6
  };
141
7
  //# sourceMappingURL=index.es17.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es17.js","sources":["../src/components/ui/alert-dialog.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\"\n\nimport { cn } from \"@/lib/utils\"\nimport { buttonVariants } from \"@/components/ui/button\"\n\nfunction AlertDialog({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Root>) {\n return <AlertDialogPrimitive.Root data-slot=\"alert-dialog\" {...props} />\n}\n\nfunction AlertDialogTrigger({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Trigger>) {\n return (\n <AlertDialogPrimitive.Trigger data-slot=\"alert-dialog-trigger\" {...props} />\n )\n}\n\nfunction AlertDialogPortal({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Portal>) {\n return (\n <AlertDialogPrimitive.Portal data-slot=\"alert-dialog-portal\" {...props} />\n )\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Overlay>) {\n return (\n <AlertDialogPrimitive.Overlay\n data-slot=\"alert-dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogContent({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Content>) {\n return (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n data-slot=\"alert-dialog-content\"\n className={cn(\n \"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg\",\n className\n )}\n {...props}\n />\n </AlertDialogPortal>\n )\n}\n\nfunction AlertDialogHeader({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogFooter({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Title>) {\n return (\n <AlertDialogPrimitive.Title\n data-slot=\"alert-dialog-title\"\n className={cn(\"text-lg font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Description>) {\n return (\n <AlertDialogPrimitive.Description\n data-slot=\"alert-dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogAction({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Action>) {\n return (\n <AlertDialogPrimitive.Action\n className={cn(buttonVariants(), className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogCancel({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Cancel>) {\n return (\n <AlertDialogPrimitive.Cancel\n className={cn(buttonVariants({ variant: \"outline\" }), className)}\n {...props}\n />\n )\n}\n\nexport {\n AlertDialog,\n AlertDialogPortal,\n AlertDialogOverlay,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n}\n"],"names":["AlertDialog","props","AlertDialogPrimitive.Root","AlertDialogPortal","AlertDialogPrimitive.Portal","AlertDialogOverlay","className","jsx","AlertDialogPrimitive.Overlay","cn","AlertDialogContent","AlertDialogPrimitive.Content","AlertDialogHeader","AlertDialogFooter","AlertDialogTitle","AlertDialogPrimitive.Title","AlertDialogDescription","AlertDialogPrimitive.Description","AlertDialogAction","AlertDialogPrimitive.Action","buttonVariants","AlertDialogCancel","AlertDialogPrimitive.Cancel"],"mappings":";;;;AAMA,SAASA,EAAY;AAAA,EACnB,GAAGC;AACL,GAA2D;AACzD,2BAAQC,GAAA,EAA0B,aAAU,gBAAgB,GAAGD,GAAO;AACxE;AAUA,SAASE,EAAkB;AAAA,EACzB,GAAGF;AACL,GAA6D;AAC3D,2BACGG,GAAA,EAA4B,aAAU,uBAAuB,GAAGH,GAAO;AAE5E;AAEA,SAASI,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,GAAGL;AACL,GAA8D;AAE1D,SAAA,gBAAAM;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAH;AAAA,MACF;AAAA,MACC,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASS,EAAmB;AAAA,EAC1B,WAAAJ;AAAA,EACA,GAAGL;AACL,GAA8D;AAC5D,2BACGE,GACC,EAAA,UAAA;AAAA,IAAA,gBAAAI,EAACF,GAAmB,EAAA;AAAA,IACpB,gBAAAE;AAAA,MAACI;AAAAA,MAAA;AAAA,QACC,aAAU;AAAA,QACV,WAAWF;AAAA,UACT;AAAA,UACAH;AAAA,QACF;AAAA,QACC,GAAGL;AAAA,MAAA;AAAA,IAAA;AAAA,EACN,GACF;AAEJ;AAEA,SAASW,EAAkB;AAAA,EACzB,WAAAN;AAAA,EACA,GAAGL;AACL,GAAgC;AAE5B,SAAA,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWE,EAAG,gDAAgDH,CAAS;AAAA,MACtE,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASY,EAAkB;AAAA,EACzB,WAAAP;AAAA,EACA,GAAGL;AACL,GAAgC;AAE5B,SAAA,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWE;AAAA,QACT;AAAA,QACAH;AAAA,MACF;AAAA,MACC,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASa,EAAiB;AAAA,EACxB,WAAAR;AAAA,EACA,GAAGL;AACL,GAA4D;AAExD,SAAA,gBAAAM;AAAA,IAACQ;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWN,EAAG,yBAAyBH,CAAS;AAAA,MAC/C,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASe,EAAuB;AAAA,EAC9B,WAAAV;AAAA,EACA,GAAGL;AACL,GAAkE;AAE9D,SAAA,gBAAAM;AAAA,IAACU;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWR,EAAG,iCAAiCH,CAAS;AAAA,MACvD,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASiB,EAAkB;AAAA,EACzB,WAAAZ;AAAA,EACA,GAAGL;AACL,GAA6D;AAEzD,SAAA,gBAAAM;AAAA,IAACY;AAAAA,IAAA;AAAA,MACC,WAAWV,EAAGW,EAAe,GAAGd,CAAS;AAAA,MACxC,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASoB,EAAkB;AAAA,EACzB,WAAAf;AAAA,EACA,GAAGL;AACL,GAA6D;AAEzD,SAAA,gBAAAM;AAAA,IAACe;AAAAA,IAAA;AAAA,MACC,WAAWb,EAAGW,EAAe,EAAE,SAAS,UAAU,CAAC,GAAGd,CAAS;AAAA,MAC9D,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;"}
1
+ {"version":3,"file":"index.es17.js","sources":["../../../node_modules/.pnpm/remeda@2.20.2/node_modules/remeda/dist/chunk-VCYTMP4D.js"],"sourcesContent":["function n(e){return e===void 0?!0:typeof e==\"string\"||Array.isArray(e)?e.length===0:Object.keys(e).length===0}export{n as a};\n"],"names":["n","e"],"mappings":"AAAA,SAASA,EAAEC,GAAE;AAAC,SAAOA,MAAI,SAAO,KAAG,OAAOA,KAAG,YAAU,MAAM,QAAQA,CAAC,IAAEA,EAAE,WAAS,IAAE,OAAO,KAAKA,CAAC,EAAE,WAAS;AAAC;","x_google_ignoreList":[0]}
@@ -1,67 +1,26 @@
1
- import { jsx as e } from "react/jsx-runtime";
2
- import { cva as i } from "./index.es35.js";
3
- import { cn as a } from "./index.es22.js";
4
- const l = i(
5
- "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
6
- {
7
- variants: {
8
- variant: {
9
- default: "bg-background text-foreground",
10
- destructive: "text-destructive-foreground [&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/80"
11
- }
12
- },
13
- defaultVariants: {
14
- variant: "default"
15
- }
16
- }
17
- );
18
- function c({
19
- className: t,
20
- variant: r,
21
- ...s
22
- }) {
23
- return /* @__PURE__ */ e(
24
- "div",
25
- {
26
- "data-slot": "alert",
27
- role: "alert",
28
- className: a(l({ variant: r }), t),
29
- ...s
30
- }
31
- );
1
+ import { a as n } from "./index.es53.js";
2
+ function p(...e) {
3
+ return n(i, e);
32
4
  }
33
- function g({ className: t, ...r }) {
34
- return /* @__PURE__ */ e(
35
- "div",
36
- {
37
- "data-slot": "alert-title",
38
- className: a(
39
- "col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",
40
- t
41
- ),
42
- ...r
43
- }
44
- );
5
+ function i(e, r = [], o = []) {
6
+ if (typeof e == "function") return e;
7
+ if (typeof e != "object" || e === null || e instanceof Date || e instanceof RegExp) return structuredClone(e);
8
+ let t = r.indexOf(e);
9
+ return t !== -1 ? o[t] : (r.push(e), Array.isArray(e) ? s(e, r, o) : c(e, r, o));
45
10
  }
46
- function u({
47
- className: t,
48
- ...r
49
- }) {
50
- return /* @__PURE__ */ e(
51
- "div",
52
- {
53
- "data-slot": "alert-description",
54
- className: a(
55
- "text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
56
- t
57
- ),
58
- ...r
59
- }
60
- );
11
+ function c(e, r, o) {
12
+ let t = {};
13
+ o.push(t);
14
+ for (let [u, f] of Object.entries(e)) t[u] = i(f, r, o);
15
+ return t;
16
+ }
17
+ function s(e, r, o) {
18
+ let t = [];
19
+ o.push(t);
20
+ for (let [u, f] of e.entries()) t[u] = i(f, r, o);
21
+ return t;
61
22
  }
62
23
  export {
63
- c as Alert,
64
- u as AlertDescription,
65
- g as AlertTitle
24
+ p as a
66
25
  };
67
26
  //# sourceMappingURL=index.es18.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es18.js","sources":["../src/components/ui/alert.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n {\n variants: {\n variant: {\n default: \"bg-background text-foreground\",\n destructive:\n \"text-destructive-foreground [&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/80\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Alert({\n className,\n variant,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariants>) {\n return (\n <div\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n )\n}\n\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-title\"\n className={cn(\n \"col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDescription({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\n \"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Alert, AlertTitle, AlertDescription }\n"],"names":["alertVariants","cva","Alert","className","variant","props","jsx","cn","AlertTitle","AlertDescription"],"mappings":";;;AAKA,MAAMA,IAAgBC;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,aACE;AAAA,MAAA;AAAA,IAEN;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ;AAEA,SAASC,EAAM;AAAA,EACb,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,GAAGC;AACL,GAAqE;AAEjE,SAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,MAAK;AAAA,MACL,WAAWC,EAAGP,EAAc,EAAE,SAAAI,EAAS,CAAA,GAAGD,CAAS;AAAA,MAClD,GAAGE;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASG,EAAW,EAAE,WAAAL,GAAW,GAAGE,KAAsC;AAEtE,SAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MACF;AAAA,MACC,GAAGE;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASI,EAAiB;AAAA,EACxB,WAAAN;AAAA,EACA,GAAGE;AACL,GAAgC;AAE5B,SAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MACF;AAAA,MACC,GAAGE;AAAA,IAAA;AAAA,EACN;AAEJ;"}
1
+ {"version":3,"file":"index.es18.js","sources":["../../../node_modules/.pnpm/remeda@2.20.2/node_modules/remeda/dist/chunk-2OQBQB3V.js"],"sourcesContent":["import{a as i}from\"./chunk-WIMGWYZL.js\";function p(...n){return i(u,n)}function u(n,t=[],r=[]){if(typeof n==\"function\")return n;if(typeof n!=\"object\"||n===null||n instanceof Date||n instanceof RegExp)return structuredClone(n);let o=t.indexOf(n);return o!==-1?r[o]:(t.push(n),Array.isArray(n)?y(n,t,r):s(n,t,r))}function s(n,t,r){let o={};r.push(o);for(let[e,c]of Object.entries(n))o[e]=u(c,t,r);return o}function y(n,t,r){let o=[];r.push(o);for(let[e,c]of n.entries())o[e]=u(c,t,r);return o}export{p as a};\n"],"names":["n","i","u","t","r","o","y","s","e","c"],"mappings":";AAAwC,SAAS,KAAKA,GAAE;AAAC,SAAOC,EAAEC,GAAEF,CAAC;AAAC;AAAC,SAASE,EAAEF,GAAEG,IAAE,CAAE,GAACC,IAAE,IAAG;AAAC,MAAG,OAAOJ,KAAG,WAAW,QAAOA;AAAE,MAAG,OAAOA,KAAG,YAAUA,MAAI,QAAMA,aAAa,QAAMA,aAAa,OAAO,QAAO,gBAAgBA,CAAC;AAAE,MAAIK,IAAEF,EAAE,QAAQH,CAAC;AAAE,SAAOK,MAAI,KAAGD,EAAEC,CAAC,KAAGF,EAAE,KAAKH,CAAC,GAAE,MAAM,QAAQA,CAAC,IAAEM,EAAEN,GAAEG,GAAEC,CAAC,IAAEG,EAAEP,GAAEG,GAAEC,CAAC;AAAE;AAAC,SAASG,EAAEP,GAAEG,GAAEC,GAAE;AAAC,MAAIC,IAAE,CAAE;AAAC,EAAAD,EAAE,KAAKC,CAAC;AAAE,WAAO,CAACG,GAAEC,CAAC,KAAI,OAAO,QAAQT,CAAC,EAAE,CAAAK,EAAEG,CAAC,IAAEN,EAAEO,GAAEN,GAAEC,CAAC;AAAE,SAAOC;AAAC;AAAC,SAASC,EAAEN,GAAEG,GAAEC,GAAE;AAAC,MAAIC,IAAE,CAAE;AAAC,EAAAD,EAAE,KAAKC,CAAC;AAAE,WAAO,CAACG,GAAEC,CAAC,KAAIT,EAAE,QAAO,EAAG,CAAAK,EAAEG,CAAC,IAAEN,EAAEO,GAAEN,GAAEC,CAAC;AAAE,SAAOC;AAAC;","x_google_ignoreList":[0]}