@start9labs/start-sdk 0.4.0-beta.2 → 0.4.0-beta.21
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/base/lib/Effects.d.ts +4 -22
- package/base/lib/actions/index.d.ts +5 -5
- package/base/lib/actions/index.js.map +1 -1
- package/base/lib/actions/input/builder/inputSpec.d.ts +10 -25
- package/base/lib/actions/input/builder/inputSpec.js +0 -17
- package/base/lib/actions/input/builder/inputSpec.js.map +1 -1
- package/base/lib/actions/input/builder/list.d.ts +8 -23
- package/base/lib/actions/input/builder/list.js +0 -17
- package/base/lib/actions/input/builder/list.js.map +1 -1
- package/base/lib/actions/input/builder/value.d.ts +318 -53
- package/base/lib/actions/input/builder/value.js +280 -17
- package/base/lib/actions/input/builder/value.js.map +1 -1
- package/base/lib/actions/input/builder/variants.d.ts +8 -23
- package/base/lib/actions/input/builder/variants.js +0 -17
- package/base/lib/actions/input/builder/variants.js.map +1 -1
- package/base/lib/actions/input/inputSpecConstants.d.ts +6 -6
- package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
- package/base/lib/actions/setupActions.d.ts +10 -11
- package/base/lib/actions/setupActions.js +24 -11
- package/base/lib/actions/setupActions.js.map +1 -1
- package/base/lib/dependencies/setupDependencies.d.ts +1 -3
- package/base/lib/dependencies/setupDependencies.js +3 -12
- package/base/lib/dependencies/setupDependencies.js.map +1 -1
- package/base/lib/index.d.ts +1 -0
- package/base/lib/index.js +2 -1
- package/base/lib/index.js.map +1 -1
- package/base/lib/inits/index.d.ts +2 -0
- package/base/lib/inits/index.js +19 -0
- package/base/lib/inits/index.js.map +1 -0
- package/base/lib/inits/setupInit.d.ts +11 -0
- package/base/lib/inits/setupInit.js +69 -0
- package/base/lib/inits/setupInit.js.map +1 -0
- package/base/lib/inits/setupUninit.d.ts +7 -0
- package/base/lib/inits/setupUninit.js +14 -0
- package/base/lib/inits/setupUninit.js.map +1 -0
- package/base/lib/interfaces/setupInterfaces.d.ts +2 -4
- package/base/lib/interfaces/setupInterfaces.js +8 -19
- package/base/lib/interfaces/setupInterfaces.js.map +1 -1
- package/base/lib/osBindings/AddCategoryParams.d.ts +0 -2
- package/base/lib/osBindings/AddPackageToCategoryParams.d.ts +5 -0
- package/base/lib/osBindings/AddPackageToCategoryParams.js +3 -0
- package/base/lib/osBindings/AddPackageToCategoryParams.js.map +1 -0
- package/base/lib/osBindings/Category.d.ts +0 -2
- package/base/lib/osBindings/Category.js +1 -0
- package/base/lib/osBindings/Category.js.map +1 -1
- package/base/lib/osBindings/FileType.d.ts +1 -0
- package/base/lib/osBindings/{UnsetPublicParams.js → FileType.js} +1 -1
- package/base/lib/osBindings/FileType.js.map +1 -0
- package/base/lib/osBindings/GetOsVersionParams.d.ts +4 -3
- package/base/lib/osBindings/GetPackageParams.d.ts +1 -1
- package/base/lib/osBindings/MainStatus.d.ts +0 -2
- package/base/lib/osBindings/MountTarget.d.ts +2 -0
- package/base/lib/osBindings/PackageDataEntry.d.ts +1 -2
- package/base/lib/osBindings/RemoveAdminParams.d.ts +4 -0
- package/base/lib/osBindings/RemoveAdminParams.js +3 -0
- package/base/lib/osBindings/RemoveAdminParams.js.map +1 -0
- package/base/lib/osBindings/RemoveAssetParams.d.ts +4 -0
- package/base/lib/osBindings/{NetworkInterfaceSetPublicParams.js → RemoveAssetParams.js} +1 -1
- package/base/lib/osBindings/RemoveAssetParams.js.map +1 -0
- package/base/lib/osBindings/RemovePackageFromCategoryParams.d.ts +5 -0
- package/base/lib/osBindings/RemovePackageFromCategoryParams.js +3 -0
- package/base/lib/osBindings/RemovePackageFromCategoryParams.js.map +1 -0
- package/base/lib/osBindings/RemovePackageParams.d.ts +6 -0
- package/base/lib/osBindings/RemovePackageParams.js +3 -0
- package/base/lib/osBindings/RemovePackageParams.js.map +1 -0
- package/base/lib/osBindings/index.d.ts +6 -3
- package/base/lib/types.d.ts +20 -33
- package/base/lib/types.js +8 -0
- package/base/lib/types.js.map +1 -1
- package/base/lib/util/GetSystemSmtp.js +7 -2
- package/base/lib/util/GetSystemSmtp.js.map +1 -1
- package/base/lib/util/getServiceInterface.d.ts +10 -0
- package/base/lib/util/getServiceInterface.js +41 -1
- package/base/lib/util/getServiceInterface.js.map +1 -1
- package/base/lib/util/getServiceInterfaces.js +6 -1
- package/base/lib/util/getServiceInterfaces.js.map +1 -1
- package/base/lib/util/index.d.ts +0 -1
- package/base/lib/util/index.js +1 -3
- package/base/lib/util/index.js.map +1 -1
- package/package/lib/StartSdk.d.ts +106 -546
- package/package/lib/StartSdk.js +81 -410
- package/package/lib/StartSdk.js.map +1 -1
- package/package/lib/backup/Backups.d.ts +15 -3
- package/package/lib/backup/Backups.js +47 -5
- package/package/lib/backup/Backups.js.map +1 -1
- package/package/lib/backup/setupBackups.d.ts +5 -2
- package/package/lib/backup/setupBackups.js +7 -5
- package/package/lib/backup/setupBackups.js.map +1 -1
- package/package/lib/health/HealthCheck.js +1 -1
- package/package/lib/health/HealthCheck.js.map +1 -1
- package/package/lib/health/checkFns/runHealthScript.d.ts +2 -1
- package/package/lib/health/checkFns/runHealthScript.js +1 -1
- package/package/lib/health/checkFns/runHealthScript.js.map +1 -1
- package/package/lib/index.d.ts +0 -3
- package/package/lib/index.js +1 -8
- package/package/lib/index.js.map +1 -1
- package/package/lib/inits/index.d.ts +2 -3
- package/package/lib/inits/index.js +16 -3
- package/package/lib/inits/index.js.map +1 -1
- package/package/lib/inits/setupInit.d.ts +7 -13
- package/package/lib/inits/setupInit.js +22 -48
- package/package/lib/inits/setupInit.js.map +1 -1
- package/package/lib/inits/setupInstall.d.ts +10 -10
- package/package/lib/inits/setupInstall.js.map +1 -1
- package/package/lib/inits/setupUninit.d.ts +7 -0
- package/package/lib/inits/setupUninit.js +14 -0
- package/package/lib/inits/setupUninit.js.map +1 -0
- package/package/lib/inits/setupUninstall.d.ts +5 -5
- package/package/lib/inits/setupUninstall.js.map +1 -1
- package/package/lib/mainFn/CommandController.d.ts +4 -13
- package/package/lib/mainFn/CommandController.js +28 -49
- package/package/lib/mainFn/CommandController.js.map +1 -1
- package/package/lib/mainFn/Daemon.d.ts +13 -14
- package/package/lib/mainFn/Daemon.js +44 -12
- package/package/lib/mainFn/Daemon.js.map +1 -1
- package/package/lib/mainFn/Daemons.d.ts +34 -33
- package/package/lib/mainFn/Daemons.js +30 -10
- package/package/lib/mainFn/Daemons.js.map +1 -1
- package/package/lib/mainFn/HealthDaemon.d.ts +6 -6
- package/package/lib/mainFn/HealthDaemon.js +30 -14
- package/package/lib/mainFn/HealthDaemon.js.map +1 -1
- package/package/lib/mainFn/Mounts.d.ts +38 -43
- package/package/lib/mainFn/Mounts.js +19 -48
- package/package/lib/mainFn/Mounts.js.map +1 -1
- package/package/lib/mainFn/Oneshot.d.ts +21 -0
- package/package/lib/mainFn/Oneshot.js +31 -0
- package/package/lib/mainFn/Oneshot.js.map +1 -0
- package/package/lib/mainFn/index.d.ts +1 -1
- package/package/lib/store/getStore.js +7 -2
- package/package/lib/store/getStore.js.map +1 -1
- package/package/lib/test/inputSpecBuilder.test.js +0 -8
- package/package/lib/test/inputSpecBuilder.test.js.map +1 -1
- package/package/lib/test/output.d.ts +2 -38
- package/package/lib/test/output.sdk.d.ts +239 -887
- package/package/lib/test/output.sdk.js +0 -1
- package/package/lib/test/output.sdk.js.map +1 -1
- package/package/lib/util/Drop.d.ts +1 -0
- package/package/lib/util/Drop.js +17 -4
- package/package/lib/util/Drop.js.map +1 -1
- package/package/lib/util/GetSslCertificate.js +7 -2
- package/package/lib/util/GetSslCertificate.js.map +1 -1
- package/package/lib/util/SubContainer.d.ts +160 -44
- package/package/lib/util/SubContainer.js +215 -99
- package/package/lib/util/SubContainer.js.map +1 -1
- package/package/lib/util/fileHelper.d.ts +41 -15
- package/package/lib/util/fileHelper.js +72 -27
- package/package/lib/util/fileHelper.js.map +1 -1
- package/package/lib/version/VersionGraph.d.ts +20 -5
- package/package/lib/version/VersionGraph.js +85 -18
- package/package/lib/version/VersionGraph.js.map +1 -1
- package/package.json +10 -11
- package/base/lib/osBindings/NetworkInterfaceSetPublicParams.d.ts +0 -4
- package/base/lib/osBindings/NetworkInterfaceSetPublicParams.js.map +0 -1
- package/base/lib/osBindings/UnsetPublicParams.d.ts +0 -3
- package/base/lib/osBindings/UnsetPublicParams.js.map +0 -1
|
@@ -16,6 +16,22 @@ class Value {
|
|
|
16
16
|
this._TYPE = null;
|
|
17
17
|
this._PARTIAL = null;
|
|
18
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* @description Displays a boolean toggle to enable/disable
|
|
21
|
+
* @example
|
|
22
|
+
* ```
|
|
23
|
+
toggleExample: Value.toggle({
|
|
24
|
+
// required
|
|
25
|
+
name: 'Toggle Example',
|
|
26
|
+
default: true,
|
|
27
|
+
|
|
28
|
+
// optional
|
|
29
|
+
description: null,
|
|
30
|
+
warning: null,
|
|
31
|
+
immutable: false,
|
|
32
|
+
}),
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
19
35
|
static toggle(a) {
|
|
20
36
|
return new Value(async () => ({
|
|
21
37
|
description: null,
|
|
@@ -36,6 +52,30 @@ class Value {
|
|
|
36
52
|
...(await a(options)),
|
|
37
53
|
}), ts_matches_1.boolean);
|
|
38
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* @description Displays a text input field
|
|
57
|
+
* @example
|
|
58
|
+
* ```
|
|
59
|
+
textExample: Value.text({
|
|
60
|
+
// required
|
|
61
|
+
name: 'Text Example',
|
|
62
|
+
required: false,
|
|
63
|
+
default: null,
|
|
64
|
+
|
|
65
|
+
// optional
|
|
66
|
+
description: null,
|
|
67
|
+
placeholder: null,
|
|
68
|
+
warning: null,
|
|
69
|
+
generate: null,
|
|
70
|
+
inputmode: 'text',
|
|
71
|
+
masked: false,
|
|
72
|
+
minLength: null,
|
|
73
|
+
maxLength: null,
|
|
74
|
+
patterns: [],
|
|
75
|
+
immutable: false,
|
|
76
|
+
}),
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
39
79
|
static text(a) {
|
|
40
80
|
return new Value(async () => ({
|
|
41
81
|
type: "text",
|
|
@@ -73,6 +113,26 @@ class Value {
|
|
|
73
113
|
};
|
|
74
114
|
}, ts_matches_1.string.nullable());
|
|
75
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* @description Displays a large textarea field for long form entry.
|
|
118
|
+
* @example
|
|
119
|
+
* ```
|
|
120
|
+
textareaExample: Value.textarea({
|
|
121
|
+
// required
|
|
122
|
+
name: 'Textarea Example',
|
|
123
|
+
required: false,
|
|
124
|
+
default: null,
|
|
125
|
+
|
|
126
|
+
// optional
|
|
127
|
+
description: null,
|
|
128
|
+
placeholder: null,
|
|
129
|
+
warning: null,
|
|
130
|
+
minLength: null,
|
|
131
|
+
maxLength: null,
|
|
132
|
+
immutable: false,
|
|
133
|
+
}),
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
76
136
|
static textarea(a) {
|
|
77
137
|
return new Value(async () => {
|
|
78
138
|
const built = {
|
|
@@ -105,6 +165,29 @@ class Value {
|
|
|
105
165
|
};
|
|
106
166
|
}, ts_matches_1.string.nullable());
|
|
107
167
|
}
|
|
168
|
+
/**
|
|
169
|
+
* @description Displays a number input field
|
|
170
|
+
* @example
|
|
171
|
+
* ```
|
|
172
|
+
numberExample: Value.number({
|
|
173
|
+
// required
|
|
174
|
+
name: 'Number Example',
|
|
175
|
+
required: false,
|
|
176
|
+
default: null,
|
|
177
|
+
integer: true,
|
|
178
|
+
|
|
179
|
+
// optional
|
|
180
|
+
description: null,
|
|
181
|
+
placeholder: null,
|
|
182
|
+
warning: null,
|
|
183
|
+
min: null,
|
|
184
|
+
max: null,
|
|
185
|
+
immutable: false,
|
|
186
|
+
step: null,
|
|
187
|
+
units: null,
|
|
188
|
+
}),
|
|
189
|
+
* ```
|
|
190
|
+
*/
|
|
108
191
|
static number(a) {
|
|
109
192
|
return new Value(() => ({
|
|
110
193
|
type: "number",
|
|
@@ -138,6 +221,23 @@ class Value {
|
|
|
138
221
|
};
|
|
139
222
|
}, ts_matches_1.number.nullable());
|
|
140
223
|
}
|
|
224
|
+
/**
|
|
225
|
+
* @description Displays a browser-native color selector.
|
|
226
|
+
* @example
|
|
227
|
+
* ```
|
|
228
|
+
colorExample: Value.color({
|
|
229
|
+
// required
|
|
230
|
+
name: 'Color Example',
|
|
231
|
+
required: false,
|
|
232
|
+
default: null,
|
|
233
|
+
|
|
234
|
+
// optional
|
|
235
|
+
description: null,
|
|
236
|
+
warning: null,
|
|
237
|
+
immutable: false,
|
|
238
|
+
}),
|
|
239
|
+
* ```
|
|
240
|
+
*/
|
|
141
241
|
static color(a) {
|
|
142
242
|
return new Value(() => ({
|
|
143
243
|
type: "color",
|
|
@@ -161,6 +261,26 @@ class Value {
|
|
|
161
261
|
};
|
|
162
262
|
}, ts_matches_1.string.nullable());
|
|
163
263
|
}
|
|
264
|
+
/**
|
|
265
|
+
* @description Displays a browser-native date/time selector.
|
|
266
|
+
* @example
|
|
267
|
+
* ```
|
|
268
|
+
datetimeExample: Value.datetime({
|
|
269
|
+
// required
|
|
270
|
+
name: 'Datetime Example',
|
|
271
|
+
required: false,
|
|
272
|
+
default: null,
|
|
273
|
+
|
|
274
|
+
// optional
|
|
275
|
+
description: null,
|
|
276
|
+
warning: null,
|
|
277
|
+
immutable: false,
|
|
278
|
+
inputmode: 'datetime-local',
|
|
279
|
+
min: null,
|
|
280
|
+
max: null,
|
|
281
|
+
}),
|
|
282
|
+
* ```
|
|
283
|
+
*/
|
|
164
284
|
static datetime(a) {
|
|
165
285
|
return new Value(() => ({
|
|
166
286
|
type: "datetime",
|
|
@@ -191,6 +311,27 @@ class Value {
|
|
|
191
311
|
};
|
|
192
312
|
}, ts_matches_1.string.nullable());
|
|
193
313
|
}
|
|
314
|
+
/**
|
|
315
|
+
* @description Displays a select modal with radio buttons, allowing for a single selection.
|
|
316
|
+
* @example
|
|
317
|
+
* ```
|
|
318
|
+
selectExample: Value.select({
|
|
319
|
+
// required
|
|
320
|
+
name: 'Select Example',
|
|
321
|
+
default: 'radio1',
|
|
322
|
+
values: {
|
|
323
|
+
radio1: 'Radio 1',
|
|
324
|
+
radio2: 'Radio 2',
|
|
325
|
+
},
|
|
326
|
+
|
|
327
|
+
// optional
|
|
328
|
+
description: null,
|
|
329
|
+
warning: null,
|
|
330
|
+
immutable: false,
|
|
331
|
+
disabled: false,
|
|
332
|
+
}),
|
|
333
|
+
* ```
|
|
334
|
+
*/
|
|
194
335
|
static select(a) {
|
|
195
336
|
return new Value(() => ({
|
|
196
337
|
description: null,
|
|
@@ -214,6 +355,29 @@ class Value {
|
|
|
214
355
|
};
|
|
215
356
|
}, ts_matches_1.string);
|
|
216
357
|
}
|
|
358
|
+
/**
|
|
359
|
+
* @description Displays a select modal with checkboxes, allowing for multiple selections.
|
|
360
|
+
* @example
|
|
361
|
+
* ```
|
|
362
|
+
multiselectExample: Value.multiselect({
|
|
363
|
+
// required
|
|
364
|
+
name: 'Multiselect Example',
|
|
365
|
+
values: {
|
|
366
|
+
option1: 'Option 1',
|
|
367
|
+
option2: 'Option 2',
|
|
368
|
+
},
|
|
369
|
+
default: [],
|
|
370
|
+
|
|
371
|
+
// optional
|
|
372
|
+
description: null,
|
|
373
|
+
warning: null,
|
|
374
|
+
immutable: false,
|
|
375
|
+
disabled: false,
|
|
376
|
+
minlength: null,
|
|
377
|
+
maxLength: null,
|
|
378
|
+
}),
|
|
379
|
+
* ```
|
|
380
|
+
*/
|
|
217
381
|
static multiselect(a) {
|
|
218
382
|
return new Value(() => ({
|
|
219
383
|
type: "multiselect",
|
|
@@ -241,6 +405,23 @@ class Value {
|
|
|
241
405
|
};
|
|
242
406
|
}, (0, ts_matches_1.arrayOf)(ts_matches_1.string));
|
|
243
407
|
}
|
|
408
|
+
/**
|
|
409
|
+
* @description Display a collapsable grouping of additional fields, a "sub form". The second value is the inputSpec spec for the sub form.
|
|
410
|
+
* @example
|
|
411
|
+
* ```
|
|
412
|
+
objectExample: Value.object(
|
|
413
|
+
{
|
|
414
|
+
// required
|
|
415
|
+
name: 'Object Example',
|
|
416
|
+
|
|
417
|
+
// optional
|
|
418
|
+
description: null,
|
|
419
|
+
warning: null,
|
|
420
|
+
},
|
|
421
|
+
InputSpec.of({}),
|
|
422
|
+
),
|
|
423
|
+
* ```
|
|
424
|
+
*/
|
|
244
425
|
static object(a, spec) {
|
|
245
426
|
return new Value(async (options) => {
|
|
246
427
|
const built = await spec.build(options);
|
|
@@ -294,6 +475,35 @@ class Value {
|
|
|
294
475
|
// object({ filePath: string }).nullable(),
|
|
295
476
|
// )
|
|
296
477
|
// }
|
|
478
|
+
/**
|
|
479
|
+
* @description Displays a dropdown, allowing for a single selection. Depending on the selection, a different object ("sub form") is presented.
|
|
480
|
+
* @example
|
|
481
|
+
* ```
|
|
482
|
+
unionExample: Value.union(
|
|
483
|
+
{
|
|
484
|
+
// required
|
|
485
|
+
name: 'Union Example',
|
|
486
|
+
default: 'option1',
|
|
487
|
+
|
|
488
|
+
// optional
|
|
489
|
+
description: null,
|
|
490
|
+
warning: null,
|
|
491
|
+
disabled: false,
|
|
492
|
+
immutable: false,
|
|
493
|
+
},
|
|
494
|
+
Variants.of({
|
|
495
|
+
option1: {
|
|
496
|
+
name: 'Option 1',
|
|
497
|
+
spec: InputSpec.of({}),
|
|
498
|
+
},
|
|
499
|
+
option2: {
|
|
500
|
+
name: 'Option 2',
|
|
501
|
+
spec: InputSpec.of({}),
|
|
502
|
+
},
|
|
503
|
+
}),
|
|
504
|
+
),
|
|
505
|
+
* ```
|
|
506
|
+
*/
|
|
297
507
|
static union(a, aVariants) {
|
|
298
508
|
return new Value(async (options) => ({
|
|
299
509
|
type: "union",
|
|
@@ -329,9 +539,79 @@ class Value {
|
|
|
329
539
|
};
|
|
330
540
|
}, aVariants.validator);
|
|
331
541
|
}
|
|
542
|
+
/**
|
|
543
|
+
* @description Presents an interface to add/remove/edit items in a list.
|
|
544
|
+
* @example
|
|
545
|
+
* In this example, we create a list of text inputs.
|
|
546
|
+
*
|
|
547
|
+
* ```
|
|
548
|
+
listExampleText: Value.list(
|
|
549
|
+
List.text(
|
|
550
|
+
{
|
|
551
|
+
// required
|
|
552
|
+
name: 'Text List',
|
|
553
|
+
|
|
554
|
+
// optional
|
|
555
|
+
description: null,
|
|
556
|
+
warning: null,
|
|
557
|
+
default: [],
|
|
558
|
+
minLength: null,
|
|
559
|
+
maxLength: null,
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
// required
|
|
563
|
+
patterns: [],
|
|
564
|
+
|
|
565
|
+
// optional
|
|
566
|
+
placeholder: null,
|
|
567
|
+
generate: null,
|
|
568
|
+
inputmode: 'url',
|
|
569
|
+
masked: false,
|
|
570
|
+
minLength: null,
|
|
571
|
+
maxLength: null,
|
|
572
|
+
},
|
|
573
|
+
),
|
|
574
|
+
),
|
|
575
|
+
* ```
|
|
576
|
+
* @example
|
|
577
|
+
* In this example, we create a list of objects.
|
|
578
|
+
*
|
|
579
|
+
* ```
|
|
580
|
+
listExampleObject: Value.list(
|
|
581
|
+
List.obj(
|
|
582
|
+
{
|
|
583
|
+
// required
|
|
584
|
+
name: 'Object List',
|
|
585
|
+
|
|
586
|
+
// optional
|
|
587
|
+
description: null,
|
|
588
|
+
warning: null,
|
|
589
|
+
default: [],
|
|
590
|
+
minLength: null,
|
|
591
|
+
maxLength: null,
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
// required
|
|
595
|
+
spec: InputSpec.of({}),
|
|
596
|
+
|
|
597
|
+
// optional
|
|
598
|
+
displayAs: null,
|
|
599
|
+
uniqueBy: null,
|
|
600
|
+
},
|
|
601
|
+
),
|
|
602
|
+
),
|
|
603
|
+
* ```
|
|
604
|
+
*/
|
|
332
605
|
static list(a) {
|
|
333
606
|
return new Value((options) => a.build(options), a.validator);
|
|
334
607
|
}
|
|
608
|
+
/**
|
|
609
|
+
* @description Provides a way to define a hidden field with a static value. Useful for tracking
|
|
610
|
+
* @example
|
|
611
|
+
* ```
|
|
612
|
+
hiddenExample: Value.hidden(),
|
|
613
|
+
* ```
|
|
614
|
+
*/
|
|
335
615
|
static hidden(parser = ts_matches_1.any) {
|
|
336
616
|
return new Value(async () => {
|
|
337
617
|
const built = {
|
|
@@ -343,23 +623,6 @@ class Value {
|
|
|
343
623
|
map(fn) {
|
|
344
624
|
return new Value(this.build, this.validator.map(fn));
|
|
345
625
|
}
|
|
346
|
-
/**
|
|
347
|
-
* Use this during the times that the input needs a more specific type.
|
|
348
|
-
* Used in types that the value/ variant/ list/ inputSpec is constructed somewhere else.
|
|
349
|
-
```ts
|
|
350
|
-
const a = InputSpec.text({
|
|
351
|
-
name: "a",
|
|
352
|
-
required: false,
|
|
353
|
-
})
|
|
354
|
-
|
|
355
|
-
return InputSpec.of<Store>()({
|
|
356
|
-
myValue: a.withStore(),
|
|
357
|
-
})
|
|
358
|
-
```
|
|
359
|
-
*/
|
|
360
|
-
withStore() {
|
|
361
|
-
return this;
|
|
362
|
-
}
|
|
363
626
|
}
|
|
364
627
|
exports.Value = Value;
|
|
365
628
|
//# sourceMappingURL=value.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../../base/lib/actions/input/builder/value.ts"],"names":[],"mappings":";;;AAcA,wCAAuC;AACvC,
|
|
1
|
+
{"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../../base/lib/actions/input/builder/value.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,10 @@ import { DeepPartial } from "../../../types";
|
|
|
2
2
|
import { ValueSpecUnion } from "../inputSpecTypes";
|
|
3
3
|
import { LazyBuild, InputSpec, ExtractInputSpecType } from "./inputSpec";
|
|
4
4
|
import { Parser } from "ts-matches";
|
|
5
|
-
export type UnionRes<
|
|
5
|
+
export type UnionRes<VariantValues extends {
|
|
6
6
|
[K in string]: {
|
|
7
7
|
name: string;
|
|
8
|
-
spec: InputSpec<any
|
|
8
|
+
spec: InputSpec<any>;
|
|
9
9
|
};
|
|
10
10
|
}, K extends keyof VariantValues & string = keyof VariantValues & string> = {
|
|
11
11
|
[key in keyof VariantValues]: {
|
|
@@ -67,31 +67,16 @@ export const pruning = Value.union(
|
|
|
67
67
|
export declare class Variants<VariantValues extends {
|
|
68
68
|
[K in string]: {
|
|
69
69
|
name: string;
|
|
70
|
-
spec: InputSpec<any
|
|
70
|
+
spec: InputSpec<any>;
|
|
71
71
|
};
|
|
72
|
-
}
|
|
73
|
-
build: LazyBuild<
|
|
74
|
-
validator: Parser<unknown, UnionRes<
|
|
72
|
+
}> {
|
|
73
|
+
build: LazyBuild<ValueSpecUnion["variants"]>;
|
|
74
|
+
validator: Parser<unknown, UnionRes<VariantValues>>;
|
|
75
75
|
private constructor();
|
|
76
76
|
static of<VariantValues extends {
|
|
77
77
|
[K in string]: {
|
|
78
78
|
name: string;
|
|
79
|
-
spec: InputSpec<any
|
|
79
|
+
spec: InputSpec<any>;
|
|
80
80
|
};
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Use this during the times that the input needs a more specific type.
|
|
84
|
-
* Used in types that the value/ variant/ list/ inputSpec is constructed somewhere else.
|
|
85
|
-
```ts
|
|
86
|
-
const a = InputSpec.text({
|
|
87
|
-
name: "a",
|
|
88
|
-
required: false,
|
|
89
|
-
})
|
|
90
|
-
|
|
91
|
-
return InputSpec.of<Store>()({
|
|
92
|
-
myValue: a.withStore(),
|
|
93
|
-
})
|
|
94
|
-
```
|
|
95
|
-
*/
|
|
96
|
-
withStore<NewStore extends Store extends never ? any : Store>(): Variants<VariantValues, NewStore>;
|
|
81
|
+
}>(a: VariantValues): Variants<VariantValues>;
|
|
97
82
|
}
|
|
@@ -72,23 +72,6 @@ class Variants {
|
|
|
72
72
|
return variants;
|
|
73
73
|
}, validator);
|
|
74
74
|
}
|
|
75
|
-
/**
|
|
76
|
-
* Use this during the times that the input needs a more specific type.
|
|
77
|
-
* Used in types that the value/ variant/ list/ inputSpec is constructed somewhere else.
|
|
78
|
-
```ts
|
|
79
|
-
const a = InputSpec.text({
|
|
80
|
-
name: "a",
|
|
81
|
-
required: false,
|
|
82
|
-
})
|
|
83
|
-
|
|
84
|
-
return InputSpec.of<Store>()({
|
|
85
|
-
myValue: a.withStore(),
|
|
86
|
-
})
|
|
87
|
-
```
|
|
88
|
-
*/
|
|
89
|
-
withStore() {
|
|
90
|
-
return this;
|
|
91
|
-
}
|
|
92
75
|
}
|
|
93
76
|
exports.Variants = Variants;
|
|
94
77
|
//# sourceMappingURL=variants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variants.js","sourceRoot":"","sources":["../../../../../../base/lib/actions/input/builder/variants.ts"],"names":[],"mappings":";;;AAQA,2CAA2D;
|
|
1
|
+
{"version":3,"file":"variants.js","sourceRoot":"","sources":["../../../../../../base/lib/actions/input/builder/variants.ts"],"names":[],"mappings":";;;AAQA,2CAA2D;AAsB3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAa,QAAQ;IAQnB,YACS,KAA4C,EAC5C,SAAmD;QADnD,UAAK,GAAL,KAAK,CAAuC;QAC5C,cAAS,GAAT,SAAS,CAA0C;IACzD,CAAC;IACJ,MAAM,CAAC,EAAE,CAOP,CAAgB;QAChB,MAAM,SAAS,GAAG,IAAA,kBAAK,EACrB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAC1C,IAAA,mBAAM,EAAC;YACL,SAAS,EAAE,IAAA,oBAAO,EAAC,EAAE,CAAC;YACtB,KAAK,EAAE,IAAI,CAAC,SAAS;SACtB,CAAC,CACH,CACsB,CAAA;QAEzB,OAAO,IAAI,QAAQ,CAAgB,KAAK,EAAE,OAAO,EAAE,EAAE;YACnD,MAAM,QAAQ,GAAG,EAKhB,CAAA;YACD,KAAK,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;gBACpB,QAAQ,CAAC,GAAG,CAAC,GAAG;oBACd,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAc,CAAC;iBAC7C,CAAA;YACH,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC,EAAE,SAAS,CAAC,CAAA;IACf,CAAC;CACF;AA9CD,4BA8CC"}
|
|
@@ -9,20 +9,20 @@ export declare const customSmtp: InputSpec<{
|
|
|
9
9
|
from: string;
|
|
10
10
|
login: string;
|
|
11
11
|
password: string | null | undefined;
|
|
12
|
-
}
|
|
12
|
+
}>;
|
|
13
13
|
/**
|
|
14
14
|
* For service inputSpec. Gives users 3 options for SMTP: (1) disabled, (2) use system SMTP settings, (3) use custom SMTP settings
|
|
15
15
|
*/
|
|
16
|
-
export declare const smtpInputSpec: Value<import("./builder/variants").UnionRes<
|
|
16
|
+
export declare const smtpInputSpec: Value<import("./builder/variants").UnionRes<{
|
|
17
17
|
disabled: {
|
|
18
18
|
name: string;
|
|
19
|
-
spec: InputSpec<{}
|
|
19
|
+
spec: InputSpec<{}>;
|
|
20
20
|
};
|
|
21
21
|
system: {
|
|
22
22
|
name: string;
|
|
23
23
|
spec: InputSpec<{
|
|
24
24
|
customFrom: string | null;
|
|
25
|
-
}
|
|
25
|
+
}>;
|
|
26
26
|
};
|
|
27
27
|
custom: {
|
|
28
28
|
name: string;
|
|
@@ -32,6 +32,6 @@ export declare const smtpInputSpec: Value<import("./builder/variants").UnionRes<
|
|
|
32
32
|
from: string;
|
|
33
33
|
login: string;
|
|
34
34
|
password: string | null | undefined;
|
|
35
|
-
}
|
|
35
|
+
}>;
|
|
36
36
|
};
|
|
37
|
-
}, "disabled" | "system" | "custom"
|
|
37
|
+
}, "disabled" | "system" | "custom">>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputSpecConstants.js","sourceRoot":"","sources":["../../../../../base/lib/actions/input/inputSpecConstants.ts"],"names":[],"mappings":";;;AACA,qCAAoD;AACpD,mDAA4D;AAC5D,2CAAuC;AACvC,iDAA6C;AAE7C;;GAEG;AACU,QAAA,UAAU,GAAG,qBAAS,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"inputSpecConstants.js","sourceRoot":"","sources":["../../../../../base/lib/actions/input/inputSpecConstants.ts"],"names":[],"mappings":";;;AACA,qCAAoD;AACpD,mDAA4D;AAC5D,2CAAuC;AACvC,iDAA6C;AAE7C;;GAEG;AACU,QAAA,UAAU,GAAG,qBAAS,CAAC,EAAE,CAAyB;IAC7D,MAAM,EAAE,aAAK,CAAC,IAAI,CAAC;QACjB,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACd,CAAC;IACF,IAAI,EAAE,aAAK,CAAC,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,GAAG;QACZ,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,IAAI;KACd,CAAC;IACF,IAAI,EAAE,aAAK,CAAC,IAAI,CAAC;QACf,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,iCAAiC;QAC9C,SAAS,EAAE,OAAO;QAClB,QAAQ,EAAE,CAAC,eAAQ,CAAC,aAAa,CAAC;KACnC,CAAC;IACF,KAAK,EAAE,aAAK,CAAC,IAAI,CAAC;QAChB,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACd,CAAC;IACF,QAAQ,EAAE,aAAK,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,IAAI;KACb,CAAC;CACH,CAAC,CAAA;AAEF;;GAEG;AACU,QAAA,aAAa,GAAG,aAAK,CAAC,aAAa,CAC9C,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACpB,MAAM,IAAI,GAAG,MAAM,IAAI,oBAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;IACpD,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;AAC/B,CAAC,EACD;IACE,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,sDAAsD;IACnE,OAAO,EAAE,UAAU;CACpB,EACD,mBAAQ,CAAC,EAAE,CAAC;IACV,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,qBAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IACtD,MAAM,EAAE;QACN,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,qBAAS,CAAC,EAAE,CAAC;YACjB,UAAU,EAAE,aAAK,CAAC,IAAI,CAAC;gBACrB,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EACT,gGAAgG;gBAClG,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,wBAAwB;gBACrC,SAAS,EAAE,OAAO;gBAClB,QAAQ,EAAE,CAAC,eAAQ,CAAC,KAAK,CAAC;aAC3B,CAAC;SACH,CAAC;KACH;IACD,MAAM,EAAE;QACN,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,kBAAU;KACjB;CACF,CAAC,CACH,CAAA"}
|
|
@@ -1,27 +1,28 @@
|
|
|
1
1
|
import { InputSpec } from "./input/builder";
|
|
2
2
|
import { ExtractInputSpecType, ExtractPartialInputSpecType } from "./input/builder/inputSpec";
|
|
3
3
|
import * as T from "../types";
|
|
4
|
-
|
|
4
|
+
import { InitScript } from "../inits";
|
|
5
|
+
export type Run<A extends Record<string, any> | InputSpec<Record<string, any>>> = (options: {
|
|
5
6
|
effects: T.Effects;
|
|
6
7
|
input: ExtractInputSpecType<A>;
|
|
7
8
|
}) => Promise<(T.ActionResult & {
|
|
8
9
|
version: "1";
|
|
9
10
|
}) | null | void | undefined>;
|
|
10
|
-
export type GetInput<A extends Record<string, any> | InputSpec<Record<string, any
|
|
11
|
+
export type GetInput<A extends Record<string, any> | InputSpec<Record<string, any>>> = (options: {
|
|
11
12
|
effects: T.Effects;
|
|
12
13
|
}) => Promise<null | void | undefined | ExtractPartialInputSpecType<A>>;
|
|
13
14
|
export type MaybeFn<T> = T | ((options: {
|
|
14
15
|
effects: T.Effects;
|
|
15
16
|
}) => Promise<T>);
|
|
16
|
-
export declare class Action<Id extends T.ActionId,
|
|
17
|
+
export declare class Action<Id extends T.ActionId, InputSpecType extends Record<string, any> | InputSpec<any>> {
|
|
17
18
|
readonly id: Id;
|
|
18
19
|
private readonly metadataFn;
|
|
19
20
|
private readonly inputSpec;
|
|
20
21
|
private readonly getInputFn;
|
|
21
22
|
private readonly runFn;
|
|
22
23
|
private constructor();
|
|
23
|
-
static withInput<Id extends T.ActionId,
|
|
24
|
-
static withoutInput<Id extends T.ActionId
|
|
24
|
+
static withInput<Id extends T.ActionId, InputSpecType extends Record<string, any> | InputSpec<any>>(id: Id, metadata: MaybeFn<Omit<T.ActionMetadata, "hasInput">>, inputSpec: InputSpecType, getInput: GetInput<InputSpecType>, run: Run<InputSpecType>): Action<Id, InputSpecType>;
|
|
25
|
+
static withoutInput<Id extends T.ActionId>(id: Id, metadata: MaybeFn<Omit<T.ActionMetadata, "hasInput">>, run: Run<{}>): Action<Id, {}>;
|
|
25
26
|
exportMetadata(options: {
|
|
26
27
|
effects: T.Effects;
|
|
27
28
|
}): Promise<T.ActionMetadata>;
|
|
@@ -33,15 +34,13 @@ export declare class Action<Id extends T.ActionId, Store, InputSpecType extends
|
|
|
33
34
|
input: ExtractInputSpecType<InputSpecType>;
|
|
34
35
|
}): Promise<T.ActionResult | null>;
|
|
35
36
|
}
|
|
36
|
-
export declare class Actions<
|
|
37
|
+
export declare class Actions<AllActions extends Record<T.ActionId, Action<T.ActionId, any>>> implements InitScript {
|
|
37
38
|
private readonly actions;
|
|
38
39
|
private constructor();
|
|
39
|
-
static of
|
|
40
|
-
addAction<A extends Action<T.ActionId,
|
|
40
|
+
static of(): Actions<{}>;
|
|
41
|
+
addAction<A extends Action<T.ActionId, any>>(action: A): Actions<AllActions & {
|
|
41
42
|
[id in A["id"]]: A;
|
|
42
43
|
}>;
|
|
43
|
-
|
|
44
|
-
effects: T.Effects;
|
|
45
|
-
}): Promise<null>;
|
|
44
|
+
init(effects: T.Effects): Promise<void>;
|
|
46
45
|
get<Id extends T.ActionId>(actionId: Id): AllActions[Id];
|
|
47
46
|
}
|
|
@@ -33,7 +33,13 @@ class Action {
|
|
|
33
33
|
return new Action(id, mapMaybeFn(metadata, (m) => ({ ...m, hasInput: false })), {}, async () => null, run);
|
|
34
34
|
}
|
|
35
35
|
async exportMetadata(options) {
|
|
36
|
-
const
|
|
36
|
+
const childEffects = options.effects.child(`setupActions/${this.id}`);
|
|
37
|
+
childEffects.constRetry = (0, util_1.once)(() => {
|
|
38
|
+
this.exportMetadata(options);
|
|
39
|
+
});
|
|
40
|
+
const metadata = await callMaybeFn(this.metadataFn, {
|
|
41
|
+
effects: childEffects,
|
|
42
|
+
});
|
|
37
43
|
await options.effects.action.export({ id: this.id, metadata });
|
|
38
44
|
return metadata;
|
|
39
45
|
}
|
|
@@ -58,18 +64,25 @@ class Actions {
|
|
|
58
64
|
addAction(action) {
|
|
59
65
|
return new Actions({ ...this.actions, [action.id]: action });
|
|
60
66
|
}
|
|
61
|
-
async
|
|
62
|
-
options.effects = {
|
|
63
|
-
...options.effects,
|
|
64
|
-
constRetry: (0, util_1.once)(() => {
|
|
65
|
-
this.update(options); // yes, this reuses the options object, but the const retry function will be overwritten each time, so the once-ness is not a problem
|
|
66
|
-
}),
|
|
67
|
-
};
|
|
67
|
+
async init(effects) {
|
|
68
68
|
for (let action of Object.values(this.actions)) {
|
|
69
|
-
|
|
69
|
+
const fn = async () => {
|
|
70
|
+
let res = () => { };
|
|
71
|
+
const complete = new Promise((resolve) => {
|
|
72
|
+
res = resolve;
|
|
73
|
+
});
|
|
74
|
+
const e = effects.child(action.id);
|
|
75
|
+
e.constRetry = (0, util_1.once)(() => complete.then(() => fn()).catch(console.error));
|
|
76
|
+
try {
|
|
77
|
+
await action.exportMetadata({ effects: e });
|
|
78
|
+
}
|
|
79
|
+
finally {
|
|
80
|
+
res();
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
await fn();
|
|
70
84
|
}
|
|
71
|
-
await
|
|
72
|
-
return null;
|
|
85
|
+
await effects.action.clear({ except: Object.keys(this.actions) });
|
|
73
86
|
}
|
|
74
87
|
get(actionId) {
|
|
75
88
|
return this.actions[actionId];
|