@measured/puck 0.17.0-canary.35170f8 → 0.17.0-canary.361e5f9

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.mjs CHANGED
@@ -23,35 +23,45 @@ var require_classnames = __commonJS({
23
23
  (function() {
24
24
  "use strict";
25
25
  var hasOwn = {}.hasOwnProperty;
26
- var nativeCodeString = "[native code]";
27
26
  function classNames() {
28
- var classes = [];
27
+ var classes = "";
29
28
  for (var i = 0; i < arguments.length; i++) {
30
29
  var arg = arguments[i];
31
- if (!arg) continue;
32
- var argType = typeof arg;
33
- if (argType === "string" || argType === "number") {
34
- classes.push(arg);
35
- } else if (Array.isArray(arg)) {
36
- if (arg.length) {
37
- var inner = classNames.apply(null, arg);
38
- if (inner) {
39
- classes.push(inner);
40
- }
41
- }
42
- } else if (argType === "object") {
43
- if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
44
- classes.push(arg.toString());
45
- continue;
46
- }
47
- for (var key in arg) {
48
- if (hasOwn.call(arg, key) && arg[key]) {
49
- classes.push(key);
50
- }
51
- }
30
+ if (arg) {
31
+ classes = appendClass(classes, parseValue(arg));
32
+ }
33
+ }
34
+ return classes;
35
+ }
36
+ function parseValue(arg) {
37
+ if (typeof arg === "string" || typeof arg === "number") {
38
+ return arg;
39
+ }
40
+ if (typeof arg !== "object") {
41
+ return "";
42
+ }
43
+ if (Array.isArray(arg)) {
44
+ return classNames.apply(null, arg);
45
+ }
46
+ if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
47
+ return arg.toString();
48
+ }
49
+ var classes = "";
50
+ for (var key in arg) {
51
+ if (hasOwn.call(arg, key) && arg[key]) {
52
+ classes = appendClass(classes, key);
52
53
  }
53
54
  }
54
- return classes.join(" ");
55
+ return classes;
56
+ }
57
+ function appendClass(value, newClass) {
58
+ if (!newClass) {
59
+ return value;
60
+ }
61
+ if (value) {
62
+ return value + " " + newClass;
63
+ }
64
+ return value + newClass;
55
65
  }
56
66
  if (typeof module !== "undefined" && module.exports) {
57
67
  classNames.default = classNames;
@@ -184,7 +194,7 @@ var styles_module_default2 = { "InputWrapper": "_InputWrapper_1l5m8_1", "Input":
184
194
  import {
185
195
  useCallback as useCallback5,
186
196
  useEffect as useEffect9,
187
- useMemo as useMemo2,
197
+ useMemo as useMemo4,
188
198
  useState as useState10
189
199
  } from "react";
190
200
 
@@ -203,6 +213,17 @@ init_react_import();
203
213
 
204
214
  // ../../node_modules/lucide-react/dist/esm/createLucideIcon.js
205
215
  init_react_import();
216
+ import { forwardRef as forwardRef2, createElement as createElement2 } from "react";
217
+
218
+ // ../../node_modules/lucide-react/dist/esm/shared/src/utils.js
219
+ init_react_import();
220
+ var toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
221
+ var mergeClasses = (...classes) => classes.filter((className, index, array) => {
222
+ return Boolean(className) && className.trim() !== "" && array.indexOf(className) === index;
223
+ }).join(" ").trim();
224
+
225
+ // ../../node_modules/lucide-react/dist/esm/Icon.js
226
+ init_react_import();
206
227
  import { forwardRef, createElement } from "react";
207
228
 
208
229
  // ../../node_modules/lucide-react/dist/esm/defaultAttributes.js
@@ -219,41 +240,61 @@ var defaultAttributes = {
219
240
  strokeLinejoin: "round"
220
241
  };
221
242
 
243
+ // ../../node_modules/lucide-react/dist/esm/Icon.js
244
+ var Icon = forwardRef(
245
+ (_a, ref) => {
246
+ var _b = _a, {
247
+ color = "currentColor",
248
+ size = 24,
249
+ strokeWidth = 2,
250
+ absoluteStrokeWidth,
251
+ className = "",
252
+ children,
253
+ iconNode
254
+ } = _b, rest = __objRest(_b, [
255
+ "color",
256
+ "size",
257
+ "strokeWidth",
258
+ "absoluteStrokeWidth",
259
+ "className",
260
+ "children",
261
+ "iconNode"
262
+ ]);
263
+ return createElement(
264
+ "svg",
265
+ __spreadValues(__spreadProps(__spreadValues({
266
+ ref
267
+ }, defaultAttributes), {
268
+ width: size,
269
+ height: size,
270
+ stroke: color,
271
+ strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,
272
+ className: mergeClasses("lucide", className)
273
+ }), rest),
274
+ [
275
+ ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),
276
+ ...Array.isArray(children) ? children : [children]
277
+ ]
278
+ );
279
+ }
280
+ );
281
+
222
282
  // ../../node_modules/lucide-react/dist/esm/createLucideIcon.js
223
- var toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase().trim();
224
283
  var createLucideIcon = (iconName, iconNode) => {
225
- const Component = forwardRef(
284
+ const Component = forwardRef2(
226
285
  (_a, ref) => {
227
- var _b = _a, { color = "currentColor", size = 24, strokeWidth = 2, absoluteStrokeWidth, className = "", children } = _b, rest = __objRest(_b, ["color", "size", "strokeWidth", "absoluteStrokeWidth", "className", "children"]);
228
- return createElement(
229
- "svg",
230
- __spreadValues(__spreadProps(__spreadValues({
231
- ref
232
- }, defaultAttributes), {
233
- width: size,
234
- height: size,
235
- stroke: color,
236
- strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,
237
- className: ["lucide", `lucide-${toKebabCase(iconName)}`, className].join(" ")
238
- }), rest),
239
- [
240
- ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),
241
- ...Array.isArray(children) ? children : [children]
242
- ]
243
- );
286
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
287
+ return createElement2(Icon, __spreadValues({
288
+ ref,
289
+ iconNode,
290
+ className: mergeClasses(`lucide-${toKebabCase(iconName)}`, className)
291
+ }, props));
244
292
  }
245
293
  );
246
294
  Component.displayName = `${iconName}`;
247
295
  return Component;
248
296
  };
249
297
 
250
- // ../../node_modules/lucide-react/dist/esm/icons/check-circle.js
251
- init_react_import();
252
- var CheckCircle = createLucideIcon("CheckCircle", [
253
- ["path", { d: "M22 11.08V12a10 10 0 1 1-5.93-9.14", key: "g774vq" }],
254
- ["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
255
- ]);
256
-
257
298
  // ../../node_modules/lucide-react/dist/esm/icons/chevron-down.js
258
299
  init_react_import();
259
300
  var ChevronDown = createLucideIcon("ChevronDown", [
@@ -270,6 +311,13 @@ var ChevronRight = createLucideIcon("ChevronRight", [
270
311
  init_react_import();
271
312
  var ChevronUp = createLucideIcon("ChevronUp", [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]]);
272
313
 
314
+ // ../../node_modules/lucide-react/dist/esm/icons/circle-check-big.js
315
+ init_react_import();
316
+ var CircleCheckBig = createLucideIcon("CircleCheckBig", [
317
+ ["path", { d: "M21.801 10A10 10 0 1 1 17 3.335", key: "yps3ct" }],
318
+ ["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
319
+ ]);
320
+
273
321
  // ../../node_modules/lucide-react/dist/esm/icons/copy.js
274
322
  init_react_import();
275
323
  var Copy = createLucideIcon("Copy", [
@@ -277,6 +325,14 @@ var Copy = createLucideIcon("Copy", [
277
325
  ["path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2", key: "zix9uf" }]
278
326
  ]);
279
327
 
328
+ // ../../node_modules/lucide-react/dist/esm/icons/ellipsis-vertical.js
329
+ init_react_import();
330
+ var EllipsisVertical = createLucideIcon("EllipsisVertical", [
331
+ ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
332
+ ["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }],
333
+ ["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }]
334
+ ]);
335
+
280
336
  // ../../node_modules/lucide-react/dist/esm/icons/globe.js
281
337
  init_react_import();
282
338
  var Globe = createLucideIcon("Globe", [
@@ -300,12 +356,24 @@ var Layers = createLucideIcon("Layers", [
300
356
  [
301
357
  "path",
302
358
  {
303
- d: "m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",
304
- key: "8b97xw"
359
+ d: "M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",
360
+ key: "zw3jo"
361
+ }
362
+ ],
363
+ [
364
+ "path",
365
+ {
366
+ d: "M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",
367
+ key: "1wduqc"
305
368
  }
306
369
  ],
307
- ["path", { d: "m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65", key: "dd6zsq" }],
308
- ["path", { d: "m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65", key: "ep9fru" }]
370
+ [
371
+ "path",
372
+ {
373
+ d: "M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",
374
+ key: "kqbvx6"
375
+ }
376
+ ]
309
377
  ]);
310
378
 
311
379
  // ../../node_modules/lucide-react/dist/esm/icons/layout-grid.js
@@ -327,12 +395,19 @@ var Link = createLucideIcon("Link", [
327
395
  // ../../node_modules/lucide-react/dist/esm/icons/list.js
328
396
  init_react_import();
329
397
  var List = createLucideIcon("List", [
330
- ["line", { x1: "8", x2: "21", y1: "6", y2: "6", key: "7ey8pc" }],
331
- ["line", { x1: "8", x2: "21", y1: "12", y2: "12", key: "rjfblc" }],
332
- ["line", { x1: "8", x2: "21", y1: "18", y2: "18", key: "c3b1m8" }],
333
- ["line", { x1: "3", x2: "3.01", y1: "6", y2: "6", key: "1g7gq3" }],
334
- ["line", { x1: "3", x2: "3.01", y1: "12", y2: "12", key: "1pjlvk" }],
335
- ["line", { x1: "3", x2: "3.01", y1: "18", y2: "18", key: "28t2mc" }]
398
+ ["path", { d: "M3 12h.01", key: "nlz23k" }],
399
+ ["path", { d: "M3 18h.01", key: "1tta3j" }],
400
+ ["path", { d: "M3 6h.01", key: "1rqtza" }],
401
+ ["path", { d: "M8 12h13", key: "1za7za" }],
402
+ ["path", { d: "M8 18h13", key: "1lx6n3" }],
403
+ ["path", { d: "M8 6h13", key: "ik3vkj" }]
404
+ ]);
405
+
406
+ // ../../node_modules/lucide-react/dist/esm/icons/lock-open.js
407
+ init_react_import();
408
+ var LockOpen = createLucideIcon("LockOpen", [
409
+ ["rect", { width: "18", height: "11", x: "3", y: "11", rx: "2", ry: "2", key: "1w4ew1" }],
410
+ ["path", { d: "M7 11V7a5 5 0 0 1 9.9-1", key: "1mm8w8" }]
336
411
  ]);
337
412
 
338
413
  // ../../node_modules/lucide-react/dist/esm/icons/lock.js
@@ -350,26 +425,18 @@ var Monitor = createLucideIcon("Monitor", [
350
425
  ["line", { x1: "12", x2: "12", y1: "17", y2: "21", key: "vw1qmm" }]
351
426
  ]);
352
427
 
353
- // ../../node_modules/lucide-react/dist/esm/icons/more-vertical.js
354
- init_react_import();
355
- var MoreVertical = createLucideIcon("MoreVertical", [
356
- ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
357
- ["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }],
358
- ["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }]
359
- ]);
360
-
361
428
  // ../../node_modules/lucide-react/dist/esm/icons/panel-left.js
362
429
  init_react_import();
363
430
  var PanelLeft = createLucideIcon("PanelLeft", [
364
- ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", key: "1m3agn" }],
365
- ["line", { x1: "9", x2: "9", y1: "3", y2: "21", key: "13tij5" }]
431
+ ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
432
+ ["path", { d: "M9 3v18", key: "fh3hqa" }]
366
433
  ]);
367
434
 
368
435
  // ../../node_modules/lucide-react/dist/esm/icons/panel-right.js
369
436
  init_react_import();
370
437
  var PanelRight = createLucideIcon("PanelRight", [
371
- ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", key: "1m3agn" }],
372
- ["line", { x1: "15", x2: "15", y1: "3", y2: "21", key: "1hpv9i" }]
438
+ ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
439
+ ["path", { d: "M15 3v18", key: "14nvp0" }]
373
440
  ]);
374
441
 
375
442
  // ../../node_modules/lucide-react/dist/esm/icons/plus.js
@@ -383,7 +450,7 @@ var Plus = createLucideIcon("Plus", [
383
450
  init_react_import();
384
451
  var Redo2 = createLucideIcon("Redo2", [
385
452
  ["path", { d: "m15 14 5-5-5-5", key: "12vg1m" }],
386
- ["path", { d: "M20 9H9.5A5.5 5.5 0 0 0 4 14.5v0A5.5 5.5 0 0 0 9.5 20H13", key: "19mnr4" }]
453
+ ["path", { d: "M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13", key: "6uklza" }]
387
454
  ]);
388
455
 
389
456
  // ../../node_modules/lucide-react/dist/esm/icons/search.js
@@ -441,14 +508,7 @@ var Type = createLucideIcon("Type", [
441
508
  init_react_import();
442
509
  var Undo2 = createLucideIcon("Undo2", [
443
510
  ["path", { d: "M9 14 4 9l5-5", key: "102s5s" }],
444
- ["path", { d: "M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5v0a5.5 5.5 0 0 1-5.5 5.5H11", key: "llx8ln" }]
445
- ]);
446
-
447
- // ../../node_modules/lucide-react/dist/esm/icons/unlock.js
448
- init_react_import();
449
- var Unlock = createLucideIcon("Unlock", [
450
- ["rect", { width: "18", height: "11", x: "3", y: "11", rx: "2", ry: "2", key: "1w4ew1" }],
451
- ["path", { d: "M7 11V7a5 5 0 0 1 9.9-1", key: "1mm8w8" }]
511
+ ["path", { d: "M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11", key: "f3b9sd" }]
452
512
  ]);
453
513
 
454
514
  // ../../node_modules/lucide-react/dist/esm/icons/zoom-in.js
@@ -1449,6 +1509,7 @@ var DefaultField = ({
1449
1509
  className: getClassName6("input"),
1450
1510
  autoComplete: "off",
1451
1511
  type: field.type,
1512
+ title: label || name,
1452
1513
  name,
1453
1514
  value: typeof value === "undefined" ? "" : value.toString(),
1454
1515
  onChange: (e) => {
@@ -1707,7 +1768,7 @@ var ExternalInput = ({
1707
1768
  onChange(null);
1708
1769
  },
1709
1770
  disabled: readOnly,
1710
- children: /* @__PURE__ */ jsx14(Unlock, { size: 16 })
1771
+ children: /* @__PURE__ */ jsx14(LockOpen, { size: 16 })
1711
1772
  }
1712
1773
  )
1713
1774
  ] }),
@@ -1869,6 +1930,20 @@ var ExternalField = ({
1869
1930
 
1870
1931
  // components/AutoField/fields/RadioField/index.tsx
1871
1932
  init_react_import();
1933
+ import { useMemo as useMemo2 } from "react";
1934
+
1935
+ // lib/safe-json-parse.ts
1936
+ init_react_import();
1937
+ var safeJsonParse = (str) => {
1938
+ try {
1939
+ const jsonValue = JSON.parse(str);
1940
+ return jsonValue;
1941
+ } catch (e) {
1942
+ return str;
1943
+ }
1944
+ };
1945
+
1946
+ // components/AutoField/fields/RadioField/index.tsx
1872
1947
  import { jsx as jsx16, jsxs as jsxs8 } from "react/jsx-runtime";
1873
1948
  var getClassName11 = get_class_name_factory_default("Input", styles_module_default2);
1874
1949
  var RadioField = ({
@@ -1881,13 +1956,17 @@ var RadioField = ({
1881
1956
  label,
1882
1957
  Label
1883
1958
  }) => {
1959
+ const flatOptions = useMemo2(
1960
+ () => field.type === "radio" ? field.options.map(({ value: value2 }) => value2) : [],
1961
+ [field]
1962
+ );
1884
1963
  if (field.type !== "radio" || !field.options) {
1885
1964
  return null;
1886
1965
  }
1887
1966
  return /* @__PURE__ */ jsx16(
1888
1967
  Label,
1889
1968
  {
1890
- icon: /* @__PURE__ */ jsx16(CheckCircle, { size: 16 }),
1969
+ icon: /* @__PURE__ */ jsx16(CircleCheckBig, { size: 16 }),
1891
1970
  label: label || name,
1892
1971
  readOnly,
1893
1972
  el: "div",
@@ -1904,11 +1983,12 @@ var RadioField = ({
1904
1983
  value: option.value,
1905
1984
  name,
1906
1985
  onChange: (e) => {
1907
- if (e.currentTarget.value === "true" || e.currentTarget.value === "false") {
1908
- onChange(JSON.parse(e.currentTarget.value));
1909
- return;
1986
+ const jsonValue = safeJsonParse(e.target.value) || e.target.value;
1987
+ if (flatOptions.indexOf(jsonValue) > -1) {
1988
+ onChange(jsonValue);
1989
+ } else {
1990
+ onChange(e.target.value);
1910
1991
  }
1911
- onChange(e.currentTarget.value);
1912
1992
  },
1913
1993
  disabled: readOnly,
1914
1994
  checked: value === option.value
@@ -1925,6 +2005,7 @@ var RadioField = ({
1925
2005
 
1926
2006
  // components/AutoField/fields/SelectField/index.tsx
1927
2007
  init_react_import();
2008
+ import { useMemo as useMemo3 } from "react";
1928
2009
  import { jsx as jsx17 } from "react/jsx-runtime";
1929
2010
  var getClassName12 = get_class_name_factory_default("Input", styles_module_default2);
1930
2011
  var SelectField = ({
@@ -1937,6 +2018,10 @@ var SelectField = ({
1937
2018
  readOnly,
1938
2019
  id
1939
2020
  }) => {
2021
+ const flatOptions = useMemo3(
2022
+ () => field.type === "select" ? field.options.map(({ value: value2 }) => value2) : [],
2023
+ [field]
2024
+ );
1940
2025
  if (field.type !== "select" || !field.options) {
1941
2026
  return null;
1942
2027
  }
@@ -1950,14 +2035,16 @@ var SelectField = ({
1950
2035
  "select",
1951
2036
  {
1952
2037
  id,
2038
+ title: label || name,
1953
2039
  className: getClassName12("input"),
1954
2040
  disabled: readOnly,
1955
2041
  onChange: (e) => {
1956
- if (e.currentTarget.value === "true" || e.currentTarget.value === "false") {
1957
- onChange(JSON.parse(e.currentTarget.value));
1958
- return;
2042
+ const jsonValue = safeJsonParse(e.target.value) || e.target.value;
2043
+ if (flatOptions.indexOf(jsonValue) > -1) {
2044
+ onChange(jsonValue);
2045
+ } else {
2046
+ onChange(e.target.value);
1959
2047
  }
1960
- onChange(e.currentTarget.value);
1961
2048
  },
1962
2049
  value,
1963
2050
  children: field.options.map((option) => /* @__PURE__ */ jsx17(
@@ -2036,7 +2123,7 @@ var ObjectField = ({
2036
2123
  Label,
2037
2124
  {
2038
2125
  label: label || name,
2039
- icon: /* @__PURE__ */ jsx19(MoreVertical, { size: 16 }),
2126
+ icon: /* @__PURE__ */ jsx19(EllipsisVertical, { size: 16 }),
2040
2127
  el: "div",
2041
2128
  readOnly,
2042
2129
  children: /* @__PURE__ */ jsx19("div", { className: getClassName14(), children: /* @__PURE__ */ jsx19("fieldset", { className: getClassName14("fieldset"), children: Object.keys(field.objectFields).map((fieldName) => {
@@ -2117,7 +2204,7 @@ var FieldLabelInternal2 = ({
2117
2204
  readOnly
2118
2205
  }) => {
2119
2206
  const { overrides } = useAppContext();
2120
- const Wrapper = useMemo2(
2207
+ const Wrapper = useMemo4(
2121
2208
  () => overrides.fieldLabel || FieldLabel,
2122
2209
  [overrides]
2123
2210
  );
@@ -2203,7 +2290,18 @@ function AutoFieldInternal(props) {
2203
2290
  }
2204
2291
  const children = defaultFields[field.type](mergedProps);
2205
2292
  const Render2 = render[field.type];
2206
- return /* @__PURE__ */ jsx20("div", { className: getClassNameWrapper(), onFocus, onBlur, children: /* @__PURE__ */ jsx20(Render2, __spreadProps(__spreadValues({}, mergedProps), { children })) });
2293
+ return /* @__PURE__ */ jsx20(
2294
+ "div",
2295
+ {
2296
+ className: getClassNameWrapper(),
2297
+ onFocus,
2298
+ onBlur,
2299
+ onClick: (e) => {
2300
+ e.stopPropagation();
2301
+ },
2302
+ children: /* @__PURE__ */ jsx20(Render2, __spreadProps(__spreadValues({}, mergedProps), { children }))
2303
+ }
2304
+ );
2207
2305
  }
2208
2306
  function AutoFieldPrivate(props) {
2209
2307
  const { state } = useAppContext();
@@ -2232,7 +2330,7 @@ function AutoFieldPrivate(props) {
2232
2330
  return /* @__PURE__ */ jsx20(AutoFieldInternal, __spreadValues(__spreadValues({}, props), localProps));
2233
2331
  }
2234
2332
  function AutoField(props) {
2235
- const DefaultLabel = useMemo2(() => {
2333
+ const DefaultLabel = useMemo4(() => {
2236
2334
  const DefaultLabel2 = (labelProps) => /* @__PURE__ */ jsx20(
2237
2335
  "div",
2238
2336
  __spreadProps(__spreadValues({}, labelProps), {
@@ -2255,7 +2353,7 @@ var styles_module_default10 = { "Drawer": "_Drawer_1oa7v_1", "DrawerItem--disabl
2255
2353
  import {
2256
2354
  createContext as createContext2,
2257
2355
  useContext as useContext2,
2258
- useMemo as useMemo3
2356
+ useMemo as useMemo5
2259
2357
  } from "react";
2260
2358
  import { jsx as jsx21, jsxs as jsxs10 } from "react/jsx-runtime";
2261
2359
  var getClassName16 = get_class_name_factory_default("Drawer", styles_module_default10);
@@ -2293,7 +2391,7 @@ var DrawerItem = ({
2293
2391
  }) => {
2294
2392
  const ctx = useContext2(drawerContext);
2295
2393
  const resolvedId = `${ctx.droppableId}::${id || name}`;
2296
- const CustomInner = useMemo3(
2394
+ const CustomInner = useMemo5(
2297
2395
  () => children || (({ children: children2, name: name2 }) => /* @__PURE__ */ jsx21("div", { className: getClassNameItem2("default"), children: children2 })),
2298
2396
  [children]
2299
2397
  );
@@ -2340,7 +2438,7 @@ import { useContext as useContext3, useEffect as useEffect12 } from "react";
2340
2438
  init_react_import();
2341
2439
  import {
2342
2440
  useEffect as useEffect11,
2343
- useMemo as useMemo4,
2441
+ useMemo as useMemo6,
2344
2442
  useState as useState12
2345
2443
  } from "react";
2346
2444
  import { Draggable as Draggable2 } from "@measured/dnd";
@@ -2430,7 +2528,7 @@ var DraggableComponent = ({
2430
2528
  setDisableSecondaryAnimation(true);
2431
2529
  }
2432
2530
  }, []);
2433
- const CustomActionBar = useMemo4(
2531
+ const CustomActionBar = useMemo6(
2434
2532
  () => overrides.actionBar || DefaultActionBar,
2435
2533
  [overrides.actionBar]
2436
2534
  );
@@ -2961,7 +3059,7 @@ init_react_import();
2961
3059
  import {
2962
3060
  useCallback as useCallback11,
2963
3061
  useEffect as useEffect18,
2964
- useMemo as useMemo13,
3062
+ useMemo as useMemo15,
2965
3063
  useReducer,
2966
3064
  useState as useState21
2967
3065
  } from "react";
@@ -3036,7 +3134,7 @@ var styles_module_default13 = { "SidebarSection": "_SidebarSection_125qe_1", "Si
3036
3134
 
3037
3135
  // lib/use-breadcrumbs.ts
3038
3136
  init_react_import();
3039
- import { useContext as useContext4, useMemo as useMemo5 } from "react";
3137
+ import { useContext as useContext4, useMemo as useMemo7 } from "react";
3040
3138
  var convertPathDataToBreadcrumbs = (selectedItem, pathData, data) => {
3041
3139
  const id = selectedItem ? selectedItem == null ? void 0 : selectedItem.props.id : "";
3042
3140
  const currentPathData = pathData && id && pathData[id] ? __spreadValues({}, pathData[id]) : { label: "Page", path: [] };
@@ -3087,7 +3185,7 @@ var useBreadcrumbs = (renderCount) => {
3087
3185
  selectedItem
3088
3186
  } = useAppContext();
3089
3187
  const dzContext = useContext4(dropZoneContext);
3090
- return useMemo5(() => {
3188
+ return useMemo7(() => {
3091
3189
  const breadcrumbs = convertPathDataToBreadcrumbs(
3092
3190
  selectedItem,
3093
3191
  dzContext == null ? void 0 : dzContext.pathData,
@@ -3571,7 +3669,23 @@ init_react_import();
3571
3669
  var styles_module_default16 = { "PuckFields": "_PuckFields_jp3lw_1", "PuckFields--isLoading": "_PuckFields--isLoading_jp3lw_6", "PuckFields-loadingOverlay": "_PuckFields-loadingOverlay_jp3lw_10", "PuckFields-loadingOverlayInner": "_PuckFields-loadingOverlayInner_jp3lw_25" };
3572
3670
 
3573
3671
  // components/Puck/components/Fields/index.tsx
3574
- import { useCallback as useCallback7, useEffect as useEffect13, useMemo as useMemo6, useState as useState15 } from "react";
3672
+ import { useCallback as useCallback7, useEffect as useEffect13, useMemo as useMemo8, useState as useState15 } from "react";
3673
+
3674
+ // lib/use-parent.ts
3675
+ init_react_import();
3676
+ import { useContext as useContext5 } from "react";
3677
+ var useParent = (itemSelector) => {
3678
+ var _a;
3679
+ const { selectedItem, state } = useAppContext();
3680
+ const { pathData } = useContext5(dropZoneContext) || {};
3681
+ const item = itemSelector ? getItem(itemSelector, state.data) : selectedItem;
3682
+ const breadcrumbs = convertPathDataToBreadcrumbs(item, pathData, state.data);
3683
+ const lastItem = breadcrumbs[breadcrumbs.length - 1];
3684
+ const parent = (lastItem == null ? void 0 : lastItem.selector) ? (_a = getItem(lastItem.selector, state.data)) != null ? _a : null : null;
3685
+ return parent || null;
3686
+ };
3687
+
3688
+ // components/Puck/components/Fields/index.tsx
3575
3689
  import { Fragment as Fragment12, jsx as jsx27, jsxs as jsxs15 } from "react/jsx-runtime";
3576
3690
  var getClassName21 = get_class_name_factory_default("PuckFields", styles_module_default16);
3577
3691
  var defaultPageFields = {
@@ -3585,10 +3699,11 @@ var DefaultFields = ({
3585
3699
  var useResolvedFields = () => {
3586
3700
  var _a, _b;
3587
3701
  const { selectedItem, state, config } = useAppContext();
3702
+ const parent = useParent();
3588
3703
  const { data } = state;
3589
3704
  const rootFields = ((_a = config.root) == null ? void 0 : _a.fields) || defaultPageFields;
3590
3705
  const componentConfig = selectedItem ? config.components[selectedItem.type] : null;
3591
- const defaultFields = useMemo6(
3706
+ const defaultFields = useMemo8(
3592
3707
  () => (selectedItem ? componentConfig == null ? void 0 : componentConfig.fields : rootFields) || {},
3593
3708
  [selectedItem, rootFields, componentConfig == null ? void 0 : componentConfig.fields]
3594
3709
  );
@@ -3615,7 +3730,8 @@ var useResolvedFields = () => {
3615
3730
  fields,
3616
3731
  lastFields: resolvedFields,
3617
3732
  lastData,
3618
- appState: state
3733
+ appState: state,
3734
+ parent
3619
3735
  }
3620
3736
  );
3621
3737
  }
@@ -3625,7 +3741,8 @@ var useResolvedFields = () => {
3625
3741
  fields,
3626
3742
  lastFields: resolvedFields,
3627
3743
  lastData,
3628
- appState: state
3744
+ appState: state,
3745
+ parent
3629
3746
  });
3630
3747
  }
3631
3748
  return defaultResolveFields(componentData, {
@@ -3647,7 +3764,7 @@ var useResolvedFields = () => {
3647
3764
  } else {
3648
3765
  setResolvedFields(defaultFields);
3649
3766
  }
3650
- }, [data, defaultFields, state.ui.itemSelector, hasResolver]);
3767
+ }, [data, defaultFields, selectedItem, hasResolver]);
3651
3768
  return [resolvedFields, fieldsLoading];
3652
3769
  };
3653
3770
  var Fields = () => {
@@ -3668,7 +3785,7 @@ var Fields = () => {
3668
3785
  const componentResolving = selectedItem ? ((_a = componentState[selectedItem == null ? void 0 : selectedItem.props.id]) == null ? void 0 : _a.loadingCount) > 0 : ((_b = componentState["puck-root"]) == null ? void 0 : _b.loadingCount) > 0;
3669
3786
  const isLoading = fieldsResolving || componentResolving;
3670
3787
  const rootProps = data.root.props || data.root;
3671
- const Wrapper = useMemo6(() => overrides.fields || DefaultFields, [overrides]);
3788
+ const Wrapper = useMemo8(() => overrides.fields || DefaultFields, [overrides]);
3672
3789
  return /* @__PURE__ */ jsxs15(
3673
3790
  "form",
3674
3791
  {
@@ -3747,34 +3864,36 @@ var Fields = () => {
3747
3864
  const { edit } = getPermissions({
3748
3865
  item: selectedItem
3749
3866
  });
3867
+ const id = `${selectedItem.props.id}_${field.type}_${fieldName}`;
3750
3868
  return /* @__PURE__ */ jsx27(
3751
3869
  AutoFieldPrivate,
3752
3870
  {
3753
3871
  field,
3754
3872
  name: fieldName,
3755
- id: `${selectedItem.props.id}_${fieldName}`,
3873
+ id,
3756
3874
  readOnly: !edit || readOnly[fieldName],
3757
3875
  value: selectedItem.props[fieldName],
3758
3876
  onChange
3759
3877
  },
3760
- `${selectedItem.props.id}_${fieldName}`
3878
+ id
3761
3879
  );
3762
3880
  } else {
3763
3881
  const readOnly = data.root.readOnly || {};
3764
3882
  const { edit } = getPermissions({
3765
3883
  root: true
3766
3884
  });
3885
+ const id = `root_${field.type}_${fieldName}`;
3767
3886
  return /* @__PURE__ */ jsx27(
3768
3887
  AutoFieldPrivate,
3769
3888
  {
3770
3889
  field,
3771
3890
  name: fieldName,
3772
- id: `root_${fieldName}`,
3891
+ id,
3773
3892
  readOnly: !edit || readOnly[fieldName],
3774
3893
  value: rootProps[fieldName],
3775
3894
  onChange
3776
3895
  },
3777
- `page_${fieldName}`
3896
+ id
3778
3897
  );
3779
3898
  }
3780
3899
  }) }),
@@ -3937,24 +4056,24 @@ var useComponentList = (config, ui) => {
3937
4056
  };
3938
4057
 
3939
4058
  // components/Puck/components/Components/index.tsx
3940
- import { useMemo as useMemo7 } from "react";
4059
+ import { useMemo as useMemo9 } from "react";
3941
4060
  import { jsx as jsx30 } from "react/jsx-runtime";
3942
4061
  var Components = () => {
3943
4062
  const { config, state, overrides } = useAppContext();
3944
4063
  const componentList = useComponentList(config, state.ui);
3945
- const Wrapper = useMemo7(() => overrides.components || "div", [overrides]);
4064
+ const Wrapper = useMemo9(() => overrides.components || "div", [overrides]);
3946
4065
  return /* @__PURE__ */ jsx30(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ jsx30(ComponentList, { id: "all" }) });
3947
4066
  };
3948
4067
 
3949
4068
  // components/Puck/components/Preview/index.tsx
3950
4069
  init_react_import();
3951
- import { useCallback as useCallback8, useMemo as useMemo8 } from "react";
4070
+ import { useCallback as useCallback8, useMemo as useMemo10 } from "react";
3952
4071
 
3953
4072
  // components/AutoFrame/index.tsx
3954
4073
  init_react_import();
3955
4074
  import {
3956
4075
  createContext as createContext4,
3957
- useContext as useContext5,
4076
+ useContext as useContext6,
3958
4077
  useEffect as useEffect15,
3959
4078
  useRef as useRef3,
3960
4079
  useState as useState17
@@ -4164,7 +4283,7 @@ var CopyHostStyles = ({
4164
4283
  return /* @__PURE__ */ jsx31(Fragment13, { children });
4165
4284
  };
4166
4285
  var autoFrameContext = createContext4({});
4167
- var useFrame = () => useContext5(autoFrameContext);
4286
+ var useFrame = () => useContext6(autoFrameContext);
4168
4287
  function AutoFrame(_a) {
4169
4288
  var _b = _a, {
4170
4289
  children,
@@ -4228,7 +4347,7 @@ var Preview = ({ id = "puck-preview" }) => {
4228
4347
  },
4229
4348
  [config.root]
4230
4349
  );
4231
- const Frame = useMemo8(() => overrides.iframe, [overrides]);
4350
+ const Frame = useMemo10(() => overrides.iframe, [overrides]);
4232
4351
  const rootProps = state.data.root.props || state.data.root;
4233
4352
  return /* @__PURE__ */ jsx32(
4234
4353
  "div",
@@ -4317,7 +4436,7 @@ var scrollIntoView = (el) => {
4317
4436
  };
4318
4437
 
4319
4438
  // components/LayerTree/index.tsx
4320
- import { useContext as useContext6 } from "react";
4439
+ import { useContext as useContext7 } from "react";
4321
4440
 
4322
4441
  // lib/is-child-of-zone.ts
4323
4442
  init_react_import();
@@ -4344,7 +4463,7 @@ var LayerTree = ({
4344
4463
  label
4345
4464
  }) => {
4346
4465
  const zones = data.zones || {};
4347
- const ctx = useContext6(dropZoneContext);
4466
+ const ctx = useContext7(dropZoneContext);
4348
4467
  return /* @__PURE__ */ jsxs17(Fragment15, { children: [
4349
4468
  label && /* @__PURE__ */ jsxs17("div", { className: getClassName24("zoneTitle"), children: [
4350
4469
  /* @__PURE__ */ jsx33("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ jsx33(Layers, { size: "16" }) }),
@@ -4450,7 +4569,7 @@ var LayerTree = ({
4450
4569
  };
4451
4570
 
4452
4571
  // components/Puck/components/Outline/index.tsx
4453
- import { useCallback as useCallback9, useMemo as useMemo9 } from "react";
4572
+ import { useCallback as useCallback9, useMemo as useMemo11 } from "react";
4454
4573
  import { Fragment as Fragment16, jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
4455
4574
  var Outline = () => {
4456
4575
  const { dispatch, state, overrides, config } = useAppContext();
@@ -4465,7 +4584,7 @@ var Outline = () => {
4465
4584
  },
4466
4585
  []
4467
4586
  );
4468
- const Wrapper = useMemo9(() => overrides.outline || "div", [overrides]);
4587
+ const Wrapper = useMemo11(() => overrides.outline || "div", [overrides]);
4469
4588
  return /* @__PURE__ */ jsx34(Wrapper, { children: /* @__PURE__ */ jsx34(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ jsxs18(Fragment16, { children: [
4470
4589
  (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ jsx34(
4471
4590
  LayerTree,
@@ -4729,14 +4848,14 @@ var getBox = function getBox2(el) {
4729
4848
  import {
4730
4849
  useCallback as useCallback10,
4731
4850
  useEffect as useEffect17,
4732
- useMemo as useMemo11,
4851
+ useMemo as useMemo13,
4733
4852
  useRef as useRef4,
4734
4853
  useState as useState20
4735
4854
  } from "react";
4736
4855
 
4737
4856
  // components/ViewportControls/index.tsx
4738
4857
  init_react_import();
4739
- import { useEffect as useEffect16, useMemo as useMemo10, useState as useState19 } from "react";
4858
+ import { useEffect as useEffect16, useMemo as useMemo12, useState as useState19 } from "react";
4740
4859
 
4741
4860
  // css-module:/home/runner/work/puck/puck/packages/core/components/ViewportControls/styles.module.css#css-module
4742
4861
  init_react_import();
@@ -4796,7 +4915,7 @@ var ViewportControls = ({
4796
4915
  const defaultsContainAutoZoom = defaultZoomOptions.find(
4797
4916
  (option) => option.value === autoZoom
4798
4917
  );
4799
- const zoomOptions = useMemo10(
4918
+ const zoomOptions = useMemo12(
4800
4919
  () => [
4801
4920
  ...defaultZoomOptions,
4802
4921
  ...defaultsContainAutoZoom ? [] : [
@@ -4921,11 +5040,11 @@ var Canvas = () => {
4921
5040
  const { ui } = state;
4922
5041
  const frameRef = useRef4(null);
4923
5042
  const [showTransition, setShowTransition] = useState20(false);
4924
- const defaultRender = useMemo11(() => {
5043
+ const defaultRender = useMemo13(() => {
4925
5044
  const PuckDefault = ({ children }) => /* @__PURE__ */ jsx36(Fragment17, { children });
4926
5045
  return PuckDefault;
4927
5046
  }, []);
4928
- const CustomPreview = useMemo11(
5047
+ const CustomPreview = useMemo13(
4929
5048
  () => overrides.preview || defaultRender,
4930
5049
  [overrides]
4931
5050
  );
@@ -5081,7 +5200,7 @@ var insertComponent = (componentType, zone, index, {
5081
5200
 
5082
5201
  // lib/use-loaded-overrides.ts
5083
5202
  init_react_import();
5084
- import { useMemo as useMemo12 } from "react";
5203
+ import { useMemo as useMemo14 } from "react";
5085
5204
 
5086
5205
  // lib/load-overrides.ts
5087
5206
  init_react_import();
@@ -5120,7 +5239,7 @@ var useLoadedOverrides = ({
5120
5239
  overrides,
5121
5240
  plugins
5122
5241
  }) => {
5123
- return useMemo12(() => {
5242
+ return useMemo14(() => {
5124
5243
  return loadOverrides({ overrides, plugins });
5125
5244
  }, [plugins, overrides]);
5126
5245
  };
@@ -5301,7 +5420,7 @@ function Puck({
5301
5420
  window.removeEventListener("resize", handleResize);
5302
5421
  };
5303
5422
  }, []);
5304
- const defaultHeaderRender = useMemo13(() => {
5423
+ const defaultHeaderRender = useMemo15(() => {
5305
5424
  if (renderHeader) {
5306
5425
  console.warn(
5307
5426
  "`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
@@ -5315,7 +5434,7 @@ function Puck({
5315
5434
  }
5316
5435
  return DefaultOverride;
5317
5436
  }, [renderHeader]);
5318
- const defaultHeaderActionsRender = useMemo13(() => {
5437
+ const defaultHeaderActionsRender = useMemo15(() => {
5319
5438
  if (renderHeaderActions) {
5320
5439
  console.warn(
5321
5440
  "`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
@@ -5332,15 +5451,15 @@ function Puck({
5332
5451
  overrides,
5333
5452
  plugins
5334
5453
  });
5335
- const CustomPuck = useMemo13(
5454
+ const CustomPuck = useMemo15(
5336
5455
  () => loadedOverrides.puck || DefaultOverride,
5337
5456
  [loadedOverrides]
5338
5457
  );
5339
- const CustomHeader = useMemo13(
5458
+ const CustomHeader = useMemo15(
5340
5459
  () => loadedOverrides.header || defaultHeaderRender,
5341
5460
  [loadedOverrides]
5342
5461
  );
5343
- const CustomHeaderActions = useMemo13(
5462
+ const CustomHeaderActions = useMemo15(
5344
5463
  () => loadedOverrides.headerActions || defaultHeaderActionsRender,
5345
5464
  [loadedOverrides]
5346
5465
  );
@@ -5708,6 +5827,11 @@ var usePuck = () => {
5708
5827
  getPermissions,
5709
5828
  refreshPermissions
5710
5829
  } = useAppContext();
5830
+ if (dispatch === defaultContext.dispatch) {
5831
+ throw new Error(
5832
+ "usePuck was used outside of the <Puck> component. The usePuck hook must be rendered within the <Puck> context as children, overrides or plugins as described in https://puckeditor.com/docs/api-reference/functions/use-puck."
5833
+ );
5834
+ }
5711
5835
  return {
5712
5836
  appState,
5713
5837
  config,
@@ -5757,25 +5881,33 @@ classnames/index.js:
5757
5881
  http://jedwatson.github.io/classnames
5758
5882
  *)
5759
5883
 
5884
+ lucide-react/dist/esm/shared/src/utils.js:
5885
+ (**
5886
+ * @license lucide-react v0.468.0 - ISC
5887
+ *
5888
+ * This source code is licensed under the ISC license.
5889
+ * See the LICENSE file in the root directory of this source tree.
5890
+ *)
5891
+
5760
5892
  lucide-react/dist/esm/defaultAttributes.js:
5761
5893
  (**
5762
- * @license lucide-react v0.298.0 - ISC
5894
+ * @license lucide-react v0.468.0 - ISC
5763
5895
  *
5764
5896
  * This source code is licensed under the ISC license.
5765
5897
  * See the LICENSE file in the root directory of this source tree.
5766
5898
  *)
5767
5899
 
5768
- lucide-react/dist/esm/createLucideIcon.js:
5900
+ lucide-react/dist/esm/Icon.js:
5769
5901
  (**
5770
- * @license lucide-react v0.298.0 - ISC
5902
+ * @license lucide-react v0.468.0 - ISC
5771
5903
  *
5772
5904
  * This source code is licensed under the ISC license.
5773
5905
  * See the LICENSE file in the root directory of this source tree.
5774
5906
  *)
5775
5907
 
5776
- lucide-react/dist/esm/icons/check-circle.js:
5908
+ lucide-react/dist/esm/createLucideIcon.js:
5777
5909
  (**
5778
- * @license lucide-react v0.298.0 - ISC
5910
+ * @license lucide-react v0.468.0 - ISC
5779
5911
  *
5780
5912
  * This source code is licensed under the ISC license.
5781
5913
  * See the LICENSE file in the root directory of this source tree.
@@ -5783,7 +5915,7 @@ lucide-react/dist/esm/icons/check-circle.js:
5783
5915
 
5784
5916
  lucide-react/dist/esm/icons/chevron-down.js:
5785
5917
  (**
5786
- * @license lucide-react v0.298.0 - ISC
5918
+ * @license lucide-react v0.468.0 - ISC
5787
5919
  *
5788
5920
  * This source code is licensed under the ISC license.
5789
5921
  * See the LICENSE file in the root directory of this source tree.
@@ -5791,7 +5923,7 @@ lucide-react/dist/esm/icons/chevron-down.js:
5791
5923
 
5792
5924
  lucide-react/dist/esm/icons/chevron-right.js:
5793
5925
  (**
5794
- * @license lucide-react v0.298.0 - ISC
5926
+ * @license lucide-react v0.468.0 - ISC
5795
5927
  *
5796
5928
  * This source code is licensed under the ISC license.
5797
5929
  * See the LICENSE file in the root directory of this source tree.
@@ -5799,7 +5931,15 @@ lucide-react/dist/esm/icons/chevron-right.js:
5799
5931
 
5800
5932
  lucide-react/dist/esm/icons/chevron-up.js:
5801
5933
  (**
5802
- * @license lucide-react v0.298.0 - ISC
5934
+ * @license lucide-react v0.468.0 - ISC
5935
+ *
5936
+ * This source code is licensed under the ISC license.
5937
+ * See the LICENSE file in the root directory of this source tree.
5938
+ *)
5939
+
5940
+ lucide-react/dist/esm/icons/circle-check-big.js:
5941
+ (**
5942
+ * @license lucide-react v0.468.0 - ISC
5803
5943
  *
5804
5944
  * This source code is licensed under the ISC license.
5805
5945
  * See the LICENSE file in the root directory of this source tree.
@@ -5807,7 +5947,15 @@ lucide-react/dist/esm/icons/chevron-up.js:
5807
5947
 
5808
5948
  lucide-react/dist/esm/icons/copy.js:
5809
5949
  (**
5810
- * @license lucide-react v0.298.0 - ISC
5950
+ * @license lucide-react v0.468.0 - ISC
5951
+ *
5952
+ * This source code is licensed under the ISC license.
5953
+ * See the LICENSE file in the root directory of this source tree.
5954
+ *)
5955
+
5956
+ lucide-react/dist/esm/icons/ellipsis-vertical.js:
5957
+ (**
5958
+ * @license lucide-react v0.468.0 - ISC
5811
5959
  *
5812
5960
  * This source code is licensed under the ISC license.
5813
5961
  * See the LICENSE file in the root directory of this source tree.
@@ -5815,7 +5963,7 @@ lucide-react/dist/esm/icons/copy.js:
5815
5963
 
5816
5964
  lucide-react/dist/esm/icons/globe.js:
5817
5965
  (**
5818
- * @license lucide-react v0.298.0 - ISC
5966
+ * @license lucide-react v0.468.0 - ISC
5819
5967
  *
5820
5968
  * This source code is licensed under the ISC license.
5821
5969
  * See the LICENSE file in the root directory of this source tree.
@@ -5823,7 +5971,7 @@ lucide-react/dist/esm/icons/globe.js:
5823
5971
 
5824
5972
  lucide-react/dist/esm/icons/hash.js:
5825
5973
  (**
5826
- * @license lucide-react v0.298.0 - ISC
5974
+ * @license lucide-react v0.468.0 - ISC
5827
5975
  *
5828
5976
  * This source code is licensed under the ISC license.
5829
5977
  * See the LICENSE file in the root directory of this source tree.
@@ -5831,7 +5979,7 @@ lucide-react/dist/esm/icons/hash.js:
5831
5979
 
5832
5980
  lucide-react/dist/esm/icons/layers.js:
5833
5981
  (**
5834
- * @license lucide-react v0.298.0 - ISC
5982
+ * @license lucide-react v0.468.0 - ISC
5835
5983
  *
5836
5984
  * This source code is licensed under the ISC license.
5837
5985
  * See the LICENSE file in the root directory of this source tree.
@@ -5839,7 +5987,7 @@ lucide-react/dist/esm/icons/layers.js:
5839
5987
 
5840
5988
  lucide-react/dist/esm/icons/layout-grid.js:
5841
5989
  (**
5842
- * @license lucide-react v0.298.0 - ISC
5990
+ * @license lucide-react v0.468.0 - ISC
5843
5991
  *
5844
5992
  * This source code is licensed under the ISC license.
5845
5993
  * See the LICENSE file in the root directory of this source tree.
@@ -5847,7 +5995,7 @@ lucide-react/dist/esm/icons/layout-grid.js:
5847
5995
 
5848
5996
  lucide-react/dist/esm/icons/link.js:
5849
5997
  (**
5850
- * @license lucide-react v0.298.0 - ISC
5998
+ * @license lucide-react v0.468.0 - ISC
5851
5999
  *
5852
6000
  * This source code is licensed under the ISC license.
5853
6001
  * See the LICENSE file in the root directory of this source tree.
@@ -5855,31 +6003,31 @@ lucide-react/dist/esm/icons/link.js:
5855
6003
 
5856
6004
  lucide-react/dist/esm/icons/list.js:
5857
6005
  (**
5858
- * @license lucide-react v0.298.0 - ISC
6006
+ * @license lucide-react v0.468.0 - ISC
5859
6007
  *
5860
6008
  * This source code is licensed under the ISC license.
5861
6009
  * See the LICENSE file in the root directory of this source tree.
5862
6010
  *)
5863
6011
 
5864
- lucide-react/dist/esm/icons/lock.js:
6012
+ lucide-react/dist/esm/icons/lock-open.js:
5865
6013
  (**
5866
- * @license lucide-react v0.298.0 - ISC
6014
+ * @license lucide-react v0.468.0 - ISC
5867
6015
  *
5868
6016
  * This source code is licensed under the ISC license.
5869
6017
  * See the LICENSE file in the root directory of this source tree.
5870
6018
  *)
5871
6019
 
5872
- lucide-react/dist/esm/icons/monitor.js:
6020
+ lucide-react/dist/esm/icons/lock.js:
5873
6021
  (**
5874
- * @license lucide-react v0.298.0 - ISC
6022
+ * @license lucide-react v0.468.0 - ISC
5875
6023
  *
5876
6024
  * This source code is licensed under the ISC license.
5877
6025
  * See the LICENSE file in the root directory of this source tree.
5878
6026
  *)
5879
6027
 
5880
- lucide-react/dist/esm/icons/more-vertical.js:
6028
+ lucide-react/dist/esm/icons/monitor.js:
5881
6029
  (**
5882
- * @license lucide-react v0.298.0 - ISC
6030
+ * @license lucide-react v0.468.0 - ISC
5883
6031
  *
5884
6032
  * This source code is licensed under the ISC license.
5885
6033
  * See the LICENSE file in the root directory of this source tree.
@@ -5887,7 +6035,7 @@ lucide-react/dist/esm/icons/more-vertical.js:
5887
6035
 
5888
6036
  lucide-react/dist/esm/icons/panel-left.js:
5889
6037
  (**
5890
- * @license lucide-react v0.298.0 - ISC
6038
+ * @license lucide-react v0.468.0 - ISC
5891
6039
  *
5892
6040
  * This source code is licensed under the ISC license.
5893
6041
  * See the LICENSE file in the root directory of this source tree.
@@ -5895,7 +6043,7 @@ lucide-react/dist/esm/icons/panel-left.js:
5895
6043
 
5896
6044
  lucide-react/dist/esm/icons/panel-right.js:
5897
6045
  (**
5898
- * @license lucide-react v0.298.0 - ISC
6046
+ * @license lucide-react v0.468.0 - ISC
5899
6047
  *
5900
6048
  * This source code is licensed under the ISC license.
5901
6049
  * See the LICENSE file in the root directory of this source tree.
@@ -5903,7 +6051,7 @@ lucide-react/dist/esm/icons/panel-right.js:
5903
6051
 
5904
6052
  lucide-react/dist/esm/icons/plus.js:
5905
6053
  (**
5906
- * @license lucide-react v0.298.0 - ISC
6054
+ * @license lucide-react v0.468.0 - ISC
5907
6055
  *
5908
6056
  * This source code is licensed under the ISC license.
5909
6057
  * See the LICENSE file in the root directory of this source tree.
@@ -5911,7 +6059,7 @@ lucide-react/dist/esm/icons/plus.js:
5911
6059
 
5912
6060
  lucide-react/dist/esm/icons/redo-2.js:
5913
6061
  (**
5914
- * @license lucide-react v0.298.0 - ISC
6062
+ * @license lucide-react v0.468.0 - ISC
5915
6063
  *
5916
6064
  * This source code is licensed under the ISC license.
5917
6065
  * See the LICENSE file in the root directory of this source tree.
@@ -5919,7 +6067,7 @@ lucide-react/dist/esm/icons/redo-2.js:
5919
6067
 
5920
6068
  lucide-react/dist/esm/icons/search.js:
5921
6069
  (**
5922
- * @license lucide-react v0.298.0 - ISC
6070
+ * @license lucide-react v0.468.0 - ISC
5923
6071
  *
5924
6072
  * This source code is licensed under the ISC license.
5925
6073
  * See the LICENSE file in the root directory of this source tree.
@@ -5927,7 +6075,7 @@ lucide-react/dist/esm/icons/search.js:
5927
6075
 
5928
6076
  lucide-react/dist/esm/icons/sliders-horizontal.js:
5929
6077
  (**
5930
- * @license lucide-react v0.298.0 - ISC
6078
+ * @license lucide-react v0.468.0 - ISC
5931
6079
  *
5932
6080
  * This source code is licensed under the ISC license.
5933
6081
  * See the LICENSE file in the root directory of this source tree.
@@ -5935,7 +6083,7 @@ lucide-react/dist/esm/icons/sliders-horizontal.js:
5935
6083
 
5936
6084
  lucide-react/dist/esm/icons/smartphone.js:
5937
6085
  (**
5938
- * @license lucide-react v0.298.0 - ISC
6086
+ * @license lucide-react v0.468.0 - ISC
5939
6087
  *
5940
6088
  * This source code is licensed under the ISC license.
5941
6089
  * See the LICENSE file in the root directory of this source tree.
@@ -5943,7 +6091,7 @@ lucide-react/dist/esm/icons/smartphone.js:
5943
6091
 
5944
6092
  lucide-react/dist/esm/icons/tablet.js:
5945
6093
  (**
5946
- * @license lucide-react v0.298.0 - ISC
6094
+ * @license lucide-react v0.468.0 - ISC
5947
6095
  *
5948
6096
  * This source code is licensed under the ISC license.
5949
6097
  * See the LICENSE file in the root directory of this source tree.
@@ -5951,7 +6099,7 @@ lucide-react/dist/esm/icons/tablet.js:
5951
6099
 
5952
6100
  lucide-react/dist/esm/icons/trash.js:
5953
6101
  (**
5954
- * @license lucide-react v0.298.0 - ISC
6102
+ * @license lucide-react v0.468.0 - ISC
5955
6103
  *
5956
6104
  * This source code is licensed under the ISC license.
5957
6105
  * See the LICENSE file in the root directory of this source tree.
@@ -5959,7 +6107,7 @@ lucide-react/dist/esm/icons/trash.js:
5959
6107
 
5960
6108
  lucide-react/dist/esm/icons/type.js:
5961
6109
  (**
5962
- * @license lucide-react v0.298.0 - ISC
6110
+ * @license lucide-react v0.468.0 - ISC
5963
6111
  *
5964
6112
  * This source code is licensed under the ISC license.
5965
6113
  * See the LICENSE file in the root directory of this source tree.
@@ -5967,15 +6115,7 @@ lucide-react/dist/esm/icons/type.js:
5967
6115
 
5968
6116
  lucide-react/dist/esm/icons/undo-2.js:
5969
6117
  (**
5970
- * @license lucide-react v0.298.0 - ISC
5971
- *
5972
- * This source code is licensed under the ISC license.
5973
- * See the LICENSE file in the root directory of this source tree.
5974
- *)
5975
-
5976
- lucide-react/dist/esm/icons/unlock.js:
5977
- (**
5978
- * @license lucide-react v0.298.0 - ISC
6118
+ * @license lucide-react v0.468.0 - ISC
5979
6119
  *
5980
6120
  * This source code is licensed under the ISC license.
5981
6121
  * See the LICENSE file in the root directory of this source tree.
@@ -5983,7 +6123,7 @@ lucide-react/dist/esm/icons/unlock.js:
5983
6123
 
5984
6124
  lucide-react/dist/esm/icons/zoom-in.js:
5985
6125
  (**
5986
- * @license lucide-react v0.298.0 - ISC
6126
+ * @license lucide-react v0.468.0 - ISC
5987
6127
  *
5988
6128
  * This source code is licensed under the ISC license.
5989
6129
  * See the LICENSE file in the root directory of this source tree.
@@ -5991,7 +6131,7 @@ lucide-react/dist/esm/icons/zoom-in.js:
5991
6131
 
5992
6132
  lucide-react/dist/esm/icons/zoom-out.js:
5993
6133
  (**
5994
- * @license lucide-react v0.298.0 - ISC
6134
+ * @license lucide-react v0.468.0 - ISC
5995
6135
  *
5996
6136
  * This source code is licensed under the ISC license.
5997
6137
  * See the LICENSE file in the root directory of this source tree.
@@ -5999,7 +6139,7 @@ lucide-react/dist/esm/icons/zoom-out.js:
5999
6139
 
6000
6140
  lucide-react/dist/esm/lucide-react.js:
6001
6141
  (**
6002
- * @license lucide-react v0.298.0 - ISC
6142
+ * @license lucide-react v0.468.0 - ISC
6003
6143
  *
6004
6144
  * This source code is licensed under the ISC license.
6005
6145
  * See the LICENSE file in the root directory of this source tree.