@measured/puck 0.16.1-canary.8fcf0d8 → 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.js CHANGED
@@ -243,7 +243,7 @@ var get_class_name_factory_default = getClassNameFactory;
243
243
 
244
244
  // css-module:/home/runner/work/puck/puck/packages/core/components/ActionBar/styles.module.css#css-module
245
245
  init_react_import();
246
- var styles_module_default = { "ActionBar": "_ActionBar_fp58q_1", "ActionBar-actionsLabel": "_ActionBar-actionsLabel_fp58q_16", "ActionBar-group": "_ActionBar-group_fp58q_29", "ActionBar-action": "_ActionBar-action_fp58q_16" };
246
+ var styles_module_default = { "ActionBar": "_ActionBar_1xlbj_1", "ActionBar-actionsLabel": "_ActionBar-actionsLabel_1xlbj_16", "ActionBar-group": "_ActionBar-group_1xlbj_29", "ActionBar-action": "_ActionBar-action_1xlbj_16" };
247
247
 
248
248
  // components/ActionBar/index.tsx
249
249
  var import_jsx_runtime = require("react/jsx-runtime");
@@ -764,16 +764,15 @@ var useResolvedPermissions = (config, appState, globalPermissions, setComponentL
764
764
  const resolveDataForItem = (0, import_react4.useCallback)(
765
765
  (item, force = false) => __async(void 0, null, function* () {
766
766
  var _a, _b, _c;
767
- setComponentLoading == null ? void 0 : setComponentLoading(item.props.id);
768
767
  const componentConfig = item.type === "root" ? config.root : config.components[item.type];
769
768
  if (!componentConfig) {
770
- unsetComponentLoading == null ? void 0 : unsetComponentLoading(item.props.id);
771
769
  return;
772
770
  }
773
771
  const initialPermissions = __spreadValues(__spreadValues({}, globalPermissions), componentConfig.permissions);
774
772
  if (componentConfig.resolvePermissions) {
775
773
  const changed = getChanged(item, (_a = cache3[item.props.id]) == null ? void 0 : _a.lastData);
776
774
  if (Object.values(changed).some((el) => el === true) || force) {
775
+ setComponentLoading == null ? void 0 : setComponentLoading(item.props.id);
777
776
  const resolvedPermissions2 = yield componentConfig.resolvePermissions(
778
777
  item,
779
778
  {
@@ -793,9 +792,9 @@ var useResolvedPermissions = (config, appState, globalPermissions, setComponentL
793
792
  setResolvedPermissions((p) => __spreadProps(__spreadValues({}, p), {
794
793
  [item.props.id]: resolvedPermissions2
795
794
  }));
795
+ unsetComponentLoading == null ? void 0 : unsetComponentLoading(item.props.id);
796
796
  }
797
797
  }
798
- unsetComponentLoading == null ? void 0 : unsetComponentLoading(item.props.id);
799
798
  }),
800
799
  [config, globalPermissions, appState, cache3]
801
800
  );
@@ -1447,6 +1446,9 @@ var ArrayField = ({
1447
1446
  e.stopPropagation();
1448
1447
  setHovering(false);
1449
1448
  },
1449
+ onClick: (e) => {
1450
+ e.preventDefault();
1451
+ },
1450
1452
  children: [
1451
1453
  localState.arrayState.items.map((item, i) => {
1452
1454
  const { _arrayId = `${id}-${i}`, _originalIndex = i } = item;
@@ -2325,9 +2327,12 @@ function AutoFieldInternal(props) {
2325
2327
  const Render2 = render[field.type];
2326
2328
  return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Render2, __spreadProps(__spreadValues({}, mergedProps), { children }));
2327
2329
  }
2330
+ var RECENT_CHANGE_TIMEOUT = 200;
2328
2331
  function AutoFieldPrivate(props) {
2329
2332
  const { value, onChange } = props;
2330
2333
  const [localValue, setLocalValue] = (0, import_react13.useState)(value);
2334
+ const [recentlyChanged, setRecentlyChanged] = (0, import_react13.useState)(false);
2335
+ const timeoutRef = (0, import_react13.useRef)();
2331
2336
  const onChangeDb = (0, import_use_debounce.useDebouncedCallback)(
2332
2337
  (val, ui) => {
2333
2338
  onChange(val, ui);
@@ -2337,10 +2342,17 @@ function AutoFieldPrivate(props) {
2337
2342
  );
2338
2343
  const onChangeLocal = (0, import_react13.useCallback)((val, ui) => {
2339
2344
  setLocalValue(val);
2345
+ setRecentlyChanged(true);
2346
+ clearTimeout(timeoutRef.current);
2347
+ timeoutRef.current = setTimeout(() => {
2348
+ setRecentlyChanged(false);
2349
+ }, RECENT_CHANGE_TIMEOUT);
2340
2350
  onChangeDb(val, ui);
2341
2351
  }, []);
2342
2352
  (0, import_react13.useEffect)(() => {
2343
- setLocalValue(value);
2353
+ if (!recentlyChanged) {
2354
+ setLocalValue(value);
2355
+ }
2344
2356
  }, [value]);
2345
2357
  const localProps = {
2346
2358
  value: localValue,
@@ -2348,8 +2360,16 @@ function AutoFieldPrivate(props) {
2348
2360
  };
2349
2361
  return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(AutoFieldInternal, __spreadValues(__spreadValues({}, props), localProps));
2350
2362
  }
2351
- var DefaultLabel = (props) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", __spreadValues({}, props));
2352
2363
  function AutoField(props) {
2364
+ const DefaultLabel = (0, import_react13.useMemo)(() => {
2365
+ const DefaultLabel2 = (labelProps) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2366
+ "div",
2367
+ __spreadProps(__spreadValues({}, labelProps), {
2368
+ className: getClassName15({ readOnly: props.readOnly })
2369
+ })
2370
+ );
2371
+ return DefaultLabel2;
2372
+ }, [props.readOnly]);
2353
2373
  return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(AutoFieldInternal, __spreadProps(__spreadValues({}, props), { Label: DefaultLabel }));
2354
2374
  }
2355
2375
 
@@ -2488,13 +2508,8 @@ var isIos = () => [
2488
2508
  ].includes(navigator.platform) || // iPad on iOS 13 detection
2489
2509
  navigator.userAgent.includes("Mac") && "ontouchend" in document;
2490
2510
 
2491
- // components/DefaultOverride/index.tsx
2492
- init_react_import();
2493
- var import_jsx_runtime22 = require("react/jsx-runtime");
2494
- var DefaultOverride = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_jsx_runtime22.Fragment, { children });
2495
-
2496
2511
  // components/DraggableComponent/index.tsx
2497
- var import_jsx_runtime23 = require("react/jsx-runtime");
2512
+ var import_jsx_runtime22 = require("react/jsx-runtime");
2498
2513
  var getClassName17 = get_class_name_factory_default("DraggableComponent", styles_module_default11);
2499
2514
  var space = 8;
2500
2515
  var actionsOverlayTop = space * 6.5;
@@ -2503,7 +2518,7 @@ var actionsRight = space;
2503
2518
  var DefaultActionBar = ({
2504
2519
  label,
2505
2520
  children
2506
- }) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar, { label, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar.Group, { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DefaultOverride, { children }) }) });
2521
+ }) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ActionBar, { label, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ActionBar.Group, { children }) });
2507
2522
  var DraggableComponent = ({
2508
2523
  children,
2509
2524
  id,
@@ -2543,14 +2558,14 @@ var DraggableComponent = ({
2543
2558
  const permissions = getPermissions({
2544
2559
  item: selectedItem
2545
2560
  });
2546
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2561
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2547
2562
  El,
2548
2563
  {
2549
2564
  draggableId: id,
2550
2565
  index,
2551
2566
  isDragDisabled,
2552
2567
  disableSecondaryAnimation,
2553
- children: (provided, snapshot) => /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
2568
+ children: (provided, snapshot) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
2554
2569
  "div",
2555
2570
  __spreadProps(__spreadValues(__spreadValues({
2556
2571
  ref: provided.innerRef
@@ -2573,15 +2588,15 @@ var DraggableComponent = ({
2573
2588
  onClick,
2574
2589
  children: [
2575
2590
  debug,
2576
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName17("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Loader, {}) }),
2577
- isSelected && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2591
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: getClassName17("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Loader, {}) }),
2592
+ isSelected && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2578
2593
  "div",
2579
2594
  {
2580
2595
  className: getClassName17("actionsOverlay"),
2581
2596
  style: {
2582
2597
  top: actionsOverlayTop / zoomConfig.zoom
2583
2598
  },
2584
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2599
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2585
2600
  "div",
2586
2601
  {
2587
2602
  className: getClassName17("actions"),
@@ -2590,16 +2605,16 @@ var DraggableComponent = ({
2590
2605
  top: actionsTop / zoomConfig.zoom,
2591
2606
  right: actionsRight / zoomConfig.zoom
2592
2607
  },
2593
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(CustomActionBar, { label, children: [
2594
- permissions.duplicate && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar.Action, { onClick: onDuplicate, label: "Duplicate", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Copy, { size: 16 }) }),
2595
- permissions.delete && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar.Action, { onClick: onDelete, label: "Delete", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Trash, { size: 16 }) })
2608
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(CustomActionBar, { label, children: [
2609
+ permissions.duplicate && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ActionBar.Action, { onClick: onDuplicate, label: "Duplicate", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Copy, { size: 16 }) }),
2610
+ permissions.delete && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ActionBar.Action, { onClick: onDelete, label: "Delete", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Trash, { size: 16 }) })
2596
2611
  ] })
2597
2612
  }
2598
2613
  )
2599
2614
  }
2600
2615
  ),
2601
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName17("overlay") }),
2602
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName17("contents"), children })
2616
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: getClassName17("overlay") }),
2617
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: getClassName17("contents"), children })
2603
2618
  ]
2604
2619
  })
2605
2620
  )
@@ -2630,7 +2645,7 @@ var getZoneId = (zoneCompound) => {
2630
2645
  };
2631
2646
 
2632
2647
  // components/DropZone/context.tsx
2633
- var import_jsx_runtime24 = require("react/jsx-runtime");
2648
+ var import_jsx_runtime23 = require("react/jsx-runtime");
2634
2649
  var dropZoneContext = (0, import_react17.createContext)(null);
2635
2650
  var DropZoneProvider = ({
2636
2651
  children,
@@ -2708,7 +2723,7 @@ var DropZoneProvider = ({
2708
2723
  [value, setPathData]
2709
2724
  );
2710
2725
  const [zoneWillDrag, setZoneWillDrag] = (0, import_react17.useState)("");
2711
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_jsx_runtime24.Fragment, { children: value && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2726
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_jsx_runtime23.Fragment, { children: value && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2712
2727
  dropZoneContext.Provider,
2713
2728
  {
2714
2729
  value: __spreadValues({
@@ -2734,7 +2749,7 @@ var DropZoneProvider = ({
2734
2749
  };
2735
2750
 
2736
2751
  // components/DropZone/index.tsx
2737
- var import_jsx_runtime25 = require("react/jsx-runtime");
2752
+ var import_jsx_runtime24 = require("react/jsx-runtime");
2738
2753
  var getClassName18 = get_class_name_factory_default("DropZone", styles_module_default12);
2739
2754
  function DropZoneEdit({ zone, allow, disallow, style }) {
2740
2755
  var _a;
@@ -2789,7 +2804,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2789
2804
  const draggingOverArea = userIsDragging && zoneArea === draggedSourceArea;
2790
2805
  const draggingNewComponent = draggedSourceId == null ? void 0 : draggedSourceId.startsWith("component-list");
2791
2806
  if (!(ctx == null ? void 0 : ctx.config) || !ctx.setHoveringArea || !ctx.setHoveringZone || !ctx.setHoveringComponent || !ctx.setItemSelector || !ctx.registerPath || !ctx.dispatch) {
2792
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { children: "DropZone requires context to work." });
2807
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { children: "DropZone requires context to work." });
2793
2808
  }
2794
2809
  const {
2795
2810
  hoveringArea = "root",
@@ -2830,7 +2845,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2830
2845
  }
2831
2846
  const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
2832
2847
  const isAreaSelected = selectedItem && zoneArea === selectedItem.props.id;
2833
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2848
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2834
2849
  "div",
2835
2850
  {
2836
2851
  className: getClassName18({
@@ -2847,14 +2862,14 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2847
2862
  onMouseUp: () => {
2848
2863
  setZoneWillDrag("");
2849
2864
  },
2850
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2865
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2851
2866
  Droppable,
2852
2867
  {
2853
2868
  droppableId: zoneCompound,
2854
2869
  direction: "vertical",
2855
2870
  isDropDisabled: !isEnabled,
2856
2871
  children: (provided, snapshot) => {
2857
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
2872
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
2858
2873
  "div",
2859
2874
  __spreadProps(__spreadValues({}, (provided || { droppableProps: {} }).droppableProps), {
2860
2875
  className: getClassName18("content"),
@@ -2884,7 +2899,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2884
2899
  "draggable-"
2885
2900
  )[1] === componentId;
2886
2901
  const containsZone = areasWithZones ? areasWithZones[componentId] : false;
2887
- const Render2 = config.components[item.type] ? config.components[item.type].render : () => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { style: { padding: 48, textAlign: "center" }, children: [
2902
+ const Render2 = config.components[item.type] ? config.components[item.type].render : () => /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { style: { padding: 48, textAlign: "center" }, children: [
2888
2903
  "No configuration for ",
2889
2904
  item.type
2890
2905
  ] });
@@ -2896,19 +2911,19 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2896
2911
  appContext2.state.data
2897
2912
  )
2898
2913
  }).drag;
2899
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
2914
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
2900
2915
  "div",
2901
2916
  {
2902
2917
  className: getClassName18("item"),
2903
2918
  style: { zIndex: isDragging ? 1 : void 0 },
2904
2919
  children: [
2905
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2920
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2906
2921
  DropZoneProvider,
2907
2922
  {
2908
2923
  value: __spreadProps(__spreadValues({}, ctx), {
2909
2924
  areaId: componentId
2910
2925
  }),
2911
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2926
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2912
2927
  DraggableComponent,
2913
2928
  {
2914
2929
  label,
@@ -2976,12 +2991,12 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2976
2991
  style: {
2977
2992
  pointerEvents: userIsDragging && draggingNewComponent ? "all" : void 0
2978
2993
  },
2979
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName18("renderWrapper"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Render2, __spreadValues({}, defaultedProps)) })
2994
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: getClassName18("renderWrapper"), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Render2, __spreadValues({}, defaultedProps)) })
2980
2995
  }
2981
2996
  )
2982
2997
  }
2983
2998
  ),
2984
- userIsDragging && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2999
+ userIsDragging && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2985
3000
  "div",
2986
3001
  {
2987
3002
  className: getClassName18("hitbox"),
@@ -2998,7 +3013,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
2998
3013
  );
2999
3014
  }),
3000
3015
  provided == null ? void 0 : provided.placeholder,
3001
- (snapshot == null ? void 0 : snapshot.isDraggingOver) && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
3016
+ (snapshot == null ? void 0 : snapshot.isDraggingOver) && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3002
3017
  "div",
3003
3018
  {
3004
3019
  "data-puck-placeholder": true,
@@ -3030,14 +3045,14 @@ function DropZoneRender({ zone }) {
3030
3045
  zoneCompound = `${areaId}:${zone}`;
3031
3046
  content = setupZone(data, zoneCompound).zones[zoneCompound];
3032
3047
  }
3033
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_jsx_runtime25.Fragment, { children: content.map((item) => {
3048
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_jsx_runtime24.Fragment, { children: content.map((item) => {
3034
3049
  const Component = config.components[item.type];
3035
3050
  if (Component) {
3036
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
3051
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3037
3052
  DropZoneProvider,
3038
3053
  {
3039
3054
  value: { data, config, areaId: item.props.id },
3040
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
3055
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3041
3056
  Component.render,
3042
3057
  __spreadProps(__spreadValues({}, item.props), {
3043
3058
  puck: { renderDropZone: DropZone }
@@ -3053,9 +3068,9 @@ function DropZoneRender({ zone }) {
3053
3068
  function DropZone(props) {
3054
3069
  const ctx = (0, import_react18.useContext)(dropZoneContext);
3055
3070
  if ((ctx == null ? void 0 : ctx.mode) === "edit") {
3056
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DropZoneEdit, __spreadValues({}, props));
3071
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(DropZoneEdit, __spreadValues({}, props));
3057
3072
  }
3058
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DropZoneRender, __spreadValues({}, props));
3073
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(DropZoneRender, __spreadValues({}, props));
3059
3074
  }
3060
3075
 
3061
3076
  // components/Puck/index.tsx
@@ -3197,7 +3212,7 @@ var useBreadcrumbs = (renderCount) => {
3197
3212
  };
3198
3213
 
3199
3214
  // components/SidebarSection/index.tsx
3200
- var import_jsx_runtime26 = require("react/jsx-runtime");
3215
+ var import_jsx_runtime25 = require("react/jsx-runtime");
3201
3216
  var getClassName19 = get_class_name_factory_default("SidebarSection", styles_module_default13);
3202
3217
  var SidebarSection = ({
3203
3218
  children,
@@ -3210,15 +3225,15 @@ var SidebarSection = ({
3210
3225
  }) => {
3211
3226
  const { setUi } = useAppContext();
3212
3227
  const breadcrumbs = useBreadcrumbs(1);
3213
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
3228
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
3214
3229
  "div",
3215
3230
  {
3216
3231
  className: getClassName19({ noBorderTop, noPadding }),
3217
3232
  style: { background },
3218
3233
  children: [
3219
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("title"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName19("breadcrumbs"), children: [
3220
- showBreadcrumbs ? breadcrumbs.map((breadcrumb, i) => /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName19("breadcrumb"), children: [
3221
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
3234
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("title"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName19("breadcrumbs"), children: [
3235
+ showBreadcrumbs ? breadcrumbs.map((breadcrumb, i) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName19("breadcrumb"), children: [
3236
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
3222
3237
  "button",
3223
3238
  {
3224
3239
  type: "button",
@@ -3227,12 +3242,12 @@ var SidebarSection = ({
3227
3242
  children: breadcrumb.label
3228
3243
  }
3229
3244
  ),
3230
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ChevronRight, { size: 16 })
3245
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChevronRight, { size: 16 })
3231
3246
  ] }, i)) : null,
3232
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("heading"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Heading, { rank: "2", size: "xs", children: title }) })
3247
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("heading"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Heading, { rank: "2", size: "xs", children: title }) })
3233
3248
  ] }) }),
3234
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("content"), children }),
3235
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Loader, { size: 32 }) })
3249
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("content"), children }),
3250
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Loader, { size: 32 }) })
3236
3251
  ]
3237
3252
  }
3238
3253
  );
@@ -3613,7 +3628,7 @@ init_react_import();
3613
3628
  var styles_module_default14 = { "MenuBar": "_MenuBar_8pf8c_1", "MenuBar--menuOpen": "_MenuBar--menuOpen_8pf8c_14", "MenuBar-inner": "_MenuBar-inner_8pf8c_29", "MenuBar-history": "_MenuBar-history_8pf8c_45" };
3614
3629
 
3615
3630
  // components/MenuBar/index.tsx
3616
- var import_jsx_runtime27 = require("react/jsx-runtime");
3631
+ var import_jsx_runtime26 = require("react/jsx-runtime");
3617
3632
  var getClassName20 = get_class_name_factory_default("MenuBar", styles_module_default14);
3618
3633
  function MenuBar({
3619
3634
  appState,
@@ -3627,7 +3642,7 @@ function MenuBar({
3627
3642
  history: { back, forward, historyStore }
3628
3643
  } = useAppContext();
3629
3644
  const { hasFuture = false, hasPast = false } = historyStore || {};
3630
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3645
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
3631
3646
  "div",
3632
3647
  {
3633
3648
  className: getClassName20({ menuOpen }),
@@ -3641,12 +3656,12 @@ function MenuBar({
3641
3656
  setMenuOpen(false);
3642
3657
  }
3643
3658
  },
3644
- children: /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: getClassName20("inner"), children: [
3645
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: getClassName20("history"), children: [
3646
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(IconButton, { title: "undo", disabled: !hasPast, onClick: back, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Undo2, { size: 21 }) }),
3647
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(IconButton, { title: "redo", disabled: !hasFuture, onClick: forward, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Redo2, { size: 21 }) })
3659
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName20("inner"), children: [
3660
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName20("history"), children: [
3661
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(IconButton, { title: "undo", disabled: !hasPast, onClick: back, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Undo2, { size: 21 }) }),
3662
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(IconButton, { title: "redo", disabled: !hasFuture, onClick: forward, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Redo2, { size: 21 }) })
3648
3663
  ] }),
3649
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_jsx_runtime27.Fragment, { children: renderHeaderActions && renderHeaderActions({
3664
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { children: renderHeaderActions && renderHeaderActions({
3650
3665
  state: appState,
3651
3666
  dispatch
3652
3667
  }) })
@@ -3668,7 +3683,7 @@ var styles_module_default16 = { "PuckFields": "_PuckFields_jp3lw_1", "PuckFields
3668
3683
 
3669
3684
  // components/Puck/components/Fields/index.tsx
3670
3685
  var import_react21 = require("react");
3671
- var import_jsx_runtime28 = require("react/jsx-runtime");
3686
+ var import_jsx_runtime27 = require("react/jsx-runtime");
3672
3687
  var getClassName21 = get_class_name_factory_default("PuckFields", styles_module_default16);
3673
3688
  var defaultPageFields = {
3674
3689
  title: { type: "text" }
@@ -3676,10 +3691,10 @@ var defaultPageFields = {
3676
3691
  var DefaultFields = ({
3677
3692
  children
3678
3693
  }) => {
3679
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_jsx_runtime28.Fragment, { children });
3694
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_jsx_runtime27.Fragment, { children });
3680
3695
  };
3681
3696
  var useResolvedFields = () => {
3682
- var _a;
3697
+ var _a, _b;
3683
3698
  const { selectedItem, state, config } = useAppContext();
3684
3699
  const { data } = state;
3685
3700
  const rootFields = ((_a = config.root) == null ? void 0 : _a.fields) || defaultPageFields;
@@ -3691,14 +3706,17 @@ var useResolvedFields = () => {
3691
3706
  const [fieldsLoading, setFieldsLoading] = (0, import_react21.useState)(false);
3692
3707
  const defaultResolveFields = (_componentData, _params) => defaultFields;
3693
3708
  const componentData = selectedItem ? selectedItem : { props: rootProps, readOnly: data.root.readOnly };
3709
+ const hasComponentResolver = selectedItem && (componentConfig == null ? void 0 : componentConfig.resolveFields);
3710
+ const hasRootResolver = !selectedItem && ((_b = config.root) == null ? void 0 : _b.resolveFields);
3711
+ const hasResolver = hasComponentResolver || hasRootResolver;
3694
3712
  const resolveFields = (0, import_react21.useCallback)(
3695
3713
  (..._0) => __async(void 0, [..._0], function* (fields = {}) {
3696
- var _a2, _b, _c;
3714
+ var _a2;
3697
3715
  const lastData = ((_a2 = lastSelectedData.props) == null ? void 0 : _a2.id) === componentData.props.id ? lastSelectedData : null;
3698
3716
  const changed = getChanged(componentData, lastData);
3699
3717
  setLastSelectedData(componentData);
3700
- if (selectedItem && (componentConfig == null ? void 0 : componentConfig.resolveFields)) {
3701
- return yield componentConfig == null ? void 0 : componentConfig.resolveFields(
3718
+ if (hasComponentResolver) {
3719
+ return yield componentConfig.resolveFields(
3702
3720
  componentData,
3703
3721
  {
3704
3722
  changed,
@@ -3709,8 +3727,8 @@ var useResolvedFields = () => {
3709
3727
  }
3710
3728
  );
3711
3729
  }
3712
- if (!selectedItem && ((_b = config.root) == null ? void 0 : _b.resolveFields)) {
3713
- return yield (_c = config.root) == null ? void 0 : _c.resolveFields(componentData, {
3730
+ if (hasRootResolver) {
3731
+ return yield config.root.resolveFields(componentData, {
3714
3732
  changed,
3715
3733
  fields,
3716
3734
  lastFields: resolvedFields,
@@ -3728,12 +3746,16 @@ var useResolvedFields = () => {
3728
3746
  [data, config, componentData, selectedItem, resolvedFields, state]
3729
3747
  );
3730
3748
  (0, import_react21.useEffect)(() => {
3731
- setFieldsLoading(true);
3732
- resolveFields(defaultFields).then((fields) => {
3733
- setResolvedFields(fields || {});
3734
- setFieldsLoading(false);
3735
- });
3736
- }, [data, defaultFields, state.ui.itemSelector]);
3749
+ if (hasResolver) {
3750
+ setFieldsLoading(true);
3751
+ resolveFields(defaultFields).then((fields) => {
3752
+ setResolvedFields(fields || {});
3753
+ setFieldsLoading(false);
3754
+ });
3755
+ } else {
3756
+ setResolvedFields(defaultFields);
3757
+ }
3758
+ }, [data, defaultFields, state.ui.itemSelector, hasResolver]);
3737
3759
  return [resolvedFields, fieldsLoading];
3738
3760
  };
3739
3761
  var Fields = () => {
@@ -3755,7 +3777,7 @@ var Fields = () => {
3755
3777
  const isLoading = fieldsResolving || componentResolving;
3756
3778
  const rootProps = data.root.props || data.root;
3757
3779
  const Wrapper = (0, import_react21.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
3758
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
3780
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
3759
3781
  "form",
3760
3782
  {
3761
3783
  className: getClassName21(),
@@ -3763,7 +3785,7 @@ var Fields = () => {
3763
3785
  e.preventDefault();
3764
3786
  },
3765
3787
  children: [
3766
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
3788
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
3767
3789
  const field = fields[fieldName];
3768
3790
  if (!(field == null ? void 0 : field.type)) return null;
3769
3791
  const onChange = (value, updatedUi) => {
@@ -3833,7 +3855,7 @@ var Fields = () => {
3833
3855
  const { edit } = getPermissions({
3834
3856
  item: selectedItem
3835
3857
  });
3836
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3858
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3837
3859
  AutoFieldPrivate,
3838
3860
  {
3839
3861
  field,
@@ -3850,7 +3872,7 @@ var Fields = () => {
3850
3872
  const { edit } = getPermissions({
3851
3873
  root: true
3852
3874
  });
3853
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3875
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3854
3876
  AutoFieldPrivate,
3855
3877
  {
3856
3878
  field,
@@ -3864,7 +3886,7 @@ var Fields = () => {
3864
3886
  );
3865
3887
  }
3866
3888
  }) }),
3867
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName21("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName21("loadingOverlayInner"), children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Loader, { size: 16 }) }) })
3889
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: getClassName21("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: getClassName21("loadingOverlayInner"), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Loader, { size: 16 }) }) })
3868
3890
  ]
3869
3891
  }
3870
3892
  );
@@ -3885,7 +3907,7 @@ init_react_import();
3885
3907
  var styles_module_default17 = { "ComponentList": "_ComponentList_odh9d_1", "ComponentList--isExpanded": "_ComponentList--isExpanded_odh9d_5", "ComponentList-content": "_ComponentList-content_odh9d_9", "ComponentList-title": "_ComponentList-title_odh9d_17", "ComponentList-titleIcon": "_ComponentList-titleIcon_odh9d_53" };
3886
3908
 
3887
3909
  // components/ComponentList/index.tsx
3888
- var import_jsx_runtime29 = require("react/jsx-runtime");
3910
+ var import_jsx_runtime28 = require("react/jsx-runtime");
3889
3911
  var getClassName22 = get_class_name_factory_default("ComponentList", styles_module_default17);
3890
3912
  var ComponentListItem = ({
3891
3913
  name,
@@ -3896,7 +3918,7 @@ var ComponentListItem = ({
3896
3918
  const canInsert = getPermissions({
3897
3919
  type: name
3898
3920
  }).insert;
3899
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3921
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3900
3922
  Drawer.Item,
3901
3923
  {
3902
3924
  label,
@@ -3914,8 +3936,8 @@ var ComponentList = ({
3914
3936
  }) => {
3915
3937
  const { config, state, setUi } = useAppContext();
3916
3938
  const { expanded = true } = state.ui.componentList[id] || {};
3917
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: getClassName22({ isExpanded: expanded }), children: [
3918
- title && /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
3939
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: getClassName22({ isExpanded: expanded }), children: [
3940
+ title && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
3919
3941
  "button",
3920
3942
  {
3921
3943
  type: "button",
@@ -3929,14 +3951,14 @@ var ComponentList = ({
3929
3951
  }),
3930
3952
  title: expanded ? `Collapse${title ? ` ${title}` : ""}` : `Expand${title ? ` ${title}` : ""}`,
3931
3953
  children: [
3932
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { children: title }),
3933
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: getClassName22("titleIcon"), children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ChevronUp, { size: 12 }) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ChevronDown, { size: 12 }) })
3954
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { children: title }),
3955
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName22("titleIcon"), children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ChevronUp, { size: 12 }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ChevronDown, { size: 12 }) })
3934
3956
  ]
3935
3957
  }
3936
3958
  ),
3937
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: getClassName22("content"), children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Drawer, { droppableId: title, children: children || Object.keys(config.components).map((componentKey, i) => {
3959
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName22("content"), children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Drawer, { droppableId: title, children: children || Object.keys(config.components).map((componentKey, i) => {
3938
3960
  var _a;
3939
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3961
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3940
3962
  ComponentListItem,
3941
3963
  {
3942
3964
  label: (_a = config.components[componentKey]["label"]) != null ? _a : componentKey,
@@ -3951,7 +3973,7 @@ var ComponentList = ({
3951
3973
  ComponentList.Item = ComponentListItem;
3952
3974
 
3953
3975
  // lib/use-component-list.tsx
3954
- var import_jsx_runtime30 = require("react/jsx-runtime");
3976
+ var import_jsx_runtime29 = require("react/jsx-runtime");
3955
3977
  var useComponentList = (config, ui) => {
3956
3978
  const [componentList, setComponentList] = (0, import_react22.useState)();
3957
3979
  (0, import_react22.useEffect)(() => {
@@ -3964,7 +3986,7 @@ var useComponentList = (config, ui) => {
3964
3986
  if (category.visible === false || !category.components) {
3965
3987
  return null;
3966
3988
  }
3967
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3989
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3968
3990
  ComponentList,
3969
3991
  {
3970
3992
  id: categoryKey,
@@ -3973,7 +3995,7 @@ var useComponentList = (config, ui) => {
3973
3995
  var _a2;
3974
3996
  matchedComponents.push(componentName);
3975
3997
  const componentConf = config.components[componentName] || {};
3976
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3998
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3977
3999
  ComponentList.Item,
3978
4000
  {
3979
4001
  label: (_a2 = componentConf["label"]) != null ? _a2 : componentName,
@@ -3993,7 +4015,7 @@ var useComponentList = (config, ui) => {
3993
4015
  );
3994
4016
  if (remainingComponents.length > 0 && !((_a = ui.componentList.other) == null ? void 0 : _a.components) && ((_b = ui.componentList.other) == null ? void 0 : _b.visible) !== false) {
3995
4017
  _componentList.push(
3996
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4018
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3997
4019
  ComponentList,
3998
4020
  {
3999
4021
  id: "other",
@@ -4001,7 +4023,7 @@ var useComponentList = (config, ui) => {
4001
4023
  children: remainingComponents.map((componentName, i) => {
4002
4024
  var _a2;
4003
4025
  const componentConf = config.components[componentName] || {};
4004
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4026
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4005
4027
  ComponentList.Item,
4006
4028
  {
4007
4029
  name: componentName,
@@ -4024,12 +4046,12 @@ var useComponentList = (config, ui) => {
4024
4046
 
4025
4047
  // components/Puck/components/Components/index.tsx
4026
4048
  var import_react23 = require("react");
4027
- var import_jsx_runtime31 = require("react/jsx-runtime");
4049
+ var import_jsx_runtime30 = require("react/jsx-runtime");
4028
4050
  var Components = () => {
4029
4051
  const { config, state, overrides } = useAppContext();
4030
4052
  const componentList = useComponentList(config, state.ui);
4031
4053
  const Wrapper = (0, import_react23.useMemo)(() => overrides.components || "div", [overrides]);
4032
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ComponentList, { id: "all" }) });
4054
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ComponentList, { id: "all" }) });
4033
4055
  };
4034
4056
 
4035
4057
  // components/Puck/components/Preview/index.tsx
@@ -4041,7 +4063,7 @@ init_react_import();
4041
4063
  var import_react24 = require("react");
4042
4064
  var import_object_hash = __toESM(require("object-hash"));
4043
4065
  var import_react_dom2 = require("react-dom");
4044
- var import_jsx_runtime32 = require("react/jsx-runtime");
4066
+ var import_jsx_runtime31 = require("react/jsx-runtime");
4045
4067
  var styleSelector = 'style, link[rel="stylesheet"]';
4046
4068
  var collectStyles = (doc) => {
4047
4069
  const collected = [];
@@ -4241,7 +4263,7 @@ var CopyHostStyles = ({
4241
4263
  observer.disconnect();
4242
4264
  };
4243
4265
  }, []);
4244
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_jsx_runtime32.Fragment, { children });
4266
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_jsx_runtime31.Fragment, { children });
4245
4267
  };
4246
4268
  var autoFrameContext = (0, import_react24.createContext)({});
4247
4269
  var useFrame = () => (0, import_react24.useContext)(autoFrameContext);
@@ -4273,7 +4295,7 @@ function AutoFrame(_a) {
4273
4295
  setMountTarget((_a2 = ref.current.contentDocument) == null ? void 0 : _a2.getElementById("frame-root"));
4274
4296
  }
4275
4297
  }, [ref, loaded]);
4276
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4298
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4277
4299
  "iframe",
4278
4300
  __spreadProps(__spreadValues({}, props), {
4279
4301
  className,
@@ -4283,7 +4305,7 @@ function AutoFrame(_a) {
4283
4305
  onLoad: () => {
4284
4306
  setLoaded(true);
4285
4307
  },
4286
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(autoFrameContext.Provider, { value: ctx, children: loaded && mountTarget && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(CopyHostStyles, { debug, onStylesLoaded, children: (0, import_react_dom2.createPortal)(children, mountTarget) }) })
4308
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(autoFrameContext.Provider, { value: ctx, children: loaded && mountTarget && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(CopyHostStyles, { debug, onStylesLoaded, children: (0, import_react_dom2.createPortal)(children, mountTarget) }) })
4287
4309
  })
4288
4310
  );
4289
4311
  }
@@ -4295,7 +4317,7 @@ init_react_import();
4295
4317
  var styles_module_default18 = { "PuckPreview": "_PuckPreview_rxwlr_1", "PuckPreview-frame": "_PuckPreview-frame_rxwlr_5" };
4296
4318
 
4297
4319
  // components/Puck/components/Preview/index.tsx
4298
- var import_jsx_runtime33 = require("react/jsx-runtime");
4320
+ var import_jsx_runtime32 = require("react/jsx-runtime");
4299
4321
  var getClassName23 = get_class_name_factory_default("PuckPreview", styles_module_default18);
4300
4322
  var Preview = ({ id = "puck-preview" }) => {
4301
4323
  const { config, dispatch, state, setStatus, iframe, overrides } = useAppContext();
@@ -4304,13 +4326,13 @@ var Preview = ({ id = "puck-preview" }) => {
4304
4326
  var _a, _b;
4305
4327
  return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadValues({
4306
4328
  id: "puck-root"
4307
- }, pageProps)) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children: pageProps.children });
4329
+ }, pageProps)) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_jsx_runtime32.Fragment, { children: pageProps.children });
4308
4330
  },
4309
4331
  [config.root]
4310
4332
  );
4311
4333
  const Frame = (0, import_react25.useMemo)(() => overrides.iframe, [overrides]);
4312
4334
  const rootProps = state.data.root.props || state.data.root;
4313
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4335
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4314
4336
  "div",
4315
4337
  {
4316
4338
  className: getClassName23(),
@@ -4318,7 +4340,7 @@ var Preview = ({ id = "puck-preview" }) => {
4318
4340
  onClick: () => {
4319
4341
  dispatch({ type: "setUi", ui: __spreadProps(__spreadValues({}, state.ui), { itemSelector: null }) });
4320
4342
  },
4321
- children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4343
+ children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4322
4344
  AutoFrame_default,
4323
4345
  {
4324
4346
  id: "preview-frame",
@@ -4327,27 +4349,27 @@ var Preview = ({ id = "puck-preview" }) => {
4327
4349
  onStylesLoaded: () => {
4328
4350
  setStatus("READY");
4329
4351
  },
4330
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(autoFrameContext.Consumer, { children: ({ document: document2 }) => {
4331
- const inner = /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4352
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(autoFrameContext.Consumer, { children: ({ document: document2 }) => {
4353
+ const inner = /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4332
4354
  Page,
4333
4355
  __spreadProps(__spreadValues({}, rootProps), {
4334
4356
  puck: { renderDropZone: DropZone, isEditing: true },
4335
4357
  editMode: true,
4336
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DropZone, { zone: rootDroppableId })
4358
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DropZone, { zone: rootDroppableId })
4337
4359
  })
4338
4360
  );
4339
4361
  if (Frame) {
4340
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Frame, { document: document2, children: inner });
4362
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Frame, { document: document2, children: inner });
4341
4363
  }
4342
4364
  return inner;
4343
4365
  } })
4344
4366
  }
4345
- ) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { id: "preview-frame", className: getClassName23("frame"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4367
+ ) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { id: "preview-frame", className: getClassName23("frame"), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4346
4368
  Page,
4347
4369
  __spreadProps(__spreadValues({}, rootProps), {
4348
4370
  puck: { renderDropZone: DropZone, isEditing: true },
4349
4371
  editMode: true,
4350
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DropZone, { zone: rootDroppableId })
4372
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DropZone, { zone: rootDroppableId })
4351
4373
  })
4352
4374
  ) })
4353
4375
  }
@@ -4411,7 +4433,7 @@ var isChildOfZone = (item, maybeChild, ctx) => {
4411
4433
  };
4412
4434
 
4413
4435
  // components/LayerTree/index.tsx
4414
- var import_jsx_runtime34 = require("react/jsx-runtime");
4436
+ var import_jsx_runtime33 = require("react/jsx-runtime");
4415
4437
  var getClassName24 = get_class_name_factory_default("LayerTree", styles_module_default19);
4416
4438
  var getClassNameLayer = get_class_name_factory_default("Layer", styles_module_default19);
4417
4439
  var LayerTree = ({
@@ -4425,14 +4447,14 @@ var LayerTree = ({
4425
4447
  }) => {
4426
4448
  const zones = data.zones || {};
4427
4449
  const ctx = (0, import_react26.useContext)(dropZoneContext);
4428
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
4429
- label && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName24("zoneTitle"), children: [
4430
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Layers, { size: "16" }) }),
4450
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_jsx_runtime33.Fragment, { children: [
4451
+ label && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassName24("zoneTitle"), children: [
4452
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Layers, { size: "16" }) }),
4431
4453
  " ",
4432
4454
  label
4433
4455
  ] }),
4434
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("ul", { className: getClassName24(), children: [
4435
- zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("helper"), children: "No items" }),
4456
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("ul", { className: getClassName24(), children: [
4457
+ zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName24("helper"), children: "No items" }),
4436
4458
  zoneContent.map((item, i) => {
4437
4459
  var _a;
4438
4460
  const isSelected = (itemSelector == null ? void 0 : itemSelector.index) === i && (itemSelector.zone === zone || itemSelector.zone === rootDroppableId && !zone);
@@ -4450,7 +4472,7 @@ var LayerTree = ({
4450
4472
  const childIsSelected = isChildOfZone(item, selectedItem, ctx);
4451
4473
  const componentConfig = config.components[item.type];
4452
4474
  const label2 = (_a = componentConfig == null ? void 0 : componentConfig["label"]) != null ? _a : item.type.toString();
4453
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
4475
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
4454
4476
  "li",
4455
4477
  {
4456
4478
  className: getClassNameLayer({
@@ -4460,7 +4482,7 @@ var LayerTree = ({
4460
4482
  childIsSelected
4461
4483
  }),
4462
4484
  children: [
4463
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
4485
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
4464
4486
  "button",
4465
4487
  {
4466
4488
  type: "button",
@@ -4493,22 +4515,22 @@ var LayerTree = ({
4493
4515
  setHoveringComponent(null);
4494
4516
  },
4495
4517
  children: [
4496
- containsZone && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4518
+ containsZone && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4497
4519
  "div",
4498
4520
  {
4499
4521
  className: getClassNameLayer("chevron"),
4500
4522
  title: isSelected ? "Collapse" : "Expand",
4501
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronDown, { size: "12" })
4523
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ChevronDown, { size: "12" })
4502
4524
  }
4503
4525
  ),
4504
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassNameLayer("title"), children: [
4505
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(LayoutGrid, { size: "16" }) }),
4506
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("name"), children: label2 })
4526
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassNameLayer("title"), children: [
4527
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(LayoutGrid, { size: "16" }) }),
4528
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("name"), children: label2 })
4507
4529
  ] })
4508
4530
  ]
4509
4531
  }
4510
4532
  ) }),
4511
- containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4533
+ containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4512
4534
  LayerTree,
4513
4535
  {
4514
4536
  config,
@@ -4531,7 +4553,7 @@ var LayerTree = ({
4531
4553
 
4532
4554
  // components/Puck/components/Outline/index.tsx
4533
4555
  var import_react27 = require("react");
4534
- var import_jsx_runtime35 = require("react/jsx-runtime");
4556
+ var import_jsx_runtime34 = require("react/jsx-runtime");
4535
4557
  var Outline = () => {
4536
4558
  const { dispatch, state, overrides, config } = useAppContext();
4537
4559
  const { data, ui } = state;
@@ -4546,8 +4568,8 @@ var Outline = () => {
4546
4568
  []
4547
4569
  );
4548
4570
  const Wrapper = (0, import_react27.useMemo)(() => overrides.outline || "div", [overrides]);
4549
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [
4550
- (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4571
+ 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: [
4572
+ (ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4551
4573
  LayerTree,
4552
4574
  {
4553
4575
  config,
@@ -4560,7 +4582,7 @@ var Outline = () => {
4560
4582
  ),
4561
4583
  Object.entries(findZonesForArea(data, "root")).map(
4562
4584
  ([zoneKey, zone]) => {
4563
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4585
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4564
4586
  LayerTree,
4565
4587
  {
4566
4588
  config,
@@ -4817,11 +4839,11 @@ init_react_import();
4817
4839
  var styles_module_default20 = { "ViewportControls": "_ViewportControls_g1wgg_1", "ViewportControls-divider": "_ViewportControls-divider_g1wgg_15", "ViewportControls-zoomSelect": "_ViewportControls-zoomSelect_g1wgg_21", "ViewportButton--isActive": "_ViewportButton--isActive_g1wgg_34", "ViewportButton-inner": "_ViewportButton-inner_g1wgg_34" };
4818
4840
 
4819
4841
  // components/ViewportControls/index.tsx
4820
- var import_jsx_runtime36 = require("react/jsx-runtime");
4842
+ var import_jsx_runtime35 = require("react/jsx-runtime");
4821
4843
  var icons = {
4822
- Smartphone: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Smartphone, { size: 16 }),
4823
- Tablet: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Tablet, { size: 16 }),
4824
- Monitor: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Monitor, { size: 16 })
4844
+ Smartphone: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Smartphone, { size: 16 }),
4845
+ Tablet: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Tablet, { size: 16 }),
4846
+ Monitor: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Monitor, { size: 16 })
4825
4847
  };
4826
4848
  var getClassName25 = get_class_name_factory_default("ViewportControls", styles_module_default20);
4827
4849
  var getClassNameButton = get_class_name_factory_default("ViewportButton", styles_module_default20);
@@ -4837,7 +4859,7 @@ var ViewportButton = ({
4837
4859
  (0, import_react29.useEffect)(() => {
4838
4860
  setIsActive(width === state.ui.viewports.current.width);
4839
4861
  }, [width, state.ui.viewports.current.width]);
4840
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4862
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4841
4863
  IconButton,
4842
4864
  {
4843
4865
  title,
@@ -4846,7 +4868,7 @@ var ViewportButton = ({
4846
4868
  e.stopPropagation();
4847
4869
  onClick({ width, height });
4848
4870
  },
4849
- children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: getClassNameButton("inner"), children })
4871
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: getClassNameButton("inner"), children })
4850
4872
  }
4851
4873
  ) });
4852
4874
  };
@@ -4882,8 +4904,8 @@ var ViewportControls = ({
4882
4904
  ].filter((a) => a.value <= autoZoom).sort((a, b) => a.value > b.value ? 1 : -1),
4883
4905
  [autoZoom]
4884
4906
  );
4885
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: getClassName25(), children: [
4886
- viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4907
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25(), children: [
4908
+ viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4887
4909
  ViewportButton,
4888
4910
  {
4889
4911
  height: viewport.height,
@@ -4894,8 +4916,8 @@ var ViewportControls = ({
4894
4916
  },
4895
4917
  i
4896
4918
  )),
4897
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName25("divider") }),
4898
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4919
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("divider") }),
4920
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4899
4921
  IconButton,
4900
4922
  {
4901
4923
  title: "Zoom viewport out",
@@ -4909,10 +4931,10 @@ var ViewportControls = ({
4909
4931
  )].value
4910
4932
  );
4911
4933
  },
4912
- children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ZoomOut, { size: 16 })
4934
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ZoomOut, { size: 16 })
4913
4935
  }
4914
4936
  ),
4915
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4937
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4916
4938
  IconButton,
4917
4939
  {
4918
4940
  title: "Zoom viewport in",
@@ -4926,11 +4948,11 @@ var ViewportControls = ({
4926
4948
  )].value
4927
4949
  );
4928
4950
  },
4929
- children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ZoomIn, { size: 16 })
4951
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ZoomIn, { size: 16 })
4930
4952
  }
4931
4953
  ),
4932
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName25("divider") }),
4933
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4954
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("divider") }),
4955
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4934
4956
  "select",
4935
4957
  {
4936
4958
  className: getClassName25("zoomSelect"),
@@ -4938,7 +4960,7 @@ var ViewportControls = ({
4938
4960
  onChange: (e) => {
4939
4961
  onZoom(parseFloat(e.currentTarget.value));
4940
4962
  },
4941
- children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4963
+ children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
4942
4964
  "option",
4943
4965
  {
4944
4966
  value: option.value,
@@ -4953,7 +4975,7 @@ var ViewportControls = ({
4953
4975
 
4954
4976
  // css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Canvas/styles.module.css#css-module
4955
4977
  init_react_import();
4956
- var styles_module_default21 = { "PuckCanvas": "_PuckCanvas_esbg1_1", "PuckCanvas-controls": "_PuckCanvas-controls_esbg1_16", "PuckCanvas-inner": "_PuckCanvas-inner_esbg1_21", "PuckCanvas-root": "_PuckCanvas-root_esbg1_32", "PuckCanvas--ready": "_PuckCanvas--ready_esbg1_56", "PuckCanvas-loader": "_PuckCanvas-loader_esbg1_60", "PuckCanvas--showLoader": "_PuckCanvas--showLoader_esbg1_70" };
4978
+ var styles_module_default21 = { "PuckCanvas": "_PuckCanvas_avf1c_1", "PuckCanvas-controls": "_PuckCanvas-controls_avf1c_16", "PuckCanvas-inner": "_PuckCanvas-inner_avf1c_21", "PuckCanvas-root": "_PuckCanvas-root_avf1c_32", "PuckCanvas--ready": "_PuckCanvas--ready_avf1c_57", "PuckCanvas-loader": "_PuckCanvas-loader_avf1c_62", "PuckCanvas--showLoader": "_PuckCanvas--showLoader_avf1c_72" };
4957
4979
 
4958
4980
  // lib/get-zoom-config.ts
4959
4981
  init_react_import();
@@ -4986,7 +5008,7 @@ var getZoomConfig = (uiViewport, frame, zoom) => {
4986
5008
  };
4987
5009
 
4988
5010
  // components/Puck/components/Canvas/index.tsx
4989
- var import_jsx_runtime37 = require("react/jsx-runtime");
5011
+ var import_jsx_runtime36 = require("react/jsx-runtime");
4990
5012
  var getClassName26 = get_class_name_factory_default("PuckCanvas", styles_module_default21);
4991
5013
  var ZOOM_ON_CHANGE = true;
4992
5014
  var Canvas = () => {
@@ -4996,7 +5018,7 @@ var Canvas = () => {
4996
5018
  const frameRef = (0, import_react30.useRef)(null);
4997
5019
  const [showTransition, setShowTransition] = (0, import_react30.useState)(false);
4998
5020
  const defaultRender = (0, import_react30.useMemo)(() => {
4999
- const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children });
5021
+ const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_jsx_runtime36.Fragment, { children });
5000
5022
  return PuckDefault;
5001
5023
  }, []);
5002
5024
  const CustomPreview = (0, import_react30.useMemo)(
@@ -5057,7 +5079,7 @@ var Canvas = () => {
5057
5079
  setShowLoader(true);
5058
5080
  }, 500);
5059
5081
  }, []);
5060
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
5082
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
5061
5083
  "div",
5062
5084
  {
5063
5085
  className: getClassName26({
@@ -5070,7 +5092,7 @@ var Canvas = () => {
5070
5092
  recordHistory: true
5071
5093
  }),
5072
5094
  children: [
5073
- ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: getClassName26("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
5095
+ ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName26("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5074
5096
  ViewportControls,
5075
5097
  {
5076
5098
  autoZoom: zoomConfig.autoZoom,
@@ -5095,8 +5117,8 @@ var Canvas = () => {
5095
5117
  }
5096
5118
  }
5097
5119
  ) }),
5098
- /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: getClassName26("inner"), ref: frameRef, children: [
5099
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
5120
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: getClassName26("inner"), ref: frameRef, children: [
5121
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5100
5122
  "div",
5101
5123
  {
5102
5124
  className: getClassName26("root"),
@@ -5108,10 +5130,10 @@ var Canvas = () => {
5108
5130
  overflow: iframe.enabled ? void 0 : "auto"
5109
5131
  },
5110
5132
  suppressHydrationWarning: true,
5111
- children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Preview, {}) })
5133
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Preview, {}) })
5112
5134
  }
5113
5135
  ),
5114
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: getClassName26("loader"), children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Loader, { size: 24 }) })
5136
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName26("loader"), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Loader, { size: 24 }) })
5115
5137
  ] })
5116
5138
  ]
5117
5139
  }
@@ -5199,6 +5221,11 @@ var useLoadedOverrides = ({
5199
5221
  }, [plugins, overrides]);
5200
5222
  };
5201
5223
 
5224
+ // components/DefaultOverride/index.tsx
5225
+ init_react_import();
5226
+ var import_jsx_runtime37 = require("react/jsx-runtime");
5227
+ var DefaultOverride = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children });
5228
+
5202
5229
  // components/Puck/index.tsx
5203
5230
  var import_jsx_runtime38 = require("react/jsx-runtime");
5204
5231
  var getClassName27 = get_class_name_factory_default("Puck", styles_module_default15);