@measured/puck 0.14.3-canary.9a1cc7c → 0.15.0-canary.480467a

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.
@@ -110,16 +110,12 @@ type ExternalField<Props extends {
110
110
  filterFields?: Record<string, Field>;
111
111
  initialFilters?: Record<string, any>;
112
112
  };
113
- type CustomField<Props extends {
114
- [key: string]: any;
115
- } = {
116
- [key: string]: any;
117
- }> = BaseField & {
113
+ type CustomField<Props extends any = {}> = BaseField & {
118
114
  type: "custom";
119
115
  render: (props: {
120
- field: CustomField;
116
+ field: CustomField<Props>;
121
117
  name: string;
122
- value: any;
118
+ value: Props;
123
119
  onChange: (value: Props) => void;
124
120
  readOnly?: boolean;
125
121
  }) => ReactElement;
@@ -128,7 +124,7 @@ type Field<Props extends {
128
124
  [key: string]: any;
129
125
  } = {
130
126
  [key: string]: any;
131
- }> = TextField | NumberField | TextareaField | SelectField | RadioField | ArrayField<Props> | ObjectField<Props> | ExternalField<Props> | ExternalFieldWithAdaptor<Props> | CustomField;
127
+ }> = TextField | NumberField | TextareaField | SelectField | RadioField | ArrayField<Props> | ObjectField<Props> | ExternalField<Props> | ExternalFieldWithAdaptor<Props> | CustomField<Props>;
132
128
  type DefaultRootProps = {
133
129
  title?: string;
134
130
  [key: string]: any;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { U as UiState, D as Data, A as AppState, C as Config, a as DefaultRootProps, I as ItemSelector, b as DropZoneProps, F as Field, V as Viewports, c as DefaultComponentProps, M as MappedItem, R as RootDataWithProps, d as RootData, e as ComponentData } from './Config-09628f3c.js';
2
- export { i as Adaptor, h as ArrayField, s as ArrayState, p as BaseData, B as BaseField, o as ComponentConfig, m as Content, k as CustomField, j as ExternalField, E as ExternalFieldWithAdaptor, l as Fields, r as ItemWithId, N as NumberField, O as ObjectField, P as PuckComponent, n as PuckContext, g as RadioField, q as RootDataWithoutProps, S as SelectField, T as TextField, f as TextareaField } from './Config-09628f3c.js';
1
+ import { U as UiState, D as Data, A as AppState, C as Config, a as DefaultRootProps, I as ItemSelector, b as DropZoneProps, F as Field, V as Viewports, c as DefaultComponentProps, M as MappedItem, R as RootDataWithProps, d as RootData, e as ComponentData } from './Config-550396e1.js';
2
+ export { i as Adaptor, h as ArrayField, s as ArrayState, p as BaseData, B as BaseField, o as ComponentConfig, m as Content, k as CustomField, j as ExternalField, E as ExternalFieldWithAdaptor, l as Fields, r as ItemWithId, N as NumberField, O as ObjectField, P as PuckComponent, n as PuckContext, g as RadioField, q as RootDataWithoutProps, S as SelectField, T as TextField, f as TextareaField } from './Config-550396e1.js';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import * as react from 'react';
5
5
  import { ReactNode, ReactElement, CSSProperties, SyntheticEvent } from 'react';
@@ -185,7 +185,7 @@ type Overrides = OverridesGeneric<{
185
185
  children: ReactNode;
186
186
  }>;
187
187
  headerActions: RenderFunc<{
188
- children?: ReactNode;
188
+ children: ReactNode;
189
189
  }>;
190
190
  preview: RenderFunc;
191
191
  fields: RenderFunc<{
package/dist/index.js CHANGED
@@ -8033,9 +8033,9 @@ var require_react_dom_development = __commonJS({
8033
8033
  if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") {
8034
8034
  __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
8035
8035
  }
8036
- var React2 = require("react");
8036
+ var React3 = require("react");
8037
8037
  var Scheduler = require_scheduler();
8038
- var ReactSharedInternals = React2.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
8038
+ var ReactSharedInternals = React3.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
8039
8039
  var suppressWarning = false;
8040
8040
  function setSuppressWarning(newSuppressWarning) {
8041
8041
  {
@@ -8084,7 +8084,7 @@ var require_react_dom_development = __commonJS({
8084
8084
  var HostPortal = 4;
8085
8085
  var HostComponent = 5;
8086
8086
  var HostText = 6;
8087
- var Fragment17 = 7;
8087
+ var Fragment18 = 7;
8088
8088
  var Mode = 8;
8089
8089
  var ContextConsumer = 9;
8090
8090
  var ContextProvider = 10;
@@ -9240,7 +9240,7 @@ var require_react_dom_development = __commonJS({
9240
9240
  return "DehydratedFragment";
9241
9241
  case ForwardRef:
9242
9242
  return getWrappedName$1(type, type.render, "ForwardRef");
9243
- case Fragment17:
9243
+ case Fragment18:
9244
9244
  return "Fragment";
9245
9245
  case HostComponent:
9246
9246
  return type;
@@ -9640,7 +9640,7 @@ var require_react_dom_development = __commonJS({
9640
9640
  {
9641
9641
  if (props.value == null) {
9642
9642
  if (typeof props.children === "object" && props.children !== null) {
9643
- React2.Children.forEach(props.children, function(child) {
9643
+ React3.Children.forEach(props.children, function(child) {
9644
9644
  if (child == null) {
9645
9645
  return;
9646
9646
  }
@@ -18087,7 +18087,7 @@ var require_react_dom_development = __commonJS({
18087
18087
  }
18088
18088
  }
18089
18089
  var fakeInternalInstance = {};
18090
- var emptyRefsObject = new React2.Component().refs;
18090
+ var emptyRefsObject = new React3.Component().refs;
18091
18091
  var didWarnAboutStateAssignmentForComponent;
18092
18092
  var didWarnAboutUninitializedState;
18093
18093
  var didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate;
@@ -18911,7 +18911,7 @@ var require_react_dom_development = __commonJS({
18911
18911
  }
18912
18912
  }
18913
18913
  function updateFragment2(returnFiber, current2, fragment, lanes, key) {
18914
- if (current2 === null || current2.tag !== Fragment17) {
18914
+ if (current2 === null || current2.tag !== Fragment18) {
18915
18915
  var created = createFiberFromFragment(fragment, returnFiber.mode, lanes, key);
18916
18916
  created.return = returnFiber;
18917
18917
  return created;
@@ -19314,7 +19314,7 @@ var require_react_dom_development = __commonJS({
19314
19314
  if (child.key === key) {
19315
19315
  var elementType = element.type;
19316
19316
  if (elementType === REACT_FRAGMENT_TYPE) {
19317
- if (child.tag === Fragment17) {
19317
+ if (child.tag === Fragment18) {
19318
19318
  deleteRemainingChildren(returnFiber, child.sibling);
19319
19319
  var existing = useFiber(child, element.props.children);
19320
19320
  existing.return = returnFiber;
@@ -23489,7 +23489,7 @@ var require_react_dom_development = __commonJS({
23489
23489
  var _resolvedProps2 = workInProgress2.elementType === type ? _unresolvedProps2 : resolveDefaultProps(type, _unresolvedProps2);
23490
23490
  return updateForwardRef(current2, workInProgress2, type, _resolvedProps2, renderLanes2);
23491
23491
  }
23492
- case Fragment17:
23492
+ case Fragment18:
23493
23493
  return updateFragment(current2, workInProgress2, renderLanes2);
23494
23494
  case Mode:
23495
23495
  return updateMode(current2, workInProgress2, renderLanes2);
@@ -23762,7 +23762,7 @@ var require_react_dom_development = __commonJS({
23762
23762
  case SimpleMemoComponent:
23763
23763
  case FunctionComponent:
23764
23764
  case ForwardRef:
23765
- case Fragment17:
23765
+ case Fragment18:
23766
23766
  case Mode:
23767
23767
  case Profiler:
23768
23768
  case ContextConsumer:
@@ -28021,7 +28021,7 @@ var require_react_dom_development = __commonJS({
28021
28021
  return fiber;
28022
28022
  }
28023
28023
  function createFiberFromFragment(elements, mode, lanes, key) {
28024
- var fiber = createFiber(Fragment17, elements, key, mode);
28024
+ var fiber = createFiber(Fragment18, elements, key, mode);
28025
28025
  fiber.lanes = lanes;
28026
28026
  return fiber;
28027
28027
  }
@@ -30528,7 +30528,7 @@ var IconButton = ({
30528
30528
 
30529
30529
  // components/Puck/index.tsx
30530
30530
  init_react_import();
30531
- var import_react28 = require("react");
30531
+ var import_react29 = require("react");
30532
30532
 
30533
30533
  // lib/use-placeholder-style.ts
30534
30534
  init_react_import();
@@ -31213,7 +31213,7 @@ var useResolvedData = (appState, config, dispatch) => {
31213
31213
  const [componentState, setComponentState] = (0, import_react13.useState)({});
31214
31214
  const deferredSetStates = {};
31215
31215
  const setComponentLoading = (0, import_react13.useCallback)(
31216
- (id, loading, defer = 0) => {
31216
+ (id, loading, defer2 = 0) => {
31217
31217
  if (deferredSetStates[id]) {
31218
31218
  clearTimeout(deferredSetStates[id]);
31219
31219
  delete deferredSetStates[id];
@@ -31223,7 +31223,7 @@ var useResolvedData = (appState, config, dispatch) => {
31223
31223
  [id]: __spreadProps(__spreadValues({}, prev[id]), { loading })
31224
31224
  }));
31225
31225
  delete deferredSetStates[id];
31226
- }, defer);
31226
+ }, defer2);
31227
31227
  },
31228
31228
  []
31229
31229
  );
@@ -31354,17 +31354,7 @@ var MenuBar = ({
31354
31354
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_jsx_runtime13.Fragment, { children: renderHeaderActions && renderHeaderActions({
31355
31355
  state: appState,
31356
31356
  dispatch
31357
- }) }),
31358
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
31359
- Button,
31360
- {
31361
- onClick: () => {
31362
- onPublish && onPublish(data);
31363
- },
31364
- icon: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Globe, { size: "14px" }),
31365
- children: "Publish"
31366
- }
31367
- ) })
31357
+ }) })
31368
31358
  ] })
31369
31359
  }
31370
31360
  );
@@ -32627,19 +32617,218 @@ var Components = () => {
32627
32617
 
32628
32618
  // components/Puck/components/Preview/index.tsx
32629
32619
  init_react_import();
32630
- var import_react22 = require("react");
32631
- var import_auto_frame_component = __toESM(require("@measured/auto-frame-component"));
32620
+ var import_react23 = require("react");
32621
+
32622
+ // components/AutoFrame/index.tsx
32623
+ init_react_import();
32624
+ var import_react22 = __toESM(require("react"));
32625
+ var import_react_frame_component = __toESM(require("react-frame-component"));
32626
+ var import_object_hash = __toESM(require("object-hash"));
32627
+ var import_jsx_runtime29 = require("react/jsx-runtime");
32628
+ var styleSelector = 'style, link[rel="stylesheet"]';
32629
+ var collectStyles = (doc) => {
32630
+ const collected = [];
32631
+ doc.head.querySelectorAll(styleSelector).forEach((style) => {
32632
+ collected.push(style);
32633
+ });
32634
+ return collected;
32635
+ };
32636
+ var getStyleSheet = (el) => {
32637
+ return Array.from(document.styleSheets).find((ss) => {
32638
+ const ownerNode = ss.ownerNode;
32639
+ return ownerNode.href === el.href;
32640
+ });
32641
+ };
32642
+ var getStyles = (styleSheet) => {
32643
+ if (styleSheet) {
32644
+ try {
32645
+ return [...styleSheet.cssRules].map((rule) => rule.cssText).join("");
32646
+ } catch (e) {
32647
+ console.warn(
32648
+ "Access to stylesheet %s is denied. Ignoring\u2026",
32649
+ styleSheet.href
32650
+ );
32651
+ }
32652
+ }
32653
+ return "";
32654
+ };
32655
+ var defer = (fn) => setTimeout(fn, 0);
32656
+ var CopyHostStyles = ({
32657
+ children,
32658
+ debug = false,
32659
+ onStylesLoaded = () => null
32660
+ }) => {
32661
+ const { document: doc, window: win } = (0, import_react_frame_component.useFrame)();
32662
+ (0, import_react22.useEffect)(() => {
32663
+ if (!win || !doc) {
32664
+ return () => {
32665
+ };
32666
+ }
32667
+ let elements = [];
32668
+ const hashes = {};
32669
+ const lookupEl = (el) => elements.findIndex((elementMap) => elementMap.original === el);
32670
+ const mirrorEl = (el, inlineStyles = false) => __async(void 0, null, function* () {
32671
+ let mirror;
32672
+ if (el.nodeName === "LINK" && inlineStyles) {
32673
+ mirror = document.createElement("style");
32674
+ mirror.type = "text/css";
32675
+ let styleSheet = getStyleSheet(el);
32676
+ if (!styleSheet) {
32677
+ yield new Promise((resolve) => {
32678
+ const fn = () => {
32679
+ resolve();
32680
+ el.removeEventListener("load", fn);
32681
+ };
32682
+ el.addEventListener("load", fn);
32683
+ });
32684
+ styleSheet = getStyleSheet(el);
32685
+ }
32686
+ const styles = getStyles(styleSheet);
32687
+ if (!styles) {
32688
+ if (debug) {
32689
+ console.warn(
32690
+ `Tried to load styles for link element, but couldn't find them. Skipping...`
32691
+ );
32692
+ }
32693
+ return;
32694
+ }
32695
+ mirror.innerHTML = styles;
32696
+ mirror.setAttribute("data-href", el.getAttribute("href"));
32697
+ } else {
32698
+ mirror = el.cloneNode(true);
32699
+ }
32700
+ return mirror;
32701
+ });
32702
+ const addEl = (el) => __async(void 0, null, function* () {
32703
+ const index = lookupEl(el);
32704
+ if (index > -1) {
32705
+ if (debug)
32706
+ console.log(
32707
+ `Tried to add an element that was already mirrored. Updating instead...`
32708
+ );
32709
+ elements[index].mirror.innerText = el.innerText;
32710
+ return;
32711
+ }
32712
+ const mirror = yield mirrorEl(el);
32713
+ if (!mirror) {
32714
+ return;
32715
+ }
32716
+ const elHash = (0, import_object_hash.default)(mirror.outerHTML);
32717
+ if (hashes[elHash]) {
32718
+ if (debug)
32719
+ console.log(
32720
+ `iframe already contains element that is being mirrored. Skipping...`
32721
+ );
32722
+ return;
32723
+ }
32724
+ hashes[elHash] = true;
32725
+ doc.head.append(mirror);
32726
+ elements.push({ original: el, mirror });
32727
+ if (debug)
32728
+ console.log(`Added style node ${el.outerHTML}`);
32729
+ });
32730
+ const removeEl = (el) => {
32731
+ var _a, _b;
32732
+ const index = lookupEl(el);
32733
+ if (index === -1) {
32734
+ if (debug)
32735
+ console.log(
32736
+ `Tried to remove an element that did not exist. Skipping...`
32737
+ );
32738
+ return;
32739
+ }
32740
+ const elHash = (0, import_object_hash.default)(el.outerHTML);
32741
+ (_b = (_a = elements[index]) == null ? void 0 : _a.mirror) == null ? void 0 : _b.remove();
32742
+ delete hashes[elHash];
32743
+ if (debug)
32744
+ console.log(`Removed style node ${el.outerHTML}`);
32745
+ };
32746
+ const observer = new MutationObserver((mutations) => {
32747
+ mutations.forEach((mutation) => {
32748
+ if (mutation.type === "childList") {
32749
+ mutation.addedNodes.forEach((node) => {
32750
+ if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
32751
+ const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
32752
+ if (el && el.matches(styleSelector)) {
32753
+ defer(() => addEl(el));
32754
+ }
32755
+ }
32756
+ });
32757
+ mutation.removedNodes.forEach((node) => {
32758
+ if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
32759
+ const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
32760
+ if (el && el.matches(styleSelector)) {
32761
+ defer(() => removeEl(el));
32762
+ }
32763
+ }
32764
+ });
32765
+ }
32766
+ });
32767
+ });
32768
+ const parentDocument = win.parent.document;
32769
+ const collectedStyles = collectStyles(parentDocument);
32770
+ const hrefs = [];
32771
+ let stylesLoaded = 0;
32772
+ Promise.all(
32773
+ collectedStyles.map((styleNode, i) => __async(void 0, null, function* () {
32774
+ if (styleNode.nodeName === "LINK") {
32775
+ const linkHref = styleNode.href;
32776
+ if (hrefs.indexOf(linkHref) > -1) {
32777
+ return;
32778
+ }
32779
+ hrefs.push(linkHref);
32780
+ }
32781
+ const mirror = yield mirrorEl(styleNode);
32782
+ if (!mirror)
32783
+ return;
32784
+ elements.push({ original: styleNode, mirror });
32785
+ return mirror;
32786
+ }))
32787
+ ).then((mirrorStyles) => {
32788
+ const filtered = mirrorStyles.filter(
32789
+ (el) => typeof el !== "undefined"
32790
+ );
32791
+ filtered.forEach((mirror) => {
32792
+ mirror.onload = () => {
32793
+ stylesLoaded = stylesLoaded + 1;
32794
+ if (stylesLoaded >= elements.length) {
32795
+ onStylesLoaded();
32796
+ }
32797
+ };
32798
+ });
32799
+ doc.head.innerHTML = "";
32800
+ doc.head.append(...filtered);
32801
+ observer.observe(parentDocument.head, { childList: true, subtree: true });
32802
+ filtered.forEach((el) => {
32803
+ const elHash = (0, import_object_hash.default)(el.outerHTML);
32804
+ hashes[elHash] = true;
32805
+ });
32806
+ });
32807
+ return () => {
32808
+ observer.disconnect();
32809
+ };
32810
+ }, []);
32811
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_jsx_runtime29.Fragment, { children });
32812
+ };
32813
+ var AutoFrameComponent = import_react22.default.forwardRef(
32814
+ function(_a, ref) {
32815
+ var _b = _a, { children, debug, onStylesLoaded } = _b, props = __objRest(_b, ["children", "debug", "onStylesLoaded"]);
32816
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_frame_component.default, __spreadProps(__spreadValues({}, props), { ref, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(CopyHostStyles, { debug, onStylesLoaded, children }) }));
32817
+ }
32818
+ );
32819
+ AutoFrameComponent.displayName = "AutoFrameComponent";
32820
+ var AutoFrame_default = AutoFrameComponent;
32632
32821
 
32633
32822
  // css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Preview/styles.module.css#css-module
32634
32823
  init_react_import();
32635
32824
  var styles_module_default16 = { "PuckPreview": "_PuckPreview_rxwlr_1", "PuckPreview-frame": "_PuckPreview-frame_rxwlr_5" };
32636
32825
 
32637
32826
  // components/Puck/components/Preview/index.tsx
32638
- var import_jsx_runtime29 = require("react/jsx-runtime");
32827
+ var import_jsx_runtime30 = require("react/jsx-runtime");
32639
32828
  var getClassName21 = get_class_name_factory_default("PuckPreview", styles_module_default16);
32640
32829
  var Preview = ({ id = "puck-preview" }) => {
32641
32830
  const { config, dispatch, state, setStatus, iframe } = useAppContext();
32642
- const Page = (0, import_react22.useCallback)(
32831
+ const Page = (0, import_react23.useCallback)(
32643
32832
  (pageProps) => {
32644
32833
  var _a, _b;
32645
32834
  return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadProps(__spreadValues({
@@ -32647,13 +32836,13 @@ var Preview = ({ id = "puck-preview" }) => {
32647
32836
  }, pageProps), {
32648
32837
  editMode: true,
32649
32838
  puck: { renderDropZone: DropZone }
32650
- })) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_jsx_runtime29.Fragment, { children: pageProps.children });
32839
+ })) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_jsx_runtime30.Fragment, { children: pageProps.children });
32651
32840
  },
32652
32841
  [config.root]
32653
32842
  );
32654
32843
  const rootProps = state.data.root.props || state.data.root;
32655
- const ref = (0, import_react22.useRef)(null);
32656
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
32844
+ const ref = (0, import_react23.useRef)(null);
32845
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
32657
32846
  "div",
32658
32847
  {
32659
32848
  className: getClassName21(),
@@ -32661,8 +32850,8 @@ var Preview = ({ id = "puck-preview" }) => {
32661
32850
  onClick: () => {
32662
32851
  dispatch({ type: "setUi", ui: __spreadProps(__spreadValues({}, state.ui), { itemSelector: null }) });
32663
32852
  },
32664
- children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
32665
- import_auto_frame_component.default,
32853
+ children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
32854
+ AutoFrame_default,
32666
32855
  {
32667
32856
  id: "preview-frame",
32668
32857
  className: getClassName21("frame"),
@@ -32671,9 +32860,9 @@ var Preview = ({ id = "puck-preview" }) => {
32671
32860
  onStylesLoaded: () => {
32672
32861
  setStatus("READY");
32673
32862
  },
32674
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Page, __spreadProps(__spreadValues({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(DropZone, { zone: rootDroppableId }) }))
32863
+ children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Page, __spreadProps(__spreadValues({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(DropZone, { zone: rootDroppableId }) }))
32675
32864
  }
32676
- ) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { id: "preview-frame", className: getClassName21("frame"), children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Page, __spreadProps(__spreadValues({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(DropZone, { zone: rootDroppableId }) })) })
32865
+ ) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { id: "preview-frame", className: getClassName21("frame"), children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Page, __spreadProps(__spreadValues({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(DropZone, { zone: rootDroppableId }) })) })
32677
32866
  }
32678
32867
  );
32679
32868
  };
@@ -32721,7 +32910,7 @@ var scrollIntoView = (el) => {
32721
32910
  };
32722
32911
 
32723
32912
  // components/LayerTree/index.tsx
32724
- var import_react23 = require("react");
32913
+ var import_react24 = require("react");
32725
32914
 
32726
32915
  // lib/is-child-of-zone.ts
32727
32916
  init_react_import();
@@ -32735,7 +32924,7 @@ var isChildOfZone = (item, maybeChild, ctx) => {
32735
32924
  };
32736
32925
 
32737
32926
  // components/LayerTree/index.tsx
32738
- var import_jsx_runtime30 = require("react/jsx-runtime");
32927
+ var import_jsx_runtime31 = require("react/jsx-runtime");
32739
32928
  var getClassName22 = get_class_name_factory_default("LayerTree", styles_module_default17);
32740
32929
  var getClassNameLayer = get_class_name_factory_default("Layer", styles_module_default17);
32741
32930
  var LayerTree = ({
@@ -32748,15 +32937,15 @@ var LayerTree = ({
32748
32937
  label
32749
32938
  }) => {
32750
32939
  const zones = data.zones || {};
32751
- const ctx = (0, import_react23.useContext)(dropZoneContext);
32752
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
32753
- label && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: getClassName22("zoneTitle"), children: [
32754
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassName22("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Layers, { size: "16" }) }),
32940
+ const ctx = (0, import_react24.useContext)(dropZoneContext);
32941
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
32942
+ label && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: getClassName22("zoneTitle"), children: [
32943
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassName22("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Layers, { size: "16" }) }),
32755
32944
  " ",
32756
32945
  label
32757
32946
  ] }),
32758
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("ul", { className: getClassName22(), children: [
32759
- zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassName22("helper"), children: "No items" }),
32947
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("ul", { className: getClassName22(), children: [
32948
+ zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassName22("helper"), children: "No items" }),
32760
32949
  zoneContent.map((item, i) => {
32761
32950
  var _a;
32762
32951
  const isSelected = (itemSelector == null ? void 0 : itemSelector.index) === i && (itemSelector.zone === zone || itemSelector.zone === rootDroppableId && !zone);
@@ -32772,7 +32961,7 @@ var LayerTree = ({
32772
32961
  const selectedItem = itemSelector && data ? getItem(itemSelector, data) : null;
32773
32962
  const isHovering = hoveringComponent === item.props.id;
32774
32963
  const childIsSelected = isChildOfZone(item, selectedItem, ctx);
32775
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
32964
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
32776
32965
  "li",
32777
32966
  {
32778
32967
  className: getClassNameLayer({
@@ -32782,7 +32971,7 @@ var LayerTree = ({
32782
32971
  childIsSelected
32783
32972
  }),
32784
32973
  children: [
32785
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
32974
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
32786
32975
  "button",
32787
32976
  {
32788
32977
  className: getClassNameLayer("clickable"),
@@ -32814,22 +33003,22 @@ var LayerTree = ({
32814
33003
  setHoveringComponent(null);
32815
33004
  },
32816
33005
  children: [
32817
- containsZone && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
33006
+ containsZone && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
32818
33007
  "div",
32819
33008
  {
32820
33009
  className: getClassNameLayer("chevron"),
32821
33010
  title: isSelected ? "Collapse" : "Expand",
32822
- children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ChevronDown, { size: "12" })
33011
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ChevronDown, { size: "12" })
32823
33012
  }
32824
33013
  ),
32825
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: getClassNameLayer("title"), children: [
32826
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(LayoutGrid, { size: "16" }) }),
32827
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("name"), children: (_a = config.components[item.type]["label"]) != null ? _a : item.type })
33014
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: getClassNameLayer("title"), children: [
33015
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(LayoutGrid, { size: "16" }) }),
33016
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("name"), children: (_a = config.components[item.type]["label"]) != null ? _a : item.type })
32828
33017
  ] })
32829
33018
  ]
32830
33019
  }
32831
33020
  ) }),
32832
- containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
33021
+ containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
32833
33022
  LayerTree,
32834
33023
  {
32835
33024
  config,
@@ -32851,13 +33040,13 @@ var LayerTree = ({
32851
33040
  };
32852
33041
 
32853
33042
  // components/Puck/components/Outline/index.tsx
32854
- var import_react24 = require("react");
32855
- var import_jsx_runtime31 = require("react/jsx-runtime");
33043
+ var import_react25 = require("react");
33044
+ var import_jsx_runtime32 = require("react/jsx-runtime");
32856
33045
  var Outline = () => {
32857
33046
  const { dispatch, state, overrides, config } = useAppContext();
32858
33047
  const { data, ui } = state;
32859
33048
  const { itemSelector } = ui;
32860
- const setItemSelector = (0, import_react24.useCallback)(
33049
+ const setItemSelector = (0, import_react25.useCallback)(
32861
33050
  (newItemSelector) => {
32862
33051
  dispatch({
32863
33052
  type: "setUi",
@@ -32866,9 +33055,9 @@ var Outline = () => {
32866
33055
  },
32867
33056
  []
32868
33057
  );
32869
- const Wrapper = (0, import_react24.useMemo)(() => overrides.outline || "div", [overrides]);
32870
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
32871
- (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
33058
+ const Wrapper = (0, import_react25.useMemo)(() => overrides.outline || "div", [overrides]);
33059
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_jsx_runtime32.Fragment, { children: [
33060
+ (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
32872
33061
  LayerTree,
32873
33062
  {
32874
33063
  config,
@@ -32881,7 +33070,7 @@ var Outline = () => {
32881
33070
  ),
32882
33071
  Object.entries(findZonesForArea(data, "root")).map(
32883
33072
  ([zoneKey, zone]) => {
32884
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
33073
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
32885
33074
  LayerTree,
32886
33075
  {
32887
33076
  config,
@@ -32966,12 +33155,12 @@ function usePuckHistory({
32966
33155
 
32967
33156
  // lib/use-history-store.ts
32968
33157
  init_react_import();
32969
- var import_react25 = require("react");
33158
+ var import_react26 = require("react");
32970
33159
  var import_use_debounce3 = require("use-debounce");
32971
33160
  var EMPTY_HISTORY_INDEX = -1;
32972
33161
  function useHistoryStore() {
32973
- const [histories, setHistories] = (0, import_react25.useState)([]);
32974
- const [index, setIndex] = (0, import_react25.useState)(EMPTY_HISTORY_INDEX);
33162
+ const [histories, setHistories] = (0, import_react26.useState)([]);
33163
+ const [index, setIndex] = (0, import_react26.useState)(EMPTY_HISTORY_INDEX);
32975
33164
  const hasPast = index > EMPTY_HISTORY_INDEX;
32976
33165
  const hasFuture = index < histories.length - 1;
32977
33166
  const currentHistory = histories[index];
@@ -33131,22 +33320,22 @@ var getBox = function getBox2(el) {
33131
33320
  };
33132
33321
 
33133
33322
  // components/Puck/components/Canvas/index.tsx
33134
- var import_react27 = require("react");
33323
+ var import_react28 = require("react");
33135
33324
 
33136
33325
  // components/ViewportControls/index.tsx
33137
33326
  init_react_import();
33138
- var import_react26 = require("react");
33327
+ var import_react27 = require("react");
33139
33328
 
33140
33329
  // css-module:/home/runner/work/puck/puck/packages/core/components/ViewportControls/styles.module.css#css-module
33141
33330
  init_react_import();
33142
33331
  var styles_module_default18 = { "ViewportControls": "_ViewportControls_3zdvn_1", "ViewportControls-divider": "_ViewportControls-divider_3zdvn_15", "ViewportControls-zoomSelect": "_ViewportControls-zoomSelect_3zdvn_21", "ViewportButton--isActive": "_ViewportButton--isActive_3zdvn_33", "ViewportButton-inner": "_ViewportButton-inner_3zdvn_33" };
33143
33332
 
33144
33333
  // components/ViewportControls/index.tsx
33145
- var import_jsx_runtime32 = require("react/jsx-runtime");
33334
+ var import_jsx_runtime33 = require("react/jsx-runtime");
33146
33335
  var icons = {
33147
- Smartphone: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Smartphone, { size: 16 }),
33148
- Tablet: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Tablet, { size: 16 }),
33149
- Monitor: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Monitor, { size: 16 })
33336
+ Smartphone: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Smartphone, { size: 16 }),
33337
+ Tablet: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Tablet, { size: 16 }),
33338
+ Monitor: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Monitor, { size: 16 })
33150
33339
  };
33151
33340
  var getClassName23 = get_class_name_factory_default("ViewportControls", styles_module_default18);
33152
33341
  var getClassNameButton = get_class_name_factory_default("ViewportButton", styles_module_default18);
@@ -33158,11 +33347,11 @@ var ViewportButton = ({
33158
33347
  onClick
33159
33348
  }) => {
33160
33349
  const { state } = useAppContext();
33161
- const [isActive, setIsActive] = (0, import_react26.useState)(false);
33162
- (0, import_react26.useEffect)(() => {
33350
+ const [isActive, setIsActive] = (0, import_react27.useState)(false);
33351
+ (0, import_react27.useEffect)(() => {
33163
33352
  setIsActive(width === state.ui.viewports.current.width);
33164
33353
  }, [width, state.ui.viewports.current.width]);
33165
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
33354
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33166
33355
  IconButton,
33167
33356
  {
33168
33357
  title,
@@ -33171,7 +33360,7 @@ var ViewportButton = ({
33171
33360
  e.stopPropagation();
33172
33361
  onClick({ width, height });
33173
33362
  },
33174
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: getClassNameButton("inner"), children })
33363
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: getClassNameButton("inner"), children })
33175
33364
  }
33176
33365
  ) });
33177
33366
  };
@@ -33195,7 +33384,7 @@ var ViewportControls = ({
33195
33384
  const defaultsContainAutoZoom = defaultZoomOptions.find(
33196
33385
  (option) => option.value === autoZoom
33197
33386
  );
33198
- const zoomOptions = (0, import_react26.useMemo)(
33387
+ const zoomOptions = (0, import_react27.useMemo)(
33199
33388
  () => [
33200
33389
  ...defaultZoomOptions,
33201
33390
  ...defaultsContainAutoZoom ? [] : [
@@ -33207,8 +33396,8 @@ var ViewportControls = ({
33207
33396
  ].filter((a) => a.value <= autoZoom).sort((a, b) => a.value > b.value ? 1 : -1),
33208
33397
  [autoZoom]
33209
33398
  );
33210
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: getClassName23(), children: [
33211
- viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
33399
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassName23(), children: [
33400
+ viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33212
33401
  ViewportButton,
33213
33402
  {
33214
33403
  height: viewport.height,
@@ -33219,8 +33408,8 @@ var ViewportControls = ({
33219
33408
  },
33220
33409
  i
33221
33410
  )),
33222
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: getClassName23("divider") }),
33223
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
33411
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName23("divider") }),
33412
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33224
33413
  IconButton,
33225
33414
  {
33226
33415
  title: "Zoom viewport out",
@@ -33234,10 +33423,10 @@ var ViewportControls = ({
33234
33423
  )].value
33235
33424
  );
33236
33425
  },
33237
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ZoomOut, { size: 16 })
33426
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ZoomOut, { size: 16 })
33238
33427
  }
33239
33428
  ),
33240
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
33429
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33241
33430
  IconButton,
33242
33431
  {
33243
33432
  title: "Zoom viewport in",
@@ -33251,11 +33440,11 @@ var ViewportControls = ({
33251
33440
  )].value
33252
33441
  );
33253
33442
  },
33254
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ZoomIn, { size: 16 })
33443
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ZoomIn, { size: 16 })
33255
33444
  }
33256
33445
  ),
33257
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: getClassName23("divider") }),
33258
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
33446
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName23("divider") }),
33447
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33259
33448
  "select",
33260
33449
  {
33261
33450
  className: getClassName23("zoomSelect"),
@@ -33263,7 +33452,7 @@ var ViewportControls = ({
33263
33452
  onChange: (e) => {
33264
33453
  onZoom(parseFloat(e.currentTarget.value));
33265
33454
  },
33266
- children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
33455
+ children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33267
33456
  "option",
33268
33457
  {
33269
33458
  value: option.value,
@@ -33311,24 +33500,24 @@ var getZoomConfig = (uiViewport, frame, zoom) => {
33311
33500
  };
33312
33501
 
33313
33502
  // components/Puck/components/Canvas/index.tsx
33314
- var import_jsx_runtime33 = require("react/jsx-runtime");
33503
+ var import_jsx_runtime34 = require("react/jsx-runtime");
33315
33504
  var getClassName24 = get_class_name_factory_default("PuckCanvas", styles_module_default19);
33316
33505
  var ZOOM_ON_CHANGE = true;
33317
33506
  var Canvas = () => {
33318
33507
  const { status, iframe } = useAppContext();
33319
33508
  const { dispatch, state, overrides, setUi, zoomConfig, setZoomConfig } = useAppContext();
33320
33509
  const { ui } = state;
33321
- const frameRef = (0, import_react27.useRef)(null);
33322
- const [showTransition, setShowTransition] = (0, import_react27.useState)(false);
33323
- const defaultRender = (0, import_react27.useMemo)(() => {
33324
- const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children });
33510
+ const frameRef = (0, import_react28.useRef)(null);
33511
+ const [showTransition, setShowTransition] = (0, import_react28.useState)(false);
33512
+ const defaultRender = (0, import_react28.useMemo)(() => {
33513
+ const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, { children });
33325
33514
  return PuckDefault;
33326
33515
  }, []);
33327
- const CustomPreview = (0, import_react27.useMemo)(
33516
+ const CustomPreview = (0, import_react28.useMemo)(
33328
33517
  () => overrides.preview || defaultRender,
33329
33518
  [overrides]
33330
33519
  );
33331
- const getFrameDimensions = (0, import_react27.useCallback)(() => {
33520
+ const getFrameDimensions = (0, import_react28.useCallback)(() => {
33332
33521
  if (frameRef.current) {
33333
33522
  const frame = frameRef.current;
33334
33523
  const box = getBox(frame);
@@ -33336,7 +33525,7 @@ var Canvas = () => {
33336
33525
  }
33337
33526
  return { width: 0, height: 0 };
33338
33527
  }, [frameRef]);
33339
- const resetAutoZoom = (0, import_react27.useCallback)(
33528
+ const resetAutoZoom = (0, import_react28.useCallback)(
33340
33529
  (ui2 = state.ui) => {
33341
33530
  if (frameRef.current) {
33342
33531
  setZoomConfig(
@@ -33346,11 +33535,11 @@ var Canvas = () => {
33346
33535
  },
33347
33536
  [frameRef, zoomConfig, state.ui]
33348
33537
  );
33349
- (0, import_react27.useEffect)(() => {
33538
+ (0, import_react28.useEffect)(() => {
33350
33539
  setShowTransition(false);
33351
33540
  resetAutoZoom();
33352
33541
  }, [frameRef, ui.leftSideBarVisible, ui.rightSideBarVisible]);
33353
- (0, import_react27.useEffect)(() => {
33542
+ (0, import_react28.useEffect)(() => {
33354
33543
  const { height: frameHeight } = getFrameDimensions();
33355
33544
  if (ui.viewports.current.height === "auto") {
33356
33545
  setZoomConfig(__spreadProps(__spreadValues({}, zoomConfig), {
@@ -33358,7 +33547,7 @@ var Canvas = () => {
33358
33547
  }));
33359
33548
  }
33360
33549
  }, [zoomConfig.zoom]);
33361
- (0, import_react27.useEffect)(() => {
33550
+ (0, import_react28.useEffect)(() => {
33362
33551
  const observer = new ResizeObserver(() => {
33363
33552
  setShowTransition(false);
33364
33553
  resetAutoZoom();
@@ -33370,7 +33559,7 @@ var Canvas = () => {
33370
33559
  observer.disconnect();
33371
33560
  };
33372
33561
  }, []);
33373
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
33562
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
33374
33563
  "div",
33375
33564
  {
33376
33565
  className: getClassName24({
@@ -33382,7 +33571,7 @@ var Canvas = () => {
33382
33571
  recordHistory: true
33383
33572
  }),
33384
33573
  children: [
33385
- ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33574
+ ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33386
33575
  ViewportControls,
33387
33576
  {
33388
33577
  autoZoom: zoomConfig.autoZoom,
@@ -33407,7 +33596,7 @@ var Canvas = () => {
33407
33596
  }
33408
33597
  }
33409
33598
  ) }),
33410
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("inner"), ref: frameRef, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
33599
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("inner"), ref: frameRef, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33411
33600
  "div",
33412
33601
  {
33413
33602
  className: getClassName24("root"),
@@ -33419,7 +33608,7 @@ var Canvas = () => {
33419
33608
  overflow: iframe.enabled ? void 0 : "auto"
33420
33609
  },
33421
33610
  suppressHydrationWarning: true,
33422
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Preview, {}) })
33611
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Preview, {}) })
33423
33612
  }
33424
33613
  ) })
33425
33614
  ]
@@ -33428,7 +33617,7 @@ var Canvas = () => {
33428
33617
  };
33429
33618
 
33430
33619
  // components/Puck/index.tsx
33431
- var import_jsx_runtime34 = require("react/jsx-runtime");
33620
+ var import_jsx_runtime35 = require("react/jsx-runtime");
33432
33621
  var getClassName25 = get_class_name_factory_default("Puck", styles_module_default8);
33433
33622
  function Puck({
33434
33623
  children,
@@ -33451,10 +33640,10 @@ function Puck({
33451
33640
  }) {
33452
33641
  var _a;
33453
33642
  const historyStore = useHistoryStore();
33454
- const [reducer] = (0, import_react28.useState)(
33643
+ const [reducer] = (0, import_react29.useState)(
33455
33644
  () => createReducer({ config, record: historyStore.record })
33456
33645
  );
33457
- const [initialAppState] = (0, import_react28.useState)(() => {
33646
+ const [initialAppState] = (0, import_react29.useState)(() => {
33458
33647
  var _a2, _b, _c, _d, _e;
33459
33648
  const initial = __spreadValues(__spreadValues({}, defaultAppState.ui), initialUi);
33460
33649
  let clientUiState = {};
@@ -33506,7 +33695,7 @@ function Puck({
33506
33695
  })
33507
33696
  });
33508
33697
  });
33509
- const [appState, dispatch] = (0, import_react28.useReducer)(
33698
+ const [appState, dispatch] = (0, import_react29.useReducer)(
33510
33699
  reducer,
33511
33700
  flushZones(initialAppState)
33512
33701
  );
@@ -33517,9 +33706,9 @@ function Puck({
33517
33706
  config,
33518
33707
  dispatch
33519
33708
  );
33520
- const [menuOpen, setMenuOpen] = (0, import_react28.useState)(false);
33709
+ const [menuOpen, setMenuOpen] = (0, import_react29.useState)(false);
33521
33710
  const { itemSelector, leftSideBarVisible, rightSideBarVisible } = ui;
33522
- const setItemSelector = (0, import_react28.useCallback)(
33711
+ const setItemSelector = (0, import_react29.useCallback)(
33523
33712
  (newItemSelector) => {
33524
33713
  if (newItemSelector === itemSelector)
33525
33714
  return;
@@ -33532,21 +33721,21 @@ function Puck({
33532
33721
  [itemSelector]
33533
33722
  );
33534
33723
  const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
33535
- (0, import_react28.useEffect)(() => {
33724
+ (0, import_react29.useEffect)(() => {
33536
33725
  if (onChange)
33537
33726
  onChange(data);
33538
33727
  }, [data]);
33539
33728
  const { onDragStartOrUpdate, placeholderStyle } = usePlaceholderStyle();
33540
- const [draggedItem, setDraggedItem] = (0, import_react28.useState)();
33729
+ const [draggedItem, setDraggedItem] = (0, import_react29.useState)();
33541
33730
  const rootProps = data.root.props || data.root;
33542
- (0, import_react28.useEffect)(() => {
33731
+ (0, import_react29.useEffect)(() => {
33543
33732
  if (Object.keys(data.root).length > 0 && !data.root.props) {
33544
33733
  console.error(
33545
33734
  "Warning: Defining props on `root` is deprecated. Please use `root.props`. This will be a breaking change in a future release."
33546
33735
  );
33547
33736
  }
33548
33737
  }, []);
33549
- const toggleSidebars = (0, import_react28.useCallback)(
33738
+ const toggleSidebars = (0, import_react29.useCallback)(
33550
33739
  (sidebar) => {
33551
33740
  const widerViewport = window.matchMedia("(min-width: 638px)").matches;
33552
33741
  const sideBarVisible = sidebar === "left" ? leftSideBarVisible : rightSideBarVisible;
@@ -33560,7 +33749,7 @@ function Puck({
33560
33749
  },
33561
33750
  [dispatch, leftSideBarVisible, rightSideBarVisible]
33562
33751
  );
33563
- (0, import_react28.useEffect)(() => {
33752
+ (0, import_react29.useEffect)(() => {
33564
33753
  if (!window.matchMedia("(min-width: 638px)").matches) {
33565
33754
  dispatch({
33566
33755
  type: "setUi",
@@ -33583,11 +33772,11 @@ function Puck({
33583
33772
  window.removeEventListener("resize", handleResize);
33584
33773
  };
33585
33774
  }, []);
33586
- const defaultRender = (0, import_react28.useMemo)(() => {
33587
- const PuckDefault = ({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, { children: children2 });
33775
+ const defaultRender = (0, import_react29.useMemo)(() => {
33776
+ const PuckDefault = ({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_jsx_runtime35.Fragment, { children: children2 });
33588
33777
  return PuckDefault;
33589
33778
  }, []);
33590
- const defaultHeaderRender = (0, import_react28.useMemo)(() => {
33779
+ const defaultHeaderRender = (0, import_react29.useMemo)(() => {
33591
33780
  if (renderHeader) {
33592
33781
  console.warn(
33593
33782
  "`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
@@ -33595,45 +33784,45 @@ function Puck({
33595
33784
  const RenderHeader = (_a2) => {
33596
33785
  var _b = _a2, { actions } = _b, props = __objRest(_b, ["actions"]);
33597
33786
  const Comp = renderHeader;
33598
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState, children: actions }));
33787
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState, children: actions }));
33599
33788
  };
33600
33789
  return RenderHeader;
33601
33790
  }
33602
33791
  return defaultRender;
33603
33792
  }, [renderHeader]);
33604
- const defaultHeaderActionsRender = (0, import_react28.useMemo)(() => {
33793
+ const defaultHeaderActionsRender = (0, import_react29.useMemo)(() => {
33605
33794
  if (renderHeaderActions) {
33606
33795
  console.warn(
33607
33796
  "`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
33608
33797
  );
33609
33798
  const RenderHeader = (props) => {
33610
33799
  const Comp = renderHeaderActions;
33611
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState }));
33800
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState }));
33612
33801
  };
33613
33802
  return RenderHeader;
33614
33803
  }
33615
33804
  return defaultRender;
33616
33805
  }, [renderHeader]);
33617
- const loadedOverrides = (0, import_react28.useMemo)(() => {
33806
+ const loadedOverrides = (0, import_react29.useMemo)(() => {
33618
33807
  return loadOverrides({ overrides, plugins });
33619
33808
  }, [plugins]);
33620
- const CustomPuck = (0, import_react28.useMemo)(
33809
+ const CustomPuck = (0, import_react29.useMemo)(
33621
33810
  () => loadedOverrides.puck || defaultRender,
33622
33811
  [loadedOverrides]
33623
33812
  );
33624
- const CustomHeader = (0, import_react28.useMemo)(
33813
+ const CustomHeader = (0, import_react29.useMemo)(
33625
33814
  () => loadedOverrides.header || defaultHeaderRender,
33626
33815
  [loadedOverrides]
33627
33816
  );
33628
- const CustomHeaderActions = (0, import_react28.useMemo)(
33817
+ const CustomHeaderActions = (0, import_react29.useMemo)(
33629
33818
  () => loadedOverrides.headerActions || defaultHeaderActionsRender,
33630
33819
  [loadedOverrides]
33631
33820
  );
33632
- const [mounted, setMounted] = (0, import_react28.useState)(false);
33633
- (0, import_react28.useEffect)(() => {
33821
+ const [mounted, setMounted] = (0, import_react29.useState)(false);
33822
+ (0, import_react29.useEffect)(() => {
33634
33823
  setMounted(true);
33635
33824
  }, []);
33636
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "Puck", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33825
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "Puck", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33637
33826
  AppProvider,
33638
33827
  {
33639
33828
  value: {
@@ -33648,7 +33837,7 @@ function Puck({
33648
33837
  viewports,
33649
33838
  iframe
33650
33839
  },
33651
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33840
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33652
33841
  DragDropContext,
33653
33842
  {
33654
33843
  autoScrollerOptions: { disabled: dnd == null ? void 0 : dnd.disableAutoScroll },
@@ -33704,7 +33893,7 @@ function Puck({
33704
33893
  });
33705
33894
  }
33706
33895
  },
33707
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33896
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33708
33897
  DropZoneProvider,
33709
33898
  {
33710
33899
  value: {
@@ -33718,7 +33907,7 @@ function Puck({
33718
33907
  mode: "edit",
33719
33908
  areaId: "root"
33720
33909
  },
33721
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CustomPuck, { children: children || /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
33910
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(CustomPuck, { children: children || /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
33722
33911
  "div",
33723
33912
  {
33724
33913
  className: getClassName25({
@@ -33728,65 +33917,62 @@ function Puck({
33728
33917
  rightSideBarVisible
33729
33918
  }),
33730
33919
  children: [
33731
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("layout"), children: [
33732
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33920
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("layout"), children: [
33921
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33733
33922
  CustomHeader,
33734
33923
  {
33735
- actions: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
33736
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CustomHeaderActions, {}),
33737
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33738
- Button,
33739
- {
33740
- onClick: () => {
33741
- onPublish && onPublish(data);
33742
- },
33743
- icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Globe, { size: "14px" }),
33744
- children: "Publish"
33745
- }
33746
- )
33747
- ] }),
33748
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("header", { className: getClassName25("header"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("headerInner"), children: [
33749
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("headerToggle"), children: [
33750
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName25("leftSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33924
+ actions: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_jsx_runtime35.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33925
+ Button,
33926
+ {
33927
+ onClick: () => {
33928
+ onPublish && onPublish(data);
33929
+ },
33930
+ icon: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Globe, { size: "14px" }),
33931
+ children: "Publish"
33932
+ }
33933
+ ) }) }),
33934
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("header", { className: getClassName25("header"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("headerInner"), children: [
33935
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("headerToggle"), children: [
33936
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("leftSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33751
33937
  IconButton,
33752
33938
  {
33753
33939
  onClick: () => {
33754
33940
  toggleSidebars("left");
33755
33941
  },
33756
33942
  title: "Toggle left sidebar",
33757
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(PanelLeft, { focusable: "false" })
33943
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(PanelLeft, { focusable: "false" })
33758
33944
  }
33759
33945
  ) }),
33760
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName25("rightSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33946
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("rightSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33761
33947
  IconButton,
33762
33948
  {
33763
33949
  onClick: () => {
33764
33950
  toggleSidebars("right");
33765
33951
  },
33766
33952
  title: "Toggle right sidebar",
33767
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(PanelRight, { focusable: "false" })
33953
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(PanelRight, { focusable: "false" })
33768
33954
  }
33769
33955
  ) })
33770
33956
  ] }),
33771
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName25("headerTitle"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(Heading, { rank: 2, size: "xs", children: [
33957
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("headerTitle"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Heading, { rank: 2, size: "xs", children: [
33772
33958
  headerTitle || rootProps.title || "Page",
33773
- headerPath && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
33959
+ headerPath && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [
33774
33960
  " ",
33775
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("code", { className: getClassName25("headerPath"), children: headerPath })
33961
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("code", { className: getClassName25("headerPath"), children: headerPath })
33776
33962
  ] })
33777
33963
  ] }) }),
33778
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("headerTools"), children: [
33779
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName25("menuButton"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33964
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("headerTools"), children: [
33965
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("menuButton"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33780
33966
  IconButton,
33781
33967
  {
33782
33968
  onClick: () => {
33783
33969
  return setMenuOpen(!menuOpen);
33784
33970
  },
33785
33971
  title: "Toggle menu bar",
33786
- children: menuOpen ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronUp, { focusable: "false" }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronDown, { focusable: "false" })
33972
+ children: menuOpen ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronUp, { focusable: "false" }) : /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronDown, { focusable: "false" })
33787
33973
  }
33788
33974
  ) }),
33789
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
33975
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33790
33976
  MenuBar,
33791
33977
  {
33792
33978
  appState,
@@ -33794,7 +33980,16 @@ function Puck({
33794
33980
  dispatch,
33795
33981
  onPublish,
33796
33982
  menuOpen,
33797
- renderHeaderActions: () => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CustomHeaderActions, {}),
33983
+ renderHeaderActions: () => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33984
+ Button,
33985
+ {
33986
+ onClick: () => {
33987
+ onPublish && onPublish(data);
33988
+ },
33989
+ icon: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Globe, { size: "14px" }),
33990
+ children: "Publish"
33991
+ }
33992
+ ) }),
33798
33993
  setMenuOpen
33799
33994
  }
33800
33995
  )
@@ -33802,23 +33997,23 @@ function Puck({
33802
33997
  ] }) })
33803
33998
  }
33804
33999
  ),
33805
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("leftSideBar"), children: [
33806
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SidebarSection, { title: "Components", noBorderTop: true, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Components, {}) }),
33807
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SidebarSection, { title: "Outline", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Outline, {}) })
34000
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("leftSideBar"), children: [
34001
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SidebarSection, { title: "Components", noBorderTop: true, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Components, {}) }),
34002
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SidebarSection, { title: "Outline", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Outline, {}) })
33808
34003
  ] }),
33809
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Canvas, {}),
33810
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName25("rightSideBar"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
34004
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Canvas, {}),
34005
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("rightSideBar"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33811
34006
  SidebarSection,
33812
34007
  {
33813
34008
  noPadding: true,
33814
34009
  noBorderTop: true,
33815
34010
  showBreadcrumbs: true,
33816
34011
  title: selectedItem ? (_a = config.components[selectedItem.type]["label"]) != null ? _a : selectedItem.type : "Page",
33817
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Fields, {})
34012
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Fields, {})
33818
34013
  }
33819
34014
  ) })
33820
34015
  ] }),
33821
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
34016
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
33822
34017
  "div",
33823
34018
  {
33824
34019
  id: "puck-portal-root",
@@ -33842,7 +34037,7 @@ Puck.Preview = Preview;
33842
34037
 
33843
34038
  // components/Render/index.tsx
33844
34039
  init_react_import();
33845
- var import_jsx_runtime35 = require("react/jsx-runtime");
34040
+ var import_jsx_runtime36 = require("react/jsx-runtime");
33846
34041
  function Render({
33847
34042
  config,
33848
34043
  data
@@ -33851,7 +34046,7 @@ function Render({
33851
34046
  const rootProps = data.root.props || data.root;
33852
34047
  const title = (rootProps == null ? void 0 : rootProps.title) || "";
33853
34048
  if ((_a = config.root) == null ? void 0 : _a.render) {
33854
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(DropZoneProvider, { value: { data, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
34049
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZoneProvider, { value: { data, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
33855
34050
  config.root.render,
33856
34051
  __spreadProps(__spreadValues({}, rootProps), {
33857
34052
  puck: {
@@ -33860,11 +34055,11 @@ function Render({
33860
34055
  title,
33861
34056
  editMode: false,
33862
34057
  id: "puck-root",
33863
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(DropZone, { zone: rootDroppableId })
34058
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZone, { zone: rootDroppableId })
33864
34059
  })
33865
34060
  ) });
33866
34061
  }
33867
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(DropZoneProvider, { value: { data, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(DropZone, { zone: rootDroppableId }) });
34062
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZoneProvider, { value: { data, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZone, { zone: rootDroppableId }) });
33868
34063
  }
33869
34064
 
33870
34065
  // lib/migrate.ts
package/dist/rsc.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { C as Config, D as Data } from './Config-09628f3c.js';
2
+ import { C as Config, D as Data } from './Config-550396e1.js';
3
3
  import 'react';
4
4
 
5
5
  declare function Render<UserConfig extends Config = Config>({ config, data, }: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@measured/puck",
3
- "version": "0.14.3-canary.9a1cc7c",
3
+ "version": "0.15.0-canary.480467a",
4
4
  "author": "Measured Corporation Ltd <hello@measured.co>",
5
5
  "repository": "measuredco/puck",
6
6
  "bugs": "https://github.com/measuredco/puck/issues",
@@ -60,9 +60,10 @@
60
60
  "typescript": "^4.5.2"
61
61
  },
62
62
  "dependencies": {
63
- "@measured/auto-frame-component": "0.1.7",
64
63
  "@measured/dnd": "16.6.0-canary.4cba1d1",
65
64
  "deep-diff": "^1.0.2",
65
+ "object-hash": "^3.0.0",
66
+ "react-frame-component": "^5.2.6",
66
67
  "react-hotkeys-hook": "^4.4.1",
67
68
  "react-spinners": "^0.13.8",
68
69
  "ua-parser-js": "^1.0.37",