depflow 3.0.0-dev.10 → 3.0.0-dev.11

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 (172) hide show
  1. package/README.md +108 -43
  2. package/dist/builder/Builder.d.ts +279 -0
  3. package/dist/builder/Builder.js +391 -0
  4. package/dist/builder/Builder.js.map +1 -0
  5. package/dist/cli/CLI.d.ts +157 -0
  6. package/dist/cli/CLI.js +214 -0
  7. package/dist/cli/CLI.js.map +1 -0
  8. package/dist/cli/DepFLowCLI.d.ts +93 -0
  9. package/dist/cli/DepFLowCLI.js +413 -0
  10. package/dist/cli/DepFLowCLI.js.map +1 -0
  11. package/dist/cli/Flags.d.ts +106 -0
  12. package/dist/cli/Flags.js +125 -0
  13. package/dist/cli/Flags.js.map +1 -0
  14. package/dist/cli/bin.js +68 -0
  15. package/dist/cli/bin.js.map +1 -0
  16. package/dist/config/Config.d.ts +690 -0
  17. package/dist/config/Config.js +45 -0
  18. package/dist/config/Config.js.map +1 -0
  19. package/dist/config/ImportMap.d.ts +60 -0
  20. package/dist/config/ImportMap.js +66 -0
  21. package/dist/config/ImportMap.js.map +1 -0
  22. package/dist/config/JsonSchema.d.ts +12 -0
  23. package/dist/config/JsonSchema.js +26 -0
  24. package/dist/config/JsonSchema.js.map +1 -0
  25. package/dist/config/Settings.d.ts +201 -0
  26. package/dist/config/Settings.js +191 -0
  27. package/dist/config/Settings.js.map +1 -0
  28. package/dist/config/TSConfig.d.ts +73 -0
  29. package/dist/config/TSConfig.js +73 -0
  30. package/dist/config/TSConfig.js.map +1 -0
  31. package/dist/config/codecs/JsonCodec.d.ts +30 -0
  32. package/dist/config/codecs/JsonCodec.js +31 -0
  33. package/dist/config/codecs/JsonCodec.js.map +1 -0
  34. package/dist/config/codecs/YamlCodec.d.ts +62 -0
  35. package/dist/config/codecs/YamlCodec.js +89 -0
  36. package/dist/config/codecs/YamlCodec.js.map +1 -0
  37. package/dist/dependency/DepUtils.d.ts +50 -0
  38. package/dist/dependency/DepUtils.js +71 -0
  39. package/dist/dependency/DepUtils.js.map +1 -0
  40. package/dist/dependency/Dependency.d.ts +81 -0
  41. package/dist/dependency/Dependency.js +71 -0
  42. package/dist/dependency/Dependency.js.map +1 -0
  43. package/dist/dependency/Git.d.ts +75 -0
  44. package/dist/dependency/Git.js +97 -0
  45. package/dist/dependency/Git.js.map +1 -0
  46. package/dist/dependency/GitDependency.d.ts +30 -0
  47. package/dist/dependency/GitDependency.js +79 -0
  48. package/dist/dependency/GitDependency.js.map +1 -0
  49. package/dist/dependency/NpmDependency.d.ts +27 -0
  50. package/dist/dependency/NpmDependency.js +91 -0
  51. package/dist/dependency/NpmDependency.js.map +1 -0
  52. package/{build/support/PathResolver → dist/resolve}/AliasCompiler.d.ts +18 -5
  53. package/{build/support/PathResolver → dist/resolve}/AliasCompiler.js +31 -9
  54. package/dist/resolve/AliasCompiler.js.map +1 -0
  55. package/{build/support/PathResolver → dist/resolve}/PathResolver.d.ts +25 -8
  56. package/dist/resolve/PathResolver.js +133 -0
  57. package/dist/resolve/PathResolver.js.map +1 -0
  58. package/dist/resolve/PathRewriter.d.ts +24 -0
  59. package/{build/support/PathResolver → dist/resolve}/PathRewriter.js +21 -11
  60. package/dist/resolve/PathRewriter.js.map +1 -0
  61. package/{build → dist}/schema/Config/Builder.d.ts +114 -49
  62. package/dist/schema/Config/Builder.js +78 -0
  63. package/dist/schema/Config/Builder.js.map +1 -0
  64. package/{build → dist}/schema/Config/Config.d.ts +169 -78
  65. package/dist/schema/Config/Config.js +62 -0
  66. package/dist/schema/Config/Config.js.map +1 -0
  67. package/{build → dist}/schema/Config/Dependency.d.ts +219 -89
  68. package/dist/schema/Config/Dependency.js +80 -0
  69. package/dist/schema/Config/Dependency.js.map +1 -0
  70. package/{build → dist}/schema/Config/Extractor.d.ts +41 -17
  71. package/dist/schema/Config/Extractor.js +43 -0
  72. package/dist/schema/Config/Extractor.js.map +1 -0
  73. package/{build → dist}/schema/Config/Resolver.d.ts +25 -8
  74. package/dist/schema/Config/Resolver.js +43 -0
  75. package/dist/schema/Config/Resolver.js.map +1 -0
  76. package/{build → dist}/schema/Config/Transform.d.ts +22 -5
  77. package/dist/schema/Config/Transform.js +51 -0
  78. package/dist/schema/Config/Transform.js.map +1 -0
  79. package/dist/schema/Defaults.d.ts +20 -0
  80. package/dist/schema/Defaults.js +24 -0
  81. package/dist/schema/Defaults.js.map +1 -0
  82. package/dist/schema/ImportMap.d.ts +30 -0
  83. package/dist/schema/ImportMap.js +28 -0
  84. package/dist/schema/ImportMap.js.map +1 -0
  85. package/{build → dist}/schema/TSConfig.d.ts +23 -9
  86. package/dist/schema/TSConfig.js +39 -0
  87. package/dist/schema/TSConfig.js.map +1 -0
  88. package/{build → dist}/schema/schema.d.ts +11 -2
  89. package/{build → dist}/schema/schema.js +11 -2
  90. package/dist/schema/schema.js.map +1 -0
  91. package/dist/task/Command.d.ts +287 -0
  92. package/dist/task/Command.js +404 -0
  93. package/dist/task/Command.js.map +1 -0
  94. package/dist/task/Group.d.ts +15 -0
  95. package/dist/task/Group.js +29 -0
  96. package/dist/task/Group.js.map +1 -0
  97. package/dist/task/OutputPolicy.d.ts +262 -0
  98. package/dist/task/OutputPolicy.js +364 -0
  99. package/dist/task/OutputPolicy.js.map +1 -0
  100. package/dist/task/Task.d.ts +210 -0
  101. package/dist/task/Task.js +312 -0
  102. package/dist/task/Task.js.map +1 -0
  103. package/package.json +13 -10
  104. package/.gitignore +0 -7
  105. package/build/cli/DepFLowCLI.d.ts +0 -16
  106. package/build/cli/DepFLowCLI.js +0 -254
  107. package/build/cli/DepFLowCLI.js.map +0 -1
  108. package/build/cli/bin.js +0 -38
  109. package/build/cli/bin.js.map +0 -1
  110. package/build/config/Config.d.ts +0 -28
  111. package/build/config/Config.js +0 -46
  112. package/build/config/Config.js.map +0 -1
  113. package/build/config/ImportMap.d.ts +0 -51
  114. package/build/config/ImportMap.js +0 -97
  115. package/build/config/ImportMap.js.map +0 -1
  116. package/build/config/TSConfig.d.ts +0 -54
  117. package/build/config/TSConfig.js +0 -104
  118. package/build/config/TSConfig.js.map +0 -1
  119. package/build/schema/Config/Builder.js +0 -48
  120. package/build/schema/Config/Builder.js.map +0 -1
  121. package/build/schema/Config/Config.js +0 -20
  122. package/build/schema/Config/Config.js.map +0 -1
  123. package/build/schema/Config/Dependency.js +0 -25
  124. package/build/schema/Config/Dependency.js.map +0 -1
  125. package/build/schema/Config/Extractor.js +0 -25
  126. package/build/schema/Config/Extractor.js.map +0 -1
  127. package/build/schema/Config/Resolver.js +0 -25
  128. package/build/schema/Config/Resolver.js.map +0 -1
  129. package/build/schema/Config/Transform.js +0 -27
  130. package/build/schema/Config/Transform.js.map +0 -1
  131. package/build/schema/ImportMap.d.ts +0 -22
  132. package/build/schema/ImportMap.js +0 -12
  133. package/build/schema/ImportMap.js.map +0 -1
  134. package/build/schema/TSConfig.js +0 -19
  135. package/build/schema/TSConfig.js.map +0 -1
  136. package/build/schema/schema.js.map +0 -1
  137. package/build/support/Builder/Builder.d.ts +0 -46
  138. package/build/support/Builder/Builder.js +0 -116
  139. package/build/support/Builder/Builder.js.map +0 -1
  140. package/build/support/Dependency/Dependency.d.ts +0 -38
  141. package/build/support/Dependency/Dependency.js +0 -14
  142. package/build/support/Dependency/Dependency.js.map +0 -1
  143. package/build/support/Dependency/GitDependency.d.ts +0 -20
  144. package/build/support/Dependency/GitDependency.js +0 -67
  145. package/build/support/Dependency/GitDependency.js.map +0 -1
  146. package/build/support/Dependency/NpmDependency.d.ts +0 -18
  147. package/build/support/Dependency/NpmDependency.js +0 -65
  148. package/build/support/Dependency/NpmDependency.js.map +0 -1
  149. package/build/support/Git.d.ts +0 -53
  150. package/build/support/Git.js +0 -86
  151. package/build/support/Git.js.map +0 -1
  152. package/build/support/PathResolver/AliasCompiler.js.map +0 -1
  153. package/build/support/PathResolver/PathResolver.js +0 -105
  154. package/build/support/PathResolver/PathResolver.js.map +0 -1
  155. package/build/support/PathResolver/PathRewriter.d.ts +0 -18
  156. package/build/support/PathResolver/PathRewriter.js.map +0 -1
  157. package/build/support/PathResolver/Utils.d.ts +0 -36
  158. package/build/support/PathResolver/Utils.js +0 -45
  159. package/build/support/PathResolver/Utils.js.map +0 -1
  160. package/build/support/Task/Command.d.ts +0 -49
  161. package/build/support/Task/Command.js +0 -100
  162. package/build/support/Task/Command.js.map +0 -1
  163. package/build/support/Task/Task.d.ts +0 -84
  164. package/build/support/Task/Task.js +0 -145
  165. package/build/support/Task/Task.js.map +0 -1
  166. package/build/support/Utils.d.ts +0 -40
  167. package/build/support/Utils.js +0 -138
  168. package/build/support/Utils.js.map +0 -1
  169. package/build/support/Validator.d.ts +0 -22
  170. package/build/support/Validator.js +0 -28
  171. package/build/support/Validator.js.map +0 -1
  172. /package/{build → dist}/cli/bin.d.ts +0 -0
@@ -1,42 +1,59 @@
1
- import { Schema } from '@netfeez/common';
1
+ /**
2
+ * @author NetFeez <netfeez.dev@gmail.com>.
3
+ * @description Schema definitions for git and npm dependencies.
4
+ * @license Apache-2.0
5
+ */
6
+ import Schema from '@netfeez/schema';
7
+ export declare namespace DependencyName {
8
+ /** A single path segment: the identity of a git source, also the name of its checkout folder. */
9
+ const GIT: RegExp;
10
+ /** A package name, optionally scoped: the identity of an npm source. */
11
+ const NPM: RegExp;
12
+ }
13
+ export declare namespace DependencyName { }
2
14
  export declare const GitDependency: Schema<{
3
15
  readonly type: "object";
4
- readonly properties: {
16
+ readonly keys: {
5
17
  readonly name: {
6
18
  readonly type: "string";
7
19
  readonly required: true;
20
+ readonly pattern: RegExp;
21
+ readonly description: "Unique name used to reference the dependency in flows and path aliases. It is an identity, not a path: a single alphanumeric segment.";
8
22
  };
9
23
  readonly repo: {
10
24
  readonly type: "string";
11
25
  readonly required: true;
26
+ readonly description: "Git repository URL to clone the dependency from.";
12
27
  };
13
28
  readonly tag: {
14
29
  readonly type: "string";
15
30
  readonly default: "main";
31
+ readonly description: "Git tag, branch or commit to check out after cloning. Defaults to \"main\".";
16
32
  };
17
33
  readonly builder: {
18
34
  readonly type: "array";
19
- readonly default: [];
20
35
  readonly items: {
21
36
  readonly type: "union";
22
37
  readonly required: true;
23
- readonly union: [{
38
+ readonly union: readonly [{
24
39
  readonly type: "object";
25
40
  readonly required: true;
26
- readonly properties: {
41
+ readonly keys: {
27
42
  readonly maxTimeMs: {
28
43
  readonly type: "number";
29
44
  readonly default: 60000;
30
45
  readonly minimum: -1;
46
+ readonly description: "Maximum execution time for the run step in milliseconds. A value of -1 disables the limit.";
31
47
  };
32
48
  readonly allowFails: {
33
49
  readonly type: "boolean";
34
50
  readonly default: false;
51
+ readonly description: "Whether failed commands within the step are tolerated. Defaults to false.";
35
52
  };
36
53
  readonly run: {
37
54
  readonly type: "union";
38
55
  readonly required: true;
39
- readonly union: [{
56
+ readonly union: readonly [{
40
57
  readonly type: "string";
41
58
  }, {
42
59
  readonly type: "array";
@@ -44,144 +61,169 @@ export declare const GitDependency: Schema<{
44
61
  readonly type: "string";
45
62
  };
46
63
  }];
64
+ readonly description: "Shell command or list of shell commands to execute.";
47
65
  };
48
66
  };
49
67
  }, {
50
68
  readonly type: "object";
51
69
  readonly required: true;
52
- readonly properties: {
70
+ readonly keys: {
53
71
  readonly extract: {
54
72
  readonly type: "union";
55
73
  readonly required: true;
56
- readonly union: [{
74
+ readonly union: readonly [{
57
75
  readonly type: "string";
58
76
  }, {
59
77
  readonly type: "object";
60
78
  readonly required: true;
61
- readonly allowAdditionalProperties: {
79
+ readonly additional: {
62
80
  readonly type: "union";
63
81
  readonly required: true;
64
- readonly union: [{
82
+ readonly union: readonly [{
65
83
  readonly type: "string";
66
84
  readonly required: true;
67
85
  }, {
68
86
  readonly type: "object";
69
87
  readonly required: true;
70
- readonly properties: {
88
+ readonly keys: {
71
89
  readonly to: {
72
90
  readonly type: "string";
73
91
  readonly required: true;
92
+ readonly description: "Destination folder to which the matched files are copied. A relative path is resolved against the project root, an absolute one is used as it stands.";
74
93
  };
75
94
  readonly map: {
76
- readonly required: false;
77
95
  readonly type: "union";
78
- readonly union: [{
96
+ readonly union: readonly [{
79
97
  readonly type: "string";
80
98
  }, {
81
99
  readonly type: "object";
82
- readonly properties: {
100
+ readonly keys: {
83
101
  readonly search: {
84
102
  readonly type: "string";
85
103
  readonly required: true;
104
+ readonly description: "The regular expression pattern to search for in the file content.";
86
105
  };
87
106
  readonly flags: {
88
107
  readonly type: "string";
89
108
  readonly default: "g";
90
109
  readonly pattern: RegExp;
110
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
91
111
  };
92
112
  readonly replace: {
93
113
  readonly type: "string";
94
114
  readonly required: true;
115
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
95
116
  };
96
117
  };
97
118
  }];
119
+ readonly required: false;
120
+ readonly description: "Transformation applied to the destination path of the extracted files.";
98
121
  };
99
122
  readonly transform: {
100
- readonly required: false;
101
123
  readonly type: "union";
102
- readonly union: [{
124
+ readonly union: readonly [{
103
125
  readonly type: "string";
104
126
  }, {
105
127
  readonly type: "object";
106
- readonly properties: {
128
+ readonly keys: {
107
129
  readonly search: {
108
130
  readonly type: "string";
109
131
  readonly required: true;
132
+ readonly description: "The regular expression pattern to search for in the file content.";
110
133
  };
111
134
  readonly flags: {
112
135
  readonly type: "string";
113
136
  readonly default: "g";
114
137
  readonly pattern: RegExp;
138
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
115
139
  };
116
140
  readonly replace: {
117
141
  readonly type: "string";
118
142
  readonly required: true;
143
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
119
144
  };
120
145
  };
121
146
  }];
147
+ readonly required: false;
148
+ readonly description: "Transformation applied to the content of the extracted files.";
122
149
  };
123
150
  };
124
151
  }];
125
152
  };
153
+ readonly description: "Mapping of source glob patterns, relative to the folder the pipeline works in, to extraction entries, each describing where and how files are extracted.";
126
154
  }];
155
+ readonly description: "Destination folder for the extracted files or an extraction mapping.";
127
156
  };
128
157
  };
129
158
  }, {
130
159
  readonly type: "object";
131
160
  readonly required: true;
132
- readonly properties: {
161
+ readonly keys: {
133
162
  readonly transform: {
134
163
  readonly type: "object";
135
164
  readonly required: true;
136
- readonly properties: {
165
+ readonly keys: {
137
166
  readonly search: {
138
167
  readonly type: "string";
139
168
  readonly required: true;
169
+ readonly description: "The regular expression pattern to search for in the file content.";
140
170
  };
141
171
  readonly flags: {
142
172
  readonly type: "string";
143
173
  readonly default: "g";
144
174
  readonly pattern: RegExp;
175
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
145
176
  };
146
177
  readonly replace: {
147
178
  readonly type: "string";
148
179
  readonly required: true;
180
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
149
181
  };
150
182
  readonly glob: {
151
183
  readonly type: "string";
152
184
  readonly required: true;
185
+ readonly description: "Glob pattern matching the files to which the global transformation is applied.";
153
186
  };
154
187
  };
188
+ readonly description: "Global transformation to apply over the files matched by the glob pattern.";
155
189
  };
156
190
  };
157
191
  }];
192
+ readonly description: "A single build step: run commands, extract files or apply a global transformation.";
158
193
  };
194
+ readonly default: never[];
195
+ readonly description: "Build pipeline applied after cloning the repository.";
159
196
  };
160
197
  readonly resolver: {
161
198
  readonly type: "object";
162
199
  readonly required: true;
163
- readonly default: {};
164
- readonly allowAdditionalProperties: {
200
+ readonly additional: {
165
201
  readonly type: "union";
166
202
  readonly required: true;
167
- readonly union: [{
203
+ readonly union: readonly [{
168
204
  readonly type: "string";
169
205
  }, {
170
206
  readonly type: "object";
171
- readonly properties: {
207
+ readonly keys: {
172
208
  readonly local: {
173
209
  readonly type: "string";
174
210
  readonly required: true;
211
+ readonly description: "Local path or glob pattern the dependency resolves to.";
175
212
  };
176
213
  readonly type: {
177
214
  readonly type: "string";
215
+ readonly description: "Optional identifier describing the resolution type.";
178
216
  };
179
217
  readonly cdn: {
180
218
  readonly type: "string";
219
+ readonly description: "CDN URL used when the dependency is resolved in CDN mode.";
181
220
  };
182
221
  };
183
222
  }];
223
+ readonly description: "Resolution target of a dependency: either a plain string or an object with local, type and cdn options.";
184
224
  };
225
+ readonly default: Record<string, never>;
226
+ readonly description: "Target resolution used to rewrite the dependency paths.";
185
227
  };
186
228
  };
187
229
  }>;
@@ -189,38 +231,42 @@ export type GitDependency = typeof GitDependency.infer;
189
231
  export declare namespace GitDependency { }
190
232
  export declare const NpmDependency: Schema<{
191
233
  readonly type: "object";
192
- readonly properties: {
234
+ readonly keys: {
193
235
  readonly name: {
194
236
  readonly type: "string";
195
237
  readonly required: true;
238
+ readonly pattern: RegExp;
239
+ readonly description: "NPM package name to install, optionally scoped.";
196
240
  };
197
241
  readonly version: {
198
242
  readonly type: "string";
199
243
  readonly required: true;
244
+ readonly description: "NPM package version or semver range to install.";
200
245
  };
201
246
  readonly builder: {
202
247
  readonly type: "array";
203
- readonly default: [];
204
248
  readonly items: {
205
249
  readonly type: "union";
206
250
  readonly required: true;
207
- readonly union: [{
251
+ readonly union: readonly [{
208
252
  readonly type: "object";
209
253
  readonly required: true;
210
- readonly properties: {
254
+ readonly keys: {
211
255
  readonly maxTimeMs: {
212
256
  readonly type: "number";
213
257
  readonly default: 60000;
214
258
  readonly minimum: -1;
259
+ readonly description: "Maximum execution time for the run step in milliseconds. A value of -1 disables the limit.";
215
260
  };
216
261
  readonly allowFails: {
217
262
  readonly type: "boolean";
218
263
  readonly default: false;
264
+ readonly description: "Whether failed commands within the step are tolerated. Defaults to false.";
219
265
  };
220
266
  readonly run: {
221
267
  readonly type: "union";
222
268
  readonly required: true;
223
- readonly union: [{
269
+ readonly union: readonly [{
224
270
  readonly type: "string";
225
271
  }, {
226
272
  readonly type: "array";
@@ -228,144 +274,169 @@ export declare const NpmDependency: Schema<{
228
274
  readonly type: "string";
229
275
  };
230
276
  }];
277
+ readonly description: "Shell command or list of shell commands to execute.";
231
278
  };
232
279
  };
233
280
  }, {
234
281
  readonly type: "object";
235
282
  readonly required: true;
236
- readonly properties: {
283
+ readonly keys: {
237
284
  readonly extract: {
238
285
  readonly type: "union";
239
286
  readonly required: true;
240
- readonly union: [{
287
+ readonly union: readonly [{
241
288
  readonly type: "string";
242
289
  }, {
243
290
  readonly type: "object";
244
291
  readonly required: true;
245
- readonly allowAdditionalProperties: {
292
+ readonly additional: {
246
293
  readonly type: "union";
247
294
  readonly required: true;
248
- readonly union: [{
295
+ readonly union: readonly [{
249
296
  readonly type: "string";
250
297
  readonly required: true;
251
298
  }, {
252
299
  readonly type: "object";
253
300
  readonly required: true;
254
- readonly properties: {
301
+ readonly keys: {
255
302
  readonly to: {
256
303
  readonly type: "string";
257
304
  readonly required: true;
305
+ readonly description: "Destination folder to which the matched files are copied. A relative path is resolved against the project root, an absolute one is used as it stands.";
258
306
  };
259
307
  readonly map: {
260
- readonly required: false;
261
308
  readonly type: "union";
262
- readonly union: [{
309
+ readonly union: readonly [{
263
310
  readonly type: "string";
264
311
  }, {
265
312
  readonly type: "object";
266
- readonly properties: {
313
+ readonly keys: {
267
314
  readonly search: {
268
315
  readonly type: "string";
269
316
  readonly required: true;
317
+ readonly description: "The regular expression pattern to search for in the file content.";
270
318
  };
271
319
  readonly flags: {
272
320
  readonly type: "string";
273
321
  readonly default: "g";
274
322
  readonly pattern: RegExp;
323
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
275
324
  };
276
325
  readonly replace: {
277
326
  readonly type: "string";
278
327
  readonly required: true;
328
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
279
329
  };
280
330
  };
281
331
  }];
332
+ readonly required: false;
333
+ readonly description: "Transformation applied to the destination path of the extracted files.";
282
334
  };
283
335
  readonly transform: {
284
- readonly required: false;
285
336
  readonly type: "union";
286
- readonly union: [{
337
+ readonly union: readonly [{
287
338
  readonly type: "string";
288
339
  }, {
289
340
  readonly type: "object";
290
- readonly properties: {
341
+ readonly keys: {
291
342
  readonly search: {
292
343
  readonly type: "string";
293
344
  readonly required: true;
345
+ readonly description: "The regular expression pattern to search for in the file content.";
294
346
  };
295
347
  readonly flags: {
296
348
  readonly type: "string";
297
349
  readonly default: "g";
298
350
  readonly pattern: RegExp;
351
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
299
352
  };
300
353
  readonly replace: {
301
354
  readonly type: "string";
302
355
  readonly required: true;
356
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
303
357
  };
304
358
  };
305
359
  }];
360
+ readonly required: false;
361
+ readonly description: "Transformation applied to the content of the extracted files.";
306
362
  };
307
363
  };
308
364
  }];
309
365
  };
366
+ readonly description: "Mapping of source glob patterns, relative to the folder the pipeline works in, to extraction entries, each describing where and how files are extracted.";
310
367
  }];
368
+ readonly description: "Destination folder for the extracted files or an extraction mapping.";
311
369
  };
312
370
  };
313
371
  }, {
314
372
  readonly type: "object";
315
373
  readonly required: true;
316
- readonly properties: {
374
+ readonly keys: {
317
375
  readonly transform: {
318
376
  readonly type: "object";
319
377
  readonly required: true;
320
- readonly properties: {
378
+ readonly keys: {
321
379
  readonly search: {
322
380
  readonly type: "string";
323
381
  readonly required: true;
382
+ readonly description: "The regular expression pattern to search for in the file content.";
324
383
  };
325
384
  readonly flags: {
326
385
  readonly type: "string";
327
386
  readonly default: "g";
328
387
  readonly pattern: RegExp;
388
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
329
389
  };
330
390
  readonly replace: {
331
391
  readonly type: "string";
332
392
  readonly required: true;
393
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
333
394
  };
334
395
  readonly glob: {
335
396
  readonly type: "string";
336
397
  readonly required: true;
398
+ readonly description: "Glob pattern matching the files to which the global transformation is applied.";
337
399
  };
338
400
  };
401
+ readonly description: "Global transformation to apply over the files matched by the glob pattern.";
339
402
  };
340
403
  };
341
404
  }];
405
+ readonly description: "A single build step: run commands, extract files or apply a global transformation.";
342
406
  };
407
+ readonly default: never[];
408
+ readonly description: "Build pipeline applied after installing the package.";
343
409
  };
344
410
  readonly resolver: {
345
411
  readonly type: "object";
346
412
  readonly required: true;
347
- readonly default: {};
348
- readonly allowAdditionalProperties: {
413
+ readonly additional: {
349
414
  readonly type: "union";
350
415
  readonly required: true;
351
- readonly union: [{
416
+ readonly union: readonly [{
352
417
  readonly type: "string";
353
418
  }, {
354
419
  readonly type: "object";
355
- readonly properties: {
420
+ readonly keys: {
356
421
  readonly local: {
357
422
  readonly type: "string";
358
423
  readonly required: true;
424
+ readonly description: "Local path or glob pattern the dependency resolves to.";
359
425
  };
360
426
  readonly type: {
361
427
  readonly type: "string";
428
+ readonly description: "Optional identifier describing the resolution type.";
362
429
  };
363
430
  readonly cdn: {
364
431
  readonly type: "string";
432
+ readonly description: "CDN URL used when the dependency is resolved in CDN mode.";
365
433
  };
366
434
  };
367
435
  }];
436
+ readonly description: "Resolution target of a dependency: either a plain string or an object with local, type and cdn options.";
368
437
  };
438
+ readonly default: Record<string, never>;
439
+ readonly description: "Target resolution used to rewrite the dependency paths.";
369
440
  };
370
441
  };
371
442
  }>;
@@ -374,42 +445,47 @@ export declare namespace NpmDependency { }
374
445
  export declare const Dependency: {
375
446
  GitDependency: Schema<{
376
447
  readonly type: "object";
377
- readonly properties: {
448
+ readonly keys: {
378
449
  readonly name: {
379
450
  readonly type: "string";
380
451
  readonly required: true;
452
+ readonly pattern: RegExp;
453
+ readonly description: "Unique name used to reference the dependency in flows and path aliases. It is an identity, not a path: a single alphanumeric segment.";
381
454
  };
382
455
  readonly repo: {
383
456
  readonly type: "string";
384
457
  readonly required: true;
458
+ readonly description: "Git repository URL to clone the dependency from.";
385
459
  };
386
460
  readonly tag: {
387
461
  readonly type: "string";
388
462
  readonly default: "main";
463
+ readonly description: "Git tag, branch or commit to check out after cloning. Defaults to \"main\".";
389
464
  };
390
465
  readonly builder: {
391
466
  readonly type: "array";
392
- readonly default: [];
393
467
  readonly items: {
394
468
  readonly type: "union";
395
469
  readonly required: true;
396
- readonly union: [{
470
+ readonly union: readonly [{
397
471
  readonly type: "object";
398
472
  readonly required: true;
399
- readonly properties: {
473
+ readonly keys: {
400
474
  readonly maxTimeMs: {
401
475
  readonly type: "number";
402
476
  readonly default: 60000;
403
477
  readonly minimum: -1;
478
+ readonly description: "Maximum execution time for the run step in milliseconds. A value of -1 disables the limit.";
404
479
  };
405
480
  readonly allowFails: {
406
481
  readonly type: "boolean";
407
482
  readonly default: false;
483
+ readonly description: "Whether failed commands within the step are tolerated. Defaults to false.";
408
484
  };
409
485
  readonly run: {
410
486
  readonly type: "union";
411
487
  readonly required: true;
412
- readonly union: [{
488
+ readonly union: readonly [{
413
489
  readonly type: "string";
414
490
  }, {
415
491
  readonly type: "array";
@@ -417,181 +493,210 @@ export declare const Dependency: {
417
493
  readonly type: "string";
418
494
  };
419
495
  }];
496
+ readonly description: "Shell command or list of shell commands to execute.";
420
497
  };
421
498
  };
422
499
  }, {
423
500
  readonly type: "object";
424
501
  readonly required: true;
425
- readonly properties: {
502
+ readonly keys: {
426
503
  readonly extract: {
427
504
  readonly type: "union";
428
505
  readonly required: true;
429
- readonly union: [{
506
+ readonly union: readonly [{
430
507
  readonly type: "string";
431
508
  }, {
432
509
  readonly type: "object";
433
510
  readonly required: true;
434
- readonly allowAdditionalProperties: {
511
+ readonly additional: {
435
512
  readonly type: "union";
436
513
  readonly required: true;
437
- readonly union: [{
514
+ readonly union: readonly [{
438
515
  readonly type: "string";
439
516
  readonly required: true;
440
517
  }, {
441
518
  readonly type: "object";
442
519
  readonly required: true;
443
- readonly properties: {
520
+ readonly keys: {
444
521
  readonly to: {
445
522
  readonly type: "string";
446
523
  readonly required: true;
524
+ readonly description: "Destination folder to which the matched files are copied. A relative path is resolved against the project root, an absolute one is used as it stands.";
447
525
  };
448
526
  readonly map: {
449
- readonly required: false;
450
527
  readonly type: "union";
451
- readonly union: [{
528
+ readonly union: readonly [{
452
529
  readonly type: "string";
453
530
  }, {
454
531
  readonly type: "object";
455
- readonly properties: {
532
+ readonly keys: {
456
533
  readonly search: {
457
534
  readonly type: "string";
458
535
  readonly required: true;
536
+ readonly description: "The regular expression pattern to search for in the file content.";
459
537
  };
460
538
  readonly flags: {
461
539
  readonly type: "string";
462
540
  readonly default: "g";
463
541
  readonly pattern: RegExp;
542
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
464
543
  };
465
544
  readonly replace: {
466
545
  readonly type: "string";
467
546
  readonly required: true;
547
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
468
548
  };
469
549
  };
470
550
  }];
551
+ readonly required: false;
552
+ readonly description: "Transformation applied to the destination path of the extracted files.";
471
553
  };
472
554
  readonly transform: {
473
- readonly required: false;
474
555
  readonly type: "union";
475
- readonly union: [{
556
+ readonly union: readonly [{
476
557
  readonly type: "string";
477
558
  }, {
478
559
  readonly type: "object";
479
- readonly properties: {
560
+ readonly keys: {
480
561
  readonly search: {
481
562
  readonly type: "string";
482
563
  readonly required: true;
564
+ readonly description: "The regular expression pattern to search for in the file content.";
483
565
  };
484
566
  readonly flags: {
485
567
  readonly type: "string";
486
568
  readonly default: "g";
487
569
  readonly pattern: RegExp;
570
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
488
571
  };
489
572
  readonly replace: {
490
573
  readonly type: "string";
491
574
  readonly required: true;
575
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
492
576
  };
493
577
  };
494
578
  }];
579
+ readonly required: false;
580
+ readonly description: "Transformation applied to the content of the extracted files.";
495
581
  };
496
582
  };
497
583
  }];
498
584
  };
585
+ readonly description: "Mapping of source glob patterns, relative to the folder the pipeline works in, to extraction entries, each describing where and how files are extracted.";
499
586
  }];
587
+ readonly description: "Destination folder for the extracted files or an extraction mapping.";
500
588
  };
501
589
  };
502
590
  }, {
503
591
  readonly type: "object";
504
592
  readonly required: true;
505
- readonly properties: {
593
+ readonly keys: {
506
594
  readonly transform: {
507
595
  readonly type: "object";
508
596
  readonly required: true;
509
- readonly properties: {
597
+ readonly keys: {
510
598
  readonly search: {
511
599
  readonly type: "string";
512
600
  readonly required: true;
601
+ readonly description: "The regular expression pattern to search for in the file content.";
513
602
  };
514
603
  readonly flags: {
515
604
  readonly type: "string";
516
605
  readonly default: "g";
517
606
  readonly pattern: RegExp;
607
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
518
608
  };
519
609
  readonly replace: {
520
610
  readonly type: "string";
521
611
  readonly required: true;
612
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
522
613
  };
523
614
  readonly glob: {
524
615
  readonly type: "string";
525
616
  readonly required: true;
617
+ readonly description: "Glob pattern matching the files to which the global transformation is applied.";
526
618
  };
527
619
  };
620
+ readonly description: "Global transformation to apply over the files matched by the glob pattern.";
528
621
  };
529
622
  };
530
623
  }];
624
+ readonly description: "A single build step: run commands, extract files or apply a global transformation.";
531
625
  };
626
+ readonly default: never[];
627
+ readonly description: "Build pipeline applied after cloning the repository.";
532
628
  };
533
629
  readonly resolver: {
534
630
  readonly type: "object";
535
631
  readonly required: true;
536
- readonly default: {};
537
- readonly allowAdditionalProperties: {
632
+ readonly additional: {
538
633
  readonly type: "union";
539
634
  readonly required: true;
540
- readonly union: [{
635
+ readonly union: readonly [{
541
636
  readonly type: "string";
542
637
  }, {
543
638
  readonly type: "object";
544
- readonly properties: {
639
+ readonly keys: {
545
640
  readonly local: {
546
641
  readonly type: "string";
547
642
  readonly required: true;
643
+ readonly description: "Local path or glob pattern the dependency resolves to.";
548
644
  };
549
645
  readonly type: {
550
646
  readonly type: "string";
647
+ readonly description: "Optional identifier describing the resolution type.";
551
648
  };
552
649
  readonly cdn: {
553
650
  readonly type: "string";
651
+ readonly description: "CDN URL used when the dependency is resolved in CDN mode.";
554
652
  };
555
653
  };
556
654
  }];
655
+ readonly description: "Resolution target of a dependency: either a plain string or an object with local, type and cdn options.";
557
656
  };
657
+ readonly default: Record<string, never>;
658
+ readonly description: "Target resolution used to rewrite the dependency paths.";
558
659
  };
559
660
  };
560
661
  }>;
561
662
  NpmDependency: Schema<{
562
663
  readonly type: "object";
563
- readonly properties: {
664
+ readonly keys: {
564
665
  readonly name: {
565
666
  readonly type: "string";
566
667
  readonly required: true;
668
+ readonly pattern: RegExp;
669
+ readonly description: "NPM package name to install, optionally scoped.";
567
670
  };
568
671
  readonly version: {
569
672
  readonly type: "string";
570
673
  readonly required: true;
674
+ readonly description: "NPM package version or semver range to install.";
571
675
  };
572
676
  readonly builder: {
573
677
  readonly type: "array";
574
- readonly default: [];
575
678
  readonly items: {
576
679
  readonly type: "union";
577
680
  readonly required: true;
578
- readonly union: [{
681
+ readonly union: readonly [{
579
682
  readonly type: "object";
580
683
  readonly required: true;
581
- readonly properties: {
684
+ readonly keys: {
582
685
  readonly maxTimeMs: {
583
686
  readonly type: "number";
584
687
  readonly default: 60000;
585
688
  readonly minimum: -1;
689
+ readonly description: "Maximum execution time for the run step in milliseconds. A value of -1 disables the limit.";
586
690
  };
587
691
  readonly allowFails: {
588
692
  readonly type: "boolean";
589
693
  readonly default: false;
694
+ readonly description: "Whether failed commands within the step are tolerated. Defaults to false.";
590
695
  };
591
696
  readonly run: {
592
697
  readonly type: "union";
593
698
  readonly required: true;
594
- readonly union: [{
699
+ readonly union: readonly [{
595
700
  readonly type: "string";
596
701
  }, {
597
702
  readonly type: "array";
@@ -599,144 +704,169 @@ export declare const Dependency: {
599
704
  readonly type: "string";
600
705
  };
601
706
  }];
707
+ readonly description: "Shell command or list of shell commands to execute.";
602
708
  };
603
709
  };
604
710
  }, {
605
711
  readonly type: "object";
606
712
  readonly required: true;
607
- readonly properties: {
713
+ readonly keys: {
608
714
  readonly extract: {
609
715
  readonly type: "union";
610
716
  readonly required: true;
611
- readonly union: [{
717
+ readonly union: readonly [{
612
718
  readonly type: "string";
613
719
  }, {
614
720
  readonly type: "object";
615
721
  readonly required: true;
616
- readonly allowAdditionalProperties: {
722
+ readonly additional: {
617
723
  readonly type: "union";
618
724
  readonly required: true;
619
- readonly union: [{
725
+ readonly union: readonly [{
620
726
  readonly type: "string";
621
727
  readonly required: true;
622
728
  }, {
623
729
  readonly type: "object";
624
730
  readonly required: true;
625
- readonly properties: {
731
+ readonly keys: {
626
732
  readonly to: {
627
733
  readonly type: "string";
628
734
  readonly required: true;
735
+ readonly description: "Destination folder to which the matched files are copied. A relative path is resolved against the project root, an absolute one is used as it stands.";
629
736
  };
630
737
  readonly map: {
631
- readonly required: false;
632
738
  readonly type: "union";
633
- readonly union: [{
739
+ readonly union: readonly [{
634
740
  readonly type: "string";
635
741
  }, {
636
742
  readonly type: "object";
637
- readonly properties: {
743
+ readonly keys: {
638
744
  readonly search: {
639
745
  readonly type: "string";
640
746
  readonly required: true;
747
+ readonly description: "The regular expression pattern to search for in the file content.";
641
748
  };
642
749
  readonly flags: {
643
750
  readonly type: "string";
644
751
  readonly default: "g";
645
752
  readonly pattern: RegExp;
753
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
646
754
  };
647
755
  readonly replace: {
648
756
  readonly type: "string";
649
757
  readonly required: true;
758
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
650
759
  };
651
760
  };
652
761
  }];
762
+ readonly required: false;
763
+ readonly description: "Transformation applied to the destination path of the extracted files.";
653
764
  };
654
765
  readonly transform: {
655
- readonly required: false;
656
766
  readonly type: "union";
657
- readonly union: [{
767
+ readonly union: readonly [{
658
768
  readonly type: "string";
659
769
  }, {
660
770
  readonly type: "object";
661
- readonly properties: {
771
+ readonly keys: {
662
772
  readonly search: {
663
773
  readonly type: "string";
664
774
  readonly required: true;
775
+ readonly description: "The regular expression pattern to search for in the file content.";
665
776
  };
666
777
  readonly flags: {
667
778
  readonly type: "string";
668
779
  readonly default: "g";
669
780
  readonly pattern: RegExp;
781
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
670
782
  };
671
783
  readonly replace: {
672
784
  readonly type: "string";
673
785
  readonly required: true;
786
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
674
787
  };
675
788
  };
676
789
  }];
790
+ readonly required: false;
791
+ readonly description: "Transformation applied to the content of the extracted files.";
677
792
  };
678
793
  };
679
794
  }];
680
795
  };
796
+ readonly description: "Mapping of source glob patterns, relative to the folder the pipeline works in, to extraction entries, each describing where and how files are extracted.";
681
797
  }];
798
+ readonly description: "Destination folder for the extracted files or an extraction mapping.";
682
799
  };
683
800
  };
684
801
  }, {
685
802
  readonly type: "object";
686
803
  readonly required: true;
687
- readonly properties: {
804
+ readonly keys: {
688
805
  readonly transform: {
689
806
  readonly type: "object";
690
807
  readonly required: true;
691
- readonly properties: {
808
+ readonly keys: {
692
809
  readonly search: {
693
810
  readonly type: "string";
694
811
  readonly required: true;
812
+ readonly description: "The regular expression pattern to search for in the file content.";
695
813
  };
696
814
  readonly flags: {
697
815
  readonly type: "string";
698
816
  readonly default: "g";
699
817
  readonly pattern: RegExp;
818
+ readonly description: "Flags applied to the regular expression search. Defaults to \"g\" (global).";
700
819
  };
701
820
  readonly replace: {
702
821
  readonly type: "string";
703
822
  readonly required: true;
823
+ readonly description: "The replacement string used to substitute the matches found by the search pattern.";
704
824
  };
705
825
  readonly glob: {
706
826
  readonly type: "string";
707
827
  readonly required: true;
828
+ readonly description: "Glob pattern matching the files to which the global transformation is applied.";
708
829
  };
709
830
  };
831
+ readonly description: "Global transformation to apply over the files matched by the glob pattern.";
710
832
  };
711
833
  };
712
834
  }];
835
+ readonly description: "A single build step: run commands, extract files or apply a global transformation.";
713
836
  };
837
+ readonly default: never[];
838
+ readonly description: "Build pipeline applied after installing the package.";
714
839
  };
715
840
  readonly resolver: {
716
841
  readonly type: "object";
717
842
  readonly required: true;
718
- readonly default: {};
719
- readonly allowAdditionalProperties: {
843
+ readonly additional: {
720
844
  readonly type: "union";
721
845
  readonly required: true;
722
- readonly union: [{
846
+ readonly union: readonly [{
723
847
  readonly type: "string";
724
848
  }, {
725
849
  readonly type: "object";
726
- readonly properties: {
850
+ readonly keys: {
727
851
  readonly local: {
728
852
  readonly type: "string";
729
853
  readonly required: true;
854
+ readonly description: "Local path or glob pattern the dependency resolves to.";
730
855
  };
731
856
  readonly type: {
732
857
  readonly type: "string";
858
+ readonly description: "Optional identifier describing the resolution type.";
733
859
  };
734
860
  readonly cdn: {
735
861
  readonly type: "string";
862
+ readonly description: "CDN URL used when the dependency is resolved in CDN mode.";
736
863
  };
737
864
  };
738
865
  }];
866
+ readonly description: "Resolution target of a dependency: either a plain string or an object with local, type and cdn options.";
739
867
  };
868
+ readonly default: Record<string, never>;
869
+ readonly description: "Target resolution used to rewrite the dependency paths.";
740
870
  };
741
871
  };
742
872
  }>;