@measured/puck 0.16.3-canary.af421c6 → 0.17.0-canary.00ccd1d

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.js CHANGED
@@ -276,7 +276,7 @@ init_react_import();
276
276
 
277
277
  // css-module:/home/runner/work/puck/puck/packages/core/components/AutoField/styles.module.css#css-module
278
278
  init_react_import();
279
- var styles_module_default2 = { "Input": "_Input_3pq3z_1", "Input-label": "_Input-label_3pq3z_26", "Input-labelIcon": "_Input-labelIcon_3pq3z_35", "Input-disabledIcon": "_Input-disabledIcon_3pq3z_42", "Input-input": "_Input-input_3pq3z_47", "Input--readOnly": "_Input--readOnly_3pq3z_91", "Input-radioGroupItems": "_Input-radioGroupItems_3pq3z_102", "Input-radio": "_Input-radio_3pq3z_102", "Input-radioInner": "_Input-radioInner_3pq3z_119", "Input-radioInput": "_Input-radioInput_3pq3z_164" };
279
+ 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" };
280
280
 
281
281
  // components/AutoField/index.tsx
282
282
  var import_react13 = require("react");
@@ -1071,7 +1071,8 @@ var defaultAppState = {
1071
1071
  },
1072
1072
  options: [],
1073
1073
  controlsVisible: true
1074
- }
1074
+ },
1075
+ field: { focus: null }
1075
1076
  }
1076
1077
  };
1077
1078
  var defaultContext = {
@@ -1415,11 +1416,13 @@ var ArrayField = ({
1415
1416
  event.source.index,
1416
1417
  (_b = event.destination) == null ? void 0 : _b.index
1417
1418
  );
1418
- onChange(newValue, {
1419
+ const newUi = {
1419
1420
  arrayState: __spreadProps(__spreadValues({}, state.ui.arrayState), {
1420
1421
  [id]: __spreadProps(__spreadValues({}, arrayState), { items: newArrayStateItems })
1421
1422
  })
1422
- });
1423
+ };
1424
+ setUi(newUi, false);
1425
+ onChange(newValue, newUi);
1423
1426
  setLocalState({
1424
1427
  value: newValue,
1425
1428
  arrayState: __spreadProps(__spreadValues({}, arrayState), { items: newArrayStateItems })
@@ -1485,32 +1488,60 @@ var ArrayField = ({
1485
1488
  children: [
1486
1489
  field.getItemSummary ? field.getItemSummary(data, i) : `Item #${_originalIndex}`,
1487
1490
  /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: getClassNameItem("rhs"), children: [
1488
- !readOnly && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("actions"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1489
- IconButton,
1490
- {
1491
- type: "button",
1492
- disabled: field.min !== void 0 && field.min >= localState.arrayState.items.length,
1493
- onClick: (e) => {
1494
- e.stopPropagation();
1495
- const existingValue = [
1496
- ...value || []
1497
- ];
1498
- const existingItems = [
1499
- ...arrayState.items || []
1500
- ];
1501
- existingValue.splice(i, 1);
1502
- existingItems.splice(i, 1);
1503
- onChange(
1504
- existingValue,
1505
- mapArrayStateToUi({
1506
- items: existingItems
1507
- })
1508
- );
1509
- },
1510
- title: "Delete",
1511
- children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Trash, { size: 16 })
1512
- }
1513
- ) }) }),
1491
+ !readOnly && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: getClassNameItem("actions"), children: [
1492
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1493
+ IconButton,
1494
+ {
1495
+ type: "button",
1496
+ disabled: !!addDisabled,
1497
+ onClick: (e) => {
1498
+ e.stopPropagation();
1499
+ const existingValue = [
1500
+ ...value || []
1501
+ ];
1502
+ existingValue.splice(
1503
+ i,
1504
+ 0,
1505
+ existingValue[i]
1506
+ );
1507
+ onChange(
1508
+ existingValue,
1509
+ mapArrayStateToUi(
1510
+ regenerateArrayState(existingValue)
1511
+ )
1512
+ );
1513
+ },
1514
+ title: "Duplicate",
1515
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Copy, { size: 16 })
1516
+ }
1517
+ ) }),
1518
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1519
+ IconButton,
1520
+ {
1521
+ type: "button",
1522
+ disabled: field.min !== void 0 && field.min >= localState.arrayState.items.length,
1523
+ onClick: (e) => {
1524
+ e.stopPropagation();
1525
+ const existingValue = [
1526
+ ...value || []
1527
+ ];
1528
+ const existingItems = [
1529
+ ...arrayState.items || []
1530
+ ];
1531
+ existingValue.splice(i, 1);
1532
+ existingItems.splice(i, 1);
1533
+ onChange(
1534
+ existingValue,
1535
+ mapArrayStateToUi({
1536
+ items: existingItems
1537
+ })
1538
+ );
1539
+ },
1540
+ title: "Delete",
1541
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Trash, { size: 16 })
1542
+ }
1543
+ ) })
1544
+ ] }),
1514
1545
  /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DragIcon, {}) })
1515
1546
  ] })
1516
1547
  ]
@@ -1606,8 +1637,9 @@ var DefaultField = ({
1606
1637
  className: getClassName6("input"),
1607
1638
  autoComplete: "off",
1608
1639
  type: field.type,
1640
+ title: label || name,
1609
1641
  name,
1610
- value: typeof value === "undefined" ? "" : value,
1642
+ value: typeof value === "undefined" ? "" : value.toString(),
1611
1643
  onChange: (e) => {
1612
1644
  if (field.type === "number") {
1613
1645
  onChange(Number(e.currentTarget.value));
@@ -1636,7 +1668,7 @@ var import_react10 = require("react");
1636
1668
 
1637
1669
  // css-module:/home/runner/work/puck/puck/packages/core/components/ExternalInput/styles.module.css#css-module
1638
1670
  init_react_import();
1639
- var styles_module_default6 = { "ExternalInput-actions": "_ExternalInput-actions_wprq3_1", "ExternalInput-button": "_ExternalInput-button_wprq3_5", "ExternalInput--dataSelected": "_ExternalInput--dataSelected_wprq3_24", "ExternalInput--readOnly": "_ExternalInput--readOnly_wprq3_31", "ExternalInput-detachButton": "_ExternalInput-detachButton_wprq3_35", "ExternalInput": "_ExternalInput_wprq3_1", "ExternalInputModal": "_ExternalInputModal_wprq3_79", "ExternalInputModal-grid": "_ExternalInputModal-grid_wprq3_89", "ExternalInputModal--filtersToggled": "_ExternalInputModal--filtersToggled_wprq3_100", "ExternalInputModal-filters": "_ExternalInputModal-filters_wprq3_105", "ExternalInputModal-masthead": "_ExternalInputModal-masthead_wprq3_124", "ExternalInputModal-tableWrapper": "_ExternalInputModal-tableWrapper_wprq3_133", "ExternalInputModal-table": "_ExternalInputModal-table_wprq3_133", "ExternalInputModal-thead": "_ExternalInputModal-thead_wprq3_149", "ExternalInputModal-th": "_ExternalInputModal-th_wprq3_149", "ExternalInputModal-td": "_ExternalInputModal-td_wprq3_164", "ExternalInputModal-tr": "_ExternalInputModal-tr_wprq3_169", "ExternalInputModal-tbody": "_ExternalInputModal-tbody_wprq3_176", "ExternalInputModal--hasData": "_ExternalInputModal--hasData_wprq3_202", "ExternalInputModal-loadingBanner": "_ExternalInputModal-loadingBanner_wprq3_206", "ExternalInputModal--isLoading": "_ExternalInputModal--isLoading_wprq3_223", "ExternalInputModal-searchForm": "_ExternalInputModal-searchForm_wprq3_227", "ExternalInputModal-search": "_ExternalInputModal-search_wprq3_227", "ExternalInputModal-searchIcon": "_ExternalInputModal-searchIcon_wprq3_264", "ExternalInputModal-searchIconText": "_ExternalInputModal-searchIconText_wprq3_289", "ExternalInputModal-searchInput": "_ExternalInputModal-searchInput_wprq3_299", "ExternalInputModal-searchActions": "_ExternalInputModal-searchActions_wprq3_313", "ExternalInputModal-searchActionIcon": "_ExternalInputModal-searchActionIcon_wprq3_326", "ExternalInputModal-footer": "_ExternalInputModal-footer_wprq3_330" };
1671
+ var styles_module_default6 = { "ExternalInput-actions": "_ExternalInput-actions_8wgzm_1", "ExternalInput-button": "_ExternalInput-button_8wgzm_5", "ExternalInput--dataSelected": "_ExternalInput--dataSelected_8wgzm_24", "ExternalInput--readOnly": "_ExternalInput--readOnly_8wgzm_31", "ExternalInput-detachButton": "_ExternalInput-detachButton_8wgzm_35", "ExternalInput": "_ExternalInput_8wgzm_1", "ExternalInputModal": "_ExternalInputModal_8wgzm_79", "ExternalInputModal-grid": "_ExternalInputModal-grid_8wgzm_89", "ExternalInputModal--filtersToggled": "_ExternalInputModal--filtersToggled_8wgzm_100", "ExternalInputModal-filters": "_ExternalInputModal-filters_8wgzm_105", "ExternalInputModal-masthead": "_ExternalInputModal-masthead_8wgzm_124", "ExternalInputModal-tableWrapper": "_ExternalInputModal-tableWrapper_8wgzm_133", "ExternalInputModal-table": "_ExternalInputModal-table_8wgzm_133", "ExternalInputModal-thead": "_ExternalInputModal-thead_8wgzm_149", "ExternalInputModal-th": "_ExternalInputModal-th_8wgzm_149", "ExternalInputModal-td": "_ExternalInputModal-td_8wgzm_164", "ExternalInputModal-tr": "_ExternalInputModal-tr_8wgzm_169", "ExternalInputModal-tbody": "_ExternalInputModal-tbody_8wgzm_176", "ExternalInputModal--hasData": "_ExternalInputModal--hasData_8wgzm_202", "ExternalInputModal-loadingBanner": "_ExternalInputModal-loadingBanner_8wgzm_206", "ExternalInputModal--isLoading": "_ExternalInputModal--isLoading_8wgzm_223", "ExternalInputModal-searchForm": "_ExternalInputModal-searchForm_8wgzm_227", "ExternalInputModal-search": "_ExternalInputModal-search_8wgzm_227", "ExternalInputModal-searchIcon": "_ExternalInputModal-searchIcon_8wgzm_264", "ExternalInputModal-searchIconText": "_ExternalInputModal-searchIconText_8wgzm_289", "ExternalInputModal-searchInput": "_ExternalInputModal-searchInput_8wgzm_299", "ExternalInputModal-searchActions": "_ExternalInputModal-searchActions_8wgzm_313", "ExternalInputModal-searchActionIcon": "_ExternalInputModal-searchActionIcon_8wgzm_326", "ExternalInputModal-footerContainer": "_ExternalInputModal-footerContainer_8wgzm_330", "ExternalInputModal-footer": "_ExternalInputModal-footer_8wgzm_330" };
1640
1672
 
1641
1673
  // components/Modal/index.tsx
1642
1674
  init_react_import();
@@ -1793,7 +1825,7 @@ var ExternalInput = ({
1793
1825
  const validKeys = /* @__PURE__ */ new Set();
1794
1826
  for (const item of mappedData) {
1795
1827
  for (const key of Object.keys(item)) {
1796
- if (typeof item[key] === "string" || typeof item[key] === "number") {
1828
+ if (typeof item[key] === "string" || typeof item[key] === "number" || (0, import_react10.isValidElement)(item[key])) {
1797
1829
  validKeys.add(key);
1798
1830
  }
1799
1831
  }
@@ -1814,6 +1846,14 @@ var ExternalInput = ({
1814
1846
  }),
1815
1847
  [id, field]
1816
1848
  );
1849
+ const Footer = (0, import_react10.useCallback)(
1850
+ (props) => field.renderFooter ? field.renderFooter(props) : /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("span", { className: getClassNameModal("footer"), children: [
1851
+ props.items.length,
1852
+ " result",
1853
+ props.items.length === 1 ? "" : "s"
1854
+ ] }),
1855
+ [field.renderFooter]
1856
+ );
1817
1857
  (0, import_react10.useEffect)(() => {
1818
1858
  search(searchQuery, filters);
1819
1859
  }, []);
@@ -1953,11 +1993,7 @@ var ExternalInput = ({
1953
1993
  /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("loadingBanner"), children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Loader, { size: 24 }) })
1954
1994
  ] })
1955
1995
  ] }),
1956
- /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassNameModal("footer"), children: [
1957
- mappedData.length,
1958
- " result",
1959
- mappedData.length === 1 ? "" : "s"
1960
- ] })
1996
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("footerContainer"), children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Footer, { items: mappedData }) })
1961
1997
  ]
1962
1998
  }
1963
1999
  ) })
@@ -2016,6 +2052,19 @@ var ExternalField = ({
2016
2052
 
2017
2053
  // components/AutoField/fields/RadioField/index.tsx
2018
2054
  init_react_import();
2055
+
2056
+ // lib/safe-json-parse.ts
2057
+ init_react_import();
2058
+ var safeJsonParse = (str) => {
2059
+ try {
2060
+ const jsonValue = JSON.parse(str);
2061
+ return jsonValue;
2062
+ } catch (e) {
2063
+ return str;
2064
+ }
2065
+ };
2066
+
2067
+ // components/AutoField/fields/RadioField/index.tsx
2019
2068
  var import_jsx_runtime16 = require("react/jsx-runtime");
2020
2069
  var getClassName11 = get_class_name_factory_default("Input", styles_module_default2);
2021
2070
  var RadioField = ({
@@ -2050,13 +2099,7 @@ var RadioField = ({
2050
2099
  className: getClassName11("radioInput"),
2051
2100
  value: option.value,
2052
2101
  name,
2053
- onChange: (e) => {
2054
- if (e.currentTarget.value === "true" || e.currentTarget.value === "false") {
2055
- onChange(JSON.parse(e.currentTarget.value));
2056
- return;
2057
- }
2058
- onChange(e.currentTarget.value);
2059
- },
2102
+ onChange: ({ target: { value: value2 } }) => onChange(safeJsonParse(value2) || value2),
2060
2103
  disabled: readOnly,
2061
2104
  checked: value === option.value
2062
2105
  }
@@ -2097,15 +2140,10 @@ var SelectField = ({
2097
2140
  "select",
2098
2141
  {
2099
2142
  id,
2143
+ title: label || name,
2100
2144
  className: getClassName12("input"),
2101
2145
  disabled: readOnly,
2102
- onChange: (e) => {
2103
- if (e.currentTarget.value === "true" || e.currentTarget.value === "false") {
2104
- onChange(JSON.parse(e.currentTarget.value));
2105
- return;
2106
- }
2107
- onChange(e.currentTarget.value);
2108
- },
2146
+ onChange: ({ target: { value: value2 } }) => onChange(safeJsonParse(value2) || value2),
2109
2147
  value,
2110
2148
  children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2111
2149
  "option",
@@ -2237,6 +2275,7 @@ var useSafeId = () => {
2237
2275
  // components/AutoField/index.tsx
2238
2276
  var import_jsx_runtime20 = require("react/jsx-runtime");
2239
2277
  var getClassName15 = get_class_name_factory_default("Input", styles_module_default2);
2278
+ var getClassNameWrapper = get_class_name_factory_default("InputWrapper", styles_module_default2);
2240
2279
  var FieldLabel = ({
2241
2280
  children,
2242
2281
  icon,
@@ -2284,7 +2323,7 @@ var FieldLabelInternal2 = ({
2284
2323
  };
2285
2324
  function AutoFieldInternal(props) {
2286
2325
  var _a, _b, _c, _d, _e, _f, _g, _h;
2287
- const { overrides } = useAppContext();
2326
+ const { dispatch, overrides } = useAppContext();
2288
2327
  const { id, Label = FieldLabelInternal2 } = props;
2289
2328
  const field = props.field;
2290
2329
  const label = field.label;
@@ -2316,23 +2355,45 @@ function AutoFieldInternal(props) {
2316
2355
  Label,
2317
2356
  id: resolvedId
2318
2357
  });
2358
+ const onFocus = (0, import_react13.useCallback)(
2359
+ (e) => {
2360
+ if (mergedProps.name && e.target.nodeName === "INPUT") {
2361
+ e.stopPropagation();
2362
+ dispatch({
2363
+ type: "setUi",
2364
+ ui: {
2365
+ field: { focus: mergedProps.name }
2366
+ }
2367
+ });
2368
+ }
2369
+ },
2370
+ [mergedProps.name]
2371
+ );
2372
+ const onBlur = (0, import_react13.useCallback)((e) => {
2373
+ if ("name" in e.target) {
2374
+ dispatch({
2375
+ type: "setUi",
2376
+ ui: {
2377
+ field: { focus: null }
2378
+ }
2379
+ });
2380
+ }
2381
+ }, []);
2319
2382
  if (field.type === "custom") {
2320
2383
  if (!field.render) {
2321
2384
  return null;
2322
2385
  }
2323
2386
  const CustomField = field.render;
2324
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName15(), children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CustomField, __spreadValues({}, mergedProps)) });
2387
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassNameWrapper(), onFocus, onBlur, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName15(), children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CustomField, __spreadValues({}, mergedProps)) }) });
2325
2388
  }
2326
2389
  const children = defaultFields[field.type](mergedProps);
2327
2390
  const Render2 = render[field.type];
2328
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Render2, __spreadProps(__spreadValues({}, mergedProps), { children }));
2391
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassNameWrapper(), onFocus, onBlur, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Render2, __spreadProps(__spreadValues({}, mergedProps), { children })) });
2329
2392
  }
2330
- var RECENT_CHANGE_TIMEOUT = 200;
2331
2393
  function AutoFieldPrivate(props) {
2394
+ const { state } = useAppContext();
2332
2395
  const { value, onChange } = props;
2333
2396
  const [localValue, setLocalValue] = (0, import_react13.useState)(value);
2334
- const [recentlyChanged, setRecentlyChanged] = (0, import_react13.useState)(false);
2335
- const timeoutRef = (0, import_react13.useRef)();
2336
2397
  const onChangeDb = (0, import_use_debounce.useDebouncedCallback)(
2337
2398
  (val, ui) => {
2338
2399
  onChange(val, ui);
@@ -2342,15 +2403,10 @@ function AutoFieldPrivate(props) {
2342
2403
  );
2343
2404
  const onChangeLocal = (0, import_react13.useCallback)((val, ui) => {
2344
2405
  setLocalValue(val);
2345
- setRecentlyChanged(true);
2346
- clearTimeout(timeoutRef.current);
2347
- timeoutRef.current = setTimeout(() => {
2348
- setRecentlyChanged(false);
2349
- }, RECENT_CHANGE_TIMEOUT);
2350
2406
  onChangeDb(val, ui);
2351
2407
  }, []);
2352
2408
  (0, import_react13.useEffect)(() => {
2353
- if (!recentlyChanged) {
2409
+ if (state.ui.field.focus !== props.name) {
2354
2410
  setLocalValue(value);
2355
2411
  }
2356
2412
  }, [value]);
@@ -3075,7 +3131,7 @@ function DropZone(props) {
3075
3131
 
3076
3132
  // components/Puck/index.tsx
3077
3133
  init_react_import();
3078
- var import_react32 = require("react");
3134
+ var import_react33 = require("react");
3079
3135
 
3080
3136
  // lib/use-placeholder-style.ts
3081
3137
  init_react_import();
@@ -3682,7 +3738,23 @@ init_react_import();
3682
3738
  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" };
3683
3739
 
3684
3740
  // components/Puck/components/Fields/index.tsx
3741
+ var import_react22 = require("react");
3742
+
3743
+ // lib/use-parent.ts
3744
+ init_react_import();
3685
3745
  var import_react21 = require("react");
3746
+ var useParent = (itemSelector) => {
3747
+ var _a;
3748
+ const { selectedItem, state } = useAppContext();
3749
+ const { pathData } = (0, import_react21.useContext)(dropZoneContext) || {};
3750
+ const item = itemSelector ? getItem(itemSelector, state.data) : selectedItem;
3751
+ const breadcrumbs = convertPathDataToBreadcrumbs(item, pathData, state.data);
3752
+ const lastItem = breadcrumbs[breadcrumbs.length - 1];
3753
+ const parent = (lastItem == null ? void 0 : lastItem.selector) ? (_a = getItem(lastItem.selector, state.data)) != null ? _a : null : null;
3754
+ return parent || null;
3755
+ };
3756
+
3757
+ // components/Puck/components/Fields/index.tsx
3686
3758
  var import_jsx_runtime27 = require("react/jsx-runtime");
3687
3759
  var getClassName21 = get_class_name_factory_default("PuckFields", styles_module_default16);
3688
3760
  var defaultPageFields = {
@@ -3696,23 +3768,24 @@ var DefaultFields = ({
3696
3768
  var useResolvedFields = () => {
3697
3769
  var _a, _b;
3698
3770
  const { selectedItem, state, config } = useAppContext();
3771
+ const parent = useParent();
3699
3772
  const { data } = state;
3700
3773
  const rootFields = ((_a = config.root) == null ? void 0 : _a.fields) || defaultPageFields;
3701
3774
  const componentConfig = selectedItem ? config.components[selectedItem.type] : null;
3702
- const defaultFields = (0, import_react21.useMemo)(
3775
+ const defaultFields = (0, import_react22.useMemo)(
3703
3776
  () => (selectedItem ? componentConfig == null ? void 0 : componentConfig.fields : rootFields) || {},
3704
3777
  [selectedItem, rootFields, componentConfig == null ? void 0 : componentConfig.fields]
3705
3778
  );
3706
3779
  const rootProps = data.root.props || data.root;
3707
- const [lastSelectedData, setLastSelectedData] = (0, import_react21.useState)({});
3708
- const [resolvedFields, setResolvedFields] = (0, import_react21.useState)(defaultFields);
3709
- const [fieldsLoading, setFieldsLoading] = (0, import_react21.useState)(false);
3780
+ const [lastSelectedData, setLastSelectedData] = (0, import_react22.useState)({});
3781
+ const [resolvedFields, setResolvedFields] = (0, import_react22.useState)(defaultFields);
3782
+ const [fieldsLoading, setFieldsLoading] = (0, import_react22.useState)(false);
3710
3783
  const defaultResolveFields = (_componentData, _params) => defaultFields;
3711
3784
  const componentData = selectedItem ? selectedItem : { props: rootProps, readOnly: data.root.readOnly };
3712
3785
  const hasComponentResolver = selectedItem && (componentConfig == null ? void 0 : componentConfig.resolveFields);
3713
3786
  const hasRootResolver = !selectedItem && ((_b = config.root) == null ? void 0 : _b.resolveFields);
3714
3787
  const hasResolver = hasComponentResolver || hasRootResolver;
3715
- const resolveFields = (0, import_react21.useCallback)(
3788
+ const resolveFields = (0, import_react22.useCallback)(
3716
3789
  (..._0) => __async(void 0, [..._0], function* (fields = {}) {
3717
3790
  var _a2;
3718
3791
  const lastData = ((_a2 = lastSelectedData.props) == null ? void 0 : _a2.id) === componentData.props.id ? lastSelectedData : null;
@@ -3726,7 +3799,8 @@ var useResolvedFields = () => {
3726
3799
  fields,
3727
3800
  lastFields: resolvedFields,
3728
3801
  lastData,
3729
- appState: state
3802
+ appState: state,
3803
+ parent
3730
3804
  }
3731
3805
  );
3732
3806
  }
@@ -3736,7 +3810,8 @@ var useResolvedFields = () => {
3736
3810
  fields,
3737
3811
  lastFields: resolvedFields,
3738
3812
  lastData,
3739
- appState: state
3813
+ appState: state,
3814
+ parent
3740
3815
  });
3741
3816
  }
3742
3817
  return defaultResolveFields(componentData, {
@@ -3748,7 +3823,7 @@ var useResolvedFields = () => {
3748
3823
  }),
3749
3824
  [data, config, componentData, selectedItem, resolvedFields, state]
3750
3825
  );
3751
- (0, import_react21.useEffect)(() => {
3826
+ (0, import_react22.useEffect)(() => {
3752
3827
  if (hasResolver) {
3753
3828
  setFieldsLoading(true);
3754
3829
  resolveFields(defaultFields).then((fields) => {
@@ -3758,7 +3833,7 @@ var useResolvedFields = () => {
3758
3833
  } else {
3759
3834
  setResolvedFields(defaultFields);
3760
3835
  }
3761
- }, [data, defaultFields, state.ui.itemSelector, hasResolver]);
3836
+ }, [data, defaultFields, selectedItem, hasResolver]);
3762
3837
  return [resolvedFields, fieldsLoading];
3763
3838
  };
3764
3839
  var Fields = () => {
@@ -3779,7 +3854,7 @@ var Fields = () => {
3779
3854
  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;
3780
3855
  const isLoading = fieldsResolving || componentResolving;
3781
3856
  const rootProps = data.root.props || data.root;
3782
- const Wrapper = (0, import_react21.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
3857
+ const Wrapper = (0, import_react22.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
3783
3858
  return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
3784
3859
  "form",
3785
3860
  {
@@ -3900,7 +3975,7 @@ init_react_import();
3900
3975
 
3901
3976
  // lib/use-component-list.tsx
3902
3977
  init_react_import();
3903
- var import_react22 = require("react");
3978
+ var import_react23 = require("react");
3904
3979
 
3905
3980
  // components/ComponentList/index.tsx
3906
3981
  init_react_import();
@@ -3978,8 +4053,8 @@ ComponentList.Item = ComponentListItem;
3978
4053
  // lib/use-component-list.tsx
3979
4054
  var import_jsx_runtime29 = require("react/jsx-runtime");
3980
4055
  var useComponentList = (config, ui) => {
3981
- const [componentList, setComponentList] = (0, import_react22.useState)();
3982
- (0, import_react22.useEffect)(() => {
4056
+ const [componentList, setComponentList] = (0, import_react23.useState)();
4057
+ (0, import_react23.useEffect)(() => {
3983
4058
  var _a, _b, _c;
3984
4059
  if (Object.keys(ui.componentList).length > 0) {
3985
4060
  const matchedComponents = [];
@@ -4048,22 +4123,22 @@ var useComponentList = (config, ui) => {
4048
4123
  };
4049
4124
 
4050
4125
  // components/Puck/components/Components/index.tsx
4051
- var import_react23 = require("react");
4126
+ var import_react24 = require("react");
4052
4127
  var import_jsx_runtime30 = require("react/jsx-runtime");
4053
4128
  var Components = () => {
4054
4129
  const { config, state, overrides } = useAppContext();
4055
4130
  const componentList = useComponentList(config, state.ui);
4056
- const Wrapper = (0, import_react23.useMemo)(() => overrides.components || "div", [overrides]);
4131
+ const Wrapper = (0, import_react24.useMemo)(() => overrides.components || "div", [overrides]);
4057
4132
  return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ComponentList, { id: "all" }) });
4058
4133
  };
4059
4134
 
4060
4135
  // components/Puck/components/Preview/index.tsx
4061
4136
  init_react_import();
4062
- var import_react25 = require("react");
4137
+ var import_react26 = require("react");
4063
4138
 
4064
4139
  // components/AutoFrame/index.tsx
4065
4140
  init_react_import();
4066
- var import_react24 = require("react");
4141
+ var import_react25 = require("react");
4067
4142
  var import_object_hash = __toESM(require("object-hash"));
4068
4143
  var import_react_dom2 = require("react-dom");
4069
4144
  var import_jsx_runtime31 = require("react/jsx-runtime");
@@ -4109,7 +4184,7 @@ var CopyHostStyles = ({
4109
4184
  onStylesLoaded = () => null
4110
4185
  }) => {
4111
4186
  const { document: doc, window: win } = useFrame();
4112
- (0, import_react24.useEffect)(() => {
4187
+ (0, import_react25.useEffect)(() => {
4113
4188
  if (!win || !doc) {
4114
4189
  return () => {
4115
4190
  };
@@ -4268,8 +4343,8 @@ var CopyHostStyles = ({
4268
4343
  }, []);
4269
4344
  return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_jsx_runtime31.Fragment, { children });
4270
4345
  };
4271
- var autoFrameContext = (0, import_react24.createContext)({});
4272
- var useFrame = () => (0, import_react24.useContext)(autoFrameContext);
4346
+ var autoFrameContext = (0, import_react25.createContext)({});
4347
+ var useFrame = () => (0, import_react25.useContext)(autoFrameContext);
4273
4348
  function AutoFrame(_a) {
4274
4349
  var _b = _a, {
4275
4350
  children,
@@ -4284,11 +4359,11 @@ function AutoFrame(_a) {
4284
4359
  "id",
4285
4360
  "onStylesLoaded"
4286
4361
  ]);
4287
- const [loaded, setLoaded] = (0, import_react24.useState)(false);
4288
- const [ctx, setCtx] = (0, import_react24.useState)({});
4289
- const ref = (0, import_react24.useRef)(null);
4290
- const [mountTarget, setMountTarget] = (0, import_react24.useState)();
4291
- (0, import_react24.useEffect)(() => {
4362
+ const [loaded, setLoaded] = (0, import_react25.useState)(false);
4363
+ const [ctx, setCtx] = (0, import_react25.useState)({});
4364
+ const ref = (0, import_react25.useRef)(null);
4365
+ const [mountTarget, setMountTarget] = (0, import_react25.useState)();
4366
+ (0, import_react25.useEffect)(() => {
4292
4367
  var _a2;
4293
4368
  if (ref.current) {
4294
4369
  setCtx({
@@ -4324,7 +4399,7 @@ var import_jsx_runtime32 = require("react/jsx-runtime");
4324
4399
  var getClassName23 = get_class_name_factory_default("PuckPreview", styles_module_default18);
4325
4400
  var Preview = ({ id = "puck-preview" }) => {
4326
4401
  const { config, dispatch, state, setStatus, iframe, overrides } = useAppContext();
4327
- const Page = (0, import_react25.useCallback)(
4402
+ const Page = (0, import_react26.useCallback)(
4328
4403
  (pageProps) => {
4329
4404
  var _a, _b;
4330
4405
  return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadValues({
@@ -4333,7 +4408,7 @@ var Preview = ({ id = "puck-preview" }) => {
4333
4408
  },
4334
4409
  [config.root]
4335
4410
  );
4336
- const Frame = (0, import_react25.useMemo)(() => overrides.iframe, [overrides]);
4411
+ const Frame = (0, import_react26.useMemo)(() => overrides.iframe, [overrides]);
4337
4412
  const rootProps = state.data.root.props || state.data.root;
4338
4413
  return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4339
4414
  "div",
@@ -4422,7 +4497,7 @@ var scrollIntoView = (el) => {
4422
4497
  };
4423
4498
 
4424
4499
  // components/LayerTree/index.tsx
4425
- var import_react26 = require("react");
4500
+ var import_react27 = require("react");
4426
4501
 
4427
4502
  // lib/is-child-of-zone.ts
4428
4503
  init_react_import();
@@ -4449,7 +4524,7 @@ var LayerTree = ({
4449
4524
  label
4450
4525
  }) => {
4451
4526
  const zones = data.zones || {};
4452
- const ctx = (0, import_react26.useContext)(dropZoneContext);
4527
+ const ctx = (0, import_react27.useContext)(dropZoneContext);
4453
4528
  return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_jsx_runtime33.Fragment, { children: [
4454
4529
  label && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassName24("zoneTitle"), children: [
4455
4530
  /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Layers, { size: "16" }) }),
@@ -4555,13 +4630,13 @@ var LayerTree = ({
4555
4630
  };
4556
4631
 
4557
4632
  // components/Puck/components/Outline/index.tsx
4558
- var import_react27 = require("react");
4633
+ var import_react28 = require("react");
4559
4634
  var import_jsx_runtime34 = require("react/jsx-runtime");
4560
4635
  var Outline = () => {
4561
4636
  const { dispatch, state, overrides, config } = useAppContext();
4562
4637
  const { data, ui } = state;
4563
4638
  const { itemSelector } = ui;
4564
- const setItemSelector = (0, import_react27.useCallback)(
4639
+ const setItemSelector = (0, import_react28.useCallback)(
4565
4640
  (newItemSelector) => {
4566
4641
  dispatch({
4567
4642
  type: "setUi",
@@ -4570,7 +4645,7 @@ var Outline = () => {
4570
4645
  },
4571
4646
  []
4572
4647
  );
4573
- const Wrapper = (0, import_react27.useMemo)(() => overrides.outline || "div", [overrides]);
4648
+ const Wrapper = (0, import_react28.useMemo)(() => overrides.outline || "div", [overrides]);
4574
4649
  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: [
4575
4650
  (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4576
4651
  LayerTree,
@@ -4659,19 +4734,19 @@ function usePuckHistory({
4659
4734
 
4660
4735
  // lib/use-history-store.ts
4661
4736
  init_react_import();
4662
- var import_react28 = require("react");
4737
+ var import_react29 = require("react");
4663
4738
  var import_use_debounce3 = require("use-debounce");
4664
4739
  var EMPTY_HISTORY_INDEX = 0;
4665
4740
  function useHistoryStore(initialHistory) {
4666
4741
  var _a, _b;
4667
- const [histories, setHistories] = (0, import_react28.useState)(
4742
+ const [histories, setHistories] = (0, import_react29.useState)(
4668
4743
  (_a = initialHistory == null ? void 0 : initialHistory.histories) != null ? _a : []
4669
4744
  );
4670
4745
  const updateHistories = (histories2) => {
4671
4746
  setHistories(histories2);
4672
4747
  setIndex(histories2.length - 1);
4673
4748
  };
4674
- const [index, setIndex] = (0, import_react28.useState)(
4749
+ const [index, setIndex] = (0, import_react29.useState)(
4675
4750
  (_b = initialHistory == null ? void 0 : initialHistory.index) != null ? _b : EMPTY_HISTORY_INDEX
4676
4751
  );
4677
4752
  const hasPast = index > EMPTY_HISTORY_INDEX;
@@ -4831,11 +4906,11 @@ var getBox = function getBox2(el) {
4831
4906
  };
4832
4907
 
4833
4908
  // components/Puck/components/Canvas/index.tsx
4834
- var import_react30 = require("react");
4909
+ var import_react31 = require("react");
4835
4910
 
4836
4911
  // components/ViewportControls/index.tsx
4837
4912
  init_react_import();
4838
- var import_react29 = require("react");
4913
+ var import_react30 = require("react");
4839
4914
 
4840
4915
  // css-module:/home/runner/work/puck/puck/packages/core/components/ViewportControls/styles.module.css#css-module
4841
4916
  init_react_import();
@@ -4858,8 +4933,8 @@ var ViewportButton = ({
4858
4933
  onClick
4859
4934
  }) => {
4860
4935
  const { state } = useAppContext();
4861
- const [isActive, setIsActive] = (0, import_react29.useState)(false);
4862
- (0, import_react29.useEffect)(() => {
4936
+ const [isActive, setIsActive] = (0, import_react30.useState)(false);
4937
+ (0, import_react30.useEffect)(() => {
4863
4938
  setIsActive(width === state.ui.viewports.current.width);
4864
4939
  }, [width, state.ui.viewports.current.width]);
4865
4940
  return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
@@ -4895,7 +4970,7 @@ var ViewportControls = ({
4895
4970
  const defaultsContainAutoZoom = defaultZoomOptions.find(
4896
4971
  (option) => option.value === autoZoom
4897
4972
  );
4898
- const zoomOptions = (0, import_react29.useMemo)(
4973
+ const zoomOptions = (0, import_react30.useMemo)(
4899
4974
  () => [
4900
4975
  ...defaultZoomOptions,
4901
4976
  ...defaultsContainAutoZoom ? [] : [
@@ -5018,17 +5093,17 @@ var Canvas = () => {
5018
5093
  const { status, iframe } = useAppContext();
5019
5094
  const { dispatch, state, overrides, setUi, zoomConfig, setZoomConfig } = useAppContext();
5020
5095
  const { ui } = state;
5021
- const frameRef = (0, import_react30.useRef)(null);
5022
- const [showTransition, setShowTransition] = (0, import_react30.useState)(false);
5023
- const defaultRender = (0, import_react30.useMemo)(() => {
5096
+ const frameRef = (0, import_react31.useRef)(null);
5097
+ const [showTransition, setShowTransition] = (0, import_react31.useState)(false);
5098
+ const defaultRender = (0, import_react31.useMemo)(() => {
5024
5099
  const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_jsx_runtime36.Fragment, { children });
5025
5100
  return PuckDefault;
5026
5101
  }, []);
5027
- const CustomPreview = (0, import_react30.useMemo)(
5102
+ const CustomPreview = (0, import_react31.useMemo)(
5028
5103
  () => overrides.preview || defaultRender,
5029
5104
  [overrides]
5030
5105
  );
5031
- const getFrameDimensions = (0, import_react30.useCallback)(() => {
5106
+ const getFrameDimensions = (0, import_react31.useCallback)(() => {
5032
5107
  if (frameRef.current) {
5033
5108
  const frame = frameRef.current;
5034
5109
  const box = getBox(frame);
@@ -5036,7 +5111,7 @@ var Canvas = () => {
5036
5111
  }
5037
5112
  return { width: 0, height: 0 };
5038
5113
  }, [frameRef]);
5039
- const resetAutoZoom = (0, import_react30.useCallback)(
5114
+ const resetAutoZoom = (0, import_react31.useCallback)(
5040
5115
  (ui2 = state.ui) => {
5041
5116
  if (frameRef.current) {
5042
5117
  setZoomConfig(
@@ -5046,11 +5121,11 @@ var Canvas = () => {
5046
5121
  },
5047
5122
  [frameRef, zoomConfig, state.ui]
5048
5123
  );
5049
- (0, import_react30.useEffect)(() => {
5124
+ (0, import_react31.useEffect)(() => {
5050
5125
  setShowTransition(false);
5051
5126
  resetAutoZoom();
5052
5127
  }, [frameRef, ui.leftSideBarVisible, ui.rightSideBarVisible]);
5053
- (0, import_react30.useEffect)(() => {
5128
+ (0, import_react31.useEffect)(() => {
5054
5129
  const { height: frameHeight } = getFrameDimensions();
5055
5130
  if (ui.viewports.current.height === "auto") {
5056
5131
  setZoomConfig(__spreadProps(__spreadValues({}, zoomConfig), {
@@ -5058,13 +5133,13 @@ var Canvas = () => {
5058
5133
  }));
5059
5134
  }
5060
5135
  }, [zoomConfig.zoom]);
5061
- (0, import_react30.useEffect)(() => {
5136
+ (0, import_react31.useEffect)(() => {
5062
5137
  if (ZOOM_ON_CHANGE) {
5063
5138
  setShowTransition(true);
5064
5139
  resetAutoZoom(ui);
5065
5140
  }
5066
5141
  }, [ui.viewports.current.width]);
5067
- (0, import_react30.useEffect)(() => {
5142
+ (0, import_react31.useEffect)(() => {
5068
5143
  const observer = new ResizeObserver(() => {
5069
5144
  setShowTransition(false);
5070
5145
  resetAutoZoom();
@@ -5076,8 +5151,8 @@ var Canvas = () => {
5076
5151
  observer.disconnect();
5077
5152
  };
5078
5153
  }, []);
5079
- const [showLoader, setShowLoader] = (0, import_react30.useState)(false);
5080
- (0, import_react30.useEffect)(() => {
5154
+ const [showLoader, setShowLoader] = (0, import_react31.useState)(false);
5155
+ (0, import_react31.useEffect)(() => {
5081
5156
  setTimeout(() => {
5082
5157
  setShowLoader(true);
5083
5158
  }, 500);
@@ -5180,7 +5255,7 @@ var insertComponent = (componentType, zone, index, {
5180
5255
 
5181
5256
  // lib/use-loaded-overrides.ts
5182
5257
  init_react_import();
5183
- var import_react31 = require("react");
5258
+ var import_react32 = require("react");
5184
5259
 
5185
5260
  // lib/load-overrides.ts
5186
5261
  init_react_import();
@@ -5219,7 +5294,7 @@ var useLoadedOverrides = ({
5219
5294
  overrides,
5220
5295
  plugins
5221
5296
  }) => {
5222
- return (0, import_react31.useMemo)(() => {
5297
+ return (0, import_react32.useMemo)(() => {
5223
5298
  return loadOverrides({ overrides, plugins });
5224
5299
  }, [plugins, overrides]);
5225
5300
  };
@@ -5258,7 +5333,7 @@ function Puck({
5258
5333
  enabled: true,
5259
5334
  waitForStyles: true
5260
5335
  }, _iframe);
5261
- const [generatedAppState] = (0, import_react32.useState)(() => {
5336
+ const [generatedAppState] = (0, import_react33.useState)(() => {
5262
5337
  var _a2, _b, _c, _d, _e, _f, _g, _h, _i;
5263
5338
  const initial = __spreadValues(__spreadValues({}, defaultAppState.ui), initialUi);
5264
5339
  let clientUiState = {};
@@ -5330,22 +5405,22 @@ function Puck({
5330
5405
  histories,
5331
5406
  index: initialHistoryIndex
5332
5407
  });
5333
- const [reducer] = (0, import_react32.useState)(
5408
+ const [reducer] = (0, import_react33.useState)(
5334
5409
  () => createReducer({
5335
5410
  config,
5336
5411
  record: historyStore.record,
5337
5412
  onAction
5338
5413
  })
5339
5414
  );
5340
- const [appState, dispatch] = (0, import_react32.useReducer)(
5415
+ const [appState, dispatch] = (0, import_react33.useReducer)(
5341
5416
  reducer,
5342
5417
  flushZones(initialAppState)
5343
5418
  );
5344
5419
  const { data, ui } = appState;
5345
5420
  const history = usePuckHistory({ dispatch, initialAppState, historyStore });
5346
- const [menuOpen, setMenuOpen] = (0, import_react32.useState)(false);
5421
+ const [menuOpen, setMenuOpen] = (0, import_react33.useState)(false);
5347
5422
  const { itemSelector, leftSideBarVisible, rightSideBarVisible } = ui;
5348
- const setItemSelector = (0, import_react32.useCallback)(
5423
+ const setItemSelector = (0, import_react33.useCallback)(
5349
5424
  (newItemSelector) => {
5350
5425
  if (newItemSelector === itemSelector) return;
5351
5426
  dispatch({
@@ -5357,13 +5432,13 @@ function Puck({
5357
5432
  [itemSelector]
5358
5433
  );
5359
5434
  const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
5360
- (0, import_react32.useEffect)(() => {
5435
+ (0, import_react33.useEffect)(() => {
5361
5436
  if (onChange) onChange(data);
5362
5437
  }, [data]);
5363
5438
  const { onDragStartOrUpdate, placeholderStyle } = usePlaceholderStyle();
5364
- const [draggedItem, setDraggedItem] = (0, import_react32.useState)();
5439
+ const [draggedItem, setDraggedItem] = (0, import_react33.useState)();
5365
5440
  const rootProps = data.root.props || data.root;
5366
- const toggleSidebars = (0, import_react32.useCallback)(
5441
+ const toggleSidebars = (0, import_react33.useCallback)(
5367
5442
  (sidebar) => {
5368
5443
  const widerViewport = window.matchMedia("(min-width: 638px)").matches;
5369
5444
  const sideBarVisible = sidebar === "left" ? leftSideBarVisible : rightSideBarVisible;
@@ -5377,7 +5452,7 @@ function Puck({
5377
5452
  },
5378
5453
  [dispatch, leftSideBarVisible, rightSideBarVisible]
5379
5454
  );
5380
- (0, import_react32.useEffect)(() => {
5455
+ (0, import_react33.useEffect)(() => {
5381
5456
  if (!window.matchMedia("(min-width: 638px)").matches) {
5382
5457
  dispatch({
5383
5458
  type: "setUi",
@@ -5400,7 +5475,7 @@ function Puck({
5400
5475
  window.removeEventListener("resize", handleResize);
5401
5476
  };
5402
5477
  }, []);
5403
- const defaultHeaderRender = (0, import_react32.useMemo)(() => {
5478
+ const defaultHeaderRender = (0, import_react33.useMemo)(() => {
5404
5479
  if (renderHeader) {
5405
5480
  console.warn(
5406
5481
  "`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
@@ -5414,7 +5489,7 @@ function Puck({
5414
5489
  }
5415
5490
  return DefaultOverride;
5416
5491
  }, [renderHeader]);
5417
- const defaultHeaderActionsRender = (0, import_react32.useMemo)(() => {
5492
+ const defaultHeaderActionsRender = (0, import_react33.useMemo)(() => {
5418
5493
  if (renderHeaderActions) {
5419
5494
  console.warn(
5420
5495
  "`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
@@ -5431,20 +5506,20 @@ function Puck({
5431
5506
  overrides,
5432
5507
  plugins
5433
5508
  });
5434
- const CustomPuck = (0, import_react32.useMemo)(
5509
+ const CustomPuck = (0, import_react33.useMemo)(
5435
5510
  () => loadedOverrides.puck || DefaultOverride,
5436
5511
  [loadedOverrides]
5437
5512
  );
5438
- const CustomHeader = (0, import_react32.useMemo)(
5513
+ const CustomHeader = (0, import_react33.useMemo)(
5439
5514
  () => loadedOverrides.header || defaultHeaderRender,
5440
5515
  [loadedOverrides]
5441
5516
  );
5442
- const CustomHeaderActions = (0, import_react32.useMemo)(
5517
+ const CustomHeaderActions = (0, import_react33.useMemo)(
5443
5518
  () => loadedOverrides.headerActions || defaultHeaderActionsRender,
5444
5519
  [loadedOverrides]
5445
5520
  );
5446
- const [mounted, setMounted] = (0, import_react32.useState)(false);
5447
- (0, import_react32.useEffect)(() => {
5521
+ const [mounted, setMounted] = (0, import_react33.useState)(false);
5522
+ (0, import_react33.useEffect)(() => {
5448
5523
  setMounted(true);
5449
5524
  }, []);
5450
5525
  const selectedComponentConfig = selectedItem && config.components[selectedItem.type];