@versa-stack/v-craft 1.1.0-alpha.3 → 1.1.0-alpha.4

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.
@@ -22,7 +22,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
22
22
  hasNodes: (state: {
23
23
  nodeMap: Map<string, {
24
24
  slots: Record<string, CraftNode[]>;
25
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
25
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
26
26
  componentName: string;
27
27
  parentUuid?: string | null | undefined;
28
28
  props: any;
@@ -41,7 +41,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
41
41
  selectedUuid: string | null;
42
42
  draggedNode: {
43
43
  slots: Record<string, CraftNode[]>;
44
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
44
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
45
45
  componentName: string;
46
46
  parentUuid?: string | null | undefined;
47
47
  props: any;
@@ -62,6 +62,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
62
62
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
63
63
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
64
64
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
65
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
66
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
65
67
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
66
68
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
67
69
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -80,7 +82,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
80
82
  selectedNode: (state: {
81
83
  nodeMap: Map<string, {
82
84
  slots: Record<string, CraftNode[]>;
83
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
85
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
84
86
  componentName: string;
85
87
  parentUuid?: string | null | undefined;
86
88
  props: any;
@@ -99,7 +101,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
99
101
  selectedUuid: string | null;
100
102
  draggedNode: {
101
103
  slots: Record<string, CraftNode[]>;
102
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
104
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
103
105
  componentName: string;
104
106
  parentUuid?: string | null | undefined;
105
107
  props: any;
@@ -120,6 +122,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
120
122
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
121
123
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
122
124
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
125
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
126
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
123
127
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
124
128
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
125
129
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -138,7 +142,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
138
142
  selectedRef: (state: {
139
143
  nodeMap: Map<string, {
140
144
  slots: Record<string, CraftNode[]>;
141
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
145
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
142
146
  componentName: string;
143
147
  parentUuid?: string | null | undefined;
144
148
  props: any;
@@ -157,7 +161,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
157
161
  selectedUuid: string | null;
158
162
  draggedNode: {
159
163
  slots: Record<string, CraftNode[]>;
160
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
164
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
161
165
  componentName: string;
162
166
  parentUuid?: string | null | undefined;
163
167
  props: any;
@@ -178,6 +182,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
178
182
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
179
183
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
180
184
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
185
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
186
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
181
187
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
182
188
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
183
189
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -196,7 +202,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
196
202
  getRef: (state: {
197
203
  nodeMap: Map<string, {
198
204
  slots: Record<string, CraftNode[]>;
199
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
205
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
200
206
  componentName: string;
201
207
  parentUuid?: string | null | undefined;
202
208
  props: any;
@@ -215,7 +221,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
215
221
  selectedUuid: string | null;
216
222
  draggedNode: {
217
223
  slots: Record<string, CraftNode[]>;
218
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
224
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
219
225
  componentName: string;
220
226
  parentUuid?: string | null | undefined;
221
227
  props: any;
@@ -236,6 +242,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
236
242
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
237
243
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
238
244
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
245
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
246
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
239
247
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
240
248
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
241
249
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -254,7 +262,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
254
262
  allNodes: (state: {
255
263
  nodeMap: Map<string, {
256
264
  slots: Record<string, CraftNode[]>;
257
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
265
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
258
266
  componentName: string;
259
267
  parentUuid?: string | null | undefined;
260
268
  props: any;
@@ -273,7 +281,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
273
281
  selectedUuid: string | null;
274
282
  draggedNode: {
275
283
  slots: Record<string, CraftNode[]>;
276
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
284
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
277
285
  componentName: string;
278
286
  parentUuid?: string | null | undefined;
279
287
  props: any;
@@ -294,6 +302,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
294
302
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
295
303
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
296
304
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
305
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
306
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
297
307
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
298
308
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
299
309
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -312,7 +322,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
312
322
  getDraggedNode: (state: {
313
323
  nodeMap: Map<string, {
314
324
  slots: Record<string, CraftNode[]>;
315
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
325
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
316
326
  componentName: string;
317
327
  parentUuid?: string | null | undefined;
318
328
  props: any;
@@ -331,7 +341,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
331
341
  selectedUuid: string | null;
332
342
  draggedNode: {
333
343
  slots: Record<string, CraftNode[]>;
334
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
344
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
335
345
  componentName: string;
336
346
  parentUuid?: string | null | undefined;
337
347
  props: any;
@@ -352,6 +362,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
352
362
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
353
363
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
354
364
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
365
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
366
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
355
367
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
356
368
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
357
369
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -368,7 +380,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
368
380
  pageState: Record<string, any>;
369
381
  } & import('pinia').PiniaCustomStateProperties<EditorState>) => {
370
382
  slots: Record<string, CraftNode[]>;
371
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
383
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
372
384
  componentName: string;
373
385
  parentUuid?: string | null | undefined;
374
386
  props: any;
@@ -386,7 +398,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
386
398
  nodeTree: (state: {
387
399
  nodeMap: Map<string, {
388
400
  slots: Record<string, CraftNode[]>;
389
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
401
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
390
402
  componentName: string;
391
403
  parentUuid?: string | null | undefined;
392
404
  props: any;
@@ -405,7 +417,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
405
417
  selectedUuid: string | null;
406
418
  draggedNode: {
407
419
  slots: Record<string, CraftNode[]>;
408
- slotsPropsPropsMap?: Record<string, Record<string, string>> | undefined;
420
+ slotsPropsPropsMap?: Record<string, Record<string, unknown>> | undefined;
409
421
  componentName: string;
410
422
  parentUuid?: string | null | undefined;
411
423
  props: any;
@@ -426,6 +438,8 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
426
438
  resolverMap: import('../lib/CraftNodeResolver').CraftNodeResolverMap<FormKitSchemaDefinition>;
427
439
  setResolverMap: (resolverMap: Record<string, import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>>) => void;
428
440
  onResolveComponent: (hook: import('../lib/CraftNodeResolver').ResolveComponentHook) => void;
441
+ onResolvePropertyValue: (hook: import('../lib/CraftNodeResolver').ResolvePropertyValueHook) => void;
442
+ resolvePropertyValue: (mapping: unknown, contextData: any) => unknown;
429
443
  resolve: (name: string) => import('../lib/CraftNodeResolver').CraftNodeComponentMap<FormKitSchemaDefinition>;
430
444
  resolveComponent: (craftNode: CraftNode) => import('vue').Component | undefined;
431
445
  getDefaultProps: (craftNode: CraftNode) => Record<string, any>;
@@ -453,7 +467,7 @@ export declare const useEditor: import('pinia').StoreDefinition<"editor", Editor
453
467
  setNodeData(uuid: string, data: CraftNodeDatasource | null): void;
454
468
  updateNodeProps(nodeUuid: string, newProps: Record<string, any>): void;
455
469
  updateNodeEvents(nodeUuid: string, newEvents: Record<string, string>): void;
456
- updateNodeSlotsPropsPropsMap(nodeUuid: string, slotsPropsPropsMap: Record<string, Record<string, string>>): void;
470
+ updateNodeSlotsPropsPropsMap(nodeUuid: string, slotsPropsPropsMap: Record<string, Record<string, unknown>>): void;
457
471
  setNodes(nodes: CraftNode[]): void;
458
472
  addNodeRecursively(node: CraftNode, parentUuid?: string | null): void;
459
473
  selectNode(craftNode: CraftNode | null): void;
package/dist/v-craft.css CHANGED
@@ -1 +1 @@
1
- .pre-wrap{white-space:pre-wrap}.editable-text.is-editable:hover{background-color:#0000000d;cursor:pointer}.editable-text.is-editing{display:inline-block;width:100%}.editable-text__textarea{font:inherit;border:none;background:none;outline:none;width:100%;resize:none;overflow:hidden;min-height:1em;line-height:inherit;padding:.12em;margin:0}.editable-text__textarea:focus{border:none}.v-craft-blueprints-panel[data-v-a6de4dca]{min-width:15em;max-width:15em;width:15em}.v-craft-blueprints-panel[data-v-a6de4dca] .v-craft-blueprint{text-align:center;padding:.25em;position:relative;border:1px solid var(--v-craft-gray-medium);border-radius:3px;display:flex;align-items:center;cursor:pointer;background-color:var(--v-craft-background-color-lighter-10)}.v-craft-blueprints-panel[data-v-a6de4dca] .v-craft-blueprint-label{font-size:.8em;text-transform:uppercase;font-weight:700;color:var(--v-craft-gray-darker)}.v-craft-blueprints-panel h4[data-v-a6de4dca]{font-size:.8em;text-transform:uppercase;font-weight:700;color:var(--v-craft-gray-medium);margin-bottom:.75em;margin-top:2em}.v-craft-panel.v-craft-layers-panel[data-v-ab795ec3]{padding:10px;display:flex;flex-direction:column;height:auto;position:relative;width:23rem}.v-craft-layers[data-v-ab795ec3]{overflow-y:auto}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar{width:8px}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar-track{background:var(--v-craft-scrollbar-track)}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar-thumb{background:var(--v-craft-scrollbar-thumb);border-radius:4px}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar-thumb:hover{background:var(--v-craft-scrollbar-thumb-hover)}.v-craft-layers[data-v-ab795ec3]{max-height:300px;overflow-y:auto;margin-top:10px}ul.v-craft-node-layers[data-v-ab795ec3]{margin:0;padding:0;list-style-type:none}.v-craft-panel-manager .v-craft-panel[data-v-7dd1d43b]{padding:.75em;margin-bottom:1.25em;box-shadow:0 2px 2px #00000009,0 4px 4px #0000000c,0 6px 6px #0000000f,0 8px 8px #00000012,0 10px 10px #00000016,0 15px 15px #0000001f;border-radius:3px}.v-craft-panel-manager[data-v-7dd1d43b] .v-craft-panel .v-craft-title{margin:0;padding:.125em;border-bottom:1px solid var(--v-craft-gray-medium)}.v-craft-data-source-error[data-v-7c1c5696]{color:var(--v-craft-red, #e5484d)}.v-craft-node-layer[data-v-208a4e02]{padding:5px 0;border-bottom:1px solid var(--v-craft-gray-dark);list-style-type:none}.v-craft-node-layer.v-craft-node-layer-selected>.v-craft-component-layer-face[data-v-208a4e02]{background-color:var(--v-craft-blue-lighter-5)}.v-craft-node-layer.v-craft-node-layer-selected>.v-craft-component-layer-face[data-v-208a4e02]:hover{background-color:var(--v-craft-blue-lighter-15)}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-layer-face{display:flex;align-items:center;padding:2px 5px;background-color:var(--v-craft-gray-medium);border-radius:3px;transition:background-color .2s ease;position:relative}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-layer-face:before{position:absolute;background-color:var(--v-craft-gray-medium);width:.5em;height:1px;top:50%;left:-.5em;content:" "}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-layer-face:hover{background-color:var(--v-craft-gray-medium-lighter-15)}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-name{flex-grow:1;font-size:12px;cursor:pointer}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-icon{font-size:12px;cursor:pointer;margin-left:5px;transition:color .2s ease}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-icon:hover{color:var(--v-craft-blue)}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-icon{border:none;padding:.12em}.v-craft-node-layer[data-v-208a4e02] .nested-layers{margin-left:15px;border-left:1px solid var(--v-craft-gray-medium);padding-left:5px}.v-craft-slot-props-map-group[data-v-f762baf8]{border:1px solid var(--v-craft-gray-medium, #ccc);border-radius:4px;padding:.75em;margin-bottom:1em}.v-craft-slot-props-remove[data-v-f762baf8],.v-craft-slot-props-add[data-v-f762baf8]{width:100%;margin-top:.25em}:root{--v-craft-indicator-bg-allowed: var(--v-craft-green);--v-craft-indicator-bg-forbidden: var(--v-craft-red);--v-craft-indicator-transition-duration: .125s;--v-craft-indicator-z-index: 10000}.v-craft-indicator{position:fixed;background-color:var(--v-craft-indicator-bg-allowed);transition:top var(--v-craft-indicator-transition-duration) ease,left var(--v-craft-indicator-transition-duration) ease,right var(--v-craft-indicator-transition-duration) ease,bottom var(--v-craft-indicator-transition-duration) ease,width var(--v-craft-indicator-transition-duration) ease,height var(--v-craft-indicator-transition-duration) ease,background-color var(--v-craft-indicator-transition-duration) ease-in-out;z-index:var(--v-craft-indicator-z-index)}.v-craft-indicator:after{content:" "}.v-craft-indicator.v-craft-forbidden{background-color:var(--v-craft-indicator-bg-forbidden)}.v-craft-node{position:relative;transition:all var(--v-craft-transition-duration) ease;cursor:pointer;box-sizing:border-box}.v-craft-node:after{content:"";position:absolute;top:calc(-1 * var(--v-craft-node-editor-border-padding));left:calc(-1 * var(--v-craft-node-editor-border-padding));right:calc(-1 * var(--v-craft-node-editor-border-padding));bottom:calc(-1 * var(--v-craft-node-editor-border-padding));border:1px solid transparent;border-radius:4px;transition:border-color var(--v-craft-transition-duration) ease-in-out,box-shadow var(--v-craft-transition-duration) ease-in-out;pointer-events:none;z-index:10}.v-craft-node:before{content:"";align-items:center;background-color:var(--node-color, var(--v-craft-blue));bottom:calc(-20px - var(--v-craft-node-editor-border-padding));color:var(--v-craft-white);display:flex;font-family:Arial,sans-serif;font-size:12px;font-weight:400;height:20px;left:calc(-1 * var(--v-craft-node-editor-border-padding) + 3px);line-height:1.4em;opacity:0;padding:0 5px!important;pointer-events:none;position:absolute;text-align:center;text-transform:none;transition:opacity var(--v-craft-transition-duration) ease-in-out;z-index:100}.v-craft-node.v-craft-canvas.v-craft-other-node-dragged:before{opacity:.5}.v-craft-node:hover:not(:has(.v-craft-node:hover)):not(.v-craft-node-selected):before{opacity:1}.v-craft-node-selected:before{opacity:1}.v-craft-node:hover:not(:has(.v-craft-node:hover)):after{border-color:var(--node-color, var(--v-craft-blue-lighter-20));box-shadow:0 0 0 1px var(--node-color, var(--v-craft-blue))}.dark .v-craft-node:hover:not(:has(.v-craft-node:hover)):after{border-color:var(--node-color, var(--v-craft-blue-darker-25));box-shadow:0 0 0 1px var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-canvas:hover:not(:has(.v-craft-node:hover)):not(.v-craft-node-selected):after{box-shadow:0 0 .5em .1em rgba(var(--node-color),.2)}.v-craft-node-selected:not(:hover):after{border:1px solid var(--node-color, var(--v-craft-blue));box-shadow:0 0 .5em .1em rgba(var(--node-color),.2)}.v-craft-node-selected:after{border:1px solid var(--node-color, var(--v-craft-blue));box-shadow:0 0 0 1px var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-canvas.v-craft-other-node-dragged:after{border:2px dashed var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-canvas .v-craft-drop-text{border:2px dashed var(--v-craft-gray-medium);color:var(--v-craft-text-color);padding:1.25em;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;min-height:60px;box-sizing:border-box;pointer-events:auto;position:relative;margin:4px 0}.v-craft-node.v-craft-canvas .v-craft-slot-name{position:absolute;bottom:4px;left:8px;font-weight:400;font-size:.75em;color:var(--v-craft-gray-medium);text-transform:uppercase;letter-spacing:.05em}.v-craft-node.v-craft-canvas .v-craft-drop-text-label{font-size:.85em;color:var(--v-craft-gray-medium)}.v-craft-node.v-craft-canvas.v-craft-other-node-dragged{padding:10px!important;margin-bottom:25px!important}.v-craft-node-selected{z-index:1}.v-craft-node.v-craft-drag-over{box-shadow:0 0 0 2px var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-dragging{opacity:.7}.v-craft-node:before{content:attr(data-node-name)}:root{--v-craft-blue: #1473e6;--v-craft-red: #ff3366;--v-craft-green: rgb(15, 177, 88);--v-craft-gray-dark: #f8f8f8;--v-craft-gray-medium: rgb(202.5, 202.5, 202.5);--v-craft-gray-light: rgb(167.5, 167.5, 167.5);--v-craft-gray-darkest: hsl(0, 0%, 101.7647058824%);--v-craft-white: #ffffff;--v-craft-background-color: hsl(0, 0%, 106.7647058824%);--v-craft-background-color-lighter-10: #ffffff;--v-craft-background-color-darker-10: hsl(0, 0%, 101.7647058824%);--v-craft-input-background: hsl(0, 0%, 109.7647058824%);--v-craft-input-border: #eaeaea;--v-craft-text-color: rgb(55.5, 55.5, 55.5);--v-craft-text-color-blue: #e0e0e0;--v-craft-error-color: #ff3366;--v-craft-blue-darker-25: rgb(9.8, 56.35, 112.7);--v-craft-blue-darker-30: rgb(7.76, 44.62, 89.24);--v-craft-blue-lighter-5: rgb(39.26, 128.37, 236.24);--v-craft-blue-lighter-10: rgb(62.72, 142.14, 238.28);--v-craft-blue-lighter-15: rgb(86.18, 155.91, 240.32);--v-craft-blue-lighter-20: rgb(109.64, 169.68, 242.36);--v-craft-blue-transparent-70: rgba(20, 115, 230, .7);--v-craft-blue-transparent-20: rgba(20, 115, 230, .2);--v-craft-gray-dark-darker-10: rgb(222.5, 222.5, 222.5);--v-craft-gray-dark-darker-5: rgb(235.25, 235.25, 235.25);--v-craft-gray-dark-lighter-10: hsl(0, 0%, 107.2549019608%);--v-craft-gray-dark-transparent-50: rgba(248, 248, 248, .5);--v-craft-gray-medium-darker-10: #b1b1b1;--v-craft-gray-medium-lighter-15: rgb(240.75, 240.75, 240.75);--v-craft-transition-duration: .3s;--v-craft-node-editor-border-padding: .2rem}html.dark{--v-craft-blue: #1473e6;--v-craft-red: #ff3366;--v-craft-green: rgb(15, 177, 88);--v-craft-gray-dark: #2c2c2c;--v-craft-gray-medium: #4b4b4b;--v-craft-gray-light: #8e8e8e;--v-craft-gray-darkest: #1e1e1e;--v-craft-white: #ffffff;--v-craft-background-color: #1e1e1e;--v-craft-background-color-lighter-10: rgb(55.5, 55.5, 55.5);--v-craft-background-color-darker-10: rgb(4.5, 4.5, 4.5);--v-craft-input-background: #2d2d2d;--v-craft-input-border: #3a3a3a;--v-craft-text-color: #e0e0e0;--v-craft-text-color-blue: #e0e0e0;--v-craft-error-color: #ff3366;--v-craft-blue-darker-25: rgb(9.8, 56.35, 112.7);--v-craft-blue-darker-30: rgb(7.76, 44.62, 89.24);--v-craft-blue-lighter-5: rgb(39.26, 128.37, 236.24);--v-craft-blue-lighter-10: rgb(62.72, 142.14, 238.28);--v-craft-blue-lighter-15: rgb(86.18, 155.91, 240.32);--v-craft-blue-lighter-20: rgb(109.64, 169.68, 242.36);--v-craft-blue-transparent-20: rgba(20, 115, 230, .2);--v-craft-blue-transparent-70: rgba(20, 115, 230, .7);--v-craft-gray-dark-darker-10: rgb(18.5, 18.5, 18.5);--v-craft-gray-dark-darker-5: rgb(31.25, 31.25, 31.25);--v-craft-gray-dark-lighter-10: rgb(69.5, 69.5, 69.5);--v-craft-gray-dark-transparent-50: rgba(44, 44, 44, .5);--v-craft-gray-medium-darker-10: rgb(49.5, 49.5, 49.5);--v-craft-gray-medium-lighter-15: rgb(113.25, 113.25, 113.25)}
1
+ .pre-wrap{white-space:pre-wrap}.editable-text.is-editable:hover{background-color:#0000000d;cursor:pointer}.editable-text.is-editing{display:inline-block;width:100%}.editable-text__textarea{font:inherit;border:none;background:none;outline:none;width:100%;resize:none;overflow:hidden;min-height:1em;line-height:inherit;padding:.12em;margin:0}.editable-text__textarea:focus{border:none}.v-craft-blueprints-panel[data-v-a6de4dca]{min-width:15em;max-width:15em;width:15em}.v-craft-blueprints-panel[data-v-a6de4dca] .v-craft-blueprint{text-align:center;padding:.25em;position:relative;border:1px solid var(--v-craft-gray-medium);border-radius:3px;display:flex;align-items:center;cursor:pointer;background-color:var(--v-craft-background-color-lighter-10)}.v-craft-blueprints-panel[data-v-a6de4dca] .v-craft-blueprint-label{font-size:.8em;text-transform:uppercase;font-weight:700;color:var(--v-craft-gray-darker)}.v-craft-blueprints-panel h4[data-v-a6de4dca]{font-size:.8em;text-transform:uppercase;font-weight:700;color:var(--v-craft-gray-medium);margin-bottom:.75em;margin-top:2em}.v-craft-panel.v-craft-layers-panel[data-v-ab795ec3]{padding:10px;display:flex;flex-direction:column;height:auto;position:relative;width:23rem}.v-craft-layers[data-v-ab795ec3]{overflow-y:auto}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar{width:8px}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar-track{background:var(--v-craft-scrollbar-track)}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar-thumb{background:var(--v-craft-scrollbar-thumb);border-radius:4px}.v-craft-layers[data-v-ab795ec3]::-webkit-scrollbar-thumb:hover{background:var(--v-craft-scrollbar-thumb-hover)}.v-craft-layers[data-v-ab795ec3]{max-height:300px;overflow-y:auto;margin-top:10px}ul.v-craft-node-layers[data-v-ab795ec3]{margin:0;padding:0;list-style-type:none}.v-craft-panel-manager .v-craft-panel[data-v-7dd1d43b]{padding:.75em;margin-bottom:1.25em;box-shadow:0 2px 2px #00000009,0 4px 4px #0000000c,0 6px 6px #0000000f,0 8px 8px #00000012,0 10px 10px #00000016,0 15px 15px #0000001f;border-radius:3px}.v-craft-panel-manager[data-v-7dd1d43b] .v-craft-panel .v-craft-title{margin:0;padding:.125em;border-bottom:1px solid var(--v-craft-gray-medium)}.v-craft-data-source-error[data-v-7c1c5696]{color:var(--v-craft-red, #e5484d)}.v-craft-node-layer[data-v-208a4e02]{padding:5px 0;border-bottom:1px solid var(--v-craft-gray-dark);list-style-type:none}.v-craft-node-layer.v-craft-node-layer-selected>.v-craft-component-layer-face[data-v-208a4e02]{background-color:var(--v-craft-blue-lighter-5)}.v-craft-node-layer.v-craft-node-layer-selected>.v-craft-component-layer-face[data-v-208a4e02]:hover{background-color:var(--v-craft-blue-lighter-15)}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-layer-face{display:flex;align-items:center;padding:2px 5px;background-color:var(--v-craft-gray-medium);border-radius:3px;transition:background-color .2s ease;position:relative}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-layer-face:before{position:absolute;background-color:var(--v-craft-gray-medium);width:.5em;height:1px;top:50%;left:-.5em;content:" "}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-layer-face:hover{background-color:var(--v-craft-gray-medium-lighter-15)}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-name{flex-grow:1;font-size:12px;cursor:pointer}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-icon{font-size:12px;cursor:pointer;margin-left:5px;transition:color .2s ease}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-icon:hover{color:var(--v-craft-blue)}.v-craft-node-layer[data-v-208a4e02] .v-craft-component-icon{border:none;padding:.12em}.v-craft-node-layer[data-v-208a4e02] .nested-layers{margin-left:15px;border-left:1px solid var(--v-craft-gray-medium);padding-left:5px}.v-craft-slot-props-map-group[data-v-74ec0ff3]{border:1px solid var(--v-craft-gray-medium, #ccc);border-radius:4px;padding:.75em;margin-bottom:1em}.v-craft-slot-props-remove[data-v-74ec0ff3],.v-craft-slot-props-add[data-v-74ec0ff3]{width:100%;margin-top:.25em}:root{--v-craft-indicator-bg-allowed: var(--v-craft-green);--v-craft-indicator-bg-forbidden: var(--v-craft-red);--v-craft-indicator-transition-duration: .125s;--v-craft-indicator-z-index: 10000}.v-craft-indicator{position:fixed;background-color:var(--v-craft-indicator-bg-allowed);transition:top var(--v-craft-indicator-transition-duration) ease,left var(--v-craft-indicator-transition-duration) ease,right var(--v-craft-indicator-transition-duration) ease,bottom var(--v-craft-indicator-transition-duration) ease,width var(--v-craft-indicator-transition-duration) ease,height var(--v-craft-indicator-transition-duration) ease,background-color var(--v-craft-indicator-transition-duration) ease-in-out;z-index:var(--v-craft-indicator-z-index)}.v-craft-indicator:after{content:" "}.v-craft-indicator.v-craft-forbidden{background-color:var(--v-craft-indicator-bg-forbidden)}.v-craft-node{position:relative;transition:all var(--v-craft-transition-duration) ease;cursor:pointer;box-sizing:border-box}.v-craft-node:after{content:"";position:absolute;top:calc(-1 * var(--v-craft-node-editor-border-padding));left:calc(-1 * var(--v-craft-node-editor-border-padding));right:calc(-1 * var(--v-craft-node-editor-border-padding));bottom:calc(-1 * var(--v-craft-node-editor-border-padding));border:1px solid transparent;border-radius:4px;transition:border-color var(--v-craft-transition-duration) ease-in-out,box-shadow var(--v-craft-transition-duration) ease-in-out;pointer-events:none;z-index:10}.v-craft-node:before{content:"";align-items:center;background-color:var(--node-color, var(--v-craft-blue));bottom:calc(-20px - var(--v-craft-node-editor-border-padding));color:var(--v-craft-white);display:flex;font-family:Arial,sans-serif;font-size:12px;font-weight:400;height:20px;left:calc(-1 * var(--v-craft-node-editor-border-padding) + 3px);line-height:1.4em;opacity:0;padding:0 5px!important;pointer-events:none;position:absolute;text-align:center;text-transform:none;transition:opacity var(--v-craft-transition-duration) ease-in-out;z-index:100}.v-craft-node.v-craft-canvas.v-craft-other-node-dragged:before{opacity:.5}.v-craft-node:hover:not(:has(.v-craft-node:hover)):not(.v-craft-node-selected):before{opacity:1}.v-craft-node-selected:before{opacity:1}.v-craft-node:hover:not(:has(.v-craft-node:hover)):after{border-color:var(--node-color, var(--v-craft-blue-lighter-20));box-shadow:0 0 0 1px var(--node-color, var(--v-craft-blue))}.dark .v-craft-node:hover:not(:has(.v-craft-node:hover)):after{border-color:var(--node-color, var(--v-craft-blue-darker-25));box-shadow:0 0 0 1px var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-canvas:hover:not(:has(.v-craft-node:hover)):not(.v-craft-node-selected):after{box-shadow:0 0 .5em .1em rgba(var(--node-color),.2)}.v-craft-node-selected:not(:hover):after{border:1px solid var(--node-color, var(--v-craft-blue));box-shadow:0 0 .5em .1em rgba(var(--node-color),.2)}.v-craft-node-selected:after{border:1px solid var(--node-color, var(--v-craft-blue));box-shadow:0 0 0 1px var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-canvas.v-craft-other-node-dragged:after{border:2px dashed var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-canvas .v-craft-drop-text{border:2px dashed var(--v-craft-gray-medium);color:var(--v-craft-text-color);padding:1.25em;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;min-height:60px;box-sizing:border-box;pointer-events:auto;position:relative;margin:4px 0}.v-craft-node.v-craft-canvas .v-craft-slot-name{position:absolute;bottom:4px;left:8px;font-weight:400;font-size:.75em;color:var(--v-craft-gray-medium);text-transform:uppercase;letter-spacing:.05em}.v-craft-node.v-craft-canvas .v-craft-drop-text-label{font-size:.85em;color:var(--v-craft-gray-medium)}.v-craft-node.v-craft-canvas.v-craft-other-node-dragged{padding:10px!important;margin-bottom:25px!important}.v-craft-node-selected{z-index:1}.v-craft-node.v-craft-drag-over{box-shadow:0 0 0 2px var(--node-color, var(--v-craft-blue))}.v-craft-node.v-craft-dragging{opacity:.7}.v-craft-node:before{content:attr(data-node-name)}:root{--v-craft-blue: #1473e6;--v-craft-red: #ff3366;--v-craft-green: rgb(15, 177, 88);--v-craft-gray-dark: #f8f8f8;--v-craft-gray-medium: rgb(202.5, 202.5, 202.5);--v-craft-gray-light: rgb(167.5, 167.5, 167.5);--v-craft-gray-darkest: hsl(0, 0%, 101.7647058824%);--v-craft-white: #ffffff;--v-craft-background-color: hsl(0, 0%, 106.7647058824%);--v-craft-background-color-lighter-10: #ffffff;--v-craft-background-color-darker-10: hsl(0, 0%, 101.7647058824%);--v-craft-input-background: hsl(0, 0%, 109.7647058824%);--v-craft-input-border: #eaeaea;--v-craft-text-color: rgb(55.5, 55.5, 55.5);--v-craft-text-color-blue: #e0e0e0;--v-craft-error-color: #ff3366;--v-craft-blue-darker-25: rgb(9.8, 56.35, 112.7);--v-craft-blue-darker-30: rgb(7.76, 44.62, 89.24);--v-craft-blue-lighter-5: rgb(39.26, 128.37, 236.24);--v-craft-blue-lighter-10: rgb(62.72, 142.14, 238.28);--v-craft-blue-lighter-15: rgb(86.18, 155.91, 240.32);--v-craft-blue-lighter-20: rgb(109.64, 169.68, 242.36);--v-craft-blue-transparent-70: rgba(20, 115, 230, .7);--v-craft-blue-transparent-20: rgba(20, 115, 230, .2);--v-craft-gray-dark-darker-10: rgb(222.5, 222.5, 222.5);--v-craft-gray-dark-darker-5: rgb(235.25, 235.25, 235.25);--v-craft-gray-dark-lighter-10: hsl(0, 0%, 107.2549019608%);--v-craft-gray-dark-transparent-50: rgba(248, 248, 248, .5);--v-craft-gray-medium-darker-10: #b1b1b1;--v-craft-gray-medium-lighter-15: rgb(240.75, 240.75, 240.75);--v-craft-transition-duration: .3s;--v-craft-node-editor-border-padding: .2rem}html.dark{--v-craft-blue: #1473e6;--v-craft-red: #ff3366;--v-craft-green: rgb(15, 177, 88);--v-craft-gray-dark: #2c2c2c;--v-craft-gray-medium: #4b4b4b;--v-craft-gray-light: #8e8e8e;--v-craft-gray-darkest: #1e1e1e;--v-craft-white: #ffffff;--v-craft-background-color: #1e1e1e;--v-craft-background-color-lighter-10: rgb(55.5, 55.5, 55.5);--v-craft-background-color-darker-10: rgb(4.5, 4.5, 4.5);--v-craft-input-background: #2d2d2d;--v-craft-input-border: #3a3a3a;--v-craft-text-color: #e0e0e0;--v-craft-text-color-blue: #e0e0e0;--v-craft-error-color: #ff3366;--v-craft-blue-darker-25: rgb(9.8, 56.35, 112.7);--v-craft-blue-darker-30: rgb(7.76, 44.62, 89.24);--v-craft-blue-lighter-5: rgb(39.26, 128.37, 236.24);--v-craft-blue-lighter-10: rgb(62.72, 142.14, 238.28);--v-craft-blue-lighter-15: rgb(86.18, 155.91, 240.32);--v-craft-blue-lighter-20: rgb(109.64, 169.68, 242.36);--v-craft-blue-transparent-20: rgba(20, 115, 230, .2);--v-craft-blue-transparent-70: rgba(20, 115, 230, .7);--v-craft-gray-dark-darker-10: rgb(18.5, 18.5, 18.5);--v-craft-gray-dark-darker-5: rgb(31.25, 31.25, 31.25);--v-craft-gray-dark-lighter-10: rgb(69.5, 69.5, 69.5);--v-craft-gray-dark-transparent-50: rgba(44, 44, 44, .5);--v-craft-gray-medium-darker-10: rgb(49.5, 49.5, 49.5);--v-craft-gray-medium-lighter-15: rgb(113.25, 113.25, 113.25)}