@start9labs/start-sdk 0.4.0-beta.50 → 0.4.0-beta.52

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.
Files changed (165) hide show
  1. package/base/lib/Effects.d.ts +4 -0
  2. package/base/lib/actions/input/builder/inputSpec.d.ts +129 -8
  3. package/base/lib/actions/input/builder/inputSpec.js +223 -13
  4. package/base/lib/actions/input/builder/inputSpec.js.map +1 -1
  5. package/base/lib/actions/input/builder/inputSpecTools.d.ts +3 -3
  6. package/base/lib/actions/input/builder/list.d.ts +24 -3
  7. package/base/lib/actions/input/builder/list.js +26 -5
  8. package/base/lib/actions/input/builder/list.js.map +1 -1
  9. package/base/lib/actions/input/builder/value.d.ts +70 -16
  10. package/base/lib/actions/input/builder/value.js +89 -34
  11. package/base/lib/actions/input/builder/value.js.map +1 -1
  12. package/base/lib/actions/input/builder/variants.d.ts +14 -3
  13. package/base/lib/actions/input/builder/variants.js +22 -7
  14. package/base/lib/actions/input/builder/variants.js.map +1 -1
  15. package/base/lib/actions/input/inputSpecConstants.d.ts +203 -5
  16. package/base/lib/actions/input/inputSpecConstants.js +118 -38
  17. package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
  18. package/base/lib/actions/input/inputSpecTypes.d.ts +99 -0
  19. package/base/lib/actions/input/inputSpecTypes.js +6 -1
  20. package/base/lib/actions/input/inputSpecTypes.js.map +1 -1
  21. package/base/lib/actions/setupActions.d.ts +6 -3
  22. package/base/lib/actions/setupActions.js +7 -4
  23. package/base/lib/actions/setupActions.js.map +1 -1
  24. package/base/lib/exver/index.d.ts +233 -2
  25. package/base/lib/exver/index.js +197 -3
  26. package/base/lib/exver/index.js.map +1 -1
  27. package/base/lib/index.d.ts +23 -1
  28. package/base/lib/index.js +4 -2
  29. package/base/lib/index.js.map +1 -1
  30. package/base/lib/inits/setupInit.d.ts +17 -0
  31. package/base/lib/inits/setupInit.js +7 -0
  32. package/base/lib/inits/setupInit.js.map +1 -1
  33. package/base/lib/inits/setupUninit.d.ts +12 -0
  34. package/base/lib/inits/setupUninit.js +7 -0
  35. package/base/lib/inits/setupUninit.js.map +1 -1
  36. package/base/lib/interfaces/Host.js +2 -4
  37. package/base/lib/interfaces/Host.js.map +1 -1
  38. package/base/lib/osBindings/GetOutboundGatewayParams.d.ts +4 -0
  39. package/base/lib/osBindings/GetOutboundGatewayParams.js +3 -0
  40. package/base/lib/osBindings/GetOutboundGatewayParams.js.map +1 -0
  41. package/base/lib/osBindings/ServerHostname.d.ts +1 -0
  42. package/base/lib/osBindings/ServerHostname.js +4 -0
  43. package/base/lib/osBindings/ServerHostname.js.map +1 -0
  44. package/base/lib/osBindings/ServerInfo.d.ts +1 -0
  45. package/base/lib/osBindings/SetServerHostnameParams.d.ts +4 -0
  46. package/base/lib/osBindings/SetServerHostnameParams.js +4 -0
  47. package/base/lib/osBindings/SetServerHostnameParams.js.map +1 -0
  48. package/base/lib/osBindings/SetupExecuteParams.d.ts +3 -1
  49. package/base/lib/osBindings/SmtpSecurity.d.ts +1 -0
  50. package/base/lib/osBindings/SmtpSecurity.js +4 -0
  51. package/base/lib/osBindings/SmtpSecurity.js.map +1 -0
  52. package/base/lib/osBindings/SmtpValue.d.ts +4 -2
  53. package/base/lib/osBindings/SmtpValue.js +0 -1
  54. package/base/lib/osBindings/SmtpValue.js.map +1 -1
  55. package/base/lib/osBindings/StartOsRecoveryInfo.d.ts +2 -2
  56. package/base/lib/osBindings/TestSmtpParams.d.ts +4 -2
  57. package/base/lib/osBindings/TestSmtpParams.js +0 -1
  58. package/base/lib/osBindings/TestSmtpParams.js.map +1 -1
  59. package/base/lib/osBindings/index.d.ts +4 -1
  60. package/base/lib/s9pk/index.d.ts +66 -0
  61. package/base/lib/s9pk/index.js +70 -1
  62. package/base/lib/s9pk/index.js.map +1 -1
  63. package/base/lib/types.d.ts +68 -2
  64. package/base/lib/types.js +14 -0
  65. package/base/lib/types.js.map +1 -1
  66. package/base/lib/util/GetOutboundGateway.d.ts +30 -0
  67. package/base/lib/util/GetOutboundGateway.js +90 -0
  68. package/base/lib/util/GetOutboundGateway.js.map +1 -0
  69. package/base/lib/util/asError.d.ts +8 -0
  70. package/base/lib/util/asError.js +8 -0
  71. package/base/lib/util/asError.js.map +1 -1
  72. package/base/lib/util/deepEqual.d.ts +15 -0
  73. package/base/lib/util/deepEqual.js +16 -2
  74. package/base/lib/util/deepEqual.js.map +1 -1
  75. package/base/lib/util/deepMerge.d.ts +18 -0
  76. package/base/lib/util/deepMerge.js +18 -0
  77. package/base/lib/util/deepMerge.js.map +1 -1
  78. package/base/lib/util/getDefaultString.d.ts +8 -0
  79. package/base/lib/util/getDefaultString.js +8 -0
  80. package/base/lib/util/getDefaultString.js.map +1 -1
  81. package/base/lib/util/graph.d.ts +57 -0
  82. package/base/lib/util/graph.js +47 -0
  83. package/base/lib/util/graph.js.map +1 -1
  84. package/base/lib/util/inMs.d.ts +15 -0
  85. package/base/lib/util/inMs.js +15 -0
  86. package/base/lib/util/inMs.js.map +1 -1
  87. package/base/lib/util/index.d.ts +1 -0
  88. package/base/lib/util/index.js +3 -1
  89. package/base/lib/util/index.js.map +1 -1
  90. package/base/lib/util/ip.d.ts +81 -0
  91. package/base/lib/util/ip.js +81 -0
  92. package/base/lib/util/ip.js.map +1 -1
  93. package/base/lib/util/once.d.ts +13 -0
  94. package/base/lib/util/once.js +13 -0
  95. package/base/lib/util/once.js.map +1 -1
  96. package/base/lib/util/patterns.d.ts +11 -0
  97. package/base/lib/util/patterns.js +11 -0
  98. package/base/lib/util/patterns.js.map +1 -1
  99. package/base/lib/util/regexes.d.ts +38 -0
  100. package/base/lib/util/regexes.js +38 -0
  101. package/base/lib/util/regexes.js.map +1 -1
  102. package/base/lib/util/splitCommand.d.ts +14 -0
  103. package/base/lib/util/splitCommand.js +15 -2
  104. package/base/lib/util/splitCommand.js.map +1 -1
  105. package/base/lib/util/stringFromStdErrOut.d.ts +7 -0
  106. package/base/lib/util/stringFromStdErrOut.js +7 -0
  107. package/base/lib/util/stringFromStdErrOut.js.map +1 -1
  108. package/base/lib/util/typeHelpers.d.ts +35 -0
  109. package/base/lib/util/typeHelpers.js +7 -0
  110. package/base/lib/util/typeHelpers.js.map +1 -1
  111. package/package/lib/StartSdk.d.ts +330 -3
  112. package/package/lib/StartSdk.js +143 -1
  113. package/package/lib/StartSdk.js.map +1 -1
  114. package/package/lib/backup/Backups.d.ts +71 -0
  115. package/package/lib/backup/Backups.js +69 -0
  116. package/package/lib/backup/Backups.js.map +1 -1
  117. package/package/lib/backup/setupBackups.d.ts +14 -0
  118. package/package/lib/backup/setupBackups.js +9 -0
  119. package/package/lib/backup/setupBackups.js.map +1 -1
  120. package/package/lib/health/HealthCheck.d.ts +16 -0
  121. package/package/lib/health/HealthCheck.js +16 -2
  122. package/package/lib/health/HealthCheck.js.map +1 -1
  123. package/package/lib/health/checkFns/HealthCheckResult.d.ts +6 -0
  124. package/package/lib/health/checkFns/index.d.ts +8 -0
  125. package/package/lib/health/checkFns/index.js +8 -0
  126. package/package/lib/health/checkFns/index.js.map +1 -1
  127. package/package/lib/index.d.ts +2 -2
  128. package/package/lib/index.js +2 -2
  129. package/package/lib/index.js.map +1 -1
  130. package/package/lib/mainFn/CommandController.d.ts +29 -0
  131. package/package/lib/mainFn/CommandController.js +29 -0
  132. package/package/lib/mainFn/CommandController.js.map +1 -1
  133. package/package/lib/mainFn/Daemon.d.ts +38 -2
  134. package/package/lib/mainFn/Daemon.js +38 -2
  135. package/package/lib/mainFn/Daemon.js.map +1 -1
  136. package/package/lib/mainFn/Daemons.d.ts +31 -0
  137. package/package/lib/mainFn/Daemons.js +13 -0
  138. package/package/lib/mainFn/Daemons.js.map +1 -1
  139. package/package/lib/mainFn/Mounts.d.ts +38 -0
  140. package/package/lib/mainFn/Mounts.js +38 -0
  141. package/package/lib/mainFn/Mounts.js.map +1 -1
  142. package/package/lib/mainFn/index.d.ts +1 -0
  143. package/package/lib/mainFn/index.js +1 -0
  144. package/package/lib/mainFn/index.js.map +1 -1
  145. package/package/lib/manifest/setupManifest.d.ts +9 -0
  146. package/package/lib/manifest/setupManifest.js +9 -0
  147. package/package/lib/manifest/setupManifest.js.map +1 -1
  148. package/package/lib/test/output.d.ts +2 -2
  149. package/package/lib/test/output.js +418 -329
  150. package/package/lib/test/output.js.map +1 -1
  151. package/package/lib/test/output.sdk.d.ts +193 -2
  152. package/package/lib/util/SubContainer.d.ts +46 -0
  153. package/package/lib/util/SubContainer.js +10 -0
  154. package/package/lib/util/SubContainer.js.map +1 -1
  155. package/package/lib/util/fileHelper.d.ts +43 -10
  156. package/package/lib/util/fileHelper.js +13 -11
  157. package/package/lib/util/fileHelper.js.map +1 -1
  158. package/package/lib/version/VersionGraph.d.ts +64 -13
  159. package/package/lib/version/VersionGraph.js +64 -18
  160. package/package/lib/version/VersionGraph.js.map +1 -1
  161. package/package/lib/version/VersionInfo.d.ts +17 -0
  162. package/package/lib/version/VersionInfo.js +12 -0
  163. package/package/lib/version/VersionInfo.js.map +1 -1
  164. package/package/package.json +9 -8
  165. package/package.json +9 -8
@@ -3,29 +3,53 @@ import { List } from './list';
3
3
  import { UnionRes, UnionResStaticValidatedAs, Variants } from './variants';
4
4
  import { Pattern, RandomString, ValueSpec, ValueSpecDatetime, ValueSpecText } from '../inputSpecTypes';
5
5
  import { DefaultString } from '../inputSpecTypes';
6
- import { Parser } from 'ts-matches';
6
+ import { z } from 'zod';
7
7
  import { DeepPartial } from '../../../types';
8
- export declare const fileInfoParser: Parser<unknown, {
9
- path: string;
10
- commitment: {
11
- hash: string;
12
- size: number;
13
- };
14
- }>;
15
- export type FileInfo = typeof fileInfoParser._TYPE;
8
+ /** Zod schema for a file upload result — validates `{ path, commitment: { hash, size } }`. */
9
+ export declare const fileInfoParser: z.ZodObject<{
10
+ path: z.ZodString;
11
+ commitment: z.ZodObject<{
12
+ hash: z.ZodString;
13
+ size: z.ZodNumber;
14
+ }, z.core.$strip>;
15
+ }, z.core.$strip>;
16
+ /** The parsed result of a file upload, containing the file path and its content commitment (hash + size). */
17
+ export type FileInfo = z.infer<typeof fileInfoParser>;
18
+ /** Conditional type: returns `T` if `Required` is `true`, otherwise `T | null`. */
16
19
  export type AsRequired<T, Required extends boolean> = Required extends true ? T : T | null;
20
+ /**
21
+ * Core builder class for defining a single form field in a service configuration spec.
22
+ *
23
+ * Each static factory method (e.g. `Value.text()`, `Value.toggle()`, `Value.select()`) creates
24
+ * a typed `Value` instance representing a specific field type. Dynamic variants (e.g. `Value.dynamicText()`)
25
+ * allow the field options to be computed lazily at runtime.
26
+ *
27
+ * Use with {@link InputSpec} to compose complete form specifications.
28
+ *
29
+ * @typeParam Type - The runtime type this field produces when filled in
30
+ * @typeParam StaticValidatedAs - The compile-time validated type (usually same as Type)
31
+ * @typeParam OuterType - The parent form's type context (used by dynamic variants)
32
+ */
17
33
  export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = Type, OuterType = unknown> {
18
34
  build: LazyBuild<{
19
35
  spec: ValueSpec;
20
- validator: Parser<unknown, Type>;
36
+ validator: z.ZodType<Type>;
21
37
  }, OuterType>;
22
- readonly validator: Parser<unknown, StaticValidatedAs>;
38
+ readonly validator: z.ZodType<StaticValidatedAs>;
23
39
  protected constructor(build: LazyBuild<{
24
40
  spec: ValueSpec;
25
- validator: Parser<unknown, Type>;
26
- }, OuterType>, validator: Parser<unknown, StaticValidatedAs>);
41
+ validator: z.ZodType<Type>;
42
+ }, OuterType>, validator: z.ZodType<StaticValidatedAs>);
27
43
  _TYPE: Type;
28
44
  _PARTIAL: DeepPartial<Type>;
45
+ /** @internal Used by {@link InputSpec.filter} to support nested filtering of object-typed fields. */
46
+ _objectSpec?: {
47
+ inputSpec: InputSpec<any, any>;
48
+ params: {
49
+ name: string;
50
+ description?: string | null;
51
+ };
52
+ };
29
53
  /**
30
54
  * @description Displays a boolean toggle to enable/disable
31
55
  * @example
@@ -54,6 +78,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
54
78
  */
55
79
  immutable?: boolean;
56
80
  }): Value<boolean, boolean, unknown>;
81
+ /** Like {@link Value.toggle} but options are resolved lazily at runtime via a builder function. */
57
82
  static dynamicToggle<OuterType = unknown>(a: LazyBuild<{
58
83
  name: string;
59
84
  description?: string | null;
@@ -136,6 +161,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
136
161
  */
137
162
  generate?: RandomString | null;
138
163
  }): Value<AsRequired<string, Required>, AsRequired<string, Required>, unknown>;
164
+ /** Like {@link Value.text} but options are resolved lazily at runtime via a builder function. */
139
165
  static dynamicText<Required extends boolean, OuterType = unknown>(getA: LazyBuild<{
140
166
  name: string;
141
167
  description?: string | null;
@@ -207,6 +233,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
207
233
  */
208
234
  immutable?: boolean;
209
235
  }): Value<AsRequired<string, Required>, AsRequired<string, Required>, unknown>;
236
+ /** Like {@link Value.textarea} but options are resolved lazily at runtime via a builder function. */
210
237
  static dynamicTextarea<Required extends boolean, OuterType = unknown>(getA: LazyBuild<{
211
238
  name: string;
212
239
  description?: string | null;
@@ -279,6 +306,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
279
306
  */
280
307
  immutable?: boolean;
281
308
  }): Value<AsRequired<number, Required>, AsRequired<number, Required>, unknown>;
309
+ /** Like {@link Value.number} but options are resolved lazily at runtime via a builder function. */
282
310
  static dynamicNumber<Required extends boolean, OuterType = unknown>(getA: LazyBuild<{
283
311
  name: string;
284
312
  description?: string | null;
@@ -329,6 +357,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
329
357
  */
330
358
  immutable?: boolean;
331
359
  }): Value<AsRequired<string, Required>, AsRequired<string, Required>, unknown>;
360
+ /** Like {@link Value.color} but options are resolved lazily at runtime via a builder function. */
332
361
  static dynamicColor<Required extends boolean, OuterType = unknown>(getA: LazyBuild<{
333
362
  name: string;
334
363
  description?: string | null;
@@ -383,6 +412,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
383
412
  */
384
413
  immutable?: boolean;
385
414
  }): Value<AsRequired<string, Required>, AsRequired<string, Required>, unknown>;
415
+ /** Like {@link Value.datetime} but options are resolved lazily at runtime via a builder function. */
386
416
  static dynamicDatetime<Required extends boolean, OuterType = unknown>(getA: LazyBuild<{
387
417
  name: string;
388
418
  description?: string | null;
@@ -445,6 +475,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
445
475
  */
446
476
  immutable?: boolean;
447
477
  }): Value<keyof Values & string, keyof Values & string, unknown>;
478
+ /** Like {@link Value.select} but options are resolved lazily at runtime via a builder function. */
448
479
  static dynamicSelect<Values extends Record<string, string>, OuterType = unknown>(getA: LazyBuild<{
449
480
  name: string;
450
481
  description?: string | null;
@@ -505,6 +536,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
505
536
  */
506
537
  immutable?: boolean;
507
538
  }): Value<(keyof Values & string)[], (keyof Values & string)[], unknown>;
539
+ /** Like {@link Value.multiselect} but options are resolved lazily at runtime via a builder function. */
508
540
  static dynamicMultiselect<Values extends Record<string, string>, OuterType = unknown>(getA: LazyBuild<{
509
541
  name: string;
510
542
  description?: string | null;
@@ -536,6 +568,12 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
536
568
  name: string;
537
569
  description?: string | null;
538
570
  }, spec: InputSpec<Type, StaticValidatedAs>): Value<Type, StaticValidatedAs, unknown>;
571
+ /**
572
+ * Displays a file upload input field.
573
+ *
574
+ * @param a.extensions - Allowed file extensions (e.g. `[".pem", ".crt"]`)
575
+ * @param a.required - Whether a file must be selected
576
+ */
539
577
  static file<Required extends boolean>(a: {
540
578
  name: string;
541
579
  description?: string | null;
@@ -555,6 +593,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
555
593
  size: number;
556
594
  };
557
595
  }, Required>, unknown>;
596
+ /** Like {@link Value.file} but options are resolved lazily at runtime via a builder function. */
558
597
  static dynamicFile<Required extends boolean, OuterType = unknown>(a: LazyBuild<{
559
598
  name: string;
560
599
  description?: string | null;
@@ -626,6 +665,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
626
665
  */
627
666
  immutable?: boolean;
628
667
  }): Value<UnionRes<VariantValues, keyof VariantValues & string>, UnionResStaticValidatedAs<VariantValues, keyof VariantValues & string>, unknown>;
668
+ /** Like {@link Value.union} but options (including which variants are available) are resolved lazily at runtime. */
629
669
  static dynamicUnion<VariantValues extends {
630
670
  [K in string]: {
631
671
  name: string;
@@ -639,6 +679,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
639
679
  default: keyof VariantValues & string;
640
680
  disabled: string[] | false | string;
641
681
  }, OuterType>): Value<UnionRes<VariantValues>, UnionRes<VariantValues>, OuterType>;
682
+ /** Like {@link Value.union} but options are resolved lazily, with an explicit static validator type. */
642
683
  static dynamicUnion<StaticVariantValues extends {
643
684
  [K in string]: {
644
685
  name: string;
@@ -651,7 +692,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
651
692
  variants: Variants<VariantValues>;
652
693
  default: keyof VariantValues & string;
653
694
  disabled: string[] | false | string;
654
- }, OuterType>, validator: Parser<unknown, UnionResStaticValidatedAs<StaticVariantValues>>): Value<UnionRes<VariantValues>, UnionResStaticValidatedAs<StaticVariantValues>, OuterType>;
695
+ }, OuterType>, validator: z.ZodType<UnionResStaticValidatedAs<StaticVariantValues>>): Value<UnionRes<VariantValues>, UnionResStaticValidatedAs<StaticVariantValues>, OuterType>;
655
696
  /**
656
697
  * @description Presents an interface to add/remove/edit items in a list.
657
698
  * @example
@@ -724,7 +765,7 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
724
765
  * ```
725
766
  */
726
767
  static hidden<T>(): Value<T>;
727
- static hidden<T>(parser: Parser<unknown, T>): Value<T>;
768
+ static hidden<T>(parser: z.ZodType<T>): Value<T>;
728
769
  /**
729
770
  * @description Provides a way to define a hidden field with a static value. Useful for tracking
730
771
  * @example
@@ -732,6 +773,19 @@ export declare class Value<Type extends StaticValidatedAs, StaticValidatedAs = T
732
773
  hiddenExample: Value.hidden(),
733
774
  * ```
734
775
  */
735
- static dynamicHidden<T, OuterType = unknown>(getParser: LazyBuild<Parser<unknown, T>, OuterType>): Value<T, T, OuterType>;
776
+ static dynamicHidden<T, OuterType = unknown>(getParser: LazyBuild<z.ZodType<T>, OuterType>): Value<T, T, OuterType>;
777
+ /**
778
+ * Returns a new Value that produces the same field spec but with `disabled` set to the given message.
779
+ * The field remains in the form but cannot be edited by the user.
780
+ *
781
+ * @param message - The reason the field is disabled, displayed to the user
782
+ */
783
+ withDisabled(message: string): Value<Type, StaticValidatedAs, OuterType>;
784
+ /**
785
+ * Transforms the validated output value using a mapping function.
786
+ * The form field itself remains unchanged, but the value is transformed after validation.
787
+ *
788
+ * @param fn - A function to transform the validated value
789
+ */
736
790
  map<U>(fn: (value: StaticValidatedAs) => U): Value<U, U, OuterType>;
737
791
  }
@@ -2,17 +2,31 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Value = exports.fileInfoParser = void 0;
4
4
  const util_1 = require("../../../util");
5
- const ts_matches_1 = require("ts-matches");
6
- exports.fileInfoParser = (0, ts_matches_1.object)({
7
- path: ts_matches_1.string,
8
- commitment: (0, ts_matches_1.object)({ hash: ts_matches_1.string, size: ts_matches_1.number }),
5
+ const zod_1 = require("zod");
6
+ /** Zod schema for a file upload result — validates `{ path, commitment: { hash, size } }`. */
7
+ exports.fileInfoParser = zod_1.z.object({
8
+ path: zod_1.z.string(),
9
+ commitment: zod_1.z.object({ hash: zod_1.z.string(), size: zod_1.z.number() }),
9
10
  });
10
- const testForAsRequiredParser = (0, util_1.once)(() => (0, ts_matches_1.object)({ required: (0, ts_matches_1.literal)(true) }).test);
11
+ const testForAsRequiredParser = (0, util_1.once)(() => (v) => zod_1.z.object({ required: zod_1.z.literal(true) }).safeParse(v).success);
11
12
  function asRequiredParser(parser, input) {
12
13
  if (testForAsRequiredParser()(input))
13
14
  return parser;
14
15
  return parser.nullable();
15
16
  }
17
+ /**
18
+ * Core builder class for defining a single form field in a service configuration spec.
19
+ *
20
+ * Each static factory method (e.g. `Value.text()`, `Value.toggle()`, `Value.select()`) creates
21
+ * a typed `Value` instance representing a specific field type. Dynamic variants (e.g. `Value.dynamicText()`)
22
+ * allow the field options to be computed lazily at runtime.
23
+ *
24
+ * Use with {@link InputSpec} to compose complete form specifications.
25
+ *
26
+ * @typeParam Type - The runtime type this field produces when filled in
27
+ * @typeParam StaticValidatedAs - The compile-time validated type (usually same as Type)
28
+ * @typeParam OuterType - The parent form's type context (used by dynamic variants)
29
+ */
16
30
  class Value {
17
31
  constructor(build, validator) {
18
32
  this.build = build;
@@ -37,7 +51,7 @@ class Value {
37
51
  * ```
38
52
  */
39
53
  static toggle(a) {
40
- const validator = ts_matches_1.boolean;
54
+ const validator = zod_1.z.boolean();
41
55
  return new Value(async () => ({
42
56
  spec: {
43
57
  description: null,
@@ -50,8 +64,9 @@ class Value {
50
64
  validator,
51
65
  }), validator);
52
66
  }
67
+ /** Like {@link Value.toggle} but options are resolved lazily at runtime via a builder function. */
53
68
  static dynamicToggle(a) {
54
- const validator = ts_matches_1.boolean;
69
+ const validator = zod_1.z.boolean();
55
70
  return new Value(async (options) => ({
56
71
  spec: {
57
72
  description: null,
@@ -89,7 +104,7 @@ class Value {
89
104
  * ```
90
105
  */
91
106
  static text(a) {
92
- const validator = asRequiredParser(ts_matches_1.string, a);
107
+ const validator = asRequiredParser(zod_1.z.string(), a);
93
108
  return new Value(async () => ({
94
109
  spec: {
95
110
  type: 'text',
@@ -109,6 +124,7 @@ class Value {
109
124
  validator,
110
125
  }), validator);
111
126
  }
127
+ /** Like {@link Value.text} but options are resolved lazily at runtime via a builder function. */
112
128
  static dynamicText(getA) {
113
129
  return new Value(async (options) => {
114
130
  const a = await getA(options);
@@ -128,9 +144,9 @@ class Value {
128
144
  generate: a.generate ?? null,
129
145
  ...a,
130
146
  },
131
- validator: asRequiredParser(ts_matches_1.string, a),
147
+ validator: asRequiredParser(zod_1.z.string(), a),
132
148
  };
133
- }, ts_matches_1.string.nullable());
149
+ }, zod_1.z.string().nullable());
134
150
  }
135
151
  /**
136
152
  * @description Displays a large textarea field for long form entry.
@@ -155,7 +171,7 @@ class Value {
155
171
  * ```
156
172
  */
157
173
  static textarea(a) {
158
- const validator = asRequiredParser(ts_matches_1.string, a);
174
+ const validator = asRequiredParser(zod_1.z.string(), a);
159
175
  return new Value(async () => {
160
176
  const built = {
161
177
  description: null,
@@ -174,6 +190,7 @@ class Value {
174
190
  return { spec: built, validator };
175
191
  }, validator);
176
192
  }
193
+ /** Like {@link Value.textarea} but options are resolved lazily at runtime via a builder function. */
177
194
  static dynamicTextarea(getA) {
178
195
  return new Value(async (options) => {
179
196
  const a = await getA(options);
@@ -192,9 +209,9 @@ class Value {
192
209
  immutable: false,
193
210
  ...a,
194
211
  },
195
- validator: asRequiredParser(ts_matches_1.string, a),
212
+ validator: asRequiredParser(zod_1.z.string(), a),
196
213
  };
197
- }, ts_matches_1.string.nullable());
214
+ }, zod_1.z.string().nullable());
198
215
  }
199
216
  /**
200
217
  * @description Displays a number input field
@@ -220,7 +237,7 @@ class Value {
220
237
  * ```
221
238
  */
222
239
  static number(a) {
223
- const validator = asRequiredParser(ts_matches_1.number, a);
240
+ const validator = asRequiredParser(zod_1.z.number(), a);
224
241
  return new Value(() => ({
225
242
  spec: {
226
243
  type: 'number',
@@ -238,6 +255,7 @@ class Value {
238
255
  validator,
239
256
  }), validator);
240
257
  }
258
+ /** Like {@link Value.number} but options are resolved lazily at runtime via a builder function. */
241
259
  static dynamicNumber(getA) {
242
260
  return new Value(async (options) => {
243
261
  const a = await getA(options);
@@ -255,9 +273,9 @@ class Value {
255
273
  immutable: false,
256
274
  ...a,
257
275
  },
258
- validator: asRequiredParser(ts_matches_1.number, a),
276
+ validator: asRequiredParser(zod_1.z.number(), a),
259
277
  };
260
- }, ts_matches_1.number.nullable());
278
+ }, zod_1.z.number().nullable());
261
279
  }
262
280
  /**
263
281
  * @description Displays a browser-native color selector.
@@ -277,7 +295,7 @@ class Value {
277
295
  * ```
278
296
  */
279
297
  static color(a) {
280
- const validator = asRequiredParser(ts_matches_1.string, a);
298
+ const validator = asRequiredParser(zod_1.z.string(), a);
281
299
  return new Value(() => ({
282
300
  spec: {
283
301
  type: 'color',
@@ -290,6 +308,7 @@ class Value {
290
308
  validator,
291
309
  }), validator);
292
310
  }
311
+ /** Like {@link Value.color} but options are resolved lazily at runtime via a builder function. */
293
312
  static dynamicColor(getA) {
294
313
  return new Value(async (options) => {
295
314
  const a = await getA(options);
@@ -302,9 +321,9 @@ class Value {
302
321
  immutable: false,
303
322
  ...a,
304
323
  },
305
- validator: asRequiredParser(ts_matches_1.string, a),
324
+ validator: asRequiredParser(zod_1.z.string(), a),
306
325
  };
307
- }, ts_matches_1.string.nullable());
326
+ }, zod_1.z.string().nullable());
308
327
  }
309
328
  /**
310
329
  * @description Displays a browser-native date/time selector.
@@ -327,7 +346,7 @@ class Value {
327
346
  * ```
328
347
  */
329
348
  static datetime(a) {
330
- const validator = asRequiredParser(ts_matches_1.string, a);
349
+ const validator = asRequiredParser(zod_1.z.string(), a);
331
350
  return new Value(() => ({
332
351
  spec: {
333
352
  type: 'datetime',
@@ -344,6 +363,7 @@ class Value {
344
363
  validator,
345
364
  }), validator);
346
365
  }
366
+ /** Like {@link Value.datetime} but options are resolved lazily at runtime via a builder function. */
347
367
  static dynamicDatetime(getA) {
348
368
  return new Value(async (options) => {
349
369
  const a = await getA(options);
@@ -359,9 +379,9 @@ class Value {
359
379
  immutable: false,
360
380
  ...a,
361
381
  },
362
- validator: asRequiredParser(ts_matches_1.string, a),
382
+ validator: asRequiredParser(zod_1.z.string(), a),
363
383
  };
364
- }, ts_matches_1.string.nullable());
384
+ }, zod_1.z.string().nullable());
365
385
  }
366
386
  /**
367
387
  * @description Displays a select modal with radio buttons, allowing for a single selection.
@@ -385,7 +405,7 @@ class Value {
385
405
  * ```
386
406
  */
387
407
  static select(a) {
388
- const validator = (0, ts_matches_1.anyOf)(...Object.keys(a.values).map((x) => (0, ts_matches_1.literal)(x)));
408
+ const validator = zod_1.z.union(Object.keys(a.values).map((x) => zod_1.z.literal(x)));
389
409
  return new Value(() => ({
390
410
  spec: {
391
411
  description: null,
@@ -398,6 +418,7 @@ class Value {
398
418
  validator,
399
419
  }), validator);
400
420
  }
421
+ /** Like {@link Value.select} but options are resolved lazily at runtime via a builder function. */
401
422
  static dynamicSelect(getA) {
402
423
  return new Value(async (options) => {
403
424
  const a = await getA(options);
@@ -410,9 +431,9 @@ class Value {
410
431
  immutable: false,
411
432
  ...a,
412
433
  },
413
- validator: (0, ts_matches_1.anyOf)(...Object.keys(a.values).map((x) => (0, ts_matches_1.literal)(x))),
434
+ validator: zod_1.z.union(Object.keys(a.values).map((x) => zod_1.z.literal(x))),
414
435
  };
415
- }, ts_matches_1.string);
436
+ }, zod_1.z.string());
416
437
  }
417
438
  /**
418
439
  * @description Displays a select modal with checkboxes, allowing for multiple selections.
@@ -438,7 +459,7 @@ class Value {
438
459
  * ```
439
460
  */
440
461
  static multiselect(a) {
441
- const validator = (0, ts_matches_1.arrayOf)((0, ts_matches_1.literals)(...Object.keys(a.values)));
462
+ const validator = zod_1.z.array(zod_1.z.union(Object.keys(a.values).map((x) => zod_1.z.literal(x))));
442
463
  return new Value(() => ({
443
464
  spec: {
444
465
  type: 'multiselect',
@@ -453,6 +474,7 @@ class Value {
453
474
  validator,
454
475
  }), validator);
455
476
  }
477
+ /** Like {@link Value.multiselect} but options are resolved lazily at runtime via a builder function. */
456
478
  static dynamicMultiselect(getA) {
457
479
  return new Value(async (options) => {
458
480
  const a = await getA(options);
@@ -467,9 +489,9 @@ class Value {
467
489
  immutable: false,
468
490
  ...a,
469
491
  },
470
- validator: (0, ts_matches_1.arrayOf)((0, ts_matches_1.literals)(...Object.keys(a.values))),
492
+ validator: zod_1.z.array(zod_1.z.union(Object.keys(a.values).map((x) => zod_1.z.literal(x)))),
471
493
  };
472
- }, (0, ts_matches_1.arrayOf)(ts_matches_1.string));
494
+ }, zod_1.z.array(zod_1.z.string()));
473
495
  }
474
496
  /**
475
497
  * @description Display a collapsable grouping of additional fields, a "sub form". The second value is the inputSpec spec for the sub form.
@@ -489,7 +511,7 @@ class Value {
489
511
  * ```
490
512
  */
491
513
  static object(a, spec) {
492
- return new Value(async (options) => {
514
+ const value = new Value(async (options) => {
493
515
  const built = await spec.build(options);
494
516
  return {
495
517
  spec: {
@@ -502,7 +524,15 @@ class Value {
502
524
  validator: built.validator,
503
525
  };
504
526
  }, spec.validator);
527
+ value._objectSpec = { inputSpec: spec, params: a };
528
+ return value;
505
529
  }
530
+ /**
531
+ * Displays a file upload input field.
532
+ *
533
+ * @param a.extensions - Allowed file extensions (e.g. `[".pem", ".crt"]`)
534
+ * @param a.required - Whether a file must be selected
535
+ */
506
536
  static file(a) {
507
537
  const buildValue = {
508
538
  type: 'file',
@@ -517,6 +547,7 @@ class Value {
517
547
  validator: asRequiredParser(exports.fileInfoParser, a),
518
548
  }), asRequiredParser(exports.fileInfoParser, a));
519
549
  }
550
+ /** Like {@link Value.file} but options are resolved lazily at runtime via a builder function. */
520
551
  static dynamicFile(a) {
521
552
  return new Value(async (options) => {
522
553
  const spec = {
@@ -577,7 +608,7 @@ class Value {
577
608
  };
578
609
  }, a.variants.validator);
579
610
  }
580
- static dynamicUnion(getA, validator = ts_matches_1.any) {
611
+ static dynamicUnion(getA, validator = zod_1.z.any()) {
581
612
  return new Value(async (options) => {
582
613
  const newValues = await getA(options);
583
614
  const built = await newValues.variants.build(options);
@@ -660,7 +691,7 @@ class Value {
660
691
  static list(a) {
661
692
  return new Value((options) => a.build(options), a.validator);
662
693
  }
663
- static hidden(parser = ts_matches_1.any) {
694
+ static hidden(parser = zod_1.z.any()) {
664
695
  return new Value(async () => {
665
696
  return {
666
697
  spec: {
@@ -686,16 +717,40 @@ class Value {
686
717
  },
687
718
  validator,
688
719
  };
689
- }, ts_matches_1.any);
720
+ }, zod_1.z.any());
721
+ }
722
+ /**
723
+ * Returns a new Value that produces the same field spec but with `disabled` set to the given message.
724
+ * The field remains in the form but cannot be edited by the user.
725
+ *
726
+ * @param message - The reason the field is disabled, displayed to the user
727
+ */
728
+ withDisabled(message) {
729
+ const original = this;
730
+ const v = new Value(async (options) => {
731
+ const built = await original.build(options);
732
+ return {
733
+ spec: { ...built.spec, disabled: message },
734
+ validator: built.validator,
735
+ };
736
+ }, this.validator);
737
+ v._objectSpec = this._objectSpec;
738
+ return v;
690
739
  }
740
+ /**
741
+ * Transforms the validated output value using a mapping function.
742
+ * The form field itself remains unchanged, but the value is transformed after validation.
743
+ *
744
+ * @param fn - A function to transform the validated value
745
+ */
691
746
  map(fn) {
692
747
  return new Value(async (options) => {
693
748
  const built = await this.build(options);
694
749
  return {
695
750
  spec: built.spec,
696
- validator: built.validator.map(fn),
751
+ validator: built.validator.transform(fn),
697
752
  };
698
- }, this.validator.map(fn));
753
+ }, this.validator.transform(fn));
699
754
  }
700
755
  }
701
756
  exports.Value = Value;
@@ -1 +1 @@
1
- {"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../../base/lib/actions/input/builder/value.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../../base/lib/actions/input/builder/value.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
1
  import { DeepPartial } from '../../../types';
2
2
  import { ValueSpecUnion } from '../inputSpecTypes';
3
3
  import { LazyBuild, InputSpec, ExtractInputSpecType, ExtractInputSpecStaticValidatedAs } from './inputSpec';
4
- import { Parser } from 'ts-matches';
4
+ import { z } from 'zod';
5
+ /**
6
+ * The runtime result type of a discriminated union form field.
7
+ * Contains `selection` (the chosen variant key), `value` (the variant's form data),
8
+ * and optionally `other` (partial data from previously selected variants).
9
+ */
5
10
  export type UnionRes<VariantValues extends {
6
11
  [K in string]: {
7
12
  name: string;
@@ -16,6 +21,7 @@ export type UnionRes<VariantValues extends {
16
21
  };
17
22
  };
18
23
  }[K];
24
+ /** Like {@link UnionRes} but using the static (Zod-inferred) validated types. */
19
25
  export type UnionResStaticValidatedAs<VariantValues extends {
20
26
  [K in string]: {
21
27
  name: string;
@@ -86,11 +92,16 @@ export declare class Variants<VariantValues extends {
86
92
  }, OuterType = unknown> {
87
93
  build: LazyBuild<{
88
94
  spec: ValueSpecUnion['variants'];
89
- validator: Parser<unknown, UnionRes<VariantValues>>;
95
+ validator: z.ZodType<UnionRes<VariantValues>>;
90
96
  }, OuterType>;
91
- readonly validator: Parser<unknown, UnionResStaticValidatedAs<VariantValues>>;
97
+ readonly validator: z.ZodType<UnionResStaticValidatedAs<VariantValues>>;
92
98
  private constructor();
93
99
  readonly _TYPE: UnionRes<VariantValues>;
100
+ /**
101
+ * Creates a `Variants` instance from a record mapping variant keys to their display name and form spec.
102
+ *
103
+ * @param a - A record of `{ name: string, spec: InputSpec }` entries, one per variant
104
+ */
94
105
  static of<VariantValues extends {
95
106
  [K in string]: {
96
107
  name: string;