@satoshibits/react-json-schema-builder 1.0.2 → 1.0.3

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 (219) hide show
  1. package/dist/index.cjs100.js +1 -1
  2. package/dist/index.cjs100.js.map +1 -1
  3. package/dist/index.cjs101.js +1 -1
  4. package/dist/index.cjs101.js.map +1 -1
  5. package/dist/index.cjs102.js +1 -1
  6. package/dist/index.cjs102.js.map +1 -1
  7. package/dist/index.cjs103.js +1 -1
  8. package/dist/index.cjs103.js.map +1 -1
  9. package/dist/index.cjs12.js +1 -1
  10. package/dist/index.cjs13.js +1 -1
  11. package/dist/index.cjs15.js +1 -1
  12. package/dist/index.cjs2.js +1 -1
  13. package/dist/index.cjs2.js.map +1 -1
  14. package/dist/index.cjs20.js +1 -1
  15. package/dist/index.cjs22.js +1 -1
  16. package/dist/index.cjs23.js +1 -1
  17. package/dist/index.cjs24.js +1 -1
  18. package/dist/index.cjs25.js +1 -1
  19. package/dist/index.cjs26.js +1 -1
  20. package/dist/index.cjs29.js +1 -1
  21. package/dist/index.cjs3.js +1 -1
  22. package/dist/index.cjs3.js.map +1 -1
  23. package/dist/index.cjs30.js +1 -1
  24. package/dist/index.cjs33.js +1 -1
  25. package/dist/index.cjs35.js +1 -1
  26. package/dist/index.cjs35.js.map +1 -1
  27. package/dist/index.cjs36.js +6 -1
  28. package/dist/index.cjs36.js.map +1 -1
  29. package/dist/index.cjs37.js +6 -1
  30. package/dist/index.cjs37.js.map +1 -1
  31. package/dist/index.cjs38.js +6 -1
  32. package/dist/index.cjs38.js.map +1 -1
  33. package/dist/index.cjs39.js +1 -1
  34. package/dist/index.cjs39.js.map +1 -1
  35. package/dist/index.cjs40.js +1 -1
  36. package/dist/index.cjs40.js.map +1 -1
  37. package/dist/index.cjs41.js +1 -1
  38. package/dist/index.cjs41.js.map +1 -1
  39. package/dist/index.cjs42.js +1 -1
  40. package/dist/index.cjs42.js.map +1 -1
  41. package/dist/index.cjs43.js +1 -6
  42. package/dist/index.cjs43.js.map +1 -1
  43. package/dist/index.cjs44.js +1 -6
  44. package/dist/index.cjs44.js.map +1 -1
  45. package/dist/index.cjs45.js +1 -6
  46. package/dist/index.cjs45.js.map +1 -1
  47. package/dist/index.cjs46.js +1 -1
  48. package/dist/index.cjs48.js +1 -6
  49. package/dist/index.cjs48.js.map +1 -1
  50. package/dist/index.cjs49.js +1 -6
  51. package/dist/index.cjs49.js.map +1 -1
  52. package/dist/index.cjs50.js +2 -2
  53. package/dist/index.cjs50.js.map +1 -1
  54. package/dist/index.cjs51.js +2 -2
  55. package/dist/index.cjs51.js.map +1 -1
  56. package/dist/index.cjs52.js +6 -1
  57. package/dist/index.cjs52.js.map +1 -1
  58. package/dist/index.cjs53.js +6 -1
  59. package/dist/index.cjs53.js.map +1 -1
  60. package/dist/index.cjs54.js +1 -1
  61. package/dist/index.cjs55.js +1 -1
  62. package/dist/index.cjs56.js +1 -1
  63. package/dist/index.cjs56.js.map +1 -1
  64. package/dist/index.cjs58.js +1 -1
  65. package/dist/index.cjs58.js.map +1 -1
  66. package/dist/index.cjs59.js +1 -1
  67. package/dist/index.cjs59.js.map +1 -1
  68. package/dist/index.cjs60.js +1 -1
  69. package/dist/index.cjs60.js.map +1 -1
  70. package/dist/index.cjs61.js +1 -1
  71. package/dist/index.cjs61.js.map +1 -1
  72. package/dist/index.cjs62.js +1 -1
  73. package/dist/index.cjs62.js.map +1 -1
  74. package/dist/index.cjs63.js +1 -1
  75. package/dist/index.cjs63.js.map +1 -1
  76. package/dist/index.cjs64.js +1 -1
  77. package/dist/index.cjs64.js.map +1 -1
  78. package/dist/index.cjs65.js +1 -1
  79. package/dist/index.cjs65.js.map +1 -1
  80. package/dist/index.cjs66.js +1 -1
  81. package/dist/index.cjs66.js.map +1 -1
  82. package/dist/index.cjs67.js +1 -1
  83. package/dist/index.cjs67.js.map +1 -1
  84. package/dist/index.cjs68.js +1 -1
  85. package/dist/index.cjs68.js.map +1 -1
  86. package/dist/index.cjs69.js +1 -1
  87. package/dist/index.cjs69.js.map +1 -1
  88. package/dist/index.cjs70.js +1 -1
  89. package/dist/index.cjs70.js.map +1 -1
  90. package/dist/index.cjs71.js +1 -1
  91. package/dist/index.cjs71.js.map +1 -1
  92. package/dist/index.cjs72.js +1 -1
  93. package/dist/index.cjs72.js.map +1 -1
  94. package/dist/index.cjs73.js +1 -1
  95. package/dist/index.cjs73.js.map +1 -1
  96. package/dist/index.cjs74.js +1 -1
  97. package/dist/index.cjs74.js.map +1 -1
  98. package/dist/index.cjs75.js +1 -1
  99. package/dist/index.cjs75.js.map +1 -1
  100. package/dist/index.cjs76.js +1 -1
  101. package/dist/index.cjs76.js.map +1 -1
  102. package/dist/index.cjs77.js +1 -1
  103. package/dist/index.cjs78.js +1 -1
  104. package/dist/index.cjs80.js +1 -1
  105. package/dist/index.cjs9.js +1 -1
  106. package/dist/index.cjs94.js +1 -1
  107. package/dist/index.cjs95.js +1 -1
  108. package/dist/index.es100.js +11 -21
  109. package/dist/index.es100.js.map +1 -1
  110. package/dist/index.es101.js +26 -11
  111. package/dist/index.es101.js.map +1 -1
  112. package/dist/index.es102.js +4 -27
  113. package/dist/index.es102.js.map +1 -1
  114. package/dist/index.es103.js +22 -4
  115. package/dist/index.es103.js.map +1 -1
  116. package/dist/index.es12.js +1 -1
  117. package/dist/index.es13.js +4 -4
  118. package/dist/index.es15.js +5 -5
  119. package/dist/index.es2.js +21 -20
  120. package/dist/index.es2.js.map +1 -1
  121. package/dist/index.es20.js +6 -6
  122. package/dist/index.es22.js +1 -1
  123. package/dist/index.es23.js +1 -1
  124. package/dist/index.es24.js +1 -1
  125. package/dist/index.es25.js +1 -1
  126. package/dist/index.es26.js +1 -1
  127. package/dist/index.es29.js +1 -1
  128. package/dist/index.es3.js +1 -0
  129. package/dist/index.es3.js.map +1 -1
  130. package/dist/index.es30.js +1 -1
  131. package/dist/index.es33.js +1 -1
  132. package/dist/index.es35.js +811 -95
  133. package/dist/index.es35.js.map +1 -1
  134. package/dist/index.es36.js +10 -114
  135. package/dist/index.es36.js.map +1 -1
  136. package/dist/index.es37.js +10 -56
  137. package/dist/index.es37.js.map +1 -1
  138. package/dist/index.es38.js +10 -24
  139. package/dist/index.es38.js.map +1 -1
  140. package/dist/index.es39.js +113 -42
  141. package/dist/index.es39.js.map +1 -1
  142. package/dist/index.es40.js +99 -71
  143. package/dist/index.es40.js.map +1 -1
  144. package/dist/index.es41.js +52 -56
  145. package/dist/index.es41.js.map +1 -1
  146. package/dist/index.es42.js +19 -827
  147. package/dist/index.es42.js.map +1 -1
  148. package/dist/index.es43.js +45 -10
  149. package/dist/index.es43.js.map +1 -1
  150. package/dist/index.es44.js +86 -10
  151. package/dist/index.es44.js.map +1 -1
  152. package/dist/index.es45.js +60 -10
  153. package/dist/index.es45.js.map +1 -1
  154. package/dist/index.es46.js +2 -2
  155. package/dist/index.es48.js +8 -21
  156. package/dist/index.es48.js.map +1 -1
  157. package/dist/index.es49.js +5 -9
  158. package/dist/index.es49.js.map +1 -1
  159. package/dist/index.es50.js +15 -32
  160. package/dist/index.es50.js.map +1 -1
  161. package/dist/index.es51.js +3 -12
  162. package/dist/index.es51.js.map +1 -1
  163. package/dist/index.es52.js +38 -8
  164. package/dist/index.es52.js.map +1 -1
  165. package/dist/index.es53.js +18 -5
  166. package/dist/index.es53.js.map +1 -1
  167. package/dist/index.es54.js +11 -11
  168. package/dist/index.es55.js +1 -1
  169. package/dist/index.es56.js +3 -26
  170. package/dist/index.es56.js.map +1 -1
  171. package/dist/index.es58.js +42 -62
  172. package/dist/index.es58.js.map +1 -1
  173. package/dist/index.es59.js +25 -28
  174. package/dist/index.es59.js.map +1 -1
  175. package/dist/index.es60.js +64 -4
  176. package/dist/index.es60.js.map +1 -1
  177. package/dist/index.es61.js +7 -24
  178. package/dist/index.es61.js.map +1 -1
  179. package/dist/index.es62.js +123 -31
  180. package/dist/index.es62.js.map +1 -1
  181. package/dist/index.es63.js +14 -3
  182. package/dist/index.es63.js.map +1 -1
  183. package/dist/index.es64.js +129 -41
  184. package/dist/index.es64.js.map +1 -1
  185. package/dist/index.es65.js +10 -7
  186. package/dist/index.es65.js.map +1 -1
  187. package/dist/index.es66.js +204 -113
  188. package/dist/index.es66.js.map +1 -1
  189. package/dist/index.es67.js +13 -15
  190. package/dist/index.es67.js.map +1 -1
  191. package/dist/index.es68.js +31 -132
  192. package/dist/index.es68.js.map +1 -1
  193. package/dist/index.es69.js +7 -10
  194. package/dist/index.es69.js.map +1 -1
  195. package/dist/index.es70.js +26 -212
  196. package/dist/index.es70.js.map +1 -1
  197. package/dist/index.es71.js +4 -13
  198. package/dist/index.es71.js.map +1 -1
  199. package/dist/index.es72.js +5 -7
  200. package/dist/index.es72.js.map +1 -1
  201. package/dist/index.es73.js +27 -3
  202. package/dist/index.es73.js.map +1 -1
  203. package/dist/index.es74.js +50 -28
  204. package/dist/index.es74.js.map +1 -1
  205. package/dist/index.es75.js +9 -50
  206. package/dist/index.es75.js.map +1 -1
  207. package/dist/index.es76.js +25 -9
  208. package/dist/index.es76.js.map +1 -1
  209. package/dist/index.es77.js +2 -2
  210. package/dist/index.es78.js +1 -1
  211. package/dist/index.es80.js +1 -1
  212. package/dist/index.es9.js +1 -1
  213. package/dist/index.es94.js +1 -1
  214. package/dist/index.es95.js +1 -1
  215. package/dist/packages/builder/context.d.ts +1 -0
  216. package/dist/packages/builder/context.d.ts.map +1 -1
  217. package/dist/packages/builder/schema-builder.d.ts.map +1 -1
  218. package/dist/style.css +1 -1
  219. package/package.json +3 -3
@@ -1,48 +1,119 @@
1
- import { validateFieldsNatively as v, toNestErrors as d } from "@hookform/resolvers";
2
- import { appendErrors as h } from "react-hook-form";
3
- function m(i, u) {
4
- for (var o = {}; i.length; ) {
5
- var r = i[0], c = r.code, t = r.message, e = r.path.join(".");
6
- if (!o[e]) if ("unionErrors" in r) {
7
- var n = r.unionErrors[0].errors[0];
8
- o[e] = { message: n.message, type: n.code };
9
- } else o[e] = { message: t, type: c };
10
- if ("unionErrors" in r && r.unionErrors.forEach(function(f) {
11
- return f.errors.forEach(function(l) {
12
- return i.push(l);
13
- });
14
- }), u) {
15
- var s = o[e].types, a = s && s[r.code];
16
- o[e] = h(e, u, o, c, a ? [].concat(a, r.message) : r.message);
17
- }
18
- i.shift();
19
- }
20
- return o;
21
- }
22
- function g(i, u, o) {
23
- return o === void 0 && (o = {}), function(r, c, t) {
24
- try {
25
- return Promise.resolve(function(e, n) {
26
- try {
27
- var s = Promise.resolve(i[o.mode === "sync" ? "parse" : "parseAsync"](r, u)).then(function(a) {
28
- return t.shouldUseNativeValidation && v({}, t), { errors: {}, values: o.raw ? Object.assign({}, r) : a };
29
- });
30
- } catch (a) {
31
- return n(a);
1
+ import * as n from "react";
2
+ import { composeEventHandlers as _ } from "./index.es57.js";
3
+ import { useComposedRefs as H } from "./index.es59.js";
4
+ import { createContextScope as I } from "./index.es60.js";
5
+ import { useControllableState as M } from "./index.es70.js";
6
+ import { usePrevious as N } from "./index.es72.js";
7
+ import { useSize as j } from "./index.es76.js";
8
+ import { Primitive as w } from "./index.es68.js";
9
+ import { jsxs as B, jsx as m } from "react/jsx-runtime";
10
+ var S = "Switch", [q, K] = I(S), [z, A] = q(S), C = n.forwardRef(
11
+ (e, s) => {
12
+ const {
13
+ __scopeSwitch: t,
14
+ name: o,
15
+ checked: r,
16
+ defaultChecked: p,
17
+ required: a,
18
+ disabled: c,
19
+ value: i = "on",
20
+ onCheckedChange: f,
21
+ form: b,
22
+ ...u
23
+ } = e, [d, R] = n.useState(null), g = H(s, (h) => R(h)), v = n.useRef(!1), k = d ? b || !!d.closest("form") : !0, [l = !1, E] = M({
24
+ prop: r,
25
+ defaultProp: p,
26
+ onChange: f
27
+ });
28
+ return /* @__PURE__ */ B(z, { scope: t, checked: l, disabled: c, children: [
29
+ /* @__PURE__ */ m(
30
+ w.button,
31
+ {
32
+ type: "button",
33
+ role: "switch",
34
+ "aria-checked": l,
35
+ "aria-required": a,
36
+ "data-state": x(l),
37
+ "data-disabled": c ? "" : void 0,
38
+ disabled: c,
39
+ value: i,
40
+ ...u,
41
+ ref: g,
42
+ onClick: _(e.onClick, (h) => {
43
+ E((T) => !T), k && (v.current = h.isPropagationStopped(), v.current || h.stopPropagation());
44
+ })
45
+ }
46
+ ),
47
+ k && /* @__PURE__ */ m(
48
+ O,
49
+ {
50
+ control: d,
51
+ bubbles: !v.current,
52
+ name: o,
53
+ value: i,
54
+ checked: l,
55
+ required: a,
56
+ disabled: c,
57
+ form: b,
58
+ style: { transform: "translateX(-100%)" }
32
59
  }
33
- return s && s.then ? s.then(void 0, n) : s;
34
- }(0, function(e) {
35
- if (function(n) {
36
- return Array.isArray(n?.errors);
37
- }(e)) return { values: {}, errors: d(m(e.errors, !t.shouldUseNativeValidation && t.criteriaMode === "all"), t) };
38
- throw e;
39
- }));
40
- } catch (e) {
41
- return Promise.reject(e);
60
+ )
61
+ ] });
62
+ }
63
+ );
64
+ C.displayName = S;
65
+ var P = "SwitchThumb", y = n.forwardRef(
66
+ (e, s) => {
67
+ const { __scopeSwitch: t, ...o } = e, r = A(P, t);
68
+ return /* @__PURE__ */ m(
69
+ w.span,
70
+ {
71
+ "data-state": x(r.checked),
72
+ "data-disabled": r.disabled ? "" : void 0,
73
+ ...o,
74
+ ref: s
75
+ }
76
+ );
77
+ }
78
+ );
79
+ y.displayName = P;
80
+ var O = (e) => {
81
+ const { control: s, checked: t, bubbles: o = !0, ...r } = e, p = n.useRef(null), a = N(t), c = j(s);
82
+ return n.useEffect(() => {
83
+ const i = p.current, f = window.HTMLInputElement.prototype, u = Object.getOwnPropertyDescriptor(f, "checked").set;
84
+ if (a !== t && u) {
85
+ const d = new Event("click", { bubbles: o });
86
+ u.call(i, t), i.dispatchEvent(d);
42
87
  }
43
- };
88
+ }, [a, t, o]), /* @__PURE__ */ m(
89
+ "input",
90
+ {
91
+ type: "checkbox",
92
+ "aria-hidden": !0,
93
+ defaultChecked: t,
94
+ ...r,
95
+ tabIndex: -1,
96
+ ref: p,
97
+ style: {
98
+ ...e.style,
99
+ ...c,
100
+ position: "absolute",
101
+ pointerEvents: "none",
102
+ opacity: 0,
103
+ margin: 0
104
+ }
105
+ }
106
+ );
107
+ };
108
+ function x(e) {
109
+ return e ? "checked" : "unchecked";
44
110
  }
111
+ var Q = C, V = y;
45
112
  export {
46
- g as zodResolver
113
+ Q as Root,
114
+ C as Switch,
115
+ y as SwitchThumb,
116
+ V as Thumb,
117
+ K as createSwitchScope
47
118
  };
48
119
  //# sourceMappingURL=index.es39.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es39.js","sources":["../../../node_modules/.pnpm/@hookform+resolvers@4.1.3_react-hook-form@7.54.2_react@18.3.1_/node_modules/@hookform/resolvers/zod/dist/zod.mjs"],"sourcesContent":["import{validateFieldsNatively as r,toNestErrors as e}from\"@hookform/resolvers\";import{appendErrors as o}from\"react-hook-form\";function n(r,e){for(var n={};r.length;){var s=r[0],t=s.code,i=s.message,a=s.path.join(\".\");if(!n[a])if(\"unionErrors\"in s){var u=s.unionErrors[0].errors[0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:t};if(\"unionErrors\"in s&&s.unionErrors.forEach(function(e){return e.errors.forEach(function(e){return r.push(e)})}),e){var c=n[a].types,f=c&&c[s.code];n[a]=o(a,e,n,t,f?[].concat(f,s.message):s.message)}r.shift()}return n}function s(o,s,t){return void 0===t&&(t={}),function(i,a,u){try{return Promise.resolve(function(e,n){try{var a=Promise.resolve(o[\"sync\"===t.mode?\"parse\":\"parseAsync\"](i,s)).then(function(e){return u.shouldUseNativeValidation&&r({},u),{errors:{},values:t.raw?Object.assign({},i):e}})}catch(r){return n(r)}return a&&a.then?a.then(void 0,n):a}(0,function(r){if(function(r){return Array.isArray(null==r?void 0:r.errors)}(r))return{values:{},errors:e(n(r.errors,!u.shouldUseNativeValidation&&\"all\"===u.criteriaMode),u)};throw r}))}catch(r){return Promise.reject(r)}}}export{s as zodResolver};\n//# sourceMappingURL=zod.module.js.map\n"],"names":["n","r","e","s","t","i","a","u","c","f","o"],"mappings":";;AAA8H,SAASA,EAAEC,GAAEC,GAAE;AAAC,WAAQF,IAAE,IAAGC,EAAE,UAAQ;AAAC,QAAIE,IAAEF,EAAE,CAAC,GAAEG,IAAED,EAAE,MAAKE,IAAEF,EAAE,SAAQG,IAAEH,EAAE,KAAK,KAAK,GAAG;AAAE,QAAG,CAACH,EAAEM,CAAC,EAAE,KAAG,iBAAgBH,GAAE;AAAC,UAAII,IAAEJ,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC;AAAE,MAAAH,EAAEM,CAAC,IAAE,EAAC,SAAQC,EAAE,SAAQ,MAAKA,EAAE,KAAI;AAAA,IAAC,MAAM,CAAAP,EAAEM,CAAC,IAAE,EAAC,SAAQD,GAAE,MAAKD,EAAC;AAAE,QAAG,iBAAgBD,KAAGA,EAAE,YAAY,QAAQ,SAASD,GAAE;AAAC,aAAOA,EAAE,OAAO,QAAQ,SAASA,GAAE;AAAC,eAAOD,EAAE,KAAKC,CAAC;AAAA,MAAC,CAAC;AAAA,IAAC,CAAC,GAAEA,GAAE;AAAC,UAAIM,IAAER,EAAEM,CAAC,EAAE,OAAMG,IAAED,KAAGA,EAAEL,EAAE,IAAI;AAAE,MAAAH,EAAEM,CAAC,IAAEI,EAAEJ,GAAEJ,GAAEF,GAAEI,GAAEK,IAAE,GAAG,OAAOA,GAAEN,EAAE,OAAO,IAAEA,EAAE,OAAO;AAAA,IAAC;AAAC,IAAAF,EAAE,MAAO;AAAA,EAAA;AAAC,SAAOD;AAAC;AAAC,SAASG,EAAEO,GAAEP,GAAEC,GAAE;AAAC,SAAgBA,MAAT,WAAaA,IAAE,KAAI,SAASC,GAAEC,GAAEC,GAAE;AAAC,QAAG;AAAC,aAAO,QAAQ,QAAQ,SAAS,GAAE,GAAE;AAAC,YAAG;AAAC,cAAID,IAAE,QAAQ,QAAQI,EAAWN,EAAE,SAAX,SAAgB,UAAQ,YAAY,EAAEC,GAAEF,CAAC,CAAC,EAAE,KAAK,SAASD,GAAE;AAAC,mBAAOK,EAAE,6BAA2BN,EAAE,CAAA,GAAGM,CAAC,GAAE,EAAC,QAAO,CAAE,GAAC,QAAOH,EAAE,MAAI,OAAO,OAAO,CAAE,GAACC,CAAC,IAAEH,EAAC;AAAA,UAAC,CAAC;AAAA,QAAC,SAAOD,GAAE;AAAC,iBAAO,EAAEA,CAAC;AAAA,QAAC;AAAC,eAAOK,KAAGA,EAAE,OAAKA,EAAE,KAAK,QAAO,CAAC,IAAEA;AAAA,MAAC,EAAE,GAAE,SAASL,GAAE;AAAC,YAAG,SAASA,GAAE;AAAC,iBAAO,MAAM,QAAuBA,GAAE,MAAM;AAAA,QAAC,EAAEA,CAAC,EAAE,QAAM,EAAC,QAAO,CAAE,GAAC,QAAOC,EAAEF,EAAEC,EAAE,QAAO,CAACM,EAAE,6BAAmCA,EAAE,iBAAV,KAAsB,GAAEA,CAAC,EAAC;AAAE,cAAMN;AAAA,MAAC,CAAC,CAAC;AAAA,IAAC,SAAOA,GAAE;AAAC,aAAO,QAAQ,OAAOA,CAAC;AAAA,IAAC;AAAA,EAAC;AAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es39.js","sources":["../../../node_modules/.pnpm/@radix-ui+react-switch@1.1.3_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react_15d42b834e748f71167a3931ef9a499b/node_modules/@radix-ui/react-switch/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/switch/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 { jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nvar Switch = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSwitch,\n name,\n checked: checkedProp,\n defaultChecked,\n required,\n disabled,\n value = \"on\",\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n const [checked = false, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked,\n onChange: onCheckedChange\n });\n return /* @__PURE__ */ jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled, children: [\n /* @__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(props.onClick, (event) => {\n setChecked((prevChecked) => !prevChecked);\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n BubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\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 BubbleInput = (props) => {\n const { control, checked, bubbles = true, ...inputProps } = props;\n const ref = React.useRef(null);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, \"checked\");\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n \"input\",\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...inputProps,\n tabIndex: -1,\n ref,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n};\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\nvar Root = Switch;\nvar Thumb = SwitchThumb;\nexport {\n Root,\n Switch,\n SwitchThumb,\n Thumb,\n createSwitchScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["SWITCH_NAME","createSwitchContext","createSwitchScope","createContextScope","SwitchProvider","useSwitchContext","Switch","React","props","forwardedRef","__scopeSwitch","name","checkedProp","defaultChecked","required","disabled","value","onCheckedChange","form","switchProps","button","setButton","composedRefs","useComposedRefs","node","hasConsumerStoppedPropagationRef","isFormControl","checked","setChecked","useControllableState","jsxs","jsx","Primitive","getState","composeEventHandlers","event","prevChecked","BubbleInput","THUMB_NAME","SwitchThumb","thumbProps","context","control","bubbles","inputProps","ref","usePrevious","controlSize","useSize","input","inputProto","Root","Thumb"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,89 +1,117 @@
1
- import { jsx as m } from "react/jsx-runtime";
2
- import * as s from "react";
3
- import { Slot as f } from "./index.es33.js";
4
- import { FormProvider as u, Controller as F, useFormContext as x, useFormState as I } from "react-hook-form";
5
- import { cn as a } from "./index.es21.js";
6
- import { Label as g } from "./index.es14.js";
7
- const S = u, c = s.createContext(
8
- {}
9
- ), $ = ({
10
- ...e
11
- }) => /* @__PURE__ */ m(c.Provider, { value: { name: e.name }, children: /* @__PURE__ */ m(F, { ...e }) }), d = () => {
12
- const e = s.useContext(c), r = s.useContext(l), { getFieldState: t } = x(), o = I({ name: e.name }), n = t(e.name, o);
13
- if (!e)
14
- throw new Error("useFormField should be used within <FormField>");
15
- const { id: i } = r;
16
- return {
17
- id: i,
18
- name: e.name,
19
- formItemId: `${i}-form-item`,
20
- formDescriptionId: `${i}-form-item-description`,
21
- formMessageId: `${i}-form-item-message`,
22
- ...n
23
- };
24
- }, l = s.createContext(
25
- {}
26
- );
27
- function M({ className: e, ...r }) {
28
- const t = s.useId();
29
- return /* @__PURE__ */ m(l.Provider, { value: { id: t }, children: /* @__PURE__ */ m(
30
- "div",
1
+ import { jsx as e, jsxs as n } from "react/jsx-runtime";
2
+ import { Root as l, Content as i, Close as r, Title as d, Description as c, Portal as g, Overlay as f } from "./index.es54.js";
3
+ import { cn as o } from "./index.es21.js";
4
+ import u from "./index.es29.js";
5
+ function D({
6
+ ...t
7
+ }) {
8
+ return /* @__PURE__ */ e(l, { "data-slot": "dialog", ...t });
9
+ }
10
+ function m({
11
+ ...t
12
+ }) {
13
+ return /* @__PURE__ */ e(g, { "data-slot": "dialog-portal", ...t });
14
+ }
15
+ function p({
16
+ className: t,
17
+ ...a
18
+ }) {
19
+ return /* @__PURE__ */ e(
20
+ f,
31
21
  {
32
- "data-slot": "form-item",
33
- className: a("grid gap-2", e),
34
- ...r
22
+ "data-slot": "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
35
28
  }
36
- ) });
29
+ );
37
30
  }
38
- function w({
39
- className: e,
40
- ...r
31
+ function y({
32
+ className: t,
33
+ children: a,
34
+ ...s
41
35
  }) {
42
- const { error: t, formItemId: o } = d();
43
- return /* @__PURE__ */ m(
44
- g,
36
+ return /* @__PURE__ */ n(m, { "data-slot": "dialog-portal", children: [
37
+ /* @__PURE__ */ e(p, {}),
38
+ /* @__PURE__ */ n(
39
+ i,
40
+ {
41
+ "data-slot": "dialog-content",
42
+ className: o(
43
+ "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",
44
+ t
45
+ ),
46
+ ...s,
47
+ children: [
48
+ a,
49
+ /* @__PURE__ */ n(r, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", children: [
50
+ /* @__PURE__ */ e(u, {}),
51
+ /* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
52
+ ] })
53
+ ]
54
+ }
55
+ )
56
+ ] });
57
+ }
58
+ function N({ className: t, ...a }) {
59
+ return /* @__PURE__ */ e(
60
+ "div",
45
61
  {
46
- "data-slot": "form-label",
47
- "data-error": !!t,
48
- className: a("data-[error=true]:text-destructive-foreground", e),
49
- htmlFor: o,
50
- ...r
62
+ "data-slot": "dialog-header",
63
+ className: o("flex flex-col gap-2 text-center sm:text-left", t),
64
+ ...a
51
65
  }
52
66
  );
53
67
  }
54
- function N({ ...e }) {
55
- const { error: r, formItemId: t, formDescriptionId: o, formMessageId: n } = d();
56
- return /* @__PURE__ */ m(
57
- f,
68
+ function z({ className: t, ...a }) {
69
+ return /* @__PURE__ */ e(
70
+ "div",
71
+ {
72
+ "data-slot": "dialog-footer",
73
+ className: o(
74
+ "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
75
+ t
76
+ ),
77
+ ...a
78
+ }
79
+ );
80
+ }
81
+ function w({
82
+ className: t,
83
+ ...a
84
+ }) {
85
+ return /* @__PURE__ */ e(
86
+ d,
58
87
  {
59
- "data-slot": "form-control",
60
- id: t,
61
- "aria-describedby": r ? `${o} ${n}` : `${o}`,
62
- "aria-invalid": !!r,
63
- ...e
88
+ "data-slot": "dialog-title",
89
+ className: o("text-lg leading-none font-semibold", t),
90
+ ...a
64
91
  }
65
92
  );
66
93
  }
67
- function P({ className: e, ...r }) {
68
- const { error: t, formMessageId: o } = d(), n = t ? String(t?.message ?? "") : r.children;
69
- return n ? /* @__PURE__ */ m(
70
- "p",
94
+ function k({
95
+ className: t,
96
+ ...a
97
+ }) {
98
+ return /* @__PURE__ */ e(
99
+ c,
71
100
  {
72
- "data-slot": "form-message",
73
- id: o,
74
- className: a("text-destructive-foreground text-sm", e),
75
- ...r,
76
- children: n
101
+ "data-slot": "dialog-description",
102
+ className: o("text-muted-foreground text-sm", t),
103
+ ...a
77
104
  }
78
- ) : null;
105
+ );
79
106
  }
80
107
  export {
81
- S as Form,
82
- N as FormControl,
83
- $ as FormField,
84
- M as FormItem,
85
- w as FormLabel,
86
- P as FormMessage,
87
- d as useFormField
108
+ D as Dialog,
109
+ y as DialogContent,
110
+ k as DialogDescription,
111
+ z as DialogFooter,
112
+ N as DialogHeader,
113
+ p as DialogOverlay,
114
+ m as DialogPortal,
115
+ w as DialogTitle
88
116
  };
89
117
  //# sourceMappingURL=index.es40.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es40.js","sources":["../src/components/ui/form.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport {\n Controller,\n FormProvider,\n useFormContext,\n useFormState,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n} from \"react-hook-form\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Label } from \"@/components/ui/label\";\n\nconst Form = FormProvider;\n\ninterface FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> {\n name: TName;\n}\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue,\n);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState } = useFormContext();\n const formState = useFormState({ name: fieldContext.name });\n const fieldState = getFieldState(fieldContext.name, formState);\n\n if (!fieldContext) {\n throw new Error(\"useFormField should be used within <FormField>\");\n }\n\n const { id } = itemContext;\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ninterface FormItemContextValue {\n id: string;\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue,\n);\n\nfunction FormItem({ className, ...props }: React.ComponentProps<\"div\">) {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div\n data-slot=\"form-item\"\n className={cn(\"grid gap-2\", className)}\n {...props}\n />\n </FormItemContext.Provider>\n );\n}\n\nfunction FormLabel({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { error, formItemId } = useFormField();\n\n return (\n <Label\n data-slot=\"form-label\"\n data-error={!!error}\n className={cn(\"data-[error=true]:text-destructive-foreground\", className)}\n htmlFor={formItemId}\n {...props}\n />\n );\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } =\n useFormField();\n\n return (\n <Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n );\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n const { formDescriptionId } = useFormField();\n\n return (\n <p\n data-slot=\"form-description\"\n id={formDescriptionId}\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction FormMessage({ className, ...props }: React.ComponentProps<\"p\">) {\n const { error, formMessageId } = useFormField();\n\n const body = error ? String(error?.message ?? \"\") : props.children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n data-slot=\"form-message\"\n id={formMessageId}\n className={cn(\"text-destructive-foreground text-sm\", className)}\n {...props}\n >\n {body}\n </p>\n );\n}\n\nexport {\n useFormField,\n Form,\n FormItem,\n FormLabel,\n FormControl,\n FormDescription,\n FormMessage,\n FormField,\n};\n"],"names":["Form","FormProvider","FormFieldContext","React","FormField","props","jsx","Controller","useFormField","fieldContext","itemContext","FormItemContext","getFieldState","useFormContext","formState","useFormState","fieldState","id","FormItem","className","cn","FormLabel","error","formItemId","Label","FormControl","formDescriptionId","formMessageId","Slot","FormMessage","body"],"mappings":";;;;;;AAgBA,MAAMA,IAAOC,GASPC,IAAmBC,EAAM;AAAA,EAC7B,CAAA;AACF,GAEMC,IAAY,CAGhB;AAAA,EACA,GAAGC;AACL,MAEK,gBAAAC,EAAAJ,EAAiB,UAAjB,EAA0B,OAAO,EAAE,MAAMG,EAAM,KAAA,GAC9C,UAAA,gBAAAC,EAACC,GAAY,EAAA,GAAGF,EAAO,CAAA,GACzB,GAIEG,IAAe,MAAM;AACnB,QAAAC,IAAeN,EAAM,WAAWD,CAAgB,GAChDQ,IAAcP,EAAM,WAAWQ,CAAe,GAC9C,EAAE,eAAAC,EAAc,IAAIC,EAAe,GACnCC,IAAYC,EAAa,EAAE,MAAMN,EAAa,MAAM,GACpDO,IAAaJ,EAAcH,EAAa,MAAMK,CAAS;AAE7D,MAAI,CAACL;AACG,UAAA,IAAI,MAAM,gDAAgD;AAG5D,QAAA,EAAE,IAAAQ,MAAOP;AAER,SAAA;AAAA,IACL,IAAAO;AAAA,IACA,MAAMR,EAAa;AAAA,IACnB,YAAY,GAAGQ,CAAE;AAAA,IACjB,mBAAmB,GAAGA,CAAE;AAAA,IACxB,eAAe,GAAGA,CAAE;AAAA,IACpB,GAAGD;AAAA,EACL;AACF,GAMML,IAAkBR,EAAM;AAAA,EAC5B,CAAA;AACF;AAEA,SAASe,EAAS,EAAE,WAAAC,GAAW,GAAGd,KAAsC;AAChE,QAAAY,IAAKd,EAAM,MAAM;AAEvB,2BACGQ,EAAgB,UAAhB,EAAyB,OAAO,EAAE,IAAAM,KACjC,UAAA,gBAAAX;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWc,EAAG,cAAcD,CAAS;AAAA,MACpC,GAAGd;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ;AAEA,SAASgB,EAAU;AAAA,EACjB,WAAAF;AAAA,EACA,GAAGd;AACL,GAAqD;AACnD,QAAM,EAAE,OAAAiB,GAAO,YAAAC,EAAW,IAAIf,EAAa;AAGzC,SAAA,gBAAAF;AAAA,IAACkB;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,cAAY,CAAC,CAACF;AAAA,MACd,WAAWF,EAAG,iDAAiDD,CAAS;AAAA,MACxE,SAASI;AAAA,MACR,GAAGlB;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASoB,EAAY,EAAE,GAAGpB,KAA4C;AACpE,QAAM,EAAE,OAAAiB,GAAO,YAAAC,GAAY,mBAAAG,GAAmB,eAAAC,EAAA,IAC5CnB,EAAa;AAGb,SAAA,gBAAAF;AAAA,IAACsB;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,IAAIL;AAAA,MACJ,oBACGD,IAEG,GAAGI,CAAiB,IAAIC,CAAa,KADrC,GAAGD,CAAiB;AAAA,MAG1B,gBAAc,CAAC,CAACJ;AAAA,MACf,GAAGjB;AAAA,IAAA;AAAA,EACN;AAEJ;AAeA,SAASwB,EAAY,EAAE,WAAAV,GAAW,GAAGd,KAAoC;AACvE,QAAM,EAAE,OAAAiB,GAAO,eAAAK,EAAc,IAAInB,EAAa,GAExCsB,IAAOR,IAAQ,OAAOA,GAAO,WAAW,EAAE,IAAIjB,EAAM;AAE1D,SAAKyB,IAKH,gBAAAxB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,IAAIqB;AAAA,MACJ,WAAWP,EAAG,uCAAuCD,CAAS;AAAA,MAC7D,GAAGd;AAAA,MAEH,UAAAyB;AAAA,IAAA;AAAA,EACH,IAXO;AAaX;"}
1
+ {"version":3,"file":"index.es40.js","sources":["../src/components/ui/dialog.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport { XIcon } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Dialog({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />\n}\n\nfunction DialogTrigger({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />\n}\n\nfunction DialogPortal({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />\n}\n\nfunction DialogClose({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"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 DialogContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content>) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <DialogPrimitive.Content\n data-slot=\"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 {children}\n <DialogPrimitive.Close className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\">\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n </DialogPrimitive.Content>\n </DialogPortal>\n )\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"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 DialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n}\n"],"names":["Dialog","props","DialogPrimitive.Root","DialogPortal","DialogPrimitive.Portal","DialogOverlay","className","jsx","DialogPrimitive.Overlay","cn","DialogContent","children","jsxs","DialogPrimitive.Content","DialogPrimitive.Close","XIcon","DialogHeader","DialogFooter","DialogTitle","DialogPrimitive.Title","DialogDescription","DialogPrimitive.Description"],"mappings":";;;;AAMA,SAASA,EAAO;AAAA,EACd,GAAGC;AACL,GAAsD;AACpD,2BAAQC,GAAA,EAAqB,aAAU,UAAU,GAAGD,GAAO;AAC7D;AAQA,SAASE,EAAa;AAAA,EACpB,GAAGF;AACL,GAAwD;AACtD,2BAAQG,GAAA,EAAuB,aAAU,iBAAiB,GAAGH,GAAO;AACtE;AAQA,SAASI,EAAc;AAAA,EACrB,WAAAC;AAAA,EACA,GAAGL;AACL,GAAyD;AAErD,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,EAAc;AAAA,EACrB,WAAAJ;AAAA,EACA,UAAAK;AAAA,EACA,GAAGV;AACL,GAAyD;AAErD,SAAA,gBAAAW,EAACT,GAAa,EAAA,aAAU,iBACtB,UAAA;AAAA,IAAA,gBAAAI,EAACF,GAAc,EAAA;AAAA,IACf,gBAAAO;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,aAAU;AAAA,QACV,WAAWJ;AAAA,UACT;AAAA,UACAH;AAAA,QACF;AAAA,QACC,GAAGL;AAAA,QAEH,UAAA;AAAA,UAAAU;AAAA,UACA,gBAAAC,EAAAE,GAAA,EAAsB,WAAU,qWAC/B,UAAA;AAAA,YAAA,gBAAAP,EAACQ,GAAM,EAAA;AAAA,YACN,gBAAAR,EAAA,QAAA,EAAK,WAAU,WAAU,UAAK,QAAA,CAAA;AAAA,UAAA,EACjC,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAASS,EAAa,EAAE,WAAAV,GAAW,GAAGL,KAAsC;AAExE,SAAA,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWE,EAAG,gDAAgDH,CAAS;AAAA,MACtE,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASgB,EAAa,EAAE,WAAAX,GAAW,GAAGL,KAAsC;AAExE,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,SAASiB,EAAY;AAAA,EACnB,WAAAZ;AAAA,EACA,GAAGL;AACL,GAAuD;AAEnD,SAAA,gBAAAM;AAAA,IAACY;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWV,EAAG,sCAAsCH,CAAS;AAAA,MAC5D,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;AAEA,SAASmB,EAAkB;AAAA,EACzB,WAAAd;AAAA,EACA,GAAGL;AACL,GAA6D;AAEzD,SAAA,gBAAAM;AAAA,IAACc;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWZ,EAAG,iCAAiCH,CAAS;AAAA,MACvD,GAAGL;AAAA,IAAA;AAAA,EACN;AAEJ;"}
@@ -1,63 +1,59 @@
1
- import { jsxs as m, jsx as e } from "react/jsx-runtime";
2
- import { Label as h } from "./index.es14.js";
3
- import { Input as x } from "./index.es27.js";
4
- import { InputErrorWrapper as y } from "./index.es28.js";
5
- import { useState as p } from "react";
6
- import E from "./index.es29.js";
7
- const w = ({
8
- values: t,
9
- onAddValue: s,
10
- renderValues: o,
11
- maxValues: n,
12
- onRemoveValue: c,
13
- ...u
1
+ import { jsxs as s, jsx as t } from "react/jsx-runtime";
2
+ import { useState as u } from "react";
3
+ import { Select as f, SelectTrigger as h, SelectValue as p, SelectContent as S, SelectItem as C } from "./index.es13.js";
4
+ import { Button as v } from "./index.es10.js";
5
+ import g from "./index.es22.js";
6
+ const V = ({
7
+ availableDefinitions: i,
8
+ addedConstraints: a,
9
+ onAdd: c
14
10
  }) => {
15
- const [i, d] = p(), [l, f] = p();
16
- return /* @__PURE__ */ m(
17
- y,
18
- {
19
- errorCode: i,
20
- errorDescription: l,
21
- showError: !!i,
22
- className: "space-y-2",
23
- children: [
24
- /* @__PURE__ */ e(h, { children: "Add Input" }),
25
- /* @__PURE__ */ e(
26
- x,
27
- {
28
- ...u,
29
- onKeyDown: (r) => {
30
- r.key === "Enter" && (r.preventDefault(), r.stopPropagation());
31
- },
32
- onKeyUp: (r) => {
33
- if (r.key === "Enter") {
34
- if (n && t.length >= n) {
35
- d("Maximum reached"), f(
36
- "You have reached the maximum number of values"
37
- );
38
- return;
39
- }
40
- s?.(r.currentTarget.value), r.currentTarget.value = "";
41
- }
42
- }
43
- }
44
- ),
45
- o ? o() : /* @__PURE__ */ e("div", { className: "space-x-2 flex", children: t.map((r, a) => /* @__PURE__ */ m(
46
- "div",
47
- {
48
- className: "flex items-center text-xs border rounded p-1 w-max mt-2",
49
- children: [
50
- /* @__PURE__ */ e("span", { children: r }),
51
- /* @__PURE__ */ e("button", { onClick: () => c(a), children: /* @__PURE__ */ e(E, { size: 16 }) })
52
- ]
11
+ const [n, r] = u(), d = () => {
12
+ if (!n) return;
13
+ const e = i.find(
14
+ (m) => m.name === n
15
+ );
16
+ if (!e) return;
17
+ const l = {
18
+ name: n,
19
+ value: e.defaultValue
20
+ };
21
+ c([...a, l]), r(void 0);
22
+ }, o = i.filter(
23
+ (e) => !a.some((l) => l.name === e.name)
24
+ );
25
+ return (
26
+ //Don't render the component if there are no constraints to add
27
+ o.length > 0 && /* @__PURE__ */ s("div", { className: "flex items-end gap-2", children: [
28
+ /* @__PURE__ */ t("div", { className: "flex-1", children: /* @__PURE__ */ s(
29
+ f,
30
+ {
31
+ value: n,
32
+ onValueChange: (e) => {
33
+ r(e);
53
34
  },
54
- `${a}-${r}`
55
- )) })
56
- ]
57
- }
35
+ children: [
36
+ /* @__PURE__ */ t(h, { className: "w-full", "aria-label": "Select constraint", children: /* @__PURE__ */ t(p, { placeholder: "Select a constraint" }) }),
37
+ /* @__PURE__ */ t(S, { children: o.map((e) => /* @__PURE__ */ t(C, { value: e.name, children: e.label }, e.name)) })
38
+ ]
39
+ }
40
+ ) }),
41
+ /* @__PURE__ */ t(
42
+ v,
43
+ {
44
+ type: "button",
45
+ variant: "outline",
46
+ size: "icon",
47
+ onClick: d,
48
+ disabled: !n,
49
+ "aria-label": "Add constraint",
50
+ children: /* @__PURE__ */ t(g, { className: "h-4 w-4" })
51
+ }
52
+ )
53
+ ] })
58
54
  );
59
55
  };
60
56
  export {
61
- w as default
57
+ V as default
62
58
  };
63
59
  //# sourceMappingURL=index.es41.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es41.js","sources":["../src/components/multi-input.tsx"],"sourcesContent":["import { Label } from \"@/components/ui/label\";\nimport { Input } from \"@/components/ui/input\";\nimport { X } from \"lucide-react\";\nimport { InputErrorWrapper } from \"@/components/input-error\";\nimport { useState } from \"react\";\n\ninterface MultiInputProps {\n renderValues?: () => React.ReactNode;\n values: string[];\n onAddValue: (newVal: string) => void;\n onRemoveValue: (index: number) => void;\n maxValues?: number;\n}\n\nconst MultiInput = ({\n values,\n onAddValue,\n renderValues,\n maxValues,\n onRemoveValue,\n ...props\n}: MultiInputProps &\n Omit<React.ComponentProps<\"input\">, \"value\" | \"onChange\">) => {\n const [primaryError, setPrimaryError] = useState<string>();\n const [errorDescription, setErrorDescription] = useState<string>();\n\n return (\n <InputErrorWrapper\n errorCode={primaryError}\n errorDescription={errorDescription}\n showError={!!primaryError}\n className=\"space-y-2\"\n >\n <Label>Add Input</Label>\n <Input\n {...props}\n onKeyDown={(e) => {\n // Prevent form submission on Enter key press\n if (e.key === \"Enter\") {\n e.preventDefault();\n //prevent bubbling up\n e.stopPropagation();\n }\n }}\n onKeyUp={(e) => {\n // Add value on Enter key press\n if (e.key === \"Enter\") {\n if (maxValues && values.length >= maxValues) {\n setPrimaryError(\"Maximum reached\");\n setErrorDescription(\n \"You have reached the maximum number of values\",\n );\n return;\n }\n onAddValue?.(e.currentTarget.value);\n e.currentTarget.value = \"\";\n }\n }}\n />\n {renderValues ? (\n renderValues()\n ) : (\n <div className=\"space-x-2 flex\">\n {values.map((value, i) => (\n <div\n key={`${i}-${value}`}\n className=\"flex items-center text-xs border rounded p-1 w-max mt-2\"\n >\n <span>{value}</span>\n <button onClick={() => onRemoveValue(i)}>\n <X size={16} />\n </button>\n </div>\n ))}\n </div>\n )}\n </InputErrorWrapper>\n );\n};\n\nexport default MultiInput;\n"],"names":["MultiInput","values","onAddValue","renderValues","maxValues","onRemoveValue","props","primaryError","setPrimaryError","useState","errorDescription","setErrorDescription","jsxs","InputErrorWrapper","jsx","Label","Input","e","value","i","X"],"mappings":";;;;;;AAcA,MAAMA,IAAa,CAAC;AAAA,EAClB,QAAAC;AAAA,EACA,YAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,GAAGC;AACL,MACgE;AAC9D,QAAM,CAACC,GAAcC,CAAe,IAAIC,EAAiB,GACnD,CAACC,GAAkBC,CAAmB,IAAIF,EAAiB;AAG/D,SAAA,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAWN;AAAA,MACX,kBAAAG;AAAA,MACA,WAAW,CAAC,CAACH;AAAA,MACb,WAAU;AAAA,MAEV,UAAA;AAAA,QAAA,gBAAAO,EAACC,KAAM,UAAS,YAAA,CAAA;AAAA,QAChB,gBAAAD;AAAA,UAACE;AAAA,UAAA;AAAA,YACE,GAAGV;AAAA,YACJ,WAAW,CAACW,MAAM;AAEZ,cAAAA,EAAE,QAAQ,YACZA,EAAE,eAAe,GAEjBA,EAAE,gBAAgB;AAAA,YAEtB;AAAA,YACA,SAAS,CAACA,MAAM;AAEV,kBAAAA,EAAE,QAAQ,SAAS;AACjB,oBAAAb,KAAaH,EAAO,UAAUG,GAAW;AAC3C,kBAAAI,EAAgB,iBAAiB,GACjCG;AAAA,oBACE;AAAA,kBACF;AACA;AAAA,gBAAA;AAEW,gBAAAT,IAAAe,EAAE,cAAc,KAAK,GAClCA,EAAE,cAAc,QAAQ;AAAA,cAAA;AAAA,YAC1B;AAAA,UACF;AAAA,QACF;AAAA,QACCd,IACCA,EAAa,IAEZ,gBAAAW,EAAA,OAAA,EAAI,WAAU,kBACZ,UAAOb,EAAA,IAAI,CAACiB,GAAOC,MAClB,gBAAAP;AAAA,UAAC;AAAA,UAAA;AAAA,YAEC,WAAU;AAAA,YAEV,UAAA;AAAA,cAAA,gBAAAE,EAAC,UAAM,UAAMI,EAAA,CAAA;AAAA,cACb,gBAAAJ,EAAC,UAAO,EAAA,SAAS,MAAMT,EAAcc,CAAC,GACpC,UAAC,gBAAAL,EAAAM,GAAA,EAAE,MAAM,GAAI,CAAA,EACf,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UANK,GAAGD,CAAC,IAAID,CAAK;AAAA,QAAA,CAQrB,EACH,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.es41.js","sources":["../src/packages/constraints/constraint-add.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\nimport { Button } from \"@/components/ui/button\";\nimport { Plus } from \"lucide-react\";\nimport { Constraint, ConstraintDefinition } from \"./context\";\n\ninterface ConstraintsSectionProps {\n /** The available constraints for a specific schema type */\n availableDefinitions: ConstraintDefinition[];\n addedConstraints: Constraint[];\n onAdd: (constraints: Constraint[]) => void;\n}\n\nconst ConstraintsAdd = ({\n availableDefinitions,\n addedConstraints,\n onAdd,\n}: ConstraintsSectionProps) => {\n const [selectedConstraintDefinition, setSelectedConstraintDefinition] =\n useState<Constraint[\"name\"]>();\n\n const handleAddConstraint = () => {\n if (!selectedConstraintDefinition) return;\n\n const definition = availableDefinitions.find(\n (c) => c.name === selectedConstraintDefinition,\n );\n if (!definition) return;\n\n const newConstraint: Constraint = {\n name: selectedConstraintDefinition,\n value: definition.defaultValue,\n };\n\n onAdd([...addedConstraints, newConstraint]);\n setSelectedConstraintDefinition(undefined);\n };\n\n const unusedConstraintDefinitions = availableDefinitions.filter(\n (constraint) => !addedConstraints.some((v) => v.name === constraint.name),\n );\n\n return (\n //Don't render the component if there are no constraints to add\n unusedConstraintDefinitions.length > 0 && (\n <div className=\"flex items-end gap-2\">\n <div className=\"flex-1\">\n <Select\n value={selectedConstraintDefinition}\n onValueChange={(newVal) => {\n setSelectedConstraintDefinition(newVal as Constraint[\"name\"]);\n }}\n >\n <SelectTrigger className=\"w-full\" aria-label=\"Select constraint\">\n <SelectValue placeholder=\"Select a constraint\" />\n </SelectTrigger>\n <SelectContent>\n {unusedConstraintDefinitions.map((constraint) => (\n <SelectItem key={constraint.name} value={constraint.name}>\n {constraint.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <Button\n type=\"button\"\n variant=\"outline\"\n size=\"icon\"\n onClick={handleAddConstraint}\n disabled={!selectedConstraintDefinition}\n aria-label=\"Add constraint\"\n >\n <Plus className=\"h-4 w-4\" />\n </Button>\n </div>\n )\n );\n};\n\nexport default ConstraintsAdd;\n"],"names":["ConstraintsAdd","availableDefinitions","addedConstraints","onAdd","selectedConstraintDefinition","setSelectedConstraintDefinition","useState","handleAddConstraint","definition","c","newConstraint","unusedConstraintDefinitions","constraint","v","jsxs","jsx","Select","newVal","SelectTrigger","SelectValue","SelectContent","SelectItem","Button","Plus"],"mappings":";;;;;AAmBA,MAAMA,IAAiB,CAAC;AAAA,EACtB,sBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,OAAAC;AACF,MAA+B;AAC7B,QAAM,CAACC,GAA8BC,CAA+B,IAClEC,EAA6B,GAEzBC,IAAsB,MAAM;AAChC,QAAI,CAACH,EAA8B;AAEnC,UAAMI,IAAaP,EAAqB;AAAA,MACtC,CAACQ,MAAMA,EAAE,SAASL;AAAA,IACpB;AACA,QAAI,CAACI,EAAY;AAEjB,UAAME,IAA4B;AAAA,MAChC,MAAMN;AAAA,MACN,OAAOI,EAAW;AAAA,IACpB;AAEA,IAAAL,EAAM,CAAC,GAAGD,GAAkBQ,CAAa,CAAC,GAC1CL,EAAgC,MAAS;AAAA,EAC3C,GAEMM,IAA8BV,EAAqB;AAAA,IACvD,CAACW,MAAe,CAACV,EAAiB,KAAK,CAACW,MAAMA,EAAE,SAASD,EAAW,IAAI;AAAA,EAC1E;AAEA;AAAA;AAAA,IAEED,EAA4B,SAAS,KAClC,gBAAAG,EAAA,OAAA,EAAI,WAAU,wBACb,UAAA;AAAA,MAAC,gBAAAC,EAAA,OAAA,EAAI,WAAU,UACb,UAAA,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,OAAOZ;AAAA,UACP,eAAe,CAACa,MAAW;AACzB,YAAAZ,EAAgCY,CAA4B;AAAA,UAC9D;AAAA,UAEA,UAAA;AAAA,YAAC,gBAAAF,EAAAG,GAAA,EAAc,WAAU,UAAS,cAAW,qBAC3C,UAAC,gBAAAH,EAAAI,GAAA,EAAY,aAAY,sBAAA,CAAsB,EACjD,CAAA;AAAA,8BACCC,GACE,EAAA,UAAAT,EAA4B,IAAI,CAACC,MAC/B,gBAAAG,EAAAM,GAAA,EAAiC,OAAOT,EAAW,MACjD,UAAWA,EAAA,SADGA,EAAW,IAE5B,CACD,EACH,CAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA,GAEJ;AAAA,MACA,gBAAAG;AAAA,QAACO;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,SAASf;AAAA,UACT,UAAU,CAACH;AAAA,UACX,cAAW;AAAA,UAEX,UAAA,gBAAAW,EAACQ,GAAK,EAAA,WAAU,UAAU,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAC5B,EACF,CAAA;AAAA;AAGN;"}