@versa-stack/v-craft 1.0.4 → 1.1.0-alpha.2
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/types/components/CraftEditor.vue.d.ts +4 -7
- package/dist/types/components/CraftEditorBlueprint.vue.d.ts +2 -1
- package/dist/types/components/CraftEditorBlueprintsList.vue.d.ts +2 -1
- package/dist/types/components/CraftEditorPanelForm.vue.d.ts +17 -16
- package/dist/types/components/CraftEditorPanelLayers.vue.d.ts +2 -1
- package/dist/types/components/CraftEditorPanelLayout.vue.d.ts +2 -1
- package/dist/types/components/CraftEditorPanelNodeDataSourceSettings.vue.d.ts +11 -0
- package/dist/types/components/CraftEditorPanelNodeEventsSettings.vue.d.ts +6 -7
- package/dist/types/components/CraftEditorPanelNodeLayer.vue.d.ts +2 -1
- package/dist/types/components/CraftEditorPanelNodeSettings.vue.d.ts +6 -7
- package/dist/types/components/CraftEditorPanelNodeSlotPropsSettings.vue.d.ts +50 -0
- package/dist/types/components/CraftEditorPanelSettings.vue.d.ts +10 -4
- package/dist/types/components/CraftFrame.vue.d.ts +4 -10
- package/dist/types/components/CraftIframe.vue.d.ts +1 -5
- package/dist/types/components/CraftNodeEditor.vue.d.ts +2 -0
- package/dist/types/components/CraftNodeStatic.vue.d.ts +11 -0
- package/dist/types/components/CraftNodeViewer.vue.d.ts +2 -0
- package/dist/types/components/CraftStaticRenderer.vue.d.ts +5 -3
- package/dist/types/components/composable/index.d.ts +3 -0
- package/dist/types/components/composable/useAncestorContextBuckets.d.ts +20 -0
- package/dist/types/components/composable/useCraftFrame.d.ts +157 -104
- package/dist/types/components/composable/useCraftNode.d.ts +3 -3
- package/dist/types/components/composable/useCraftNodeEvents.d.ts +1 -2
- package/dist/types/components/composable/useCraftNodeWrapper.d.ts +156 -104
- package/dist/types/components/composable/useDragCraftNode.d.ts +2 -1
- package/dist/types/components/composable/useNodeElement.d.ts +9 -0
- package/dist/types/components/composable/useResolveCraftNode.d.ts +6 -2
- package/dist/types/components/composable/useResolveCraftNodeProps.d.ts +10 -0
- package/dist/types/components/index.d.ts +4 -2
- package/dist/types/components/utils.d.ts +4 -1
- package/dist/types/lib/CraftNodeResolver.d.ts +15 -6
- package/dist/types/lib/craftNode.d.ts +16 -12
- package/dist/types/lib/dragCraftNode/dragOver.d.ts +2 -1
- package/dist/types/lib/dragCraftNode/drop.d.ts +3 -2
- package/dist/types/lib/dragCraftNode/index.d.ts +2 -2
- package/dist/types/lib/extractSchemaFieldNames.d.ts +11 -0
- package/dist/types/lib/model.d.ts +18 -3
- package/dist/types/lib/renderCraftNodes.d.ts +4 -3
- package/dist/types/lib/vNodeToCraftNode.d.ts +2 -1
- package/dist/types/store/editor.d.ts +157 -105
- package/dist/v-craft.css +1 -1
- package/dist/v-craft.es.js +3277 -2763
- package/dist/v-craft.es.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,9 +8,11 @@ import { default as CraftEditorPanelBlueprints } from './CraftEditorPanelBluepri
|
|
|
8
8
|
import { default as CraftEditorPanelForm } from './CraftEditorPanelForm.vue';
|
|
9
9
|
import { default as CraftEditorPanelLayers } from './CraftEditorPanelLayers.vue';
|
|
10
10
|
import { default as CraftEditorPanelLayout } from './CraftEditorPanelLayout.vue';
|
|
11
|
+
import { default as CraftEditorPanelNodeDataSourceSettings } from './CraftEditorPanelNodeDataSourceSettings.vue';
|
|
11
12
|
import { default as CraftEditorPanelNodeEventsSettings } from './CraftEditorPanelNodeEventsSettings.vue';
|
|
12
13
|
import { default as CraftEditorPanelNodeLayer } from './CraftEditorPanelNodeLayer.vue';
|
|
13
14
|
import { default as CraftEditorPanelNodeSettings } from './CraftEditorPanelNodeSettings.vue';
|
|
15
|
+
import { default as CraftEditorPanelNodeSlotPropsSettings } from './CraftEditorPanelNodeSlotPropsSettings.vue';
|
|
14
16
|
import { default as CraftEditorPanelSettings } from './CraftEditorPanelSettings.vue';
|
|
15
17
|
import { default as CraftFrame } from './CraftFrame.vue';
|
|
16
18
|
import { default as CraftNodeEditor } from './CraftNodeEditor.vue';
|
|
@@ -18,8 +20,8 @@ import { default as CraftNodeViewer } from './CraftNodeViewer.vue';
|
|
|
18
20
|
import { default as CraftIframe } from './CraftIframe.vue';
|
|
19
21
|
import { default as CraftStaticRenderer } from './CraftStaticRenderer.vue';
|
|
20
22
|
import * as Utils from "./utils";
|
|
21
|
-
export { CraftCanvas, CraftComponentSimpleText, CraftEditor, CraftEditorBlueprint, CraftEditorBlueprintsList, CraftEditorPanelBlueprints, CraftEditorPanelForm, CraftEditorPanelLayers, CraftEditorPanelLayout, CraftEditorPanelNodeEventsSettings, CraftEditorPanelNodeLayer, CraftEditorPanelNodeSettings, CraftEditorPanelSettings, CraftFrame, CraftIframe, CraftNodeEditor, CraftNodeViewer, CraftStaticRenderer, Utils, };
|
|
22
|
-
export type CraftDataListItem
|
|
23
|
+
export { CraftCanvas, CraftComponentSimpleText, CraftEditor, CraftEditorBlueprint, CraftEditorBlueprintsList, CraftEditorPanelBlueprints, CraftEditorPanelForm, CraftEditorPanelLayers, CraftEditorPanelLayout, CraftEditorPanelNodeDataSourceSettings, CraftEditorPanelNodeEventsSettings, CraftEditorPanelNodeLayer, CraftEditorPanelNodeSettings, CraftEditorPanelNodeSlotPropsSettings, CraftEditorPanelSettings, CraftFrame, CraftIframe, CraftNodeEditor, CraftNodeViewer, CraftStaticRenderer, Utils, };
|
|
24
|
+
export type CraftDataListItem = {
|
|
23
25
|
dataItem: any;
|
|
24
26
|
dataIndex: number;
|
|
25
27
|
childNode: CraftNode;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { CraftNode } from '../lib/craftNode';
|
|
2
2
|
import { default as CraftNodeResolver } from '../lib/CraftNodeResolver';
|
|
3
3
|
import { BlueprintGroup } from '../lib/model';
|
|
4
|
-
|
|
4
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
5
|
+
export declare const blueprintsWithDefaults: <T extends FormKitSchemaDefinition>(group: BlueprintGroup, resolver: CraftNodeResolver<T>) => {
|
|
5
6
|
props: any;
|
|
6
7
|
slots: Record<string, CraftNode[]> & Record<string, import('../lib/model').Blueprint[]>;
|
|
8
|
+
slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
|
|
7
9
|
componentName: string;
|
|
8
10
|
rules?: import('../lib/craftNode').CraftNodeRules | undefined;
|
|
9
11
|
visible?: boolean | undefined;
|
|
10
12
|
events?: Record<string, string> | undefined;
|
|
11
13
|
label?: string;
|
|
12
14
|
}[];
|
|
15
|
+
export declare const generateColorFromUUID: (uuid: string) => string;
|
|
@@ -1,23 +1,32 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
2
|
+
import { Component } from 'vue';
|
|
2
3
|
import { CraftNode, CraftNodeRules } from './craftNode';
|
|
3
|
-
export type CraftNodeComponentMap<T extends
|
|
4
|
+
export type CraftNodeComponentMap<T extends FormKitSchemaDefinition = FormKitSchemaDefinition> = {
|
|
4
5
|
componentName: string;
|
|
6
|
+
label?: string;
|
|
7
|
+
component?: Component | (() => Promise<Component>);
|
|
5
8
|
propsSchema?: T;
|
|
6
9
|
eventsSchema?: T;
|
|
7
10
|
defaultProps?: Record<string, any>;
|
|
8
11
|
rules?: CraftNodeRules;
|
|
9
12
|
slots?: string[];
|
|
13
|
+
slotsProps?: Record<string, string[]>;
|
|
10
14
|
};
|
|
11
|
-
export type CraftNodeResolverMap<T extends
|
|
12
|
-
export
|
|
15
|
+
export type CraftNodeResolverMap<T extends FormKitSchemaDefinition = FormKitSchemaDefinition> = Record<string, CraftNodeComponentMap<T>>;
|
|
16
|
+
export type ResolveComponentHook = (craftNode: CraftNode, defaultResolver: (name: string) => Component | undefined) => Component | undefined;
|
|
17
|
+
export declare class CraftNodeResolver<T extends FormKitSchemaDefinition = FormKitSchemaDefinition> {
|
|
13
18
|
resolverMap: CraftNodeResolverMap<T>;
|
|
19
|
+
private resolveComponentHook?;
|
|
14
20
|
constructor(resolverMap?: Record<string, CraftNodeComponentMap<T>>);
|
|
15
21
|
setResolverMap(resolverMap: Record<string, CraftNodeComponentMap<T>>): void;
|
|
22
|
+
onResolveComponent(hook: ResolveComponentHook): void;
|
|
16
23
|
resolve(name: string): CraftNodeComponentMap<T>;
|
|
24
|
+
resolveComponent(craftNode: CraftNode): Component | undefined;
|
|
17
25
|
getDefaultProps(craftNode: CraftNode): Record<string, any>;
|
|
18
26
|
resolveNode(craftNode: CraftNode): CraftNodeComponentMap<T>;
|
|
19
|
-
getSchema(craftNode: CraftNode):
|
|
20
|
-
getEventsSchema(craftNode: CraftNode):
|
|
27
|
+
getSchema(craftNode: CraftNode): T;
|
|
28
|
+
getEventsSchema(craftNode: CraftNode): T;
|
|
21
29
|
getRules(craftNode: CraftNode): CraftNodeRules;
|
|
30
|
+
getSlotsProps(craftNode: CraftNode): Record<string, string[]>;
|
|
22
31
|
}
|
|
23
32
|
export default CraftNodeResolver;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
1
2
|
import { default as CraftNodeResolver } from './CraftNodeResolver';
|
|
2
3
|
export type CraftNodeRules = {
|
|
3
|
-
canMoveIn?: <T extends
|
|
4
|
-
canMoveOut?: <T extends
|
|
5
|
-
canDrag?:
|
|
6
|
-
canMoveInto?: <T extends
|
|
4
|
+
canMoveIn?: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(craftNode: CraftNode, targetNode: CraftNode, resolver: CraftNodeResolver<T>) => boolean;
|
|
5
|
+
canMoveOut?: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(craftNode: CraftNode, targetNode: CraftNode, resolver: CraftNodeResolver<T>) => boolean;
|
|
6
|
+
canDrag?: (craftNode: CraftNode) => boolean;
|
|
7
|
+
canMoveInto?: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(craftNode: CraftNode, targetNode: CraftNode, resolver: CraftNodeResolver<T>) => boolean;
|
|
7
8
|
};
|
|
8
9
|
export type CraftNode = {
|
|
9
10
|
slots: Record<string, CraftNode[]>;
|
|
11
|
+
slotsPropsPropsMap?: Record<string, Record<string, string>>;
|
|
10
12
|
componentName: string;
|
|
11
13
|
parentUuid?: string | null;
|
|
12
14
|
props: any;
|
|
@@ -14,6 +16,7 @@ export type CraftNode = {
|
|
|
14
16
|
uuid: string;
|
|
15
17
|
visible?: boolean;
|
|
16
18
|
events?: Record<string, string>;
|
|
19
|
+
label?: string;
|
|
17
20
|
};
|
|
18
21
|
export type CraftNodeDatasource = {
|
|
19
22
|
item?: Record<string, any>;
|
|
@@ -22,11 +25,12 @@ export type CraftNodeDatasource = {
|
|
|
22
25
|
slotName?: string;
|
|
23
26
|
};
|
|
24
27
|
export declare const isVisible: (craftNode: CraftNode) => boolean;
|
|
25
|
-
export declare const craftNodeInCanvas:
|
|
26
|
-
export declare const craftNodeIsDraggable:
|
|
27
|
-
export declare const craftNodeIsAncestorOf:
|
|
28
|
-
export declare const resolveNodeName:
|
|
29
|
-
export declare const craftNodeCanBeChildOf: <T extends
|
|
30
|
-
export declare const craftNodeIsCanvas:
|
|
31
|
-
export declare const craftNodeCanBeSiblingOf: <T extends
|
|
32
|
-
export declare const buildCraftNodeTree:
|
|
28
|
+
export declare const craftNodeInCanvas: (craftNode: CraftNode) => boolean;
|
|
29
|
+
export declare const craftNodeIsDraggable: (craftNode: CraftNode) => boolean;
|
|
30
|
+
export declare const craftNodeIsAncestorOf: (craftNode: CraftNode, descendant: CraftNode) => boolean;
|
|
31
|
+
export declare const resolveNodeName: (craftNode: CraftNode) => any;
|
|
32
|
+
export declare const craftNodeCanBeChildOf: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(craftNode: CraftNode, targetNode: CraftNode, resolver: CraftNodeResolver<T>) => boolean | undefined;
|
|
33
|
+
export declare const craftNodeIsCanvas: (craftNode: CraftNode) => boolean;
|
|
34
|
+
export declare const craftNodeCanBeSiblingOf: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(craftNode: CraftNode, targetNode: CraftNode, resolver: CraftNodeResolver<T>) => boolean | undefined;
|
|
35
|
+
export declare const buildCraftNodeTree: (craftNode: CraftNode) => CraftNode;
|
|
36
|
+
export declare const initializeSlotsFromResolver: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(node: CraftNode, resolver: CraftNodeResolver<T>) => CraftNode;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { DragCraftNodeContext } from './drop';
|
|
2
|
-
|
|
2
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
3
|
+
declare const _default: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(e: MouseEvent, el: HTMLElement, context: DragCraftNodeContext<T>) => void;
|
|
3
4
|
export default _default;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
1
2
|
import { Ref } from 'vue';
|
|
2
3
|
import { EditorStoreInstanceType } from '../../store/editor';
|
|
3
4
|
import { IndicatorStoreType } from '../../store/indicator';
|
|
4
5
|
import { CraftNode } from '../craftNode';
|
|
5
6
|
import { default as CraftNodeResolver } from '../CraftNodeResolver';
|
|
6
|
-
export type DragCraftNodeContext<T extends
|
|
7
|
+
export type DragCraftNodeContext<T extends FormKitSchemaDefinition = FormKitSchemaDefinition> = {
|
|
7
8
|
editor: EditorStoreInstanceType;
|
|
8
9
|
indicator: IndicatorStoreType;
|
|
9
10
|
craftNode: Ref<CraftNode>;
|
|
10
11
|
resolver: CraftNodeResolver<T>;
|
|
11
12
|
};
|
|
12
|
-
declare const _default: <T extends
|
|
13
|
+
declare const _default: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(e: MouseEvent, el: HTMLElement, context: DragCraftNodeContext<T>) => CraftNode;
|
|
13
14
|
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
declare const _default: {
|
|
2
|
-
handleDragOver: <T extends
|
|
3
|
-
handleDrop: <T extends
|
|
2
|
+
handleDragOver: <T extends import('@formkit/core').FormKitSchemaDefinition = import('@formkit/core').FormKitSchemaDefinition>(e: MouseEvent, el: HTMLElement, context: import('./drop').DragCraftNodeContext<T>) => void;
|
|
3
|
+
handleDrop: <T extends import('@formkit/core').FormKitSchemaDefinition = import('@formkit/core').FormKitSchemaDefinition>(e: MouseEvent, el: HTMLElement, context: import('./drop').DragCraftNodeContext<T>) => import('../craftNode').CraftNode;
|
|
4
4
|
};
|
|
5
5
|
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
2
|
+
export type SchemaFieldOption = {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Reads the flat `propsSchema`/`eventsSchema` array shape used throughout
|
|
8
|
+
* this project's resolvers (each entry a FormKit node carrying `name` and
|
|
9
|
+
* an optional `label`) and turns it into options for a target-prop picker.
|
|
10
|
+
*/
|
|
11
|
+
export declare const extractSchemaFieldNames: (schema: FormKitSchemaDefinition | undefined | null) => SchemaFieldOption[];
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HTMLAttributes, StyleValue } from 'vue';
|
|
2
|
+
import { CraftNodeResolver, CraftNodeResolverMap } from './CraftNodeResolver';
|
|
2
3
|
import { CraftNode } from './craftNode';
|
|
4
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
3
5
|
export type CraftBlueprintData = {
|
|
4
6
|
label: string;
|
|
5
7
|
component: string;
|
|
@@ -24,9 +26,10 @@ export type Blueprint = Omit<CraftNode, "parentUuid" | "uuid"> & {
|
|
|
24
26
|
label?: string;
|
|
25
27
|
slots: Record<string, Blueprint[]>;
|
|
26
28
|
};
|
|
27
|
-
export type CraftEditorConfig<T extends
|
|
29
|
+
export type CraftEditorConfig<T extends FormKitSchemaDefinition = FormKitSchemaDefinition> = {
|
|
28
30
|
blueprintsLibrary: BlueprintsLibrary;
|
|
29
|
-
resolverMap
|
|
31
|
+
resolverMap?: CraftNodeResolverMap<T>;
|
|
32
|
+
resolver?: CraftNodeResolver<T>;
|
|
30
33
|
};
|
|
31
34
|
export type CraftDataPatch<V = any, D = any> = {
|
|
32
35
|
defaultValue?: D;
|
|
@@ -41,3 +44,15 @@ export type CraftDataWrapperPropMap<V = any, D = any> = {
|
|
|
41
44
|
patches: CraftDataPatch<V, D>[];
|
|
42
45
|
type: "single" | "list";
|
|
43
46
|
};
|
|
47
|
+
export type CraftNodeIFrameProps = {
|
|
48
|
+
iframeClass?: HTMLAttributes["class"];
|
|
49
|
+
iframeStyle?: StyleValue;
|
|
50
|
+
inheritStyles?: boolean;
|
|
51
|
+
styleSheets?: string[];
|
|
52
|
+
styles?: string[];
|
|
53
|
+
iframeId?: string;
|
|
54
|
+
};
|
|
55
|
+
export type CraftFrameIFrameProps = CraftNodeIFrameProps & {
|
|
56
|
+
wrapperClass?: HTMLAttributes["class"];
|
|
57
|
+
wrapperStyle?: StyleValue;
|
|
58
|
+
};
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
1
2
|
import { VNode } from 'vue';
|
|
2
3
|
import { CraftNode, CraftNodeDatasource } from './craftNode';
|
|
3
4
|
import { default as CraftNodeResolver, CraftNodeResolverMap } from './CraftNodeResolver';
|
|
4
|
-
export interface RenderOptions<T extends
|
|
5
|
+
export interface RenderOptions<T extends FormKitSchemaDefinition = FormKitSchemaDefinition> {
|
|
5
6
|
resolverMap: CraftNodeResolverMap<T>;
|
|
6
7
|
componentRegistry?: Record<string, any>;
|
|
7
8
|
nodeDataMap?: Record<string, CraftNodeDatasource | null>;
|
|
8
9
|
eventsContext?: Record<string, any>;
|
|
9
10
|
}
|
|
10
|
-
export declare function renderCraftNodeToVNode<T extends
|
|
11
|
-
export declare function renderCraftNodesToVNodes<T extends
|
|
11
|
+
export declare function renderCraftNodeToVNode<T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(node: CraftNode, resolver: CraftNodeResolver<T>, componentRegistry?: Record<string, any>, nodeDataMap?: Record<string, CraftNodeDatasource | null>, eventsContext?: Record<string, any>): VNode | null;
|
|
12
|
+
export declare function renderCraftNodesToVNodes<T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(nodes: CraftNode[], options: RenderOptions<T>): VNode[];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CraftNode } from './craftNode';
|
|
2
2
|
import { default as CraftNodeResolver } from './CraftNodeResolver';
|
|
3
|
-
|
|
3
|
+
import { FormKitSchemaDefinition } from '@formkit/core';
|
|
4
|
+
declare const createNodeFromVNode: <T extends FormKitSchemaDefinition = FormKitSchemaDefinition>(resolver: CraftNodeResolver<T>, vNode: any, parentNode?: CraftNode | null) => CraftNode;
|
|
4
5
|
export default createNodeFromVNode;
|