@prenta/core 1.1.1 → 2.2.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/CHANGELOG.md +18 -0
- package/dist/api/handlers.d.ts.map +1 -1
- package/dist/api/handlers.js +0 -2
- package/dist/api/handlers.js.map +1 -1
- package/dist/api/routes/media.d.ts.map +1 -1
- package/dist/api/routes/media.js +73 -104
- package/dist/api/routes/media.js.map +1 -1
- package/dist/api/routes/saved-sections.d.ts.map +1 -1
- package/dist/api/routes/saved-sections.js +20 -300
- package/dist/api/routes/saved-sections.js.map +1 -1
- package/dist/appearance/resolve.js +1 -1
- package/dist/appearance/resolve.js.map +1 -1
- package/dist/collections/presets.d.ts +2 -2
- package/dist/collections/presets.js +2 -2
- package/dist/config/runtime.d.ts +1 -2
- package/dist/config/runtime.d.ts.map +1 -1
- package/dist/config/runtime.js.map +1 -1
- package/dist/config/types.d.ts +0 -3
- package/dist/config/types.d.ts.map +1 -1
- package/dist/db/model-types.d.ts +67 -26
- package/dist/db/model-types.d.ts.map +1 -1
- package/dist/generated/browser.d.ts +16 -0
- package/dist/generated/client.d.ts +16 -0
- package/dist/generated/commonInputTypes.d.ts +30 -0
- package/dist/generated/internal/class.d.ts +33 -0
- package/dist/generated/internal/class.js +4 -4
- package/dist/generated/internal/prismaNamespace.d.ts +294 -1
- package/dist/generated/internal/prismaNamespace.js +55 -1
- package/dist/generated/internal/prismaNamespaceBrowser.d.ts +60 -0
- package/dist/generated/internal/prismaNamespaceBrowser.js +55 -1
- package/dist/generated/models/DocumentCRDT.d.ts +1110 -0
- package/dist/generated/models/DocumentCRDT.js +1 -0
- package/dist/generated/models/DocumentComment.d.ts +1722 -0
- package/dist/generated/models/DocumentComment.js +1 -0
- package/dist/generated/models/DocumentNotification.d.ts +1289 -0
- package/dist/generated/models/DocumentNotification.js +1 -0
- package/dist/generated/models/User.d.ts +552 -0
- package/dist/generated/models.d.ts +3 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/media/index.d.ts +2 -0
- package/dist/media/index.d.ts.map +1 -1
- package/dist/media/index.js +1 -0
- package/dist/media/index.js.map +1 -1
- package/dist/media/optimize.d.ts.map +1 -1
- package/dist/media/optimize.js +19 -12
- package/dist/media/optimize.js.map +1 -1
- package/dist/media/reoptimize.d.ts +61 -0
- package/dist/media/reoptimize.d.ts.map +1 -0
- package/dist/media/reoptimize.js +371 -0
- package/dist/media/reoptimize.js.map +1 -0
- package/dist/sections/index.d.ts +1 -2
- package/dist/sections/index.d.ts.map +1 -1
- package/dist/sections/index.js +1 -2
- package/dist/sections/index.js.map +1 -1
- package/dist/sections/types.d.ts +2 -3
- package/dist/sections/types.d.ts.map +1 -1
- package/dist/sections/types.js +2 -3
- package/dist/sections/types.js.map +1 -1
- package/dist/security/api-key-enhanced.d.ts +2 -2
- package/package.json +1 -6
- package/prisma/migrations/0013_document_collab_models/migration.sql +68 -0
- package/prisma/schema.prisma +66 -5
- package/dist/api/routes/page-templates.d.ts +0 -3
- package/dist/api/routes/page-templates.d.ts.map +0 -1
- package/dist/api/routes/page-templates.js +0 -265
- package/dist/api/routes/page-templates.js.map +0 -1
- package/dist/page-builder/a11y-fix.d.ts +0 -20
- package/dist/page-builder/a11y-fix.d.ts.map +0 -1
- package/dist/page-builder/a11y-fix.js +0 -182
- package/dist/page-builder/a11y-fix.js.map +0 -1
- package/dist/page-builder/ai-pipeline.d.ts +0 -43
- package/dist/page-builder/ai-pipeline.d.ts.map +0 -1
- package/dist/page-builder/ai-pipeline.js +0 -165
- package/dist/page-builder/ai-pipeline.js.map +0 -1
- package/dist/page-builder/blocks.d.ts +0 -27
- package/dist/page-builder/blocks.d.ts.map +0 -1
- package/dist/page-builder/blocks.js +0 -313
- package/dist/page-builder/blocks.js.map +0 -1
- package/dist/page-builder/design-scorer.d.ts +0 -27
- package/dist/page-builder/design-scorer.d.ts.map +0 -1
- package/dist/page-builder/design-scorer.js +0 -612
- package/dist/page-builder/design-scorer.js.map +0 -1
- package/dist/page-builder/index.d.ts +0 -16
- package/dist/page-builder/index.d.ts.map +0 -1
- package/dist/page-builder/index.js +0 -18
- package/dist/page-builder/index.js.map +0 -1
- package/dist/page-builder/schema.d.ts +0 -107
- package/dist/page-builder/schema.d.ts.map +0 -1
- package/dist/page-builder/schema.js +0 -90
- package/dist/page-builder/schema.js.map +0 -1
- package/dist/page-builder/templates.d.ts +0 -9
- package/dist/page-builder/templates.d.ts.map +0 -1
- package/dist/page-builder/templates.js +0 -742
- package/dist/page-builder/templates.js.map +0 -1
- package/dist/page-builder/tree.d.ts +0 -17
- package/dist/page-builder/tree.d.ts.map +0 -1
- package/dist/page-builder/tree.js +0 -160
- package/dist/page-builder/tree.js.map +0 -1
- package/dist/page-builder/types.d.ts +0 -112
- package/dist/page-builder/types.d.ts.map +0 -1
- package/dist/page-builder/types.js +0 -4
- package/dist/page-builder/types.js.map +0 -1
- package/dist/page-builder/validate.d.ts +0 -6
- package/dist/page-builder/validate.d.ts.map +0 -1
- package/dist/page-builder/validate.js +0 -87
- package/dist/page-builder/validate.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/page-builder/templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { BuilderNode, ParentNode, PageNode, SectionNode, ContainerNode, RowNode, ColumnNode, BlockNode, SavedSectionRefNode, SectionSettings, ContainerSettings, RowSettings } from './types.js';
|
|
2
|
-
export declare function createId(): string;
|
|
3
|
-
export declare function findNode(root: BuilderNode, id: string): BuilderNode | undefined;
|
|
4
|
-
export declare function findParent(root: BuilderNode, id: string): ParentNode | undefined;
|
|
5
|
-
export declare function addNode(root: PageNode, parentId: string, node: BuilderNode, index?: number): PageNode;
|
|
6
|
-
export declare function removeNode(root: PageNode, nodeId: string): PageNode;
|
|
7
|
-
export declare function moveNode(root: PageNode, nodeId: string, newParentId: string, index?: number): PageNode;
|
|
8
|
-
export declare function updateNodeSettings(root: PageNode, nodeId: string, settings: Record<string, unknown>): PageNode;
|
|
9
|
-
export declare function updateBlockData(root: PageNode, blockId: string, data: Record<string, unknown>): PageNode;
|
|
10
|
-
export declare function createEmptyPage(): PageNode;
|
|
11
|
-
export declare function createSection(settings?: Partial<SectionSettings>): SectionNode;
|
|
12
|
-
export declare function createContainer(settings?: Partial<ContainerSettings>): ContainerNode;
|
|
13
|
-
export declare function createRow(columns?: ColumnNode[], settings?: Partial<RowSettings>): RowNode;
|
|
14
|
-
export declare function createColumn(width: number, children?: (BlockNode | ContainerNode)[]): ColumnNode;
|
|
15
|
-
export declare function createBlock(blockType: string, variant?: string, data?: Record<string, unknown>): BlockNode;
|
|
16
|
-
export declare function createSavedSectionRef(refId: string): SavedSectionRefNode;
|
|
17
|
-
//# sourceMappingURL=tree.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/page-builder/tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,QAAQ,EACR,WAAW,EACX,aAAa,EACb,OAAO,EACP,UAAU,EACV,SAAS,EACT,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACZ,MAAM,YAAY,CAAA;AAOnB,wBAAgB,QAAQ,IAAI,MAAM,CAKjC;AAWD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAO/E;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAQhF;AAQD,wBAAgB,OAAO,CACrB,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,WAAW,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,QAAQ,CAYV;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAUnE;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GACb,QAAQ,CAuBV;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,QAAQ,CAMV;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,QAAQ,CAMV;AAID,wBAAgB,eAAe,IAAI,QAAQ,CAE1C;AAED,wBAAgB,aAAa,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW,CAO9E;AAED,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,aAAa,CAOpF;AAED,wBAAgB,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAO1F;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,SAAS,GAAG,aAAa,CAAC,EAAE,GAAG,UAAU,CAOhG;AAED,wBAAgB,WAAW,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,SAAS,CAOX;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAMxE"}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
import { hasChildren } from './types.js';
|
|
2
|
-
// ─── ID Generation ──────────────────────────────────────────────────
|
|
3
|
-
let counter = 0;
|
|
4
|
-
export function createId() {
|
|
5
|
-
const timestamp = Date.now().toString(36);
|
|
6
|
-
const count = (counter++).toString(36);
|
|
7
|
-
const random = Math.random().toString(36).slice(2, 8);
|
|
8
|
-
return `node_${timestamp}_${count}_${random}`;
|
|
9
|
-
}
|
|
10
|
-
// ─── Tree Traversal ─────────────────────────────────────────────────
|
|
11
|
-
function getChildren(node) {
|
|
12
|
-
if (hasChildren(node)) {
|
|
13
|
-
return node.children;
|
|
14
|
-
}
|
|
15
|
-
return [];
|
|
16
|
-
}
|
|
17
|
-
export function findNode(root, id) {
|
|
18
|
-
if (root.id === id)
|
|
19
|
-
return root;
|
|
20
|
-
for (const child of getChildren(root)) {
|
|
21
|
-
const found = findNode(child, id);
|
|
22
|
-
if (found)
|
|
23
|
-
return found;
|
|
24
|
-
}
|
|
25
|
-
return undefined;
|
|
26
|
-
}
|
|
27
|
-
export function findParent(root, id) {
|
|
28
|
-
if (!hasChildren(root))
|
|
29
|
-
return undefined;
|
|
30
|
-
for (const child of getChildren(root)) {
|
|
31
|
-
if (child.id === id)
|
|
32
|
-
return root;
|
|
33
|
-
const found = findParent(child, id);
|
|
34
|
-
if (found)
|
|
35
|
-
return found;
|
|
36
|
-
}
|
|
37
|
-
return undefined;
|
|
38
|
-
}
|
|
39
|
-
// ─── Tree Mutation (Immutable) ──────────────────────────────────────
|
|
40
|
-
function deepClone(obj) {
|
|
41
|
-
return JSON.parse(JSON.stringify(obj));
|
|
42
|
-
}
|
|
43
|
-
export function addNode(root, parentId, node, index) {
|
|
44
|
-
const newRoot = deepClone(root);
|
|
45
|
-
const parent = findNode(newRoot, parentId);
|
|
46
|
-
if (!parent || !hasChildren(parent))
|
|
47
|
-
return newRoot;
|
|
48
|
-
const clonedNode = deepClone(node);
|
|
49
|
-
const children = parent.children;
|
|
50
|
-
if (index !== undefined) {
|
|
51
|
-
children.splice(index, 0, clonedNode);
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
children.push(clonedNode);
|
|
55
|
-
}
|
|
56
|
-
return newRoot;
|
|
57
|
-
}
|
|
58
|
-
export function removeNode(root, nodeId) {
|
|
59
|
-
const newRoot = deepClone(root);
|
|
60
|
-
const parent = findParent(newRoot, nodeId);
|
|
61
|
-
if (!parent)
|
|
62
|
-
return newRoot;
|
|
63
|
-
const children = parent.children;
|
|
64
|
-
const idx = children.findIndex((c) => c.id === nodeId);
|
|
65
|
-
if (idx !== -1) {
|
|
66
|
-
children.splice(idx, 1);
|
|
67
|
-
}
|
|
68
|
-
return newRoot;
|
|
69
|
-
}
|
|
70
|
-
export function moveNode(root, nodeId, newParentId, index) {
|
|
71
|
-
const newRoot = deepClone(root);
|
|
72
|
-
const oldParent = findParent(newRoot, nodeId);
|
|
73
|
-
if (!oldParent)
|
|
74
|
-
return newRoot;
|
|
75
|
-
const oldChildren = oldParent.children;
|
|
76
|
-
const idx = oldChildren.findIndex((c) => c.id === nodeId);
|
|
77
|
-
if (idx === -1)
|
|
78
|
-
return newRoot;
|
|
79
|
-
const removed = oldChildren.splice(idx, 1);
|
|
80
|
-
const node = removed[0];
|
|
81
|
-
const newParent = findNode(newRoot, newParentId);
|
|
82
|
-
if (!newParent || !hasChildren(newParent))
|
|
83
|
-
return newRoot;
|
|
84
|
-
const newChildren = newParent.children;
|
|
85
|
-
if (index !== undefined) {
|
|
86
|
-
newChildren.splice(index, 0, node);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
newChildren.push(node);
|
|
90
|
-
}
|
|
91
|
-
return newRoot;
|
|
92
|
-
}
|
|
93
|
-
export function updateNodeSettings(root, nodeId, settings) {
|
|
94
|
-
const newRoot = deepClone(root);
|
|
95
|
-
const node = findNode(newRoot, nodeId);
|
|
96
|
-
if (!node || !('settings' in node))
|
|
97
|
-
return newRoot;
|
|
98
|
-
node.settings = { ...node.settings, ...settings };
|
|
99
|
-
return newRoot;
|
|
100
|
-
}
|
|
101
|
-
export function updateBlockData(root, blockId, data) {
|
|
102
|
-
const newRoot = deepClone(root);
|
|
103
|
-
const node = findNode(newRoot, blockId);
|
|
104
|
-
if (!node || node.type !== 'block')
|
|
105
|
-
return newRoot;
|
|
106
|
-
node.data = { ...node.data, ...data };
|
|
107
|
-
return newRoot;
|
|
108
|
-
}
|
|
109
|
-
// ─── Factory Functions ──────────────────────────────────────────────
|
|
110
|
-
export function createEmptyPage() {
|
|
111
|
-
return { id: createId(), type: 'page', children: [] };
|
|
112
|
-
}
|
|
113
|
-
export function createSection(settings) {
|
|
114
|
-
return {
|
|
115
|
-
id: createId(),
|
|
116
|
-
type: 'section',
|
|
117
|
-
settings: { ...settings },
|
|
118
|
-
children: [],
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
export function createContainer(settings) {
|
|
122
|
-
return {
|
|
123
|
-
id: createId(),
|
|
124
|
-
type: 'container',
|
|
125
|
-
settings: { maxWidth: '1200px', ...settings },
|
|
126
|
-
children: [],
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
export function createRow(columns, settings) {
|
|
130
|
-
return {
|
|
131
|
-
id: createId(),
|
|
132
|
-
type: 'row',
|
|
133
|
-
settings: { gap: '24px', ...settings },
|
|
134
|
-
children: columns ?? [],
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
export function createColumn(width, children) {
|
|
138
|
-
return {
|
|
139
|
-
id: createId(),
|
|
140
|
-
type: 'column',
|
|
141
|
-
settings: { width },
|
|
142
|
-
children: children ?? [],
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
export function createBlock(blockType, variant, data) {
|
|
146
|
-
return {
|
|
147
|
-
id: createId(),
|
|
148
|
-
type: 'block',
|
|
149
|
-
settings: { blockType, ...(variant ? { variant } : {}) },
|
|
150
|
-
data: data ?? {},
|
|
151
|
-
};
|
|
152
|
-
}
|
|
153
|
-
export function createSavedSectionRef(refId) {
|
|
154
|
-
return {
|
|
155
|
-
id: createId(),
|
|
156
|
-
type: 'savedSectionRef',
|
|
157
|
-
settings: { refId },
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
//# sourceMappingURL=tree.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/page-builder/tree.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import type { FieldDefinition } from '../config/types.js';
|
|
2
|
-
export interface SectionSettings {
|
|
3
|
-
background?: string;
|
|
4
|
-
backgroundImage?: string;
|
|
5
|
-
backgroundGradient?: string;
|
|
6
|
-
paddingTop?: string;
|
|
7
|
-
paddingBottom?: string;
|
|
8
|
-
marginTop?: string;
|
|
9
|
-
marginBottom?: string;
|
|
10
|
-
visibility?: 'visible' | 'hidden';
|
|
11
|
-
htmlId?: string;
|
|
12
|
-
htmlClass?: string;
|
|
13
|
-
}
|
|
14
|
-
export interface ContainerSettings {
|
|
15
|
-
maxWidth?: string;
|
|
16
|
-
alignment?: 'left' | 'center' | 'right';
|
|
17
|
-
padding?: string;
|
|
18
|
-
}
|
|
19
|
-
export interface RowSettings {
|
|
20
|
-
gap?: string;
|
|
21
|
-
verticalAlign?: 'top' | 'center' | 'bottom' | 'stretch';
|
|
22
|
-
reverseOnMobile?: boolean;
|
|
23
|
-
wrapOnMobile?: boolean;
|
|
24
|
-
}
|
|
25
|
-
export interface ColumnSettings {
|
|
26
|
-
width: number;
|
|
27
|
-
verticalAlign?: 'top' | 'center' | 'bottom';
|
|
28
|
-
padding?: string;
|
|
29
|
-
background?: string;
|
|
30
|
-
}
|
|
31
|
-
export interface BlockSettings {
|
|
32
|
-
blockType: string;
|
|
33
|
-
variant?: string;
|
|
34
|
-
}
|
|
35
|
-
export interface SavedSectionRefSettings {
|
|
36
|
-
refId: string;
|
|
37
|
-
}
|
|
38
|
-
export interface ResponsiveOverrides {
|
|
39
|
-
mobile?: Record<string, unknown>;
|
|
40
|
-
tablet?: Record<string, unknown>;
|
|
41
|
-
}
|
|
42
|
-
interface BaseNode {
|
|
43
|
-
id: string;
|
|
44
|
-
responsive?: ResponsiveOverrides;
|
|
45
|
-
}
|
|
46
|
-
export interface PageNode extends BaseNode {
|
|
47
|
-
type: 'page';
|
|
48
|
-
children: (SectionNode | SavedSectionRefNode)[];
|
|
49
|
-
}
|
|
50
|
-
export interface SectionNode extends BaseNode {
|
|
51
|
-
type: 'section';
|
|
52
|
-
settings: SectionSettings;
|
|
53
|
-
children: (ContainerNode | RowNode)[];
|
|
54
|
-
}
|
|
55
|
-
export interface ContainerNode extends BaseNode {
|
|
56
|
-
type: 'container';
|
|
57
|
-
settings: ContainerSettings;
|
|
58
|
-
children: RowNode[];
|
|
59
|
-
}
|
|
60
|
-
export interface RowNode extends BaseNode {
|
|
61
|
-
type: 'row';
|
|
62
|
-
settings: RowSettings;
|
|
63
|
-
children: ColumnNode[];
|
|
64
|
-
}
|
|
65
|
-
export interface ColumnNode extends BaseNode {
|
|
66
|
-
type: 'column';
|
|
67
|
-
settings: ColumnSettings;
|
|
68
|
-
children: (BlockNode | ContainerNode)[];
|
|
69
|
-
}
|
|
70
|
-
export interface BlockNode extends BaseNode {
|
|
71
|
-
type: 'block';
|
|
72
|
-
settings: BlockSettings;
|
|
73
|
-
data: Record<string, unknown>;
|
|
74
|
-
}
|
|
75
|
-
export interface SavedSectionRefNode extends BaseNode {
|
|
76
|
-
type: 'savedSectionRef';
|
|
77
|
-
settings: SavedSectionRefSettings;
|
|
78
|
-
}
|
|
79
|
-
export type BuilderNode = PageNode | SectionNode | ContainerNode | RowNode | ColumnNode | BlockNode | SavedSectionRefNode;
|
|
80
|
-
export type NodeType = BuilderNode['type'];
|
|
81
|
-
export interface VariantDefinition {
|
|
82
|
-
name: string;
|
|
83
|
-
label: string;
|
|
84
|
-
description: string;
|
|
85
|
-
thumbnail?: string;
|
|
86
|
-
defaultSettings?: Record<string, unknown>;
|
|
87
|
-
defaultData?: Record<string, unknown>;
|
|
88
|
-
}
|
|
89
|
-
export interface BlockTypeDefinition {
|
|
90
|
-
type: string;
|
|
91
|
-
label: string;
|
|
92
|
-
icon: string;
|
|
93
|
-
description?: string;
|
|
94
|
-
variants: VariantDefinition[];
|
|
95
|
-
fields: Record<string, FieldDefinition>;
|
|
96
|
-
defaultData?: Record<string, unknown>;
|
|
97
|
-
}
|
|
98
|
-
export interface PreviewTheme {
|
|
99
|
-
fontFamily?: string;
|
|
100
|
-
headingFontFamily?: string;
|
|
101
|
-
primaryColor?: string;
|
|
102
|
-
secondaryColor?: string;
|
|
103
|
-
borderRadius?: string;
|
|
104
|
-
}
|
|
105
|
-
export interface PageBuilderConfig {
|
|
106
|
-
blocks?: BlockTypeDefinition[];
|
|
107
|
-
previewTheme?: PreviewTheme;
|
|
108
|
-
}
|
|
109
|
-
export type ParentNode = PageNode | SectionNode | ContainerNode | RowNode | ColumnNode;
|
|
110
|
-
export declare function hasChildren(node: BuilderNode): node is ParentNode;
|
|
111
|
-
export {};
|
|
112
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/page-builder/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/page-builder/types.ts"],"names":[],"mappings":"AAuJA,MAAM,UAAU,WAAW,CAAC,IAAiB;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,CAAA;AACjE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/page-builder/validate.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,oBAAoB,CA8BhE"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { pageNodeSchema } from './schema.js';
|
|
2
|
-
const MAX_DEPTH = 9;
|
|
3
|
-
export function validateTree(tree) {
|
|
4
|
-
const errors = [];
|
|
5
|
-
if (tree === null ||
|
|
6
|
-
tree === undefined ||
|
|
7
|
-
typeof tree !== 'object' ||
|
|
8
|
-
!('type' in tree) ||
|
|
9
|
-
tree.type !== 'page') {
|
|
10
|
-
errors.push('Root node must be of type "page"');
|
|
11
|
-
return { valid: false, errors };
|
|
12
|
-
}
|
|
13
|
-
const result = pageNodeSchema.safeParse(tree);
|
|
14
|
-
if (!result.success) {
|
|
15
|
-
for (const issue of result.error.issues) {
|
|
16
|
-
const path = issue.path.length > 0 ? ` at ${issue.path.join('.')}` : '';
|
|
17
|
-
errors.push(`${issue.message}${path}`);
|
|
18
|
-
}
|
|
19
|
-
return { valid: false, errors };
|
|
20
|
-
}
|
|
21
|
-
const pageNode = tree;
|
|
22
|
-
checkColumnWidths(pageNode, errors);
|
|
23
|
-
checkDepth(pageNode, 1, errors);
|
|
24
|
-
checkBlockNoChildren(pageNode, errors);
|
|
25
|
-
checkNestingRules(pageNode, errors);
|
|
26
|
-
return { valid: errors.length === 0, errors };
|
|
27
|
-
}
|
|
28
|
-
function checkColumnWidths(node, errors) {
|
|
29
|
-
if (!node || typeof node !== 'object')
|
|
30
|
-
return;
|
|
31
|
-
const n = node;
|
|
32
|
-
if (n.type === 'row' && Array.isArray(n.children)) {
|
|
33
|
-
const columns = n.children;
|
|
34
|
-
const sum = columns.reduce((acc, col) => acc + (col.settings?.width ?? 0), 0);
|
|
35
|
-
if (sum !== 12) {
|
|
36
|
-
errors.push(`Row "${n.id}" columns sum to ${sum}, expected 12`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
if ('children' in n && Array.isArray(n.children)) {
|
|
40
|
-
for (const child of n.children) {
|
|
41
|
-
checkColumnWidths(child, errors);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
function checkDepth(node, depth, errors) {
|
|
46
|
-
if (!node || typeof node !== 'object')
|
|
47
|
-
return;
|
|
48
|
-
const n = node;
|
|
49
|
-
if (depth > MAX_DEPTH) {
|
|
50
|
-
errors.push(`Maximum nesting depth of ${MAX_DEPTH} exceeded at node "${n.id}"`);
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
if ('children' in n && Array.isArray(n.children)) {
|
|
54
|
-
for (const child of n.children) {
|
|
55
|
-
checkDepth(child, depth + 1, errors);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
function checkBlockNoChildren(node, errors) {
|
|
60
|
-
if (!node || typeof node !== 'object')
|
|
61
|
-
return;
|
|
62
|
-
const n = node;
|
|
63
|
-
if (n.type === 'block' &&
|
|
64
|
-
'children' in n &&
|
|
65
|
-
Array.isArray(n.children) &&
|
|
66
|
-
n.children.length > 0) {
|
|
67
|
-
errors.push(`Block node "${n.id}" must not have children`);
|
|
68
|
-
}
|
|
69
|
-
if ('children' in n && Array.isArray(n.children)) {
|
|
70
|
-
for (const child of n.children) {
|
|
71
|
-
checkBlockNoChildren(child, errors);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
function checkNestingRules(node, errors) {
|
|
76
|
-
if (!node || typeof node !== 'object')
|
|
77
|
-
return;
|
|
78
|
-
const n = node;
|
|
79
|
-
if (n.type === 'page' && Array.isArray(n.children)) {
|
|
80
|
-
for (const child of n.children) {
|
|
81
|
-
if (child.type !== 'section' && child.type !== 'savedSectionRef') {
|
|
82
|
-
errors.push(`Page node can only contain section or savedSectionRef children, found "${child.type}" ("${child.id}")`);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=validate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/page-builder/validate.ts"],"names":[],"mappings":"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"}
|