@pantheon-systems/p1-next-sdk 0.4.2 → 0.4.4
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"P1NextRouterProvider.d.ts","sourceRoot":"","sources":["../src/P1NextRouterProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"P1NextRouterProvider.d.ts","sourceRoot":"","sources":["../src/P1NextRouterProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGnE,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CA4CzE"}
|
|
@@ -1,12 +1,33 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import { useRouter, usePathname, useSearchParams } from "next/navigation";
|
|
4
|
-
import { useMemo } from "react";
|
|
4
|
+
import { useMemo, useEffect, useRef } from "react";
|
|
5
5
|
import { P1RouterContext } from "@pantheon-systems/puck-css";
|
|
6
6
|
export function P1NextRouterProvider({ children }) {
|
|
7
7
|
const nextRouter = useRouter();
|
|
8
8
|
const pathname = usePathname();
|
|
9
9
|
const searchParams = useSearchParams();
|
|
10
|
+
const isInitialMount = useRef(true);
|
|
11
|
+
// Re-fetch server component data on back/forward navigation.
|
|
12
|
+
// Without this, Next.js restores the cached client shell but the
|
|
13
|
+
// server-rendered content inside it is empty.
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
const handler = (event) => {
|
|
16
|
+
if (event.persisted) {
|
|
17
|
+
nextRouter.refresh();
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
window.addEventListener("pageshow", handler);
|
|
21
|
+
return () => window.removeEventListener("pageshow", handler);
|
|
22
|
+
}, [nextRouter]);
|
|
23
|
+
// Also handle popstate (Next.js client-side back navigation)
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (isInitialMount.current) {
|
|
26
|
+
isInitialMount.current = false;
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
nextRouter.refresh();
|
|
30
|
+
}, [pathname, nextRouter]);
|
|
10
31
|
const router = useMemo(() => ({
|
|
11
32
|
refresh: () => nextRouter.refresh(),
|
|
12
33
|
replace: (url, options) => nextRouter.replace(url, options),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"P1NextRouterProvider.js","sourceRoot":"","sources":["../src/P1NextRouterProvider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"P1NextRouterProvider.js","sourceRoot":"","sources":["../src/P1NextRouterProvider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAkB,MAAM,OAAO,CAAC;AACnE,OAAO,EAAE,eAAe,EAAiB,MAAM,4BAA4B,CAAC;AAE5E,MAAM,UAAU,oBAAoB,CAAC,EAAE,QAAQ,EAA2B;IACxE,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEpC,6DAA6D;IAC7D,iEAAiE;IACjE,8CAA8C;IAC9C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAG,CAAC,KAA0B,EAAE,EAAE;YAC7C,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACpB,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,CAAC;QACH,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,6DAA6D;IAC7D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,UAAU,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAE3B,MAAM,MAAM,GAAa,OAAO,CAC9B,GAAG,EAAE,CAAC,CAAC;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE;QACnC,OAAO,EAAE,CAAC,GAAW,EAAE,OAA8B,EAAE,EAAE,CACvD,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC;QAClC,QAAQ;QACR,YAAY;KACb,CAAC,EACF,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CACrC,CAAC;IAEF,OAAO,CACL,KAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YACpC,QAAQ,GACgB,CAC5B,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../src/routes/structure.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAS3C,KAAK,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../src/routes/structure.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAS3C,KAAK,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;AAatD,wBAAsB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa;;;;;;IAyBxE;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,OAAO;;;;;;IAoBzD"}
|
package/dist/routes/structure.js
CHANGED
|
@@ -12,7 +12,17 @@ export async function postStructure(request, kind) {
|
|
|
12
12
|
if (!path) {
|
|
13
13
|
return NextResponse.json({ ok: false, error: "Missing path" }, { status: 400 });
|
|
14
14
|
}
|
|
15
|
-
const
|
|
15
|
+
const creator = structureCreators[kind];
|
|
16
|
+
const options = {};
|
|
17
|
+
if (body.initialData)
|
|
18
|
+
options.initialData = body.initialData;
|
|
19
|
+
if (body.templateId)
|
|
20
|
+
options.templateId = body.templateId;
|
|
21
|
+
if (body.templateVersion !== undefined)
|
|
22
|
+
options.templateVersion = body.templateVersion;
|
|
23
|
+
const result = Object.keys(options).length > 0
|
|
24
|
+
? await creator(path, options)
|
|
25
|
+
: await creator(path);
|
|
16
26
|
if (result.ok === false) {
|
|
17
27
|
return NextResponse.json({ ok: false, error: result.error }, { status: 400 });
|
|
18
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../../src/routes/structure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../../src/routes/structure.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pantheon-systems/p1-next-sdk",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.4",
|
|
4
4
|
"description": "Next.js SDK for P1 editor integration",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
],
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"server-only": "^0.0.1",
|
|
33
|
-
"@pantheon-systems/puck-css": "0.4.
|
|
33
|
+
"@pantheon-systems/puck-css": "0.4.4"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
36
|
"@puckeditor/core": ">=0.21.0",
|