@luna-park/plugin 1.5.1 → 1.7.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.
@@ -596,6 +596,7 @@ function schemaLoop(schema, func, key) {
596
596
  }) || schema;
597
597
  if (schema.type === "object") for (const key in schema.properties) schema.properties[key] = schemaLoop(schema.properties[key], func, key);
598
598
  if (schema.type === "array") schema.items = schemaLoop(schema.items, func);
599
+ if (schema.type === "record") schema.value = schemaLoop(schema.value, func);
599
600
  if (schema.type === "function") {
600
601
  schema.inputs = schemaLoop(schema.inputs, func);
601
602
  schema.output = schemaLoop(schema.output, func);
@@ -0,0 +1,21 @@
1
+ //#region src/eslint/index.d.ts
2
+ export declare const objectKeysOptions: {
3
+ orderedKeys: string[];
4
+ selectors: {
5
+ target: {
6
+ name: string;
7
+ type: "function" | "property";
8
+ };
9
+ mode: "direct" | "recursive";
10
+ orderedKeys?: Array<string>;
11
+ sorting?: "asc" | "desc" | "none";
12
+ }[];
13
+ };
14
+ declare const _default: {
15
+ name: string;
16
+ rules: {
17
+ "sort-keys-custom-order/object-keys": ["error", typeof objectKeysOptions];
18
+ };
19
+ };
20
+ //#endregion
21
+ export { _default as default };
@@ -0,0 +1,73 @@
1
+ //#region src/eslint/index.ts
2
+ function selector(name, type, options) {
3
+ return {
4
+ mode: "direct",
5
+ ...options,
6
+ target: {
7
+ name,
8
+ type
9
+ }
10
+ };
11
+ }
12
+ const objectKeysOptions = {
13
+ orderedKeys: ["id", "name"],
14
+ selectors: [
15
+ selector("makePlugin", "function", { orderedKeys: [
16
+ "id",
17
+ "name",
18
+ "description",
19
+ "icon",
20
+ "color",
21
+ "llm",
22
+ "config",
23
+ "internals",
24
+ "settings",
25
+ "lifecycle",
26
+ "editor",
27
+ "hooks",
28
+ "windows",
29
+ "inject",
30
+ "build"
31
+ ] }),
32
+ selector("lifecycle", "property", { orderedKeys: [
33
+ "mount",
34
+ "update",
35
+ "unmount"
36
+ ] }),
37
+ selector("editor", "property", { orderedKeys: [
38
+ "components",
39
+ "nodes",
40
+ "tokens",
41
+ "panel",
42
+ "inputs",
43
+ "interfaces",
44
+ "guards",
45
+ "templates",
46
+ "wrapper"
47
+ ] }),
48
+ selector("documentation", "property", { orderedKeys: ["short", "description"] }),
49
+ selector("schema", "property", {
50
+ mode: "recursive",
51
+ sorting: "none"
52
+ }),
53
+ selector("makeLogicNode", "function", { orderedKeys: [
54
+ "name",
55
+ "inputs",
56
+ "outputs",
57
+ "config",
58
+ "methods",
59
+ "display",
60
+ "documentation",
61
+ "build"
62
+ ] }),
63
+ selector("inputs", "property", { sorting: "none" }),
64
+ selector("outputs", "property", { sorting: "none" }),
65
+ selector("methods", "property", { sorting: "none" })
66
+ ]
67
+ };
68
+ var eslint_default = {
69
+ name: "@luna-park/plugin/eslint",
70
+ rules: { "sort-keys-custom-order/object-keys": ["error", objectKeysOptions] }
71
+ };
72
+ //#endregion
73
+ export { eslint_default as default, objectKeysOptions };
@@ -1,4 +1,4 @@
1
- import { l as TSchema } from "./index-DQhxmFHB.mjs";
1
+ import { d as TSchema } from "./index-76yMHag4.mjs";
2
2
  import * as ts$1 from "typescript";
3
3
  import ts from "typescript";
4
4
  //#region src/extractor/export/type.d.ts
@@ -1,4 +1,4 @@
1
- import { c as typeToSchema, d as objectMap, i as LogicType, l as cleanObject, r as EVarType, s as schemaLoop } from "./dist-Cnje_ZD3.mjs";
1
+ import { c as typeToSchema, d as objectMap, i as LogicType, l as cleanObject, r as EVarType, s as schemaLoop } from "./dist-BoFOku7q.mjs";
2
2
  import fs from "node:fs";
3
3
  import * as ts$1 from "typescript";
4
4
  import ts from "typescript";
@@ -111,7 +111,8 @@ interface TObject<T extends TProperties = TProperties> {
111
111
  static: StaticObject<T>;
112
112
  type: EVarType.object;
113
113
  }
114
- interface TRecord<TKey extends TString | TNumber = TString, TValue extends TSchema = TSchema> {
114
+ type TRecordKey = TString | TNumber;
115
+ interface TRecord<TKey extends TRecordKey = TString, TValue extends TSchema = TSchema> {
115
116
  key: TKey;
116
117
  static: StaticRecord<TKey, TValue>;
117
118
  type: EVarType.record;
@@ -144,7 +145,7 @@ type TFunction<TInputs extends TObject = TObject, TOutput extends TSchema = TSch
144
145
  static: StaticFunction<TParameters, TOutput, TPromise>;
145
146
  type: EVarType.function;
146
147
  };
147
- type TAnyLogic = TExec | TObject | TRecord<TString | TNumber> | TInterface | TType | TArray | TString | TNumber | TBoolean | TUnknown | TUndefined | TUnion | TFunction<TObject, TSchema, boolean, ReadonlyArray<never>> | TVoid;
148
+ type TAnyLogic = TExec | TObject | TRecord<TRecordKey> | TInterface | TType | TArray | TString | TNumber | TBoolean | TUnknown | TUndefined | TUnion | TFunction<TObject, TSchema, boolean, ReadonlyArray<never>> | TVoid;
148
149
  type TSchema<TLogic extends TAnyLogic = TAnyLogic> = TLogic & TArguments;
149
150
  declare const LogicType: {
150
151
  array: <T extends TSchema, TArgs extends TArguments<Array<StaticSchema<T>>>>(items: T, args?: TArgs) => TArray<T> & TArgs;
@@ -154,7 +155,7 @@ declare const LogicType: {
154
155
  interface: <T = unknown, TArgs extends TArguments<T> = TArguments<T>>(interfaceClass: (new (...args: Array<unknown>) => T) | string, args?: TArgs) => TInterface<T> & TArgs;
155
156
  number: <TArgs extends TArguments<number>>(args?: TArgs) => TNumber & TArgs;
156
157
  object: <T extends TProperties, TArgs extends TArguments<object>>(properties?: T, args?: TArgs) => TObject<T> & TArgs;
157
- record: <TKey extends TString | TNumber, TValue extends TSchema, const TArgs extends TArguments<StaticRecord<TKey, TValue>> = {}>(key: TKey, value: TValue, args?: TArgs) => TRecord<TKey, TValue> & TArgs;
158
+ record: <TKey extends TRecordKey, TValue extends TSchema, const TArgs extends TArguments<StaticRecord<TKey, TValue>> = {}>(key: TKey, value: TValue, args?: TArgs) => TRecord<TKey, TValue> & TArgs;
158
159
  string: <TArgs extends TArguments<string>>(args?: TArgs) => TString & TArgs;
159
160
  type: typeof createType;
160
161
  undefined: <const TArgs extends TArguments<undefined> = {}>(args?: TArgs) => TUndefined & TArgs;
@@ -170,7 +171,7 @@ type StaticSchema<T extends TSchema> = [TSchema] extends [T] ? unknown : T exten
170
171
  static: unknown;
171
172
  } ? Static<T> : unknown;
172
173
  type StaticObject<T extends TProperties> = string extends keyof T ? Record<string, unknown> : { [K in RequiredKeys<T>]: StaticSchema<T[K]>; } & { [K in OptionalKeys<T>]?: StaticSchema<T[K]>; };
173
- type StaticRecord<TKey extends TSchema<TString> | TSchema<TNumber>, TValue extends TSchema> = Record<StaticSchema<TKey> & (string | number), StaticSchema<TValue>>;
174
+ type StaticRecord<TKey extends TSchema<TRecordKey>, TValue extends TSchema> = Record<StaticSchema<TKey> & (string | number), StaticSchema<TValue>>;
174
175
  type StaticUnion<T extends ReadonlyArray<TSchema>> = StaticSchema<T[number]>;
175
176
  type TStaticParameters<T extends ReadonlyArray<TSchema>> = number extends T["length"] ? Array<StaticSchema<T[number]>> : T extends readonly [...infer TRest extends ReadonlyArray<TSchema>, infer TLast extends TSchema] ? TLast extends {
176
177
  optional: true;
@@ -212,6 +213,28 @@ declare const LogicUtil: {
212
213
  required<TTarget extends TObject>(target: TTarget): TTransformedObject<TTarget, TRequiredProperties<TTarget["properties"]>>;
213
214
  };
214
215
  //#endregion
216
+ //#region src/logic/interface.d.ts
217
+ type TInterfaceConstantValue = string | number | boolean | object;
218
+ type TInterfaceConstantConfig<TEditor = unknown> = {
219
+ build?: {
220
+ generate?: (code: string) => string;
221
+ imports?: Array<{
222
+ name: string;
223
+ target: string;
224
+ }>;
225
+ };
226
+ editor?: TEditor;
227
+ parse?: (value: TInterfaceConstantValue) => unknown;
228
+ schema?: TSchema;
229
+ serialize?: (instance: unknown) => TInterfaceConstantValue;
230
+ };
231
+ type TInterfaceConfig<TEditor = unknown> = {
232
+ class?: new (...args: Array<unknown>) => unknown;
233
+ constant?: TInterfaceConstantConfig<TEditor>;
234
+ extends?: Array<string>;
235
+ name: string;
236
+ };
237
+ //#endregion
215
238
  //#region src/logic/node.d.ts
216
239
  type Component = {
217
240
  name: string;
@@ -234,13 +257,14 @@ type TNodeDisplay = {
234
257
  back?: string | IconDefinition;
235
258
  data?: {
236
259
  size?: {
237
- x: number;
238
- y: number;
260
+ x?: number;
261
+ y?: number;
239
262
  };
240
263
  };
241
264
  fixed?: boolean;
242
265
  headerless?: boolean;
243
266
  hoverable?: boolean;
267
+ hue?: number;
244
268
  icon?: string | IconDefinition;
245
269
  inspector?: string;
246
270
  interfaceBelow?: boolean;
@@ -257,6 +281,7 @@ type TNodeDisplay = {
257
281
  inspector?: string;
258
282
  interface?: Component | string;
259
283
  name?: string;
284
+ onDoubleClick?: () => void | Promise<void>;
260
285
  priority?: number;
261
286
  };
262
287
  type TNodeConfigDescriptor = Record<string, TSchema>;
@@ -300,6 +325,7 @@ type TDocumentation = {
300
325
  description: string;
301
326
  name: string;
302
327
  }>;
328
+ short?: string;
303
329
  };
304
330
  type TOnlyExecOf<TNodeInterfaceDescriptor> = { [TAnchor in keyof TNodeInterfaceDescriptor as TNodeInterfaceDescriptor[TAnchor] extends TExec ? TAnchor : never]: TNodeInterfaceDescriptor[TAnchor]; };
305
331
  type TOnlyVarsOf<TNodeInterfaceDescriptor> = { [TAnchor in keyof TNodeInterfaceDescriptor as TNodeInterfaceDescriptor[TAnchor] extends TExec ? never : TAnchor]: TNodeInterfaceDescriptor[TAnchor]; };
@@ -398,4 +424,4 @@ type TLogicNode = {
398
424
  };
399
425
  declare function makeLogicNode<TInputs extends TNodeInterfaceDescriptor, TOutputs extends TNodeInterfaceDescriptor, TConfig extends TNodeConfigDescriptor>(node: TNodeDescriptor<TInputs, TOutputs, TConfig>): TLogicNode;
400
426
  //#endregion
401
- export { LogicUtil as a, TObject as c, makeLogicNode as d, CVector as f, TVector as h, LogicType as i, TSchema as l, MaybePromise as m, ELogicType as n, Static as o, DeepPartial as p, EVarType as r, TLogicNode as s, ELogicScope as t, TVoid as u };
427
+ export { TVector as _, LogicUtil as a, TInterfaceConstantValue as c, TSchema as d, TVoid as f, MaybePromise as g, DeepPartial as h, LogicType as i, TLogicNode as l, CVector as m, ELogicType as n, Static as o, makeLogicNode as p, EVarType as r, TInterfaceConfig as s, ELogicScope as t, TObject as u };
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
- import { a as LogicUtil, c as TObject, d as makeLogicNode, f as CVector, h as TVector, i as LogicType, l as TSchema, m as MaybePromise, n as ELogicType, o as Static, p as DeepPartial, r as EVarType, s as TLogicNode, t as ELogicScope, u as TVoid } from "./index-DQhxmFHB.mjs";
1
+ import { _ as TVector, a as LogicUtil, c as TInterfaceConstantValue, d as TSchema, f as TVoid, g as MaybePromise, h as DeepPartial, i as LogicType, l as TLogicNode, m as CVector, n as ELogicType, o as Static, p as makeLogicNode, r as EVarType, s as TInterfaceConfig, t as ELogicScope, u as TObject } from "./index-76yMHag4.mjs";
2
2
  import "typescript";
3
- import { Component, ComputedRef } from "vue";
3
+ import { Component, ComputedRef, Directive } from "vue";
4
4
  import "@sinclair/typebox";
5
5
  import { IconDefinition } from "@fortawesome/fontawesome-svg-core";
6
6
  import { Cron } from "lite-cron";
@@ -113,6 +113,23 @@ type THookParams = {
113
113
  };
114
114
  };
115
115
  //#endregion
116
+ //#region src/types/interface.d.ts
117
+ type TInterface = TInterfaceConfig<Component> & {
118
+ arguments?: Array<TSchema>;
119
+ description?: string;
120
+ methods?: Array<{
121
+ name: string;
122
+ parameters?: Array<TSchema>;
123
+ return: TSchema;
124
+ }>;
125
+ };
126
+ type TInterfaceEditorProps = {
127
+ anchor?: boolean;
128
+ modelValue?: TInterfaceConstantValue;
129
+ placeholder?: string;
130
+ schema: TSchema;
131
+ };
132
+ //#endregion
116
133
  //#region ../logic-dts/dist/nodes.d.ts
117
134
  type TExportNodeFunction = {
118
135
  name?: string;
@@ -129,7 +146,7 @@ type TExportNodeResult = {
129
146
  types: Record<string, TSchema>;
130
147
  };
131
148
  //#endregion
132
- //#region ../shared/dist/index-D4yemxKH.d.mts
149
+ //#region ../shared/dist/index-BWE-Rute.d.mts
133
150
  //#endregion
134
151
  //#region src/types/editor/wire.d.ts
135
152
  declare class CPathPoint {
@@ -158,7 +175,7 @@ declare class CWire {
158
175
  get type(): TSchema;
159
176
  get toType(): TSchema;
160
177
  getPoints(): string;
161
- registerRibbon(path: TPath): void;
178
+ getPath(): TPath;
162
179
  }
163
180
  type TWire<TExport extends boolean = false> = TExport extends true ? {
164
181
  from: {
@@ -401,6 +418,7 @@ type TLayoutSchema<TElement extends ELayoutElement = ELayoutElement, TExport ext
401
418
  element: TInnerElement;
402
419
  events: Record<string, Record<string, TLayoutEventParameter<TExport>>>;
403
420
  models?: Record<string, Array<string>>;
421
+ plugins?: Record<string, Record<string, TMaybeDynamicVariable<TExport>>>;
404
422
  properties: Record<string, TMaybeDynamicVariable<TExport>>;
405
423
  style: TLayoutStyle<TExport>;
406
424
  tag?: string;
@@ -466,8 +484,11 @@ type TApplicationConfig = {
466
484
  };
467
485
  description?: string;
468
486
  desktop: {
487
+ appleTeamId?: string;
488
+ backendUrl?: string;
469
489
  fullscreen: boolean;
470
490
  height: number;
491
+ identifier?: string;
471
492
  resizable: boolean;
472
493
  version: string;
473
494
  width: number;
@@ -505,8 +526,29 @@ type TApplicationConfig = {
505
526
  web: {
506
527
  history: EHistoryMode;
507
528
  pwa: boolean;
529
+ pwaConfig?: TApplicationPwaConfig;
508
530
  };
509
531
  };
532
+ declare enum EPwaDisplay {
533
+ Standalone = "standalone",
534
+ Fullscreen = "fullscreen",
535
+ MinimalUi = "minimal-ui",
536
+ Browser = "browser"
537
+ }
538
+ declare enum EPwaOrientation {
539
+ Any = "any",
540
+ Portrait = "portrait",
541
+ Landscape = "landscape"
542
+ }
543
+ type TApplicationPwaConfig = {
544
+ backgroundColor: string;
545
+ description: string;
546
+ display: EPwaDisplay;
547
+ icon: string;
548
+ orientation: EPwaOrientation;
549
+ shortName: string;
550
+ themeColor: string;
551
+ };
510
552
  type TFile<TExport extends boolean = false> = TFolder<TExport> | TFileComponent<TExport> | TFileConfig<TExport> | TFileCron<TExport> | TFileDatabase<TExport> | TFileRoute<TExport> | TFileScript<TExport> | TFileStore<TExport> | TFileText<TExport> | TFileType<TExport> | TFileMedia<TExport>;
511
553
  //#endregion
512
554
  //#region src/types/files/folder.d.ts
@@ -639,7 +681,7 @@ type TNodeData = {
639
681
  number: number;
640
682
  };
641
683
  optionals?: Record<string, boolean>;
642
- size?: TVector;
684
+ size?: Partial<TVector>;
643
685
  } & Record<string, unknown>;
644
686
  declare class CNode {
645
687
  id: string;
@@ -676,6 +718,7 @@ declare class CNode {
676
718
  getRelativeAnchorLocation(anchor: CNodeAnchor): CVector;
677
719
  getRelativeAnchorLocation_internal(anchor: CNodeAnchor): CVector;
678
720
  getLocation(): CVector;
721
+ getHeaderHeight(): number;
679
722
  getSize(): TVector;
680
723
  execute(outputKey: string, stack?: TStack): MaybePromise<void>;
681
724
  get isAsync(): boolean;
@@ -913,16 +956,38 @@ type TValue<TExport extends boolean = false> = TExport extends false ? {
913
956
  schema: TSchema;
914
957
  } : TSchema;
915
958
  //#endregion
916
- //#region src/types/interface.d.ts
917
- type TInterface = {
918
- arguments?: Array<TSchema>;
919
- class?: new (...args: Array<unknown>) => unknown;
920
- methods?: Array<{
921
- name: string;
922
- parameters?: Array<TSchema>;
923
- return: TSchema;
924
- }>;
925
- name: string;
959
+ //#region src/types/panel.d.ts
960
+ type TElementPanelAction = {
961
+ icon: IconDefinition;
962
+ onClick: (params: {
963
+ getElements: () => Array<HTMLElement>;
964
+ schema: TLayoutSchema;
965
+ }) => void;
966
+ title: string;
967
+ };
968
+ type TElementPanel = {
969
+ actions?: Array<TElementPanelAction>;
970
+ component?: Component;
971
+ directive?: {
972
+ build: {
973
+ from: string;
974
+ name: `v${string}`;
975
+ };
976
+ value: Directive;
977
+ };
978
+ filter?: (schema: TLayoutSchema) => boolean;
979
+ icon?: IconDefinition;
980
+ id: string;
981
+ label: string;
982
+ properties?: Record<string, TSchema>;
983
+ };
984
+ type TElementPanelProps<TValues = Record<string, unknown>> = {
985
+ getElements: () => Array<HTMLElement>;
986
+ modelValue: TValues;
987
+ schema: TLayoutSchema;
988
+ };
989
+ type TPanels = {
990
+ element?: Array<TElementPanel>;
926
991
  };
927
992
  //#endregion
928
993
  //#region src/types/template.d.ts
@@ -986,6 +1051,7 @@ type TBasePlugin<TConfig extends TSchema = TSchema, TInternals = unknown> = {
986
1051
  inputs?: Record<string, Component>;
987
1052
  interfaces?: Array<TInterface>;
988
1053
  nodes?: Array<TLogicNode>;
1054
+ panel?: TPanels;
989
1055
  templates?: Array<TTemplate>;
990
1056
  tokens?: Array<TToken>;
991
1057
  wrapper?: TComponent & {
@@ -1042,4 +1108,4 @@ export declare function makeComponent<TProps extends Record<string, TSchema>>(co
1042
1108
  export declare function loadPlugin<TConfig extends TSchema, TInternal>(plugin: TPlugin<TConfig, TInternal>, env: Partial<TEnv>): Promise<TBasePlugin<TConfig, TInternal>>;
1043
1109
  export declare function getPluginParam<T>(target: TOption<TEnv, T>, env: Partial<TEnv>): Promise<T>;
1044
1110
  //#endregion
1045
- export { EElementType, ELogicScope, ELogicType, EVarType, _default as LSettingsStoryWrapper, LogicType, LogicUtil, type Static, type TAnyLogic, type TApplication, type TBasePlugin, type TComponent, type TDatabaseCondition, type TEnv, type TFile, type TFileComponent, type TFileConfig, type TFileCron, type TFileDatabase, type TFileMedia, type TFileRoute, type TFileScript, type TFileStore, type TFileText, type TFileType, type TFolder, type THookParams, type TLogic, type TLogicMain, type TLogicNode, type TOption, type TPlugin, type TProxyPlugin, type TRouteGuard, type TSchema, type TSlot, type TTemplate, type TToken, makeLogicNode };
1111
+ export { EElementType, ELogicScope, ELogicType, EVarType, _default as LSettingsStoryWrapper, LogicType, LogicUtil, type Static, type TAnyLogic, type TApplication, type TBasePlugin, type TComponent, type TDatabaseCondition, type TElementPanel, type TElementPanelAction, type TElementPanelProps, type TEnv, type TFile, type TFileComponent, type TFileConfig, type TFileCron, type TFileDatabase, type TFileMedia, type TFileRoute, type TFileScript, type TFileStore, type TFileText, type TFileType, type TFolder, type THookParams, type TInterface, type TInterfaceEditorProps, type TLayoutSchema, type TLogic, type TLogicMain, type TLogicNode, type TOption, type TPanels, type TPlugin, type TProxyPlugin, type TRouteGuard, type TSchema, type TSlot, type TTemplate, type TToken, makeLogicNode };
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { a as LogicUtil, i as LogicType, n as ELogicType, o as makeLogicNode, r as EVarType, t as ELogicScope, u as cloneWithFunctions } from "./dist-Cnje_ZD3.mjs";
1
+ import { a as LogicUtil, i as LogicType, n as ELogicType, o as makeLogicNode, r as EVarType, t as ELogicScope, u as cloneWithFunctions } from "./dist-BoFOku7q.mjs";
2
2
  import { createElementBlock, openBlock, renderSlot } from "vue";
3
3
  import { Type } from "@sinclair/typebox";
4
4
  //#region \0/plugin-vue/export-helper
@@ -185,9 +185,7 @@ let EPlanKey = /* @__PURE__ */ function(EPlanKey) {
185
185
  const flags = {
186
186
  free: {
187
187
  compilation: {
188
- desktop: false,
189
188
  export: true,
190
- mobile: false,
191
189
  source: false,
192
190
  web: true
193
191
  },
@@ -195,13 +193,15 @@ const flags = {
195
193
  desktop: false,
196
194
  web: true
197
195
  },
196
+ desktop: { compilation: {
197
+ desktop: false,
198
+ mobile: false
199
+ } },
198
200
  watermark: true
199
201
  },
200
202
  pro: {
201
203
  compilation: {
202
- desktop: true,
203
204
  export: true,
204
- mobile: true,
205
205
  source: true,
206
206
  web: true
207
207
  },
@@ -209,6 +209,10 @@ const flags = {
209
209
  desktop: true,
210
210
  web: true
211
211
  },
212
+ desktop: { compilation: {
213
+ desktop: true,
214
+ mobile: true
215
+ } },
212
216
  watermark: false
213
217
  }
214
218
  };
@@ -217,6 +221,10 @@ const user = Type.Object({
217
221
  id: Type.Optional(Type.String()),
218
222
  auth: Type.Optional(Type.Object({})),
219
223
  mail: Type.String(),
224
+ terms: Type.Optional(Type.Object({
225
+ version: Type.Union([Type.String(), Type.Null()]),
226
+ acceptedAt: Type.Union([Type.String(), Type.Null()])
227
+ })),
220
228
  plan: Type.Object({ name: Type.Enum(EPlanKey) }),
221
229
  profile: Type.Object({
222
230
  other: Type.Object({
@@ -385,19 +393,11 @@ const build = {
385
393
  };
386
394
  const compile$1 = {
387
395
  type: "post",
388
- body: Type.Object({
389
- platform: Type.Optional(Type.Union([
390
- Type.Literal("win32"),
391
- Type.Literal("darwin"),
392
- Type.Literal("linux")
393
- ])),
394
- target: Type.Union([
395
- Type.Literal("source"),
396
- Type.Literal("export"),
397
- Type.Literal("web"),
398
- Type.Literal("desktop")
399
- ])
400
- }),
396
+ body: Type.Object({ target: Type.Union([
397
+ Type.Literal("source"),
398
+ Type.Literal("export"),
399
+ Type.Literal("web")
400
+ ]) }),
401
401
  params: Type.Object({ id: Type.String() }),
402
402
  response: { 200: Type.Object({
403
403
  message: Type.String(),
@@ -409,22 +409,10 @@ const download = {
409
409
  type: "get",
410
410
  params: Type.Object({
411
411
  id: Type.String(),
412
- platform: Type.Optional(Type.Union([
413
- Type.Literal("win32-installer"),
414
- Type.Literal("darwin-installer"),
415
- Type.Literal("linux-installer"),
416
- Type.Literal("win32-portable"),
417
- Type.Literal("darwin-portable"),
418
- Type.Literal("linux-portable")
419
- ])),
420
- target: Type.Union([
421
- Type.Literal("source"),
422
- Type.Literal("export"),
423
- Type.Literal("desktop")
424
- ])
412
+ target: Type.Union([Type.Literal("source"), Type.Literal("export")])
425
413
  }),
426
414
  response: { 200: Type.Unknown() },
427
- url: "/compiler/download/:id/:target/:platform?"
415
+ url: "/compiler/download/:id/:target"
428
416
  };
429
417
  var desktop_exports = /* @__PURE__ */ __exportAll({ latest: () => latest });
430
418
  const latest = {
@@ -811,6 +799,7 @@ const tick = {
811
799
  url: "/turnstile/tick"
812
800
  };
813
801
  var user_exports = /* @__PURE__ */ __exportAll({
802
+ acceptTerms: () => acceptTerms,
814
803
  confirmAccountDeletion: () => confirmAccountDeletion,
815
804
  disconnect: () => disconnect,
816
805
  get: () => get,
@@ -833,6 +822,12 @@ const get = {
833
822
  response: { 200: types.user },
834
823
  url: "/user"
835
824
  };
825
+ const acceptTerms = {
826
+ type: "post",
827
+ body: Type.Object({ termsVersion: Type.String() }),
828
+ response: { 200: Type.Object({ message: Type.String() }) },
829
+ url: "/user/terms/accept"
830
+ };
836
831
  const update = {
837
832
  type: "post",
838
833
  body: Type.Partial(types.user),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luna-park/plugin",
3
- "version": "1.5.1",
3
+ "version": "1.7.0",
4
4
  "private": false,
5
5
  "description": "Plugin helper for Luna Park.",
6
6
  "homepage": "https://luna-park.app",
@@ -18,6 +18,10 @@
18
18
  "types": "./dist/index.d.mts",
19
19
  "import": "./dist/index.mjs"
20
20
  },
21
+ "./eslint": {
22
+ "types": "./dist/eslint.d.mts",
23
+ "import": "./dist/eslint.mjs"
24
+ },
21
25
  "./extractor": {
22
26
  "types": "./dist/extractor.d.mts",
23
27
  "import": "./dist/extractor.mjs"