@measured/puck-plugin-heading-analyzer 0.14.3-canary.9a1cc7c → 0.15.0-canary.47a27ed
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.d.ts +5 -9
- package/dist/index.js +475 -504
- package/package.json +2 -2
package/dist/index.js
CHANGED
@@ -45807,292 +45807,6 @@ var require_object_hash = __commonJS({
|
|
45807
45807
|
}
|
45808
45808
|
});
|
45809
45809
|
|
45810
|
-
// ../../node_modules/@measured/auto-frame-component/dist/index.js
|
45811
|
-
var require_dist = __commonJS({
|
45812
|
-
"../../node_modules/@measured/auto-frame-component/dist/index.js"(exports, module2) {
|
45813
|
-
"use strict";
|
45814
|
-
init_react_import();
|
45815
|
-
var __create2 = Object.create;
|
45816
|
-
var __defProp2 = Object.defineProperty;
|
45817
|
-
var __defProps2 = Object.defineProperties;
|
45818
|
-
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
45819
|
-
var __getOwnPropDescs2 = Object.getOwnPropertyDescriptors;
|
45820
|
-
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
45821
|
-
var __getOwnPropSymbols2 = Object.getOwnPropertySymbols;
|
45822
|
-
var __getProtoOf2 = Object.getPrototypeOf;
|
45823
|
-
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
45824
|
-
var __propIsEnum2 = Object.prototype.propertyIsEnumerable;
|
45825
|
-
var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
45826
|
-
var __spreadValues2 = (a2, b) => {
|
45827
|
-
for (var prop in b || (b = {}))
|
45828
|
-
if (__hasOwnProp2.call(b, prop))
|
45829
|
-
__defNormalProp2(a2, prop, b[prop]);
|
45830
|
-
if (__getOwnPropSymbols2)
|
45831
|
-
for (var prop of __getOwnPropSymbols2(b)) {
|
45832
|
-
if (__propIsEnum2.call(b, prop))
|
45833
|
-
__defNormalProp2(a2, prop, b[prop]);
|
45834
|
-
}
|
45835
|
-
return a2;
|
45836
|
-
};
|
45837
|
-
var __spreadProps2 = (a2, b) => __defProps2(a2, __getOwnPropDescs2(b));
|
45838
|
-
var __objRest2 = (source, exclude) => {
|
45839
|
-
var target = {};
|
45840
|
-
for (var prop in source)
|
45841
|
-
if (__hasOwnProp2.call(source, prop) && exclude.indexOf(prop) < 0)
|
45842
|
-
target[prop] = source[prop];
|
45843
|
-
if (source != null && __getOwnPropSymbols2)
|
45844
|
-
for (var prop of __getOwnPropSymbols2(source)) {
|
45845
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum2.call(source, prop))
|
45846
|
-
target[prop] = source[prop];
|
45847
|
-
}
|
45848
|
-
return target;
|
45849
|
-
};
|
45850
|
-
var __export2 = (target, all) => {
|
45851
|
-
for (var name in all)
|
45852
|
-
__defProp2(target, name, { get: all[name], enumerable: true });
|
45853
|
-
};
|
45854
|
-
var __copyProps2 = (to, from, except, desc) => {
|
45855
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
45856
|
-
for (let key of __getOwnPropNames2(from))
|
45857
|
-
if (!__hasOwnProp2.call(to, key) && key !== except)
|
45858
|
-
__defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
|
45859
|
-
}
|
45860
|
-
return to;
|
45861
|
-
};
|
45862
|
-
var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
|
45863
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
45864
|
-
// file that has been converted to a CommonJS file using a Babel-
|
45865
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
45866
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
45867
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
|
45868
|
-
mod
|
45869
|
-
));
|
45870
|
-
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
45871
|
-
var __async2 = (__this, __arguments, generator) => {
|
45872
|
-
return new Promise((resolve, reject) => {
|
45873
|
-
var fulfilled = (value) => {
|
45874
|
-
try {
|
45875
|
-
step(generator.next(value));
|
45876
|
-
} catch (e2) {
|
45877
|
-
reject(e2);
|
45878
|
-
}
|
45879
|
-
};
|
45880
|
-
var rejected = (value) => {
|
45881
|
-
try {
|
45882
|
-
step(generator.throw(value));
|
45883
|
-
} catch (e2) {
|
45884
|
-
reject(e2);
|
45885
|
-
}
|
45886
|
-
};
|
45887
|
-
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
45888
|
-
step((generator = generator.apply(__this, __arguments)).next());
|
45889
|
-
});
|
45890
|
-
};
|
45891
|
-
var auto_frame_component_exports = {};
|
45892
|
-
__export2(auto_frame_component_exports, {
|
45893
|
-
default: () => AutoFrameComponent_default
|
45894
|
-
});
|
45895
|
-
module2.exports = __toCommonJS2(auto_frame_component_exports);
|
45896
|
-
var import_react13 = __toESM2(require("react"));
|
45897
|
-
var import_react22 = __toESM2(require("react"));
|
45898
|
-
var import_react_frame_component = __toESM2(require_lib());
|
45899
|
-
var import_object_hash = __toESM2(require_object_hash());
|
45900
|
-
var import_jsx_runtime8 = require("react/jsx-runtime");
|
45901
|
-
var styleSelector = 'style, link[as="style"], link[rel="stylesheet"]';
|
45902
|
-
var collectStyles = (doc) => {
|
45903
|
-
const collected = [];
|
45904
|
-
doc.head.querySelectorAll(styleSelector).forEach((style2) => {
|
45905
|
-
collected.push(style2);
|
45906
|
-
});
|
45907
|
-
return collected;
|
45908
|
-
};
|
45909
|
-
var getStyleSheet = (el) => {
|
45910
|
-
return Array.from(document.styleSheets).find((ss) => {
|
45911
|
-
const ownerNode = ss.ownerNode;
|
45912
|
-
return ownerNode.href === el.href;
|
45913
|
-
});
|
45914
|
-
};
|
45915
|
-
var getStyles2 = (styleSheet) => {
|
45916
|
-
if (styleSheet) {
|
45917
|
-
try {
|
45918
|
-
return [...styleSheet.cssRules].map((rule) => rule.cssText).join("");
|
45919
|
-
} catch (e2) {
|
45920
|
-
console.warn(
|
45921
|
-
"Access to stylesheet %s is denied. Ignoring\u2026",
|
45922
|
-
styleSheet.href
|
45923
|
-
);
|
45924
|
-
}
|
45925
|
-
}
|
45926
|
-
return "";
|
45927
|
-
};
|
45928
|
-
var defer = (fn) => setTimeout(fn, 0);
|
45929
|
-
var CopyHostStyles = ({
|
45930
|
-
children,
|
45931
|
-
debug = false,
|
45932
|
-
onStylesLoaded = () => null
|
45933
|
-
}) => {
|
45934
|
-
const { document: doc, window: win } = (0, import_react_frame_component.useFrame)();
|
45935
|
-
(0, import_react22.useEffect)(() => {
|
45936
|
-
if (!win || !doc) {
|
45937
|
-
return () => {
|
45938
|
-
};
|
45939
|
-
}
|
45940
|
-
let elements = [];
|
45941
|
-
const hashes = {};
|
45942
|
-
const lookupEl = (el) => elements.findIndex((elementMap) => elementMap.original === el);
|
45943
|
-
const mirrorEl = (el, onLoad = () => {
|
45944
|
-
}) => __async2(void 0, null, function* () {
|
45945
|
-
let mirror;
|
45946
|
-
if (el.nodeName === "LINK") {
|
45947
|
-
mirror = document.createElement("style");
|
45948
|
-
mirror.type = "text/css";
|
45949
|
-
let styleSheet = getStyleSheet(el);
|
45950
|
-
if (!styleSheet) {
|
45951
|
-
yield new Promise((resolve) => {
|
45952
|
-
const fn = () => {
|
45953
|
-
resolve();
|
45954
|
-
el.removeEventListener("load", fn);
|
45955
|
-
};
|
45956
|
-
el.addEventListener("load", fn);
|
45957
|
-
});
|
45958
|
-
styleSheet = getStyleSheet(el);
|
45959
|
-
}
|
45960
|
-
const styles = getStyles2(styleSheet);
|
45961
|
-
if (!styles) {
|
45962
|
-
if (debug) {
|
45963
|
-
console.warn(
|
45964
|
-
`Tried to load styles for link element, but couldn't find them. Skipping...`
|
45965
|
-
);
|
45966
|
-
}
|
45967
|
-
return;
|
45968
|
-
}
|
45969
|
-
mirror.innerHTML = styles;
|
45970
|
-
mirror.setAttribute("data-href", el.getAttribute("href"));
|
45971
|
-
} else {
|
45972
|
-
mirror = el.cloneNode(true);
|
45973
|
-
}
|
45974
|
-
mirror.onload = onLoad;
|
45975
|
-
return mirror;
|
45976
|
-
});
|
45977
|
-
const addEl = (el, onLoad = () => {
|
45978
|
-
}) => __async2(void 0, null, function* () {
|
45979
|
-
const index = lookupEl(el);
|
45980
|
-
if (index > -1) {
|
45981
|
-
if (debug)
|
45982
|
-
console.log(
|
45983
|
-
`Tried to add an element that was already mirrored. Updating instead...`
|
45984
|
-
);
|
45985
|
-
elements[index].mirror.innerText = el.innerText;
|
45986
|
-
onLoad();
|
45987
|
-
return;
|
45988
|
-
}
|
45989
|
-
const mirror = yield mirrorEl(el, onLoad);
|
45990
|
-
if (!mirror) {
|
45991
|
-
onLoad();
|
45992
|
-
return;
|
45993
|
-
}
|
45994
|
-
const elHash = (0, import_object_hash.default)(mirror.outerHTML);
|
45995
|
-
if (hashes[elHash]) {
|
45996
|
-
if (debug)
|
45997
|
-
console.log(
|
45998
|
-
`iframe already contains element that is being mirrored. Skipping...`
|
45999
|
-
);
|
46000
|
-
onLoad();
|
46001
|
-
return;
|
46002
|
-
}
|
46003
|
-
hashes[elHash] = true;
|
46004
|
-
mirror.onload = onLoad;
|
46005
|
-
doc.head.append(mirror);
|
46006
|
-
elements.push({ original: el, mirror });
|
46007
|
-
if (debug)
|
46008
|
-
console.log(`Added style node ${el.outerHTML}`);
|
46009
|
-
});
|
46010
|
-
const removeEl = (el) => {
|
46011
|
-
var _a3, _b;
|
46012
|
-
const index = lookupEl(el);
|
46013
|
-
if (index === -1) {
|
46014
|
-
if (debug)
|
46015
|
-
console.log(
|
46016
|
-
`Tried to remove an element that did not exist. Skipping...`
|
46017
|
-
);
|
46018
|
-
return;
|
46019
|
-
}
|
46020
|
-
const elHash = (0, import_object_hash.default)(el.outerHTML);
|
46021
|
-
(_b = (_a3 = elements[index]) == null ? void 0 : _a3.mirror) == null ? void 0 : _b.remove();
|
46022
|
-
delete hashes[elHash];
|
46023
|
-
if (debug)
|
46024
|
-
console.log(`Removed style node ${el.outerHTML}`);
|
46025
|
-
};
|
46026
|
-
const observer = new MutationObserver((mutations) => {
|
46027
|
-
mutations.forEach((mutation) => {
|
46028
|
-
if (mutation.type === "childList") {
|
46029
|
-
mutation.addedNodes.forEach((node) => {
|
46030
|
-
if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
|
46031
|
-
const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
|
46032
|
-
if (el && el.matches(styleSelector)) {
|
46033
|
-
defer(() => addEl(el));
|
46034
|
-
}
|
46035
|
-
}
|
46036
|
-
});
|
46037
|
-
mutation.removedNodes.forEach((node) => {
|
46038
|
-
if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
|
46039
|
-
const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
|
46040
|
-
if (el && el.matches(styleSelector)) {
|
46041
|
-
defer(() => removeEl(el));
|
46042
|
-
}
|
46043
|
-
}
|
46044
|
-
});
|
46045
|
-
}
|
46046
|
-
});
|
46047
|
-
});
|
46048
|
-
const parentDocument = win.parent.document;
|
46049
|
-
const collectedStyles = collectStyles(parentDocument);
|
46050
|
-
const hrefs = [];
|
46051
|
-
Promise.all(
|
46052
|
-
collectedStyles.map((styleNode, i2) => __async2(void 0, null, function* () {
|
46053
|
-
if (styleNode.nodeName === "LINK") {
|
46054
|
-
const linkHref = styleNode.href;
|
46055
|
-
if (hrefs.indexOf(linkHref) > -1) {
|
46056
|
-
return;
|
46057
|
-
}
|
46058
|
-
hrefs.push(linkHref);
|
46059
|
-
}
|
46060
|
-
const mirror = yield mirrorEl(styleNode);
|
46061
|
-
if (!mirror)
|
46062
|
-
return;
|
46063
|
-
elements.push({ original: styleNode, mirror });
|
46064
|
-
return mirror;
|
46065
|
-
}))
|
46066
|
-
).then((mirrorStyles) => {
|
46067
|
-
const filtered = mirrorStyles.filter(
|
46068
|
-
(el) => typeof el !== "undefined"
|
46069
|
-
);
|
46070
|
-
doc.head.innerHTML = "";
|
46071
|
-
doc.head.append(...filtered);
|
46072
|
-
observer.observe(parentDocument.head, { childList: true, subtree: true });
|
46073
|
-
filtered.forEach((el) => {
|
46074
|
-
const elHash = (0, import_object_hash.default)(el.outerHTML);
|
46075
|
-
hashes[elHash] = true;
|
46076
|
-
});
|
46077
|
-
onStylesLoaded();
|
46078
|
-
});
|
46079
|
-
return () => {
|
46080
|
-
observer.disconnect();
|
46081
|
-
};
|
46082
|
-
}, []);
|
46083
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, { children });
|
46084
|
-
};
|
46085
|
-
var AutoFrameComponent = import_react22.default.forwardRef(
|
46086
|
-
function(_a3, ref2) {
|
46087
|
-
var _b = _a3, { children, debug, onStylesLoaded } = _b, props = __objRest2(_b, ["children", "debug", "onStylesLoaded"]);
|
46088
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_react_frame_component.default, __spreadProps2(__spreadValues2({}, props), { ref: ref2, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(CopyHostStyles, { debug, onStylesLoaded, children }) }));
|
46089
|
-
}
|
46090
|
-
);
|
46091
|
-
AutoFrameComponent.displayName = "AutoFrameComponent";
|
46092
|
-
var AutoFrameComponent_default = AutoFrameComponent;
|
46093
|
-
}
|
46094
|
-
});
|
46095
|
-
|
46096
45810
|
// ../../node_modules/react-hotkeys-hook/dist/react-hotkeys-hook.esm.js
|
46097
45811
|
var react_hotkeys_hook_esm_exports = {};
|
46098
45812
|
__export(react_hotkeys_hook_esm_exports, {
|
@@ -46562,7 +46276,7 @@ var init_react_hotkeys_hook_esm = __esm({
|
|
46562
46276
|
});
|
46563
46277
|
|
46564
46278
|
// ../core/dist/index.js
|
46565
|
-
var
|
46279
|
+
var require_dist = __commonJS({
|
46566
46280
|
"../core/dist/index.js"(exports, module2) {
|
46567
46281
|
"use strict";
|
46568
46282
|
init_react_import();
|
@@ -54586,9 +54300,9 @@ var require_dist2 = __commonJS({
|
|
54586
54300
|
if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") {
|
54587
54301
|
__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
|
54588
54302
|
}
|
54589
|
-
var
|
54303
|
+
var React32 = require("react");
|
54590
54304
|
var Scheduler = require_scheduler2();
|
54591
|
-
var ReactSharedInternals =
|
54305
|
+
var ReactSharedInternals = React32.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
|
54592
54306
|
var suppressWarning = false;
|
54593
54307
|
function setSuppressWarning(newSuppressWarning) {
|
54594
54308
|
{
|
@@ -54637,7 +54351,7 @@ var require_dist2 = __commonJS({
|
|
54637
54351
|
var HostPortal = 4;
|
54638
54352
|
var HostComponent = 5;
|
54639
54353
|
var HostText = 6;
|
54640
|
-
var
|
54354
|
+
var Fragment18 = 7;
|
54641
54355
|
var Mode = 8;
|
54642
54356
|
var ContextConsumer = 9;
|
54643
54357
|
var ContextProvider = 10;
|
@@ -55793,7 +55507,7 @@ var require_dist2 = __commonJS({
|
|
55793
55507
|
return "DehydratedFragment";
|
55794
55508
|
case ForwardRef:
|
55795
55509
|
return getWrappedName$1(type, type.render, "ForwardRef");
|
55796
|
-
case
|
55510
|
+
case Fragment18:
|
55797
55511
|
return "Fragment";
|
55798
55512
|
case HostComponent:
|
55799
55513
|
return type;
|
@@ -56193,7 +55907,7 @@ var require_dist2 = __commonJS({
|
|
56193
55907
|
{
|
56194
55908
|
if (props.value == null) {
|
56195
55909
|
if (typeof props.children === "object" && props.children !== null) {
|
56196
|
-
|
55910
|
+
React32.Children.forEach(props.children, function(child) {
|
56197
55911
|
if (child == null) {
|
56198
55912
|
return;
|
56199
55913
|
}
|
@@ -64640,7 +64354,7 @@ var require_dist2 = __commonJS({
|
|
64640
64354
|
}
|
64641
64355
|
}
|
64642
64356
|
var fakeInternalInstance = {};
|
64643
|
-
var emptyRefsObject = new
|
64357
|
+
var emptyRefsObject = new React32.Component().refs;
|
64644
64358
|
var didWarnAboutStateAssignmentForComponent;
|
64645
64359
|
var didWarnAboutUninitializedState;
|
64646
64360
|
var didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate;
|
@@ -65464,7 +65178,7 @@ var require_dist2 = __commonJS({
|
|
65464
65178
|
}
|
65465
65179
|
}
|
65466
65180
|
function updateFragment2(returnFiber, current2, fragment, lanes, key) {
|
65467
|
-
if (current2 === null || current2.tag !==
|
65181
|
+
if (current2 === null || current2.tag !== Fragment18) {
|
65468
65182
|
var created = createFiberFromFragment(fragment, returnFiber.mode, lanes, key);
|
65469
65183
|
created.return = returnFiber;
|
65470
65184
|
return created;
|
@@ -65867,7 +65581,7 @@ var require_dist2 = __commonJS({
|
|
65867
65581
|
if (child.key === key) {
|
65868
65582
|
var elementType = element.type;
|
65869
65583
|
if (elementType === REACT_FRAGMENT_TYPE) {
|
65870
|
-
if (child.tag ===
|
65584
|
+
if (child.tag === Fragment18) {
|
65871
65585
|
deleteRemainingChildren(returnFiber, child.sibling);
|
65872
65586
|
var existing = useFiber(child, element.props.children);
|
65873
65587
|
existing.return = returnFiber;
|
@@ -70042,7 +69756,7 @@ var require_dist2 = __commonJS({
|
|
70042
69756
|
var _resolvedProps2 = workInProgress2.elementType === type ? _unresolvedProps2 : resolveDefaultProps(type, _unresolvedProps2);
|
70043
69757
|
return updateForwardRef(current2, workInProgress2, type, _resolvedProps2, renderLanes2);
|
70044
69758
|
}
|
70045
|
-
case
|
69759
|
+
case Fragment18:
|
70046
69760
|
return updateFragment(current2, workInProgress2, renderLanes2);
|
70047
69761
|
case Mode:
|
70048
69762
|
return updateMode(current2, workInProgress2, renderLanes2);
|
@@ -70315,7 +70029,7 @@ var require_dist2 = __commonJS({
|
|
70315
70029
|
case SimpleMemoComponent:
|
70316
70030
|
case FunctionComponent:
|
70317
70031
|
case ForwardRef:
|
70318
|
-
case
|
70032
|
+
case Fragment18:
|
70319
70033
|
case Mode:
|
70320
70034
|
case Profiler:
|
70321
70035
|
case ContextConsumer:
|
@@ -74574,7 +74288,7 @@ var require_dist2 = __commonJS({
|
|
74574
74288
|
return fiber;
|
74575
74289
|
}
|
74576
74290
|
function createFiberFromFragment(elements, mode, lanes, key) {
|
74577
|
-
var fiber = createFiber(
|
74291
|
+
var fiber = createFiber(Fragment18, elements, key, mode);
|
74578
74292
|
fiber.lanes = lanes;
|
74579
74293
|
return fiber;
|
74580
74294
|
}
|
@@ -76931,7 +76645,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
76931
76645
|
return el;
|
76932
76646
|
};
|
76933
76647
|
init_react_import2();
|
76934
|
-
var
|
76648
|
+
var import_react29 = require("react");
|
76935
76649
|
init_react_import2();
|
76936
76650
|
var import_react112 = require("react");
|
76937
76651
|
init_react_import2();
|
@@ -77450,6 +77164,16 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
77450
77164
|
init_react_import2();
|
77451
77165
|
var import_react132 = require("react");
|
77452
77166
|
init_react_import2();
|
77167
|
+
init_react_import2();
|
77168
|
+
var getChanged = (newItem, oldItem) => {
|
77169
|
+
return newItem ? Object.keys(newItem.props || {}).reduce((acc, item) => {
|
77170
|
+
const newItemProps = (newItem == null ? void 0 : newItem.props) || {};
|
77171
|
+
const oldItemProps = (oldItem == null ? void 0 : oldItem.props) || {};
|
77172
|
+
return __spreadProps2(__spreadValues2({}, acc), {
|
77173
|
+
[item]: oldItemProps[item] !== newItemProps[item]
|
77174
|
+
});
|
77175
|
+
}, {}) : {};
|
77176
|
+
};
|
77453
77177
|
var cache = { lastChange: {} };
|
77454
77178
|
var resolveAllComponentData = (content, config, onResolveStart, onResolveEnd) => __async2(void 0, null, function* () {
|
77455
77179
|
return yield Promise.all(
|
@@ -77466,25 +77190,15 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
77466
77190
|
var resolveComponentData = (item, config, onResolveStart, onResolveEnd) => __async2(void 0, null, function* () {
|
77467
77191
|
const configForItem = config.components[item.type];
|
77468
77192
|
if (configForItem.resolveData) {
|
77469
|
-
|
77470
|
-
|
77471
|
-
|
77472
|
-
);
|
77473
|
-
if (cache.lastChange[item.props.id]) {
|
77474
|
-
const { item: oldItem, resolved } = cache.lastChange[item.props.id];
|
77475
|
-
if (oldItem === item) {
|
77476
|
-
return resolved;
|
77477
|
-
}
|
77478
|
-
Object.keys(item.props).forEach((propName) => {
|
77479
|
-
if (oldItem.props[propName] === item.props[propName]) {
|
77480
|
-
changed[propName] = false;
|
77481
|
-
}
|
77482
|
-
});
|
77193
|
+
const { item: oldItem = {}, resolved = {} } = cache.lastChange[item.props.id] || {};
|
77194
|
+
if (item && item === oldItem) {
|
77195
|
+
return resolved;
|
77483
77196
|
}
|
77197
|
+
const changed = getChanged(item, oldItem);
|
77484
77198
|
if (onResolveStart) {
|
77485
77199
|
onResolveStart(item);
|
77486
77200
|
}
|
77487
|
-
const { props: resolvedProps, readOnly = {} } = yield configForItem.resolveData(item, { changed });
|
77201
|
+
const { props: resolvedProps, readOnly = {} } = yield configForItem.resolveData(item, { changed, lastData: oldItem });
|
77488
77202
|
const { readOnly: existingReadOnly = {} } = item || {};
|
77489
77203
|
const newReadOnly = __spreadValues2(__spreadValues2({}, existingReadOnly), readOnly);
|
77490
77204
|
const resolvedItem = __spreadProps2(__spreadValues2({}, item), {
|
@@ -77523,26 +77237,16 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
77523
77237
|
init_react_import2();
|
77524
77238
|
var cache2 = {};
|
77525
77239
|
var resolveRootData = (data, config) => __async2(void 0, null, function* () {
|
77526
|
-
var _a3, _b;
|
77240
|
+
var _a3, _b, _c, _d, _e;
|
77527
77241
|
if (((_a3 = config.root) == null ? void 0 : _a3.resolveData) && data.root.props) {
|
77528
|
-
|
77529
|
-
|
77530
|
-
{}
|
77531
|
-
);
|
77532
|
-
if (cache2.lastChange) {
|
77533
|
-
const { original, resolved } = cache2.lastChange;
|
77534
|
-
if (original === data.root) {
|
77535
|
-
return resolved;
|
77536
|
-
}
|
77537
|
-
Object.keys(data.root.props).forEach((propName) => {
|
77538
|
-
if (original.props[propName] === data.root.props[propName]) {
|
77539
|
-
changed[propName] = false;
|
77540
|
-
}
|
77541
|
-
});
|
77242
|
+
if (((_b = cache2.lastChange) == null ? void 0 : _b.original) === data.root) {
|
77243
|
+
return cache2.lastChange.resolved;
|
77542
77244
|
}
|
77245
|
+
const changed = getChanged(data.root, (_c = cache2.lastChange) == null ? void 0 : _c.original);
|
77543
77246
|
const rootWithProps = data.root;
|
77544
|
-
const resolvedRoot = yield (
|
77545
|
-
changed
|
77247
|
+
const resolvedRoot = yield (_e = config.root) == null ? void 0 : _e.resolveData(rootWithProps, {
|
77248
|
+
changed,
|
77249
|
+
lastData: ((_d = cache2.lastChange) == null ? void 0 : _d.original) || {}
|
77546
77250
|
});
|
77547
77251
|
cache2.lastChange = {
|
77548
77252
|
original: data.root,
|
@@ -77562,7 +77266,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
77562
77266
|
const [componentState, setComponentState] = (0, import_react132.useState)({});
|
77563
77267
|
const deferredSetStates = {};
|
77564
77268
|
const setComponentLoading = (0, import_react132.useCallback)(
|
77565
|
-
(id, loading,
|
77269
|
+
(id, loading, defer2 = 0) => {
|
77566
77270
|
if (deferredSetStates[id]) {
|
77567
77271
|
clearTimeout(deferredSetStates[id]);
|
77568
77272
|
delete deferredSetStates[id];
|
@@ -77572,7 +77276,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
77572
77276
|
[id]: __spreadProps2(__spreadValues2({}, prev[id]), { loading })
|
77573
77277
|
}));
|
77574
77278
|
delete deferredSetStates[id];
|
77575
|
-
},
|
77279
|
+
}, defer2);
|
77576
77280
|
},
|
77577
77281
|
[]
|
77578
77282
|
);
|
@@ -77697,17 +77401,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
77697
77401
|
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_jsx_runtime13.Fragment, { children: renderHeaderActions && renderHeaderActions({
|
77698
77402
|
state: appState,
|
77699
77403
|
dispatch
|
77700
|
-
}) })
|
77701
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
77702
|
-
Button,
|
77703
|
-
{
|
77704
|
-
onClick: () => {
|
77705
|
-
onPublish && onPublish(data);
|
77706
|
-
},
|
77707
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Globe, { size: "14px" }),
|
77708
|
-
children: "Publish"
|
77709
|
-
}
|
77710
|
-
) })
|
77404
|
+
}) })
|
77711
77405
|
] })
|
77712
77406
|
}
|
77713
77407
|
);
|
@@ -78616,7 +78310,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78616
78310
|
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Render2, __spreadProps2(__spreadValues2({}, mergedProps), { children }));
|
78617
78311
|
};
|
78618
78312
|
init_react_import2();
|
78619
|
-
var styles_module_default14 = { "PuckFields": "
|
78313
|
+
var styles_module_default14 = { "PuckFields": "_PuckFields_1o0if_1", "PuckFields--isLoading": "_PuckFields--isLoading_1o0if_6", "PuckFields-loadingOverlay": "_PuckFields-loadingOverlay_1o0if_10" };
|
78620
78314
|
var import_react19 = require("react");
|
78621
78315
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
78622
78316
|
var getClassName19 = get_class_name_factory_default2("PuckFields", styles_module_default14);
|
@@ -78627,13 +78321,73 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78627
78321
|
children,
|
78628
78322
|
isLoading
|
78629
78323
|
}) => {
|
78630
|
-
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName19(), children: [
|
78324
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: getClassName19({ isLoading }), children: [
|
78631
78325
|
children,
|
78632
78326
|
isLoading && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName19("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react_spinners6.ClipLoader, { "aria-label": "loading" }) })
|
78633
78327
|
] });
|
78634
78328
|
};
|
78329
|
+
var useResolvedFields = () => {
|
78330
|
+
var _a3;
|
78331
|
+
const { selectedItem, state, config } = useAppContext2();
|
78332
|
+
const { data } = state;
|
78333
|
+
const rootFields = ((_a3 = config.root) == null ? void 0 : _a3.fields) || defaultPageFields;
|
78334
|
+
const componentConfig = selectedItem ? config.components[selectedItem.type] : null;
|
78335
|
+
const defaultFields = selectedItem ? componentConfig == null ? void 0 : componentConfig.fields : rootFields;
|
78336
|
+
const rootProps = data.root.props || data.root;
|
78337
|
+
const [lastSelectedData, setLastSelectedData] = (0, import_react19.useState)(
|
78338
|
+
{}
|
78339
|
+
);
|
78340
|
+
const [resolvedFields, setResolvedFields] = (0, import_react19.useState)(defaultFields || {});
|
78341
|
+
const [fieldsLoading, setFieldsLoading] = (0, import_react19.useState)(false);
|
78342
|
+
const defaultResolveFields = (_componentData, _params) => defaultFields;
|
78343
|
+
const componentData = selectedItem ? selectedItem : { props: rootProps, readOnly: data.root.readOnly };
|
78344
|
+
const resolveFields = (0, import_react19.useCallback)(
|
78345
|
+
(..._0) => __async2(void 0, [..._0], function* (fields = {}) {
|
78346
|
+
var _a22, _b, _c;
|
78347
|
+
const lastData = ((_a22 = lastSelectedData.props) == null ? void 0 : _a22.id) === componentData.props.id ? lastSelectedData : {};
|
78348
|
+
const changed = getChanged(componentData, lastData);
|
78349
|
+
setLastSelectedData(componentData);
|
78350
|
+
if (selectedItem && (componentConfig == null ? void 0 : componentConfig.resolveFields)) {
|
78351
|
+
return yield componentConfig == null ? void 0 : componentConfig.resolveFields(
|
78352
|
+
componentData,
|
78353
|
+
{
|
78354
|
+
changed,
|
78355
|
+
fields,
|
78356
|
+
lastFields: resolvedFields,
|
78357
|
+
lastData,
|
78358
|
+
appState: state
|
78359
|
+
}
|
78360
|
+
);
|
78361
|
+
}
|
78362
|
+
if (!selectedItem && ((_b = config.root) == null ? void 0 : _b.resolveFields)) {
|
78363
|
+
return yield (_c = config.root) == null ? void 0 : _c.resolveFields(componentData, {
|
78364
|
+
changed,
|
78365
|
+
fields,
|
78366
|
+
lastFields: resolvedFields,
|
78367
|
+
lastData,
|
78368
|
+
appState: state
|
78369
|
+
});
|
78370
|
+
}
|
78371
|
+
return defaultResolveFields(componentData, {
|
78372
|
+
changed,
|
78373
|
+
fields,
|
78374
|
+
lastFields: resolvedFields,
|
78375
|
+
lastData
|
78376
|
+
});
|
78377
|
+
}),
|
78378
|
+
[data, config, componentData, selectedItem, resolvedFields, state]
|
78379
|
+
);
|
78380
|
+
(0, import_react19.useEffect)(() => {
|
78381
|
+
setFieldsLoading(true);
|
78382
|
+
resolveFields(defaultFields).then((fields) => {
|
78383
|
+
setResolvedFields(fields || {});
|
78384
|
+
setFieldsLoading(false);
|
78385
|
+
});
|
78386
|
+
}, [data, defaultFields]);
|
78387
|
+
return [resolvedFields, fieldsLoading];
|
78388
|
+
};
|
78635
78389
|
var Fields = () => {
|
78636
|
-
var _a3, _b
|
78390
|
+
var _a3, _b;
|
78637
78391
|
const {
|
78638
78392
|
selectedItem,
|
78639
78393
|
state,
|
@@ -78645,9 +78399,9 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78645
78399
|
} = useAppContext2();
|
78646
78400
|
const { data, ui } = state;
|
78647
78401
|
const { itemSelector } = ui;
|
78648
|
-
const
|
78649
|
-
const
|
78650
|
-
const isLoading =
|
78402
|
+
const [fields, fieldsResolving] = useResolvedFields();
|
78403
|
+
const componentResolving = selectedItem ? (_a3 = componentState[selectedItem == null ? void 0 : selectedItem.props.id]) == null ? void 0 : _a3.loading : (_b = componentState["puck-root"]) == null ? void 0 : _b.loading;
|
78404
|
+
const isLoading = fieldsResolving || componentResolving;
|
78651
78405
|
const rootProps = data.root.props || data.root;
|
78652
78406
|
const Wrapper = (0, import_react19.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
|
78653
78407
|
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
@@ -78659,6 +78413,8 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78659
78413
|
},
|
78660
78414
|
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
|
78661
78415
|
const field = fields[fieldName];
|
78416
|
+
if (!(field == null ? void 0 : field.type))
|
78417
|
+
return null;
|
78662
78418
|
const onChange = (value, updatedUi) => {
|
78663
78419
|
var _a22, _b2;
|
78664
78420
|
let currentProps;
|
@@ -78894,15 +78650,212 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78894
78650
|
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ComponentList, { id: "all" }) });
|
78895
78651
|
};
|
78896
78652
|
init_react_import2();
|
78897
|
-
var
|
78898
|
-
var import_auto_frame_component = __toESM2(require_dist());
|
78653
|
+
var import_react23 = require("react");
|
78899
78654
|
init_react_import2();
|
78900
|
-
var
|
78655
|
+
var import_react222 = __toESM2(require("react"));
|
78656
|
+
var import_react_frame_component = __toESM2(require_lib());
|
78657
|
+
var import_object_hash = __toESM2(require_object_hash());
|
78901
78658
|
var import_jsx_runtime29 = require("react/jsx-runtime");
|
78659
|
+
var styleSelector = 'style, link[rel="stylesheet"]';
|
78660
|
+
var collectStyles = (doc) => {
|
78661
|
+
const collected = [];
|
78662
|
+
doc.head.querySelectorAll(styleSelector).forEach((style2) => {
|
78663
|
+
collected.push(style2);
|
78664
|
+
});
|
78665
|
+
return collected;
|
78666
|
+
};
|
78667
|
+
var getStyleSheet = (el) => {
|
78668
|
+
return Array.from(document.styleSheets).find((ss) => {
|
78669
|
+
const ownerNode = ss.ownerNode;
|
78670
|
+
return ownerNode.href === el.href;
|
78671
|
+
});
|
78672
|
+
};
|
78673
|
+
var getStyles2 = (styleSheet) => {
|
78674
|
+
if (styleSheet) {
|
78675
|
+
try {
|
78676
|
+
return [...styleSheet.cssRules].map((rule) => rule.cssText).join("");
|
78677
|
+
} catch (e2) {
|
78678
|
+
console.warn(
|
78679
|
+
"Access to stylesheet %s is denied. Ignoring\u2026",
|
78680
|
+
styleSheet.href
|
78681
|
+
);
|
78682
|
+
}
|
78683
|
+
}
|
78684
|
+
return "";
|
78685
|
+
};
|
78686
|
+
var defer = (fn) => setTimeout(fn, 0);
|
78687
|
+
var CopyHostStyles = ({
|
78688
|
+
children,
|
78689
|
+
debug = false,
|
78690
|
+
onStylesLoaded = () => null
|
78691
|
+
}) => {
|
78692
|
+
const { document: doc, window: win } = (0, import_react_frame_component.useFrame)();
|
78693
|
+
(0, import_react222.useEffect)(() => {
|
78694
|
+
if (!win || !doc) {
|
78695
|
+
return () => {
|
78696
|
+
};
|
78697
|
+
}
|
78698
|
+
let elements = [];
|
78699
|
+
const hashes = {};
|
78700
|
+
const lookupEl = (el) => elements.findIndex((elementMap) => elementMap.original === el);
|
78701
|
+
const mirrorEl = (el, inlineStyles = false) => __async2(void 0, null, function* () {
|
78702
|
+
let mirror;
|
78703
|
+
if (el.nodeName === "LINK" && inlineStyles) {
|
78704
|
+
mirror = document.createElement("style");
|
78705
|
+
mirror.type = "text/css";
|
78706
|
+
let styleSheet = getStyleSheet(el);
|
78707
|
+
if (!styleSheet) {
|
78708
|
+
yield new Promise((resolve) => {
|
78709
|
+
const fn = () => {
|
78710
|
+
resolve();
|
78711
|
+
el.removeEventListener("load", fn);
|
78712
|
+
};
|
78713
|
+
el.addEventListener("load", fn);
|
78714
|
+
});
|
78715
|
+
styleSheet = getStyleSheet(el);
|
78716
|
+
}
|
78717
|
+
const styles = getStyles2(styleSheet);
|
78718
|
+
if (!styles) {
|
78719
|
+
if (debug) {
|
78720
|
+
console.warn(
|
78721
|
+
`Tried to load styles for link element, but couldn't find them. Skipping...`
|
78722
|
+
);
|
78723
|
+
}
|
78724
|
+
return;
|
78725
|
+
}
|
78726
|
+
mirror.innerHTML = styles;
|
78727
|
+
mirror.setAttribute("data-href", el.getAttribute("href"));
|
78728
|
+
} else {
|
78729
|
+
mirror = el.cloneNode(true);
|
78730
|
+
}
|
78731
|
+
return mirror;
|
78732
|
+
});
|
78733
|
+
const addEl = (el) => __async2(void 0, null, function* () {
|
78734
|
+
const index = lookupEl(el);
|
78735
|
+
if (index > -1) {
|
78736
|
+
if (debug)
|
78737
|
+
console.log(
|
78738
|
+
`Tried to add an element that was already mirrored. Updating instead...`
|
78739
|
+
);
|
78740
|
+
elements[index].mirror.innerText = el.innerText;
|
78741
|
+
return;
|
78742
|
+
}
|
78743
|
+
const mirror = yield mirrorEl(el);
|
78744
|
+
if (!mirror) {
|
78745
|
+
return;
|
78746
|
+
}
|
78747
|
+
const elHash = (0, import_object_hash.default)(mirror.outerHTML);
|
78748
|
+
if (hashes[elHash]) {
|
78749
|
+
if (debug)
|
78750
|
+
console.log(
|
78751
|
+
`iframe already contains element that is being mirrored. Skipping...`
|
78752
|
+
);
|
78753
|
+
return;
|
78754
|
+
}
|
78755
|
+
hashes[elHash] = true;
|
78756
|
+
doc.head.append(mirror);
|
78757
|
+
elements.push({ original: el, mirror });
|
78758
|
+
if (debug)
|
78759
|
+
console.log(`Added style node ${el.outerHTML}`);
|
78760
|
+
});
|
78761
|
+
const removeEl = (el) => {
|
78762
|
+
var _a3, _b;
|
78763
|
+
const index = lookupEl(el);
|
78764
|
+
if (index === -1) {
|
78765
|
+
if (debug)
|
78766
|
+
console.log(
|
78767
|
+
`Tried to remove an element that did not exist. Skipping...`
|
78768
|
+
);
|
78769
|
+
return;
|
78770
|
+
}
|
78771
|
+
const elHash = (0, import_object_hash.default)(el.outerHTML);
|
78772
|
+
(_b = (_a3 = elements[index]) == null ? void 0 : _a3.mirror) == null ? void 0 : _b.remove();
|
78773
|
+
delete hashes[elHash];
|
78774
|
+
if (debug)
|
78775
|
+
console.log(`Removed style node ${el.outerHTML}`);
|
78776
|
+
};
|
78777
|
+
const observer = new MutationObserver((mutations) => {
|
78778
|
+
mutations.forEach((mutation) => {
|
78779
|
+
if (mutation.type === "childList") {
|
78780
|
+
mutation.addedNodes.forEach((node) => {
|
78781
|
+
if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
|
78782
|
+
const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
|
78783
|
+
if (el && el.matches(styleSelector)) {
|
78784
|
+
defer(() => addEl(el));
|
78785
|
+
}
|
78786
|
+
}
|
78787
|
+
});
|
78788
|
+
mutation.removedNodes.forEach((node) => {
|
78789
|
+
if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
|
78790
|
+
const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
|
78791
|
+
if (el && el.matches(styleSelector)) {
|
78792
|
+
defer(() => removeEl(el));
|
78793
|
+
}
|
78794
|
+
}
|
78795
|
+
});
|
78796
|
+
}
|
78797
|
+
});
|
78798
|
+
});
|
78799
|
+
const parentDocument = win.parent.document;
|
78800
|
+
const collectedStyles = collectStyles(parentDocument);
|
78801
|
+
const hrefs = [];
|
78802
|
+
let stylesLoaded = 0;
|
78803
|
+
Promise.all(
|
78804
|
+
collectedStyles.map((styleNode, i2) => __async2(void 0, null, function* () {
|
78805
|
+
if (styleNode.nodeName === "LINK") {
|
78806
|
+
const linkHref = styleNode.href;
|
78807
|
+
if (hrefs.indexOf(linkHref) > -1) {
|
78808
|
+
return;
|
78809
|
+
}
|
78810
|
+
hrefs.push(linkHref);
|
78811
|
+
}
|
78812
|
+
const mirror = yield mirrorEl(styleNode);
|
78813
|
+
if (!mirror)
|
78814
|
+
return;
|
78815
|
+
elements.push({ original: styleNode, mirror });
|
78816
|
+
return mirror;
|
78817
|
+
}))
|
78818
|
+
).then((mirrorStyles) => {
|
78819
|
+
const filtered = mirrorStyles.filter(
|
78820
|
+
(el) => typeof el !== "undefined"
|
78821
|
+
);
|
78822
|
+
filtered.forEach((mirror) => {
|
78823
|
+
mirror.onload = () => {
|
78824
|
+
stylesLoaded = stylesLoaded + 1;
|
78825
|
+
if (stylesLoaded >= elements.length) {
|
78826
|
+
onStylesLoaded();
|
78827
|
+
}
|
78828
|
+
};
|
78829
|
+
});
|
78830
|
+
doc.head.innerHTML = "";
|
78831
|
+
doc.head.append(...filtered);
|
78832
|
+
observer.observe(parentDocument.head, { childList: true, subtree: true });
|
78833
|
+
filtered.forEach((el) => {
|
78834
|
+
const elHash = (0, import_object_hash.default)(el.outerHTML);
|
78835
|
+
hashes[elHash] = true;
|
78836
|
+
});
|
78837
|
+
});
|
78838
|
+
return () => {
|
78839
|
+
observer.disconnect();
|
78840
|
+
};
|
78841
|
+
}, []);
|
78842
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_jsx_runtime29.Fragment, { children });
|
78843
|
+
};
|
78844
|
+
var AutoFrameComponent = import_react222.default.forwardRef(
|
78845
|
+
function(_a3, ref2) {
|
78846
|
+
var _b = _a3, { children, debug, onStylesLoaded } = _b, props = __objRest2(_b, ["children", "debug", "onStylesLoaded"]);
|
78847
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_frame_component.default, __spreadProps2(__spreadValues2({}, props), { ref: ref2, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(CopyHostStyles, { debug, onStylesLoaded, children }) }));
|
78848
|
+
}
|
78849
|
+
);
|
78850
|
+
AutoFrameComponent.displayName = "AutoFrameComponent";
|
78851
|
+
var AutoFrame_default = AutoFrameComponent;
|
78852
|
+
init_react_import2();
|
78853
|
+
var styles_module_default16 = { "PuckPreview": "_PuckPreview_rxwlr_1", "PuckPreview-frame": "_PuckPreview-frame_rxwlr_5" };
|
78854
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
78902
78855
|
var getClassName21 = get_class_name_factory_default2("PuckPreview", styles_module_default16);
|
78903
78856
|
var Preview = ({ id = "puck-preview" }) => {
|
78904
78857
|
const { config, dispatch, state, setStatus, iframe } = useAppContext2();
|
78905
|
-
const Page = (0,
|
78858
|
+
const Page = (0, import_react23.useCallback)(
|
78906
78859
|
(pageProps) => {
|
78907
78860
|
var _a3, _b;
|
78908
78861
|
return ((_a3 = config.root) == null ? void 0 : _a3.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadProps2(__spreadValues2({
|
@@ -78910,13 +78863,13 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78910
78863
|
}, pageProps), {
|
78911
78864
|
editMode: true,
|
78912
78865
|
puck: { renderDropZone: DropZone }
|
78913
|
-
})) : /* @__PURE__ */ (0,
|
78866
|
+
})) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_jsx_runtime30.Fragment, { children: pageProps.children });
|
78914
78867
|
},
|
78915
78868
|
[config.root]
|
78916
78869
|
);
|
78917
78870
|
const rootProps = state.data.root.props || state.data.root;
|
78918
|
-
const ref2 = (0,
|
78919
|
-
return /* @__PURE__ */ (0,
|
78871
|
+
const ref2 = (0, import_react23.useRef)(null);
|
78872
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
78920
78873
|
"div",
|
78921
78874
|
{
|
78922
78875
|
className: getClassName21(),
|
@@ -78924,8 +78877,8 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78924
78877
|
onClick: () => {
|
78925
78878
|
dispatch({ type: "setUi", ui: __spreadProps2(__spreadValues2({}, state.ui), { itemSelector: null }) });
|
78926
78879
|
},
|
78927
|
-
children: iframe.enabled ? /* @__PURE__ */ (0,
|
78928
|
-
|
78880
|
+
children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
78881
|
+
AutoFrame_default,
|
78929
78882
|
{
|
78930
78883
|
id: "preview-frame",
|
78931
78884
|
className: getClassName21("frame"),
|
@@ -78934,9 +78887,9 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78934
78887
|
onStylesLoaded: () => {
|
78935
78888
|
setStatus("READY");
|
78936
78889
|
},
|
78937
|
-
children: /* @__PURE__ */ (0,
|
78890
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Page, __spreadProps2(__spreadValues2({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(DropZone, { zone: rootDroppableId2 }) }))
|
78938
78891
|
}
|
78939
|
-
) : /* @__PURE__ */ (0,
|
78892
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { id: "preview-frame", className: getClassName21("frame"), children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Page, __spreadProps2(__spreadValues2({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(DropZone, { zone: rootDroppableId2 }) })) })
|
78940
78893
|
}
|
78941
78894
|
);
|
78942
78895
|
};
|
@@ -78968,7 +78921,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78968
78921
|
el.style.scrollMargin = oldStyle.scrollMargin || "";
|
78969
78922
|
}
|
78970
78923
|
};
|
78971
|
-
var
|
78924
|
+
var import_react24 = require("react");
|
78972
78925
|
init_react_import2();
|
78973
78926
|
var isChildOfZone = (item, maybeChild, ctx) => {
|
78974
78927
|
var _a3;
|
@@ -78978,7 +78931,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78978
78931
|
return area === item.props.id;
|
78979
78932
|
})) : false;
|
78980
78933
|
};
|
78981
|
-
var
|
78934
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
78982
78935
|
var getClassName222 = get_class_name_factory_default2("LayerTree", styles_module_default17);
|
78983
78936
|
var getClassNameLayer = get_class_name_factory_default2("Layer", styles_module_default17);
|
78984
78937
|
var LayerTree = ({
|
@@ -78991,15 +78944,15 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
78991
78944
|
label
|
78992
78945
|
}) => {
|
78993
78946
|
const zones = data.zones || {};
|
78994
|
-
const ctx = (0,
|
78995
|
-
return /* @__PURE__ */ (0,
|
78996
|
-
label && /* @__PURE__ */ (0,
|
78997
|
-
/* @__PURE__ */ (0,
|
78947
|
+
const ctx = (0, import_react24.useContext)(dropZoneContext2);
|
78948
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
|
78949
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: getClassName222("zoneTitle"), children: [
|
78950
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassName222("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Layers, { size: "16" }) }),
|
78998
78951
|
" ",
|
78999
78952
|
label
|
79000
78953
|
] }),
|
79001
|
-
/* @__PURE__ */ (0,
|
79002
|
-
zoneContent.length === 0 && /* @__PURE__ */ (0,
|
78954
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("ul", { className: getClassName222(), children: [
|
78955
|
+
zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassName222("helper"), children: "No items" }),
|
79003
78956
|
zoneContent.map((item, i2) => {
|
79004
78957
|
var _a3;
|
79005
78958
|
const isSelected = (itemSelector == null ? void 0 : itemSelector.index) === i2 && (itemSelector.zone === zone || itemSelector.zone === rootDroppableId2 && !zone);
|
@@ -79015,7 +78968,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79015
78968
|
const selectedItem = itemSelector && data ? getItem2(itemSelector, data) : null;
|
79016
78969
|
const isHovering = hoveringComponent === item.props.id;
|
79017
78970
|
const childIsSelected = isChildOfZone(item, selectedItem, ctx);
|
79018
|
-
return /* @__PURE__ */ (0,
|
78971
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
79019
78972
|
"li",
|
79020
78973
|
{
|
79021
78974
|
className: getClassNameLayer({
|
@@ -79025,7 +78978,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79025
78978
|
childIsSelected
|
79026
78979
|
}),
|
79027
78980
|
children: [
|
79028
|
-
/* @__PURE__ */ (0,
|
78981
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
79029
78982
|
"button",
|
79030
78983
|
{
|
79031
78984
|
className: getClassNameLayer("clickable"),
|
@@ -79057,22 +79010,22 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79057
79010
|
setHoveringComponent(null);
|
79058
79011
|
},
|
79059
79012
|
children: [
|
79060
|
-
containsZone && /* @__PURE__ */ (0,
|
79013
|
+
containsZone && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
79061
79014
|
"div",
|
79062
79015
|
{
|
79063
79016
|
className: getClassNameLayer("chevron"),
|
79064
79017
|
title: isSelected ? "Collapse" : "Expand",
|
79065
|
-
children: /* @__PURE__ */ (0,
|
79018
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ChevronDown, { size: "12" })
|
79066
79019
|
}
|
79067
79020
|
),
|
79068
|
-
/* @__PURE__ */ (0,
|
79069
|
-
/* @__PURE__ */ (0,
|
79070
|
-
/* @__PURE__ */ (0,
|
79021
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: getClassNameLayer("title"), children: [
|
79022
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(LayoutGrid, { size: "16" }) }),
|
79023
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("name"), children: (_a3 = config.components[item.type]["label"]) != null ? _a3 : item.type })
|
79071
79024
|
] })
|
79072
79025
|
]
|
79073
79026
|
}
|
79074
79027
|
) }),
|
79075
|
-
containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0,
|
79028
|
+
containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
79076
79029
|
LayerTree,
|
79077
79030
|
{
|
79078
79031
|
config,
|
@@ -79092,13 +79045,13 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79092
79045
|
] })
|
79093
79046
|
] });
|
79094
79047
|
};
|
79095
|
-
var
|
79096
|
-
var
|
79048
|
+
var import_react25 = require("react");
|
79049
|
+
var import_jsx_runtime322 = require("react/jsx-runtime");
|
79097
79050
|
var Outline = () => {
|
79098
79051
|
const { dispatch, state, overrides, config } = useAppContext2();
|
79099
79052
|
const { data, ui } = state;
|
79100
79053
|
const { itemSelector } = ui;
|
79101
|
-
const setItemSelector = (0,
|
79054
|
+
const setItemSelector = (0, import_react25.useCallback)(
|
79102
79055
|
(newItemSelector) => {
|
79103
79056
|
dispatch({
|
79104
79057
|
type: "setUi",
|
@@ -79107,9 +79060,9 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79107
79060
|
},
|
79108
79061
|
[]
|
79109
79062
|
);
|
79110
|
-
const Wrapper = (0,
|
79111
|
-
return /* @__PURE__ */ (0,
|
79112
|
-
(ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId2]) && /* @__PURE__ */ (0,
|
79063
|
+
const Wrapper = (0, import_react25.useMemo)(() => overrides.outline || "div", [overrides]);
|
79064
|
+
return /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(dropZoneContext2.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime322.jsxs)(import_jsx_runtime322.Fragment, { children: [
|
79065
|
+
(ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId2]) && /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
|
79113
79066
|
LayerTree,
|
79114
79067
|
{
|
79115
79068
|
config,
|
@@ -79122,7 +79075,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79122
79075
|
),
|
79123
79076
|
Object.entries(findZonesForArea(data, "root")).map(
|
79124
79077
|
([zoneKey, zone]) => {
|
79125
|
-
return /* @__PURE__ */ (0,
|
79078
|
+
return /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
|
79126
79079
|
LayerTree,
|
79127
79080
|
{
|
79128
79081
|
config,
|
@@ -79201,12 +79154,12 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79201
79154
|
};
|
79202
79155
|
}
|
79203
79156
|
init_react_import2();
|
79204
|
-
var
|
79157
|
+
var import_react26 = require("react");
|
79205
79158
|
var import_use_debounce3 = (init_index_module(), __toCommonJS(index_module_exports));
|
79206
79159
|
var EMPTY_HISTORY_INDEX = -1;
|
79207
79160
|
function useHistoryStore() {
|
79208
|
-
const [histories, setHistories] = (0,
|
79209
|
-
const [index, setIndex] = (0,
|
79161
|
+
const [histories, setHistories] = (0, import_react26.useState)([]);
|
79162
|
+
const [index, setIndex] = (0, import_react26.useState)(EMPTY_HISTORY_INDEX);
|
79210
79163
|
const hasPast = index > EMPTY_HISTORY_INDEX;
|
79211
79164
|
const hasFuture = index < histories.length - 1;
|
79212
79165
|
const currentHistory = histories[index];
|
@@ -79356,16 +79309,16 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79356
79309
|
var styles = window.getComputedStyle(el);
|
79357
79310
|
return calculateBox3(borderBox, styles);
|
79358
79311
|
};
|
79359
|
-
var
|
79312
|
+
var import_react28 = require("react");
|
79360
79313
|
init_react_import2();
|
79361
|
-
var
|
79314
|
+
var import_react27 = require("react");
|
79362
79315
|
init_react_import2();
|
79363
79316
|
var styles_module_default18 = { "ViewportControls": "_ViewportControls_3zdvn_1", "ViewportControls-divider": "_ViewportControls-divider_3zdvn_15", "ViewportControls-zoomSelect": "_ViewportControls-zoomSelect_3zdvn_21", "ViewportButton--isActive": "_ViewportButton--isActive_3zdvn_33", "ViewportButton-inner": "_ViewportButton-inner_3zdvn_33" };
|
79364
|
-
var
|
79317
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
79365
79318
|
var icons = {
|
79366
|
-
Smartphone: /* @__PURE__ */ (0,
|
79367
|
-
Tablet: /* @__PURE__ */ (0,
|
79368
|
-
Monitor: /* @__PURE__ */ (0,
|
79319
|
+
Smartphone: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Smartphone, { size: 16 }),
|
79320
|
+
Tablet: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Tablet, { size: 16 }),
|
79321
|
+
Monitor: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Monitor, { size: 16 })
|
79369
79322
|
};
|
79370
79323
|
var getClassName23 = get_class_name_factory_default2("ViewportControls", styles_module_default18);
|
79371
79324
|
var getClassNameButton = get_class_name_factory_default2("ViewportButton", styles_module_default18);
|
@@ -79377,11 +79330,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79377
79330
|
onClick
|
79378
79331
|
}) => {
|
79379
79332
|
const { state } = useAppContext2();
|
79380
|
-
const [isActive2, setIsActive] = (0,
|
79381
|
-
(0,
|
79333
|
+
const [isActive2, setIsActive] = (0, import_react27.useState)(false);
|
79334
|
+
(0, import_react27.useEffect)(() => {
|
79382
79335
|
setIsActive(width === state.ui.viewports.current.width);
|
79383
79336
|
}, [width, state.ui.viewports.current.width]);
|
79384
|
-
return /* @__PURE__ */ (0,
|
79337
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: getClassNameButton({ isActive: isActive2 }), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
79385
79338
|
IconButton,
|
79386
79339
|
{
|
79387
79340
|
title,
|
@@ -79390,7 +79343,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79390
79343
|
e2.stopPropagation();
|
79391
79344
|
onClick({ width, height });
|
79392
79345
|
},
|
79393
|
-
children: /* @__PURE__ */ (0,
|
79346
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: getClassNameButton("inner"), children })
|
79394
79347
|
}
|
79395
79348
|
) });
|
79396
79349
|
};
|
@@ -79414,7 +79367,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79414
79367
|
const defaultsContainAutoZoom = defaultZoomOptions.find(
|
79415
79368
|
(option) => option.value === autoZoom
|
79416
79369
|
);
|
79417
|
-
const zoomOptions = (0,
|
79370
|
+
const zoomOptions = (0, import_react27.useMemo)(
|
79418
79371
|
() => [
|
79419
79372
|
...defaultZoomOptions,
|
79420
79373
|
...defaultsContainAutoZoom ? [] : [
|
@@ -79426,8 +79379,8 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79426
79379
|
].filter((a2) => a2.value <= autoZoom).sort((a2, b) => a2.value > b.value ? 1 : -1),
|
79427
79380
|
[autoZoom]
|
79428
79381
|
);
|
79429
|
-
return /* @__PURE__ */ (0,
|
79430
|
-
viewports.map((viewport, i2) => /* @__PURE__ */ (0,
|
79382
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: getClassName23(), children: [
|
79383
|
+
viewports.map((viewport, i2) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
79431
79384
|
ViewportButton,
|
79432
79385
|
{
|
79433
79386
|
height: viewport.height,
|
@@ -79438,8 +79391,8 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79438
79391
|
},
|
79439
79392
|
i2
|
79440
79393
|
)),
|
79441
|
-
/* @__PURE__ */ (0,
|
79442
|
-
/* @__PURE__ */ (0,
|
79394
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName23("divider") }),
|
79395
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
79443
79396
|
IconButton,
|
79444
79397
|
{
|
79445
79398
|
title: "Zoom viewport out",
|
@@ -79453,10 +79406,10 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79453
79406
|
)].value
|
79454
79407
|
);
|
79455
79408
|
},
|
79456
|
-
children: /* @__PURE__ */ (0,
|
79409
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ZoomOut, { size: 16 })
|
79457
79410
|
}
|
79458
79411
|
),
|
79459
|
-
/* @__PURE__ */ (0,
|
79412
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
79460
79413
|
IconButton,
|
79461
79414
|
{
|
79462
79415
|
title: "Zoom viewport in",
|
@@ -79470,11 +79423,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79470
79423
|
)].value
|
79471
79424
|
);
|
79472
79425
|
},
|
79473
|
-
children: /* @__PURE__ */ (0,
|
79426
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ZoomIn, { size: 16 })
|
79474
79427
|
}
|
79475
79428
|
),
|
79476
|
-
/* @__PURE__ */ (0,
|
79477
|
-
/* @__PURE__ */ (0,
|
79429
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: getClassName23("divider") }),
|
79430
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
79478
79431
|
"select",
|
79479
79432
|
{
|
79480
79433
|
className: getClassName23("zoomSelect"),
|
@@ -79482,7 +79435,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79482
79435
|
onChange: (e2) => {
|
79483
79436
|
onZoom(parseFloat(e2.currentTarget.value));
|
79484
79437
|
},
|
79485
|
-
children: zoomOptions.map((option) => /* @__PURE__ */ (0,
|
79438
|
+
children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
79486
79439
|
"option",
|
79487
79440
|
{
|
79488
79441
|
value: option.value,
|
@@ -79524,24 +79477,24 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79524
79477
|
}
|
79525
79478
|
return { autoZoom, rootHeight, zoom };
|
79526
79479
|
};
|
79527
|
-
var
|
79480
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
79528
79481
|
var getClassName24 = get_class_name_factory_default2("PuckCanvas", styles_module_default19);
|
79529
79482
|
var ZOOM_ON_CHANGE = true;
|
79530
79483
|
var Canvas = () => {
|
79531
79484
|
const { status, iframe } = useAppContext2();
|
79532
79485
|
const { dispatch, state, overrides, setUi, zoomConfig, setZoomConfig } = useAppContext2();
|
79533
79486
|
const { ui } = state;
|
79534
|
-
const frameRef = (0,
|
79535
|
-
const [showTransition, setShowTransition] = (0,
|
79536
|
-
const defaultRender = (0,
|
79537
|
-
const PuckDefault = ({ children }) => /* @__PURE__ */ (0,
|
79487
|
+
const frameRef = (0, import_react28.useRef)(null);
|
79488
|
+
const [showTransition, setShowTransition] = (0, import_react28.useState)(false);
|
79489
|
+
const defaultRender = (0, import_react28.useMemo)(() => {
|
79490
|
+
const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, { children });
|
79538
79491
|
return PuckDefault;
|
79539
79492
|
}, []);
|
79540
|
-
const CustomPreview = (0,
|
79493
|
+
const CustomPreview = (0, import_react28.useMemo)(
|
79541
79494
|
() => overrides.preview || defaultRender,
|
79542
79495
|
[overrides]
|
79543
79496
|
);
|
79544
|
-
const getFrameDimensions = (0,
|
79497
|
+
const getFrameDimensions = (0, import_react28.useCallback)(() => {
|
79545
79498
|
if (frameRef.current) {
|
79546
79499
|
const frame = frameRef.current;
|
79547
79500
|
const box = getBox3(frame);
|
@@ -79549,7 +79502,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79549
79502
|
}
|
79550
79503
|
return { width: 0, height: 0 };
|
79551
79504
|
}, [frameRef]);
|
79552
|
-
const resetAutoZoom = (0,
|
79505
|
+
const resetAutoZoom = (0, import_react28.useCallback)(
|
79553
79506
|
(ui2 = state.ui) => {
|
79554
79507
|
if (frameRef.current) {
|
79555
79508
|
setZoomConfig(
|
@@ -79559,11 +79512,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79559
79512
|
},
|
79560
79513
|
[frameRef, zoomConfig, state.ui]
|
79561
79514
|
);
|
79562
|
-
(0,
|
79515
|
+
(0, import_react28.useEffect)(() => {
|
79563
79516
|
setShowTransition(false);
|
79564
79517
|
resetAutoZoom();
|
79565
79518
|
}, [frameRef, ui.leftSideBarVisible, ui.rightSideBarVisible]);
|
79566
|
-
(0,
|
79519
|
+
(0, import_react28.useEffect)(() => {
|
79567
79520
|
const { height: frameHeight } = getFrameDimensions();
|
79568
79521
|
if (ui.viewports.current.height === "auto") {
|
79569
79522
|
setZoomConfig(__spreadProps2(__spreadValues2({}, zoomConfig), {
|
@@ -79571,7 +79524,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79571
79524
|
}));
|
79572
79525
|
}
|
79573
79526
|
}, [zoomConfig.zoom]);
|
79574
|
-
(0,
|
79527
|
+
(0, import_react28.useEffect)(() => {
|
79575
79528
|
const observer = new ResizeObserver(() => {
|
79576
79529
|
setShowTransition(false);
|
79577
79530
|
resetAutoZoom();
|
@@ -79583,7 +79536,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79583
79536
|
observer.disconnect();
|
79584
79537
|
};
|
79585
79538
|
}, []);
|
79586
|
-
return /* @__PURE__ */ (0,
|
79539
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
|
79587
79540
|
"div",
|
79588
79541
|
{
|
79589
79542
|
className: getClassName24({
|
@@ -79595,7 +79548,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79595
79548
|
recordHistory: true
|
79596
79549
|
}),
|
79597
79550
|
children: [
|
79598
|
-
ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0,
|
79551
|
+
ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
79599
79552
|
ViewportControls,
|
79600
79553
|
{
|
79601
79554
|
autoZoom: zoomConfig.autoZoom,
|
@@ -79620,7 +79573,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79620
79573
|
}
|
79621
79574
|
}
|
79622
79575
|
) }),
|
79623
|
-
/* @__PURE__ */ (0,
|
79576
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("inner"), ref: frameRef, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
79624
79577
|
"div",
|
79625
79578
|
{
|
79626
79579
|
className: getClassName24("root"),
|
@@ -79632,14 +79585,14 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79632
79585
|
overflow: iframe.enabled ? void 0 : "auto"
|
79633
79586
|
},
|
79634
79587
|
suppressHydrationWarning: true,
|
79635
|
-
children: /* @__PURE__ */ (0,
|
79588
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Preview, {}) })
|
79636
79589
|
}
|
79637
79590
|
) })
|
79638
79591
|
]
|
79639
79592
|
}
|
79640
79593
|
);
|
79641
79594
|
};
|
79642
|
-
var
|
79595
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
79643
79596
|
var getClassName25 = get_class_name_factory_default2("Puck", styles_module_default8);
|
79644
79597
|
function Puck({
|
79645
79598
|
children,
|
@@ -79662,11 +79615,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79662
79615
|
}) {
|
79663
79616
|
var _a3;
|
79664
79617
|
const historyStore = useHistoryStore();
|
79665
|
-
const [reducer2] = (0,
|
79618
|
+
const [reducer2] = (0, import_react29.useState)(
|
79666
79619
|
() => createReducer({ config, record: historyStore.record })
|
79667
79620
|
);
|
79668
|
-
const [initialAppState] = (0,
|
79669
|
-
var _a22, _b, _c, _d, _e;
|
79621
|
+
const [initialAppState] = (0, import_react29.useState)(() => {
|
79622
|
+
var _a22, _b, _c, _d, _e, _f;
|
79670
79623
|
const initial = __spreadValues2(__spreadValues2({}, defaultAppState2.ui), initialUi);
|
79671
79624
|
let clientUiState = {};
|
79672
79625
|
if (typeof window !== "undefined") {
|
@@ -79693,11 +79646,12 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79693
79646
|
};
|
79694
79647
|
}
|
79695
79648
|
}
|
79696
|
-
const rootProps2 = initialData.root.props || initialData.root;
|
79697
|
-
const defaultedRootProps = __spreadValues2(__spreadValues2({}, (
|
79649
|
+
const rootProps2 = ((_e = initialData == null ? void 0 : initialData.root) == null ? void 0 : _e.props) || initialData.root || {};
|
79650
|
+
const defaultedRootProps = __spreadValues2(__spreadValues2({}, (_f = config.root) == null ? void 0 : _f.defaultProps), rootProps2);
|
79698
79651
|
return __spreadProps2(__spreadValues2({}, defaultAppState2), {
|
79699
79652
|
data: __spreadProps2(__spreadValues2({}, initialData), {
|
79700
|
-
root: defaultedRootProps
|
79653
|
+
root: defaultedRootProps,
|
79654
|
+
content: initialData.content || []
|
79701
79655
|
}),
|
79702
79656
|
ui: __spreadProps2(__spreadValues2(__spreadValues2({}, initial), clientUiState), {
|
79703
79657
|
// Store categories under componentList on state to allow render functions and plugins to modify
|
@@ -79717,7 +79671,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79717
79671
|
})
|
79718
79672
|
});
|
79719
79673
|
});
|
79720
|
-
const [appState, dispatch] = (0,
|
79674
|
+
const [appState, dispatch] = (0, import_react29.useReducer)(
|
79721
79675
|
reducer2,
|
79722
79676
|
flushZones(initialAppState)
|
79723
79677
|
);
|
@@ -79728,9 +79682,9 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79728
79682
|
config,
|
79729
79683
|
dispatch
|
79730
79684
|
);
|
79731
|
-
const [menuOpen, setMenuOpen] = (0,
|
79685
|
+
const [menuOpen, setMenuOpen] = (0, import_react29.useState)(false);
|
79732
79686
|
const { itemSelector, leftSideBarVisible, rightSideBarVisible } = ui;
|
79733
|
-
const setItemSelector = (0,
|
79687
|
+
const setItemSelector = (0, import_react29.useCallback)(
|
79734
79688
|
(newItemSelector) => {
|
79735
79689
|
if (newItemSelector === itemSelector)
|
79736
79690
|
return;
|
@@ -79743,21 +79697,21 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79743
79697
|
[itemSelector]
|
79744
79698
|
);
|
79745
79699
|
const selectedItem = itemSelector ? getItem2(itemSelector, data) : null;
|
79746
|
-
(0,
|
79700
|
+
(0, import_react29.useEffect)(() => {
|
79747
79701
|
if (onChange)
|
79748
79702
|
onChange(data);
|
79749
79703
|
}, [data]);
|
79750
79704
|
const { onDragStartOrUpdate, placeholderStyle } = usePlaceholderStyle();
|
79751
|
-
const [draggedItem, setDraggedItem] = (0,
|
79705
|
+
const [draggedItem, setDraggedItem] = (0, import_react29.useState)();
|
79752
79706
|
const rootProps = data.root.props || data.root;
|
79753
|
-
(0,
|
79707
|
+
(0, import_react29.useEffect)(() => {
|
79754
79708
|
if (Object.keys(data.root).length > 0 && !data.root.props) {
|
79755
79709
|
console.error(
|
79756
79710
|
"Warning: Defining props on `root` is deprecated. Please use `root.props`. This will be a breaking change in a future release."
|
79757
79711
|
);
|
79758
79712
|
}
|
79759
79713
|
}, []);
|
79760
|
-
const toggleSidebars = (0,
|
79714
|
+
const toggleSidebars = (0, import_react29.useCallback)(
|
79761
79715
|
(sidebar) => {
|
79762
79716
|
const widerViewport = window.matchMedia("(min-width: 638px)").matches;
|
79763
79717
|
const sideBarVisible = sidebar === "left" ? leftSideBarVisible : rightSideBarVisible;
|
@@ -79771,7 +79725,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79771
79725
|
},
|
79772
79726
|
[dispatch, leftSideBarVisible, rightSideBarVisible]
|
79773
79727
|
);
|
79774
|
-
(0,
|
79728
|
+
(0, import_react29.useEffect)(() => {
|
79775
79729
|
if (!window.matchMedia("(min-width: 638px)").matches) {
|
79776
79730
|
dispatch({
|
79777
79731
|
type: "setUi",
|
@@ -79794,11 +79748,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79794
79748
|
window.removeEventListener("resize", handleResize);
|
79795
79749
|
};
|
79796
79750
|
}, []);
|
79797
|
-
const defaultRender = (0,
|
79798
|
-
const PuckDefault = ({ children: children2 }) => /* @__PURE__ */ (0,
|
79751
|
+
const defaultRender = (0, import_react29.useMemo)(() => {
|
79752
|
+
const PuckDefault = ({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_jsx_runtime35.Fragment, { children: children2 });
|
79799
79753
|
return PuckDefault;
|
79800
79754
|
}, []);
|
79801
|
-
const defaultHeaderRender = (0,
|
79755
|
+
const defaultHeaderRender = (0, import_react29.useMemo)(() => {
|
79802
79756
|
if (renderHeader) {
|
79803
79757
|
console.warn(
|
79804
79758
|
"`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
|
@@ -79806,45 +79760,45 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79806
79760
|
const RenderHeader = (_a22) => {
|
79807
79761
|
var _b = _a22, { actions } = _b, props = __objRest2(_b, ["actions"]);
|
79808
79762
|
const Comp = renderHeader;
|
79809
|
-
return /* @__PURE__ */ (0,
|
79763
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Comp, __spreadProps2(__spreadValues2({}, props), { dispatch, state: appState, children: actions }));
|
79810
79764
|
};
|
79811
79765
|
return RenderHeader;
|
79812
79766
|
}
|
79813
79767
|
return defaultRender;
|
79814
79768
|
}, [renderHeader]);
|
79815
|
-
const defaultHeaderActionsRender = (0,
|
79769
|
+
const defaultHeaderActionsRender = (0, import_react29.useMemo)(() => {
|
79816
79770
|
if (renderHeaderActions) {
|
79817
79771
|
console.warn(
|
79818
79772
|
"`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
|
79819
79773
|
);
|
79820
79774
|
const RenderHeader = (props) => {
|
79821
79775
|
const Comp = renderHeaderActions;
|
79822
|
-
return /* @__PURE__ */ (0,
|
79776
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Comp, __spreadProps2(__spreadValues2({}, props), { dispatch, state: appState }));
|
79823
79777
|
};
|
79824
79778
|
return RenderHeader;
|
79825
79779
|
}
|
79826
79780
|
return defaultRender;
|
79827
79781
|
}, [renderHeader]);
|
79828
|
-
const loadedOverrides = (0,
|
79782
|
+
const loadedOverrides = (0, import_react29.useMemo)(() => {
|
79829
79783
|
return loadOverrides({ overrides, plugins });
|
79830
79784
|
}, [plugins]);
|
79831
|
-
const CustomPuck = (0,
|
79785
|
+
const CustomPuck = (0, import_react29.useMemo)(
|
79832
79786
|
() => loadedOverrides.puck || defaultRender,
|
79833
79787
|
[loadedOverrides]
|
79834
79788
|
);
|
79835
|
-
const CustomHeader = (0,
|
79789
|
+
const CustomHeader = (0, import_react29.useMemo)(
|
79836
79790
|
() => loadedOverrides.header || defaultHeaderRender,
|
79837
79791
|
[loadedOverrides]
|
79838
79792
|
);
|
79839
|
-
const CustomHeaderActions = (0,
|
79793
|
+
const CustomHeaderActions = (0, import_react29.useMemo)(
|
79840
79794
|
() => loadedOverrides.headerActions || defaultHeaderActionsRender,
|
79841
79795
|
[loadedOverrides]
|
79842
79796
|
);
|
79843
|
-
const [mounted, setMounted] = (0,
|
79844
|
-
(0,
|
79797
|
+
const [mounted, setMounted] = (0, import_react29.useState)(false);
|
79798
|
+
(0, import_react29.useEffect)(() => {
|
79845
79799
|
setMounted(true);
|
79846
79800
|
}, []);
|
79847
|
-
return /* @__PURE__ */ (0,
|
79801
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "Puck", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79848
79802
|
AppProvider,
|
79849
79803
|
{
|
79850
79804
|
value: {
|
@@ -79859,7 +79813,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79859
79813
|
viewports,
|
79860
79814
|
iframe
|
79861
79815
|
},
|
79862
|
-
children: /* @__PURE__ */ (0,
|
79816
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79863
79817
|
DragDropContext2,
|
79864
79818
|
{
|
79865
79819
|
autoScrollerOptions: { disabled: dnd == null ? void 0 : dnd.disableAutoScroll },
|
@@ -79915,7 +79869,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79915
79869
|
});
|
79916
79870
|
}
|
79917
79871
|
},
|
79918
|
-
children: /* @__PURE__ */ (0,
|
79872
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79919
79873
|
DropZoneProvider,
|
79920
79874
|
{
|
79921
79875
|
value: {
|
@@ -79929,7 +79883,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79929
79883
|
mode: "edit",
|
79930
79884
|
areaId: "root"
|
79931
79885
|
},
|
79932
|
-
children: /* @__PURE__ */ (0,
|
79886
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(CustomPuck, { children: children || /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
79933
79887
|
"div",
|
79934
79888
|
{
|
79935
79889
|
className: getClassName25({
|
@@ -79939,65 +79893,62 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
79939
79893
|
rightSideBarVisible
|
79940
79894
|
}),
|
79941
79895
|
children: [
|
79942
|
-
/* @__PURE__ */ (0,
|
79943
|
-
/* @__PURE__ */ (0,
|
79896
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("layout"), children: [
|
79897
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79944
79898
|
CustomHeader,
|
79945
79899
|
{
|
79946
|
-
actions: /* @__PURE__ */ (0,
|
79947
|
-
|
79948
|
-
|
79949
|
-
|
79950
|
-
|
79951
|
-
|
79952
|
-
|
79953
|
-
|
79954
|
-
|
79955
|
-
|
79956
|
-
|
79957
|
-
)
|
79958
|
-
|
79959
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("header", { className: getClassName25("header"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("headerInner"), children: [
|
79960
|
-
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName25("headerToggle"), children: [
|
79961
|
-
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName25("leftSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
79900
|
+
actions: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_jsx_runtime35.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79901
|
+
Button,
|
79902
|
+
{
|
79903
|
+
onClick: () => {
|
79904
|
+
onPublish && onPublish(data);
|
79905
|
+
},
|
79906
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Globe, { size: "14px" }),
|
79907
|
+
children: "Publish"
|
79908
|
+
}
|
79909
|
+
) }) }),
|
79910
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("header", { className: getClassName25("header"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("headerInner"), children: [
|
79911
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("headerToggle"), children: [
|
79912
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("leftSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79962
79913
|
IconButton,
|
79963
79914
|
{
|
79964
79915
|
onClick: () => {
|
79965
79916
|
toggleSidebars("left");
|
79966
79917
|
},
|
79967
79918
|
title: "Toggle left sidebar",
|
79968
|
-
children: /* @__PURE__ */ (0,
|
79919
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(PanelLeft, { focusable: "false" })
|
79969
79920
|
}
|
79970
79921
|
) }),
|
79971
|
-
/* @__PURE__ */ (0,
|
79922
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("rightSideBarToggle"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79972
79923
|
IconButton,
|
79973
79924
|
{
|
79974
79925
|
onClick: () => {
|
79975
79926
|
toggleSidebars("right");
|
79976
79927
|
},
|
79977
79928
|
title: "Toggle right sidebar",
|
79978
|
-
children: /* @__PURE__ */ (0,
|
79929
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(PanelRight, { focusable: "false" })
|
79979
79930
|
}
|
79980
79931
|
) })
|
79981
79932
|
] }),
|
79982
|
-
/* @__PURE__ */ (0,
|
79933
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("headerTitle"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Heading2, { rank: 2, size: "xs", children: [
|
79983
79934
|
headerTitle || rootProps.title || "Page",
|
79984
|
-
headerPath && /* @__PURE__ */ (0,
|
79935
|
+
headerPath && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [
|
79985
79936
|
" ",
|
79986
|
-
/* @__PURE__ */ (0,
|
79937
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("code", { className: getClassName25("headerPath"), children: headerPath })
|
79987
79938
|
] })
|
79988
79939
|
] }) }),
|
79989
|
-
/* @__PURE__ */ (0,
|
79990
|
-
/* @__PURE__ */ (0,
|
79940
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("headerTools"), children: [
|
79941
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("menuButton"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79991
79942
|
IconButton,
|
79992
79943
|
{
|
79993
79944
|
onClick: () => {
|
79994
79945
|
return setMenuOpen(!menuOpen);
|
79995
79946
|
},
|
79996
79947
|
title: "Toggle menu bar",
|
79997
|
-
children: menuOpen ? /* @__PURE__ */ (0,
|
79948
|
+
children: menuOpen ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronUp, { focusable: "false" }) : /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronDown, { focusable: "false" })
|
79998
79949
|
}
|
79999
79950
|
) }),
|
80000
|
-
/* @__PURE__ */ (0,
|
79951
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
80001
79952
|
MenuBar,
|
80002
79953
|
{
|
80003
79954
|
appState,
|
@@ -80005,7 +79956,16 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80005
79956
|
dispatch,
|
80006
79957
|
onPublish,
|
80007
79958
|
menuOpen,
|
80008
|
-
renderHeaderActions: () => /* @__PURE__ */ (0,
|
79959
|
+
renderHeaderActions: () => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
79960
|
+
Button,
|
79961
|
+
{
|
79962
|
+
onClick: () => {
|
79963
|
+
onPublish && onPublish(data);
|
79964
|
+
},
|
79965
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Globe, { size: "14px" }),
|
79966
|
+
children: "Publish"
|
79967
|
+
}
|
79968
|
+
) }),
|
80009
79969
|
setMenuOpen
|
80010
79970
|
}
|
80011
79971
|
)
|
@@ -80013,23 +79973,23 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80013
79973
|
] }) })
|
80014
79974
|
}
|
80015
79975
|
),
|
80016
|
-
/* @__PURE__ */ (0,
|
80017
|
-
/* @__PURE__ */ (0,
|
80018
|
-
/* @__PURE__ */ (0,
|
79976
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: getClassName25("leftSideBar"), children: [
|
79977
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SidebarSection2, { title: "Components", noBorderTop: true, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Components, {}) }),
|
79978
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SidebarSection2, { title: "Outline", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Outline, {}) })
|
80019
79979
|
] }),
|
80020
|
-
/* @__PURE__ */ (0,
|
80021
|
-
/* @__PURE__ */ (0,
|
79980
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Canvas, {}),
|
79981
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: getClassName25("rightSideBar"), children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
80022
79982
|
SidebarSection2,
|
80023
79983
|
{
|
80024
79984
|
noPadding: true,
|
80025
79985
|
noBorderTop: true,
|
80026
79986
|
showBreadcrumbs: true,
|
80027
79987
|
title: selectedItem ? (_a3 = config.components[selectedItem.type]["label"]) != null ? _a3 : selectedItem.type : "Page",
|
80028
|
-
children: /* @__PURE__ */ (0,
|
79988
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Fields, {})
|
80029
79989
|
}
|
80030
79990
|
) })
|
80031
79991
|
] }),
|
80032
|
-
/* @__PURE__ */ (0,
|
79992
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
80033
79993
|
"div",
|
80034
79994
|
{
|
80035
79995
|
id: "puck-portal-root",
|
@@ -80051,16 +80011,20 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80051
80011
|
Puck.Outline = Outline;
|
80052
80012
|
Puck.Preview = Preview;
|
80053
80013
|
init_react_import2();
|
80054
|
-
var
|
80014
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
80055
80015
|
function Render({
|
80056
80016
|
config,
|
80057
80017
|
data
|
80058
80018
|
}) {
|
80059
80019
|
var _a3;
|
80060
|
-
const
|
80020
|
+
const defaultedData = __spreadProps2(__spreadValues2({}, data), {
|
80021
|
+
root: data.root || {},
|
80022
|
+
content: data.content || []
|
80023
|
+
});
|
80024
|
+
const rootProps = defaultedData.root.props || defaultedData.root;
|
80061
80025
|
const title = (rootProps == null ? void 0 : rootProps.title) || "";
|
80062
80026
|
if ((_a3 = config.root) == null ? void 0 : _a3.render) {
|
80063
|
-
return /* @__PURE__ */ (0,
|
80027
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZoneProvider, { value: { data: defaultedData, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
80064
80028
|
config.root.render,
|
80065
80029
|
__spreadProps2(__spreadValues2({}, rootProps), {
|
80066
80030
|
puck: {
|
@@ -80069,11 +80033,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80069
80033
|
title,
|
80070
80034
|
editMode: false,
|
80071
80035
|
id: "puck-root",
|
80072
|
-
children: /* @__PURE__ */ (0,
|
80036
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZone, { zone: rootDroppableId2 })
|
80073
80037
|
})
|
80074
80038
|
) });
|
80075
80039
|
}
|
80076
|
-
return /* @__PURE__ */ (0,
|
80040
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZoneProvider, { value: { data: defaultedData, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DropZone, { zone: rootDroppableId2 }) });
|
80077
80041
|
}
|
80078
80042
|
init_react_import2();
|
80079
80043
|
var migrations = [
|
@@ -80097,6 +80061,11 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80097
80061
|
return migrations == null ? void 0 : migrations.reduce((acc, migration) => migration(acc), data);
|
80098
80062
|
}
|
80099
80063
|
init_react_import2();
|
80064
|
+
init_react_import2();
|
80065
|
+
var defaultData = (data) => __spreadProps2(__spreadValues2({}, data), {
|
80066
|
+
root: data.root || {},
|
80067
|
+
content: data.content || []
|
80068
|
+
});
|
80100
80069
|
function transformProps(data, propTransforms) {
|
80101
80070
|
const mapItem = (item) => {
|
80102
80071
|
if (propTransforms[item.type]) {
|
@@ -80106,18 +80075,19 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80106
80075
|
}
|
80107
80076
|
return item;
|
80108
80077
|
};
|
80109
|
-
const
|
80110
|
-
|
80078
|
+
const defaultedData = defaultData(data);
|
80079
|
+
const rootProps = defaultedData.root.props || defaultedData.root;
|
80080
|
+
let newRoot = __spreadValues2({}, defaultedData.root);
|
80111
80081
|
if (propTransforms["root"]) {
|
80112
|
-
if (
|
80082
|
+
if (defaultedData.root.props) {
|
80113
80083
|
newRoot.props = propTransforms["root"](rootProps);
|
80114
80084
|
} else {
|
80115
80085
|
newRoot = propTransforms["root"](rootProps);
|
80116
80086
|
}
|
80117
80087
|
}
|
80118
|
-
const afterPropTransforms = __spreadProps2(__spreadValues2({},
|
80088
|
+
const afterPropTransforms = __spreadProps2(__spreadValues2({}, defaultedData), {
|
80119
80089
|
root: newRoot,
|
80120
|
-
content:
|
80090
|
+
content: defaultedData.content.map(mapItem),
|
80121
80091
|
zones: Object.keys(data.zones || {}).reduce(
|
80122
80092
|
(acc, zoneKey) => __spreadProps2(__spreadValues2({}, acc), {
|
80123
80093
|
[zoneKey]: data.zones[zoneKey].map(mapItem)
|
@@ -80130,7 +80100,8 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80130
80100
|
init_react_import2();
|
80131
80101
|
function resolveAllData(data, config, onResolveStart, onResolveEnd) {
|
80132
80102
|
return __async2(this, null, function* () {
|
80133
|
-
const
|
80103
|
+
const defaultedData = defaultData(data);
|
80104
|
+
const dynamicRoot = yield resolveRootData(defaultedData, config);
|
80134
80105
|
const { zones = {} } = data;
|
80135
80106
|
const zoneKeys = Object.keys(zones);
|
80136
80107
|
const resolvedZones = {};
|
@@ -80143,10 +80114,10 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
80143
80114
|
onResolveEnd
|
80144
80115
|
);
|
80145
80116
|
}
|
80146
|
-
return __spreadProps2(__spreadValues2({},
|
80117
|
+
return __spreadProps2(__spreadValues2({}, defaultedData), {
|
80147
80118
|
root: dynamicRoot,
|
80148
80119
|
content: yield resolveAllComponentData(
|
80149
|
-
|
80120
|
+
defaultedData.content,
|
80150
80121
|
config,
|
80151
80122
|
onResolveStart,
|
80152
80123
|
onResolveEnd
|
@@ -80238,7 +80209,7 @@ init_react_import();
|
|
80238
80209
|
// src/HeadingAnalyzer.tsx
|
80239
80210
|
init_react_import();
|
80240
80211
|
var import_react12 = require("react");
|
80241
|
-
var import_puck = __toESM(
|
80212
|
+
var import_puck = __toESM(require_dist());
|
80242
80213
|
|
80243
80214
|
// ../core/components/SidebarSection/index.tsx
|
80244
80215
|
init_react_import();
|