@puckeditor/plugin-pages 0.9.0-canary.26589e83 → 0.9.0-canary.2cecde46
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.js +18 -4
- package/dist/index.mjs +18 -4
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -8665,11 +8665,14 @@ function registerDynamicConfig(config, data) {
|
|
|
8665
8665
|
}
|
|
8666
8666
|
}
|
|
8667
8667
|
var resolvedVersions = /* @__PURE__ */ new WeakMap();
|
|
8668
|
-
var rememberResolvedData = (data, resolved) => resolvedVersions.set(data, resolved);
|
|
8668
|
+
var rememberResolvedData = (data, resolved) => resolvedVersions.set(data, resolvedVersions.get(resolved) ?? resolved);
|
|
8669
8669
|
var isDirty = ({
|
|
8670
8670
|
appState,
|
|
8671
8671
|
history
|
|
8672
|
-
}, version2) => history.histories.length > 1 && !(0, import_fast_equals.deepEqual)(
|
|
8672
|
+
}, version2) => history.histories.length > 1 && !(0, import_fast_equals.deepEqual)(
|
|
8673
|
+
appState.data,
|
|
8674
|
+
version2 && (resolvedVersions.get(version2.data) ?? version2.data)
|
|
8675
|
+
);
|
|
8673
8676
|
var usePageEditorState = () => {
|
|
8674
8677
|
const getPuck = (0, import_core3.useGetPuck)();
|
|
8675
8678
|
return (0, import_react25.useMemo)(() => {
|
|
@@ -8677,9 +8680,9 @@ var usePageEditorState = () => {
|
|
|
8677
8680
|
const { config } = getPuck();
|
|
8678
8681
|
const pageData = { root: {}, content: [], ...data };
|
|
8679
8682
|
registerDynamicConfig(config, pageData);
|
|
8680
|
-
|
|
8683
|
+
let resolvedData = (data && resolvedVersions.get(data)) ?? await (0, import_core3.resolveAllData)(pageData, config);
|
|
8684
|
+
if (isCurrent()) resolvedData = showData(resolvedData);
|
|
8681
8685
|
if (data) rememberResolvedData(data, resolvedData);
|
|
8682
|
-
if (isCurrent()) showData(resolvedData);
|
|
8683
8686
|
};
|
|
8684
8687
|
const showData = (data) => {
|
|
8685
8688
|
const { appState, history, dispatch } = getPuck();
|
|
@@ -8690,6 +8693,17 @@ var usePageEditorState = () => {
|
|
|
8690
8693
|
};
|
|
8691
8694
|
history.setHistories([{ state: nextState }]);
|
|
8692
8695
|
dispatch({ type: "set", state: nextState });
|
|
8696
|
+
const shownData = getPuck().appState.data;
|
|
8697
|
+
setTimeout(() => dropStaleHistory(nextState, shownData), 250);
|
|
8698
|
+
return shownData;
|
|
8699
|
+
};
|
|
8700
|
+
const dropStaleHistory = (shown, shownData) => {
|
|
8701
|
+
const { appState, history } = getPuck();
|
|
8702
|
+
const [first, ...rest] = history.histories;
|
|
8703
|
+
if (first?.state !== shown || !rest.length) return;
|
|
8704
|
+
history.setHistories(
|
|
8705
|
+
(0, import_fast_equals.deepEqual)(appState.data, shownData) ? [{ state: appState }] : [first, { state: appState }]
|
|
8706
|
+
);
|
|
8693
8707
|
};
|
|
8694
8708
|
const unloadPageData = () => {
|
|
8695
8709
|
const { appState, history } = getPuck();
|
package/dist/index.mjs
CHANGED
|
@@ -8663,11 +8663,14 @@ function registerDynamicConfig(config, data) {
|
|
|
8663
8663
|
}
|
|
8664
8664
|
}
|
|
8665
8665
|
var resolvedVersions = /* @__PURE__ */ new WeakMap();
|
|
8666
|
-
var rememberResolvedData = (data, resolved) => resolvedVersions.set(data, resolved);
|
|
8666
|
+
var rememberResolvedData = (data, resolved) => resolvedVersions.set(data, resolvedVersions.get(resolved) ?? resolved);
|
|
8667
8667
|
var isDirty = ({
|
|
8668
8668
|
appState,
|
|
8669
8669
|
history
|
|
8670
|
-
}, version2) => history.histories.length > 1 && !deepEqual2(
|
|
8670
|
+
}, version2) => history.histories.length > 1 && !deepEqual2(
|
|
8671
|
+
appState.data,
|
|
8672
|
+
version2 && (resolvedVersions.get(version2.data) ?? version2.data)
|
|
8673
|
+
);
|
|
8671
8674
|
var usePageEditorState = () => {
|
|
8672
8675
|
const getPuck = useGetPuck();
|
|
8673
8676
|
return useMemo21(() => {
|
|
@@ -8675,9 +8678,9 @@ var usePageEditorState = () => {
|
|
|
8675
8678
|
const { config } = getPuck();
|
|
8676
8679
|
const pageData = { root: {}, content: [], ...data };
|
|
8677
8680
|
registerDynamicConfig(config, pageData);
|
|
8678
|
-
|
|
8681
|
+
let resolvedData = (data && resolvedVersions.get(data)) ?? await resolveAllData(pageData, config);
|
|
8682
|
+
if (isCurrent()) resolvedData = showData(resolvedData);
|
|
8679
8683
|
if (data) rememberResolvedData(data, resolvedData);
|
|
8680
|
-
if (isCurrent()) showData(resolvedData);
|
|
8681
8684
|
};
|
|
8682
8685
|
const showData = (data) => {
|
|
8683
8686
|
const { appState, history, dispatch } = getPuck();
|
|
@@ -8688,6 +8691,17 @@ var usePageEditorState = () => {
|
|
|
8688
8691
|
};
|
|
8689
8692
|
history.setHistories([{ state: nextState }]);
|
|
8690
8693
|
dispatch({ type: "set", state: nextState });
|
|
8694
|
+
const shownData = getPuck().appState.data;
|
|
8695
|
+
setTimeout(() => dropStaleHistory(nextState, shownData), 250);
|
|
8696
|
+
return shownData;
|
|
8697
|
+
};
|
|
8698
|
+
const dropStaleHistory = (shown, shownData) => {
|
|
8699
|
+
const { appState, history } = getPuck();
|
|
8700
|
+
const [first, ...rest] = history.histories;
|
|
8701
|
+
if (first?.state !== shown || !rest.length) return;
|
|
8702
|
+
history.setHistories(
|
|
8703
|
+
deepEqual2(appState.data, shownData) ? [{ state: appState }] : [first, { state: appState }]
|
|
8704
|
+
);
|
|
8691
8705
|
};
|
|
8692
8706
|
const unloadPageData = () => {
|
|
8693
8707
|
const { appState, history } = getPuck();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@puckeditor/plugin-pages",
|
|
3
|
-
"version": "0.9.0-canary.
|
|
3
|
+
"version": "0.9.0-canary.2cecde46",
|
|
4
4
|
"author": "Chris Villa <chris@puckeditor.com>",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -46,9 +46,9 @@
|
|
|
46
46
|
"typescript": "^5.5.4",
|
|
47
47
|
"vite-tsconfig-paths": "^5.1.4",
|
|
48
48
|
"vitest": "^4.1.11",
|
|
49
|
-
"tsconfig": "0.9.0-canary.
|
|
50
|
-
"tsup-config": "0.9.0-canary.
|
|
51
|
-
"eslint-config-custom": "0.9.0-canary.
|
|
49
|
+
"tsconfig": "0.9.0-canary.2cecde46",
|
|
50
|
+
"tsup-config": "0.9.0-canary.2cecde46",
|
|
51
|
+
"eslint-config-custom": "0.9.0-canary.2cecde46"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|
|
54
54
|
"@puckeditor/core": "^0",
|