@measured/puck 0.18.0-canary.874ba1b → 0.18.0-canary.99e9ecb

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -311,7 +311,7 @@ init_react_import();
311
311
  var styles_module_default2 = { "InputWrapper": "_InputWrapper_1l5m8_1", "Input": "_Input_1l5m8_1", "Input-label": "_Input-label_1l5m8_26", "Input-labelIcon": "_Input-labelIcon_1l5m8_35", "Input-disabledIcon": "_Input-disabledIcon_1l5m8_42", "Input-input": "_Input-input_1l5m8_47", "Input--readOnly": "_Input--readOnly_1l5m8_91", "Input-radioGroupItems": "_Input-radioGroupItems_1l5m8_102", "Input-radio": "_Input-radio_1l5m8_102", "Input-radioInner": "_Input-radioInner_1l5m8_119", "Input-radioInput": "_Input-radioInput_1l5m8_164" };
312
312
 
313
313
  // components/AutoField/index.tsx
314
- var import_react19 = require("react");
314
+ var import_react20 = require("react");
315
315
 
316
316
  // components/AutoField/fields/index.tsx
317
317
  init_react_import();
@@ -771,7 +771,7 @@ var IconButton = ({
771
771
  };
772
772
 
773
773
  // components/AutoField/fields/ArrayField/index.tsx
774
- var import_react11 = require("react");
774
+ var import_react12 = require("react");
775
775
 
776
776
  // components/DragIcon/index.tsx
777
777
  init_react_import();
@@ -988,13 +988,11 @@ var resolveComponentData = (item, config, onResolveStart, onResolveEnd) => __asy
988
988
  onResolveStart(item);
989
989
  }
990
990
  const { props: resolvedProps, readOnly = {} } = yield configForItem.resolveData(item, { changed, lastData: oldItem });
991
- const { readOnly: existingReadOnly = {} } = item || {};
992
- const newReadOnly = __spreadValues(__spreadValues({}, existingReadOnly), readOnly);
993
991
  const resolvedItem = __spreadProps(__spreadValues({}, item), {
994
992
  props: __spreadValues(__spreadValues({}, item.props), resolvedProps)
995
993
  });
996
- if (Object.keys(newReadOnly).length) {
997
- resolvedItem.readOnly = newReadOnly;
994
+ if (Object.keys(readOnly).length) {
995
+ resolvedItem.readOnly = readOnly;
998
996
  }
999
997
  cache.lastChange[item.props.id] = {
1000
998
  item,
@@ -1361,8 +1359,53 @@ var Sortable = ({
1361
1359
  return children({ status, ref: sortableRef });
1362
1360
  };
1363
1361
 
1364
- // components/AutoField/fields/ArrayField/index.tsx
1362
+ // components/AutoField/context.tsx
1363
+ init_react_import();
1364
+ var import_react11 = require("react");
1365
1365
  var import_jsx_runtime7 = require("react/jsx-runtime");
1366
+ var NestedFieldContext = (0, import_react11.createContext)({});
1367
+ var useNestedFieldContext = () => {
1368
+ const context = (0, import_react11.useContext)(NestedFieldContext);
1369
+ return __spreadProps(__spreadValues({}, context), {
1370
+ readOnlyFields: context.readOnlyFields || {}
1371
+ });
1372
+ };
1373
+ var NestedFieldProvider = ({
1374
+ children,
1375
+ name,
1376
+ subName,
1377
+ wildcardName = name,
1378
+ readOnlyFields
1379
+ }) => {
1380
+ const subPath = `${name}.${subName}`;
1381
+ const wildcardSubPath = `${wildcardName}.${subName}`;
1382
+ const subReadOnlyFields = (0, import_react11.useMemo)(
1383
+ () => Object.keys(readOnlyFields).reduce((acc, readOnlyKey) => {
1384
+ const isLocal = readOnlyKey.indexOf(subPath) > -1 || readOnlyKey.indexOf(wildcardSubPath) > -1;
1385
+ if (isLocal) {
1386
+ const subPathPattern = new RegExp(
1387
+ `^(${name}|${wildcardName}).`.replace(/\[/g, "\\[").replace(/\]/g, "\\]").replace(/\./g, "\\.").replace(/\*/g, "\\*")
1388
+ );
1389
+ const localName = readOnlyKey.replace(subPathPattern, "");
1390
+ return __spreadProps(__spreadValues({}, acc), {
1391
+ [localName]: readOnlyFields[readOnlyKey]
1392
+ });
1393
+ }
1394
+ return acc;
1395
+ }, {}),
1396
+ [name, subName, wildcardName, readOnlyFields]
1397
+ );
1398
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1399
+ NestedFieldContext.Provider,
1400
+ {
1401
+ value: { readOnlyFields: subReadOnlyFields, localName: subName },
1402
+ children
1403
+ }
1404
+ );
1405
+ };
1406
+
1407
+ // components/AutoField/fields/ArrayField/index.tsx
1408
+ var import_jsx_runtime8 = require("react/jsx-runtime");
1366
1409
  var getClassName5 = get_class_name_factory_default("ArrayField", styles_module_default3);
1367
1410
  var getClassNameItem = get_class_name_factory_default("ArrayFieldItem", styles_module_default3);
1368
1411
  var ArrayField = ({
@@ -1373,10 +1416,10 @@ var ArrayField = ({
1373
1416
  label,
1374
1417
  readOnly,
1375
1418
  id,
1376
- Label: Label2 = (props) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", __spreadValues({}, props))
1419
+ Label: Label2 = (props) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", __spreadValues({}, props))
1377
1420
  }) => {
1378
1421
  const { state, setUi, selectedItem, getPermissions } = useAppContext();
1379
- const readOnlyFields = (selectedItem == null ? void 0 : selectedItem.readOnly) || {};
1422
+ const { readOnlyFields, localName = name } = useNestedFieldContext();
1380
1423
  const value = _value;
1381
1424
  const arrayState = state.ui.arrayState[id] || {
1382
1425
  items: Array.from(value || []).map((item, idx) => {
@@ -1387,11 +1430,11 @@ var ArrayField = ({
1387
1430
  }),
1388
1431
  openId: ""
1389
1432
  };
1390
- const [localState, setLocalState] = (0, import_react11.useState)({ arrayState, value });
1391
- (0, import_react11.useEffect)(() => {
1433
+ const [localState, setLocalState] = (0, import_react12.useState)({ arrayState, value });
1434
+ (0, import_react12.useEffect)(() => {
1392
1435
  setLocalState({ arrayState, value });
1393
1436
  }, [value, state.ui.arrayState[id]]);
1394
- const mapArrayStateToUi = (0, import_react11.useCallback)(
1437
+ const mapArrayStateToUi = (0, import_react12.useCallback)(
1395
1438
  (partialArrayState) => {
1396
1439
  return {
1397
1440
  arrayState: __spreadProps(__spreadValues({}, state.ui.arrayState), {
@@ -1401,13 +1444,13 @@ var ArrayField = ({
1401
1444
  },
1402
1445
  [arrayState]
1403
1446
  );
1404
- const getHighestIndex = (0, import_react11.useCallback)(() => {
1447
+ const getHighestIndex = (0, import_react12.useCallback)(() => {
1405
1448
  return arrayState.items.reduce(
1406
1449
  (acc, item) => item._originalIndex > acc ? item._originalIndex : acc,
1407
1450
  -1
1408
1451
  );
1409
1452
  }, [arrayState]);
1410
- const regenerateArrayState = (0, import_react11.useCallback)(
1453
+ const regenerateArrayState = (0, import_react12.useCallback)(
1411
1454
  (value2) => {
1412
1455
  let highestIndex = getHighestIndex();
1413
1456
  const newItems = Array.from(value2 || []).map((item, idx) => {
@@ -1426,7 +1469,7 @@ var ArrayField = ({
1426
1469
  },
1427
1470
  [arrayState]
1428
1471
  );
1429
- (0, import_react11.useEffect)(() => {
1472
+ (0, import_react12.useEffect)(() => {
1430
1473
  if (arrayState.items.length > 0) {
1431
1474
  setUi(mapArrayStateToUi(arrayState));
1432
1475
  }
@@ -1436,14 +1479,14 @@ var ArrayField = ({
1436
1479
  return null;
1437
1480
  }
1438
1481
  const addDisabled = field.max !== void 0 && localState.arrayState.items.length >= field.max || readOnly;
1439
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1482
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1440
1483
  Label2,
1441
1484
  {
1442
1485
  label: label || name,
1443
- icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(List, { size: 16 }),
1486
+ icon: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(List, { size: 16 }),
1444
1487
  el: "div",
1445
1488
  readOnly,
1446
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1489
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1447
1490
  SortableProvider,
1448
1491
  {
1449
1492
  onMove: (move) => {
@@ -1465,7 +1508,7 @@ var ArrayField = ({
1465
1508
  arrayState: __spreadProps(__spreadValues({}, arrayState), { items: newArrayStateItems })
1466
1509
  });
1467
1510
  },
1468
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
1511
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
1469
1512
  "div",
1470
1513
  {
1471
1514
  className: getClassName5({
@@ -1479,13 +1522,13 @@ var ArrayField = ({
1479
1522
  localState.arrayState.items.map((item, i) => {
1480
1523
  const { _arrayId = `${id}-${i}`, _originalIndex = i } = item;
1481
1524
  const data = Array.from(localState.value || [])[i] || {};
1482
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1525
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1483
1526
  Sortable,
1484
1527
  {
1485
1528
  id: _arrayId,
1486
1529
  index: i,
1487
1530
  disabled: readOnly,
1488
- children: ({ status, ref }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
1531
+ children: ({ status, ref }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
1489
1532
  "div",
1490
1533
  {
1491
1534
  ref,
@@ -1495,7 +1538,7 @@ var ArrayField = ({
1495
1538
  readOnly
1496
1539
  }),
1497
1540
  children: [
1498
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
1541
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
1499
1542
  "div",
1500
1543
  {
1501
1544
  onClick: (e) => {
@@ -1518,9 +1561,9 @@ var ArrayField = ({
1518
1561
  className: getClassNameItem("summary"),
1519
1562
  children: [
1520
1563
  field.getItemSummary ? field.getItemSummary(data, i) : `Item #${_originalIndex}`,
1521
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: getClassNameItem("rhs"), children: [
1522
- !readOnly && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: getClassNameItem("actions"), children: [
1523
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1564
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: getClassNameItem("rhs"), children: [
1565
+ !readOnly && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: getClassNameItem("actions"), children: [
1566
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1524
1567
  IconButton,
1525
1568
  {
1526
1569
  type: "button",
@@ -1537,10 +1580,10 @@ var ArrayField = ({
1537
1580
  );
1538
1581
  },
1539
1582
  title: "Duplicate",
1540
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Copy, { size: 16 })
1583
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Copy, { size: 16 })
1541
1584
  }
1542
1585
  ) }),
1543
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1586
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1544
1587
  IconButton,
1545
1588
  {
1546
1589
  type: "button",
@@ -1561,43 +1604,56 @@ var ArrayField = ({
1561
1604
  );
1562
1605
  },
1563
1606
  title: "Delete",
1564
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Trash, { size: 16 })
1607
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Trash, { size: 16 })
1565
1608
  }
1566
1609
  ) })
1567
1610
  ] }),
1568
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(DragIcon, {}) })
1611
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(DragIcon, {}) })
1569
1612
  ] })
1570
1613
  ]
1571
1614
  }
1572
1615
  ),
1573
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: getClassNameItem("body"), children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("fieldset", { className: getClassNameItem("fieldset"), children: Object.keys(field.arrayFields).map((fieldName) => {
1574
- const subField = field.arrayFields[fieldName];
1575
- const subFieldName = `${name}[${i}].${fieldName}`;
1576
- const wildcardFieldName = `${name}[*].${fieldName}`;
1577
- const subReadOnly = forceReadOnly ? forceReadOnly : typeof readOnlyFields[subFieldName] !== "undefined" ? readOnlyFields[subFieldName] : readOnlyFields[wildcardFieldName];
1578
- const label2 = subField.label || fieldName;
1579
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1580
- AutoFieldPrivate,
1616
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: getClassNameItem("body"), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("fieldset", { className: getClassNameItem("fieldset"), children: Object.keys(field.arrayFields).map((subName) => {
1617
+ const subField = field.arrayFields[subName];
1618
+ const indexName = `${name}[${i}]`;
1619
+ const subPath = `${indexName}.${subName}`;
1620
+ const localIndexName = `${localName}[${i}]`;
1621
+ const localWildcardName = `${localName}[*]`;
1622
+ const localSubPath = `${localIndexName}.${subName}`;
1623
+ const localWildcardSubPath = `${localWildcardName}.${subName}`;
1624
+ const subReadOnly = forceReadOnly ? forceReadOnly : typeof readOnlyFields[subPath] !== "undefined" ? readOnlyFields[localSubPath] : readOnlyFields[localWildcardSubPath];
1625
+ const label2 = subField.label || subName;
1626
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1627
+ NestedFieldProvider,
1581
1628
  {
1582
- name: subFieldName,
1583
- label: label2,
1584
- id: `${_arrayId}_${fieldName}`,
1585
- readOnly: subReadOnly,
1586
- field: __spreadProps(__spreadValues({}, subField), {
1587
- label: label2
1588
- // May be used by custom fields
1589
- }),
1590
- value: data[fieldName],
1591
- onChange: (val, ui) => {
1592
- onChange(
1593
- replace(value, i, __spreadProps(__spreadValues({}, data), {
1594
- [fieldName]: val
1595
- })),
1596
- ui
1597
- );
1598
- }
1629
+ name: localIndexName,
1630
+ wildcardName: localWildcardName,
1631
+ subName,
1632
+ readOnlyFields,
1633
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1634
+ AutoFieldPrivate,
1635
+ {
1636
+ name: subPath,
1637
+ label: label2,
1638
+ id: `${_arrayId}_${subName}`,
1639
+ readOnly: subReadOnly,
1640
+ field: __spreadProps(__spreadValues({}, subField), {
1641
+ label: label2
1642
+ // May be used by custom fields
1643
+ }),
1644
+ value: data[subName],
1645
+ onChange: (val, ui) => {
1646
+ onChange(
1647
+ replace(value, i, __spreadProps(__spreadValues({}, data), {
1648
+ [subName]: val
1649
+ })),
1650
+ ui
1651
+ );
1652
+ }
1653
+ }
1654
+ )
1599
1655
  },
1600
- subFieldName
1656
+ subPath
1601
1657
  );
1602
1658
  }) }) })
1603
1659
  ]
@@ -1607,7 +1663,7 @@ var ArrayField = ({
1607
1663
  _arrayId
1608
1664
  );
1609
1665
  }),
1610
- !addDisabled && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1666
+ !addDisabled && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1611
1667
  "button",
1612
1668
  {
1613
1669
  type: "button",
@@ -1621,7 +1677,7 @@ var ArrayField = ({
1621
1677
  const newArrayState = regenerateArrayState(newValue);
1622
1678
  onChange(newValue, mapArrayStateToUi(newArrayState));
1623
1679
  },
1624
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Plus, { size: 21 })
1680
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Plus, { size: 21 })
1625
1681
  }
1626
1682
  )
1627
1683
  ]
@@ -1635,7 +1691,7 @@ var ArrayField = ({
1635
1691
 
1636
1692
  // components/AutoField/fields/DefaultField/index.tsx
1637
1693
  init_react_import();
1638
- var import_jsx_runtime8 = require("react/jsx-runtime");
1694
+ var import_jsx_runtime9 = require("react/jsx-runtime");
1639
1695
  var getClassName6 = get_class_name_factory_default("Input", styles_module_default2);
1640
1696
  var DefaultField = ({
1641
1697
  field,
@@ -1647,16 +1703,16 @@ var DefaultField = ({
1647
1703
  Label: Label2,
1648
1704
  id
1649
1705
  }) => {
1650
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1706
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1651
1707
  Label2,
1652
1708
  {
1653
1709
  label: label || name,
1654
- icon: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
1655
- field.type === "text" && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Type, { size: 16 }),
1656
- field.type === "number" && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Hash, { size: 16 })
1710
+ icon: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_jsx_runtime9.Fragment, { children: [
1711
+ field.type === "text" && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Type, { size: 16 }),
1712
+ field.type === "number" && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Hash, { size: 16 })
1657
1713
  ] }),
1658
1714
  readOnly,
1659
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1715
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1660
1716
  "input",
1661
1717
  {
1662
1718
  className: getClassName6("input"),
@@ -1667,7 +1723,14 @@ var DefaultField = ({
1667
1723
  value: typeof value === "undefined" ? "" : value.toString(),
1668
1724
  onChange: (e) => {
1669
1725
  if (field.type === "number") {
1670
- onChange(Number(e.currentTarget.value));
1726
+ const numberValue = Number(e.currentTarget.value);
1727
+ if (typeof field.min !== "undefined" && numberValue < field.min) {
1728
+ return;
1729
+ }
1730
+ if (typeof field.max !== "undefined" && numberValue > field.max) {
1731
+ return;
1732
+ }
1733
+ onChange(numberValue);
1671
1734
  } else {
1672
1735
  onChange(e.currentTarget.value);
1673
1736
  }
@@ -1685,11 +1748,11 @@ var DefaultField = ({
1685
1748
 
1686
1749
  // components/AutoField/fields/ExternalField/index.tsx
1687
1750
  init_react_import();
1688
- var import_react15 = require("react");
1751
+ var import_react16 = require("react");
1689
1752
 
1690
1753
  // components/ExternalInput/index.tsx
1691
1754
  init_react_import();
1692
- var import_react14 = require("react");
1755
+ var import_react15 = require("react");
1693
1756
 
1694
1757
  // css-module:/home/runner/work/puck/puck/packages/core/components/ExternalInput/styles.module.css#css-module
1695
1758
  init_react_import();
@@ -1697,7 +1760,7 @@ var styles_module_default6 = { "ExternalInput-actions": "_ExternalInput-actions_
1697
1760
 
1698
1761
  // components/Modal/index.tsx
1699
1762
  init_react_import();
1700
- var import_react12 = require("react");
1763
+ var import_react13 = require("react");
1701
1764
 
1702
1765
  // css-module:/home/runner/work/puck/puck/packages/core/components/Modal/styles.module.css#css-module
1703
1766
  init_react_import();
@@ -1705,22 +1768,22 @@ var styles_module_default7 = { "Modal": "_Modal_ikbaj_1", "Modal--isOpen": "_Mod
1705
1768
 
1706
1769
  // components/Modal/index.tsx
1707
1770
  var import_react_dom = require("react-dom");
1708
- var import_jsx_runtime9 = require("react/jsx-runtime");
1771
+ var import_jsx_runtime10 = require("react/jsx-runtime");
1709
1772
  var getClassName7 = get_class_name_factory_default("Modal", styles_module_default7);
1710
1773
  var Modal = ({
1711
1774
  children,
1712
1775
  onClose,
1713
1776
  isOpen
1714
1777
  }) => {
1715
- const [rootEl, setRootEl] = (0, import_react12.useState)(null);
1716
- (0, import_react12.useEffect)(() => {
1778
+ const [rootEl, setRootEl] = (0, import_react13.useState)(null);
1779
+ (0, import_react13.useEffect)(() => {
1717
1780
  setRootEl(document.getElementById("puck-portal-root"));
1718
1781
  }, []);
1719
1782
  if (!rootEl) {
1720
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", {});
1783
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", {});
1721
1784
  }
1722
1785
  return (0, import_react_dom.createPortal)(
1723
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassName7({ isOpen }), onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1786
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: getClassName7({ isOpen }), onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1724
1787
  "div",
1725
1788
  {
1726
1789
  className: getClassName7("inner"),
@@ -1740,11 +1803,11 @@ init_react_import();
1740
1803
  var styles_module_default8 = { "Heading": "_Heading_qxrry_1", "Heading--xxxxl": "_Heading--xxxxl_qxrry_12", "Heading--xxxl": "_Heading--xxxl_qxrry_18", "Heading--xxl": "_Heading--xxl_qxrry_22", "Heading--xl": "_Heading--xl_qxrry_26", "Heading--l": "_Heading--l_qxrry_30", "Heading--m": "_Heading--m_qxrry_34", "Heading--s": "_Heading--s_qxrry_38", "Heading--xs": "_Heading--xs_qxrry_42" };
1741
1804
 
1742
1805
  // components/Heading/index.tsx
1743
- var import_jsx_runtime10 = require("react/jsx-runtime");
1806
+ var import_jsx_runtime11 = require("react/jsx-runtime");
1744
1807
  var getClassName8 = get_class_name_factory_default("Heading", styles_module_default8);
1745
1808
  var Heading = ({ children, rank, size = "m" }) => {
1746
1809
  const Tag = rank ? `h${rank}` : "span";
1747
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1810
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1748
1811
  Tag,
1749
1812
  {
1750
1813
  className: getClassName8({
@@ -1760,7 +1823,7 @@ init_react_import();
1760
1823
 
1761
1824
  // components/Button/Button.tsx
1762
1825
  init_react_import();
1763
- var import_react13 = require("react");
1826
+ var import_react14 = require("react");
1764
1827
 
1765
1828
  // css-module:/home/runner/work/puck/puck/packages/core/components/Button/Button.module.css#css-module
1766
1829
  init_react_import();
@@ -1780,7 +1843,7 @@ var filterDataAttrs = (props) => {
1780
1843
  };
1781
1844
 
1782
1845
  // components/Button/Button.tsx
1783
- var import_jsx_runtime11 = require("react/jsx-runtime");
1846
+ var import_jsx_runtime12 = require("react/jsx-runtime");
1784
1847
  var getClassName9 = get_class_name_factory_default("Button", Button_module_default);
1785
1848
  var Button = (_a) => {
1786
1849
  var _b = _a, {
@@ -1810,11 +1873,11 @@ var Button = (_a) => {
1810
1873
  "size",
1811
1874
  "loading"
1812
1875
  ]);
1813
- const [loading, setLoading] = (0, import_react13.useState)(loadingProp);
1814
- (0, import_react13.useEffect)(() => setLoading(loadingProp), [loadingProp]);
1876
+ const [loading, setLoading] = (0, import_react14.useState)(loadingProp);
1877
+ (0, import_react14.useEffect)(() => setLoading(loadingProp), [loadingProp]);
1815
1878
  const ElementType = href ? "a" : type ? "button" : "span";
1816
1879
  const dataAttrs = filterDataAttrs(props);
1817
- const el = /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
1880
+ const el = /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1818
1881
  ElementType,
1819
1882
  __spreadProps(__spreadValues({
1820
1883
  className: getClassName9({
@@ -1839,9 +1902,9 @@ var Button = (_a) => {
1839
1902
  href
1840
1903
  }, dataAttrs), {
1841
1904
  children: [
1842
- icon && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: getClassName9("icon"), children: icon }),
1905
+ icon && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassName9("icon"), children: icon }),
1843
1906
  children,
1844
- loading && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: getClassName9("spinner"), children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Loader, { size: 14 }) })
1907
+ loading && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassName9("spinner"), children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Loader, { size: 14 }) })
1845
1908
  ]
1846
1909
  })
1847
1910
  );
@@ -1849,7 +1912,7 @@ var Button = (_a) => {
1849
1912
  };
1850
1913
 
1851
1914
  // components/ExternalInput/index.tsx
1852
- var import_jsx_runtime12 = require("react/jsx-runtime");
1915
+ var import_jsx_runtime13 = require("react/jsx-runtime");
1853
1916
  var getClassName10 = get_class_name_factory_default("ExternalInput", styles_module_default6);
1854
1917
  var getClassNameModal = get_class_name_factory_default("ExternalInputModal", styles_module_default6);
1855
1918
  var dataCache = {};
@@ -1866,28 +1929,28 @@ var ExternalInput = ({
1866
1929
  mapRow = (val) => val,
1867
1930
  filterFields
1868
1931
  } = field || {};
1869
- const [data, setData] = (0, import_react14.useState)([]);
1870
- const [isOpen, setOpen] = (0, import_react14.useState)(false);
1871
- const [isLoading, setIsLoading] = (0, import_react14.useState)(true);
1932
+ const [data, setData] = (0, import_react15.useState)([]);
1933
+ const [isOpen, setOpen] = (0, import_react15.useState)(false);
1934
+ const [isLoading, setIsLoading] = (0, import_react15.useState)(true);
1872
1935
  const hasFilterFields = !!filterFields;
1873
- const [filters, setFilters] = (0, import_react14.useState)(field.initialFilters || {});
1874
- const [filtersToggled, setFiltersToggled] = (0, import_react14.useState)(hasFilterFields);
1875
- const mappedData = (0, import_react14.useMemo)(() => {
1936
+ const [filters, setFilters] = (0, import_react15.useState)(field.initialFilters || {});
1937
+ const [filtersToggled, setFiltersToggled] = (0, import_react15.useState)(hasFilterFields);
1938
+ const mappedData = (0, import_react15.useMemo)(() => {
1876
1939
  return data.map(mapRow);
1877
1940
  }, [data]);
1878
- const keys = (0, import_react14.useMemo)(() => {
1941
+ const keys = (0, import_react15.useMemo)(() => {
1879
1942
  const validKeys = /* @__PURE__ */ new Set();
1880
1943
  for (const item of mappedData) {
1881
1944
  for (const key of Object.keys(item)) {
1882
- if (typeof item[key] === "string" || typeof item[key] === "number" || (0, import_react14.isValidElement)(item[key])) {
1945
+ if (typeof item[key] === "string" || typeof item[key] === "number" || (0, import_react15.isValidElement)(item[key])) {
1883
1946
  validKeys.add(key);
1884
1947
  }
1885
1948
  }
1886
1949
  }
1887
1950
  return Array.from(validKeys);
1888
1951
  }, [mappedData]);
1889
- const [searchQuery, setSearchQuery] = (0, import_react14.useState)(field.initialQuery || "");
1890
- const search = (0, import_react14.useCallback)(
1952
+ const [searchQuery, setSearchQuery] = (0, import_react15.useState)(field.initialQuery || "");
1953
+ const search = (0, import_react15.useCallback)(
1891
1954
  (query, filters2) => __async(void 0, null, function* () {
1892
1955
  setIsLoading(true);
1893
1956
  const cacheKey = `${id}-${query}-${JSON.stringify(filters2)}`;
@@ -1900,18 +1963,18 @@ var ExternalInput = ({
1900
1963
  }),
1901
1964
  [id, field]
1902
1965
  );
1903
- const Footer = (0, import_react14.useCallback)(
1904
- (props) => field.renderFooter ? field.renderFooter(props) : /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("span", { className: getClassNameModal("footer"), children: [
1966
+ const Footer = (0, import_react15.useCallback)(
1967
+ (props) => field.renderFooter ? field.renderFooter(props) : /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("span", { className: getClassNameModal("footer"), children: [
1905
1968
  props.items.length,
1906
1969
  " result",
1907
1970
  props.items.length === 1 ? "" : "s"
1908
1971
  ] }),
1909
1972
  [field.renderFooter]
1910
1973
  );
1911
- (0, import_react14.useEffect)(() => {
1974
+ (0, import_react15.useEffect)(() => {
1912
1975
  search(searchQuery, filters);
1913
1976
  }, []);
1914
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1977
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
1915
1978
  "div",
1916
1979
  {
1917
1980
  className: getClassName10({
@@ -1921,21 +1984,21 @@ var ExternalInput = ({
1921
1984
  }),
1922
1985
  id,
1923
1986
  children: [
1924
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: getClassName10("actions"), children: [
1925
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1987
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: getClassName10("actions"), children: [
1988
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1926
1989
  "button",
1927
1990
  {
1928
1991
  type: "button",
1929
1992
  onClick: () => setOpen(true),
1930
1993
  className: getClassName10("button"),
1931
1994
  disabled: readOnly,
1932
- children: value ? field.getItemSummary ? field.getItemSummary(value) : "External item" : /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [
1933
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Link, { size: "16" }),
1934
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { children: field.placeholder })
1995
+ children: value ? field.getItemSummary ? field.getItemSummary(value) : "External item" : /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_jsx_runtime13.Fragment, { children: [
1996
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Link, { size: "16" }),
1997
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { children: field.placeholder })
1935
1998
  ] })
1936
1999
  }
1937
2000
  ),
1938
- value && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2001
+ value && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1939
2002
  "button",
1940
2003
  {
1941
2004
  type: "button",
@@ -1944,11 +2007,11 @@ var ExternalInput = ({
1944
2007
  onChange(null);
1945
2008
  },
1946
2009
  disabled: readOnly,
1947
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(LockOpen, { size: 16 })
2010
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(LockOpen, { size: 16 })
1948
2011
  }
1949
2012
  )
1950
2013
  ] }),
1951
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Modal, { onClose: () => setOpen(false), isOpen, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2014
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Modal, { onClose: () => setOpen(false), isOpen, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
1952
2015
  "form",
1953
2016
  {
1954
2017
  className: getClassNameModal({
@@ -1962,11 +2025,11 @@ var ExternalInput = ({
1962
2025
  search(searchQuery, filters);
1963
2026
  },
1964
2027
  children: [
1965
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassNameModal("masthead"), children: field.showSearch ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: getClassNameModal("searchForm"), children: [
1966
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("label", { className: getClassNameModal("search"), children: [
1967
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: getClassNameModal("searchIconText"), children: "Search" }),
1968
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassNameModal("searchIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Search, { size: "18" }) }),
1969
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2028
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassNameModal("masthead"), children: field.showSearch ? /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: getClassNameModal("searchForm"), children: [
2029
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("label", { className: getClassNameModal("search"), children: [
2030
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: getClassNameModal("searchIconText"), children: "Search" }),
2031
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassNameModal("searchIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Search, { size: "18" }) }),
2032
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1970
2033
  "input",
1971
2034
  {
1972
2035
  className: getClassNameModal("searchInput"),
@@ -1981,9 +2044,9 @@ var ExternalInput = ({
1981
2044
  }
1982
2045
  )
1983
2046
  ] }),
1984
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: getClassNameModal("searchActions"), children: [
1985
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Button, { type: "submit", loading: isLoading, fullWidth: true, children: "Search" }),
1986
- hasFilterFields && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassNameModal("searchActionIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2047
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: getClassNameModal("searchActions"), children: [
2048
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Button, { type: "submit", loading: isLoading, fullWidth: true, children: "Search" }),
2049
+ hasFilterFields && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassNameModal("searchActionIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1987
2050
  IconButton,
1988
2051
  {
1989
2052
  title: "Toggle filters",
@@ -1992,15 +2055,15 @@ var ExternalInput = ({
1992
2055
  e.stopPropagation();
1993
2056
  setFiltersToggled(!filtersToggled);
1994
2057
  },
1995
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SlidersHorizontal, { size: 20 })
2058
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SlidersHorizontal, { size: 20 })
1996
2059
  }
1997
2060
  ) })
1998
2061
  ] })
1999
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Heading, { rank: "2", size: "xs", children: field.placeholder || "Select data" }) }),
2000
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: getClassNameModal("grid"), children: [
2001
- hasFilterFields && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassNameModal("filters"), children: hasFilterFields && Object.keys(filterFields).map((fieldName) => {
2062
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Heading, { rank: "2", size: "xs", children: field.placeholder || "Select data" }) }),
2063
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: getClassNameModal("grid"), children: [
2064
+ hasFilterFields && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassNameModal("filters"), children: hasFilterFields && Object.keys(filterFields).map((fieldName) => {
2002
2065
  const filterField = filterFields[fieldName];
2003
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2066
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2004
2067
  AutoFieldPrivate,
2005
2068
  {
2006
2069
  field: filterField,
@@ -2017,9 +2080,9 @@ var ExternalInput = ({
2017
2080
  fieldName
2018
2081
  );
2019
2082
  }) }),
2020
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: getClassNameModal("tableWrapper"), children: [
2021
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("table", { className: getClassNameModal("table"), children: [
2022
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("thead", { className: getClassNameModal("thead"), children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { className: getClassNameModal("tr"), children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2083
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: getClassNameModal("tableWrapper"), children: [
2084
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("table", { className: getClassNameModal("table"), children: [
2085
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("thead", { className: getClassNameModal("thead"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("tr", { className: getClassNameModal("tr"), children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2023
2086
  "th",
2024
2087
  {
2025
2088
  className: getClassNameModal("th"),
@@ -2028,8 +2091,8 @@ var ExternalInput = ({
2028
2091
  },
2029
2092
  key
2030
2093
  )) }) }),
2031
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tbody", { className: getClassNameModal("tbody"), children: mappedData.map((item, i) => {
2032
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2094
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("tbody", { className: getClassNameModal("tbody"), children: mappedData.map((item, i) => {
2095
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2033
2096
  "tr",
2034
2097
  {
2035
2098
  style: { whiteSpace: "nowrap" },
@@ -2038,16 +2101,16 @@ var ExternalInput = ({
2038
2101
  onChange(mapProp(data[i]));
2039
2102
  setOpen(false);
2040
2103
  },
2041
- children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("td", { className: getClassNameModal("td"), children: item[key] }, key))
2104
+ children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("td", { className: getClassNameModal("td"), children: item[key] }, key))
2042
2105
  },
2043
2106
  i
2044
2107
  );
2045
2108
  }) })
2046
2109
  ] }),
2047
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassNameModal("loadingBanner"), children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Loader, { size: 24 }) })
2110
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassNameModal("loadingBanner"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Loader, { size: 24 }) })
2048
2111
  ] })
2049
2112
  ] }),
2050
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: getClassNameModal("footerContainer"), children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Footer, { items: mappedData }) })
2113
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassNameModal("footerContainer"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Footer, { items: mappedData }) })
2051
2114
  ]
2052
2115
  }
2053
2116
  ) })
@@ -2057,7 +2120,7 @@ var ExternalInput = ({
2057
2120
  };
2058
2121
 
2059
2122
  // components/AutoField/fields/ExternalField/index.tsx
2060
- var import_jsx_runtime13 = require("react/jsx-runtime");
2123
+ var import_jsx_runtime14 = require("react/jsx-runtime");
2061
2124
  var ExternalField = ({
2062
2125
  field,
2063
2126
  onChange,
@@ -2071,7 +2134,7 @@ var ExternalField = ({
2071
2134
  var _a, _b, _c;
2072
2135
  const validField = field;
2073
2136
  const deprecatedField = field;
2074
- (0, import_react15.useEffect)(() => {
2137
+ (0, import_react16.useEffect)(() => {
2075
2138
  if (deprecatedField.adaptor) {
2076
2139
  console.error(
2077
2140
  "Warning: The `adaptor` API is deprecated. Please use updated APIs on the `external` field instead. This will be a breaking change in a future release."
@@ -2081,7 +2144,7 @@ var ExternalField = ({
2081
2144
  if (field.type !== "external") {
2082
2145
  return null;
2083
2146
  }
2084
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Label2, { label: label || name, icon: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Link, { size: 16 }), el: "div", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2147
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Label2, { label: label || name, icon: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Link, { size: 16 }), el: "div", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2085
2148
  ExternalInput,
2086
2149
  {
2087
2150
  name,
@@ -2106,7 +2169,7 @@ var ExternalField = ({
2106
2169
 
2107
2170
  // components/AutoField/fields/RadioField/index.tsx
2108
2171
  init_react_import();
2109
- var import_react16 = require("react");
2172
+ var import_react17 = require("react");
2110
2173
 
2111
2174
  // lib/safe-json-parse.ts
2112
2175
  init_react_import();
@@ -2120,7 +2183,7 @@ var safeJsonParse = (str) => {
2120
2183
  };
2121
2184
 
2122
2185
  // components/AutoField/fields/RadioField/index.tsx
2123
- var import_jsx_runtime14 = require("react/jsx-runtime");
2186
+ var import_jsx_runtime15 = require("react/jsx-runtime");
2124
2187
  var getClassName11 = get_class_name_factory_default("Input", styles_module_default2);
2125
2188
  var RadioField = ({
2126
2189
  field,
@@ -2132,26 +2195,26 @@ var RadioField = ({
2132
2195
  label,
2133
2196
  Label: Label2
2134
2197
  }) => {
2135
- const flatOptions = (0, import_react16.useMemo)(
2198
+ const flatOptions = (0, import_react17.useMemo)(
2136
2199
  () => field.type === "radio" ? field.options.map(({ value: value2 }) => value2) : [],
2137
2200
  [field]
2138
2201
  );
2139
2202
  if (field.type !== "radio" || !field.options) {
2140
2203
  return null;
2141
2204
  }
2142
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2205
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2143
2206
  Label2,
2144
2207
  {
2145
- icon: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(CircleCheckBig, { size: 16 }),
2208
+ icon: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(CircleCheckBig, { size: 16 }),
2146
2209
  label: label || name,
2147
2210
  readOnly,
2148
2211
  el: "div",
2149
- children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassName11("radioGroupItems"), id, children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
2212
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: getClassName11("radioGroupItems"), id, children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
2150
2213
  "label",
2151
2214
  {
2152
2215
  className: getClassName11("radio"),
2153
2216
  children: [
2154
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2217
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2155
2218
  "input",
2156
2219
  {
2157
2220
  type: "radio",
@@ -2171,7 +2234,7 @@ var RadioField = ({
2171
2234
  checked: value === option.value
2172
2235
  }
2173
2236
  ),
2174
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassName11("radioInner"), children: option.label || option.value })
2237
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: getClassName11("radioInner"), children: option.label || option.value })
2175
2238
  ]
2176
2239
  },
2177
2240
  option.label + option.value
@@ -2182,8 +2245,8 @@ var RadioField = ({
2182
2245
 
2183
2246
  // components/AutoField/fields/SelectField/index.tsx
2184
2247
  init_react_import();
2185
- var import_react17 = require("react");
2186
- var import_jsx_runtime15 = require("react/jsx-runtime");
2248
+ var import_react18 = require("react");
2249
+ var import_jsx_runtime16 = require("react/jsx-runtime");
2187
2250
  var getClassName12 = get_class_name_factory_default("Input", styles_module_default2);
2188
2251
  var SelectField = ({
2189
2252
  field,
@@ -2195,20 +2258,20 @@ var SelectField = ({
2195
2258
  readOnly,
2196
2259
  id
2197
2260
  }) => {
2198
- const flatOptions = (0, import_react17.useMemo)(
2261
+ const flatOptions = (0, import_react18.useMemo)(
2199
2262
  () => field.type === "select" ? field.options.map(({ value: value2 }) => value2) : [],
2200
2263
  [field]
2201
2264
  );
2202
2265
  if (field.type !== "select" || !field.options) {
2203
2266
  return null;
2204
2267
  }
2205
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2268
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2206
2269
  Label2,
2207
2270
  {
2208
2271
  label: label || name,
2209
- icon: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(ChevronDown, { size: 16 }),
2272
+ icon: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ChevronDown, { size: 16 }),
2210
2273
  readOnly,
2211
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2274
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2212
2275
  "select",
2213
2276
  {
2214
2277
  id,
@@ -2225,7 +2288,7 @@ var SelectField = ({
2225
2288
  }
2226
2289
  },
2227
2290
  value,
2228
- children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2291
+ children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2229
2292
  "option",
2230
2293
  {
2231
2294
  label: option.label,
@@ -2241,7 +2304,7 @@ var SelectField = ({
2241
2304
 
2242
2305
  // components/AutoField/fields/TextareaField/index.tsx
2243
2306
  init_react_import();
2244
- var import_jsx_runtime16 = require("react/jsx-runtime");
2307
+ var import_jsx_runtime17 = require("react/jsx-runtime");
2245
2308
  var getClassName13 = get_class_name_factory_default("Input", styles_module_default2);
2246
2309
  var TextareaField = ({
2247
2310
  onChange,
@@ -2252,7 +2315,7 @@ var TextareaField = ({
2252
2315
  Label: Label2,
2253
2316
  id
2254
2317
  }) => {
2255
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Label2, { label: label || name, icon: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Type, { size: 16 }), readOnly, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2318
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Label2, { label: label || name, icon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Type, { size: 16 }), readOnly, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2256
2319
  "textarea",
2257
2320
  {
2258
2321
  id,
@@ -2279,7 +2342,7 @@ init_react_import();
2279
2342
  var styles_module_default9 = { "ObjectField": "_ObjectField_1ua3y_5", "ObjectField-fieldset": "_ObjectField-fieldset_1ua3y_13" };
2280
2343
 
2281
2344
  // components/AutoField/fields/ObjectField/index.tsx
2282
- var import_jsx_runtime17 = require("react/jsx-runtime");
2345
+ var import_jsx_runtime18 = require("react/jsx-runtime");
2283
2346
  var getClassName14 = get_class_name_factory_default("ObjectField", styles_module_default9);
2284
2347
  var ObjectField = ({
2285
2348
  field,
@@ -2291,47 +2354,54 @@ var ObjectField = ({
2291
2354
  readOnly,
2292
2355
  id
2293
2356
  }) => {
2294
- const { selectedItem } = useAppContext();
2357
+ const { readOnlyFields, localName = name } = useNestedFieldContext();
2295
2358
  if (field.type !== "object" || !field.objectFields) {
2296
2359
  return null;
2297
2360
  }
2298
- const readOnlyFields = (selectedItem == null ? void 0 : selectedItem.readOnly) || {};
2299
2361
  const data = value || {};
2300
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2362
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2301
2363
  Label2,
2302
2364
  {
2303
2365
  label: label || name,
2304
- icon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(EllipsisVertical, { size: 16 }),
2366
+ icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(EllipsisVertical, { size: 16 }),
2305
2367
  el: "div",
2306
2368
  readOnly,
2307
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: getClassName14(), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("fieldset", { className: getClassName14("fieldset"), children: Object.keys(field.objectFields).map((fieldName) => {
2308
- const subField = field.objectFields[fieldName];
2309
- const subFieldName = `${name}.${fieldName}`;
2310
- const wildcardFieldName = `${name}.${fieldName}`;
2311
- const subReadOnly = readOnly ? readOnly : typeof readOnlyFields[subFieldName] !== "undefined" ? readOnlyFields[subFieldName] : readOnlyFields[wildcardFieldName];
2312
- const label2 = subField.label || fieldName;
2313
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2314
- AutoFieldPrivate,
2369
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: getClassName14(), children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("fieldset", { className: getClassName14("fieldset"), children: Object.keys(field.objectFields).map((subName) => {
2370
+ const subField = field.objectFields[subName];
2371
+ const subPath = `${name}.${subName}`;
2372
+ const localSubPath = `${localName || name}.${subName}`;
2373
+ const subReadOnly = readOnly ? readOnly : readOnlyFields[localSubPath];
2374
+ const label2 = subField.label || subName;
2375
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2376
+ NestedFieldProvider,
2315
2377
  {
2316
- name: subFieldName,
2317
- label: label2,
2318
- id: `${id}_${fieldName}`,
2319
- readOnly: subReadOnly,
2320
- field: __spreadProps(__spreadValues({}, subField), {
2321
- label: label2
2322
- // May be used by custom fields
2323
- }),
2324
- value: data[fieldName],
2325
- onChange: (val, ui) => {
2326
- onChange(
2327
- __spreadProps(__spreadValues({}, data), {
2328
- [fieldName]: val
2378
+ name: localName || id,
2379
+ subName,
2380
+ readOnlyFields,
2381
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2382
+ AutoFieldPrivate,
2383
+ {
2384
+ name: subPath,
2385
+ label: subPath,
2386
+ id: `${id}_${subName}`,
2387
+ readOnly: subReadOnly,
2388
+ field: __spreadProps(__spreadValues({}, subField), {
2389
+ label: label2
2390
+ // May be used by custom fields
2329
2391
  }),
2330
- ui
2331
- );
2332
- }
2392
+ value: data[subName],
2393
+ onChange: (val, ui) => {
2394
+ onChange(
2395
+ __spreadProps(__spreadValues({}, data), {
2396
+ [subName]: val
2397
+ }),
2398
+ ui
2399
+ );
2400
+ }
2401
+ }
2402
+ )
2333
2403
  },
2334
- subFieldName
2404
+ subPath
2335
2405
  );
2336
2406
  }) }) })
2337
2407
  }
@@ -2340,7 +2410,7 @@ var ObjectField = ({
2340
2410
 
2341
2411
  // lib/use-safe-id.ts
2342
2412
  init_react_import();
2343
- var import_react18 = __toESM(require("react"));
2413
+ var import_react19 = __toESM(require("react"));
2344
2414
 
2345
2415
  // lib/generate-id.ts
2346
2416
  init_react_import();
@@ -2349,15 +2419,15 @@ var generateId = (type) => type ? `${type}-${(0, import_uuid.v4)()}` : (0, impor
2349
2419
 
2350
2420
  // lib/use-safe-id.ts
2351
2421
  var useSafeId = () => {
2352
- if (typeof import_react18.default.useId !== "undefined") {
2353
- return import_react18.default.useId();
2422
+ if (typeof import_react19.default.useId !== "undefined") {
2423
+ return import_react19.default.useId();
2354
2424
  }
2355
- const [id] = (0, import_react18.useState)(generateId());
2425
+ const [id] = (0, import_react19.useState)(generateId());
2356
2426
  return id;
2357
2427
  };
2358
2428
 
2359
2429
  // components/AutoField/index.tsx
2360
- var import_jsx_runtime18 = require("react/jsx-runtime");
2430
+ var import_jsx_runtime19 = require("react/jsx-runtime");
2361
2431
  var getClassName15 = get_class_name_factory_default("Input", styles_module_default2);
2362
2432
  var getClassNameWrapper = get_class_name_factory_default("InputWrapper", styles_module_default2);
2363
2433
  var FieldLabel = ({
@@ -2369,16 +2439,16 @@ var FieldLabel = ({
2369
2439
  className
2370
2440
  }) => {
2371
2441
  const El = el;
2372
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(El, { className, children: [
2373
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: getClassName15("label"), children: [
2374
- icon ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: getClassName15("labelIcon"), children: icon }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_jsx_runtime18.Fragment, {}),
2442
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(El, { className, children: [
2443
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: getClassName15("label"), children: [
2444
+ icon ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: getClassName15("labelIcon"), children: icon }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_jsx_runtime19.Fragment, {}),
2375
2445
  label,
2376
- readOnly && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: getClassName15("disabledIcon"), title: "Read-only", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Lock, { size: "12" }) })
2446
+ readOnly && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: getClassName15("disabledIcon"), title: "Read-only", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Lock, { size: "12" }) })
2377
2447
  ] }),
2378
2448
  children
2379
2449
  ] });
2380
2450
  };
2381
- var FieldLabelInternal2 = ({
2451
+ var FieldLabelInternal = ({
2382
2452
  children,
2383
2453
  icon,
2384
2454
  label,
@@ -2386,14 +2456,14 @@ var FieldLabelInternal2 = ({
2386
2456
  readOnly
2387
2457
  }) => {
2388
2458
  const { overrides } = useAppContext();
2389
- const Wrapper = (0, import_react19.useMemo)(
2459
+ const Wrapper = (0, import_react20.useMemo)(
2390
2460
  () => overrides.fieldLabel || FieldLabel,
2391
2461
  [overrides]
2392
2462
  );
2393
2463
  if (!label) {
2394
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_jsx_runtime18.Fragment, { children });
2464
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_jsx_runtime19.Fragment, { children });
2395
2465
  }
2396
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2466
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2397
2467
  Wrapper,
2398
2468
  {
2399
2469
  label,
@@ -2407,8 +2477,9 @@ var FieldLabelInternal2 = ({
2407
2477
  };
2408
2478
  function AutoFieldInternal(props) {
2409
2479
  var _a, _b, _c, _d, _e, _f, _g, _h;
2410
- const { dispatch, overrides } = useAppContext();
2411
- const { id, Label: Label2 = FieldLabelInternal2 } = props;
2480
+ const { dispatch, overrides, selectedItem } = useAppContext();
2481
+ const nestedFieldContext = (0, import_react20.useContext)(NestedFieldContext);
2482
+ const { id, Label: Label2 = FieldLabelInternal } = props;
2412
2483
  const field = props.field;
2413
2484
  const label = field.label;
2414
2485
  const defaultId = useSafeId();
@@ -2439,7 +2510,7 @@ function AutoFieldInternal(props) {
2439
2510
  Label: Label2,
2440
2511
  id: resolvedId
2441
2512
  });
2442
- const onFocus = (0, import_react19.useCallback)(
2513
+ const onFocus = (0, import_react20.useCallback)(
2443
2514
  (e) => {
2444
2515
  if (mergedProps.name && e.target.nodeName === "INPUT") {
2445
2516
  e.stopPropagation();
@@ -2453,7 +2524,7 @@ function AutoFieldInternal(props) {
2453
2524
  },
2454
2525
  [mergedProps.name]
2455
2526
  );
2456
- const onBlur = (0, import_react19.useCallback)((e) => {
2527
+ const onBlur = (0, import_react20.useCallback)((e) => {
2457
2528
  if ("name" in e.target) {
2458
2529
  dispatch({
2459
2530
  type: "setUi",
@@ -2468,27 +2539,36 @@ function AutoFieldInternal(props) {
2468
2539
  return null;
2469
2540
  }
2470
2541
  const CustomField = field.render;
2471
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: getClassNameWrapper(), onFocus, onBlur, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: getClassName15(), children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(CustomField, __spreadValues({}, mergedProps)) }) });
2542
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: getClassNameWrapper(), onFocus, onBlur, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: getClassName15(), children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(CustomField, __spreadValues({}, mergedProps)) }) });
2472
2543
  }
2473
2544
  const children = defaultFields[field.type](mergedProps);
2474
2545
  const Render2 = render[field.type];
2475
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2476
- "div",
2546
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2547
+ NestedFieldContext.Provider,
2477
2548
  {
2478
- className: getClassNameWrapper(),
2479
- onFocus,
2480
- onBlur,
2481
- onClick: (e) => {
2482
- e.stopPropagation();
2549
+ value: {
2550
+ readOnlyFields: nestedFieldContext.readOnlyFields || (selectedItem == null ? void 0 : selectedItem.readOnly) || {},
2551
+ localName: nestedFieldContext.localName
2483
2552
  },
2484
- children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Render2, __spreadProps(__spreadValues({}, mergedProps), { children }))
2553
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2554
+ "div",
2555
+ {
2556
+ className: getClassNameWrapper(),
2557
+ onFocus,
2558
+ onBlur,
2559
+ onClick: (e) => {
2560
+ e.stopPropagation();
2561
+ },
2562
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Render2, __spreadProps(__spreadValues({}, mergedProps), { children }))
2563
+ }
2564
+ )
2485
2565
  }
2486
2566
  );
2487
2567
  }
2488
2568
  function AutoFieldPrivate(props) {
2489
2569
  const { state } = useAppContext();
2490
2570
  const { value, onChange } = props;
2491
- const [localValue, setLocalValue] = (0, import_react19.useState)(value);
2571
+ const [localValue, setLocalValue] = (0, import_react20.useState)(value);
2492
2572
  const onChangeDb = (0, import_use_debounce.useDebouncedCallback)(
2493
2573
  (val, ui) => {
2494
2574
  onChange(val, ui);
@@ -2496,11 +2576,11 @@ function AutoFieldPrivate(props) {
2496
2576
  50,
2497
2577
  { leading: true }
2498
2578
  );
2499
- const onChangeLocal = (0, import_react19.useCallback)((val, ui) => {
2579
+ const onChangeLocal = (0, import_react20.useCallback)((val, ui) => {
2500
2580
  setLocalValue(val);
2501
2581
  onChangeDb(val, ui);
2502
2582
  }, []);
2503
- (0, import_react19.useEffect)(() => {
2583
+ (0, import_react20.useEffect)(() => {
2504
2584
  if (state.ui.field.focus !== props.name) {
2505
2585
  setLocalValue(value);
2506
2586
  }
@@ -2509,11 +2589,11 @@ function AutoFieldPrivate(props) {
2509
2589
  value: localValue,
2510
2590
  onChange: onChangeLocal
2511
2591
  };
2512
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AutoFieldInternal, __spreadValues(__spreadValues({}, props), localProps));
2592
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AutoFieldInternal, __spreadValues(__spreadValues({}, props), localProps));
2513
2593
  }
2514
2594
  function AutoField(props) {
2515
- const DefaultLabel = (0, import_react19.useMemo)(() => {
2516
- const DefaultLabel2 = (labelProps) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2595
+ const DefaultLabel = (0, import_react20.useMemo)(() => {
2596
+ const DefaultLabel2 = (labelProps) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2517
2597
  "div",
2518
2598
  __spreadProps(__spreadValues({}, labelProps), {
2519
2599
  className: getClassName15({ readOnly: props.readOnly })
@@ -2521,7 +2601,7 @@ function AutoField(props) {
2521
2601
  );
2522
2602
  return DefaultLabel2;
2523
2603
  }, [props.readOnly]);
2524
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AutoFieldInternal, __spreadProps(__spreadValues({}, props), { Label: DefaultLabel }));
2604
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AutoFieldInternal, __spreadProps(__spreadValues({}, props), { Label: DefaultLabel }));
2525
2605
  }
2526
2606
 
2527
2607
  // components/Drawer/index.tsx
@@ -2532,21 +2612,21 @@ init_react_import();
2532
2612
  var styles_module_default10 = { "Drawer": "_Drawer_fkqfo_1", "Drawer-draggable": "_Drawer-draggable_fkqfo_8", "Drawer-draggableBg": "_Drawer-draggableBg_fkqfo_12", "Drawer-draggableFg": "_Drawer-draggableFg_fkqfo_21", "DrawerItem-draggable": "_DrawerItem-draggable_fkqfo_25", "DrawerItem--disabled": "_DrawerItem--disabled_fkqfo_38", "DrawerItem": "_DrawerItem_fkqfo_25", "Drawer--isDraggingFrom": "_Drawer--isDraggingFrom_fkqfo_48", "DrawerItem-name": "_DrawerItem-name_fkqfo_66" };
2533
2613
 
2534
2614
  // components/Drawer/index.tsx
2535
- var import_react31 = require("react");
2615
+ var import_react32 = require("react");
2536
2616
 
2537
2617
  // components/DragDropContext/index.tsx
2538
2618
  init_react_import();
2539
- var import_react29 = require("@dnd-kit/react");
2540
- var import_react30 = require("react");
2619
+ var import_react30 = require("@dnd-kit/react");
2620
+ var import_react31 = require("react");
2541
2621
  var import_dom = require("@dnd-kit/dom");
2542
2622
 
2543
2623
  // components/DropZone/index.tsx
2544
2624
  init_react_import();
2545
- var import_react28 = require("react");
2625
+ var import_react29 = require("react");
2546
2626
 
2547
2627
  // components/DraggableComponent/index.tsx
2548
2628
  init_react_import();
2549
- var import_react22 = require("react");
2629
+ var import_react23 = require("react");
2550
2630
 
2551
2631
  // css-module:/home/runner/work/puck/puck/packages/core/components/DraggableComponent/styles.module.css#css-module
2552
2632
  init_react_import();
@@ -2911,11 +2991,11 @@ function getDeepScrollPosition(element) {
2911
2991
 
2912
2992
  // components/DropZone/context.tsx
2913
2993
  init_react_import();
2914
- var import_react20 = require("react");
2994
+ var import_react21 = require("react");
2915
2995
  var import_zustand = require("zustand");
2916
- var import_jsx_runtime19 = require("react/jsx-runtime");
2917
- var dropZoneContext = (0, import_react20.createContext)(null);
2918
- var ZoneStoreContext = (0, import_react20.createContext)(
2996
+ var import_jsx_runtime20 = require("react/jsx-runtime");
2997
+ var dropZoneContext = (0, import_react21.createContext)(null);
2998
+ var ZoneStoreContext = (0, import_react21.createContext)(
2919
2999
  (0, import_zustand.createStore)(() => ({
2920
3000
  zoneDepthIndex: {},
2921
3001
  nextZoneDepthIndex: {},
@@ -2929,25 +3009,25 @@ var ZoneStoreProvider = ({
2929
3009
  children,
2930
3010
  store
2931
3011
  }) => {
2932
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(ZoneStoreContext.Provider, { value: store, children });
3012
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ZoneStoreContext.Provider, { value: store, children });
2933
3013
  };
2934
3014
  var DropZoneProvider = ({
2935
3015
  children,
2936
3016
  value
2937
3017
  }) => {
2938
- const [hoveringComponent, setHoveringComponent] = (0, import_react20.useState)();
2939
- const [areasWithZones, setAreasWithZones] = (0, import_react20.useState)(
3018
+ const [hoveringComponent, setHoveringComponent] = (0, import_react21.useState)();
3019
+ const [areasWithZones, setAreasWithZones] = (0, import_react21.useState)(
2940
3020
  {}
2941
3021
  );
2942
- const [activeZones, setActiveZones] = (0, import_react20.useState)({});
3022
+ const [activeZones, setActiveZones] = (0, import_react21.useState)({});
2943
3023
  const { dispatch } = useAppContext();
2944
- const registerZoneArea = (0, import_react20.useCallback)(
3024
+ const registerZoneArea = (0, import_react21.useCallback)(
2945
3025
  (area) => {
2946
3026
  setAreasWithZones((latest) => __spreadProps(__spreadValues({}, latest), { [area]: true }));
2947
3027
  },
2948
3028
  [setAreasWithZones]
2949
3029
  );
2950
- const registerZone = (0, import_react20.useCallback)(
3030
+ const registerZone = (0, import_react21.useCallback)(
2951
3031
  (zoneCompound) => {
2952
3032
  if (!dispatch) {
2953
3033
  return;
@@ -2960,7 +3040,7 @@ var DropZoneProvider = ({
2960
3040
  },
2961
3041
  [setActiveZones, dispatch]
2962
3042
  );
2963
- const unregisterZone = (0, import_react20.useCallback)(
3043
+ const unregisterZone = (0, import_react21.useCallback)(
2964
3044
  (zoneCompound) => {
2965
3045
  if (!dispatch) {
2966
3046
  return;
@@ -2975,7 +3055,7 @@ var DropZoneProvider = ({
2975
3055
  },
2976
3056
  [setActiveZones, dispatch]
2977
3057
  );
2978
- const memoValue = (0, import_react20.useMemo)(
3058
+ const memoValue = (0, import_react21.useMemo)(
2979
3059
  () => __spreadValues({
2980
3060
  hoveringComponent,
2981
3061
  setHoveringComponent,
@@ -2987,16 +3067,16 @@ var DropZoneProvider = ({
2987
3067
  }, value),
2988
3068
  [value, hoveringComponent, areasWithZones, activeZones]
2989
3069
  );
2990
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_jsx_runtime19.Fragment, { children: memoValue && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(dropZoneContext.Provider, { value: memoValue, children }) });
3070
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_jsx_runtime20.Fragment, { children: memoValue && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(dropZoneContext.Provider, { value: memoValue, children }) });
2991
3071
  };
2992
3072
 
2993
3073
  // lib/use-context-store.ts
2994
3074
  init_react_import();
2995
- var import_react21 = require("react");
3075
+ var import_react22 = require("react");
2996
3076
  var import_zustand2 = require("zustand");
2997
3077
  var import_shallow = require("zustand/react/shallow");
2998
3078
  function useContextStore(context, selector) {
2999
- const store = (0, import_react21.useContext)(context);
3079
+ const store = (0, import_react22.useContext)(context);
3000
3080
  if (!store) {
3001
3081
  throw new Error("useContextStore must be used inside context");
3002
3082
  }
@@ -3004,7 +3084,7 @@ function useContextStore(context, selector) {
3004
3084
  }
3005
3085
 
3006
3086
  // components/DraggableComponent/index.tsx
3007
- var import_jsx_runtime20 = require("react/jsx-runtime");
3087
+ var import_jsx_runtime21 = require("react/jsx-runtime");
3008
3088
  var getClassName16 = get_class_name_factory_default("DraggableComponent", styles_module_default11);
3009
3089
  var DEBUG2 = false;
3010
3090
  var space = 8;
@@ -3015,12 +3095,12 @@ var DefaultActionBar = ({
3015
3095
  label,
3016
3096
  children,
3017
3097
  parentAction
3018
- }) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(ActionBar, { children: [
3019
- /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(ActionBar.Group, { children: [
3098
+ }) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(ActionBar, { children: [
3099
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(ActionBar.Group, { children: [
3020
3100
  parentAction,
3021
- label && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ActionBar.Label, { label })
3101
+ label && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Label, { label })
3022
3102
  ] }),
3023
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ActionBar.Group, { children })
3103
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Group, { children })
3024
3104
  ] });
3025
3105
  var convertIdToSelector = (id, zoneCompound, data) => {
3026
3106
  const content = zoneCompound && data.zones && zoneCompound !== "default-zone" ? data.zones[zoneCompound] : data.content;
@@ -3055,9 +3135,9 @@ var DraggableComponent = ({
3055
3135
  iframe,
3056
3136
  state
3057
3137
  } = useAppContext();
3058
- const ctx = (0, import_react22.useContext)(dropZoneContext);
3059
- const [localZones, setLocalZones] = (0, import_react22.useState)({});
3060
- const registerLocalZone = (0, import_react22.useCallback)(
3138
+ const ctx = (0, import_react23.useContext)(dropZoneContext);
3139
+ const [localZones, setLocalZones] = (0, import_react23.useState)({});
3140
+ const registerLocalZone = (0, import_react23.useCallback)(
3061
3141
  (zoneCompound2, active) => {
3062
3142
  var _a;
3063
3143
  (_a = ctx == null ? void 0 : ctx.registerLocalZone) == null ? void 0 : _a.call(ctx, zoneCompound2, active);
@@ -3067,7 +3147,7 @@ var DraggableComponent = ({
3067
3147
  },
3068
3148
  [setLocalZones]
3069
3149
  );
3070
- const unregisterLocalZone = (0, import_react22.useCallback)(
3150
+ const unregisterLocalZone = (0, import_react23.useCallback)(
3071
3151
  (zoneCompound2) => {
3072
3152
  var _a;
3073
3153
  (_a = ctx == null ? void 0 : ctx.unregisterLocalZone) == null ? void 0 : _a.call(ctx, zoneCompound2);
@@ -3081,8 +3161,8 @@ var DraggableComponent = ({
3081
3161
  );
3082
3162
  const containsActiveZone = Object.values(localZones).filter(Boolean).length > 0;
3083
3163
  const { path = [] } = ctx || {};
3084
- const [canDrag, setCanDrag] = (0, import_react22.useState)(false);
3085
- (0, import_react22.useEffect)(() => {
3164
+ const [canDrag, setCanDrag] = (0, import_react23.useState)(false);
3165
+ (0, import_react23.useEffect)(() => {
3086
3166
  var _a;
3087
3167
  const item = getItem({ index, zone: zoneCompound }, state.data);
3088
3168
  if (item) {
@@ -3098,7 +3178,7 @@ var DraggableComponent = ({
3098
3178
  );
3099
3179
  const canCollide = canDrag || userIsDragging;
3100
3180
  const disabled = !isEnabled || !canCollide;
3101
- const [dragAxis, setDragAxis] = (0, import_react22.useState)(userDragAxis || autoDragAxis);
3181
+ const [dragAxis, setDragAxis] = (0, import_react23.useState)(userDragAxis || autoDragAxis);
3102
3182
  const { ref: sortableRef, status } = useSortableSafe({
3103
3183
  id,
3104
3184
  index,
@@ -3124,8 +3204,8 @@ var DraggableComponent = ({
3124
3204
  }
3125
3205
  });
3126
3206
  const thisIsDragging = status === "dragging";
3127
- const ref = (0, import_react22.useRef)(null);
3128
- const refSetter = (0, import_react22.useCallback)(
3207
+ const ref = (0, import_react23.useRef)(null);
3208
+ const refSetter = (0, import_react23.useCallback)(
3129
3209
  (el) => {
3130
3210
  sortableRef(el);
3131
3211
  if (el) {
@@ -3134,14 +3214,14 @@ var DraggableComponent = ({
3134
3214
  },
3135
3215
  [sortableRef]
3136
3216
  );
3137
- const [portalEl, setPortalEl] = (0, import_react22.useState)();
3138
- (0, import_react22.useEffect)(() => {
3217
+ const [portalEl, setPortalEl] = (0, import_react23.useState)();
3218
+ (0, import_react23.useEffect)(() => {
3139
3219
  var _a, _b, _c;
3140
3220
  setPortalEl(
3141
3221
  iframe.enabled ? (_a = ref.current) == null ? void 0 : _a.ownerDocument.body : (_c = (_b = ref.current) == null ? void 0 : _b.closest("[data-puck-preview]")) != null ? _c : document.body
3142
3222
  );
3143
3223
  }, [iframe.enabled, ref.current]);
3144
- const getStyle = (0, import_react22.useCallback)(() => {
3224
+ const getStyle = (0, import_react23.useCallback)(() => {
3145
3225
  var _a, _b, _c;
3146
3226
  if (!ref.current) return;
3147
3227
  const rect = ref.current.getBoundingClientRect();
@@ -3161,11 +3241,11 @@ var DraggableComponent = ({
3161
3241
  };
3162
3242
  return style2;
3163
3243
  }, [ref.current]);
3164
- const [style, setStyle] = (0, import_react22.useState)();
3165
- const sync = (0, import_react22.useCallback)(() => {
3244
+ const [style, setStyle] = (0, import_react23.useState)();
3245
+ const sync = (0, import_react23.useCallback)(() => {
3166
3246
  setStyle(getStyle());
3167
3247
  }, [ref.current, iframe]);
3168
- (0, import_react22.useEffect)(() => {
3248
+ (0, import_react23.useEffect)(() => {
3169
3249
  if (ref.current) {
3170
3250
  const observer = new ResizeObserver(sync);
3171
3251
  observer.observe(ref.current);
@@ -3174,7 +3254,7 @@ var DraggableComponent = ({
3174
3254
  };
3175
3255
  }
3176
3256
  }, [ref.current]);
3177
- (0, import_react22.useEffect)(() => {
3257
+ (0, import_react23.useEffect)(() => {
3178
3258
  if (isSelected) {
3179
3259
  ctx == null ? void 0 : ctx.registerPath({
3180
3260
  index,
@@ -3182,14 +3262,14 @@ var DraggableComponent = ({
3182
3262
  });
3183
3263
  }
3184
3264
  }, [isSelected]);
3185
- const CustomActionBar = (0, import_react22.useMemo)(
3265
+ const CustomActionBar = (0, import_react23.useMemo)(
3186
3266
  () => overrides.actionBar || DefaultActionBar,
3187
3267
  [overrides.actionBar]
3188
3268
  );
3189
3269
  const permissions = getPermissions({
3190
3270
  item: selectedItem
3191
3271
  });
3192
- const onClick = (0, import_react22.useCallback)(
3272
+ const onClick = (0, import_react23.useCallback)(
3193
3273
  (e) => {
3194
3274
  e.stopPropagation();
3195
3275
  dispatch({
@@ -3201,7 +3281,7 @@ var DraggableComponent = ({
3201
3281
  },
3202
3282
  [index, zoneCompound, id]
3203
3283
  );
3204
- const onSelectParent = (0, import_react22.useCallback)(() => {
3284
+ const onSelectParent = (0, import_react23.useCallback)(() => {
3205
3285
  if (!(ctx == null ? void 0 : ctx.areaId)) {
3206
3286
  return;
3207
3287
  }
@@ -3219,23 +3299,23 @@ var DraggableComponent = ({
3219
3299
  }
3220
3300
  });
3221
3301
  }, [ctx, path]);
3222
- const onDuplicate = (0, import_react22.useCallback)(() => {
3302
+ const onDuplicate = (0, import_react23.useCallback)(() => {
3223
3303
  dispatch({
3224
3304
  type: "duplicate",
3225
3305
  sourceIndex: index,
3226
3306
  sourceZone: zoneCompound
3227
3307
  });
3228
3308
  }, [index, zoneCompound]);
3229
- const onDelete = (0, import_react22.useCallback)(() => {
3309
+ const onDelete = (0, import_react23.useCallback)(() => {
3230
3310
  dispatch({
3231
3311
  type: "remove",
3232
3312
  index,
3233
3313
  zone: zoneCompound
3234
3314
  });
3235
3315
  }, [index, zoneCompound]);
3236
- const [hover, setHover] = (0, import_react22.useState)(false);
3316
+ const [hover, setHover] = (0, import_react23.useState)(false);
3237
3317
  const indicativeHover = (ctx == null ? void 0 : ctx.hoveringComponent) === id;
3238
- (0, import_react22.useEffect)(() => {
3318
+ (0, import_react23.useEffect)(() => {
3239
3319
  if (!ref.current) {
3240
3320
  return;
3241
3321
  }
@@ -3285,7 +3365,7 @@ var DraggableComponent = ({
3285
3365
  thisIsDragging,
3286
3366
  inDroppableZone
3287
3367
  ]);
3288
- (0, import_react22.useEffect)(() => {
3368
+ (0, import_react23.useEffect)(() => {
3289
3369
  if (ref.current && disabled) {
3290
3370
  ref.current.setAttribute("data-puck-disabled", "");
3291
3371
  return () => {
@@ -3294,8 +3374,8 @@ var DraggableComponent = ({
3294
3374
  };
3295
3375
  }
3296
3376
  }, [disabled, ref]);
3297
- const [isVisible, setIsVisible] = (0, import_react22.useState)(false);
3298
- (0, import_react22.useEffect)(() => {
3377
+ const [isVisible, setIsVisible] = (0, import_react23.useState)(false);
3378
+ (0, import_react23.useEffect)(() => {
3299
3379
  sync();
3300
3380
  if ((isSelected || hover || indicativeHover) && !userIsDragging) {
3301
3381
  setIsVisible(true);
@@ -3303,7 +3383,7 @@ var DraggableComponent = ({
3303
3383
  setIsVisible(false);
3304
3384
  }
3305
3385
  }, [isSelected, hover, indicativeHover, iframe, state.data, userIsDragging]);
3306
- const syncActionsPosition = (0, import_react22.useCallback)(
3386
+ const syncActionsPosition = (0, import_react23.useCallback)(
3307
3387
  (el) => {
3308
3388
  if (el) {
3309
3389
  const view = el.ownerDocument.defaultView;
@@ -3320,7 +3400,7 @@ var DraggableComponent = ({
3320
3400
  },
3321
3401
  [zoomConfig]
3322
3402
  );
3323
- (0, import_react22.useEffect)(() => {
3403
+ (0, import_react23.useEffect)(() => {
3324
3404
  if (userDragAxis) {
3325
3405
  setDragAxis(userDragAxis);
3326
3406
  return;
@@ -3334,8 +3414,8 @@ var DraggableComponent = ({
3334
3414
  }
3335
3415
  setDragAxis(autoDragAxis);
3336
3416
  }, [ref, userDragAxis, autoDragAxis]);
3337
- const parentAction = (ctx == null ? void 0 : ctx.areaId) && (ctx == null ? void 0 : ctx.areaId) !== "root" && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ActionBar.Action, { onClick: onSelectParent, label: "Select parent", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CornerLeftUp, { size: 16 }) });
3338
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3417
+ const parentAction = (ctx == null ? void 0 : ctx.areaId) && (ctx == null ? void 0 : ctx.areaId) !== "root" && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Action, { onClick: onSelectParent, label: "Select parent", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(CornerLeftUp, { size: 16 }) });
3418
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
3339
3419
  DropZoneProvider,
3340
3420
  {
3341
3421
  value: __spreadProps(__spreadValues({}, ctx), {
@@ -3349,7 +3429,7 @@ var DraggableComponent = ({
3349
3429
  }),
3350
3430
  children: [
3351
3431
  isVisible && (0, import_react_dom2.createPortal)(
3352
- /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3432
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
3353
3433
  "div",
3354
3434
  {
3355
3435
  className: getClassName16({
@@ -3361,15 +3441,15 @@ var DraggableComponent = ({
3361
3441
  "data-puck-overlay": true,
3362
3442
  children: [
3363
3443
  debug,
3364
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName16("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Loader, {}) }),
3365
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3444
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassName16("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Loader, {}) }),
3445
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3366
3446
  "div",
3367
3447
  {
3368
3448
  className: getClassName16("actionsOverlay"),
3369
3449
  style: {
3370
3450
  top: actionsOverlayTop / zoomConfig.zoom
3371
3451
  },
3372
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3452
+ children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3373
3453
  "div",
3374
3454
  {
3375
3455
  className: getClassName16("actions"),
@@ -3381,14 +3461,14 @@ var DraggableComponent = ({
3381
3461
  paddingRight: actionsSide
3382
3462
  },
3383
3463
  ref: syncActionsPosition,
3384
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3464
+ children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
3385
3465
  CustomActionBar,
3386
3466
  {
3387
3467
  parentAction,
3388
3468
  label: DEBUG2 ? id : label,
3389
3469
  children: [
3390
- permissions.duplicate && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ActionBar.Action, { onClick: onDuplicate, label: "Duplicate", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Copy, { size: 16 }) }),
3391
- permissions.delete && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ActionBar.Action, { onClick: onDelete, label: "Delete", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Trash, { size: 16 }) })
3470
+ permissions.duplicate && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Action, { onClick: onDuplicate, label: "Duplicate", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Copy, { size: 16 }) }),
3471
+ permissions.delete && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Action, { onClick: onDelete, label: "Delete", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Trash, { size: 16 }) })
3392
3472
  ]
3393
3473
  }
3394
3474
  )
@@ -3396,7 +3476,7 @@ var DraggableComponent = ({
3396
3476
  )
3397
3477
  }
3398
3478
  ),
3399
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName16("overlay") })
3479
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassName16("overlay") })
3400
3480
  ]
3401
3481
  }
3402
3482
  ),
@@ -3414,14 +3494,14 @@ var styles_module_default12 = { "DropZone": "_DropZone_kmkdc_1", "DropZone--isAc
3414
3494
 
3415
3495
  // components/DropZone/lib/use-min-empty-height.ts
3416
3496
  init_react_import();
3417
- var import_react23 = require("react");
3497
+ var import_react24 = require("react");
3418
3498
  var useMinEmptyHeight = ({
3419
3499
  zoneCompound,
3420
3500
  userMinEmptyHeight,
3421
3501
  ref
3422
3502
  }) => {
3423
- const [prevHeight, setPrevHeight] = (0, import_react23.useState)(0);
3424
- const [isAnimating, setIsAnimating] = (0, import_react23.useState)(false);
3503
+ const [prevHeight, setPrevHeight] = (0, import_react24.useState)(0);
3504
+ const [isAnimating, setIsAnimating] = (0, import_react24.useState)(false);
3425
3505
  const { draggedItem, isZone } = useContextStore(ZoneStoreContext, (s) => {
3426
3506
  var _a, _b;
3427
3507
  return {
@@ -3429,7 +3509,7 @@ var useMinEmptyHeight = ({
3429
3509
  isZone: ((_b = s.draggedItem) == null ? void 0 : _b.data.zone) === zoneCompound
3430
3510
  };
3431
3511
  });
3432
- (0, import_react23.useEffect)(() => {
3512
+ (0, import_react24.useEffect)(() => {
3433
3513
  if (draggedItem && ref.current) {
3434
3514
  if (isZone) {
3435
3515
  const rect = ref.current.getBoundingClientRect();
@@ -3463,15 +3543,15 @@ function assignRefs(refs, node) {
3463
3543
 
3464
3544
  // components/DropZone/lib/use-content-with-preview.ts
3465
3545
  init_react_import();
3466
- var import_react26 = require("react");
3546
+ var import_react27 = require("react");
3467
3547
 
3468
3548
  // lib/dnd/use-rendered-callback.ts
3469
3549
  init_react_import();
3470
- var import_react24 = require("@dnd-kit/react");
3471
- var import_react25 = require("react");
3550
+ var import_react25 = require("@dnd-kit/react");
3551
+ var import_react26 = require("react");
3472
3552
  function useRenderedCallback(callback, deps) {
3473
- const manager = (0, import_react24.useDragDropManager)();
3474
- return (0, import_react25.useCallback)(
3553
+ const manager = (0, import_react25.useDragDropManager)();
3554
+ return (0, import_react26.useCallback)(
3475
3555
  (...args) => __async(this, null, function* () {
3476
3556
  yield manager == null ? void 0 : manager.renderer.rendering;
3477
3557
  return callback(...args);
@@ -3501,7 +3581,7 @@ var useContentWithPreview = (content, zoneCompound) => {
3501
3581
  };
3502
3582
  }
3503
3583
  );
3504
- const [contentWithPreview, setContentWithPreview] = (0, import_react26.useState)(content);
3584
+ const [contentWithPreview, setContentWithPreview] = (0, import_react27.useState)(content);
3505
3585
  const updateContent = useRenderedCallback(
3506
3586
  (content2, preview2) => {
3507
3587
  if (preview2) {
@@ -3536,7 +3616,7 @@ var useContentWithPreview = (content, zoneCompound) => {
3536
3616
  },
3537
3617
  [draggedItemId, previewExists]
3538
3618
  );
3539
- (0, import_react26.useEffect)(() => {
3619
+ (0, import_react27.useEffect)(() => {
3540
3620
  updateContent(content, preview);
3541
3621
  }, [content, preview]);
3542
3622
  return contentWithPreview;
@@ -3544,16 +3624,16 @@ var useContentWithPreview = (content, zoneCompound) => {
3544
3624
 
3545
3625
  // components/DropZone/lib/use-drag-axis.ts
3546
3626
  init_react_import();
3547
- var import_react27 = require("react");
3627
+ var import_react28 = require("react");
3548
3628
  var GRID_DRAG_AXIS = "dynamic";
3549
3629
  var FLEX_ROW_DRAG_AXIS = "x";
3550
3630
  var DEFAULT_DRAG_AXIS = "y";
3551
3631
  var useDragAxis = (ref, collisionAxis) => {
3552
3632
  const { status } = useAppContext();
3553
- const [dragAxis, setDragAxis] = (0, import_react27.useState)(
3633
+ const [dragAxis, setDragAxis] = (0, import_react28.useState)(
3554
3634
  collisionAxis || DEFAULT_DRAG_AXIS
3555
3635
  );
3556
- const calculateDragAxis = (0, import_react27.useCallback)(() => {
3636
+ const calculateDragAxis = (0, import_react28.useCallback)(() => {
3557
3637
  if (ref.current) {
3558
3638
  const computedStyle = window.getComputedStyle(ref.current);
3559
3639
  if (computedStyle.display === "grid") {
@@ -3565,7 +3645,7 @@ var useDragAxis = (ref, collisionAxis) => {
3565
3645
  }
3566
3646
  }
3567
3647
  }, [ref.current]);
3568
- (0, import_react27.useEffect)(() => {
3648
+ (0, import_react28.useEffect)(() => {
3569
3649
  const onViewportChange = () => {
3570
3650
  calculateDragAxis();
3571
3651
  };
@@ -3574,17 +3654,17 @@ var useDragAxis = (ref, collisionAxis) => {
3574
3654
  window.removeEventListener("viewportchange", onViewportChange);
3575
3655
  };
3576
3656
  }, []);
3577
- (0, import_react27.useEffect)(calculateDragAxis, [status, collisionAxis]);
3657
+ (0, import_react28.useEffect)(calculateDragAxis, [status, collisionAxis]);
3578
3658
  return [dragAxis, calculateDragAxis];
3579
3659
  };
3580
3660
 
3581
3661
  // components/DropZone/index.tsx
3582
- var import_jsx_runtime21 = require("react/jsx-runtime");
3662
+ var import_jsx_runtime22 = require("react/jsx-runtime");
3583
3663
  var getClassName17 = get_class_name_factory_default("DropZone", styles_module_default12);
3584
3664
  var getRandomColor = () => `#${Math.floor(Math.random() * 16777215).toString(16)}`;
3585
3665
  var RENDER_DEBUG = false;
3586
- var DropZoneEdit = (0, import_react28.forwardRef)(
3587
- function DropZoneEdit2({
3666
+ var DropZoneEdit = (0, import_react29.forwardRef)(
3667
+ function DropZoneEditInternal({
3588
3668
  zone,
3589
3669
  allow,
3590
3670
  disallow,
@@ -3594,7 +3674,7 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3594
3674
  collisionAxis
3595
3675
  }, userRef) {
3596
3676
  const appContext2 = useAppContext();
3597
- const ctx = (0, import_react28.useContext)(dropZoneContext);
3677
+ const ctx = (0, import_react29.useContext)(dropZoneContext);
3598
3678
  const {
3599
3679
  // These all need setting via context
3600
3680
  data,
@@ -3632,12 +3712,12 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3632
3712
  };
3633
3713
  });
3634
3714
  const { itemSelector } = appContext2.state.ui;
3635
- (0, import_react28.useEffect)(() => {
3715
+ (0, import_react29.useEffect)(() => {
3636
3716
  if (areaId && registerZoneArea) {
3637
3717
  registerZoneArea(areaId);
3638
3718
  }
3639
3719
  }, [areaId]);
3640
- (0, import_react28.useEffect)(() => {
3720
+ (0, import_react29.useEffect)(() => {
3641
3721
  if (ctx == null ? void 0 : ctx.registerZone) {
3642
3722
  ctx == null ? void 0 : ctx.registerZone(zoneCompound);
3643
3723
  }
@@ -3647,14 +3727,14 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3647
3727
  }
3648
3728
  };
3649
3729
  }, []);
3650
- const content = (0, import_react28.useMemo)(() => {
3730
+ const content = (0, import_react29.useMemo)(() => {
3651
3731
  if (areaId && zone !== rootDroppableId) {
3652
3732
  return setupZone(data, zoneCompound).zones[zoneCompound];
3653
3733
  }
3654
3734
  return data.content || [];
3655
3735
  }, [data, zoneCompound]);
3656
- const ref = (0, import_react28.useRef)(null);
3657
- const acceptsTarget = (0, import_react28.useCallback)(
3736
+ const ref = (0, import_react29.useRef)(null);
3737
+ const acceptsTarget = (0, import_react29.useCallback)(
3658
3738
  (componentType) => {
3659
3739
  if (!componentType) {
3660
3740
  return true;
@@ -3676,7 +3756,7 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3676
3756
  },
3677
3757
  [allow, disallow]
3678
3758
  );
3679
- (0, import_react28.useEffect)(() => {
3759
+ (0, import_react29.useEffect)(() => {
3680
3760
  if (registerLocalZone) {
3681
3761
  registerLocalZone(zoneCompound, acceptsTarget(draggedComponentType));
3682
3762
  }
@@ -3718,7 +3798,7 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3718
3798
  userMinEmptyHeight,
3719
3799
  ref
3720
3800
  });
3721
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3801
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3722
3802
  "div",
3723
3803
  {
3724
3804
  className: `${getClassName17({
@@ -3745,7 +3825,7 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3745
3825
  var _a, _b, _c, _d, _e;
3746
3826
  const componentId = item.props.id;
3747
3827
  const puckProps = {
3748
- renderDropZone: DropZone,
3828
+ renderDropZone: (props) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropZoneEdit, __spreadValues({}, props)),
3749
3829
  isEditing: true,
3750
3830
  dragRef: null
3751
3831
  };
@@ -3755,7 +3835,7 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3755
3835
  // DEPRECATED
3756
3836
  });
3757
3837
  const isSelected = (selectedItem == null ? void 0 : selectedItem.props.id) === componentId || false;
3758
- let Render2 = config.components[item.type] && item.type !== "preview" ? config.components[item.type].render : () => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { style: { padding: 48, textAlign: "center" }, children: [
3838
+ let Render2 = config.components[item.type] && item.type !== "preview" ? config.components[item.type].render : () => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { style: { padding: 48, textAlign: "center" }, children: [
3759
3839
  "No configuration for ",
3760
3840
  item.type
3761
3841
  ] });
@@ -3764,18 +3844,18 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3764
3844
  let label = (_b = componentConfig == null ? void 0 : componentConfig["label"]) != null ? _b : item.type.toString();
3765
3845
  if (item.type === "preview" && preview) {
3766
3846
  let Preview4 = function() {
3767
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DrawerItemInner, { name: label, children: appContext2.overrides.componentItem });
3847
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DrawerItemInner, { name: label, children: appContext2.overrides.componentItem });
3768
3848
  };
3769
3849
  var Preview3 = Preview4;
3770
3850
  componentType = preview.componentType;
3771
3851
  label = (_d = (_c = config.components[componentType]) == null ? void 0 : _c.label) != null ? _d : preview.componentType;
3772
3852
  Render2 = Preview4;
3773
3853
  }
3774
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3854
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3775
3855
  DropZoneProvider,
3776
3856
  {
3777
3857
  value: __spreadProps(__spreadValues({}, ctx), { path: [...path, zoneCompound] }),
3778
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3858
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3779
3859
  DraggableComponent,
3780
3860
  {
3781
3861
  id: componentId,
@@ -3790,14 +3870,14 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3790
3870
  autoDragAxis: dragAxis,
3791
3871
  userDragAxis: collisionAxis,
3792
3872
  inDroppableZone: acceptsTarget(draggedComponentType),
3793
- children: (dragRef) => (componentConfig == null ? void 0 : componentConfig.inline) ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3873
+ children: (dragRef) => (componentConfig == null ? void 0 : componentConfig.inline) ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3794
3874
  Render2,
3795
3875
  __spreadProps(__spreadValues({}, defaultedProps), {
3796
3876
  puck: __spreadProps(__spreadValues({}, defaultedProps.puck), {
3797
3877
  dragRef
3798
3878
  })
3799
3879
  })
3800
- ) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { ref: dragRef, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Render2, __spreadValues({}, defaultedProps)) })
3880
+ ) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { ref: dragRef, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Render2, __spreadValues({}, defaultedProps)) })
3801
3881
  }
3802
3882
  )
3803
3883
  },
@@ -3808,13 +3888,13 @@ var DropZoneEdit = (0, import_react28.forwardRef)(
3808
3888
  );
3809
3889
  }
3810
3890
  );
3811
- var DropZoneRender = (0, import_react28.forwardRef)(
3812
- function DropZoneRender2({ className, style, zone }, ref) {
3813
- const ctx = (0, import_react28.useContext)(dropZoneContext);
3891
+ var DropZoneRender = (0, import_react29.forwardRef)(
3892
+ function DropZoneRenderInternal({ className, style, zone }, ref) {
3893
+ const ctx = (0, import_react29.useContext)(dropZoneContext);
3814
3894
  const { data, areaId = "root", config } = ctx || {};
3815
3895
  let zoneCompound = rootDroppableId;
3816
3896
  let content = (data == null ? void 0 : data.content) || [];
3817
- (0, import_react28.useEffect)(() => {
3897
+ (0, import_react29.useEffect)(() => {
3818
3898
  if (ctx == null ? void 0 : ctx.registerZone) {
3819
3899
  ctx == null ? void 0 : ctx.registerZone(zoneCompound);
3820
3900
  }
@@ -3831,10 +3911,10 @@ var DropZoneRender = (0, import_react28.forwardRef)(
3831
3911
  zoneCompound = `${areaId}:${zone}`;
3832
3912
  content = setupZone(data, zoneCompound).zones[zoneCompound];
3833
3913
  }
3834
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className, style, ref, children: content.map((item) => {
3914
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className, style, ref, children: content.map((item) => {
3835
3915
  const Component = config.components[item.type];
3836
3916
  if (Component) {
3837
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3917
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3838
3918
  DropZoneProvider,
3839
3919
  {
3840
3920
  value: {
@@ -3844,10 +3924,12 @@ var DropZoneRender = (0, import_react28.forwardRef)(
3844
3924
  depth: 1,
3845
3925
  path: []
3846
3926
  },
3847
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3927
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3848
3928
  Component.render,
3849
3929
  __spreadProps(__spreadValues({}, item.props), {
3850
- puck: { renderDropZone: DropZoneRender2 }
3930
+ puck: {
3931
+ renderDropZone: (props) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropZoneRender, __spreadValues({}, props))
3932
+ }
3851
3933
  })
3852
3934
  )
3853
3935
  },
@@ -3858,13 +3940,13 @@ var DropZoneRender = (0, import_react28.forwardRef)(
3858
3940
  }) });
3859
3941
  }
3860
3942
  );
3861
- var DropZone = (0, import_react28.forwardRef)(
3943
+ var DropZone = (0, import_react29.forwardRef)(
3862
3944
  function DropZone2(props, ref) {
3863
- const ctx = (0, import_react28.useContext)(dropZoneContext);
3945
+ const ctx = (0, import_react29.useContext)(dropZoneContext);
3864
3946
  if ((ctx == null ? void 0 : ctx.mode) === "edit") {
3865
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_jsx_runtime21.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DropZoneEdit, __spreadProps(__spreadValues({}, props), { ref })) });
3947
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_jsx_runtime22.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropZoneEdit, __spreadProps(__spreadValues({}, props), { ref })) });
3866
3948
  }
3867
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_jsx_runtime21.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DropZoneRender, __spreadProps(__spreadValues({}, props), { ref })) });
3949
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_jsx_runtime22.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropZoneRender, __spreadProps(__spreadValues({}, props), { ref })) });
3868
3950
  }
3869
3951
  );
3870
3952
 
@@ -3922,6 +4004,48 @@ var getFrame = () => {
3922
4004
  return (frameEl == null ? void 0 : frameEl.ownerDocument) || document;
3923
4005
  };
3924
4006
 
4007
+ // lib/global-position.ts
4008
+ init_react_import();
4009
+ var GlobalPosition = class {
4010
+ constructor(target, original) {
4011
+ this.scaleFactor = 1;
4012
+ this.frameEl = null;
4013
+ this.frameRect = null;
4014
+ var _a;
4015
+ this.target = target;
4016
+ this.original = original;
4017
+ this.frameEl = document.querySelector("iframe");
4018
+ if (this.frameEl) {
4019
+ this.frameRect = this.frameEl.getBoundingClientRect();
4020
+ this.scaleFactor = this.frameRect.width / (((_a = this.frameEl.contentWindow) == null ? void 0 : _a.innerWidth) || 1);
4021
+ }
4022
+ }
4023
+ get x() {
4024
+ return this.original.x;
4025
+ }
4026
+ get y() {
4027
+ return this.original.y;
4028
+ }
4029
+ get global() {
4030
+ if (document !== this.target.ownerDocument && this.frameRect) {
4031
+ return {
4032
+ x: this.x * this.scaleFactor + this.frameRect.left,
4033
+ y: this.y * this.scaleFactor + this.frameRect.top
4034
+ };
4035
+ }
4036
+ return this.original;
4037
+ }
4038
+ get frame() {
4039
+ if (document === this.target.ownerDocument && this.frameRect) {
4040
+ return {
4041
+ x: (this.x - this.frameRect.left) / this.scaleFactor,
4042
+ y: (this.y - this.frameRect.top) / this.scaleFactor
4043
+ };
4044
+ }
4045
+ return this.original;
4046
+ }
4047
+ };
4048
+
3925
4049
  // lib/dnd/NestedDroppablePlugin.ts
3926
4050
  var depthSort = (candidates) => {
3927
4051
  return candidates.sort((a, b) => {
@@ -3951,10 +4075,12 @@ var getZoneId2 = (candidate) => {
3951
4075
  }
3952
4076
  return id;
3953
4077
  };
3954
- var getPointerCollisions = (position, manager, ownerDocument) => {
3955
- var _a;
4078
+ var getPointerCollisions = (position, manager) => {
3956
4079
  const candidates = [];
3957
- let elements = ownerDocument.elementsFromPoint(position.x, position.y);
4080
+ let elements = position.target.ownerDocument.elementsFromPoint(
4081
+ position.x,
4082
+ position.y
4083
+ );
3958
4084
  const previewFrame = elements.find(
3959
4085
  (el) => el.getAttribute("data-puck-preview")
3960
4086
  );
@@ -3963,17 +4089,9 @@ var getPointerCollisions = (position, manager, ownerDocument) => {
3963
4089
  elements = [drawer];
3964
4090
  }
3965
4091
  if (previewFrame) {
3966
- const iframe = previewFrame.querySelector("iframe");
3967
- if (iframe) {
3968
- const rect = iframe.getBoundingClientRect();
3969
- const frame = getFrame();
3970
- if (frame) {
3971
- const scaleFactor = rect.width / (((_a = iframe.contentWindow) == null ? void 0 : _a.innerWidth) || 1);
3972
- elements = frame.elementsFromPoint(
3973
- (position.x - rect.left) / scaleFactor,
3974
- (position.y - rect.top) / scaleFactor
3975
- );
3976
- }
4092
+ const frame = getFrame();
4093
+ if (frame) {
4094
+ elements = frame.elementsFromPoint(position.frame.x, position.frame.y);
3977
4095
  }
3978
4096
  }
3979
4097
  if (elements) {
@@ -3990,9 +4108,9 @@ var getPointerCollisions = (position, manager, ownerDocument) => {
3990
4108
  }
3991
4109
  return candidates;
3992
4110
  };
3993
- var findDeepestCandidate = (position, manager, ownerDocument) => {
4111
+ var findDeepestCandidate = (position, manager) => {
3994
4112
  var _a;
3995
- const candidates = getPointerCollisions(position, manager, ownerDocument);
4113
+ const candidates = getPointerCollisions(position, manager);
3996
4114
  if (candidates.length > 0) {
3997
4115
  const sortedCandidates = depthSort(candidates);
3998
4116
  const draggable = manager.dragOperation.source;
@@ -4045,22 +4163,18 @@ var createNestedDroppablePlugin = ({ onChange }, id) => class NestedDroppablePlu
4045
4163
  }
4046
4164
  const cleanupEffect = (0, import_state.effects)(() => {
4047
4165
  const handleMove = (event) => {
4048
- const position = {
4166
+ const target = event.originalTarget || event.target;
4167
+ const position = new GlobalPosition(target, {
4049
4168
  x: event.clientX,
4050
4169
  y: event.clientY
4051
- };
4052
- const target = event.originalTarget || event.target;
4053
- const ownerDocument = target == null ? void 0 : target.ownerDocument;
4170
+ });
4054
4171
  const elements = document.elementsFromPoint(
4055
- event.clientX,
4056
- event.clientY
4172
+ position.global.x,
4173
+ position.global.y
4057
4174
  );
4058
4175
  const overEl = elements.some((el) => el.id === id);
4059
4176
  if (overEl) {
4060
- onChange(
4061
- findDeepestCandidate(position, manager, ownerDocument),
4062
- manager
4063
- );
4177
+ onChange(findDeepestCandidate(position, manager), manager);
4064
4178
  }
4065
4179
  };
4066
4180
  const handleMoveThrottled = throttle(handleMove, 50);
@@ -4741,14 +4855,14 @@ function patchWindow(window2) {
4741
4855
 
4742
4856
  // components/DragDropContext/index.tsx
4743
4857
  var import_zustand3 = require("zustand");
4744
- var import_jsx_runtime22 = require("react/jsx-runtime");
4858
+ var import_jsx_runtime23 = require("react/jsx-runtime");
4745
4859
  var DEBUG3 = false;
4746
- var dragListenerContext = (0, import_react30.createContext)({
4860
+ var dragListenerContext = (0, import_react31.createContext)({
4747
4861
  dragListeners: {}
4748
4862
  });
4749
4863
  function useDragListener(type, fn, deps = []) {
4750
- const { setDragListeners } = (0, import_react30.useContext)(dragListenerContext);
4751
- (0, import_react30.useEffect)(() => {
4864
+ const { setDragListeners } = (0, import_react31.useContext)(dragListenerContext);
4865
+ (0, import_react31.useEffect)(() => {
4752
4866
  if (setDragListeners) {
4753
4867
  setDragListeners((old) => __spreadProps(__spreadValues({}, old), {
4754
4868
  [type]: [...old[type] || [], fn]
@@ -4758,8 +4872,8 @@ function useDragListener(type, fn, deps = []) {
4758
4872
  }
4759
4873
  var AREA_CHANGE_DEBOUNCE_MS = 100;
4760
4874
  var useTempDisableFallback = (timeout3) => {
4761
- const lastFallbackDisable = (0, import_react30.useRef)(null);
4762
- return (0, import_react30.useCallback)((manager) => {
4875
+ const lastFallbackDisable = (0, import_react31.useRef)(null);
4876
+ return (0, import_react31.useCallback)((manager) => {
4763
4877
  collisionStore.setState({ fallbackEnabled: false });
4764
4878
  const fallbackId = generateId();
4765
4879
  lastFallbackDisable.current = fallbackId;
@@ -4776,11 +4890,11 @@ var DragDropContextClient = ({
4776
4890
  disableAutoScroll
4777
4891
  }) => {
4778
4892
  const { state, config, dispatch, resolveData } = useAppContext();
4779
- const id = (0, import_react30.useId)();
4893
+ const id = (0, import_react31.useId)();
4780
4894
  const { data } = state;
4781
- const debouncedParamsRef = (0, import_react30.useRef)(null);
4895
+ const debouncedParamsRef = (0, import_react31.useRef)(null);
4782
4896
  const tempDisableFallback = useTempDisableFallback(100);
4783
- const [zoneStore] = (0, import_react30.useState)(
4897
+ const [zoneStore] = (0, import_react31.useState)(
4784
4898
  () => (0, import_zustand3.createStore)(() => ({
4785
4899
  zoneDepthIndex: {},
4786
4900
  nextZoneDepthIndex: {},
@@ -4790,7 +4904,7 @@ var DragDropContextClient = ({
4790
4904
  previewIndex: {}
4791
4905
  }))
4792
4906
  );
4793
- const getChanged2 = (0, import_react30.useCallback)(
4907
+ const getChanged2 = (0, import_react31.useCallback)(
4794
4908
  (params, id2) => {
4795
4909
  const { zoneDepthIndex = {}, areaDepthIndex = {} } = zoneStore.getState() || {};
4796
4910
  const stateHasZone = Object.keys(zoneDepthIndex).length > 0;
@@ -4811,7 +4925,7 @@ var DragDropContextClient = ({
4811
4925
  },
4812
4926
  [zoneStore]
4813
4927
  );
4814
- const setDeepestAndCollide = (0, import_react30.useCallback)(
4928
+ const setDeepestAndCollide = (0, import_react31.useCallback)(
4815
4929
  (params, manager) => {
4816
4930
  const { zoneChanged, areaChanged } = getChanged2(params, id);
4817
4931
  if (!zoneChanged && !areaChanged) return;
@@ -4835,7 +4949,7 @@ var DragDropContextClient = ({
4835
4949
  setDeepestDb.cancel();
4836
4950
  debouncedParamsRef.current = null;
4837
4951
  };
4838
- (0, import_react30.useEffect)(() => {
4952
+ (0, import_react31.useEffect)(() => {
4839
4953
  if (DEBUG3) {
4840
4954
  zoneStore.subscribe(
4841
4955
  (s) => {
@@ -4849,7 +4963,7 @@ var DragDropContextClient = ({
4849
4963
  );
4850
4964
  }
4851
4965
  }, []);
4852
- const [plugins] = (0, import_react30.useState)(() => [
4966
+ const [plugins] = (0, import_react31.useState)(() => [
4853
4967
  ...disableAutoScroll ? import_dom.defaultPreset.plugins.filter((plugin) => plugin !== import_dom.AutoScroller) : import_dom.defaultPreset.plugins,
4854
4968
  createNestedDroppablePlugin(
4855
4969
  {
@@ -4896,7 +5010,7 @@ var DragDropContextClient = ({
4896
5010
  id
4897
5011
  )
4898
5012
  ]);
4899
- const [sensors] = (0, import_react30.useState)(() => [
5013
+ const [sensors] = (0, import_react31.useState)(() => [
4900
5014
  PointerSensor.configure({
4901
5015
  activationConstraints(event, source) {
4902
5016
  var _a;
@@ -4915,10 +5029,10 @@ var DragDropContextClient = ({
4915
5029
  }
4916
5030
  })
4917
5031
  ]);
4918
- const [dragListeners, setDragListeners] = (0, import_react30.useState)({});
4919
- const [pathData, setPathData] = (0, import_react30.useState)();
4920
- const dragMode = (0, import_react30.useRef)(null);
4921
- const registerPath = (0, import_react30.useCallback)(
5032
+ const [dragListeners, setDragListeners] = (0, import_react31.useState)({});
5033
+ const [pathData, setPathData] = (0, import_react31.useState)();
5034
+ const dragMode = (0, import_react31.useRef)(null);
5035
+ const registerPath = (0, import_react31.useCallback)(
4922
5036
  (selector) => {
4923
5037
  const item = getItem(selector, data);
4924
5038
  if (!item) {
@@ -4940,16 +5054,16 @@ var DragDropContextClient = ({
4940
5054
  },
4941
5055
  [data, setPathData]
4942
5056
  );
4943
- const initialSelector = (0, import_react30.useRef)(void 0);
4944
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { id, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
5057
+ const initialSelector = (0, import_react31.useRef)(void 0);
5058
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { id, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4945
5059
  dragListenerContext.Provider,
4946
5060
  {
4947
5061
  value: {
4948
5062
  dragListeners,
4949
5063
  setDragListeners
4950
5064
  },
4951
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4952
- import_react29.DragDropProvider,
5065
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
5066
+ import_react30.DragDropProvider,
4953
5067
  {
4954
5068
  plugins,
4955
5069
  sensors,
@@ -5126,7 +5240,7 @@ var DragDropContextClient = ({
5126
5240
  initialSelector.current = void 0;
5127
5241
  zoneStore.setState({ draggedItem: event.operation.source });
5128
5242
  },
5129
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ZoneStoreProvider, { store: zoneStore, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
5243
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ZoneStoreProvider, { store: zoneStore, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
5130
5244
  DropZoneProvider,
5131
5245
  {
5132
5246
  value: {
@@ -5155,11 +5269,11 @@ var DragDropContext = ({
5155
5269
  if (status === "LOADING") {
5156
5270
  return children;
5157
5271
  }
5158
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DragDropContextClient, { disableAutoScroll, children });
5272
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DragDropContextClient, { disableAutoScroll, children });
5159
5273
  };
5160
5274
 
5161
5275
  // components/Drawer/index.tsx
5162
- var import_jsx_runtime23 = require("react/jsx-runtime");
5276
+ var import_jsx_runtime24 = require("react/jsx-runtime");
5163
5277
  var getClassName18 = get_class_name_factory_default("Drawer", styles_module_default10);
5164
5278
  var getClassNameItem2 = get_class_name_factory_default("DrawerItem", styles_module_default10);
5165
5279
  var DrawerItemInner = ({
@@ -5169,11 +5283,11 @@ var DrawerItemInner = ({
5169
5283
  dragRef,
5170
5284
  isDragDisabled
5171
5285
  }) => {
5172
- const CustomInner = (0, import_react31.useMemo)(
5173
- () => children || (({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassNameItem2("default"), children: children2 })),
5286
+ const CustomInner = (0, import_react32.useMemo)(
5287
+ () => children || (({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassNameItem2("default"), children: children2 })),
5174
5288
  [children]
5175
5289
  );
5176
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
5290
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
5177
5291
  "div",
5178
5292
  {
5179
5293
  className: getClassNameItem2({ disabled: isDragDisabled }),
@@ -5181,9 +5295,9 @@ var DrawerItemInner = ({
5181
5295
  onMouseDown: (e) => e.preventDefault(),
5182
5296
  "data-testid": dragRef ? `drawer-item:${name}` : "",
5183
5297
  "data-puck-drawer-item": true,
5184
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(CustomInner, { name, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassNameItem2("draggableWrapper"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: getClassNameItem2("draggable"), children: [
5185
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassNameItem2("name"), children: label != null ? label : name }),
5186
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassNameItem2("icon"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DragIcon, {}) })
5298
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(CustomInner, { name, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassNameItem2("draggableWrapper"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: getClassNameItem2("draggable"), children: [
5299
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassNameItem2("name"), children: label != null ? label : name }),
5300
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassNameItem2("icon"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(DragIcon, {}) })
5187
5301
  ] }) }) })
5188
5302
  }
5189
5303
  );
@@ -5200,9 +5314,9 @@ var DrawerItemDraggable = ({
5200
5314
  data: { type: "drawer", componentType: name },
5201
5315
  disabled: isDragDisabled
5202
5316
  });
5203
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: getClassName18("draggable"), children: [
5204
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName18("draggableBg"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DrawerItemInner, { name, label, children }) }),
5205
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName18("draggableFg"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
5317
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: getClassName18("draggable"), children: [
5318
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName18("draggableBg"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(DrawerItemInner, { name, label, children }) }),
5319
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName18("draggableFg"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
5206
5320
  DrawerItemInner,
5207
5321
  {
5208
5322
  name,
@@ -5223,7 +5337,7 @@ var DrawerItem = ({
5223
5337
  isDragDisabled
5224
5338
  }) => {
5225
5339
  const resolvedId = id || name;
5226
- const [dynamicId, setDynamicId] = (0, import_react31.useState)(generateId(resolvedId));
5340
+ const [dynamicId, setDynamicId] = (0, import_react32.useState)(generateId(resolvedId));
5227
5341
  if (typeof index !== "undefined") {
5228
5342
  console.error(
5229
5343
  "Warning: The `index` prop on Drawer.Item is deprecated and no longer required."
@@ -5236,7 +5350,7 @@ var DrawerItem = ({
5236
5350
  },
5237
5351
  [resolvedId]
5238
5352
  );
5239
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
5353
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
5240
5354
  DrawerItemDraggable,
5241
5355
  {
5242
5356
  name,
@@ -5262,14 +5376,14 @@ var Drawer = ({
5262
5376
  "Warning: The `direction` prop on Drawer is deprecated and no longer required to achieve multi-directional dragging."
5263
5377
  );
5264
5378
  }
5265
- const [id] = (0, import_react31.useState)(generateId());
5379
+ const id = (0, import_react32.useId)();
5266
5380
  const { ref } = useDroppableSafe({
5267
5381
  id,
5268
5382
  type: "void",
5269
5383
  collisionPriority: 0
5270
5384
  // Never collide with this, but we use it so NestedDroppablePlugin respects the Drawer
5271
5385
  });
5272
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
5386
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
5273
5387
  "div",
5274
5388
  {
5275
5389
  className: getClassName18(),
@@ -5284,7 +5398,7 @@ Drawer.Item = DrawerItem;
5284
5398
 
5285
5399
  // components/Puck/index.tsx
5286
5400
  init_react_import();
5287
- var import_react47 = require("react");
5401
+ var import_react48 = require("react");
5288
5402
 
5289
5403
  // components/SidebarSection/index.tsx
5290
5404
  init_react_import();
@@ -5295,7 +5409,7 @@ var styles_module_default13 = { "SidebarSection": "_SidebarSection_125qe_1", "Si
5295
5409
 
5296
5410
  // lib/use-breadcrumbs.ts
5297
5411
  init_react_import();
5298
- var import_react32 = require("react");
5412
+ var import_react33 = require("react");
5299
5413
  var convertPathDataToBreadcrumbs = (selectedItem, pathData, data) => {
5300
5414
  const id = selectedItem ? selectedItem == null ? void 0 : selectedItem.props.id : "";
5301
5415
  const currentPathData = pathData && id && pathData[id] ? __spreadValues({}, pathData[id]) : { label: "Page", path: [] };
@@ -5345,8 +5459,8 @@ var useBreadcrumbs = (renderCount) => {
5345
5459
  state: { data },
5346
5460
  selectedItem
5347
5461
  } = useAppContext();
5348
- const dzContext = (0, import_react32.useContext)(dropZoneContext);
5349
- return (0, import_react32.useMemo)(() => {
5462
+ const dzContext = (0, import_react33.useContext)(dropZoneContext);
5463
+ return (0, import_react33.useMemo)(() => {
5350
5464
  const breadcrumbs = convertPathDataToBreadcrumbs(
5351
5465
  selectedItem,
5352
5466
  dzContext == null ? void 0 : dzContext.pathData,
@@ -5360,7 +5474,7 @@ var useBreadcrumbs = (renderCount) => {
5360
5474
  };
5361
5475
 
5362
5476
  // components/SidebarSection/index.tsx
5363
- var import_jsx_runtime24 = require("react/jsx-runtime");
5477
+ var import_jsx_runtime25 = require("react/jsx-runtime");
5364
5478
  var getClassName19 = get_class_name_factory_default("SidebarSection", styles_module_default13);
5365
5479
  var SidebarSection = ({
5366
5480
  children,
@@ -5373,15 +5487,15 @@ var SidebarSection = ({
5373
5487
  }) => {
5374
5488
  const { setUi } = useAppContext();
5375
5489
  const breadcrumbs = useBreadcrumbs(1);
5376
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
5490
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
5377
5491
  "div",
5378
5492
  {
5379
5493
  className: getClassName19({ noBorderTop, noPadding }),
5380
5494
  style: { background },
5381
5495
  children: [
5382
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName19("title"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: getClassName19("breadcrumbs"), children: [
5383
- showBreadcrumbs ? breadcrumbs.map((breadcrumb, i) => /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: getClassName19("breadcrumb"), children: [
5384
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
5496
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("title"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName19("breadcrumbs"), children: [
5497
+ showBreadcrumbs ? breadcrumbs.map((breadcrumb, i) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName19("breadcrumb"), children: [
5498
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
5385
5499
  "button",
5386
5500
  {
5387
5501
  type: "button",
@@ -5390,12 +5504,12 @@ var SidebarSection = ({
5390
5504
  children: breadcrumb.label
5391
5505
  }
5392
5506
  ),
5393
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(ChevronRight, { size: 16 })
5507
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChevronRight, { size: 16 })
5394
5508
  ] }, i)) : null,
5395
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName19("heading"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Heading, { rank: "2", size: "xs", children: title }) })
5509
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("heading"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Heading, { rank: "2", size: "xs", children: title }) })
5396
5510
  ] }) }),
5397
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName19("content"), children }),
5398
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName19("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Loader, { size: 32 }) })
5511
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("content"), children }),
5512
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Loader, { size: 32 }) })
5399
5513
  ]
5400
5514
  }
5401
5515
  );
@@ -5426,7 +5540,7 @@ init_react_import();
5426
5540
  var styles_module_default14 = { "MenuBar": "_MenuBar_8pf8c_1", "MenuBar--menuOpen": "_MenuBar--menuOpen_8pf8c_14", "MenuBar-inner": "_MenuBar-inner_8pf8c_29", "MenuBar-history": "_MenuBar-history_8pf8c_45" };
5427
5541
 
5428
5542
  // components/MenuBar/index.tsx
5429
- var import_jsx_runtime25 = require("react/jsx-runtime");
5543
+ var import_jsx_runtime26 = require("react/jsx-runtime");
5430
5544
  var getClassName20 = get_class_name_factory_default("MenuBar", styles_module_default14);
5431
5545
  function MenuBar({
5432
5546
  appState,
@@ -5440,7 +5554,7 @@ function MenuBar({
5440
5554
  history: { back, forward, historyStore }
5441
5555
  } = useAppContext();
5442
5556
  const { hasFuture = false, hasPast = false } = historyStore || {};
5443
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
5557
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5444
5558
  "div",
5445
5559
  {
5446
5560
  className: getClassName20({ menuOpen }),
@@ -5454,12 +5568,12 @@ function MenuBar({
5454
5568
  setMenuOpen(false);
5455
5569
  }
5456
5570
  },
5457
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName20("inner"), children: [
5458
- /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName20("history"), children: [
5459
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(IconButton, { title: "undo", disabled: !hasPast, onClick: back, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Undo2, { size: 21 }) }),
5460
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(IconButton, { title: "redo", disabled: !hasFuture, onClick: forward, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Redo2, { size: 21 }) })
5571
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName20("inner"), children: [
5572
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName20("history"), children: [
5573
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(IconButton, { title: "undo", disabled: !hasPast, onClick: back, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Undo2, { size: 21 }) }),
5574
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(IconButton, { title: "redo", disabled: !hasFuture, onClick: forward, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Redo2, { size: 21 }) })
5461
5575
  ] }),
5462
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_jsx_runtime25.Fragment, { children: renderHeaderActions && renderHeaderActions({
5576
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { children: renderHeaderActions && renderHeaderActions({
5463
5577
  state: appState,
5464
5578
  dispatch
5465
5579
  }) })
@@ -5480,15 +5594,15 @@ init_react_import();
5480
5594
  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" };
5481
5595
 
5482
5596
  // components/Puck/components/Fields/index.tsx
5483
- var import_react34 = require("react");
5597
+ var import_react35 = require("react");
5484
5598
 
5485
5599
  // lib/use-parent.ts
5486
5600
  init_react_import();
5487
- var import_react33 = require("react");
5601
+ var import_react34 = require("react");
5488
5602
  var useParent = (itemSelector) => {
5489
5603
  var _a;
5490
5604
  const { selectedItem, state } = useAppContext();
5491
- const { pathData } = (0, import_react33.useContext)(dropZoneContext) || {};
5605
+ const { pathData } = (0, import_react34.useContext)(dropZoneContext) || {};
5492
5606
  const item = itemSelector ? getItem(itemSelector, state.data) : selectedItem;
5493
5607
  const breadcrumbs = convertPathDataToBreadcrumbs(item, pathData, state.data);
5494
5608
  const lastItem = breadcrumbs[breadcrumbs.length - 1];
@@ -5497,7 +5611,7 @@ var useParent = (itemSelector) => {
5497
5611
  };
5498
5612
 
5499
5613
  // components/Puck/components/Fields/index.tsx
5500
- var import_jsx_runtime26 = require("react/jsx-runtime");
5614
+ var import_jsx_runtime27 = require("react/jsx-runtime");
5501
5615
  var getClassName21 = get_class_name_factory_default("PuckFields", styles_module_default16);
5502
5616
  var defaultPageFields = {
5503
5617
  title: { type: "text" }
@@ -5505,7 +5619,7 @@ var defaultPageFields = {
5505
5619
  var DefaultFields = ({
5506
5620
  children
5507
5621
  }) => {
5508
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { children });
5622
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_jsx_runtime27.Fragment, { children });
5509
5623
  };
5510
5624
  var useResolvedFields = () => {
5511
5625
  var _a, _b;
@@ -5514,20 +5628,20 @@ var useResolvedFields = () => {
5514
5628
  const { data } = state;
5515
5629
  const rootFields = ((_a = config.root) == null ? void 0 : _a.fields) || defaultPageFields;
5516
5630
  const componentConfig = selectedItem ? config.components[selectedItem.type] : null;
5517
- const defaultFields = (0, import_react34.useMemo)(
5631
+ const defaultFields = (0, import_react35.useMemo)(
5518
5632
  () => (selectedItem ? componentConfig == null ? void 0 : componentConfig.fields : rootFields) || {},
5519
5633
  [selectedItem, rootFields, componentConfig == null ? void 0 : componentConfig.fields]
5520
5634
  );
5521
5635
  const rootProps = data.root.props || data.root;
5522
- const [lastSelectedData, setLastSelectedData] = (0, import_react34.useState)({});
5523
- const [resolvedFields, setResolvedFields] = (0, import_react34.useState)(defaultFields);
5524
- const [fieldsLoading, setFieldsLoading] = (0, import_react34.useState)(false);
5636
+ const [lastSelectedData, setLastSelectedData] = (0, import_react35.useState)({});
5637
+ const [resolvedFields, setResolvedFields] = (0, import_react35.useState)(defaultFields);
5638
+ const [fieldsLoading, setFieldsLoading] = (0, import_react35.useState)(false);
5525
5639
  const defaultResolveFields = (_componentData, _params) => defaultFields;
5526
5640
  const componentData = selectedItem ? selectedItem : { props: rootProps, readOnly: data.root.readOnly };
5527
5641
  const hasComponentResolver = selectedItem && (componentConfig == null ? void 0 : componentConfig.resolveFields);
5528
5642
  const hasRootResolver = !selectedItem && ((_b = config.root) == null ? void 0 : _b.resolveFields);
5529
5643
  const hasResolver = hasComponentResolver || hasRootResolver;
5530
- const resolveFields = (0, import_react34.useCallback)(
5644
+ const resolveFields = (0, import_react35.useCallback)(
5531
5645
  (..._0) => __async(void 0, [..._0], function* (fields = {}) {
5532
5646
  var _a2;
5533
5647
  const lastData = ((_a2 = lastSelectedData.props) == null ? void 0 : _a2.id) === componentData.props.id ? lastSelectedData : null;
@@ -5563,19 +5677,33 @@ var useResolvedFields = () => {
5563
5677
  lastData
5564
5678
  });
5565
5679
  }),
5566
- [data, config, componentData, selectedItem, resolvedFields, state]
5680
+ [data, config, componentData, selectedItem, resolvedFields, state, parent]
5567
5681
  );
5568
- (0, import_react34.useEffect)(() => {
5569
- if (hasResolver) {
5570
- setFieldsLoading(true);
5571
- resolveFields(defaultFields).then((fields) => {
5572
- setResolvedFields(fields || {});
5573
- setFieldsLoading(false);
5574
- });
5575
- } else {
5576
- setResolvedFields(defaultFields);
5682
+ const [hasParent, setHasParent] = (0, import_react35.useState)(false);
5683
+ (0, import_react35.useEffect)(() => {
5684
+ setHasParent(!!parent);
5685
+ }, [parent]);
5686
+ (0, import_react35.useEffect)(() => {
5687
+ var _a2;
5688
+ if (!((_a2 = state.ui.itemSelector) == null ? void 0 : _a2.zone) || hasParent) {
5689
+ if (hasResolver) {
5690
+ setFieldsLoading(true);
5691
+ resolveFields(defaultFields).then((fields) => {
5692
+ setResolvedFields(fields || {});
5693
+ setFieldsLoading(false);
5694
+ });
5695
+ } else {
5696
+ setResolvedFields(defaultFields);
5697
+ }
5577
5698
  }
5578
- }, [data, defaultFields, selectedItem, hasResolver]);
5699
+ }, [
5700
+ data,
5701
+ defaultFields,
5702
+ state.ui.itemSelector,
5703
+ selectedItem,
5704
+ hasResolver,
5705
+ hasParent
5706
+ ]);
5579
5707
  return [resolvedFields, fieldsLoading];
5580
5708
  };
5581
5709
  var Fields = () => {
@@ -5596,8 +5724,8 @@ var Fields = () => {
5596
5724
  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;
5597
5725
  const isLoading = fieldsResolving || componentResolving;
5598
5726
  const rootProps = data.root.props || data.root;
5599
- const Wrapper = (0, import_react34.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
5600
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
5727
+ const Wrapper = (0, import_react35.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
5728
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
5601
5729
  "form",
5602
5730
  {
5603
5731
  className: getClassName21(),
@@ -5605,7 +5733,7 @@ var Fields = () => {
5605
5733
  e.preventDefault();
5606
5734
  },
5607
5735
  children: [
5608
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
5736
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
5609
5737
  const field = fields[fieldName];
5610
5738
  if (!(field == null ? void 0 : field.type)) return null;
5611
5739
  const onChange = (value, updatedUi) => {
@@ -5676,7 +5804,7 @@ var Fields = () => {
5676
5804
  item: selectedItem
5677
5805
  });
5678
5806
  const id = `${selectedItem.props.id}_${field.type}_${fieldName}`;
5679
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5807
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5680
5808
  AutoFieldPrivate,
5681
5809
  {
5682
5810
  field,
@@ -5694,7 +5822,7 @@ var Fields = () => {
5694
5822
  root: true
5695
5823
  });
5696
5824
  const id = `root_${field.type}_${fieldName}`;
5697
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5825
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5698
5826
  AutoFieldPrivate,
5699
5827
  {
5700
5828
  field,
@@ -5708,7 +5836,7 @@ var Fields = () => {
5708
5836
  );
5709
5837
  }
5710
5838
  }) }),
5711
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName21("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName21("loadingOverlayInner"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Loader, { size: 16 }) }) })
5839
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: getClassName21("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: getClassName21("loadingOverlayInner"), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Loader, { size: 16 }) }) })
5712
5840
  ]
5713
5841
  }
5714
5842
  );
@@ -5719,7 +5847,7 @@ init_react_import();
5719
5847
 
5720
5848
  // lib/use-component-list.tsx
5721
5849
  init_react_import();
5722
- var import_react35 = require("react");
5850
+ var import_react36 = require("react");
5723
5851
 
5724
5852
  // components/ComponentList/index.tsx
5725
5853
  init_react_import();
@@ -5729,7 +5857,7 @@ init_react_import();
5729
5857
  var styles_module_default17 = { "ComponentList": "_ComponentList_odh9d_1", "ComponentList--isExpanded": "_ComponentList--isExpanded_odh9d_5", "ComponentList-content": "_ComponentList-content_odh9d_9", "ComponentList-title": "_ComponentList-title_odh9d_17", "ComponentList-titleIcon": "_ComponentList-titleIcon_odh9d_53" };
5730
5858
 
5731
5859
  // components/ComponentList/index.tsx
5732
- var import_jsx_runtime27 = require("react/jsx-runtime");
5860
+ var import_jsx_runtime28 = require("react/jsx-runtime");
5733
5861
  var getClassName22 = get_class_name_factory_default("ComponentList", styles_module_default17);
5734
5862
  var ComponentListItem = ({
5735
5863
  name,
@@ -5739,7 +5867,7 @@ var ComponentListItem = ({
5739
5867
  const canInsert = getPermissions({
5740
5868
  type: name
5741
5869
  }).insert;
5742
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Drawer.Item, { label, name, isDragDisabled: !canInsert, children: overrides.componentItem });
5870
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Drawer.Item, { label, name, isDragDisabled: !canInsert, children: overrides.componentItem });
5743
5871
  };
5744
5872
  var ComponentList = ({
5745
5873
  children,
@@ -5748,8 +5876,8 @@ var ComponentList = ({
5748
5876
  }) => {
5749
5877
  const { config, state, setUi } = useAppContext();
5750
5878
  const { expanded = true } = state.ui.componentList[id] || {};
5751
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: getClassName22({ isExpanded: expanded }), children: [
5752
- title && /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
5879
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: getClassName22({ isExpanded: expanded }), children: [
5880
+ title && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5753
5881
  "button",
5754
5882
  {
5755
5883
  type: "button",
@@ -5763,14 +5891,14 @@ var ComponentList = ({
5763
5891
  }),
5764
5892
  title: expanded ? `Collapse${title ? ` ${title}` : ""}` : `Expand${title ? ` ${title}` : ""}`,
5765
5893
  children: [
5766
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { children: title }),
5767
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: getClassName22("titleIcon"), children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChevronUp, { size: 12 }) : /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChevronDown, { size: 12 }) })
5894
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { children: title }),
5895
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName22("titleIcon"), children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ChevronUp, { size: 12 }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ChevronDown, { size: 12 }) })
5768
5896
  ]
5769
5897
  }
5770
5898
  ),
5771
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: getClassName22("content"), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Drawer, { children: children || Object.keys(config.components).map((componentKey) => {
5899
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName22("content"), children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Drawer, { children: children || Object.keys(config.components).map((componentKey) => {
5772
5900
  var _a;
5773
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5901
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5774
5902
  ComponentListItem,
5775
5903
  {
5776
5904
  label: (_a = config.components[componentKey]["label"]) != null ? _a : componentKey,
@@ -5784,10 +5912,10 @@ var ComponentList = ({
5784
5912
  ComponentList.Item = ComponentListItem;
5785
5913
 
5786
5914
  // lib/use-component-list.tsx
5787
- var import_jsx_runtime28 = require("react/jsx-runtime");
5915
+ var import_jsx_runtime29 = require("react/jsx-runtime");
5788
5916
  var useComponentList = (config, ui) => {
5789
- const [componentList, setComponentList] = (0, import_react35.useState)();
5790
- (0, import_react35.useEffect)(() => {
5917
+ const [componentList, setComponentList] = (0, import_react36.useState)();
5918
+ (0, import_react36.useEffect)(() => {
5791
5919
  var _a, _b, _c;
5792
5920
  if (Object.keys(ui.componentList).length > 0) {
5793
5921
  const matchedComponents = [];
@@ -5797,7 +5925,7 @@ var useComponentList = (config, ui) => {
5797
5925
  if (category.visible === false || !category.components) {
5798
5926
  return null;
5799
5927
  }
5800
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5928
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5801
5929
  ComponentList,
5802
5930
  {
5803
5931
  id: categoryKey,
@@ -5806,7 +5934,7 @@ var useComponentList = (config, ui) => {
5806
5934
  var _a2;
5807
5935
  matchedComponents.push(componentName);
5808
5936
  const componentConf = config.components[componentName] || {};
5809
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5937
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5810
5938
  ComponentList.Item,
5811
5939
  {
5812
5940
  label: (_a2 = componentConf["label"]) != null ? _a2 : componentName,
@@ -5826,7 +5954,7 @@ var useComponentList = (config, ui) => {
5826
5954
  );
5827
5955
  if (remainingComponents.length > 0 && !((_a = ui.componentList.other) == null ? void 0 : _a.components) && ((_b = ui.componentList.other) == null ? void 0 : _b.visible) !== false) {
5828
5956
  _componentList.push(
5829
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5957
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5830
5958
  ComponentList,
5831
5959
  {
5832
5960
  id: "other",
@@ -5834,7 +5962,7 @@ var useComponentList = (config, ui) => {
5834
5962
  children: remainingComponents.map((componentName, i) => {
5835
5963
  var _a2;
5836
5964
  const componentConf = config.components[componentName] || {};
5837
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5965
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5838
5966
  ComponentList.Item,
5839
5967
  {
5840
5968
  name: componentName,
@@ -5856,25 +5984,25 @@ var useComponentList = (config, ui) => {
5856
5984
  };
5857
5985
 
5858
5986
  // components/Puck/components/Components/index.tsx
5859
- var import_react36 = require("react");
5860
- var import_jsx_runtime29 = require("react/jsx-runtime");
5987
+ var import_react37 = require("react");
5988
+ var import_jsx_runtime30 = require("react/jsx-runtime");
5861
5989
  var Components = () => {
5862
5990
  const { config, state, overrides } = useAppContext();
5863
5991
  const componentList = useComponentList(config, state.ui);
5864
- const Wrapper = (0, import_react36.useMemo)(() => overrides.components || "div", [overrides]);
5865
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ComponentList, { id: "all" }) });
5992
+ const Wrapper = (0, import_react37.useMemo)(() => overrides.components || "div", [overrides]);
5993
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ComponentList, { id: "all" }) });
5866
5994
  };
5867
5995
 
5868
5996
  // components/Puck/components/Preview/index.tsx
5869
5997
  init_react_import();
5870
- var import_react38 = require("react");
5998
+ var import_react39 = require("react");
5871
5999
 
5872
6000
  // components/AutoFrame/index.tsx
5873
6001
  init_react_import();
5874
- var import_react37 = require("react");
6002
+ var import_react38 = require("react");
5875
6003
  var import_object_hash = __toESM(require("object-hash"));
5876
6004
  var import_react_dom3 = require("react-dom");
5877
- var import_jsx_runtime30 = require("react/jsx-runtime");
6005
+ var import_jsx_runtime31 = require("react/jsx-runtime");
5878
6006
  var styleSelector = 'style, link[rel="stylesheet"]';
5879
6007
  var collectStyles = (doc) => {
5880
6008
  const collected = [];
@@ -5917,7 +6045,7 @@ var CopyHostStyles = ({
5917
6045
  onStylesLoaded = () => null
5918
6046
  }) => {
5919
6047
  const { document: doc, window: win } = useFrame();
5920
- (0, import_react37.useEffect)(() => {
6048
+ (0, import_react38.useEffect)(() => {
5921
6049
  if (!win || !doc) {
5922
6050
  return () => {
5923
6051
  };
@@ -6074,10 +6202,10 @@ var CopyHostStyles = ({
6074
6202
  observer.disconnect();
6075
6203
  };
6076
6204
  }, []);
6077
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_jsx_runtime30.Fragment, { children });
6205
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_jsx_runtime31.Fragment, { children });
6078
6206
  };
6079
- var autoFrameContext = (0, import_react37.createContext)({});
6080
- var useFrame = () => (0, import_react37.useContext)(autoFrameContext);
6207
+ var autoFrameContext = (0, import_react38.createContext)({});
6208
+ var useFrame = () => (0, import_react38.useContext)(autoFrameContext);
6081
6209
  function AutoFrame(_a) {
6082
6210
  var _b = _a, {
6083
6211
  children,
@@ -6094,10 +6222,10 @@ function AutoFrame(_a) {
6094
6222
  "onStylesLoaded",
6095
6223
  "frameRef"
6096
6224
  ]);
6097
- const [loaded, setLoaded] = (0, import_react37.useState)(false);
6098
- const [ctx, setCtx] = (0, import_react37.useState)({});
6099
- const [mountTarget, setMountTarget] = (0, import_react37.useState)();
6100
- (0, import_react37.useEffect)(() => {
6225
+ const [loaded, setLoaded] = (0, import_react38.useState)(false);
6226
+ const [ctx, setCtx] = (0, import_react38.useState)({});
6227
+ const [mountTarget, setMountTarget] = (0, import_react38.useState)();
6228
+ (0, import_react38.useEffect)(() => {
6101
6229
  var _a2;
6102
6230
  if (frameRef.current) {
6103
6231
  setCtx({
@@ -6109,7 +6237,7 @@ function AutoFrame(_a) {
6109
6237
  );
6110
6238
  }
6111
6239
  }, [frameRef, loaded]);
6112
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6240
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6113
6241
  "iframe",
6114
6242
  __spreadProps(__spreadValues({}, props), {
6115
6243
  className,
@@ -6119,7 +6247,7 @@ function AutoFrame(_a) {
6119
6247
  onLoad: () => {
6120
6248
  setLoaded(true);
6121
6249
  },
6122
- children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(autoFrameContext.Provider, { value: ctx, children: loaded && mountTarget && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(CopyHostStyles, { debug, onStylesLoaded, children: (0, import_react_dom3.createPortal)(children, mountTarget) }) })
6250
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(autoFrameContext.Provider, { value: ctx, children: loaded && mountTarget && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(CopyHostStyles, { debug, onStylesLoaded, children: (0, import_react_dom3.createPortal)(children, mountTarget) }) })
6123
6251
  })
6124
6252
  );
6125
6253
  }
@@ -6132,7 +6260,7 @@ var styles_module_default18 = { "PuckPreview": "_PuckPreview_z2rgu_1", "PuckPrev
6132
6260
 
6133
6261
  // components/Render/index.tsx
6134
6262
  init_react_import();
6135
- var import_jsx_runtime31 = require("react/jsx-runtime");
6263
+ var import_jsx_runtime32 = require("react/jsx-runtime");
6136
6264
  function Render({
6137
6265
  config,
6138
6266
  data
@@ -6145,7 +6273,7 @@ function Render({
6145
6273
  const rootProps = defaultedData.root.props || defaultedData.root;
6146
6274
  const title = (rootProps == null ? void 0 : rootProps.title) || "";
6147
6275
  if ((_a = config.root) == null ? void 0 : _a.render) {
6148
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6276
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6149
6277
  DropZoneProvider,
6150
6278
  {
6151
6279
  value: {
@@ -6155,7 +6283,7 @@ function Render({
6155
6283
  depth: 0,
6156
6284
  path: []
6157
6285
  },
6158
- children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6286
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6159
6287
  config.root.render,
6160
6288
  __spreadProps(__spreadValues({}, rootProps), {
6161
6289
  puck: {
@@ -6165,13 +6293,13 @@ function Render({
6165
6293
  title,
6166
6294
  editMode: false,
6167
6295
  id: "puck-root",
6168
- children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(DropZone, { zone: rootDroppableId })
6296
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DropZone, { zone: rootDroppableId })
6169
6297
  })
6170
6298
  )
6171
6299
  }
6172
6300
  );
6173
6301
  }
6174
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6302
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6175
6303
  DropZoneProvider,
6176
6304
  {
6177
6305
  value: {
@@ -6181,17 +6309,17 @@ function Render({
6181
6309
  depth: 0,
6182
6310
  path: []
6183
6311
  },
6184
- children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(DropZone, { zone: rootDroppableId })
6312
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DropZone, { zone: rootDroppableId })
6185
6313
  }
6186
6314
  );
6187
6315
  }
6188
6316
 
6189
6317
  // components/Puck/components/Preview/index.tsx
6190
- var import_jsx_runtime32 = require("react/jsx-runtime");
6318
+ var import_jsx_runtime33 = require("react/jsx-runtime");
6191
6319
  var getClassName23 = get_class_name_factory_default("PuckPreview", styles_module_default18);
6192
6320
  var useBubbleIframeEvents = (ref) => {
6193
6321
  const { status } = useAppContext();
6194
- (0, import_react38.useEffect)(() => {
6322
+ (0, import_react39.useEffect)(() => {
6195
6323
  var _a;
6196
6324
  if (ref.current && status === "READY") {
6197
6325
  const iframe = ref.current;
@@ -6230,20 +6358,20 @@ var useBubbleIframeEvents = (ref) => {
6230
6358
  };
6231
6359
  var Preview2 = ({ id = "puck-preview" }) => {
6232
6360
  const { config, dispatch, state, setStatus, iframe, overrides } = useAppContext();
6233
- const Page = (0, import_react38.useCallback)(
6361
+ const Page = (0, import_react39.useCallback)(
6234
6362
  (pageProps) => {
6235
6363
  var _a, _b;
6236
6364
  return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadValues({
6237
6365
  id: "puck-root"
6238
- }, pageProps)) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_jsx_runtime32.Fragment, { children: pageProps.children });
6366
+ }, pageProps)) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children: pageProps.children });
6239
6367
  },
6240
6368
  [config.root]
6241
6369
  );
6242
- const Frame = (0, import_react38.useMemo)(() => overrides.iframe, [overrides]);
6370
+ const Frame = (0, import_react39.useMemo)(() => overrides.iframe, [overrides]);
6243
6371
  const rootProps = state.data.root.props || state.data.root;
6244
- const ref = (0, import_react38.useRef)(null);
6372
+ const ref = (0, import_react39.useRef)(null);
6245
6373
  useBubbleIframeEvents(ref);
6246
- const inner = state.ui.previewMode === "edit" ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6374
+ const inner = state.ui.previewMode === "edit" ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6247
6375
  Page,
6248
6376
  __spreadProps(__spreadValues({}, rootProps), {
6249
6377
  puck: {
@@ -6252,10 +6380,10 @@ var Preview2 = ({ id = "puck-preview" }) => {
6252
6380
  dragRef: null
6253
6381
  },
6254
6382
  editMode: true,
6255
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DropZone, { zone: rootDroppableId })
6383
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DropZone, { zone: rootDroppableId })
6256
6384
  })
6257
- ) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Render, { data: state.data, config });
6258
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6385
+ ) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Render, { data: state.data, config });
6386
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6259
6387
  "div",
6260
6388
  {
6261
6389
  className: getClassName23(),
@@ -6264,7 +6392,7 @@ var Preview2 = ({ id = "puck-preview" }) => {
6264
6392
  onClick: () => {
6265
6393
  dispatch({ type: "setUi", ui: __spreadProps(__spreadValues({}, state.ui), { itemSelector: null }) });
6266
6394
  },
6267
- children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6395
+ children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6268
6396
  AutoFrame_default,
6269
6397
  {
6270
6398
  id: "preview-frame",
@@ -6274,14 +6402,14 @@ var Preview2 = ({ id = "puck-preview" }) => {
6274
6402
  setStatus("READY");
6275
6403
  },
6276
6404
  frameRef: ref,
6277
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(autoFrameContext.Consumer, { children: ({ document: document2 }) => {
6405
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(autoFrameContext.Consumer, { children: ({ document: document2 }) => {
6278
6406
  if (Frame) {
6279
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Frame, { document: document2, children: inner });
6407
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Frame, { document: document2, children: inner });
6280
6408
  }
6281
6409
  return inner;
6282
6410
  } })
6283
6411
  }
6284
- ) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6412
+ ) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6285
6413
  "div",
6286
6414
  {
6287
6415
  id: "preview-frame",
@@ -6338,7 +6466,7 @@ var scrollIntoView = (el) => {
6338
6466
  };
6339
6467
 
6340
6468
  // components/LayerTree/index.tsx
6341
- var import_react39 = require("react");
6469
+ var import_react40 = require("react");
6342
6470
 
6343
6471
  // lib/is-child-of-zone.ts
6344
6472
  init_react_import();
@@ -6371,7 +6499,7 @@ var onScrollEnd = (frame, cb) => {
6371
6499
  };
6372
6500
 
6373
6501
  // components/LayerTree/index.tsx
6374
- var import_jsx_runtime33 = require("react/jsx-runtime");
6502
+ var import_jsx_runtime34 = require("react/jsx-runtime");
6375
6503
  var getClassName24 = get_class_name_factory_default("LayerTree", styles_module_default19);
6376
6504
  var getClassNameLayer = get_class_name_factory_default("Layer", styles_module_default19);
6377
6505
  var LayerTree = ({
@@ -6384,15 +6512,15 @@ var LayerTree = ({
6384
6512
  label
6385
6513
  }) => {
6386
6514
  const zones = data.zones || {};
6387
- const ctx = (0, import_react39.useContext)(dropZoneContext);
6388
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_jsx_runtime33.Fragment, { children: [
6389
- label && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassName24("zoneTitle"), children: [
6390
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Layers, { size: "16" }) }),
6515
+ const ctx = (0, import_react40.useContext)(dropZoneContext);
6516
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
6517
+ label && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName24("zoneTitle"), children: [
6518
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Layers, { size: "16" }) }),
6391
6519
  " ",
6392
6520
  label
6393
6521
  ] }),
6394
- /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("ul", { className: getClassName24(), children: [
6395
- zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("helper"), children: "No items" }),
6522
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("ul", { className: getClassName24(), children: [
6523
+ zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("helper"), children: "No items" }),
6396
6524
  zoneContent.map((item, i) => {
6397
6525
  var _a;
6398
6526
  const isSelected = (itemSelector == null ? void 0 : itemSelector.index) === i && (itemSelector.zone === zone || itemSelector.zone === rootDroppableId && !zone);
@@ -6405,7 +6533,7 @@ var LayerTree = ({
6405
6533
  const childIsSelected = isChildOfZone(item, selectedItem, ctx);
6406
6534
  const componentConfig = config.components[item.type];
6407
6535
  const label2 = (_a = componentConfig == null ? void 0 : componentConfig["label"]) != null ? _a : item.type.toString();
6408
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
6536
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
6409
6537
  "li",
6410
6538
  {
6411
6539
  className: getClassNameLayer({
@@ -6415,7 +6543,7 @@ var LayerTree = ({
6415
6543
  childIsSelected
6416
6544
  }),
6417
6545
  children: [
6418
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
6546
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
6419
6547
  "button",
6420
6548
  {
6421
6549
  type: "button",
@@ -6454,22 +6582,22 @@ var LayerTree = ({
6454
6582
  setHoveringComponent(null);
6455
6583
  },
6456
6584
  children: [
6457
- containsZone && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6585
+ containsZone && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6458
6586
  "div",
6459
6587
  {
6460
6588
  className: getClassNameLayer("chevron"),
6461
6589
  title: isSelected ? "Collapse" : "Expand",
6462
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ChevronDown, { size: "12" })
6590
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronDown, { size: "12" })
6463
6591
  }
6464
6592
  ),
6465
- /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassNameLayer("title"), children: [
6466
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(LayoutGrid, { size: "16" }) }),
6467
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("name"), children: label2 })
6593
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassNameLayer("title"), children: [
6594
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(LayoutGrid, { size: "16" }) }),
6595
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("name"), children: label2 })
6468
6596
  ] })
6469
6597
  ]
6470
6598
  }
6471
6599
  ) }),
6472
- containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6600
+ containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6473
6601
  LayerTree,
6474
6602
  {
6475
6603
  config,
@@ -6491,13 +6619,13 @@ var LayerTree = ({
6491
6619
  };
6492
6620
 
6493
6621
  // components/Puck/components/Outline/index.tsx
6494
- var import_react40 = require("react");
6495
- var import_jsx_runtime34 = require("react/jsx-runtime");
6622
+ var import_react41 = require("react");
6623
+ var import_jsx_runtime35 = require("react/jsx-runtime");
6496
6624
  var Outline = () => {
6497
6625
  const { dispatch, state, overrides, config } = useAppContext();
6498
6626
  const { data, ui } = state;
6499
6627
  const { itemSelector } = ui;
6500
- const setItemSelector = (0, import_react40.useCallback)(
6628
+ const setItemSelector = (0, import_react41.useCallback)(
6501
6629
  (newItemSelector) => {
6502
6630
  dispatch({
6503
6631
  type: "setUi",
@@ -6506,9 +6634,9 @@ var Outline = () => {
6506
6634
  },
6507
6635
  []
6508
6636
  );
6509
- const Wrapper = (0, import_react40.useMemo)(() => overrides.outline || "div", [overrides]);
6510
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
6511
- (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6637
+ const Wrapper = (0, import_react41.useMemo)(() => overrides.outline || "div", [overrides]);
6638
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [
6639
+ (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6512
6640
  LayerTree,
6513
6641
  {
6514
6642
  config,
@@ -6521,7 +6649,7 @@ var Outline = () => {
6521
6649
  ),
6522
6650
  Object.entries(findZonesForArea(data, "root")).map(
6523
6651
  ([zoneKey, zone]) => {
6524
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6652
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6525
6653
  LayerTree,
6526
6654
  {
6527
6655
  config,
@@ -6620,19 +6748,19 @@ function usePuckHistory({
6620
6748
 
6621
6749
  // lib/use-history-store.ts
6622
6750
  init_react_import();
6623
- var import_react41 = require("react");
6751
+ var import_react42 = require("react");
6624
6752
  var import_use_debounce3 = require("use-debounce");
6625
6753
  var EMPTY_HISTORY_INDEX = 0;
6626
6754
  function useHistoryStore(initialHistory) {
6627
6755
  var _a, _b;
6628
- const [histories, setHistories] = (0, import_react41.useState)(
6756
+ const [histories, setHistories] = (0, import_react42.useState)(
6629
6757
  (_a = initialHistory == null ? void 0 : initialHistory.histories) != null ? _a : []
6630
6758
  );
6631
6759
  const updateHistories = (histories2) => {
6632
6760
  setHistories(histories2);
6633
6761
  setIndex(histories2.length - 1);
6634
6762
  };
6635
- const [index, setIndex] = (0, import_react41.useState)(
6763
+ const [index, setIndex] = (0, import_react42.useState)(
6636
6764
  (_b = initialHistory == null ? void 0 : initialHistory.index) != null ? _b : EMPTY_HISTORY_INDEX
6637
6765
  );
6638
6766
  const hasPast = index > EMPTY_HISTORY_INDEX;
@@ -6792,22 +6920,22 @@ var getBox = function getBox2(el) {
6792
6920
  };
6793
6921
 
6794
6922
  // components/Puck/components/Canvas/index.tsx
6795
- var import_react43 = require("react");
6923
+ var import_react44 = require("react");
6796
6924
 
6797
6925
  // components/ViewportControls/index.tsx
6798
6926
  init_react_import();
6799
- var import_react42 = require("react");
6927
+ var import_react43 = require("react");
6800
6928
 
6801
6929
  // css-module:/home/runner/work/puck/puck/packages/core/components/ViewportControls/styles.module.css#css-module
6802
6930
  init_react_import();
6803
6931
  var styles_module_default20 = { "ViewportControls": "_ViewportControls_g1wgg_1", "ViewportControls-divider": "_ViewportControls-divider_g1wgg_15", "ViewportControls-zoomSelect": "_ViewportControls-zoomSelect_g1wgg_21", "ViewportButton--isActive": "_ViewportButton--isActive_g1wgg_34", "ViewportButton-inner": "_ViewportButton-inner_g1wgg_34" };
6804
6932
 
6805
6933
  // components/ViewportControls/index.tsx
6806
- var import_jsx_runtime35 = require("react/jsx-runtime");
6934
+ var import_jsx_runtime36 = require("react/jsx-runtime");
6807
6935
  var icons = {
6808
- Smartphone: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Smartphone, { size: 16 }),
6809
- Tablet: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Tablet, { size: 16 }),
6810
- Monitor: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Monitor, { size: 16 })
6936
+ Smartphone: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Smartphone, { size: 16 }),
6937
+ Tablet: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Tablet, { size: 16 }),
6938
+ Monitor: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Monitor, { size: 16 })
6811
6939
  };
6812
6940
  var getClassName25 = get_class_name_factory_default("ViewportControls", styles_module_default20);
6813
6941
  var getClassNameButton = get_class_name_factory_default("ViewportButton", styles_module_default20);
@@ -6819,11 +6947,11 @@ var ViewportButton = ({
6819
6947
  onClick
6820
6948
  }) => {
6821
6949
  const { state } = useAppContext();
6822
- const [isActive, setIsActive] = (0, import_react42.useState)(false);
6823
- (0, import_react42.useEffect)(() => {
6950
+ const [isActive, setIsActive] = (0, import_react43.useState)(false);
6951
+ (0, import_react43.useEffect)(() => {
6824
6952
  setIsActive(width === state.ui.viewports.current.width);
6825
6953
  }, [width, state.ui.viewports.current.width]);
6826
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6954
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6827
6955
  IconButton,
6828
6956
  {
6829
6957
  title,
@@ -6832,7 +6960,7 @@ var ViewportButton = ({
6832
6960
  e.stopPropagation();
6833
6961
  onClick({ width, height });
6834
6962
  },
6835
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: getClassNameButton("inner"), children })
6963
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: getClassNameButton("inner"), children })
6836
6964
  }
6837
6965
  ) });
6838
6966
  };
@@ -6856,7 +6984,7 @@ var ViewportControls = ({
6856
6984
  const defaultsContainAutoZoom = defaultZoomOptions.find(
6857
6985
  (option) => option.value === autoZoom
6858
6986
  );
6859
- const zoomOptions = (0, import_react42.useMemo)(
6987
+ const zoomOptions = (0, import_react43.useMemo)(
6860
6988
  () => [
6861
6989
  ...defaultZoomOptions,
6862
6990
  ...defaultsContainAutoZoom ? [] : [
@@ -6868,8 +6996,8 @@ var ViewportControls = ({
6868
6996
  ].filter((a) => a.value <= autoZoom).sort((a, b) => a.value > b.value ? 1 : -1),
6869
6997
  [autoZoom]
6870
6998
  );
6871
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25(), children: [
6872
- viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6999
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: getClassName25(), children: [
7000
+ viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6873
7001
  ViewportButton,
6874
7002
  {
6875
7003
  height: viewport.height,
@@ -6880,8 +7008,8 @@ var ViewportControls = ({
6880
7008
  },
6881
7009
  i
6882
7010
  )),
6883
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("divider") }),
6884
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
7011
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName25("divider") }),
7012
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6885
7013
  IconButton,
6886
7014
  {
6887
7015
  title: "Zoom viewport out",
@@ -6895,10 +7023,10 @@ var ViewportControls = ({
6895
7023
  )].value
6896
7024
  );
6897
7025
  },
6898
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ZoomOut, { size: 16 })
7026
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ZoomOut, { size: 16 })
6899
7027
  }
6900
7028
  ),
6901
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
7029
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6902
7030
  IconButton,
6903
7031
  {
6904
7032
  title: "Zoom viewport in",
@@ -6912,11 +7040,11 @@ var ViewportControls = ({
6912
7040
  )].value
6913
7041
  );
6914
7042
  },
6915
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ZoomIn, { size: 16 })
7043
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ZoomIn, { size: 16 })
6916
7044
  }
6917
7045
  ),
6918
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("divider") }),
6919
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
7046
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName25("divider") }),
7047
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6920
7048
  "select",
6921
7049
  {
6922
7050
  className: getClassName25("zoomSelect"),
@@ -6924,7 +7052,7 @@ var ViewportControls = ({
6924
7052
  onChange: (e) => {
6925
7053
  onZoom(parseFloat(e.currentTarget.value));
6926
7054
  },
6927
- children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
7055
+ children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6928
7056
  "option",
6929
7057
  {
6930
7058
  value: option.value,
@@ -6972,24 +7100,24 @@ var getZoomConfig = (uiViewport, frame, zoom) => {
6972
7100
  };
6973
7101
 
6974
7102
  // components/Puck/components/Canvas/index.tsx
6975
- var import_jsx_runtime36 = require("react/jsx-runtime");
7103
+ var import_jsx_runtime37 = require("react/jsx-runtime");
6976
7104
  var getClassName26 = get_class_name_factory_default("PuckCanvas", styles_module_default21);
6977
7105
  var ZOOM_ON_CHANGE = true;
6978
7106
  var Canvas = () => {
6979
7107
  const { status, iframe } = useAppContext();
6980
7108
  const { dispatch, state, overrides, setUi, zoomConfig, setZoomConfig } = useAppContext();
6981
7109
  const { ui } = state;
6982
- const frameRef = (0, import_react43.useRef)(null);
6983
- const [showTransition, setShowTransition] = (0, import_react43.useState)(false);
6984
- const defaultRender = (0, import_react43.useMemo)(() => {
6985
- const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_jsx_runtime36.Fragment, { children });
7110
+ const frameRef = (0, import_react44.useRef)(null);
7111
+ const [showTransition, setShowTransition] = (0, import_react44.useState)(false);
7112
+ const defaultRender = (0, import_react44.useMemo)(() => {
7113
+ const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children });
6986
7114
  return PuckDefault;
6987
7115
  }, []);
6988
- const CustomPreview = (0, import_react43.useMemo)(
7116
+ const CustomPreview = (0, import_react44.useMemo)(
6989
7117
  () => overrides.preview || defaultRender,
6990
7118
  [overrides]
6991
7119
  );
6992
- const getFrameDimensions = (0, import_react43.useCallback)(() => {
7120
+ const getFrameDimensions = (0, import_react44.useCallback)(() => {
6993
7121
  if (frameRef.current) {
6994
7122
  const frame = frameRef.current;
6995
7123
  const box = getBox(frame);
@@ -6997,7 +7125,7 @@ var Canvas = () => {
6997
7125
  }
6998
7126
  return { width: 0, height: 0 };
6999
7127
  }, [frameRef]);
7000
- const resetAutoZoom = (0, import_react43.useCallback)(
7128
+ const resetAutoZoom = (0, import_react44.useCallback)(
7001
7129
  (ui2 = state.ui) => {
7002
7130
  if (frameRef.current) {
7003
7131
  setZoomConfig(
@@ -7007,11 +7135,11 @@ var Canvas = () => {
7007
7135
  },
7008
7136
  [frameRef, zoomConfig, state.ui]
7009
7137
  );
7010
- (0, import_react43.useEffect)(() => {
7138
+ (0, import_react44.useEffect)(() => {
7011
7139
  setShowTransition(false);
7012
7140
  resetAutoZoom();
7013
7141
  }, [frameRef, ui.leftSideBarVisible, ui.rightSideBarVisible]);
7014
- (0, import_react43.useEffect)(() => {
7142
+ (0, import_react44.useEffect)(() => {
7015
7143
  const { height: frameHeight } = getFrameDimensions();
7016
7144
  if (ui.viewports.current.height === "auto") {
7017
7145
  setZoomConfig(__spreadProps(__spreadValues({}, zoomConfig), {
@@ -7019,13 +7147,13 @@ var Canvas = () => {
7019
7147
  }));
7020
7148
  }
7021
7149
  }, [zoomConfig.zoom]);
7022
- (0, import_react43.useEffect)(() => {
7150
+ (0, import_react44.useEffect)(() => {
7023
7151
  if (ZOOM_ON_CHANGE) {
7024
7152
  setShowTransition(true);
7025
7153
  resetAutoZoom(ui);
7026
7154
  }
7027
7155
  }, [ui.viewports.current.width]);
7028
- (0, import_react43.useEffect)(() => {
7156
+ (0, import_react44.useEffect)(() => {
7029
7157
  const cb = () => {
7030
7158
  setShowTransition(false);
7031
7159
  resetAutoZoom();
@@ -7035,13 +7163,13 @@ var Canvas = () => {
7035
7163
  window.removeEventListener("resize", cb);
7036
7164
  };
7037
7165
  }, []);
7038
- const [showLoader, setShowLoader] = (0, import_react43.useState)(false);
7039
- (0, import_react43.useEffect)(() => {
7166
+ const [showLoader, setShowLoader] = (0, import_react44.useState)(false);
7167
+ (0, import_react44.useEffect)(() => {
7040
7168
  setTimeout(() => {
7041
7169
  setShowLoader(true);
7042
7170
  }, 500);
7043
7171
  }, []);
7044
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
7172
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
7045
7173
  "div",
7046
7174
  {
7047
7175
  className: getClassName26({
@@ -7054,7 +7182,7 @@ var Canvas = () => {
7054
7182
  recordHistory: true
7055
7183
  }),
7056
7184
  children: [
7057
- ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName26("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
7185
+ ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: getClassName26("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
7058
7186
  ViewportControls,
7059
7187
  {
7060
7188
  autoZoom: zoomConfig.autoZoom,
@@ -7080,8 +7208,8 @@ var Canvas = () => {
7080
7208
  }
7081
7209
  }
7082
7210
  ) }),
7083
- /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: getClassName26("inner"), ref: frameRef, children: [
7084
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
7211
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: getClassName26("inner"), ref: frameRef, children: [
7212
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
7085
7213
  "div",
7086
7214
  {
7087
7215
  className: getClassName26("root"),
@@ -7102,10 +7230,10 @@ var Canvas = () => {
7102
7230
  })
7103
7231
  );
7104
7232
  },
7105
- children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Preview2, {}) })
7233
+ children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Preview2, {}) })
7106
7234
  }
7107
7235
  ),
7108
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName26("loader"), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Loader, { size: 24 }) })
7236
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: getClassName26("loader"), children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Loader, { size: 24 }) })
7109
7237
  ] })
7110
7238
  ]
7111
7239
  }
@@ -7114,7 +7242,7 @@ var Canvas = () => {
7114
7242
 
7115
7243
  // lib/use-loaded-overrides.ts
7116
7244
  init_react_import();
7117
- var import_react44 = require("react");
7245
+ var import_react45 = require("react");
7118
7246
 
7119
7247
  // lib/load-overrides.ts
7120
7248
  init_react_import();
@@ -7153,26 +7281,26 @@ var useLoadedOverrides = ({
7153
7281
  overrides,
7154
7282
  plugins
7155
7283
  }) => {
7156
- return (0, import_react44.useMemo)(() => {
7284
+ return (0, import_react45.useMemo)(() => {
7157
7285
  return loadOverrides({ overrides, plugins });
7158
7286
  }, [plugins, overrides]);
7159
7287
  };
7160
7288
 
7161
7289
  // components/DefaultOverride/index.tsx
7162
7290
  init_react_import();
7163
- var import_jsx_runtime37 = require("react/jsx-runtime");
7164
- var DefaultOverride = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children });
7291
+ var import_jsx_runtime38 = require("react/jsx-runtime");
7292
+ var DefaultOverride = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_jsx_runtime38.Fragment, { children });
7165
7293
 
7166
7294
  // lib/use-inject-css.ts
7167
7295
  init_react_import();
7168
- var import_react45 = require("react");
7296
+ var import_react46 = require("react");
7169
7297
  var styles = ``;
7170
7298
  var useInjectStyleSheet = (initialStyles, iframeEnabled) => {
7171
- const [el, setEl] = (0, import_react45.useState)();
7172
- (0, import_react45.useEffect)(() => {
7299
+ const [el, setEl] = (0, import_react46.useState)();
7300
+ (0, import_react46.useEffect)(() => {
7173
7301
  setEl(document.createElement("style"));
7174
7302
  }, []);
7175
- (0, import_react45.useEffect)(() => {
7303
+ (0, import_react46.useEffect)(() => {
7176
7304
  var _a;
7177
7305
  if (!el || typeof window === "undefined") {
7178
7306
  return;
@@ -7192,10 +7320,10 @@ var useInjectGlobalCss = (iframeEnabled) => {
7192
7320
 
7193
7321
  // lib/use-preview-mode-hotkeys.ts
7194
7322
  init_react_import();
7195
- var import_react46 = require("react");
7323
+ var import_react47 = require("react");
7196
7324
  var import_react_hotkeys_hook2 = require("react-hotkeys-hook");
7197
7325
  var usePreviewModeHotkeys = (dispatch, iframeEnabled) => {
7198
- const toggleInteractive = (0, import_react46.useCallback)(() => {
7326
+ const toggleInteractive = (0, import_react47.useCallback)(() => {
7199
7327
  dispatch({
7200
7328
  type: "setUi",
7201
7329
  ui: (ui) => ({
@@ -7218,7 +7346,7 @@ var usePreviewModeHotkeys = (dispatch, iframeEnabled) => {
7218
7346
  };
7219
7347
 
7220
7348
  // components/Puck/index.tsx
7221
- var import_jsx_runtime38 = require("react/jsx-runtime");
7349
+ var import_jsx_runtime39 = require("react/jsx-runtime");
7222
7350
  var getClassName27 = get_class_name_factory_default("Puck", styles_module_default15);
7223
7351
  var getLayoutClassName = get_class_name_factory_default("PuckLayout", styles_module_default15);
7224
7352
  function Puck({
@@ -7247,7 +7375,7 @@ function Puck({
7247
7375
  waitForStyles: true
7248
7376
  }, _iframe);
7249
7377
  useInjectGlobalCss(iframe.enabled);
7250
- const [generatedAppState] = (0, import_react47.useState)(() => {
7378
+ const [generatedAppState] = (0, import_react48.useState)(() => {
7251
7379
  var _a2, _b2, _c, _d, _e, _f, _g, _h, _i;
7252
7380
  const initial = __spreadValues(__spreadValues({}, defaultAppState.ui), initialUi);
7253
7381
  let clientUiState = {};
@@ -7319,14 +7447,14 @@ function Puck({
7319
7447
  histories,
7320
7448
  index: initialHistoryIndex
7321
7449
  });
7322
- const [reducer] = (0, import_react47.useState)(
7450
+ const [reducer] = (0, import_react48.useState)(
7323
7451
  () => createReducer({
7324
7452
  config,
7325
7453
  record: historyStore.record,
7326
7454
  onAction
7327
7455
  })
7328
7456
  );
7329
- const [appState, dispatch] = (0, import_react47.useReducer)(
7457
+ const [appState, dispatch] = (0, import_react48.useReducer)(
7330
7458
  reducer,
7331
7459
  flushZones(initialAppState)
7332
7460
  );
@@ -7337,14 +7465,14 @@ function Puck({
7337
7465
  historyStore,
7338
7466
  iframeEnabled: (_a = _iframe == null ? void 0 : _iframe.enabled) != null ? _a : true
7339
7467
  });
7340
- const [menuOpen, setMenuOpen] = (0, import_react47.useState)(false);
7468
+ const [menuOpen, setMenuOpen] = (0, import_react48.useState)(false);
7341
7469
  const { itemSelector, leftSideBarVisible, rightSideBarVisible } = ui;
7342
7470
  const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
7343
- (0, import_react47.useEffect)(() => {
7471
+ (0, import_react48.useEffect)(() => {
7344
7472
  if (onChange) onChange(data);
7345
7473
  }, [data]);
7346
7474
  const rootProps = data.root.props || data.root;
7347
- const toggleSidebars = (0, import_react47.useCallback)(
7475
+ const toggleSidebars = (0, import_react48.useCallback)(
7348
7476
  (sidebar) => {
7349
7477
  const widerViewport = window.matchMedia("(min-width: 638px)").matches;
7350
7478
  const sideBarVisible = sidebar === "left" ? leftSideBarVisible : rightSideBarVisible;
@@ -7358,7 +7486,7 @@ function Puck({
7358
7486
  },
7359
7487
  [dispatch, leftSideBarVisible, rightSideBarVisible]
7360
7488
  );
7361
- (0, import_react47.useEffect)(() => {
7489
+ (0, import_react48.useEffect)(() => {
7362
7490
  if (!window.matchMedia("(min-width: 638px)").matches) {
7363
7491
  dispatch({
7364
7492
  type: "setUi",
@@ -7381,7 +7509,7 @@ function Puck({
7381
7509
  window.removeEventListener("resize", handleResize);
7382
7510
  };
7383
7511
  }, []);
7384
- const defaultHeaderRender = (0, import_react47.useMemo)(() => {
7512
+ const defaultHeaderRender = (0, import_react48.useMemo)(() => {
7385
7513
  if (renderHeader) {
7386
7514
  console.warn(
7387
7515
  "`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
@@ -7389,20 +7517,20 @@ function Puck({
7389
7517
  const RenderHeader = (_a2) => {
7390
7518
  var _b2 = _a2, { actions } = _b2, props = __objRest(_b2, ["actions"]);
7391
7519
  const Comp = renderHeader;
7392
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState, children: actions }));
7520
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState, children: actions }));
7393
7521
  };
7394
7522
  return RenderHeader;
7395
7523
  }
7396
7524
  return DefaultOverride;
7397
7525
  }, [renderHeader]);
7398
- const defaultHeaderActionsRender = (0, import_react47.useMemo)(() => {
7526
+ const defaultHeaderActionsRender = (0, import_react48.useMemo)(() => {
7399
7527
  if (renderHeaderActions) {
7400
7528
  console.warn(
7401
7529
  "`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
7402
7530
  );
7403
7531
  const RenderHeader = (props) => {
7404
7532
  const Comp = renderHeaderActions;
7405
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState }));
7533
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState }));
7406
7534
  };
7407
7535
  return RenderHeader;
7408
7536
  }
@@ -7412,27 +7540,27 @@ function Puck({
7412
7540
  overrides,
7413
7541
  plugins
7414
7542
  });
7415
- const CustomPuck = (0, import_react47.useMemo)(
7543
+ const CustomPuck = (0, import_react48.useMemo)(
7416
7544
  () => loadedOverrides.puck || DefaultOverride,
7417
7545
  [loadedOverrides]
7418
7546
  );
7419
- const CustomHeader = (0, import_react47.useMemo)(
7547
+ const CustomHeader = (0, import_react48.useMemo)(
7420
7548
  () => loadedOverrides.header || defaultHeaderRender,
7421
7549
  [loadedOverrides]
7422
7550
  );
7423
- const CustomHeaderActions = (0, import_react47.useMemo)(
7551
+ const CustomHeaderActions = (0, import_react48.useMemo)(
7424
7552
  () => loadedOverrides.headerActions || defaultHeaderActionsRender,
7425
7553
  [loadedOverrides]
7426
7554
  );
7427
- const [mounted, setMounted] = (0, import_react47.useState)(false);
7428
- (0, import_react47.useEffect)(() => {
7555
+ const [mounted, setMounted] = (0, import_react48.useState)(false);
7556
+ (0, import_react48.useEffect)(() => {
7429
7557
  setMounted(true);
7430
7558
  }, []);
7431
7559
  const selectedComponentConfig = selectedItem && config.components[selectedItem.type];
7432
7560
  const selectedComponentLabel = selectedItem ? (_b = selectedComponentConfig == null ? void 0 : selectedComponentConfig["label"]) != null ? _b : selectedItem.type.toString() : "";
7433
7561
  usePreviewModeHotkeys(dispatch, iframe.enabled);
7434
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: `Puck ${getClassName27()}`, children: [
7435
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7562
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: `Puck ${getClassName27()}`, children: [
7563
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7436
7564
  AppProvider,
7437
7565
  {
7438
7566
  value: {
@@ -7454,7 +7582,7 @@ function Puck({
7454
7582
  getPermissions: () => ({}),
7455
7583
  refreshPermissions: () => null
7456
7584
  },
7457
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(DragDropContext, { disableAutoScroll: dnd == null ? void 0 : dnd.disableAutoScroll, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CustomPuck, { children: children || /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7585
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(DragDropContext, { disableAutoScroll: dnd == null ? void 0 : dnd.disableAutoScroll, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(CustomPuck, { children: children || /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7458
7586
  "div",
7459
7587
  {
7460
7588
  className: getLayoutClassName({
@@ -7463,60 +7591,60 @@ function Puck({
7463
7591
  mounted,
7464
7592
  rightSideBarVisible
7465
7593
  }),
7466
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("inner"), children: [
7467
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7594
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: getLayoutClassName("inner"), children: [
7595
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7468
7596
  CustomHeader,
7469
7597
  {
7470
- actions: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_jsx_runtime38.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7598
+ actions: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_jsx_runtime39.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7471
7599
  Button,
7472
7600
  {
7473
7601
  onClick: () => {
7474
7602
  onPublish && onPublish(data);
7475
7603
  },
7476
- icon: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Globe, { size: "14px" }),
7604
+ icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Globe, { size: "14px" }),
7477
7605
  children: "Publish"
7478
7606
  }
7479
7607
  ) }) }),
7480
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("header", { className: getLayoutClassName("header"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("headerInner"), children: [
7481
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("headerToggle"), children: [
7482
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7608
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("header", { className: getLayoutClassName("header"), children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: getLayoutClassName("headerInner"), children: [
7609
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: getLayoutClassName("headerToggle"), children: [
7610
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7483
7611
  "div",
7484
7612
  {
7485
7613
  className: getLayoutClassName("leftSideBarToggle"),
7486
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7614
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7487
7615
  IconButton,
7488
7616
  {
7489
7617
  onClick: () => {
7490
7618
  toggleSidebars("left");
7491
7619
  },
7492
7620
  title: "Toggle left sidebar",
7493
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(PanelLeft, { focusable: "false" })
7621
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(PanelLeft, { focusable: "false" })
7494
7622
  }
7495
7623
  )
7496
7624
  }
7497
7625
  ),
7498
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7626
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7499
7627
  "div",
7500
7628
  {
7501
7629
  className: getLayoutClassName("rightSideBarToggle"),
7502
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7630
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7503
7631
  IconButton,
7504
7632
  {
7505
7633
  onClick: () => {
7506
7634
  toggleSidebars("right");
7507
7635
  },
7508
7636
  title: "Toggle right sidebar",
7509
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(PanelRight, { focusable: "false" })
7637
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(PanelRight, { focusable: "false" })
7510
7638
  }
7511
7639
  )
7512
7640
  }
7513
7641
  )
7514
7642
  ] }),
7515
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: getLayoutClassName("headerTitle"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(Heading, { rank: "2", size: "xs", children: [
7643
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: getLayoutClassName("headerTitle"), children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(Heading, { rank: "2", size: "xs", children: [
7516
7644
  headerTitle || rootProps.title || "Page",
7517
- headerPath && /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
7645
+ headerPath && /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_jsx_runtime39.Fragment, { children: [
7518
7646
  " ",
7519
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7647
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7520
7648
  "code",
7521
7649
  {
7522
7650
  className: getLayoutClassName("headerPath"),
@@ -7525,31 +7653,31 @@ function Puck({
7525
7653
  )
7526
7654
  ] })
7527
7655
  ] }) }),
7528
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("headerTools"), children: [
7529
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: getLayoutClassName("menuButton"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7656
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: getLayoutClassName("headerTools"), children: [
7657
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: getLayoutClassName("menuButton"), children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7530
7658
  IconButton,
7531
7659
  {
7532
7660
  onClick: () => {
7533
7661
  return setMenuOpen(!menuOpen);
7534
7662
  },
7535
7663
  title: "Toggle menu bar",
7536
- children: menuOpen ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(ChevronUp, { focusable: "false" }) : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(ChevronDown, { focusable: "false" })
7664
+ children: menuOpen ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChevronUp, { focusable: "false" }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChevronDown, { focusable: "false" })
7537
7665
  }
7538
7666
  ) }),
7539
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7667
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7540
7668
  MenuBar,
7541
7669
  {
7542
7670
  appState,
7543
7671
  dispatch,
7544
7672
  onPublish,
7545
7673
  menuOpen,
7546
- renderHeaderActions: () => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7674
+ renderHeaderActions: () => /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7547
7675
  Button,
7548
7676
  {
7549
7677
  onClick: () => {
7550
7678
  onPublish && onPublish(data);
7551
7679
  },
7552
- icon: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Globe, { size: "14px" }),
7680
+ icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Globe, { size: "14px" }),
7553
7681
  children: "Publish"
7554
7682
  }
7555
7683
  ) }),
@@ -7560,19 +7688,19 @@ function Puck({
7560
7688
  ] }) })
7561
7689
  }
7562
7690
  ),
7563
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("leftSideBar"), children: [
7564
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SidebarSection, { title: "Components", noBorderTop: true, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Components, {}) }),
7565
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SidebarSection, { title: "Outline", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Outline, {}) })
7691
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: getLayoutClassName("leftSideBar"), children: [
7692
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(SidebarSection, { title: "Components", noBorderTop: true, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Components, {}) }),
7693
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(SidebarSection, { title: "Outline", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Outline, {}) })
7566
7694
  ] }),
7567
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Canvas, {}),
7568
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: getLayoutClassName("rightSideBar"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
7695
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Canvas, {}),
7696
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: getLayoutClassName("rightSideBar"), children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
7569
7697
  SidebarSection,
7570
7698
  {
7571
7699
  noPadding: true,
7572
7700
  noBorderTop: true,
7573
7701
  showBreadcrumbs: true,
7574
7702
  title: selectedItem ? selectedComponentLabel : "Page",
7575
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Fields, {})
7703
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Fields, {})
7576
7704
  }
7577
7705
  ) })
7578
7706
  ] })
@@ -7580,7 +7708,7 @@ function Puck({
7580
7708
  ) }) })
7581
7709
  }
7582
7710
  ),
7583
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { id: "puck-portal-root", className: getClassName27("portal") })
7711
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { id: "puck-portal-root", className: getClassName27("portal") })
7584
7712
  ] });
7585
7713
  }
7586
7714
  Puck.Components = Components;