@cocoar/vue-page-builder 2.1.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/CoarPageBuilder.vue.d.ts +21 -0
- package/dist/CoarPageBuilder.vue.d.ts.map +1 -0
- package/dist/CoarPageRenderer.vue.d.ts +22 -0
- package/dist/CoarPageRenderer.vue.d.ts.map +1 -0
- package/dist/PageNode.vue.d.ts +7 -0
- package/dist/PageNode.vue.d.ts.map +1 -0
- package/dist/builder/BuilderCanvas.vue.d.ts +3 -0
- package/dist/builder/BuilderCanvas.vue.d.ts.map +1 -0
- package/dist/builder/BuilderCanvasNode.vue.d.ts +9 -0
- package/dist/builder/BuilderCanvasNode.vue.d.ts.map +1 -0
- package/dist/builder/BuilderOutline.vue.d.ts +3 -0
- package/dist/builder/BuilderOutline.vue.d.ts.map +1 -0
- package/dist/builder/BuilderOutlineNode.vue.d.ts +14 -0
- package/dist/builder/BuilderOutlineNode.vue.d.ts.map +1 -0
- package/dist/builder/BuilderPropsPanel.vue.d.ts +3 -0
- package/dist/builder/BuilderPropsPanel.vue.d.ts.map +1 -0
- package/dist/builder/builderContext.d.ts +10 -0
- package/dist/builder/builderContext.d.ts.map +1 -0
- package/dist/builder/nodeDefaults.d.ts +14 -0
- package/dist/builder/nodeDefaults.d.ts.map +1 -0
- package/dist/builder/operations.d.ts +21 -0
- package/dist/builder/operations.d.ts.map +1 -0
- package/dist/builder/props/ButtonProps.vue.d.ts +8 -0
- package/dist/builder/props/ButtonProps.vue.d.ts.map +1 -0
- package/dist/builder/props/CardProps.vue.d.ts +8 -0
- package/dist/builder/props/CardProps.vue.d.ts.map +1 -0
- package/dist/builder/props/CheckboxProps.vue.d.ts +8 -0
- package/dist/builder/props/CheckboxProps.vue.d.ts.map +1 -0
- package/dist/builder/props/HeadingProps.vue.d.ts +8 -0
- package/dist/builder/props/HeadingProps.vue.d.ts.map +1 -0
- package/dist/builder/props/ImageProps.vue.d.ts +8 -0
- package/dist/builder/props/ImageProps.vue.d.ts.map +1 -0
- package/dist/builder/props/LinkProps.vue.d.ts +8 -0
- package/dist/builder/props/LinkProps.vue.d.ts.map +1 -0
- package/dist/builder/props/ParagraphProps.vue.d.ts +8 -0
- package/dist/builder/props/ParagraphProps.vue.d.ts.map +1 -0
- package/dist/builder/props/SectionProps.vue.d.ts +8 -0
- package/dist/builder/props/SectionProps.vue.d.ts.map +1 -0
- package/dist/builder/props/SelectProps.vue.d.ts +8 -0
- package/dist/builder/props/SelectProps.vue.d.ts.map +1 -0
- package/dist/builder/props/SpacerProps.vue.d.ts +8 -0
- package/dist/builder/props/SpacerProps.vue.d.ts.map +1 -0
- package/dist/builder/props/StackProps.vue.d.ts +8 -0
- package/dist/builder/props/StackProps.vue.d.ts.map +1 -0
- package/dist/builder/props/StyleProps.vue.d.ts +8 -0
- package/dist/builder/props/StyleProps.vue.d.ts.map +1 -0
- package/dist/builder/props/TextInputProps.vue.d.ts +8 -0
- package/dist/builder/props/TextInputProps.vue.d.ts.map +1 -0
- package/dist/builder/props/registry.d.ts +15 -0
- package/dist/builder/props/registry.d.ts.map +1 -0
- package/dist/builder/useBuilderDnd.d.ts +26 -0
- package/dist/builder/useBuilderDnd.d.ts.map +1 -0
- package/dist/builder/usePageBuilder.d.ts +28 -0
- package/dist/builder/usePageBuilder.d.ts.map +1 -0
- package/dist/builder/useSchemaValidation.d.ts +28 -0
- package/dist/builder/useSchemaValidation.d.ts.map +1 -0
- package/dist/context.d.ts +24 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/index.css +2 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2454 -0
- package/dist/schema.d.ts +185 -0
- package/dist/schema.d.ts.map +1 -0
- package/package.json +47 -0
package/dist/schema.d.ts
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
export interface NodeStyle {
|
|
2
|
+
/** CSS gap value, e.g. '8px', '1rem'. Applied to container's inner layout. */
|
|
3
|
+
gap?: string;
|
|
4
|
+
/** CSS padding value. */
|
|
5
|
+
padding?: string;
|
|
6
|
+
/** CSS width value or flex share (number string like '2'). */
|
|
7
|
+
width?: string;
|
|
8
|
+
/** Align children (flex align-items) or self inside a row. */
|
|
9
|
+
align?: 'start' | 'center' | 'end' | 'stretch';
|
|
10
|
+
}
|
|
11
|
+
interface PageNodeBase {
|
|
12
|
+
/** Stable UUID assigned by the builder. */
|
|
13
|
+
id: string;
|
|
14
|
+
style?: NodeStyle;
|
|
15
|
+
}
|
|
16
|
+
/** Root-level page container. Behaves like a column; always the schema root. */
|
|
17
|
+
export interface PageRootNode extends PageNodeBase {
|
|
18
|
+
type: 'page';
|
|
19
|
+
children: PageNode[];
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Generic flex container. Direction is toggleable in the props panel, so users
|
|
23
|
+
* never have to delete + recreate to switch between vertical and horizontal stacks.
|
|
24
|
+
*/
|
|
25
|
+
export interface StackNode extends PageNodeBase {
|
|
26
|
+
type: 'stack';
|
|
27
|
+
/** Flex direction. Defaults to 'column'. */
|
|
28
|
+
direction?: 'column' | 'row';
|
|
29
|
+
/** Wrap children to the next line. Only meaningful for direction = 'row'. */
|
|
30
|
+
wrap?: boolean;
|
|
31
|
+
children: PageNode[];
|
|
32
|
+
}
|
|
33
|
+
export interface CardNode extends PageNodeBase {
|
|
34
|
+
type: 'card';
|
|
35
|
+
title?: string;
|
|
36
|
+
children: PageNode[];
|
|
37
|
+
}
|
|
38
|
+
export interface SectionNode extends PageNodeBase {
|
|
39
|
+
type: 'section';
|
|
40
|
+
title?: string;
|
|
41
|
+
children: PageNode[];
|
|
42
|
+
}
|
|
43
|
+
export interface DividerNode extends PageNodeBase {
|
|
44
|
+
type: 'divider';
|
|
45
|
+
}
|
|
46
|
+
export interface SpacerNode extends PageNodeBase {
|
|
47
|
+
type: 'spacer';
|
|
48
|
+
/** CSS size, e.g. '24px'. Defaults to flex:1 (fills available space). */
|
|
49
|
+
size?: string;
|
|
50
|
+
}
|
|
51
|
+
export interface HeadingNode extends PageNodeBase {
|
|
52
|
+
type: 'heading';
|
|
53
|
+
text: string;
|
|
54
|
+
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
55
|
+
}
|
|
56
|
+
export interface ParagraphNode extends PageNodeBase {
|
|
57
|
+
type: 'paragraph';
|
|
58
|
+
text: string;
|
|
59
|
+
}
|
|
60
|
+
export interface FieldValidation {
|
|
61
|
+
required?: boolean;
|
|
62
|
+
minLength?: number;
|
|
63
|
+
maxLength?: number;
|
|
64
|
+
pattern?: string;
|
|
65
|
+
/** Field must equal the value of another named field. */
|
|
66
|
+
matchField?: string;
|
|
67
|
+
/** Overrides the default error message for any rule on this field. */
|
|
68
|
+
message?: string;
|
|
69
|
+
}
|
|
70
|
+
export interface TextInputNode extends PageNodeBase {
|
|
71
|
+
type: 'text-input';
|
|
72
|
+
/** When set, value is managed by the renderer and passed to actions. */
|
|
73
|
+
name?: string;
|
|
74
|
+
label?: string;
|
|
75
|
+
placeholder?: string;
|
|
76
|
+
/** Controls HTML input type and autocomplete hints. Defaults to 'text'. */
|
|
77
|
+
inputType?: 'text' | 'email' | 'password' | 'url';
|
|
78
|
+
defaultValue?: string;
|
|
79
|
+
validation?: FieldValidation;
|
|
80
|
+
disabled?: boolean;
|
|
81
|
+
}
|
|
82
|
+
export interface CheckboxNode extends PageNodeBase {
|
|
83
|
+
type: 'checkbox';
|
|
84
|
+
/** When set, value is managed by the renderer and passed to actions. */
|
|
85
|
+
name?: string;
|
|
86
|
+
label: string;
|
|
87
|
+
defaultValue?: boolean;
|
|
88
|
+
validation?: Pick<FieldValidation, 'required'>;
|
|
89
|
+
disabled?: boolean;
|
|
90
|
+
}
|
|
91
|
+
export interface SelectNode extends PageNodeBase {
|
|
92
|
+
type: 'select';
|
|
93
|
+
/** When set, value is managed by the renderer and passed to actions. */
|
|
94
|
+
name?: string;
|
|
95
|
+
label?: string;
|
|
96
|
+
placeholder?: string;
|
|
97
|
+
options?: {
|
|
98
|
+
value: string;
|
|
99
|
+
label: string;
|
|
100
|
+
}[];
|
|
101
|
+
defaultValue?: string;
|
|
102
|
+
validation?: Pick<FieldValidation, 'required'>;
|
|
103
|
+
disabled?: boolean;
|
|
104
|
+
}
|
|
105
|
+
export interface ButtonNode extends PageNodeBase {
|
|
106
|
+
type: 'button';
|
|
107
|
+
label: string;
|
|
108
|
+
/** Action ID matched against the `actions` map passed to the renderer. */
|
|
109
|
+
action?: string;
|
|
110
|
+
/** When true, validates all named fields before calling the action. */
|
|
111
|
+
validates?: boolean;
|
|
112
|
+
icon?: string;
|
|
113
|
+
variant?: 'primary' | 'secondary' | 'ghost' | 'danger';
|
|
114
|
+
size?: 'xs' | 's' | 'm' | 'l';
|
|
115
|
+
}
|
|
116
|
+
export interface LinkNode extends PageNodeBase {
|
|
117
|
+
type: 'link';
|
|
118
|
+
label: string;
|
|
119
|
+
/** Action ID matched against the `actions` map passed to the renderer. */
|
|
120
|
+
action?: string;
|
|
121
|
+
}
|
|
122
|
+
export interface ImageNode extends PageNodeBase {
|
|
123
|
+
type: 'image';
|
|
124
|
+
/** Asset ID resolved by `assetResolver` at render time. Never a raw URL. */
|
|
125
|
+
assetId: string;
|
|
126
|
+
alt?: string;
|
|
127
|
+
}
|
|
128
|
+
export type ContainerNode = PageRootNode | StackNode | CardNode | SectionNode;
|
|
129
|
+
export type PageNode = PageRootNode | StackNode | CardNode | SectionNode | DividerNode | SpacerNode | HeadingNode | ParagraphNode | TextInputNode | CheckboxNode | SelectNode | ButtonNode | LinkNode | ImageNode;
|
|
130
|
+
export type ElementType = PageNode['type'];
|
|
131
|
+
export declare function isContainerNode(node: PageNode): node is ContainerNode;
|
|
132
|
+
/**
|
|
133
|
+
* Shared between `<CoarPageBuilder>` and `<CoarPageRenderer>`. The IDP / consumer
|
|
134
|
+
* passes the SAME config to both — the builder uses it to filter UI affordances
|
|
135
|
+
* (palette, add-child menu), the renderer uses it as the **security boundary**:
|
|
136
|
+
* disallowed nodes are never rendered, even if they appear in hand-written JSON.
|
|
137
|
+
*/
|
|
138
|
+
export interface PageConfig {
|
|
139
|
+
/**
|
|
140
|
+
* Element types permitted to appear in the tree. Omit to allow every type.
|
|
141
|
+
* `page` (the root marker) is always implicitly allowed regardless of this list.
|
|
142
|
+
*/
|
|
143
|
+
allowedElements?: ElementType[];
|
|
144
|
+
/**
|
|
145
|
+
* Action IDs that buttons and links may reference. When provided, the builder's
|
|
146
|
+
* Action-ID input becomes a dropdown of these choices instead of free text.
|
|
147
|
+
* Omit to allow any string (development / single-tenant scenarios).
|
|
148
|
+
*
|
|
149
|
+
* Note: the renderer's `actions` map is the actual security boundary — it only
|
|
150
|
+
* invokes handlers that exist there. `availableActions` is a UX affordance so
|
|
151
|
+
* tenants pick from labeled choices instead of memorising IDs.
|
|
152
|
+
*/
|
|
153
|
+
availableActions?: {
|
|
154
|
+
id: string;
|
|
155
|
+
label: string;
|
|
156
|
+
}[];
|
|
157
|
+
/**
|
|
158
|
+
* Resolves an `assetId` to a URL. Used by the builder for image thumbnails
|
|
159
|
+
* (in the canvas preview, props panel, and Preview-tab renderer) and by the
|
|
160
|
+
* runtime renderer for the final `<img src>` — same contract as the
|
|
161
|
+
* renderer's `:asset-resolver` prop.
|
|
162
|
+
*
|
|
163
|
+
* The IDP / consumer typically returns `${cdnBase}/${id}` or similar. When
|
|
164
|
+
* omitted, the builder shows placeholder thumbnails and the renderer falls
|
|
165
|
+
* back to its `:asset-resolver` prop only.
|
|
166
|
+
*/
|
|
167
|
+
assetResolver?: (id: string) => string;
|
|
168
|
+
/**
|
|
169
|
+
* Opens the consumer's own asset picker UI (modal, drawer — whatever you
|
|
170
|
+
* want) and resolves to the chosen `assetId`, or `null` if the user
|
|
171
|
+
* cancelled. The library does not ship a picker — the IDP owns the entire
|
|
172
|
+
* UX (browse, upload, search, delete, categorisation, …).
|
|
173
|
+
*
|
|
174
|
+
* When omitted, the image element falls back to a free-text Asset ID input.
|
|
175
|
+
*/
|
|
176
|
+
pickAsset?: (currentId?: string) => Promise<string | null>;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* True when this element type is permitted by the config (or no config given).
|
|
180
|
+
* The root `page` type is always allowed — it's a schema-shape marker, not a
|
|
181
|
+
* user-placeable element.
|
|
182
|
+
*/
|
|
183
|
+
export declare function isElementAllowed(type: ElementType, config?: PageConfig): boolean;
|
|
184
|
+
export {};
|
|
185
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@cocoar/vue-page-builder",
|
|
3
|
+
"version": "2.1.0",
|
|
4
|
+
"description": "Generic headless visual page builder and renderer for Vue 3 built on the Cocoar Design System",
|
|
5
|
+
"license": "Apache-2.0",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/cocoar-dev/cocoar-ui-vue.git",
|
|
9
|
+
"directory": "packages/page-builder"
|
|
10
|
+
},
|
|
11
|
+
"keywords": [
|
|
12
|
+
"vue",
|
|
13
|
+
"vue3",
|
|
14
|
+
"page-builder",
|
|
15
|
+
"low-code",
|
|
16
|
+
"visual-editor"
|
|
17
|
+
],
|
|
18
|
+
"type": "module",
|
|
19
|
+
"sideEffects": [
|
|
20
|
+
"*.css"
|
|
21
|
+
],
|
|
22
|
+
"main": "./dist/index.js",
|
|
23
|
+
"module": "./dist/index.js",
|
|
24
|
+
"types": "./dist/index.d.ts",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"import": "./dist/index.js",
|
|
28
|
+
"types": "./dist/index.d.ts"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"files": [
|
|
32
|
+
"dist"
|
|
33
|
+
],
|
|
34
|
+
"scripts": {
|
|
35
|
+
"build": "vite build",
|
|
36
|
+
"test": "vitest run --passWithNoTests",
|
|
37
|
+
"lint": "eslint src/"
|
|
38
|
+
},
|
|
39
|
+
"peerDependencies": {
|
|
40
|
+
"@cocoar/vue-ui": "2.1.0",
|
|
41
|
+
"vue": "^3.5.0"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@cocoar/vue-ui": "workspace:*",
|
|
45
|
+
"vue": "^3.5.32"
|
|
46
|
+
}
|
|
47
|
+
}
|