@measured/puck 0.14.0-canary.68f97ae → 0.14.0-canary.6cadfdb
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +2 -2
- package/dist/index.js +97 -107
- package/package.json +1 -1
package/dist/index.css
CHANGED
@@ -1622,7 +1622,7 @@ textarea.styles_Input-input {
|
|
1622
1622
|
border-left: 2px solid var(--puck-color-grey-11);
|
1623
1623
|
justify-content: center;
|
1624
1624
|
gap: 8px;
|
1625
|
-
min-width:
|
1625
|
+
min-width: 358px;
|
1626
1626
|
padding-bottom: 16px;
|
1627
1627
|
padding-left: var(--puck-space-px);
|
1628
1628
|
padding-right: var(--puck-space-px);
|
@@ -1670,7 +1670,7 @@ textarea.styles_Input-input {
|
|
1670
1670
|
display: flex;
|
1671
1671
|
height: 100%;
|
1672
1672
|
justify-content: center;
|
1673
|
-
min-width:
|
1673
|
+
min-width: 358px;
|
1674
1674
|
overflow: hidden;
|
1675
1675
|
position: relative;
|
1676
1676
|
width: 100%;
|
package/dist/index.js
CHANGED
@@ -30518,14 +30518,10 @@ var IconButton = ({
|
|
30518
30518
|
|
30519
30519
|
// components/Puck/index.tsx
|
30520
30520
|
init_react_import();
|
30521
|
-
var
|
30521
|
+
var import_react28 = require("react");
|
30522
30522
|
|
30523
30523
|
// lib/use-placeholder-style.ts
|
30524
30524
|
init_react_import();
|
30525
|
-
var import_react12 = require("react");
|
30526
|
-
|
30527
|
-
// lib/use-frame.ts
|
30528
|
-
init_react_import();
|
30529
30525
|
var import_react11 = require("react");
|
30530
30526
|
|
30531
30527
|
// lib/get-frame.ts
|
@@ -30533,36 +30529,27 @@ init_react_import();
|
|
30533
30529
|
var getFrame = () => {
|
30534
30530
|
let frame = document.querySelector("#preview-frame");
|
30535
30531
|
if ((frame == null ? void 0 : frame.tagName) === "IFRAME") {
|
30536
|
-
frame = frame.contentDocument
|
30532
|
+
frame = frame.contentDocument;
|
30537
30533
|
}
|
30538
30534
|
return frame;
|
30539
30535
|
};
|
30540
30536
|
|
30541
|
-
// lib/use-frame.ts
|
30542
|
-
var useFrame = () => {
|
30543
|
-
const [el, setEl] = (0, import_react11.useState)();
|
30544
|
-
(0, import_react11.useEffect)(() => {
|
30545
|
-
setEl(getFrame());
|
30546
|
-
}, []);
|
30547
|
-
return el;
|
30548
|
-
};
|
30549
|
-
|
30550
30537
|
// lib/use-placeholder-style.ts
|
30551
30538
|
var usePlaceholderStyle = () => {
|
30552
30539
|
const queryAttr = "data-rfd-drag-handle-draggable-id";
|
30553
|
-
const [placeholderStyle, setPlaceholderStyle] = (0,
|
30554
|
-
const frame = useFrame();
|
30540
|
+
const [placeholderStyle, setPlaceholderStyle] = (0, import_react11.useState)();
|
30555
30541
|
const onDragStartOrUpdate = (draggedItem) => {
|
30556
30542
|
var _a;
|
30557
30543
|
const draggableId = draggedItem.draggableId;
|
30558
30544
|
const destinationIndex = (draggedItem.destination || draggedItem.source).index;
|
30559
30545
|
const droppableId = (draggedItem.destination || draggedItem.source).droppableId;
|
30560
30546
|
const domQuery = `[${queryAttr}='${draggableId}']`;
|
30561
|
-
const
|
30547
|
+
const frame = getFrame();
|
30548
|
+
const draggedDOM = frame == null ? void 0 : frame.querySelector(domQuery);
|
30562
30549
|
if (!draggedDOM) {
|
30563
30550
|
return;
|
30564
30551
|
}
|
30565
|
-
const targetListElement = frame == null ? void 0 : frame.
|
30552
|
+
const targetListElement = frame == null ? void 0 : frame.querySelector(
|
30566
30553
|
`[data-rfd-droppable-id='${droppableId}']`
|
30567
30554
|
);
|
30568
30555
|
const { clientHeight } = draggedDOM;
|
@@ -30645,7 +30632,7 @@ var Heading = ({ children, rank, size = "m" }) => {
|
|
30645
30632
|
|
30646
30633
|
// lib/use-breadcrumbs.ts
|
30647
30634
|
init_react_import();
|
30648
|
-
var
|
30635
|
+
var import_react12 = require("react");
|
30649
30636
|
var convertPathDataToBreadcrumbs = (selectedItem, pathData, data) => {
|
30650
30637
|
const id = selectedItem ? selectedItem == null ? void 0 : selectedItem.props.id : "";
|
30651
30638
|
const currentPathData = pathData && id && pathData[id] ? __spreadValues({}, pathData[id]) : { label: "Page", path: [] };
|
@@ -30695,8 +30682,8 @@ var useBreadcrumbs = (renderCount) => {
|
|
30695
30682
|
state: { data },
|
30696
30683
|
selectedItem
|
30697
30684
|
} = useAppContext();
|
30698
|
-
const dzContext = (0,
|
30699
|
-
return (0,
|
30685
|
+
const dzContext = (0, import_react12.useContext)(dropZoneContext);
|
30686
|
+
return (0, import_react12.useMemo)(() => {
|
30700
30687
|
const breadcrumbs = convertPathDataToBreadcrumbs(
|
30701
30688
|
selectedItem,
|
30702
30689
|
dzContext == null ? void 0 : dzContext.pathData,
|
@@ -31113,7 +31100,7 @@ var flushZones = (appState) => {
|
|
31113
31100
|
|
31114
31101
|
// lib/use-resolved-data.ts
|
31115
31102
|
init_react_import();
|
31116
|
-
var
|
31103
|
+
var import_react13 = require("react");
|
31117
31104
|
|
31118
31105
|
// lib/resolve-component-data.ts
|
31119
31106
|
init_react_import();
|
@@ -31228,13 +31215,13 @@ var resolveRootData = (data, config) => __async(void 0, null, function* () {
|
|
31228
31215
|
|
31229
31216
|
// lib/use-resolved-data.ts
|
31230
31217
|
var useResolvedData = (appState, config, dispatch) => {
|
31231
|
-
const [{ resolverKey, newAppState }, setResolverState] = (0,
|
31218
|
+
const [{ resolverKey, newAppState }, setResolverState] = (0, import_react13.useState)({
|
31232
31219
|
resolverKey: 0,
|
31233
31220
|
newAppState: appState
|
31234
31221
|
});
|
31235
|
-
const [componentState, setComponentState] = (0,
|
31222
|
+
const [componentState, setComponentState] = (0, import_react13.useState)({});
|
31236
31223
|
const deferredSetStates = {};
|
31237
|
-
const setComponentLoading = (0,
|
31224
|
+
const setComponentLoading = (0, import_react13.useCallback)(
|
31238
31225
|
(id, loading, defer = 0) => {
|
31239
31226
|
if (deferredSetStates[id]) {
|
31240
31227
|
clearTimeout(deferredSetStates[id]);
|
@@ -31304,10 +31291,10 @@ var useResolvedData = (appState, config, dispatch) => {
|
|
31304
31291
|
});
|
31305
31292
|
yield Promise.all(promises);
|
31306
31293
|
});
|
31307
|
-
(0,
|
31294
|
+
(0, import_react13.useEffect)(() => {
|
31308
31295
|
runResolvers();
|
31309
31296
|
}, [resolverKey]);
|
31310
|
-
const resolveData = (0,
|
31297
|
+
const resolveData = (0, import_react13.useCallback)((newAppState2 = appState) => {
|
31311
31298
|
setResolverState((curr) => ({
|
31312
31299
|
resolverKey: curr.resolverKey + 1,
|
31313
31300
|
newAppState: newAppState2
|
@@ -31437,7 +31424,7 @@ var styles_default9 = {
|
|
31437
31424
|
};
|
31438
31425
|
|
31439
31426
|
// components/InputOrGroup/index.tsx
|
31440
|
-
var
|
31427
|
+
var import_react18 = require("react");
|
31441
31428
|
|
31442
31429
|
// components/InputOrGroup/fields/index.tsx
|
31443
31430
|
init_react_import();
|
@@ -31463,7 +31450,7 @@ var styles_default10 = {
|
|
31463
31450
|
};
|
31464
31451
|
|
31465
31452
|
// components/InputOrGroup/fields/ArrayField/index.tsx
|
31466
|
-
var
|
31453
|
+
var import_react14 = require("react");
|
31467
31454
|
|
31468
31455
|
// components/DragDropContext/index.tsx
|
31469
31456
|
init_react_import();
|
@@ -31501,11 +31488,11 @@ var ArrayField = ({
|
|
31501
31488
|
}),
|
31502
31489
|
openId: ""
|
31503
31490
|
};
|
31504
|
-
const [localState, setLocalState] = (0,
|
31505
|
-
(0,
|
31491
|
+
const [localState, setLocalState] = (0, import_react14.useState)({ arrayState, value });
|
31492
|
+
(0, import_react14.useEffect)(() => {
|
31506
31493
|
setLocalState({ arrayState, value });
|
31507
31494
|
}, [value, state.ui.arrayState[id]]);
|
31508
|
-
const mapArrayStateToUi = (0,
|
31495
|
+
const mapArrayStateToUi = (0, import_react14.useCallback)(
|
31509
31496
|
(partialArrayState) => {
|
31510
31497
|
return {
|
31511
31498
|
arrayState: __spreadProps(__spreadValues({}, state.ui.arrayState), {
|
@@ -31515,13 +31502,13 @@ var ArrayField = ({
|
|
31515
31502
|
},
|
31516
31503
|
[arrayState]
|
31517
31504
|
);
|
31518
|
-
const getHighestIndex = (0,
|
31505
|
+
const getHighestIndex = (0, import_react14.useCallback)(() => {
|
31519
31506
|
return arrayState.items.reduce(
|
31520
31507
|
(acc, item) => item._originalIndex > acc ? item._originalIndex : acc,
|
31521
31508
|
-1
|
31522
31509
|
);
|
31523
31510
|
}, [arrayState]);
|
31524
|
-
const regenerateArrayState = (0,
|
31511
|
+
const regenerateArrayState = (0, import_react14.useCallback)(
|
31525
31512
|
(value2) => {
|
31526
31513
|
let highestIndex = getHighestIndex();
|
31527
31514
|
const newItems = Array.from(value2 || []).map((item, idx) => {
|
@@ -31540,10 +31527,10 @@ var ArrayField = ({
|
|
31540
31527
|
},
|
31541
31528
|
[arrayState]
|
31542
31529
|
);
|
31543
|
-
(0,
|
31530
|
+
(0, import_react14.useEffect)(() => {
|
31544
31531
|
setUi(mapArrayStateToUi(arrayState));
|
31545
31532
|
}, []);
|
31546
|
-
const [hovering, setHovering] = (0,
|
31533
|
+
const [hovering, setHovering] = (0, import_react14.useState)(false);
|
31547
31534
|
if (field.type !== "array" || !field.arrayFields) {
|
31548
31535
|
return null;
|
31549
31536
|
}
|
@@ -31639,6 +31626,7 @@ var ArrayField = ({
|
|
31639
31626
|
!readOnly && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: getClassNameItem2("actions"), children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: getClassNameItem2("action"), children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
31640
31627
|
IconButton,
|
31641
31628
|
{
|
31629
|
+
type: "button",
|
31642
31630
|
disabled: field.min !== void 0 && field.min >= localState.arrayState.items.length,
|
31643
31631
|
onClick: (e) => {
|
31644
31632
|
e.stopPropagation();
|
@@ -31703,6 +31691,7 @@ var ArrayField = ({
|
|
31703
31691
|
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
31704
31692
|
"button",
|
31705
31693
|
{
|
31694
|
+
type: "button",
|
31706
31695
|
className: getClassName10("addButton"),
|
31707
31696
|
disabled: field.max !== void 0 && localState.arrayState.items.length >= field.max,
|
31708
31697
|
onClick: () => {
|
@@ -31777,11 +31766,11 @@ var DefaultField = ({
|
|
31777
31766
|
|
31778
31767
|
// components/InputOrGroup/fields/ExternalField/index.tsx
|
31779
31768
|
init_react_import();
|
31780
|
-
var
|
31769
|
+
var import_react17 = require("react");
|
31781
31770
|
|
31782
31771
|
// components/ExternalInput/index.tsx
|
31783
31772
|
init_react_import();
|
31784
|
-
var
|
31773
|
+
var import_react16 = require("react");
|
31785
31774
|
|
31786
31775
|
// components/ExternalInput/styles.module.css
|
31787
31776
|
var styles_default11 = {
|
@@ -31816,7 +31805,7 @@ var styles_default11 = {
|
|
31816
31805
|
|
31817
31806
|
// components/Modal/index.tsx
|
31818
31807
|
init_react_import();
|
31819
|
-
var
|
31808
|
+
var import_react15 = require("react");
|
31820
31809
|
|
31821
31810
|
// components/Modal/styles.module.css
|
31822
31811
|
var styles_default12 = {
|
@@ -31834,8 +31823,8 @@ var Modal = ({
|
|
31834
31823
|
onClose,
|
31835
31824
|
isOpen
|
31836
31825
|
}) => {
|
31837
|
-
const [rootEl, setRootEl] = (0,
|
31838
|
-
(0,
|
31826
|
+
const [rootEl, setRootEl] = (0, import_react15.useState)(null);
|
31827
|
+
(0, import_react15.useEffect)(() => {
|
31839
31828
|
setRootEl(document.getElementById("puck-portal-root"));
|
31840
31829
|
}, []);
|
31841
31830
|
if (!rootEl) {
|
@@ -31872,16 +31861,16 @@ var ExternalInput = ({
|
|
31872
31861
|
mapRow = (val) => val,
|
31873
31862
|
filterFields
|
31874
31863
|
} = field || {};
|
31875
|
-
const [data, setData] = (0,
|
31876
|
-
const [isOpen, setOpen] = (0,
|
31877
|
-
const [isLoading, setIsLoading] = (0,
|
31864
|
+
const [data, setData] = (0, import_react16.useState)([]);
|
31865
|
+
const [isOpen, setOpen] = (0, import_react16.useState)(false);
|
31866
|
+
const [isLoading, setIsLoading] = (0, import_react16.useState)(true);
|
31878
31867
|
const hasFilterFields = !!filterFields;
|
31879
|
-
const [filters, setFilters] = (0,
|
31880
|
-
const [filtersToggled, setFiltersToggled] = (0,
|
31881
|
-
const mappedData = (0,
|
31868
|
+
const [filters, setFilters] = (0, import_react16.useState)(field.initialFilters || {});
|
31869
|
+
const [filtersToggled, setFiltersToggled] = (0, import_react16.useState)(hasFilterFields);
|
31870
|
+
const mappedData = (0, import_react16.useMemo)(() => {
|
31882
31871
|
return data.map(mapRow);
|
31883
31872
|
}, [data]);
|
31884
|
-
const keys = (0,
|
31873
|
+
const keys = (0, import_react16.useMemo)(() => {
|
31885
31874
|
const validKeys = /* @__PURE__ */ new Set();
|
31886
31875
|
for (const item of mappedData) {
|
31887
31876
|
for (const key of Object.keys(item)) {
|
@@ -31892,8 +31881,8 @@ var ExternalInput = ({
|
|
31892
31881
|
}
|
31893
31882
|
return Array.from(validKeys);
|
31894
31883
|
}, [mappedData]);
|
31895
|
-
const [searchQuery, setSearchQuery] = (0,
|
31896
|
-
const search = (0,
|
31884
|
+
const [searchQuery, setSearchQuery] = (0, import_react16.useState)(field.initialQuery || "");
|
31885
|
+
const search = (0, import_react16.useCallback)(
|
31897
31886
|
(query, filters2) => __async(void 0, null, function* () {
|
31898
31887
|
setIsLoading(true);
|
31899
31888
|
const cacheKey = `${id}-${name}-${query}-${JSON.stringify(filters2)}`;
|
@@ -31906,7 +31895,7 @@ var ExternalInput = ({
|
|
31906
31895
|
}),
|
31907
31896
|
[name, field]
|
31908
31897
|
);
|
31909
|
-
(0,
|
31898
|
+
(0, import_react16.useEffect)(() => {
|
31910
31899
|
search(searchQuery, filters);
|
31911
31900
|
}, []);
|
31912
31901
|
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
|
@@ -31922,6 +31911,7 @@ var ExternalInput = ({
|
|
31922
31911
|
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
31923
31912
|
"button",
|
31924
31913
|
{
|
31914
|
+
type: "button",
|
31925
31915
|
onClick: () => setOpen(true),
|
31926
31916
|
className: getClassName13("button"),
|
31927
31917
|
children: value ? field.getItemSummary ? field.getItemSummary(value) : "External item" : /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
|
@@ -32066,7 +32056,7 @@ var ExternalField = ({
|
|
32066
32056
|
var _a, _b, _c;
|
32067
32057
|
const validField = field;
|
32068
32058
|
const deprecatedField = field;
|
32069
|
-
(0,
|
32059
|
+
(0, import_react17.useEffect)(() => {
|
32070
32060
|
if (deprecatedField.adaptor) {
|
32071
32061
|
console.error(
|
32072
32062
|
"Warning: The `adaptor` API is deprecated. Please use updated APIs on the `external` field instead. This will be a breaking change in a future release."
|
@@ -32343,7 +32333,7 @@ var FieldLabelInternal = ({
|
|
32343
32333
|
readOnly
|
32344
32334
|
}) => {
|
32345
32335
|
const { overrides } = useAppContext();
|
32346
|
-
const Wrapper = (0,
|
32336
|
+
const Wrapper = (0, import_react18.useMemo)(
|
32347
32337
|
() => overrides.fieldLabel || FieldLabel,
|
32348
32338
|
[overrides]
|
32349
32339
|
);
|
@@ -32364,7 +32354,7 @@ var InputOrGroup = (_a) => {
|
|
32364
32354
|
var _a2, _b2, _c, _d, _e, _f, _g, _h;
|
32365
32355
|
const { overrides } = useAppContext();
|
32366
32356
|
const { name, field, value, readOnly } = props;
|
32367
|
-
const [localValue, setLocalValue] = (0,
|
32357
|
+
const [localValue, setLocalValue] = (0, import_react18.useState)(value);
|
32368
32358
|
const onChangeDb = (0, import_use_debounce2.useDebouncedCallback)(
|
32369
32359
|
(val, ui) => {
|
32370
32360
|
onChange(val, ui);
|
@@ -32372,11 +32362,11 @@ var InputOrGroup = (_a) => {
|
|
32372
32362
|
50,
|
32373
32363
|
{ leading: true }
|
32374
32364
|
);
|
32375
|
-
const onChangeLocal = (0,
|
32365
|
+
const onChangeLocal = (0, import_react18.useCallback)((val, ui) => {
|
32376
32366
|
setLocalValue(val);
|
32377
32367
|
onChangeDb(val, ui);
|
32378
32368
|
}, []);
|
32379
|
-
(0,
|
32369
|
+
(0, import_react18.useEffect)(() => {
|
32380
32370
|
setLocalValue(value);
|
32381
32371
|
}, [value]);
|
32382
32372
|
const localProps = {
|
@@ -32426,7 +32416,7 @@ var styles_default14 = {
|
|
32426
32416
|
};
|
32427
32417
|
|
32428
32418
|
// components/Puck/components/Fields/index.tsx
|
32429
|
-
var
|
32419
|
+
var import_react19 = require("react");
|
32430
32420
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
32431
32421
|
var getClassName19 = get_class_name_factory_default("PuckFields", styles_default14);
|
32432
32422
|
var defaultPageFields = {
|
@@ -32458,7 +32448,7 @@ var Fields = () => {
|
|
32458
32448
|
const fields = selectedItem ? ((_b = config.components[selectedItem.type]) == null ? void 0 : _b.fields) || {} : rootFields;
|
32459
32449
|
const isLoading = selectedItem ? (_c = componentState[selectedItem == null ? void 0 : selectedItem.props.id]) == null ? void 0 : _c.loading : (_d = componentState["puck-root"]) == null ? void 0 : _d.loading;
|
32460
32450
|
const rootProps = data.root.props || data.root;
|
32461
|
-
const Wrapper = (0,
|
32451
|
+
const Wrapper = (0, import_react19.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
|
32462
32452
|
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
32463
32453
|
"form",
|
32464
32454
|
{
|
@@ -32573,7 +32563,7 @@ init_react_import();
|
|
32573
32563
|
|
32574
32564
|
// lib/use-component-list.tsx
|
32575
32565
|
init_react_import();
|
32576
|
-
var
|
32566
|
+
var import_react20 = require("react");
|
32577
32567
|
|
32578
32568
|
// components/ComponentList/index.tsx
|
32579
32569
|
init_react_import();
|
@@ -32643,8 +32633,8 @@ ComponentList.Item = ComponentListItem;
|
|
32643
32633
|
// lib/use-component-list.tsx
|
32644
32634
|
var import_jsx_runtime27 = require("react/jsx-runtime");
|
32645
32635
|
var useComponentList = (config, ui) => {
|
32646
|
-
const [componentList, setComponentList] = (0,
|
32647
|
-
(0,
|
32636
|
+
const [componentList, setComponentList] = (0, import_react20.useState)();
|
32637
|
+
(0, import_react20.useEffect)(() => {
|
32648
32638
|
var _a, _b, _c;
|
32649
32639
|
if (Object.keys(ui.componentList).length > 0) {
|
32650
32640
|
const matchedComponents = [];
|
@@ -32711,18 +32701,18 @@ var useComponentList = (config, ui) => {
|
|
32711
32701
|
};
|
32712
32702
|
|
32713
32703
|
// components/Puck/components/Components/index.tsx
|
32714
|
-
var
|
32704
|
+
var import_react21 = require("react");
|
32715
32705
|
var import_jsx_runtime28 = require("react/jsx-runtime");
|
32716
32706
|
var Components = () => {
|
32717
32707
|
const { config, state, overrides } = useAppContext();
|
32718
32708
|
const componentList = useComponentList(config, state.ui);
|
32719
|
-
const Wrapper = (0,
|
32709
|
+
const Wrapper = (0, import_react21.useMemo)(() => overrides.components || "div", [overrides]);
|
32720
32710
|
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ComponentList, { id: "all" }) });
|
32721
32711
|
};
|
32722
32712
|
|
32723
32713
|
// components/Puck/components/Preview/index.tsx
|
32724
32714
|
init_react_import();
|
32725
|
-
var
|
32715
|
+
var import_react22 = require("react");
|
32726
32716
|
var import_auto_frame_component = __toESM(require("@measured/auto-frame-component"));
|
32727
32717
|
|
32728
32718
|
// components/Puck/components/Preview/styles.module.css
|
@@ -32736,7 +32726,7 @@ var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
32736
32726
|
var getClassName21 = get_class_name_factory_default("PuckPreview", styles_default16);
|
32737
32727
|
var Preview = ({ id = "puck-preview" }) => {
|
32738
32728
|
const { config, dispatch, state, setStatus, iframe } = useAppContext();
|
32739
|
-
const Page = (0,
|
32729
|
+
const Page = (0, import_react22.useCallback)(
|
32740
32730
|
(pageProps) => {
|
32741
32731
|
var _a, _b;
|
32742
32732
|
return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadProps(__spreadValues({}, pageProps), { editMode: true })) : pageProps.children;
|
@@ -32744,7 +32734,7 @@ var Preview = ({ id = "puck-preview" }) => {
|
|
32744
32734
|
[config.root]
|
32745
32735
|
);
|
32746
32736
|
const rootProps = state.data.root.props || state.data.root;
|
32747
|
-
const ref = (0,
|
32737
|
+
const ref = (0, import_react22.useRef)(null);
|
32748
32738
|
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
32749
32739
|
"div",
|
32750
32740
|
{
|
@@ -32828,7 +32818,7 @@ var scrollIntoView = (el) => {
|
|
32828
32818
|
};
|
32829
32819
|
|
32830
32820
|
// components/LayerTree/index.tsx
|
32831
|
-
var
|
32821
|
+
var import_react23 = require("react");
|
32832
32822
|
|
32833
32823
|
// lib/is-child-of-zone.ts
|
32834
32824
|
init_react_import();
|
@@ -32855,8 +32845,7 @@ var LayerTree = ({
|
|
32855
32845
|
label
|
32856
32846
|
}) => {
|
32857
32847
|
const zones = data.zones || {};
|
32858
|
-
const ctx = (0,
|
32859
|
-
const frame = useFrame();
|
32848
|
+
const ctx = (0, import_react23.useContext)(dropZoneContext);
|
32860
32849
|
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
|
32861
32850
|
label && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: getClassName22("zoneTitle"), children: [
|
32862
32851
|
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassName22("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Layers, { size: "16" }) }),
|
@@ -32904,6 +32893,7 @@ var LayerTree = ({
|
|
32904
32893
|
zone
|
32905
32894
|
});
|
32906
32895
|
const id = zoneContent[i].props.id;
|
32896
|
+
const frame = getFrame();
|
32907
32897
|
scrollIntoView(
|
32908
32898
|
frame == null ? void 0 : frame.querySelector(
|
32909
32899
|
`[data-rfd-drag-handle-draggable-id="draggable-${id}"]`
|
@@ -32958,13 +32948,13 @@ var LayerTree = ({
|
|
32958
32948
|
};
|
32959
32949
|
|
32960
32950
|
// components/Puck/components/Outline/index.tsx
|
32961
|
-
var
|
32951
|
+
var import_react24 = require("react");
|
32962
32952
|
var import_jsx_runtime31 = require("react/jsx-runtime");
|
32963
32953
|
var Outline = () => {
|
32964
32954
|
const { dispatch, state, overrides, config } = useAppContext();
|
32965
32955
|
const { data, ui } = state;
|
32966
32956
|
const { itemSelector } = ui;
|
32967
|
-
const setItemSelector = (0,
|
32957
|
+
const setItemSelector = (0, import_react24.useCallback)(
|
32968
32958
|
(newItemSelector) => {
|
32969
32959
|
dispatch({
|
32970
32960
|
type: "setUi",
|
@@ -32973,7 +32963,7 @@ var Outline = () => {
|
|
32973
32963
|
},
|
32974
32964
|
[]
|
32975
32965
|
);
|
32976
|
-
const Wrapper = (0,
|
32966
|
+
const Wrapper = (0, import_react24.useMemo)(() => overrides.outline || "div", [overrides]);
|
32977
32967
|
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
|
32978
32968
|
(ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
32979
32969
|
LayerTree,
|
@@ -33073,12 +33063,12 @@ function usePuckHistory({
|
|
33073
33063
|
|
33074
33064
|
// lib/use-history-store.ts
|
33075
33065
|
init_react_import();
|
33076
|
-
var
|
33066
|
+
var import_react25 = require("react");
|
33077
33067
|
var import_use_debounce3 = require("use-debounce");
|
33078
33068
|
var EMPTY_HISTORY_INDEX = -1;
|
33079
33069
|
function useHistoryStore() {
|
33080
|
-
const [histories, setHistories] = (0,
|
33081
|
-
const [index, setIndex] = (0,
|
33070
|
+
const [histories, setHistories] = (0, import_react25.useState)([]);
|
33071
|
+
const [index, setIndex] = (0, import_react25.useState)(EMPTY_HISTORY_INDEX);
|
33082
33072
|
const hasPast = index > EMPTY_HISTORY_INDEX;
|
33083
33073
|
const hasFuture = index < histories.length - 1;
|
33084
33074
|
const currentHistory = histories[index];
|
@@ -33238,11 +33228,11 @@ var getBox = function getBox2(el) {
|
|
33238
33228
|
};
|
33239
33229
|
|
33240
33230
|
// components/Puck/components/Canvas/index.tsx
|
33241
|
-
var
|
33231
|
+
var import_react27 = require("react");
|
33242
33232
|
|
33243
33233
|
// components/ViewportControls/index.tsx
|
33244
33234
|
init_react_import();
|
33245
|
-
var
|
33235
|
+
var import_react26 = require("react");
|
33246
33236
|
|
33247
33237
|
// components/ViewportControls/styles.module.css
|
33248
33238
|
var styles_default18 = {
|
@@ -33270,8 +33260,8 @@ var ViewportButton = ({
|
|
33270
33260
|
onClick
|
33271
33261
|
}) => {
|
33272
33262
|
const { state } = useAppContext();
|
33273
|
-
const [isActive, setIsActive] = (0,
|
33274
|
-
(0,
|
33263
|
+
const [isActive, setIsActive] = (0, import_react26.useState)(false);
|
33264
|
+
(0, import_react26.useEffect)(() => {
|
33275
33265
|
setIsActive(width === state.ui.viewports.current.width);
|
33276
33266
|
}, [width, state.ui.viewports.current.width]);
|
33277
33267
|
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
@@ -33306,7 +33296,7 @@ var ViewportControls = ({
|
|
33306
33296
|
const defaultsContainAutoZoom = defaultZoomOptions.find(
|
33307
33297
|
(option) => option.value === autoZoom
|
33308
33298
|
);
|
33309
|
-
const zoomOptions = (0,
|
33299
|
+
const zoomOptions = (0, import_react26.useMemo)(
|
33310
33300
|
() => [
|
33311
33301
|
...defaultZoomOptions,
|
33312
33302
|
...defaultsContainAutoZoom ? [] : [
|
@@ -33434,17 +33424,17 @@ var Canvas = () => {
|
|
33434
33424
|
const { status, iframe } = useAppContext();
|
33435
33425
|
const { dispatch, state, overrides, setUi, zoomConfig, setZoomConfig } = useAppContext();
|
33436
33426
|
const { ui } = state;
|
33437
|
-
const frameRef = (0,
|
33438
|
-
const [showTransition, setShowTransition] = (0,
|
33439
|
-
const defaultRender = (0,
|
33427
|
+
const frameRef = (0, import_react27.useRef)(null);
|
33428
|
+
const [showTransition, setShowTransition] = (0, import_react27.useState)(false);
|
33429
|
+
const defaultRender = (0, import_react27.useMemo)(() => {
|
33440
33430
|
const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children });
|
33441
33431
|
return PuckDefault;
|
33442
33432
|
}, []);
|
33443
|
-
const CustomPreview = (0,
|
33433
|
+
const CustomPreview = (0, import_react27.useMemo)(
|
33444
33434
|
() => overrides.preview || defaultRender,
|
33445
33435
|
[overrides]
|
33446
33436
|
);
|
33447
|
-
const getFrameDimensions = (0,
|
33437
|
+
const getFrameDimensions = (0, import_react27.useCallback)(() => {
|
33448
33438
|
if (frameRef.current) {
|
33449
33439
|
const frame = frameRef.current;
|
33450
33440
|
const box = getBox(frame);
|
@@ -33452,7 +33442,7 @@ var Canvas = () => {
|
|
33452
33442
|
}
|
33453
33443
|
return { width: 0, height: 0 };
|
33454
33444
|
}, [frameRef]);
|
33455
|
-
const resetAutoZoom = (0,
|
33445
|
+
const resetAutoZoom = (0, import_react27.useCallback)(
|
33456
33446
|
(ui2 = state.ui) => {
|
33457
33447
|
if (frameRef.current) {
|
33458
33448
|
setZoomConfig(
|
@@ -33462,11 +33452,11 @@ var Canvas = () => {
|
|
33462
33452
|
},
|
33463
33453
|
[frameRef, zoomConfig, state.ui]
|
33464
33454
|
);
|
33465
|
-
(0,
|
33455
|
+
(0, import_react27.useEffect)(() => {
|
33466
33456
|
setShowTransition(false);
|
33467
33457
|
resetAutoZoom();
|
33468
33458
|
}, [frameRef, ui.leftSideBarVisible, ui.rightSideBarVisible]);
|
33469
|
-
(0,
|
33459
|
+
(0, import_react27.useEffect)(() => {
|
33470
33460
|
const { height: frameHeight } = getFrameDimensions();
|
33471
33461
|
if (ui.viewports.current.height === "auto") {
|
33472
33462
|
setZoomConfig(__spreadProps(__spreadValues({}, zoomConfig), {
|
@@ -33474,7 +33464,7 @@ var Canvas = () => {
|
|
33474
33464
|
}));
|
33475
33465
|
}
|
33476
33466
|
}, [zoomConfig.zoom]);
|
33477
|
-
(0,
|
33467
|
+
(0, import_react27.useEffect)(() => {
|
33478
33468
|
const observer = new ResizeObserver(() => {
|
33479
33469
|
setShowTransition(false);
|
33480
33470
|
resetAutoZoom();
|
@@ -33565,10 +33555,10 @@ function Puck({
|
|
33565
33555
|
}) {
|
33566
33556
|
var _a;
|
33567
33557
|
const historyStore = useHistoryStore();
|
33568
|
-
const [reducer] = (0,
|
33558
|
+
const [reducer] = (0, import_react28.useState)(
|
33569
33559
|
() => createReducer({ config, record: historyStore.record })
|
33570
33560
|
);
|
33571
|
-
const [initialAppState] = (0,
|
33561
|
+
const [initialAppState] = (0, import_react28.useState)(() => {
|
33572
33562
|
var _a2, _b, _c, _d;
|
33573
33563
|
const initial = __spreadValues(__spreadValues({}, defaultAppState.ui), initialUi);
|
33574
33564
|
let clientUiState = {};
|
@@ -33613,7 +33603,7 @@ function Puck({
|
|
33613
33603
|
})
|
33614
33604
|
});
|
33615
33605
|
});
|
33616
|
-
const [appState, dispatch] = (0,
|
33606
|
+
const [appState, dispatch] = (0, import_react28.useReducer)(
|
33617
33607
|
reducer,
|
33618
33608
|
flushZones(initialAppState)
|
33619
33609
|
);
|
@@ -33624,9 +33614,9 @@ function Puck({
|
|
33624
33614
|
config,
|
33625
33615
|
dispatch
|
33626
33616
|
);
|
33627
|
-
const [menuOpen, setMenuOpen] = (0,
|
33617
|
+
const [menuOpen, setMenuOpen] = (0, import_react28.useState)(false);
|
33628
33618
|
const { itemSelector, leftSideBarVisible, rightSideBarVisible } = ui;
|
33629
|
-
const setItemSelector = (0,
|
33619
|
+
const setItemSelector = (0, import_react28.useCallback)(
|
33630
33620
|
(newItemSelector) => {
|
33631
33621
|
if (newItemSelector === itemSelector)
|
33632
33622
|
return;
|
@@ -33639,21 +33629,21 @@ function Puck({
|
|
33639
33629
|
[itemSelector]
|
33640
33630
|
);
|
33641
33631
|
const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
|
33642
|
-
(0,
|
33632
|
+
(0, import_react28.useEffect)(() => {
|
33643
33633
|
if (onChange)
|
33644
33634
|
onChange(data);
|
33645
33635
|
}, [data]);
|
33646
33636
|
const { onDragStartOrUpdate, placeholderStyle } = usePlaceholderStyle();
|
33647
|
-
const [draggedItem, setDraggedItem] = (0,
|
33637
|
+
const [draggedItem, setDraggedItem] = (0, import_react28.useState)();
|
33648
33638
|
const rootProps = data.root.props || data.root;
|
33649
|
-
(0,
|
33639
|
+
(0, import_react28.useEffect)(() => {
|
33650
33640
|
if (Object.keys(data.root).length > 0 && !data.root.props) {
|
33651
33641
|
console.error(
|
33652
33642
|
"Warning: Defining props on `root` is deprecated. Please use `root.props`. This will be a breaking change in a future release."
|
33653
33643
|
);
|
33654
33644
|
}
|
33655
33645
|
}, []);
|
33656
|
-
const toggleSidebars = (0,
|
33646
|
+
const toggleSidebars = (0, import_react28.useCallback)(
|
33657
33647
|
(sidebar) => {
|
33658
33648
|
const widerViewport = window.matchMedia("(min-width: 638px)").matches;
|
33659
33649
|
const sideBarVisible = sidebar === "left" ? leftSideBarVisible : rightSideBarVisible;
|
@@ -33667,7 +33657,7 @@ function Puck({
|
|
33667
33657
|
},
|
33668
33658
|
[dispatch, leftSideBarVisible, rightSideBarVisible]
|
33669
33659
|
);
|
33670
|
-
(0,
|
33660
|
+
(0, import_react28.useEffect)(() => {
|
33671
33661
|
if (!window.matchMedia("(min-width: 638px)").matches) {
|
33672
33662
|
dispatch({
|
33673
33663
|
type: "setUi",
|
@@ -33690,11 +33680,11 @@ function Puck({
|
|
33690
33680
|
window.removeEventListener("resize", handleResize);
|
33691
33681
|
};
|
33692
33682
|
}, []);
|
33693
|
-
const defaultRender = (0,
|
33683
|
+
const defaultRender = (0, import_react28.useMemo)(() => {
|
33694
33684
|
const PuckDefault = ({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, { children: children2 });
|
33695
33685
|
return PuckDefault;
|
33696
33686
|
}, []);
|
33697
|
-
const defaultHeaderRender = (0,
|
33687
|
+
const defaultHeaderRender = (0, import_react28.useMemo)(() => {
|
33698
33688
|
if (renderHeader) {
|
33699
33689
|
console.warn(
|
33700
33690
|
"`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
|
@@ -33708,7 +33698,7 @@ function Puck({
|
|
33708
33698
|
}
|
33709
33699
|
return defaultRender;
|
33710
33700
|
}, [renderHeader]);
|
33711
|
-
const defaultHeaderActionsRender = (0,
|
33701
|
+
const defaultHeaderActionsRender = (0, import_react28.useMemo)(() => {
|
33712
33702
|
if (renderHeaderActions) {
|
33713
33703
|
console.warn(
|
33714
33704
|
"`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
|
@@ -33721,18 +33711,18 @@ function Puck({
|
|
33721
33711
|
}
|
33722
33712
|
return defaultRender;
|
33723
33713
|
}, [renderHeader]);
|
33724
|
-
const loadedOverrides = (0,
|
33714
|
+
const loadedOverrides = (0, import_react28.useMemo)(() => {
|
33725
33715
|
return loadOverrides({ overrides, plugins });
|
33726
33716
|
}, [plugins]);
|
33727
|
-
const CustomPuck = (0,
|
33717
|
+
const CustomPuck = (0, import_react28.useMemo)(
|
33728
33718
|
() => loadedOverrides.puck || defaultRender,
|
33729
33719
|
[loadedOverrides]
|
33730
33720
|
);
|
33731
|
-
const CustomHeader = (0,
|
33721
|
+
const CustomHeader = (0, import_react28.useMemo)(
|
33732
33722
|
() => loadedOverrides.header || defaultHeaderRender,
|
33733
33723
|
[loadedOverrides]
|
33734
33724
|
);
|
33735
|
-
const CustomHeaderActions = (0,
|
33725
|
+
const CustomHeaderActions = (0, import_react28.useMemo)(
|
33736
33726
|
() => loadedOverrides.headerActions || defaultHeaderActionsRender,
|
33737
33727
|
[loadedOverrides]
|
33738
33728
|
);
|
package/package.json
CHANGED