@luna-park/plugin 1.0.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.
@@ -0,0 +1,448 @@
1
+ import { Component as Component_2 } from 'vue';
2
+ import { IconDefinition } from '@fortawesome/fontawesome-svg-core';
3
+ import { PluginOption } from 'vite';
4
+
5
+ declare type Component = {
6
+ name: string;
7
+ };
8
+
9
+ export declare enum ELogicScope {
10
+ Frontend = "frontend",
11
+ Backend = "backend",
12
+ Desktop = "desktop",
13
+ Shared = "shared"
14
+ }
15
+
16
+ export declare enum ELogicType {
17
+ function = "function",
18
+ macro = "macro",
19
+ operation = "operation"
20
+ }
21
+
22
+ export declare enum EVarType {
23
+ exec = "exec",
24
+ number = "number",
25
+ string = "string",
26
+ boolean = "boolean",
27
+ object = "object",
28
+ array = "array",
29
+ interface = "interface",
30
+ type = "type",
31
+ function = "function",
32
+ union = "union",
33
+ unknown = "unknown",
34
+ undefined = "undefined",
35
+ void = "void"
36
+ }
37
+
38
+ export declare function getPluginParam<T>(target: TOption<TEnv, T>, env: Partial<TEnv>): Promise<T>;
39
+
40
+ export declare const LogicType: {
41
+ type: <T extends TSchema>(target: Array<string>, args?: TArguments) => TType<T>;
42
+ array: <T extends TSchema, TArgs extends TArguments<Array<T>>>(items: T, args?: TArgs) => TArray<T> & TArgs;
43
+ boolean: <TArgs extends TArguments<boolean>>(args?: TArgs) => TBoolean & TArgs;
44
+ exec: (args?: TArguments) => TExec;
45
+ function: <TInputs extends TObject, TOutput extends TSchema = TUndefined>(inputs: TInputs, output?: TOutput, args?: TArguments) => TFunction<TInputs, TOutput>;
46
+ interface: <T, TArgs extends TArguments<T> = TArguments<T>>(interfaceClass: (new (...args: any) => T) | string, args?: TArgs) => TInterface<T> & TArgs;
47
+ number: <TArgs extends TArguments<number>>(args?: TArgs) => TNumber & TArgs;
48
+ object: <T extends TProperties, TArgs extends TArguments<object>>(properties?: T, args?: TArgs) => TObject<T> & TArgs;
49
+ string: <TArgs extends TArguments<string>>(args?: TArgs) => TString & TArgs;
50
+ undefined: (args?: TArguments) => TUndefined;
51
+ union: <T extends Array<TSchema>>(elements: T, args?: TArguments) => TUnion<T>;
52
+ unknown: <TArgs extends TArguments<unknown>>(args?: TArgs) => TUnknown & TArgs;
53
+ void: (args?: TArguments) => TVoid;
54
+ };
55
+
56
+ export declare function makeLogicNode<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor, TConfig extends TNodeConfigDescriptor>(node: TNodeDescriptor<TInputs, TOutputs, TConfig>): TLogicNode;
57
+
58
+ export declare function makePlugin<TConfig extends TSchema, TInternal>(plugin: TPlugin<TConfig, TInternal>): TPlugin<TConfig, TInternal>;
59
+
60
+ declare type MethodsFrom<TInterface extends TNodeInterfaceDescriptor> = {
61
+ [TKey in keyof TInterface]: () => Promise<Static<TInterface[TKey]>> | Static<TInterface[TKey]>;
62
+ };
63
+
64
+ declare type OptionalKeys<T extends TProperties> = {
65
+ [K in keyof T]: T[K] extends {
66
+ optional: true;
67
+ } ? K : never;
68
+ }[keyof T];
69
+
70
+ declare type RequiredKeys<T extends TProperties> = Exclude<keyof T, OptionalKeys<T>>;
71
+
72
+ declare type Static<T extends TSchema> = T extends {
73
+ optional: true;
74
+ } ? (T["static"] | undefined) : T["static"];
75
+
76
+ declare type StaticFunction<TInputs extends TObject, TOutput extends TSchema> = (...args: Array<Static<TInputs>[string]>) => Promise<Static<TOutput>>;
77
+
78
+ declare type StaticObject<T extends TProperties> = {
79
+ [K in RequiredKeys<T>]: Static<T[K]>;
80
+ } & {
81
+ [K in OptionalKeys<T>]?: Static<T[K]>;
82
+ };
83
+
84
+ declare type StaticUnion<T extends Array<TSchema>> = {
85
+ [K in keyof T]: Static<T[K]>;
86
+ }[number];
87
+
88
+ declare type TAllLogic = TExec | TObject | TInterface | TType | TArray<any> | TString | TNumber | TBoolean | TUnknown | TUndefined | TUnion<any> | TFunction<any, any> | TVoid;
89
+
90
+ declare interface TArguments<TType = any> {
91
+ name?: string;
92
+ build?: (arg: unknown) => unknown;
93
+ customizable?: boolean;
94
+ default?: TType;
95
+ defaultType?: TSchema;
96
+ description?: string;
97
+ dynamic?: ((arg: {
98
+ config: Record<string, unknown>;
99
+ inputs: Record<string, TSchema>;
100
+ outputs: Record<string, TSchema>;
101
+ }) => TSchema);
102
+ enum?: TEnum<TType>;
103
+ example?: unknown;
104
+ format?: "date-time" | "email" | "color";
105
+ multiple?: boolean;
106
+ optional?: boolean;
107
+ options?: {
108
+ format?: (arg: TType) => TType;
109
+ freeze?: boolean;
110
+ } & Record<string, unknown>;
111
+ parse?: (arg: unknown) => unknown;
112
+ placeholder?: string;
113
+ priority?: boolean;
114
+ static?: unknown;
115
+ sub?: TSchema;
116
+ }
117
+
118
+ declare interface TArray<T extends TSchema = TSchema> {
119
+ type: EVarType.array;
120
+ items: T;
121
+ static: Array<Static<T>>;
122
+ }
123
+
124
+ declare interface TBoolean {
125
+ type: EVarType.boolean;
126
+ static: boolean;
127
+ }
128
+
129
+ declare type TComponent = {
130
+ name: string;
131
+ attribute?: Record<string, TLogicNode>;
132
+ component: Component_2;
133
+ custom?: {
134
+ slots: (attributes: Record<string, unknown>) => Record<string, false | TSchema>;
135
+ };
136
+ import?: Array<{
137
+ name: string;
138
+ target: string;
139
+ }>;
140
+ slots?: Record<string, false | TSchema>;
141
+ };
142
+
143
+ declare type TDocumentation = {
144
+ description?: string;
145
+ examples?: Array<{
146
+ inputs: Array<{
147
+ key: string;
148
+ value: unknown;
149
+ }>;
150
+ outputs: Array<{
151
+ key: string;
152
+ value: unknown;
153
+ }>;
154
+ }>;
155
+ parameters?: Array<{
156
+ name: string;
157
+ description: string;
158
+ }>;
159
+ };
160
+
161
+ declare type TEnum<TEnumType> = Array<TEnumType> | Record<string, TEnumType>;
162
+
163
+ declare type TEnv<TConfig extends TSchema = TSchema, TInternal = unknown> = {
164
+ config: Static<TConfig>;
165
+ internal: TInternal;
166
+ mode: "build" | "editor";
167
+ };
168
+
169
+ declare interface TExec {
170
+ type: EVarType.exec;
171
+ }
172
+
173
+ declare interface TFunction<TInputs extends TObject = TObject, TOutput extends TSchema = TUnknown> {
174
+ type: EVarType.function;
175
+ inputs: TInputs;
176
+ output: TOutput;
177
+ static: StaticFunction<TInputs, TOutput>;
178
+ }
179
+
180
+ declare interface TInterface<T = unknown> {
181
+ type: EVarType.interface;
182
+ class?: new (...args: any) => T;
183
+ className: string;
184
+ static: T;
185
+ }
186
+
187
+ declare type TLogicNode = {
188
+ name: string;
189
+ type?: ELogicType;
190
+ build?: {
191
+ define?: Array<{
192
+ id: (data: {
193
+ input?: Record<string, unknown>;
194
+ }) => string;
195
+ values: (data: {
196
+ input?: Record<string, unknown>;
197
+ }) => string;
198
+ }>;
199
+ entry?: boolean;
200
+ generate?: (options: {
201
+ config: Record<string, unknown>;
202
+ inputKeys: Array<string>;
203
+ key: string;
204
+ }) => string;
205
+ imports?: Array<{
206
+ name: string;
207
+ target: string;
208
+ }>;
209
+ };
210
+ config?: TNodeConfigDescriptor;
211
+ display?: TNodeDisplay;
212
+ documentation?: TDocumentation;
213
+ dynamics?: {
214
+ inputs?: (ioSchema: {
215
+ config: Record<string, unknown>;
216
+ inputs: Record<string, unknown>;
217
+ optionals: Record<string, boolean>;
218
+ outputs: Record<string, unknown>;
219
+ }) => TNodeInterfaceDescriptor;
220
+ outputs?: (ioSchema: {
221
+ config: Record<string, unknown>;
222
+ inputs: Record<string, unknown>;
223
+ optionals: Record<string, boolean>;
224
+ outputs: Record<string, unknown>;
225
+ }) => TNodeInterfaceDescriptor;
226
+ };
227
+ inputs: TNodeInterfaceDescriptor;
228
+ methods: Record<string, () => unknown>;
229
+ outputs: TNodeInterfaceDescriptor;
230
+ };
231
+
232
+ declare type TMethodsOf<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor> = MethodsFrom<TOnlyExecOf<TInputs>> & MethodsFrom<TOnlyVarsOf<TOutputs>>;
233
+
234
+ declare type TNodeConfigDescriptor = Record<string, TSchema>;
235
+
236
+ declare type TNodeConfigSchema<TConfig extends TNodeConfigDescriptor> = {
237
+ internal?: unknown;
238
+ } & {
239
+ [TKey in keyof TConfig]: Static<TConfig[TKey]>;
240
+ };
241
+
242
+ declare type TNodeDescriptor<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor, TConfig extends TNodeConfigDescriptor> = TNodeGenerated<TInputs, TOutputs, TConfig> & ThisType<{
243
+ [TKey in keyof TOnlyExecOf<TOutputs>]: (stack?: unknown) => Promise<void>;
244
+ } & {
245
+ [TKey in keyof TOnlyVarsOf<TInputs>]: Static<TInputs[TKey]>;
246
+ } & {
247
+ [TKey in keyof TOnlyVarsOf<TOutputs>]: Static<TOutputs[TKey]>;
248
+ } & Record<`internal_${string}`, unknown> & {
249
+ arguments: Promise<Array<unknown>>;
250
+ config: {
251
+ [TKey in keyof TConfig]: Static<TConfig[TKey]>;
252
+ };
253
+ properties: Record<string, {
254
+ name: string;
255
+ value: Promise<unknown>;
256
+ }>;
257
+ stack: any;
258
+ }>;
259
+
260
+ declare type TNodeDisplay = {
261
+ name?: string;
262
+ altSearch?: string;
263
+ config?: {
264
+ back?: string | IconDefinition;
265
+ data?: {
266
+ size?: {
267
+ x: number;
268
+ y: number;
269
+ };
270
+ };
271
+ dependency?: () => void;
272
+ fixed?: boolean;
273
+ headerless?: boolean;
274
+ hoverable?: boolean;
275
+ icon?: string | IconDefinition;
276
+ inspector?: string;
277
+ noDelete?: boolean;
278
+ noSelection?: boolean;
279
+ notFound?: boolean;
280
+ once?: boolean;
281
+ priority?: number;
282
+ scope?: ELogicScope;
283
+ transparent?: boolean;
284
+ };
285
+ custom?: Component | string;
286
+ data?: Record<string, unknown>;
287
+ inspector?: string;
288
+ interface?: Component | string;
289
+ priority?: number;
290
+ };
291
+
292
+ declare type TNodeDynamics<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor, TConfig extends TNodeConfigDescriptor> = {
293
+ inputs?: (ioSchema: {
294
+ config: TNodeConfigSchema<TConfig>;
295
+ inputs: TNodeIOSchema<TInputs>;
296
+ optionals: TNodeOptionals<TInputs, TOutputs>;
297
+ outputs: TNodeIOSchema<TOutputs>;
298
+ }) => Partial<TNodeInterfaceDescriptor>;
299
+ outputs?: (ioSchema: {
300
+ config: TNodeConfigSchema<TConfig>;
301
+ inputs: TNodeIOSchema<TInputs>;
302
+ optionals: TNodeOptionals<TInputs, TOutputs>;
303
+ outputs: TNodeIOSchema<TOutputs>;
304
+ }) => Partial<TNodeInterfaceDescriptor>;
305
+ };
306
+
307
+ declare type TNodeGenerated<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor, TConfig extends TNodeConfigDescriptor> = {
308
+ name?: string;
309
+ type?: ELogicType;
310
+ build?: {
311
+ define?: Array<{
312
+ id: (data: {
313
+ input?: TOnlyVarsOf<TInputs>;
314
+ }) => string;
315
+ values: (data: {
316
+ input?: TOnlyVarsOf<TInputs>;
317
+ }) => string;
318
+ }>;
319
+ entry?: boolean;
320
+ generate?: (data: {
321
+ config?: {
322
+ [TKey in keyof TConfig]: Static<TConfig[TKey]>;
323
+ };
324
+ inputKeys: Array<string>;
325
+ key?: string;
326
+ }) => string;
327
+ imports?: Array<{
328
+ name: string;
329
+ target: string;
330
+ }>;
331
+ };
332
+ config?: TConfig;
333
+ display?: TNodeDisplay;
334
+ documentation?: TDocumentation;
335
+ dynamics?: TNodeDynamics<TInputs, TOutputs, TConfig>;
336
+ inputs: TInputs;
337
+ methods: Partial<TMethodsOf<TInputs, TOutputs>>;
338
+ outputs: TOutputs;
339
+ };
340
+
341
+ declare type TNodeInterfaceDescriptor = Record<string, TSchema>;
342
+
343
+ declare type TNodeIOSchema<TInterface extends TNodeInterfaceDescriptor> = {
344
+ [TKey in keyof TOnlyVarsOf<TInterface>]: {
345
+ linked: boolean;
346
+ schema: TOnlyVarsOf<TInterface>[TKey];
347
+ value: Static<TOnlyVarsOf<TInterface>[TKey]>;
348
+ };
349
+ };
350
+
351
+ declare type TNodeOptionals<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor> = {
352
+ [TKey in keyof (TOnlyVarsOf<TInputs> | TOnlyVarsOf<TOutputs>)]: boolean;
353
+ };
354
+
355
+ declare interface TNumber {
356
+ type: EVarType.number;
357
+ static: number;
358
+ }
359
+
360
+ declare interface TObject<T extends TProperties = TProperties> {
361
+ type: EVarType.object;
362
+ properties: T;
363
+ static: StaticObject<T>;
364
+ }
365
+
366
+ declare type TOnlyExecOf<TNodeInterfaceDescriptor> = {
367
+ [TAnchor in keyof TNodeInterfaceDescriptor as TNodeInterfaceDescriptor[TAnchor] extends TExec ? TAnchor : never]: TNodeInterfaceDescriptor[TAnchor];
368
+ };
369
+
370
+ declare type TOnlyVarsOf<TNodeInterfaceDescriptor> = {
371
+ [TAnchor in keyof TNodeInterfaceDescriptor as TNodeInterfaceDescriptor[TAnchor] extends TExec ? never : TAnchor]: TNodeInterfaceDescriptor[TAnchor];
372
+ };
373
+
374
+ declare type TOption<TParams = unknown, TResult = unknown> = TResult | ((env: TParams) => Promise<TResult> | TResult | undefined);
375
+
376
+ export declare type TPlugin<TConfig extends TSchema = TSchema, TInternal = unknown> = {
377
+ id: string;
378
+ name: string;
379
+ build?: {
380
+ imports?: TOption<TEnv<TConfig, TInternal>, Array<{
381
+ name: string;
382
+ version?: string;
383
+ }>>;
384
+ plugins?: TOption<TEnv<TConfig, TInternal>, Array<PluginOption>>;
385
+ };
386
+ config?: TConfig;
387
+ dependencies?: Array<{
388
+ id: string;
389
+ name: string;
390
+ target: string;
391
+ }>;
392
+ description?: string;
393
+ editor?: {
394
+ components?: TOption<TEnv<TConfig, TInternal>, Array<TLogicNode>>;
395
+ nodes?: TOption<TEnv<TConfig, TInternal>, Array<TComponent>>;
396
+ wrapper?: TOption<TEnv<TConfig, TInternal>, Component_2>;
397
+ };
398
+ icon: string;
399
+ inject?: {
400
+ css?: TOption<TEnv<TConfig, TInternal>, string>;
401
+ js?: TOption<TEnv<TConfig, TInternal>, string>;
402
+ };
403
+ interface?: Component_2;
404
+ internal?: TInternal;
405
+ lifecycle?: {
406
+ mount?: (env: TEnv<TConfig, TInternal>) => Promise<void> | void;
407
+ unmount?: (env: TEnv<TConfig, TInternal>) => Promise<void> | void;
408
+ update?: (env: TEnv<TConfig, TInternal>) => Promise<void> | void;
409
+ };
410
+ };
411
+
412
+ declare type TProperties = Record<string, TSchema>;
413
+
414
+ declare type TSchema<TLogic extends TAllLogic = TAllLogic> = TArguments & TLogic;
415
+
416
+ declare interface TString {
417
+ type: EVarType.string;
418
+ static: string;
419
+ }
420
+
421
+ declare interface TType<T extends TSchema = TSchema> {
422
+ type: EVarType.type;
423
+ static: T;
424
+ target: Array<string>;
425
+ }
426
+
427
+ declare interface TUndefined {
428
+ type: EVarType.undefined;
429
+ static: undefined;
430
+ }
431
+
432
+ declare interface TUnion<T extends Array<TSchema> = Array<TSchema>> {
433
+ type: EVarType.union;
434
+ elements: T;
435
+ static: StaticUnion<T>;
436
+ }
437
+
438
+ declare interface TUnknown {
439
+ type: EVarType.unknown;
440
+ static: unknown;
441
+ }
442
+
443
+ declare interface TVoid {
444
+ type: EVarType.void;
445
+ static: void;
446
+ }
447
+
448
+ export { }
package/dist/index.js ADDED
@@ -0,0 +1,74 @@
1
+ var i = /* @__PURE__ */ ((e) => (e.exec = "exec", e.number = "number", e.string = "string", e.boolean = "boolean", e.object = "object", e.array = "array", e.interface = "interface", e.type = "type", e.function = "function", e.union = "union", e.unknown = "unknown", e.undefined = "undefined", e.void = "void", e))(i || {});
2
+ const t = {
3
+ type: (e, n = {}) => ({ ...n, type: "type", target: e }),
4
+ array: (e, n = {}) => ({ ...n, type: "array", items: e }),
5
+ boolean: (e = {}) => ({
6
+ ...e,
7
+ type: "boolean"
8
+ /* boolean */
9
+ }),
10
+ exec: (e = {}) => ({
11
+ ...e,
12
+ type: "exec"
13
+ /* exec */
14
+ }),
15
+ function: (e, n = {
16
+ type: "undefined"
17
+ /* undefined */
18
+ }, o = {}) => ({ ...o, type: "function", inputs: e, output: n }),
19
+ interface: (e, n = {}) => ({
20
+ ...n,
21
+ type: "interface",
22
+ className: typeof e == "string" ? e : e.name
23
+ }),
24
+ number: (e = {}) => ({
25
+ ...e,
26
+ type: "number"
27
+ /* number */
28
+ }),
29
+ object: (e = {}, n = {}) => ({ ...n, type: "object", properties: e }),
30
+ string: (e = {}) => ({
31
+ ...e,
32
+ type: "string"
33
+ /* string */
34
+ }),
35
+ undefined: (e = {}) => ({
36
+ ...e,
37
+ type: "undefined"
38
+ /* undefined */
39
+ }),
40
+ union: (e, n = {}) => ({ ...n, type: "union", elements: e }),
41
+ unknown: (e = {}) => ({
42
+ ...e,
43
+ type: "unknown"
44
+ /* unknown */
45
+ }),
46
+ void: (e = {}) => ({
47
+ ...e,
48
+ type: "void"
49
+ /* void */
50
+ })
51
+ };
52
+ var r = /* @__PURE__ */ ((e) => (e.function = "function", e.macro = "macro", e.operation = "operation", e))(r || {}), a = /* @__PURE__ */ ((e) => (e.Frontend = "frontend", e.Backend = "backend", e.Desktop = "desktop", e.Shared = "shared", e))(a || {});
53
+ function u(e) {
54
+ return e;
55
+ }
56
+ function c(e) {
57
+ return e;
58
+ }
59
+ async function p(e, n) {
60
+ return typeof e == "function" ? e({
61
+ config: n.config,
62
+ internal: n.internal,
63
+ mode: n.mode || "editor"
64
+ }) : e;
65
+ }
66
+ export {
67
+ a as ELogicScope,
68
+ r as ELogicType,
69
+ i as EVarType,
70
+ t as LogicType,
71
+ p as getPluginParam,
72
+ u as makeLogicNode,
73
+ c as makePlugin
74
+ };
@@ -0,0 +1 @@
1
+ (function(i,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(i=typeof globalThis<"u"?globalThis:i||self,o(i["@luna-park/plugin"]={}))})(this,(function(i){"use strict";var o=(e=>(e.exec="exec",e.number="number",e.string="string",e.boolean="boolean",e.object="object",e.array="array",e.interface="interface",e.type="type",e.function="function",e.union="union",e.unknown="unknown",e.undefined="undefined",e.void="void",e))(o||{});const r={type:(e,n={})=>({...n,type:"type",target:e}),array:(e,n={})=>({...n,type:"array",items:e}),boolean:(e={})=>({...e,type:"boolean"}),exec:(e={})=>({...e,type:"exec"}),function:(e,n={type:"undefined"},d={})=>({...d,type:"function",inputs:e,output:n}),interface:(e,n={})=>({...n,type:"interface",className:typeof e=="string"?e:e.name}),number:(e={})=>({...e,type:"number"}),object:(e={},n={})=>({...n,type:"object",properties:e}),string:(e={})=>({...e,type:"string"}),undefined:(e={})=>({...e,type:"undefined"}),union:(e,n={})=>({...n,type:"union",elements:e}),unknown:(e={})=>({...e,type:"unknown"}),void:(e={})=>({...e,type:"void"})};var t=(e=>(e.function="function",e.macro="macro",e.operation="operation",e))(t||{}),u=(e=>(e.Frontend="frontend",e.Backend="backend",e.Desktop="desktop",e.Shared="shared",e))(u||{});function a(e){return e}function c(e){return e}async function f(e,n){return typeof e=="function"?e({config:n.config,internal:n.internal,mode:n.mode||"editor"}):e}i.ELogicScope=u,i.ELogicType=t,i.EVarType=o,i.LogicType=r,i.getPluginParam=f,i.makeLogicNode=a,i.makePlugin=c,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})}));
package/package.json ADDED
@@ -0,0 +1,60 @@
1
+ {
2
+ "name": "@luna-park/plugin",
3
+ "version": "1.0.0",
4
+ "private": false,
5
+ "description": "Plugin helper for Luna Park.",
6
+ "homepage": "https://luna-park.app",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/lunapark"
10
+ },
11
+ "author": {
12
+ "name": "Luna Park",
13
+ "url": "https://luna-park.app"
14
+ },
15
+ "type": "module",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "require": "./dist/index.umd.cjs",
20
+ "import": "./dist/index.js"
21
+ }
22
+ },
23
+ "main": "./dist/index.umd.cjs",
24
+ "module": "./dist/index.js",
25
+ "types": "./dist/index.d.ts",
26
+ "files": [
27
+ "dist/**"
28
+ ],
29
+ "dependencies": {
30
+ "vue": "^3.5.23",
31
+ "@luna-park/logicnodes": "^2.0.0"
32
+ },
33
+ "devDependencies": {
34
+ "@eslint/eslintrc": "^3.3.1",
35
+ "@eslint/js": "^9.39.1",
36
+ "@microsoft/api-extractor": "^7.54.0",
37
+ "@vitest/ui": "^4.0.7",
38
+ "eslint": "^9.39.1",
39
+ "eslint-import-resolver-typescript": "^4.4.4",
40
+ "eslint-plugin-import-x": "^4.16.1",
41
+ "eslint-plugin-promise": "^7.2.1",
42
+ "eslint-plugin-sort-keys-custom-order": "^2.2.1",
43
+ "rimraf": "^6.1.0",
44
+ "typescript": "^5.9.3",
45
+ "typescript-eslint": "^8.46.3",
46
+ "unplugin-dts": "1.0.0-beta.6",
47
+ "vite": "^7.2.1",
48
+ "vite-plugin-dts": "4.5.4",
49
+ "vitest": "^4.0.7"
50
+ },
51
+ "peerDependencies": {
52
+ "vue": "^3.5.23"
53
+ },
54
+ "scripts": {
55
+ "build": "rimraf dist && vite build",
56
+ "dev": "vite build --watch",
57
+ "dev:test": "vitest --ui",
58
+ "test": "vitest"
59
+ }
60
+ }