@measured/puck 0.21.0-canary.e9d5c0ea → 0.21.0-canary.f3ce0d72

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.
@@ -25,7 +25,7 @@ import {
25
25
  walkAppState,
26
26
  walkField,
27
27
  walkTree
28
- } from "./chunk-6SIKCDJJ.mjs";
28
+ } from "./chunk-FY5AZKYD.mjs";
29
29
 
30
30
  // ../../node_modules/classnames/index.js
31
31
  var require_classnames = __commonJS({
@@ -213,47 +213,6 @@ ActionBar.Action = Action;
213
213
  ActionBar.Label = Label;
214
214
  ActionBar.Group = Group;
215
215
 
216
- // components/IconButton/IconButton.tsx
217
- init_react_import();
218
- import { useState } from "react";
219
-
220
- // css-module:/home/runner/work/puck/puck/packages/core/components/IconButton/IconButton.module.css#css-module
221
- init_react_import();
222
- var IconButton_module_default = { "IconButton": "_IconButton_swpni_1", "IconButton--disabled": "_IconButton--disabled_swpni_20", "IconButton-title": "_IconButton-title_swpni_33" };
223
-
224
- // components/Loader/index.tsx
225
- init_react_import();
226
-
227
- // lib/index.ts
228
- init_react_import();
229
-
230
- // lib/filter.ts
231
- init_react_import();
232
-
233
- // lib/data/reorder.ts
234
- init_react_import();
235
- var reorder = (list, startIndex, endIndex) => {
236
- const result = Array.from(list);
237
- const [removed] = result.splice(startIndex, 1);
238
- result.splice(endIndex, 0, removed);
239
- return result;
240
- };
241
-
242
- // lib/data/replace.ts
243
- init_react_import();
244
- var replace = (list, index, newItem) => {
245
- const result = Array.from(list);
246
- result.splice(index, 1);
247
- result.splice(index, 0, newItem);
248
- return result;
249
- };
250
-
251
- // lib/use-reset-auto-zoom.ts
252
- init_react_import();
253
-
254
- // store/index.ts
255
- init_react_import();
256
-
257
216
  // reducer/index.ts
258
217
  init_react_import();
259
218
 
@@ -759,7 +718,46 @@ function createReducer({
759
718
  );
760
719
  }
761
720
 
721
+ // components/IconButton/IconButton.tsx
722
+ init_react_import();
723
+ import { useState } from "react";
724
+
725
+ // css-module:/home/runner/work/puck/puck/packages/core/components/IconButton/IconButton.module.css#css-module
726
+ init_react_import();
727
+ var IconButton_module_default = { "IconButton": "_IconButton_swpni_1", "IconButton--disabled": "_IconButton--disabled_swpni_20", "IconButton-title": "_IconButton-title_swpni_33" };
728
+
729
+ // components/Loader/index.tsx
730
+ init_react_import();
731
+
732
+ // lib/index.ts
733
+ init_react_import();
734
+
735
+ // lib/filter.ts
736
+ init_react_import();
737
+
738
+ // lib/data/reorder.ts
739
+ init_react_import();
740
+ var reorder = (list, startIndex, endIndex) => {
741
+ const result = Array.from(list);
742
+ const [removed] = result.splice(startIndex, 1);
743
+ result.splice(endIndex, 0, removed);
744
+ return result;
745
+ };
746
+
747
+ // lib/data/replace.ts
748
+ init_react_import();
749
+ var replace = (list, index, newItem) => {
750
+ const result = Array.from(list);
751
+ result.splice(index, 1);
752
+ result.splice(index, 0, newItem);
753
+ return result;
754
+ };
755
+
756
+ // lib/use-reset-auto-zoom.ts
757
+ init_react_import();
758
+
762
759
  // store/index.ts
760
+ init_react_import();
763
761
  import { create as create2, useStore } from "zustand";
764
762
  import { subscribeWithSelector as subscribeWithSelector2 } from "zustand/middleware";
765
763
  import { createContext, useContext } from "react";
@@ -1071,10 +1069,10 @@ var flattenData = (state, config) => {
1071
1069
 
1072
1070
  // store/slices/permissions.ts
1073
1071
  var createPermissionsSlice = (set, get) => {
1074
- const resolvePermissions = (..._0) => __async(void 0, [..._0], function* (params = {}, force) {
1072
+ const resolvePermissions = (..._0) => __async(null, [..._0], function* (params = {}, force) {
1075
1073
  const { state, permissions, config } = get();
1076
1074
  const { cache, globalPermissions } = permissions;
1077
- const resolveDataForItem = (item2, force2 = false) => __async(void 0, null, function* () {
1075
+ const resolveDataForItem = (item2, force2 = false) => __async(null, null, function* () {
1078
1076
  var _a, _b, _c;
1079
1077
  const { config: config2, state: appState, setComponentLoading } = get();
1080
1078
  const componentConfig = item2.type === "root" ? config2.root : config2.components[item2.type];
@@ -1129,13 +1127,13 @@ var createPermissionsSlice = (set, get) => {
1129
1127
  if (item) {
1130
1128
  yield resolveDataForItem(item, force);
1131
1129
  } else if (type) {
1132
- flattenData(state, config).filter((item2) => item2.type === type).map((item2) => __async(void 0, null, function* () {
1130
+ flattenData(state, config).filter((item2) => item2.type === type).map((item2) => __async(null, null, function* () {
1133
1131
  yield resolveDataForItem(item2, force);
1134
1132
  }));
1135
1133
  } else if (root) {
1136
1134
  resolveDataForRoot(force);
1137
1135
  } else {
1138
- flattenData(state, config).map((item2) => __async(void 0, null, function* () {
1136
+ flattenData(state, config).map((item2) => __async(null, null, function* () {
1139
1137
  yield resolveDataForItem(item2, force);
1140
1138
  }));
1141
1139
  }
@@ -1216,7 +1214,7 @@ var createFieldsSlice = (_set, _get) => {
1216
1214
  };
1217
1215
  var useRegisterFieldsSlice = (appStore, id) => {
1218
1216
  const resolveFields = useCallback(
1219
- (reset) => __async(void 0, null, function* () {
1217
+ (reset) => __async(null, null, function* () {
1220
1218
  var _a, _b;
1221
1219
  const { fields, lastResolvedData } = appStore.getState().fields;
1222
1220
  const metadata = appStore.getState().metadata;
@@ -1417,7 +1415,7 @@ var createAppStore = (initialAppStore) => create2()(
1417
1415
  const selectedItem = state.ui.itemSelector ? getItem(state.ui.itemSelector, state) : null;
1418
1416
  return __spreadProps(__spreadValues({}, s), { state, selectedItem });
1419
1417
  }),
1420
- resolveComponentData: (componentData, trigger) => __async(void 0, null, function* () {
1418
+ resolveComponentData: (componentData, trigger) => __async(null, null, function* () {
1421
1419
  const { config, metadata, setComponentLoading, permissions } = get();
1422
1420
  const timeouts = {};
1423
1421
  return yield resolveComponentData(
@@ -1428,7 +1426,7 @@ var createAppStore = (initialAppStore) => create2()(
1428
1426
  const id = "id" in item.props ? item.props.id : "root";
1429
1427
  timeouts[id] = setComponentLoading(id, true, 50);
1430
1428
  },
1431
- (item) => __async(void 0, null, function* () {
1429
+ (item) => __async(null, null, function* () {
1432
1430
  const id = "id" in item.props ? item.props.id : "root";
1433
1431
  if ("type" in item) {
1434
1432
  yield permissions.refreshPermissions({ item });
@@ -1440,7 +1438,7 @@ var createAppStore = (initialAppStore) => create2()(
1440
1438
  trigger
1441
1439
  );
1442
1440
  }),
1443
- resolveAndCommitData: () => __async(void 0, null, function* () {
1441
+ resolveAndCommitData: () => __async(null, null, function* () {
1444
1442
  const { config, state, dispatch, resolveComponentData: resolveComponentData2 } = get();
1445
1443
  walkAppState(
1446
1444
  state,
@@ -2534,7 +2532,7 @@ var collisionStore = createStore(() => ({
2534
2532
 
2535
2533
  // lib/dnd/collision/dynamic/index.ts
2536
2534
  var flushNext = "";
2537
- var createDynamicCollisionDetector = (dragAxis, midpointOffset = 0.05) => (input) => {
2535
+ var createDynamicCollisionDetector = (dragAxis, midpointOffset = 0.05) => ((input) => {
2538
2536
  var _a, _b, _c, _d, _e;
2539
2537
  const { dragOperation, droppable } = input;
2540
2538
  const { position } = dragOperation;
@@ -2627,7 +2625,7 @@ var createDynamicCollisionDetector = (dragAxis, midpointOffset = 0.05) => (input
2627
2625
  }
2628
2626
  collisionDebug(dragCenter, dropCenter, droppable.id.toString(), "hotpink");
2629
2627
  return null;
2630
- };
2628
+ });
2631
2629
 
2632
2630
  // components/Sortable/index.tsx
2633
2631
  import { useSortable } from "@dnd-kit/react/sortable";
@@ -3427,7 +3425,7 @@ var ExternalInput = ({
3427
3425
  }, [mappedData]);
3428
3426
  const [searchQuery, setSearchQuery] = useState6(field.initialQuery || "");
3429
3427
  const search = useCallback3(
3430
- (query, filters2) => __async(void 0, null, function* () {
3428
+ (query, filters2) => __async(null, null, function* () {
3431
3429
  setIsLoading(true);
3432
3430
  const cacheKey = `${id}-${query}-${JSON.stringify(filters2)}`;
3433
3431
  let listData;
@@ -3655,7 +3653,7 @@ var ExternalField = ({
3655
3653
  placeholder: ((_a = deprecatedField.adaptor) == null ? void 0 : _a.name) ? `Select from ${deprecatedField.adaptor.name}` : validField.placeholder || "Select data",
3656
3654
  mapProp: ((_b = deprecatedField.adaptor) == null ? void 0 : _b.mapProp) || validField.mapProp,
3657
3655
  mapRow: validField.mapRow,
3658
- fetchList: ((_c = deprecatedField.adaptor) == null ? void 0 : _c.fetchList) ? () => __async(void 0, null, function* () {
3656
+ fetchList: ((_c = deprecatedField.adaptor) == null ? void 0 : _c.fetchList) ? () => __async(null, null, function* () {
3659
3657
  return yield deprecatedField.adaptor.fetchList(
3660
3658
  deprecatedField.adaptorParams
3661
3659
  );
@@ -4027,6 +4025,7 @@ function AutoFieldInternal(props) {
4027
4025
  }
4028
4026
  return (_props) => null;
4029
4027
  }, [field.type]);
4028
+ const fieldKey = field.type === "custom" ? field.key : void 0;
4030
4029
  let FieldComponent = useMemo3(() => {
4031
4030
  if (field.type === "custom") {
4032
4031
  if (!field.render) {
@@ -4036,7 +4035,7 @@ function AutoFieldInternal(props) {
4036
4035
  } else if (field.type !== "slot") {
4037
4036
  return render[field.type];
4038
4037
  }
4039
- }, [field.type, render]);
4038
+ }, [field.type, fieldKey, render]);
4040
4039
  const { visible = true } = props.field;
4041
4040
  if (!visible) {
4042
4041
  return null;
@@ -5105,7 +5104,7 @@ var createNestedDroppablePlugin = ({ onChange }, id) => class NestedDroppablePlu
5105
5104
 
5106
5105
  // lib/insert-component.ts
5107
5106
  init_react_import();
5108
- var insertComponent = (componentType, zone, index, appStore) => __async(void 0, null, function* () {
5107
+ var insertComponent = (componentType, zone, index, appStore) => __async(null, null, function* () {
5109
5108
  const id = generateId(componentType);
5110
5109
  const insertActionData = {
5111
5110
  type: "insert",
@@ -5789,7 +5788,7 @@ import { useCallback as useCallback10 } from "react";
5789
5788
  function useRenderedCallback(callback, deps) {
5790
5789
  const manager = useDragDropManager();
5791
5790
  return useCallback10(
5792
- (...args) => __async(this, null, function* () {
5791
+ (...args) => __async(null, null, function* () {
5793
5792
  yield manager == null ? void 0 : manager.renderer.rendering;
5794
5793
  return callback(...args);
5795
5794
  }),
@@ -6056,7 +6055,7 @@ var InlineTextFieldInternal = ({
6056
6055
  ref.current.replaceChildren(value);
6057
6056
  }
6058
6057
  const cleanupPortal = registerOverlayPortal(ref.current);
6059
- const handleInput = (e) => __async(void 0, null, function* () {
6058
+ const handleInput = (e) => __async(null, null, function* () {
6060
6059
  var _a2;
6061
6060
  const appStore2 = appStoreApi.getState();
6062
6061
  const node = appStore2.state.indexes.nodes[componentId];
@@ -6717,7 +6716,7 @@ function createUsePuck() {
6717
6716
  }
6718
6717
  const result = useStore3(
6719
6718
  usePuckApi,
6720
- selector != null ? selector : (s) => s
6719
+ selector != null ? selector : ((s) => s)
6721
6720
  );
6722
6721
  return result;
6723
6722
  };
@@ -7284,7 +7283,7 @@ var DefaultFields = ({
7284
7283
  }) => {
7285
7284
  return /* @__PURE__ */ jsx37(Fragment10, { children });
7286
7285
  };
7287
- var createOnChange = (fieldName, appStore) => (value, updatedUi) => __async(void 0, null, function* () {
7286
+ var createOnChange = (fieldName, appStore) => (value, updatedUi) => __async(null, null, function* () {
7288
7287
  let currentProps;
7289
7288
  const { dispatch, state, selectedItem, resolveComponentData: resolveComponentData2 } = appStore.getState();
7290
7289
  const { data, ui } = state;
@@ -7513,7 +7512,7 @@ var CopyHostStyles = ({
7513
7512
  let elements = [];
7514
7513
  const hashes = {};
7515
7514
  const lookupEl = (el) => elements.findIndex((elementMap) => elementMap.original === el);
7516
- const mirrorEl = (el, inlineStyles = false) => __async(void 0, null, function* () {
7515
+ const mirrorEl = (el, inlineStyles = false) => __async(null, null, function* () {
7517
7516
  let mirror;
7518
7517
  if (el.nodeName === "LINK" && inlineStyles) {
7519
7518
  mirror = document.createElement("style");
@@ -7545,7 +7544,7 @@ var CopyHostStyles = ({
7545
7544
  }
7546
7545
  return mirror;
7547
7546
  });
7548
- const addEl = (el) => __async(void 0, null, function* () {
7547
+ const addEl = (el) => __async(null, null, function* () {
7549
7548
  const index = lookupEl(el);
7550
7549
  if (index > -1) {
7551
7550
  if (debug)
@@ -7618,7 +7617,7 @@ var CopyHostStyles = ({
7618
7617
  const parentBody = parentDocument.getElementsByTagName("body")[0];
7619
7618
  syncAttributes(parentBody, doc.body);
7620
7619
  Promise.all(
7621
- collectedStyles.map((styleNode, i) => __async(void 0, null, function* () {
7620
+ collectedStyles.map((styleNode, i) => __async(null, null, function* () {
7622
7621
  if (styleNode.nodeName === "LINK") {
7623
7622
  const linkHref = styleNode.href;
7624
7623
  if (hrefs.indexOf(linkHref) > -1) {
@@ -7931,7 +7930,7 @@ import { useEffect as useEffect29, useMemo as useMemo20, useState as useState25
7931
7930
 
7932
7931
  // css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Layout/styles.module.css#css-module
7933
7932
  init_react_import();
7934
- var styles_module_default22 = { "Puck": "_Puck_hv23j_19", "Puck-portal": "_Puck-portal_hv23j_31", "PuckLayout": "_PuckLayout_hv23j_36", "PuckLayout-inner": "_PuckLayout-inner_hv23j_40", "PuckLayout--mounted": "_PuckLayout--mounted_hv23j_73", "PuckLayout--mobilePanelHeightToggle": "_PuckLayout--mobilePanelHeightToggle_hv23j_77", "PuckLayout--leftSideBarVisible": "_PuckLayout--leftSideBarVisible_hv23j_77", "PuckLayout--isExpanded": "_PuckLayout--isExpanded_hv23j_83", "PuckLayout--mobilePanelHeightMinContent": "_PuckLayout--mobilePanelHeightMinContent_hv23j_101", "PuckLayout--rightSideBarVisible": "_PuckLayout--rightSideBarVisible_hv23j_128", "PuckLayout-mounted": "_PuckLayout-mounted_hv23j_147", "PuckLayout-nav": "_PuckLayout-nav_hv23j_188", "PuckLayout-header": "_PuckLayout-header_hv23j_204", "PuckPluginTab": "_PuckPluginTab_hv23j_218", "PuckPluginTab--visible": "_PuckPluginTab--visible_hv23j_224", "PuckPluginTab-body": "_PuckPluginTab-body_hv23j_229" };
7933
+ var styles_module_default22 = { "Puck": "_Puck_lqzmv_19", "Puck-portal": "_Puck-portal_lqzmv_32", "PuckLayout": "_PuckLayout_lqzmv_37", "PuckLayout-inner": "_PuckLayout-inner_lqzmv_41", "PuckLayout--mounted": "_PuckLayout--mounted_lqzmv_74", "PuckLayout--mobilePanelHeightToggle": "_PuckLayout--mobilePanelHeightToggle_lqzmv_78", "PuckLayout--leftSideBarVisible": "_PuckLayout--leftSideBarVisible_lqzmv_78", "PuckLayout--isExpanded": "_PuckLayout--isExpanded_lqzmv_84", "PuckLayout--mobilePanelHeightMinContent": "_PuckLayout--mobilePanelHeightMinContent_lqzmv_102", "PuckLayout--rightSideBarVisible": "_PuckLayout--rightSideBarVisible_lqzmv_129", "PuckLayout-mounted": "_PuckLayout-mounted_lqzmv_148", "PuckLayout-nav": "_PuckLayout-nav_lqzmv_189", "PuckLayout-header": "_PuckLayout-header_lqzmv_205", "PuckPluginTab": "_PuckPluginTab_lqzmv_219", "PuckPluginTab--visible": "_PuckPluginTab--visible_lqzmv_225", "PuckPluginTab-body": "_PuckPluginTab-body_lqzmv_230" };
7935
7934
 
7936
7935
  // lib/use-inject-css.ts
7937
7936
  init_react_import();
@@ -8970,7 +8969,7 @@ var Layout = ({ children }) => {
8970
8969
  dnd,
8971
8970
  initialHistory: _initialHistory,
8972
8971
  plugins,
8973
- height = "100dvh"
8972
+ height
8974
8973
  } = usePropsContext();
8975
8974
  const iframe = useMemo20(
8976
8975
  () => __spreadValues({
@@ -9114,92 +9113,85 @@ var Layout = ({ children }) => {
9114
9113
  return (_a = s.state.ui.mobilePanelExpanded) != null ? _a : false;
9115
9114
  }
9116
9115
  );
9117
- return /* @__PURE__ */ jsxs24(
9118
- "div",
9119
- {
9120
- className: `Puck ${getClassName36()}`,
9121
- style: { height },
9122
- id: instanceId,
9123
- children: [
9124
- /* @__PURE__ */ jsx51(DragDropContext, { disableAutoScroll: dnd == null ? void 0 : dnd.disableAutoScroll, children: /* @__PURE__ */ jsx51(CustomPuck, { children: children || /* @__PURE__ */ jsx51(FrameProvider, { children: /* @__PURE__ */ jsx51(
9116
+ return /* @__PURE__ */ jsxs24("div", { className: `Puck ${getClassName36()}`, id: instanceId, children: [
9117
+ /* @__PURE__ */ jsx51(DragDropContext, { disableAutoScroll: dnd == null ? void 0 : dnd.disableAutoScroll, children: /* @__PURE__ */ jsx51(CustomPuck, { children: children || /* @__PURE__ */ jsx51(FrameProvider, { children: /* @__PURE__ */ jsx51(
9118
+ "div",
9119
+ {
9120
+ className: getLayoutClassName({
9121
+ leftSideBarVisible,
9122
+ mounted,
9123
+ rightSideBarVisible: !hasDesktopFieldsPlugin && rightSideBarVisible,
9124
+ isExpanded: mobilePanelExpanded,
9125
+ mobilePanelHeightToggle: mobilePanelHeightMode === "toggle",
9126
+ mobilePanelHeightMinContent: mobilePanelHeightMode === "min-content"
9127
+ }),
9128
+ style: { height },
9129
+ children: /* @__PURE__ */ jsxs24(
9125
9130
  "div",
9126
9131
  {
9127
- className: getLayoutClassName({
9128
- leftSideBarVisible,
9129
- mounted,
9130
- rightSideBarVisible: !hasDesktopFieldsPlugin && rightSideBarVisible,
9131
- isExpanded: mobilePanelExpanded,
9132
- mobilePanelHeightToggle: mobilePanelHeightMode === "toggle",
9133
- mobilePanelHeightMinContent: mobilePanelHeightMode === "min-content"
9134
- }),
9135
- children: /* @__PURE__ */ jsxs24(
9136
- "div",
9137
- {
9138
- className: getLayoutClassName("inner"),
9139
- style: layoutOptions,
9140
- children: [
9141
- /* @__PURE__ */ jsx51("div", { className: getLayoutClassName("header"), children: /* @__PURE__ */ jsx51(Header, {}) }),
9142
- /* @__PURE__ */ jsx51("div", { className: getLayoutClassName("nav"), children: /* @__PURE__ */ jsx51(
9143
- Nav,
9144
- {
9145
- items: pluginItems,
9146
- mobileActions: leftSideBarVisible && mobilePanelHeightMode === "toggle" && /* @__PURE__ */ jsx51(
9147
- IconButton,
9148
- {
9149
- type: "button",
9150
- title: "maximize",
9151
- onClick: () => {
9152
- setUi({
9153
- mobilePanelExpanded: !mobilePanelExpanded
9154
- });
9155
- },
9156
- children: mobilePanelExpanded ? /* @__PURE__ */ jsx51(Minimize2, { size: 21 }) : /* @__PURE__ */ jsx51(Maximize2, { size: 21 })
9157
- }
9158
- )
9159
- }
9160
- ) }),
9161
- /* @__PURE__ */ jsx51(
9162
- Sidebar,
9163
- {
9164
- position: "left",
9165
- sidebarRef: leftSidebarRef,
9166
- isVisible: leftSideBarVisible,
9167
- onResize: setLeftWidth,
9168
- onResizeEnd: handleLeftSidebarResizeEnd,
9169
- children: Object.entries(pluginItems).map(
9170
- ([id, { mobileOnly, render: Render2, label }]) => /* @__PURE__ */ jsx51(
9171
- PluginTab,
9172
- {
9173
- visible: currentPlugin === id,
9174
- mobileOnly,
9175
- children: /* @__PURE__ */ jsx51(Render2, {})
9176
- },
9177
- id
9178
- )
9179
- )
9180
- }
9181
- ),
9182
- /* @__PURE__ */ jsx51(Canvas, {}),
9183
- !hasDesktopFieldsPlugin && /* @__PURE__ */ jsx51(
9184
- Sidebar,
9132
+ className: getLayoutClassName("inner"),
9133
+ style: layoutOptions,
9134
+ children: [
9135
+ /* @__PURE__ */ jsx51("div", { className: getLayoutClassName("header"), children: /* @__PURE__ */ jsx51(Header, {}) }),
9136
+ /* @__PURE__ */ jsx51("div", { className: getLayoutClassName("nav"), children: /* @__PURE__ */ jsx51(
9137
+ Nav,
9138
+ {
9139
+ items: pluginItems,
9140
+ mobileActions: leftSideBarVisible && mobilePanelHeightMode === "toggle" && /* @__PURE__ */ jsx51(
9141
+ IconButton,
9185
9142
  {
9186
- position: "right",
9187
- sidebarRef: rightSidebarRef,
9188
- isVisible: rightSideBarVisible,
9189
- onResize: setRightWidth,
9190
- onResizeEnd: handleRightSidebarResizeEnd,
9191
- children: /* @__PURE__ */ jsx51(FieldSideBar, {})
9143
+ type: "button",
9144
+ title: "maximize",
9145
+ onClick: () => {
9146
+ setUi({
9147
+ mobilePanelExpanded: !mobilePanelExpanded
9148
+ });
9149
+ },
9150
+ children: mobilePanelExpanded ? /* @__PURE__ */ jsx51(Minimize2, { size: 21 }) : /* @__PURE__ */ jsx51(Maximize2, { size: 21 })
9192
9151
  }
9193
9152
  )
9194
- ]
9195
- }
9196
- )
9153
+ }
9154
+ ) }),
9155
+ /* @__PURE__ */ jsx51(
9156
+ Sidebar,
9157
+ {
9158
+ position: "left",
9159
+ sidebarRef: leftSidebarRef,
9160
+ isVisible: leftSideBarVisible,
9161
+ onResize: setLeftWidth,
9162
+ onResizeEnd: handleLeftSidebarResizeEnd,
9163
+ children: Object.entries(pluginItems).map(
9164
+ ([id, { mobileOnly, render: Render2, label }]) => /* @__PURE__ */ jsx51(
9165
+ PluginTab,
9166
+ {
9167
+ visible: currentPlugin === id,
9168
+ mobileOnly,
9169
+ children: /* @__PURE__ */ jsx51(Render2, {})
9170
+ },
9171
+ id
9172
+ )
9173
+ )
9174
+ }
9175
+ ),
9176
+ /* @__PURE__ */ jsx51(Canvas, {}),
9177
+ !hasDesktopFieldsPlugin && /* @__PURE__ */ jsx51(
9178
+ Sidebar,
9179
+ {
9180
+ position: "right",
9181
+ sidebarRef: rightSidebarRef,
9182
+ isVisible: rightSideBarVisible,
9183
+ onResize: setRightWidth,
9184
+ onResizeEnd: handleRightSidebarResizeEnd,
9185
+ children: /* @__PURE__ */ jsx51(FieldSideBar, {})
9186
+ }
9187
+ )
9188
+ ]
9197
9189
  }
9198
- ) }) }) }),
9199
- /* @__PURE__ */ jsx51("div", { id: "puck-portal-root", className: getClassName36("portal") })
9200
- ]
9201
- }
9202
- );
9190
+ )
9191
+ }
9192
+ ) }) }) }),
9193
+ /* @__PURE__ */ jsx51("div", { id: "puck-portal-root", className: getClassName36("portal") })
9194
+ ] });
9203
9195
  };
9204
9196
 
9205
9197
  // components/Puck/index.tsx
@@ -9451,6 +9443,7 @@ export {
9451
9443
  Action,
9452
9444
  Group,
9453
9445
  Label,
9446
+ createReducer,
9454
9447
  IconButton,
9455
9448
  Button,
9456
9449
  FieldLabel,
@@ -9479,325 +9472,45 @@ classnames/index.js:
9479
9472
  *)
9480
9473
 
9481
9474
  lucide-react/dist/esm/shared/src/utils.js:
9482
- (**
9483
- * @license lucide-react v0.468.0 - ISC
9484
- *
9485
- * This source code is licensed under the ISC license.
9486
- * See the LICENSE file in the root directory of this source tree.
9487
- *)
9488
-
9489
9475
  lucide-react/dist/esm/defaultAttributes.js:
9490
- (**
9491
- * @license lucide-react v0.468.0 - ISC
9492
- *
9493
- * This source code is licensed under the ISC license.
9494
- * See the LICENSE file in the root directory of this source tree.
9495
- *)
9496
-
9497
9476
  lucide-react/dist/esm/Icon.js:
9498
- (**
9499
- * @license lucide-react v0.468.0 - ISC
9500
- *
9501
- * This source code is licensed under the ISC license.
9502
- * See the LICENSE file in the root directory of this source tree.
9503
- *)
9504
-
9505
9477
  lucide-react/dist/esm/createLucideIcon.js:
9506
- (**
9507
- * @license lucide-react v0.468.0 - ISC
9508
- *
9509
- * This source code is licensed under the ISC license.
9510
- * See the LICENSE file in the root directory of this source tree.
9511
- *)
9512
-
9513
9478
  lucide-react/dist/esm/icons/chevron-down.js:
9514
- (**
9515
- * @license lucide-react v0.468.0 - ISC
9516
- *
9517
- * This source code is licensed under the ISC license.
9518
- * See the LICENSE file in the root directory of this source tree.
9519
- *)
9520
-
9521
9479
  lucide-react/dist/esm/icons/chevron-right.js:
9522
- (**
9523
- * @license lucide-react v0.468.0 - ISC
9524
- *
9525
- * This source code is licensed under the ISC license.
9526
- * See the LICENSE file in the root directory of this source tree.
9527
- *)
9528
-
9529
9480
  lucide-react/dist/esm/icons/chevron-up.js:
9530
- (**
9531
- * @license lucide-react v0.468.0 - ISC
9532
- *
9533
- * This source code is licensed under the ISC license.
9534
- * See the LICENSE file in the root directory of this source tree.
9535
- *)
9536
-
9537
9481
  lucide-react/dist/esm/icons/circle-check-big.js:
9538
- (**
9539
- * @license lucide-react v0.468.0 - ISC
9540
- *
9541
- * This source code is licensed under the ISC license.
9542
- * See the LICENSE file in the root directory of this source tree.
9543
- *)
9544
-
9545
9482
  lucide-react/dist/esm/icons/copy.js:
9546
- (**
9547
- * @license lucide-react v0.468.0 - ISC
9548
- *
9549
- * This source code is licensed under the ISC license.
9550
- * See the LICENSE file in the root directory of this source tree.
9551
- *)
9552
-
9553
9483
  lucide-react/dist/esm/icons/corner-left-up.js:
9554
- (**
9555
- * @license lucide-react v0.468.0 - ISC
9556
- *
9557
- * This source code is licensed under the ISC license.
9558
- * See the LICENSE file in the root directory of this source tree.
9559
- *)
9560
-
9561
9484
  lucide-react/dist/esm/icons/ellipsis-vertical.js:
9562
- (**
9563
- * @license lucide-react v0.468.0 - ISC
9564
- *
9565
- * This source code is licensed under the ISC license.
9566
- * See the LICENSE file in the root directory of this source tree.
9567
- *)
9568
-
9569
9485
  lucide-react/dist/esm/icons/expand.js:
9570
- (**
9571
- * @license lucide-react v0.468.0 - ISC
9572
- *
9573
- * This source code is licensed under the ISC license.
9574
- * See the LICENSE file in the root directory of this source tree.
9575
- *)
9576
-
9577
9486
  lucide-react/dist/esm/icons/globe.js:
9578
- (**
9579
- * @license lucide-react v0.468.0 - ISC
9580
- *
9581
- * This source code is licensed under the ISC license.
9582
- * See the LICENSE file in the root directory of this source tree.
9583
- *)
9584
-
9585
9487
  lucide-react/dist/esm/icons/hammer.js:
9586
- (**
9587
- * @license lucide-react v0.468.0 - ISC
9588
- *
9589
- * This source code is licensed under the ISC license.
9590
- * See the LICENSE file in the root directory of this source tree.
9591
- *)
9592
-
9593
9488
  lucide-react/dist/esm/icons/hash.js:
9594
- (**
9595
- * @license lucide-react v0.468.0 - ISC
9596
- *
9597
- * This source code is licensed under the ISC license.
9598
- * See the LICENSE file in the root directory of this source tree.
9599
- *)
9600
-
9601
9489
  lucide-react/dist/esm/icons/layers.js:
9602
- (**
9603
- * @license lucide-react v0.468.0 - ISC
9604
- *
9605
- * This source code is licensed under the ISC license.
9606
- * See the LICENSE file in the root directory of this source tree.
9607
- *)
9608
-
9609
9490
  lucide-react/dist/esm/icons/layout-grid.js:
9610
- (**
9611
- * @license lucide-react v0.468.0 - ISC
9612
- *
9613
- * This source code is licensed under the ISC license.
9614
- * See the LICENSE file in the root directory of this source tree.
9615
- *)
9616
-
9617
9491
  lucide-react/dist/esm/icons/link.js:
9618
- (**
9619
- * @license lucide-react v0.468.0 - ISC
9620
- *
9621
- * This source code is licensed under the ISC license.
9622
- * See the LICENSE file in the root directory of this source tree.
9623
- *)
9624
-
9625
9492
  lucide-react/dist/esm/icons/list.js:
9626
- (**
9627
- * @license lucide-react v0.468.0 - ISC
9628
- *
9629
- * This source code is licensed under the ISC license.
9630
- * See the LICENSE file in the root directory of this source tree.
9631
- *)
9632
-
9633
9493
  lucide-react/dist/esm/icons/lock-open.js:
9634
- (**
9635
- * @license lucide-react v0.468.0 - ISC
9636
- *
9637
- * This source code is licensed under the ISC license.
9638
- * See the LICENSE file in the root directory of this source tree.
9639
- *)
9640
-
9641
9494
  lucide-react/dist/esm/icons/lock.js:
9642
- (**
9643
- * @license lucide-react v0.468.0 - ISC
9644
- *
9645
- * This source code is licensed under the ISC license.
9646
- * See the LICENSE file in the root directory of this source tree.
9647
- *)
9648
-
9649
9495
  lucide-react/dist/esm/icons/maximize-2.js:
9650
- (**
9651
- * @license lucide-react v0.468.0 - ISC
9652
- *
9653
- * This source code is licensed under the ISC license.
9654
- * See the LICENSE file in the root directory of this source tree.
9655
- *)
9656
-
9657
9496
  lucide-react/dist/esm/icons/minimize-2.js:
9658
- (**
9659
- * @license lucide-react v0.468.0 - ISC
9660
- *
9661
- * This source code is licensed under the ISC license.
9662
- * See the LICENSE file in the root directory of this source tree.
9663
- *)
9664
-
9665
9497
  lucide-react/dist/esm/icons/monitor.js:
9666
- (**
9667
- * @license lucide-react v0.468.0 - ISC
9668
- *
9669
- * This source code is licensed under the ISC license.
9670
- * See the LICENSE file in the root directory of this source tree.
9671
- *)
9672
-
9673
9498
  lucide-react/dist/esm/icons/panel-left.js:
9674
- (**
9675
- * @license lucide-react v0.468.0 - ISC
9676
- *
9677
- * This source code is licensed under the ISC license.
9678
- * See the LICENSE file in the root directory of this source tree.
9679
- *)
9680
-
9681
9499
  lucide-react/dist/esm/icons/panel-right.js:
9682
- (**
9683
- * @license lucide-react v0.468.0 - ISC
9684
- *
9685
- * This source code is licensed under the ISC license.
9686
- * See the LICENSE file in the root directory of this source tree.
9687
- *)
9688
-
9689
9500
  lucide-react/dist/esm/icons/plus.js:
9690
- (**
9691
- * @license lucide-react v0.468.0 - ISC
9692
- *
9693
- * This source code is licensed under the ISC license.
9694
- * See the LICENSE file in the root directory of this source tree.
9695
- *)
9696
-
9697
9501
  lucide-react/dist/esm/icons/rectangle-ellipsis.js:
9698
- (**
9699
- * @license lucide-react v0.468.0 - ISC
9700
- *
9701
- * This source code is licensed under the ISC license.
9702
- * See the LICENSE file in the root directory of this source tree.
9703
- *)
9704
-
9705
9502
  lucide-react/dist/esm/icons/redo-2.js:
9706
- (**
9707
- * @license lucide-react v0.468.0 - ISC
9708
- *
9709
- * This source code is licensed under the ISC license.
9710
- * See the LICENSE file in the root directory of this source tree.
9711
- *)
9712
-
9713
9503
  lucide-react/dist/esm/icons/search.js:
9714
- (**
9715
- * @license lucide-react v0.468.0 - ISC
9716
- *
9717
- * This source code is licensed under the ISC license.
9718
- * See the LICENSE file in the root directory of this source tree.
9719
- *)
9720
-
9721
9504
  lucide-react/dist/esm/icons/sliders-horizontal.js:
9722
- (**
9723
- * @license lucide-react v0.468.0 - ISC
9724
- *
9725
- * This source code is licensed under the ISC license.
9726
- * See the LICENSE file in the root directory of this source tree.
9727
- *)
9728
-
9729
9505
  lucide-react/dist/esm/icons/smartphone.js:
9730
- (**
9731
- * @license lucide-react v0.468.0 - ISC
9732
- *
9733
- * This source code is licensed under the ISC license.
9734
- * See the LICENSE file in the root directory of this source tree.
9735
- *)
9736
-
9737
9506
  lucide-react/dist/esm/icons/tablet.js:
9738
- (**
9739
- * @license lucide-react v0.468.0 - ISC
9740
- *
9741
- * This source code is licensed under the ISC license.
9742
- * See the LICENSE file in the root directory of this source tree.
9743
- *)
9744
-
9745
9507
  lucide-react/dist/esm/icons/toy-brick.js:
9746
- (**
9747
- * @license lucide-react v0.468.0 - ISC
9748
- *
9749
- * This source code is licensed under the ISC license.
9750
- * See the LICENSE file in the root directory of this source tree.
9751
- *)
9752
-
9753
9508
  lucide-react/dist/esm/icons/trash.js:
9754
- (**
9755
- * @license lucide-react v0.468.0 - ISC
9756
- *
9757
- * This source code is licensed under the ISC license.
9758
- * See the LICENSE file in the root directory of this source tree.
9759
- *)
9760
-
9761
9509
  lucide-react/dist/esm/icons/type.js:
9762
- (**
9763
- * @license lucide-react v0.468.0 - ISC
9764
- *
9765
- * This source code is licensed under the ISC license.
9766
- * See the LICENSE file in the root directory of this source tree.
9767
- *)
9768
-
9769
9510
  lucide-react/dist/esm/icons/undo-2.js:
9770
- (**
9771
- * @license lucide-react v0.468.0 - ISC
9772
- *
9773
- * This source code is licensed under the ISC license.
9774
- * See the LICENSE file in the root directory of this source tree.
9775
- *)
9776
-
9777
9511
  lucide-react/dist/esm/icons/x.js:
9778
- (**
9779
- * @license lucide-react v0.468.0 - ISC
9780
- *
9781
- * This source code is licensed under the ISC license.
9782
- * See the LICENSE file in the root directory of this source tree.
9783
- *)
9784
-
9785
9512
  lucide-react/dist/esm/icons/zoom-in.js:
9786
- (**
9787
- * @license lucide-react v0.468.0 - ISC
9788
- *
9789
- * This source code is licensed under the ISC license.
9790
- * See the LICENSE file in the root directory of this source tree.
9791
- *)
9792
-
9793
9513
  lucide-react/dist/esm/icons/zoom-out.js:
9794
- (**
9795
- * @license lucide-react v0.468.0 - ISC
9796
- *
9797
- * This source code is licensed under the ISC license.
9798
- * See the LICENSE file in the root directory of this source tree.
9799
- *)
9800
-
9801
9514
  lucide-react/dist/esm/lucide-react.js:
9802
9515
  (**
9803
9516
  * @license lucide-react v0.468.0 - ISC