@cocoar/vue-page-builder 2.5.1 → 2.6.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/PageNode.vue.d.ts +4 -3
- package/dist/PageNode.vue.d.ts.map +1 -1
- package/dist/builder/props/StyleProps.vue.d.ts.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +530 -448
- package/dist/schema.d.ts +24 -5
- package/dist/schema.d.ts.map +1 -1
- package/dist/styleMapping.d.ts +34 -0
- package/dist/styleMapping.d.ts.map +1 -0
- package/package.json +2 -2
- package/dist/builder/BuilderCanvasNode.vue.d.ts +0 -9
- package/dist/builder/BuilderCanvasNode.vue.d.ts.map +0 -1
package/dist/schema.d.ts
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
export interface NodeStyle {
|
|
2
|
-
/** CSS gap
|
|
2
|
+
/** CSS gap between children, e.g. '8px', '1rem'. Applied to inner layout. */
|
|
3
3
|
gap?: string;
|
|
4
|
-
/** CSS padding
|
|
4
|
+
/** CSS padding inside this node. */
|
|
5
5
|
padding?: string;
|
|
6
|
-
/**
|
|
7
|
-
|
|
8
|
-
/**
|
|
6
|
+
/** justify-content — distribution of children along the main axis. */
|
|
7
|
+
justify?: 'start' | 'center' | 'end' | 'space-between' | 'space-around' | 'space-evenly';
|
|
8
|
+
/** align-items — alignment of children along the cross axis. */
|
|
9
9
|
align?: 'start' | 'center' | 'end' | 'stretch';
|
|
10
|
+
/** align-self — overrides the parent's `align` for just this node. */
|
|
11
|
+
alignSelf?: 'start' | 'center' | 'end' | 'stretch';
|
|
12
|
+
/**
|
|
13
|
+
* Sizing along the parent's main axis:
|
|
14
|
+
* - `fit` — natural content size (no grow / no shrink)
|
|
15
|
+
* - `fill` — grow to fill the available space
|
|
16
|
+
* - `fixed` — exact `width`
|
|
17
|
+
*/
|
|
18
|
+
size?: 'fit' | 'fill' | 'fixed';
|
|
19
|
+
/** CSS width. Applied when `size` is `fixed` (or when set without a `size`). */
|
|
20
|
+
width?: string;
|
|
21
|
+
/**
|
|
22
|
+
* CSS min-height of this node's box, e.g. '100vh', '400px'. On the `page`
|
|
23
|
+
* root this makes the page fill the viewport so `justify` (vertical) +
|
|
24
|
+
* `align` (horizontal) can center content — e.g. a login card centered on a
|
|
25
|
+
* full-screen page. The host element provides the width; min-height lets the
|
|
26
|
+
* page own its vertical extent without depending on host CSS.
|
|
27
|
+
*/
|
|
28
|
+
minHeight?: string;
|
|
10
29
|
}
|
|
11
30
|
interface PageNodeBase {
|
|
12
31
|
/** Stable UUID assigned by the builder. */
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { CSSProperties } from 'vue';
|
|
2
|
+
import { NodeStyle } from './schema';
|
|
3
|
+
/** Flex direction of the parent container — drives how `size: 'fill'` maps. */
|
|
4
|
+
export type FlexDirection = 'row' | 'column';
|
|
5
|
+
/**
|
|
6
|
+
* How a node sits inside its parent's flex layout: cross-axis self-alignment
|
|
7
|
+
* (`align-self`) and main-axis sizing (the simple `size` + `width` model).
|
|
8
|
+
*
|
|
9
|
+
* `size` is direction-aware so "Fill" always does the intuitive thing:
|
|
10
|
+
* - row parent → grow along the row (`flex: 1 1 0%`)
|
|
11
|
+
* - column parent → full width at natural height (`width: 100%`). Using
|
|
12
|
+
* flex-grow in a column would set a 0 main-axis (height) basis and squash
|
|
13
|
+
* the element — the exact bug a fill button hit in a login card.
|
|
14
|
+
*
|
|
15
|
+
* Deliberately excludes padding — that's an inner-box concern, applied
|
|
16
|
+
* separately by {@link selfStyle}. The builder canvas reuses just this part
|
|
17
|
+
* (its chrome wrapper has its own padding), so Preview and Editor stay in sync.
|
|
18
|
+
*/
|
|
19
|
+
export declare function selfLayoutStyle(style?: NodeStyle, parentDirection?: FlexDirection): CSSProperties;
|
|
20
|
+
/**
|
|
21
|
+
* Full style for a node's own outer element — {@link selfLayoutStyle} plus
|
|
22
|
+
* padding. Used by the real renderer where the node element *is* the box.
|
|
23
|
+
*
|
|
24
|
+
* Kept as a pure function (no Vue reactivity) so the style → CSS contract can be
|
|
25
|
+
* unit-tested without mounting a component.
|
|
26
|
+
*/
|
|
27
|
+
export declare function selfStyle(style?: NodeStyle, parentDirection?: FlexDirection): CSSProperties;
|
|
28
|
+
/**
|
|
29
|
+
* Style for a container's inner layout element — how it arranges its children.
|
|
30
|
+
* Covers gap, justify-content (main-axis distribution) and align-items
|
|
31
|
+
* (cross-axis alignment).
|
|
32
|
+
*/
|
|
33
|
+
export declare function containerLayoutStyle(style?: NodeStyle): CSSProperties;
|
|
34
|
+
//# sourceMappingURL=styleMapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styleMapping.d.ts","sourceRoot":"","sources":["../src/styleMapping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,+EAA+E;AAC/E,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE7C;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAC7B,KAAK,CAAC,EAAE,SAAS,EACjB,eAAe,GAAE,aAAwB,GACxC,aAAa,CAuBf;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,GAAE,aAAwB,GAAG,aAAa,CAIrG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,aAAa,CAOrE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cocoar/vue-page-builder",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.6.0",
|
|
4
4
|
"description": "Generic headless visual page builder and renderer for Vue 3 built on the Cocoar Design System",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"lint": "eslint src/"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"@cocoar/vue-ui": "2.
|
|
40
|
+
"@cocoar/vue-ui": "2.6.0",
|
|
41
41
|
"vue": "^3.5.0"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { PageNode } from '../schema';
|
|
2
|
-
import { NodePath } from './operations';
|
|
3
|
-
interface Props {
|
|
4
|
-
node: PageNode;
|
|
5
|
-
path: NodePath;
|
|
6
|
-
}
|
|
7
|
-
declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
8
|
-
export default _default;
|
|
9
|
-
//# sourceMappingURL=BuilderCanvasNode.vue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BuilderCanvasNode.vue.d.ts","sourceRoot":"","sources":["../../src/builder/BuilderCanvasNode.vue"],"names":[],"mappings":"AA+pBA,OAAO,EAAmB,KAAK,QAAQ,EAAoB,MAAM,WAAW,CAAC;AAG7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAI7C,UAAU,KAAK;IACb,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;CAChB;;AA2mBD,wBAOG"}
|