@cmssy/react 14.2.0 → 16.0.0
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/client.cjs +19 -19
- package/dist/client.d.cts +4 -4
- package/dist/client.d.ts +4 -4
- package/dist/client.js +19 -19
- package/dist/index.cjs +10 -10
- package/dist/index.d.cts +11 -11
- package/dist/index.d.ts +11 -11
- package/dist/index.js +10 -10
- package/dist/{internal-server-Hogm3pjD.d.cts → internal-server-Bkracpae.d.cts} +4 -4
- package/dist/{internal-server-Hogm3pjD.d.ts → internal-server-Bkracpae.d.ts} +4 -4
- package/dist/internal-server.cjs +2 -2
- package/dist/internal-server.d.cts +1 -1
- package/dist/internal-server.d.ts +1 -1
- package/dist/internal-server.js +2 -2
- package/package.json +3 -3
package/dist/client.cjs
CHANGED
|
@@ -211,16 +211,16 @@ function collectLayoutBlocks(rects, pageIds) {
|
|
|
211
211
|
const out = [];
|
|
212
212
|
if (typeof document === "undefined") return out;
|
|
213
213
|
const seen = /* @__PURE__ */ new Set();
|
|
214
|
-
for (const el of document.querySelectorAll("[data-layout-
|
|
214
|
+
for (const el of document.querySelectorAll("[data-layout-region]")) {
|
|
215
215
|
const id = el.getAttribute("data-block-id");
|
|
216
216
|
const type = el.getAttribute("data-block-type");
|
|
217
|
-
const
|
|
218
|
-
if (id && type &&
|
|
217
|
+
const layoutRegion = el.getAttribute("data-layout-region");
|
|
218
|
+
if (id && type && layoutRegion !== null && !pageIds.has(id) && !seen.has(id)) {
|
|
219
219
|
seen.add(id);
|
|
220
220
|
out.push({
|
|
221
221
|
id,
|
|
222
222
|
type,
|
|
223
|
-
|
|
223
|
+
layoutRegion,
|
|
224
224
|
bounds: rects.get(id) ?? ZERO_RECT
|
|
225
225
|
});
|
|
226
226
|
}
|
|
@@ -308,7 +308,7 @@ function useEditBridge(page, config) {
|
|
|
308
308
|
if (!message) return;
|
|
309
309
|
postTarget = event.origin;
|
|
310
310
|
if (message.type === "cmssy:patch") {
|
|
311
|
-
if (message.
|
|
311
|
+
if (message.layoutRegion !== void 0) return;
|
|
312
312
|
setPatches((prev) => ({
|
|
313
313
|
...prev,
|
|
314
314
|
[message.blockId]: { ...prev[message.blockId], ...message.content }
|
|
@@ -379,12 +379,12 @@ function useEditBridge(page, config) {
|
|
|
379
379
|
event.stopPropagation();
|
|
380
380
|
}
|
|
381
381
|
const r = el.getBoundingClientRect();
|
|
382
|
-
const
|
|
382
|
+
const layoutRegion = el.getAttribute("data-layout-region");
|
|
383
383
|
postSafe({
|
|
384
384
|
type: "cmssy:click",
|
|
385
385
|
blockId: id,
|
|
386
386
|
rect: { x: r.x, y: r.y, width: r.width, height: r.height },
|
|
387
|
-
...
|
|
387
|
+
...layoutRegion !== null ? { layoutRegion } : {}
|
|
388
388
|
});
|
|
389
389
|
};
|
|
390
390
|
const onKeyDown = (event) => {
|
|
@@ -482,7 +482,7 @@ function visible(el) {
|
|
|
482
482
|
function blockElements() {
|
|
483
483
|
return Array.from(
|
|
484
484
|
document.querySelectorAll(
|
|
485
|
-
"[data-block-id]:not([data-layout-
|
|
485
|
+
"[data-block-id]:not([data-layout-region])"
|
|
486
486
|
)
|
|
487
487
|
).filter(visible);
|
|
488
488
|
}
|
|
@@ -721,7 +721,7 @@ function CmssyBlock({
|
|
|
721
721
|
schema,
|
|
722
722
|
editable,
|
|
723
723
|
editMode,
|
|
724
|
-
|
|
724
|
+
layoutRegion,
|
|
725
725
|
context,
|
|
726
726
|
data
|
|
727
727
|
}) {
|
|
@@ -733,7 +733,7 @@ function CmssyBlock({
|
|
|
733
733
|
{
|
|
734
734
|
"data-block-id": block.id,
|
|
735
735
|
"data-block-type": block.type,
|
|
736
|
-
"data-layout-
|
|
736
|
+
"data-layout-region": layoutRegion,
|
|
737
737
|
draggable: editable || void 0,
|
|
738
738
|
style: hidden ? { display: "none" } : void 0,
|
|
739
739
|
children
|
|
@@ -950,7 +950,7 @@ function CmssyLazyEditor({ load, ...props }) {
|
|
|
950
950
|
) : null
|
|
951
951
|
] });
|
|
952
952
|
}
|
|
953
|
-
function useLayoutPatchBridge(
|
|
953
|
+
function useLayoutPatchBridge(region, config) {
|
|
954
954
|
const [patches, setPatches] = react.useState({});
|
|
955
955
|
react.useEffect(() => {
|
|
956
956
|
setPatches({});
|
|
@@ -964,7 +964,7 @@ function useLayoutPatchBridge(position, config) {
|
|
|
964
964
|
editorOrigin
|
|
965
965
|
);
|
|
966
966
|
if (!message) return;
|
|
967
|
-
if (message.type === "cmssy:patch" && message.
|
|
967
|
+
if (message.type === "cmssy:patch" && message.layoutRegion === region) {
|
|
968
968
|
setPatches((prev) => ({
|
|
969
969
|
...prev,
|
|
970
970
|
[message.blockId]: { ...prev[message.blockId], ...message.content }
|
|
@@ -973,13 +973,13 @@ function useLayoutPatchBridge(position, config) {
|
|
|
973
973
|
};
|
|
974
974
|
window.addEventListener("message", handler);
|
|
975
975
|
return () => window.removeEventListener("message", handler);
|
|
976
|
-
}, [config.editorOrigin,
|
|
976
|
+
}, [config.editorOrigin, region]);
|
|
977
977
|
return patches;
|
|
978
978
|
}
|
|
979
979
|
function CmssyEditableLayout({
|
|
980
980
|
groups,
|
|
981
981
|
blocks,
|
|
982
|
-
|
|
982
|
+
region,
|
|
983
983
|
page,
|
|
984
984
|
locale = "en",
|
|
985
985
|
defaultLocale = "en",
|
|
@@ -995,10 +995,10 @@ function CmssyEditableLayout({
|
|
|
995
995
|
[edit.schemas, blocks]
|
|
996
996
|
);
|
|
997
997
|
const layoutBlocks = react.useMemo(() => {
|
|
998
|
-
const group = groups.find((g) => g.
|
|
998
|
+
const group = groups.find((g) => g.region === region);
|
|
999
999
|
return group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
1000
|
-
}, [groups,
|
|
1001
|
-
const patches = useLayoutPatchBridge(
|
|
1000
|
+
}, [groups, region]);
|
|
1001
|
+
const patches = useLayoutPatchBridge(region, edit);
|
|
1002
1002
|
const context = react.useMemo(
|
|
1003
1003
|
() => internal.buildBlockContext(locale, defaultLocale, enabledLocales, true, void 0, {
|
|
1004
1004
|
page,
|
|
@@ -1018,7 +1018,7 @@ function CmssyEditableLayout({
|
|
|
1018
1018
|
resolvedContent: resolvedContent?.[block.id],
|
|
1019
1019
|
schema: schemas[block.type],
|
|
1020
1020
|
editMode: true,
|
|
1021
|
-
|
|
1021
|
+
layoutRegion: region,
|
|
1022
1022
|
context,
|
|
1023
1023
|
data: data?.[block.id]
|
|
1024
1024
|
},
|
|
@@ -1055,7 +1055,7 @@ function CmssyLazyLayout({ load, ...props }) {
|
|
|
1055
1055
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1056
1056
|
"div",
|
|
1057
1057
|
{
|
|
1058
|
-
"data-cmssy-layout-slot": props.
|
|
1058
|
+
"data-cmssy-layout-slot": props.region,
|
|
1059
1059
|
"data-cmssy-editor-content": resolvedCount,
|
|
1060
1060
|
hidden: true
|
|
1061
1061
|
}
|
package/dist/client.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { BlockSchema, BlockMeta, LayoutRegion, CmssyPageData, CmssyFormDefinition, CmssyLayoutGroup } from '@cmssy/core';
|
|
3
|
-
import { B as BlockDefinition, L as LayoutBlockPage } from './internal-server-
|
|
3
|
+
import { B as BlockDefinition, L as LayoutBlockPage } from './internal-server-Bkracpae.cjs';
|
|
4
4
|
import 'react';
|
|
5
5
|
|
|
6
6
|
interface EditBridgeConfig {
|
|
@@ -71,7 +71,7 @@ declare function CmssyLazyEditor({ load, ...props }: CmssyLazyEditorProps): reac
|
|
|
71
71
|
interface CmssyEditableLayoutProps {
|
|
72
72
|
groups: CmssyLayoutGroup[];
|
|
73
73
|
blocks: BlockDefinition[];
|
|
74
|
-
|
|
74
|
+
region: string;
|
|
75
75
|
page?: LayoutBlockPage;
|
|
76
76
|
locale?: string;
|
|
77
77
|
defaultLocale?: string;
|
|
@@ -81,11 +81,11 @@ interface CmssyEditableLayoutProps {
|
|
|
81
81
|
resolvedContent?: Record<string, Record<string, unknown>>;
|
|
82
82
|
appContext?: Record<string, unknown>;
|
|
83
83
|
}
|
|
84
|
-
declare function CmssyEditableLayout({ groups, blocks,
|
|
84
|
+
declare function CmssyEditableLayout({ groups, blocks, region, page, locale, defaultLocale, enabledLocales, edit, data, resolvedContent, appContext, }: CmssyEditableLayoutProps): react_jsx_runtime.JSX.Element | null;
|
|
85
85
|
|
|
86
86
|
interface CmssyLazyLayoutProps {
|
|
87
87
|
groups: CmssyLayoutGroup[];
|
|
88
|
-
|
|
88
|
+
region: string;
|
|
89
89
|
page?: LayoutBlockPage;
|
|
90
90
|
locale?: string;
|
|
91
91
|
defaultLocale?: string;
|
package/dist/client.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { BlockSchema, BlockMeta, LayoutRegion, CmssyPageData, CmssyFormDefinition, CmssyLayoutGroup } from '@cmssy/core';
|
|
3
|
-
import { B as BlockDefinition, L as LayoutBlockPage } from './internal-server-
|
|
3
|
+
import { B as BlockDefinition, L as LayoutBlockPage } from './internal-server-Bkracpae.js';
|
|
4
4
|
import 'react';
|
|
5
5
|
|
|
6
6
|
interface EditBridgeConfig {
|
|
@@ -71,7 +71,7 @@ declare function CmssyLazyEditor({ load, ...props }: CmssyLazyEditorProps): reac
|
|
|
71
71
|
interface CmssyEditableLayoutProps {
|
|
72
72
|
groups: CmssyLayoutGroup[];
|
|
73
73
|
blocks: BlockDefinition[];
|
|
74
|
-
|
|
74
|
+
region: string;
|
|
75
75
|
page?: LayoutBlockPage;
|
|
76
76
|
locale?: string;
|
|
77
77
|
defaultLocale?: string;
|
|
@@ -81,11 +81,11 @@ interface CmssyEditableLayoutProps {
|
|
|
81
81
|
resolvedContent?: Record<string, Record<string, unknown>>;
|
|
82
82
|
appContext?: Record<string, unknown>;
|
|
83
83
|
}
|
|
84
|
-
declare function CmssyEditableLayout({ groups, blocks,
|
|
84
|
+
declare function CmssyEditableLayout({ groups, blocks, region, page, locale, defaultLocale, enabledLocales, edit, data, resolvedContent, appContext, }: CmssyEditableLayoutProps): react_jsx_runtime.JSX.Element | null;
|
|
85
85
|
|
|
86
86
|
interface CmssyLazyLayoutProps {
|
|
87
87
|
groups: CmssyLayoutGroup[];
|
|
88
|
-
|
|
88
|
+
region: string;
|
|
89
89
|
page?: LayoutBlockPage;
|
|
90
90
|
locale?: string;
|
|
91
91
|
defaultLocale?: string;
|
package/dist/client.js
CHANGED
|
@@ -209,16 +209,16 @@ function collectLayoutBlocks(rects, pageIds) {
|
|
|
209
209
|
const out = [];
|
|
210
210
|
if (typeof document === "undefined") return out;
|
|
211
211
|
const seen = /* @__PURE__ */ new Set();
|
|
212
|
-
for (const el of document.querySelectorAll("[data-layout-
|
|
212
|
+
for (const el of document.querySelectorAll("[data-layout-region]")) {
|
|
213
213
|
const id = el.getAttribute("data-block-id");
|
|
214
214
|
const type = el.getAttribute("data-block-type");
|
|
215
|
-
const
|
|
216
|
-
if (id && type &&
|
|
215
|
+
const layoutRegion = el.getAttribute("data-layout-region");
|
|
216
|
+
if (id && type && layoutRegion !== null && !pageIds.has(id) && !seen.has(id)) {
|
|
217
217
|
seen.add(id);
|
|
218
218
|
out.push({
|
|
219
219
|
id,
|
|
220
220
|
type,
|
|
221
|
-
|
|
221
|
+
layoutRegion,
|
|
222
222
|
bounds: rects.get(id) ?? ZERO_RECT
|
|
223
223
|
});
|
|
224
224
|
}
|
|
@@ -306,7 +306,7 @@ function useEditBridge(page, config) {
|
|
|
306
306
|
if (!message) return;
|
|
307
307
|
postTarget = event.origin;
|
|
308
308
|
if (message.type === "cmssy:patch") {
|
|
309
|
-
if (message.
|
|
309
|
+
if (message.layoutRegion !== void 0) return;
|
|
310
310
|
setPatches((prev) => ({
|
|
311
311
|
...prev,
|
|
312
312
|
[message.blockId]: { ...prev[message.blockId], ...message.content }
|
|
@@ -377,12 +377,12 @@ function useEditBridge(page, config) {
|
|
|
377
377
|
event.stopPropagation();
|
|
378
378
|
}
|
|
379
379
|
const r = el.getBoundingClientRect();
|
|
380
|
-
const
|
|
380
|
+
const layoutRegion = el.getAttribute("data-layout-region");
|
|
381
381
|
postSafe({
|
|
382
382
|
type: "cmssy:click",
|
|
383
383
|
blockId: id,
|
|
384
384
|
rect: { x: r.x, y: r.y, width: r.width, height: r.height },
|
|
385
|
-
...
|
|
385
|
+
...layoutRegion !== null ? { layoutRegion } : {}
|
|
386
386
|
});
|
|
387
387
|
};
|
|
388
388
|
const onKeyDown = (event) => {
|
|
@@ -480,7 +480,7 @@ function visible(el) {
|
|
|
480
480
|
function blockElements() {
|
|
481
481
|
return Array.from(
|
|
482
482
|
document.querySelectorAll(
|
|
483
|
-
"[data-block-id]:not([data-layout-
|
|
483
|
+
"[data-block-id]:not([data-layout-region])"
|
|
484
484
|
)
|
|
485
485
|
).filter(visible);
|
|
486
486
|
}
|
|
@@ -719,7 +719,7 @@ function CmssyBlock({
|
|
|
719
719
|
schema,
|
|
720
720
|
editable,
|
|
721
721
|
editMode,
|
|
722
|
-
|
|
722
|
+
layoutRegion,
|
|
723
723
|
context,
|
|
724
724
|
data
|
|
725
725
|
}) {
|
|
@@ -731,7 +731,7 @@ function CmssyBlock({
|
|
|
731
731
|
{
|
|
732
732
|
"data-block-id": block.id,
|
|
733
733
|
"data-block-type": block.type,
|
|
734
|
-
"data-layout-
|
|
734
|
+
"data-layout-region": layoutRegion,
|
|
735
735
|
draggable: editable || void 0,
|
|
736
736
|
style: hidden ? { display: "none" } : void 0,
|
|
737
737
|
children
|
|
@@ -948,7 +948,7 @@ function CmssyLazyEditor({ load, ...props }) {
|
|
|
948
948
|
) : null
|
|
949
949
|
] });
|
|
950
950
|
}
|
|
951
|
-
function useLayoutPatchBridge(
|
|
951
|
+
function useLayoutPatchBridge(region, config) {
|
|
952
952
|
const [patches, setPatches] = useState({});
|
|
953
953
|
useEffect(() => {
|
|
954
954
|
setPatches({});
|
|
@@ -962,7 +962,7 @@ function useLayoutPatchBridge(position, config) {
|
|
|
962
962
|
editorOrigin
|
|
963
963
|
);
|
|
964
964
|
if (!message) return;
|
|
965
|
-
if (message.type === "cmssy:patch" && message.
|
|
965
|
+
if (message.type === "cmssy:patch" && message.layoutRegion === region) {
|
|
966
966
|
setPatches((prev) => ({
|
|
967
967
|
...prev,
|
|
968
968
|
[message.blockId]: { ...prev[message.blockId], ...message.content }
|
|
@@ -971,13 +971,13 @@ function useLayoutPatchBridge(position, config) {
|
|
|
971
971
|
};
|
|
972
972
|
window.addEventListener("message", handler);
|
|
973
973
|
return () => window.removeEventListener("message", handler);
|
|
974
|
-
}, [config.editorOrigin,
|
|
974
|
+
}, [config.editorOrigin, region]);
|
|
975
975
|
return patches;
|
|
976
976
|
}
|
|
977
977
|
function CmssyEditableLayout({
|
|
978
978
|
groups,
|
|
979
979
|
blocks,
|
|
980
|
-
|
|
980
|
+
region,
|
|
981
981
|
page,
|
|
982
982
|
locale = "en",
|
|
983
983
|
defaultLocale = "en",
|
|
@@ -993,10 +993,10 @@ function CmssyEditableLayout({
|
|
|
993
993
|
[edit.schemas, blocks]
|
|
994
994
|
);
|
|
995
995
|
const layoutBlocks = useMemo(() => {
|
|
996
|
-
const group = groups.find((g) => g.
|
|
996
|
+
const group = groups.find((g) => g.region === region);
|
|
997
997
|
return group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
998
|
-
}, [groups,
|
|
999
|
-
const patches = useLayoutPatchBridge(
|
|
998
|
+
}, [groups, region]);
|
|
999
|
+
const patches = useLayoutPatchBridge(region, edit);
|
|
1000
1000
|
const context = useMemo(
|
|
1001
1001
|
() => buildBlockContext(locale, defaultLocale, enabledLocales, true, void 0, {
|
|
1002
1002
|
page,
|
|
@@ -1016,7 +1016,7 @@ function CmssyEditableLayout({
|
|
|
1016
1016
|
resolvedContent: resolvedContent?.[block.id],
|
|
1017
1017
|
schema: schemas[block.type],
|
|
1018
1018
|
editMode: true,
|
|
1019
|
-
|
|
1019
|
+
layoutRegion: region,
|
|
1020
1020
|
context,
|
|
1021
1021
|
data: data?.[block.id]
|
|
1022
1022
|
},
|
|
@@ -1053,7 +1053,7 @@ function CmssyLazyLayout({ load, ...props }) {
|
|
|
1053
1053
|
/* @__PURE__ */ jsx(
|
|
1054
1054
|
"div",
|
|
1055
1055
|
{
|
|
1056
|
-
"data-cmssy-layout-slot": props.
|
|
1056
|
+
"data-cmssy-layout-slot": props.region,
|
|
1057
1057
|
"data-cmssy-editor-content": resolvedCount,
|
|
1058
1058
|
hidden: true
|
|
1059
1059
|
}
|
package/dist/index.cjs
CHANGED
|
@@ -349,7 +349,7 @@ async function resolveEditorBlockData({
|
|
|
349
349
|
async function resolveEditorLayoutBlockData({
|
|
350
350
|
groups,
|
|
351
351
|
blocks,
|
|
352
|
-
|
|
352
|
+
region,
|
|
353
353
|
page,
|
|
354
354
|
locale,
|
|
355
355
|
defaultLocale,
|
|
@@ -359,7 +359,7 @@ async function resolveEditorLayoutBlockData({
|
|
|
359
359
|
config,
|
|
360
360
|
appContext
|
|
361
361
|
}) {
|
|
362
|
-
const group = groups.find((g) => g.
|
|
362
|
+
const group = groups.find((g) => g.region === region);
|
|
363
363
|
const layoutBlocks = group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
364
364
|
if (layoutBlocks.length === 0) return { data: {}, content: {} };
|
|
365
365
|
const loaderMap = buildLoaderMap(blocks);
|
|
@@ -387,7 +387,7 @@ function layoutSlotPage(slug) {
|
|
|
387
387
|
}
|
|
388
388
|
async function resolveCmssyLayoutSlot(config, options) {
|
|
389
389
|
const {
|
|
390
|
-
|
|
390
|
+
region,
|
|
391
391
|
blocks,
|
|
392
392
|
editMode,
|
|
393
393
|
preview = false,
|
|
@@ -410,7 +410,7 @@ async function resolveCmssyLayoutSlot(config, options) {
|
|
|
410
410
|
});
|
|
411
411
|
const base = {
|
|
412
412
|
groups,
|
|
413
|
-
settings: groups.find((g) => g.
|
|
413
|
+
settings: groups.find((g) => g.region === region)?.settings ?? null,
|
|
414
414
|
page,
|
|
415
415
|
locale: locale$1,
|
|
416
416
|
defaultLocale: siteLocales.defaultLocale,
|
|
@@ -421,7 +421,7 @@ async function resolveCmssyLayoutSlot(config, options) {
|
|
|
421
421
|
const editorData = await resolveEditorLayoutBlockData({
|
|
422
422
|
groups,
|
|
423
423
|
blocks,
|
|
424
|
-
|
|
424
|
+
region,
|
|
425
425
|
page,
|
|
426
426
|
locale: locale$1,
|
|
427
427
|
defaultLocale: siteLocales.defaultLocale,
|
|
@@ -441,7 +441,7 @@ async function resolveCmssyLayoutSlot(config, options) {
|
|
|
441
441
|
async function CmssyServerLayout({
|
|
442
442
|
groups,
|
|
443
443
|
blocks,
|
|
444
|
-
|
|
444
|
+
region,
|
|
445
445
|
page,
|
|
446
446
|
locale: localeProp,
|
|
447
447
|
defaultLocale: defaultLocaleProp,
|
|
@@ -457,7 +457,7 @@ async function CmssyServerLayout({
|
|
|
457
457
|
enabledLocales: enabledLocalesProp,
|
|
458
458
|
config
|
|
459
459
|
});
|
|
460
|
-
const group = groups.find((g) => g.
|
|
460
|
+
const group = groups.find((g) => g.region === region);
|
|
461
461
|
const layoutBlocks = group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
462
462
|
if (layoutBlocks.length === 0) return null;
|
|
463
463
|
const map = buildBlockMap(blocks);
|
|
@@ -504,7 +504,7 @@ async function resolveCmssyLayout(config, options) {
|
|
|
504
504
|
const { groups, settings, page, locale, defaultLocale, enabledLocales } = resolved;
|
|
505
505
|
const shared = {
|
|
506
506
|
groups,
|
|
507
|
-
|
|
507
|
+
region: options.region,
|
|
508
508
|
page,
|
|
509
509
|
locale,
|
|
510
510
|
defaultLocale,
|
|
@@ -550,7 +550,7 @@ function CmssyBlock({
|
|
|
550
550
|
schema,
|
|
551
551
|
editable,
|
|
552
552
|
editMode,
|
|
553
|
-
|
|
553
|
+
layoutRegion,
|
|
554
554
|
context,
|
|
555
555
|
data
|
|
556
556
|
}) {
|
|
@@ -562,7 +562,7 @@ function CmssyBlock({
|
|
|
562
562
|
{
|
|
563
563
|
"data-block-id": block.id,
|
|
564
564
|
"data-block-type": block.type,
|
|
565
|
-
"data-layout-
|
|
565
|
+
"data-layout-region": layoutRegion,
|
|
566
566
|
draggable: editable || void 0,
|
|
567
567
|
style: hidden ? { display: "none" } : void 0,
|
|
568
568
|
children
|
package/dist/index.d.cts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CmssyPageData, CmssyClientConfig, CmssyFormDefinition, CmssyBlockAuthContext, CmssyBlockWorkspace, CmssyLayoutGroup, CmssyBlockPage, RetryOption, CmssyConfig, CmssyRegionOf, CmssyRegionSettingsOf, RawBlock, CmssyBlockContext } from '@cmssy/core';
|
|
2
|
-
export { AppToEditorMessage, BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BoundsMessage, BuildBlockContextExtra, ClickMessage, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClient, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayout, CmssyLayoutGroup, CmssyLocaleContext, CmssyLocalizedValue, CmssyModelDefinition, CmssyModelRecord, CmssyPageData, CmssyPageMeta, CmssyPageSummary, CmssyRecordList, CmssyRegion, CmssyRegionOf, CmssyRegionSettings, CmssyRegionSettingsOf, CmssyRequestError, CmssyRetryMode, CmssySiteConfig, CmssyTypedDocument, EditorToAppMessage, FetchLike, FetchLikeResponse, FetchPageOptions, FieldControl, FieldDefinition, FieldType, GraphqlRequestOptions, InferBlockContent,
|
|
3
|
-
import { B as BlockDefinition, L as LayoutBlockPage, a as BlockMap } from './internal-server-
|
|
4
|
-
export { b as BlockProps, E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, d as buildBlockMap, e as defineBlock, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData } from './internal-server-
|
|
2
|
+
export { AppToEditorMessage, BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BoundsMessage, BuildBlockContextExtra, ClickMessage, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClient, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayout, CmssyLayoutGroup, CmssyLocaleContext, CmssyLocalizedValue, CmssyModelDefinition, CmssyModelRecord, CmssyPageData, CmssyPageMeta, CmssyPageSummary, CmssyRecordList, CmssyRegion, CmssyRegionOf, CmssyRegionSettings, CmssyRegionSettingsOf, CmssyRequestError, CmssyRetryMode, CmssySiteConfig, CmssyTypedDocument, EditorToAppMessage, FetchLike, FetchLikeResponse, FetchPageOptions, FieldControl, FieldDefinition, FieldType, GraphqlRequestOptions, InferBlockContent, LayoutRegion, LayoutRegionId, MediaLike, PROTOCOL_VERSION, ParentReadyMessage, PatchMessage, PostTarget, QueryScopedOptions, RawBlock, RawLayoutBlock, ReadyMessage, RetryOption, RetryPolicy, SelectMessage, SubmitFormInput, TypedField, createCmssyClient, defineCmssyLayout, fields, graphqlRequest, isProtocolCompatible, mediaAlt, mediaUrl, mediaUrls, normalizeOrigin, parseEditorMessage, postToEditor } from '@cmssy/core';
|
|
3
|
+
import { B as BlockDefinition, L as LayoutBlockPage, a as BlockMap } from './internal-server-Bkracpae.cjs';
|
|
4
|
+
export { b as BlockProps, E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, d as buildBlockMap, e as defineBlock, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData } from './internal-server-Bkracpae.cjs';
|
|
5
5
|
import { FieldDefinition } from '@cmssy/types';
|
|
6
6
|
export { FieldCondition, FieldConditionGroup, FieldConditionLogic } from '@cmssy/types';
|
|
7
7
|
export { buildBlockContext } from '@cmssy/core/internal';
|
|
@@ -24,7 +24,7 @@ interface CmssyServerPageProps {
|
|
|
24
24
|
declare function CmssyServerPage({ page, blocks, locale: localeProp, defaultLocale: defaultLocaleProp, enabledLocales: enabledLocalesProp, config, forms, auth, workspace, appContext, editMode, }: CmssyServerPageProps): Promise<react_jsx_runtime.JSX.Element | null>;
|
|
25
25
|
|
|
26
26
|
interface ResolveCmssyLayoutSlotBase {
|
|
27
|
-
|
|
27
|
+
region: string;
|
|
28
28
|
blocks: BlockDefinition[];
|
|
29
29
|
editMode: boolean;
|
|
30
30
|
preview?: boolean;
|
|
@@ -57,7 +57,7 @@ declare function resolveCmssyLayoutSlot(config: CmssyConfig, options: ResolveCms
|
|
|
57
57
|
|
|
58
58
|
interface CmssyLayoutEditableProps {
|
|
59
59
|
groups: CmssyLayoutGroup[];
|
|
60
|
-
|
|
60
|
+
region: string;
|
|
61
61
|
page?: CmssyBlockPage;
|
|
62
62
|
locale: string;
|
|
63
63
|
defaultLocale: string;
|
|
@@ -69,8 +69,8 @@ interface CmssyLayoutEditableProps {
|
|
|
69
69
|
resolvedContent?: Record<string, Record<string, unknown>>;
|
|
70
70
|
appContext?: Record<string, unknown>;
|
|
71
71
|
}
|
|
72
|
-
type ResolveCmssyLayoutOptions<C extends CmssyConfig, P extends CmssyRegionOf<C>> = Omit<ResolveCmssyLayoutSlotOptions, "
|
|
73
|
-
|
|
72
|
+
type ResolveCmssyLayoutOptions<C extends CmssyConfig, P extends CmssyRegionOf<C>> = Omit<ResolveCmssyLayoutSlotOptions, "region" | keyof CmssyLayoutSlotLocaleSource> & CmssyLayoutSlotLocaleSource & {
|
|
73
|
+
region: P;
|
|
74
74
|
editable?: ComponentType<CmssyLayoutEditableProps>;
|
|
75
75
|
};
|
|
76
76
|
interface CmssyLayoutResolution<C extends CmssyConfig = CmssyConfig, P extends CmssyRegionOf<C> = CmssyRegionOf<C>> {
|
|
@@ -87,7 +87,7 @@ declare function resolveCmssyLayout<C extends CmssyConfig, P extends CmssyRegion
|
|
|
87
87
|
interface CmssyServerLayoutProps {
|
|
88
88
|
groups: CmssyLayoutGroup[];
|
|
89
89
|
blocks: BlockDefinition[];
|
|
90
|
-
|
|
90
|
+
region: string;
|
|
91
91
|
page?: LayoutBlockPage;
|
|
92
92
|
locale?: string;
|
|
93
93
|
defaultLocale?: string;
|
|
@@ -97,7 +97,7 @@ interface CmssyServerLayoutProps {
|
|
|
97
97
|
editMode?: boolean;
|
|
98
98
|
preview?: boolean;
|
|
99
99
|
}
|
|
100
|
-
declare function CmssyServerLayout({ groups, blocks,
|
|
100
|
+
declare function CmssyServerLayout({ groups, blocks, region, page, locale: localeProp, defaultLocale: defaultLocaleProp, enabledLocales: enabledLocalesProp, config, appContext, editMode, preview, }: CmssyServerLayoutProps): Promise<react_jsx_runtime.JSX.Element | null>;
|
|
101
101
|
|
|
102
102
|
interface CmssyBlockProps {
|
|
103
103
|
block: RawBlock;
|
|
@@ -111,11 +111,11 @@ interface CmssyBlockProps {
|
|
|
111
111
|
schema?: Record<string, FieldDefinition>;
|
|
112
112
|
editable?: boolean;
|
|
113
113
|
editMode?: boolean;
|
|
114
|
-
|
|
114
|
+
layoutRegion?: string;
|
|
115
115
|
context?: CmssyBlockContext;
|
|
116
116
|
data?: unknown;
|
|
117
117
|
}
|
|
118
|
-
declare function CmssyBlock({ block, locale, defaultLocale, blockMap, patchedContent, patchedStyle, patchedAdvanced, resolvedContent, schema, editable, editMode,
|
|
118
|
+
declare function CmssyBlock({ block, locale, defaultLocale, blockMap, patchedContent, patchedStyle, patchedAdvanced, resolvedContent, schema, editable, editMode, layoutRegion, context, data, }: CmssyBlockProps): react_jsx_runtime.JSX.Element | null;
|
|
119
119
|
|
|
120
120
|
interface UnknownBlockProps {
|
|
121
121
|
type: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CmssyPageData, CmssyClientConfig, CmssyFormDefinition, CmssyBlockAuthContext, CmssyBlockWorkspace, CmssyLayoutGroup, CmssyBlockPage, RetryOption, CmssyConfig, CmssyRegionOf, CmssyRegionSettingsOf, RawBlock, CmssyBlockContext } from '@cmssy/core';
|
|
2
|
-
export { AppToEditorMessage, BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BoundsMessage, BuildBlockContextExtra, ClickMessage, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClient, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayout, CmssyLayoutGroup, CmssyLocaleContext, CmssyLocalizedValue, CmssyModelDefinition, CmssyModelRecord, CmssyPageData, CmssyPageMeta, CmssyPageSummary, CmssyRecordList, CmssyRegion, CmssyRegionOf, CmssyRegionSettings, CmssyRegionSettingsOf, CmssyRequestError, CmssyRetryMode, CmssySiteConfig, CmssyTypedDocument, EditorToAppMessage, FetchLike, FetchLikeResponse, FetchPageOptions, FieldControl, FieldDefinition, FieldType, GraphqlRequestOptions, InferBlockContent,
|
|
3
|
-
import { B as BlockDefinition, L as LayoutBlockPage, a as BlockMap } from './internal-server-
|
|
4
|
-
export { b as BlockProps, E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, d as buildBlockMap, e as defineBlock, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData } from './internal-server-
|
|
2
|
+
export { AppToEditorMessage, BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BoundsMessage, BuildBlockContextExtra, ClickMessage, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClient, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayout, CmssyLayoutGroup, CmssyLocaleContext, CmssyLocalizedValue, CmssyModelDefinition, CmssyModelRecord, CmssyPageData, CmssyPageMeta, CmssyPageSummary, CmssyRecordList, CmssyRegion, CmssyRegionOf, CmssyRegionSettings, CmssyRegionSettingsOf, CmssyRequestError, CmssyRetryMode, CmssySiteConfig, CmssyTypedDocument, EditorToAppMessage, FetchLike, FetchLikeResponse, FetchPageOptions, FieldControl, FieldDefinition, FieldType, GraphqlRequestOptions, InferBlockContent, LayoutRegion, LayoutRegionId, MediaLike, PROTOCOL_VERSION, ParentReadyMessage, PatchMessage, PostTarget, QueryScopedOptions, RawBlock, RawLayoutBlock, ReadyMessage, RetryOption, RetryPolicy, SelectMessage, SubmitFormInput, TypedField, createCmssyClient, defineCmssyLayout, fields, graphqlRequest, isProtocolCompatible, mediaAlt, mediaUrl, mediaUrls, normalizeOrigin, parseEditorMessage, postToEditor } from '@cmssy/core';
|
|
3
|
+
import { B as BlockDefinition, L as LayoutBlockPage, a as BlockMap } from './internal-server-Bkracpae.js';
|
|
4
|
+
export { b as BlockProps, E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, d as buildBlockMap, e as defineBlock, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData } from './internal-server-Bkracpae.js';
|
|
5
5
|
import { FieldDefinition } from '@cmssy/types';
|
|
6
6
|
export { FieldCondition, FieldConditionGroup, FieldConditionLogic } from '@cmssy/types';
|
|
7
7
|
export { buildBlockContext } from '@cmssy/core/internal';
|
|
@@ -24,7 +24,7 @@ interface CmssyServerPageProps {
|
|
|
24
24
|
declare function CmssyServerPage({ page, blocks, locale: localeProp, defaultLocale: defaultLocaleProp, enabledLocales: enabledLocalesProp, config, forms, auth, workspace, appContext, editMode, }: CmssyServerPageProps): Promise<react_jsx_runtime.JSX.Element | null>;
|
|
25
25
|
|
|
26
26
|
interface ResolveCmssyLayoutSlotBase {
|
|
27
|
-
|
|
27
|
+
region: string;
|
|
28
28
|
blocks: BlockDefinition[];
|
|
29
29
|
editMode: boolean;
|
|
30
30
|
preview?: boolean;
|
|
@@ -57,7 +57,7 @@ declare function resolveCmssyLayoutSlot(config: CmssyConfig, options: ResolveCms
|
|
|
57
57
|
|
|
58
58
|
interface CmssyLayoutEditableProps {
|
|
59
59
|
groups: CmssyLayoutGroup[];
|
|
60
|
-
|
|
60
|
+
region: string;
|
|
61
61
|
page?: CmssyBlockPage;
|
|
62
62
|
locale: string;
|
|
63
63
|
defaultLocale: string;
|
|
@@ -69,8 +69,8 @@ interface CmssyLayoutEditableProps {
|
|
|
69
69
|
resolvedContent?: Record<string, Record<string, unknown>>;
|
|
70
70
|
appContext?: Record<string, unknown>;
|
|
71
71
|
}
|
|
72
|
-
type ResolveCmssyLayoutOptions<C extends CmssyConfig, P extends CmssyRegionOf<C>> = Omit<ResolveCmssyLayoutSlotOptions, "
|
|
73
|
-
|
|
72
|
+
type ResolveCmssyLayoutOptions<C extends CmssyConfig, P extends CmssyRegionOf<C>> = Omit<ResolveCmssyLayoutSlotOptions, "region" | keyof CmssyLayoutSlotLocaleSource> & CmssyLayoutSlotLocaleSource & {
|
|
73
|
+
region: P;
|
|
74
74
|
editable?: ComponentType<CmssyLayoutEditableProps>;
|
|
75
75
|
};
|
|
76
76
|
interface CmssyLayoutResolution<C extends CmssyConfig = CmssyConfig, P extends CmssyRegionOf<C> = CmssyRegionOf<C>> {
|
|
@@ -87,7 +87,7 @@ declare function resolveCmssyLayout<C extends CmssyConfig, P extends CmssyRegion
|
|
|
87
87
|
interface CmssyServerLayoutProps {
|
|
88
88
|
groups: CmssyLayoutGroup[];
|
|
89
89
|
blocks: BlockDefinition[];
|
|
90
|
-
|
|
90
|
+
region: string;
|
|
91
91
|
page?: LayoutBlockPage;
|
|
92
92
|
locale?: string;
|
|
93
93
|
defaultLocale?: string;
|
|
@@ -97,7 +97,7 @@ interface CmssyServerLayoutProps {
|
|
|
97
97
|
editMode?: boolean;
|
|
98
98
|
preview?: boolean;
|
|
99
99
|
}
|
|
100
|
-
declare function CmssyServerLayout({ groups, blocks,
|
|
100
|
+
declare function CmssyServerLayout({ groups, blocks, region, page, locale: localeProp, defaultLocale: defaultLocaleProp, enabledLocales: enabledLocalesProp, config, appContext, editMode, preview, }: CmssyServerLayoutProps): Promise<react_jsx_runtime.JSX.Element | null>;
|
|
101
101
|
|
|
102
102
|
interface CmssyBlockProps {
|
|
103
103
|
block: RawBlock;
|
|
@@ -111,11 +111,11 @@ interface CmssyBlockProps {
|
|
|
111
111
|
schema?: Record<string, FieldDefinition>;
|
|
112
112
|
editable?: boolean;
|
|
113
113
|
editMode?: boolean;
|
|
114
|
-
|
|
114
|
+
layoutRegion?: string;
|
|
115
115
|
context?: CmssyBlockContext;
|
|
116
116
|
data?: unknown;
|
|
117
117
|
}
|
|
118
|
-
declare function CmssyBlock({ block, locale, defaultLocale, blockMap, patchedContent, patchedStyle, patchedAdvanced, resolvedContent, schema, editable, editMode,
|
|
118
|
+
declare function CmssyBlock({ block, locale, defaultLocale, blockMap, patchedContent, patchedStyle, patchedAdvanced, resolvedContent, schema, editable, editMode, layoutRegion, context, data, }: CmssyBlockProps): react_jsx_runtime.JSX.Element | null;
|
|
119
119
|
|
|
120
120
|
interface UnknownBlockProps {
|
|
121
121
|
type: string;
|
package/dist/index.js
CHANGED
|
@@ -349,7 +349,7 @@ async function resolveEditorBlockData({
|
|
|
349
349
|
async function resolveEditorLayoutBlockData({
|
|
350
350
|
groups,
|
|
351
351
|
blocks,
|
|
352
|
-
|
|
352
|
+
region,
|
|
353
353
|
page,
|
|
354
354
|
locale,
|
|
355
355
|
defaultLocale,
|
|
@@ -359,7 +359,7 @@ async function resolveEditorLayoutBlockData({
|
|
|
359
359
|
config,
|
|
360
360
|
appContext
|
|
361
361
|
}) {
|
|
362
|
-
const group = groups.find((g) => g.
|
|
362
|
+
const group = groups.find((g) => g.region === region);
|
|
363
363
|
const layoutBlocks = group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
364
364
|
if (layoutBlocks.length === 0) return { data: {}, content: {} };
|
|
365
365
|
const loaderMap = buildLoaderMap(blocks);
|
|
@@ -387,7 +387,7 @@ function layoutSlotPage(slug) {
|
|
|
387
387
|
}
|
|
388
388
|
async function resolveCmssyLayoutSlot(config, options) {
|
|
389
389
|
const {
|
|
390
|
-
|
|
390
|
+
region,
|
|
391
391
|
blocks,
|
|
392
392
|
editMode,
|
|
393
393
|
preview = false,
|
|
@@ -410,7 +410,7 @@ async function resolveCmssyLayoutSlot(config, options) {
|
|
|
410
410
|
});
|
|
411
411
|
const base = {
|
|
412
412
|
groups,
|
|
413
|
-
settings: groups.find((g) => g.
|
|
413
|
+
settings: groups.find((g) => g.region === region)?.settings ?? null,
|
|
414
414
|
page,
|
|
415
415
|
locale,
|
|
416
416
|
defaultLocale: siteLocales.defaultLocale,
|
|
@@ -421,7 +421,7 @@ async function resolveCmssyLayoutSlot(config, options) {
|
|
|
421
421
|
const editorData = await resolveEditorLayoutBlockData({
|
|
422
422
|
groups,
|
|
423
423
|
blocks,
|
|
424
|
-
|
|
424
|
+
region,
|
|
425
425
|
page,
|
|
426
426
|
locale,
|
|
427
427
|
defaultLocale: siteLocales.defaultLocale,
|
|
@@ -441,7 +441,7 @@ async function resolveCmssyLayoutSlot(config, options) {
|
|
|
441
441
|
async function CmssyServerLayout({
|
|
442
442
|
groups,
|
|
443
443
|
blocks,
|
|
444
|
-
|
|
444
|
+
region,
|
|
445
445
|
page,
|
|
446
446
|
locale: localeProp,
|
|
447
447
|
defaultLocale: defaultLocaleProp,
|
|
@@ -457,7 +457,7 @@ async function CmssyServerLayout({
|
|
|
457
457
|
enabledLocales: enabledLocalesProp,
|
|
458
458
|
config
|
|
459
459
|
});
|
|
460
|
-
const group = groups.find((g) => g.
|
|
460
|
+
const group = groups.find((g) => g.region === region);
|
|
461
461
|
const layoutBlocks = group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
462
462
|
if (layoutBlocks.length === 0) return null;
|
|
463
463
|
const map = buildBlockMap(blocks);
|
|
@@ -504,7 +504,7 @@ async function resolveCmssyLayout(config, options) {
|
|
|
504
504
|
const { groups, settings, page, locale, defaultLocale, enabledLocales } = resolved;
|
|
505
505
|
const shared = {
|
|
506
506
|
groups,
|
|
507
|
-
|
|
507
|
+
region: options.region,
|
|
508
508
|
page,
|
|
509
509
|
locale,
|
|
510
510
|
defaultLocale,
|
|
@@ -550,7 +550,7 @@ function CmssyBlock({
|
|
|
550
550
|
schema,
|
|
551
551
|
editable,
|
|
552
552
|
editMode,
|
|
553
|
-
|
|
553
|
+
layoutRegion,
|
|
554
554
|
context,
|
|
555
555
|
data
|
|
556
556
|
}) {
|
|
@@ -562,7 +562,7 @@ function CmssyBlock({
|
|
|
562
562
|
{
|
|
563
563
|
"data-block-id": block.id,
|
|
564
564
|
"data-block-type": block.type,
|
|
565
|
-
"data-layout-
|
|
565
|
+
"data-layout-region": layoutRegion,
|
|
566
566
|
draggable: editable || void 0,
|
|
567
567
|
style: hidden ? { display: "none" } : void 0,
|
|
568
568
|
children
|
|
@@ -25,7 +25,7 @@ interface BlockDefinition {
|
|
|
25
25
|
label?: string;
|
|
26
26
|
category?: string;
|
|
27
27
|
icon?: string;
|
|
28
|
-
|
|
28
|
+
layoutRegions?: string[];
|
|
29
29
|
description?: string;
|
|
30
30
|
props: Record<string, FieldDefinition>;
|
|
31
31
|
loader?: BlockLoader;
|
|
@@ -42,7 +42,7 @@ declare function defineBlock<P extends BlockPropsSchema, C = InferBlockContent<P
|
|
|
42
42
|
label?: string;
|
|
43
43
|
category?: string;
|
|
44
44
|
icon?: string;
|
|
45
|
-
|
|
45
|
+
layoutRegions?: string[];
|
|
46
46
|
description?: string;
|
|
47
47
|
props: P;
|
|
48
48
|
loader?: (args: {
|
|
@@ -87,7 +87,7 @@ declare function resolveBlockData(options: ResolveBlockDataOptions): Promise<Rec
|
|
|
87
87
|
interface ResolveLayoutBlockDataOptions {
|
|
88
88
|
groups: CmssyLayoutGroup[];
|
|
89
89
|
blocks: BlockDefinition[];
|
|
90
|
-
|
|
90
|
+
region: string;
|
|
91
91
|
page?: LayoutBlockPage;
|
|
92
92
|
locale: string;
|
|
93
93
|
defaultLocale: string;
|
|
@@ -97,7 +97,7 @@ interface ResolveLayoutBlockDataOptions {
|
|
|
97
97
|
config?: CmssyClientConfig;
|
|
98
98
|
appContext?: Record<string, unknown>;
|
|
99
99
|
}
|
|
100
|
-
declare function resolveEditorLayoutBlockData({ groups, blocks,
|
|
100
|
+
declare function resolveEditorLayoutBlockData({ groups, blocks, region, page, locale, defaultLocale, enabledLocales, forms, isPreview, config, appContext, }: ResolveLayoutBlockDataOptions): Promise<EditorBlockData>;
|
|
101
101
|
declare function resolveLayoutBlockData(options: ResolveLayoutBlockDataOptions): Promise<Record<string, unknown>>;
|
|
102
102
|
|
|
103
103
|
export { type BlockDefinition as B, type EditorBlockData as E, type LayoutBlockPage as L, type ResolveBlockDataOptions as R, type BlockMap as a, type BlockProps as b, type ResolveLayoutBlockDataOptions as c, buildBlockMap as d, defineBlock as e, resolveEditorLayoutBlockData as f, resolveBlockData as g, resolveLayoutBlockData as h, resolveEditorBlockData as r };
|
|
@@ -25,7 +25,7 @@ interface BlockDefinition {
|
|
|
25
25
|
label?: string;
|
|
26
26
|
category?: string;
|
|
27
27
|
icon?: string;
|
|
28
|
-
|
|
28
|
+
layoutRegions?: string[];
|
|
29
29
|
description?: string;
|
|
30
30
|
props: Record<string, FieldDefinition>;
|
|
31
31
|
loader?: BlockLoader;
|
|
@@ -42,7 +42,7 @@ declare function defineBlock<P extends BlockPropsSchema, C = InferBlockContent<P
|
|
|
42
42
|
label?: string;
|
|
43
43
|
category?: string;
|
|
44
44
|
icon?: string;
|
|
45
|
-
|
|
45
|
+
layoutRegions?: string[];
|
|
46
46
|
description?: string;
|
|
47
47
|
props: P;
|
|
48
48
|
loader?: (args: {
|
|
@@ -87,7 +87,7 @@ declare function resolveBlockData(options: ResolveBlockDataOptions): Promise<Rec
|
|
|
87
87
|
interface ResolveLayoutBlockDataOptions {
|
|
88
88
|
groups: CmssyLayoutGroup[];
|
|
89
89
|
blocks: BlockDefinition[];
|
|
90
|
-
|
|
90
|
+
region: string;
|
|
91
91
|
page?: LayoutBlockPage;
|
|
92
92
|
locale: string;
|
|
93
93
|
defaultLocale: string;
|
|
@@ -97,7 +97,7 @@ interface ResolveLayoutBlockDataOptions {
|
|
|
97
97
|
config?: CmssyClientConfig;
|
|
98
98
|
appContext?: Record<string, unknown>;
|
|
99
99
|
}
|
|
100
|
-
declare function resolveEditorLayoutBlockData({ groups, blocks,
|
|
100
|
+
declare function resolveEditorLayoutBlockData({ groups, blocks, region, page, locale, defaultLocale, enabledLocales, forms, isPreview, config, appContext, }: ResolveLayoutBlockDataOptions): Promise<EditorBlockData>;
|
|
101
101
|
declare function resolveLayoutBlockData(options: ResolveLayoutBlockDataOptions): Promise<Record<string, unknown>>;
|
|
102
102
|
|
|
103
103
|
export { type BlockDefinition as B, type EditorBlockData as E, type LayoutBlockPage as L, type ResolveBlockDataOptions as R, type BlockMap as a, type BlockProps as b, type ResolveLayoutBlockDataOptions as c, buildBlockMap as d, defineBlock as e, resolveEditorLayoutBlockData as f, resolveBlockData as g, resolveLayoutBlockData as h, resolveEditorBlockData as r };
|
package/dist/internal-server.cjs
CHANGED
|
@@ -123,7 +123,7 @@ async function resolveBlockData(options) {
|
|
|
123
123
|
async function resolveEditorLayoutBlockData({
|
|
124
124
|
groups,
|
|
125
125
|
blocks,
|
|
126
|
-
|
|
126
|
+
region,
|
|
127
127
|
page,
|
|
128
128
|
locale,
|
|
129
129
|
defaultLocale,
|
|
@@ -133,7 +133,7 @@ async function resolveEditorLayoutBlockData({
|
|
|
133
133
|
config,
|
|
134
134
|
appContext
|
|
135
135
|
}) {
|
|
136
|
-
const group = groups.find((g) => g.
|
|
136
|
+
const group = groups.find((g) => g.region === region);
|
|
137
137
|
const layoutBlocks = group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
138
138
|
if (layoutBlocks.length === 0) return { data: {}, content: {} };
|
|
139
139
|
const loaderMap = buildLoaderMap(blocks);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, g as resolveBlockData, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData, h as resolveLayoutBlockData } from './internal-server-
|
|
1
|
+
export { E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, g as resolveBlockData, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData, h as resolveLayoutBlockData } from './internal-server-Bkracpae.cjs';
|
|
2
2
|
export { blocksToSchemas } from '@cmssy/core';
|
|
3
3
|
import 'react';
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, g as resolveBlockData, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData, h as resolveLayoutBlockData } from './internal-server-
|
|
1
|
+
export { E as EditorBlockData, R as ResolveBlockDataOptions, c as ResolveLayoutBlockDataOptions, g as resolveBlockData, r as resolveEditorBlockData, f as resolveEditorLayoutBlockData, h as resolveLayoutBlockData } from './internal-server-Bkracpae.js';
|
|
2
2
|
export { blocksToSchemas } from '@cmssy/core';
|
|
3
3
|
import 'react';
|
package/dist/internal-server.js
CHANGED
|
@@ -122,7 +122,7 @@ async function resolveBlockData(options) {
|
|
|
122
122
|
async function resolveEditorLayoutBlockData({
|
|
123
123
|
groups,
|
|
124
124
|
blocks,
|
|
125
|
-
|
|
125
|
+
region,
|
|
126
126
|
page,
|
|
127
127
|
locale,
|
|
128
128
|
defaultLocale,
|
|
@@ -132,7 +132,7 @@ async function resolveEditorLayoutBlockData({
|
|
|
132
132
|
config,
|
|
133
133
|
appContext
|
|
134
134
|
}) {
|
|
135
|
-
const group = groups.find((g) => g.
|
|
135
|
+
const group = groups.find((g) => g.region === region);
|
|
136
136
|
const layoutBlocks = group ? group.blocks.filter((b) => b.isActive !== false).slice().sort((a, b) => a.order - b.order) : [];
|
|
137
137
|
if (layoutBlocks.length === 0) return { data: {}, content: {} };
|
|
138
138
|
const loaderMap = buildLoaderMap(blocks);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cmssy/react",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "16.0.0",
|
|
4
4
|
"description": "React blocks, renderers, data client and editor bridge for cmssy headless sites",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cmssy",
|
|
@@ -96,8 +96,8 @@
|
|
|
96
96
|
"vitest": "^2.1.0"
|
|
97
97
|
},
|
|
98
98
|
"dependencies": {
|
|
99
|
-
"@cmssy/types": "0.
|
|
100
|
-
"@cmssy/core": "
|
|
99
|
+
"@cmssy/types": "0.41.0",
|
|
100
|
+
"@cmssy/core": "16.0.0"
|
|
101
101
|
},
|
|
102
102
|
"scripts": {
|
|
103
103
|
"build": "tsup",
|