@uipath/solution-tool 1.202.0 → 1.203.0-preview.160
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/dist/THIRD-PARTY-NOTICES.md +23 -1
- package/dist/deploy.js +7 -6
- package/dist/{packager-tool-bt0z25tw.js → embedded-file-reader-xxqe8vs8.js} +98 -16584
- package/dist/first-party-service-sd8yaf73.js +27 -0
- package/dist/index-dqa169gp.js +25 -0
- package/dist/index.js +19 -13
- package/dist/init.js +8 -5
- package/dist/{list-8hvfmge6.js → list-dadxggxt.js} +5 -4
- package/dist/models/pack-command-types.d.ts +33 -5
- package/dist/pack.js +12 -6
- package/dist/{packager-tool-fjjh5veg.js → packager-tool-0f0wt9vh.js} +353 -1519
- package/dist/{packager-tool-pbmpgz04.js → packager-tool-1haahq17.js} +5 -3
- package/dist/{packager-tool-rbrcxjch.js → packager-tool-2syrt51a.js} +7 -4
- package/dist/packager-tool-3jrq7smt.js +1459 -0
- package/dist/packager-tool-53w8skv5.js +262 -0
- package/dist/packager-tool-7znqtw3f.js +244 -0
- package/dist/packager-tool-bkwnetqn.js +16678 -0
- package/dist/{packager-tool-5518wy6n.js → packager-tool-cp07fhx3.js} +9 -6
- package/dist/{packager-tool-w1dzcj31.js → packager-tool-cvfbzs9p.js} +359 -95
- package/dist/packager-tool-gdtpsdn7.js +342 -0
- package/dist/{packager-tool-pyygbnp2.js → packager-tool-htag6yh5.js} +4 -4
- package/dist/{packager-tool-3bewrpq4.js → packager-tool-jz2wbfjz.js} +4 -1
- package/dist/packager-tool-k4mskzww.js +125 -0
- package/dist/{packager-tool-vfcht7hq.js → packager-tool-mj5p341c.js} +11 -12
- package/dist/{packager-tool-bme8epz8.js → packager-tool-n4nfqj99.js} +15381 -2421
- package/dist/{packager-tool-mcpzmn0v.js → packager-tool-rc5pcf2n.js} +45 -21
- package/dist/packager-tool-resolver-fmjr60x8.js +19 -0
- package/dist/{packager-tool-pw7v82j2.js → packager-tool-vas0xg5h.js} +1 -1
- package/dist/packager-tool-znakt6yw.js +188 -0
- package/dist/packager-tool.d.ts +1 -1
- package/dist/packager-tool.js +1 -1
- package/dist/prepare-solution-resources-wds3r8bq.js +22 -0
- package/dist/project-contributions-cvttys34.js +27 -0
- package/dist/publish.js +7 -6
- package/dist/resource.js +7 -4
- package/dist/services/deployment-validation.d.ts +33 -0
- package/dist/services/governance-options.d.ts +61 -1
- package/dist/services/pack-command-service.d.ts +33 -2
- package/dist/services/packager-tool-resolver.d.ts +3 -0
- package/dist/services/prepare-solution-resources.d.ts +40 -0
- package/dist/services/project-contributions.d.ts +58 -0
- package/dist/services/project-type-tools.d.ts +6 -0
- package/dist/templates/AGENTS.md +78 -8
- package/dist/tool.js +19 -13
- package/package.json +3 -2
- package/dist/services/validate-appv2-action-schemas.d.ts +0 -10
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
// ../../node_modules/@uipath/resource-builder-sdk/dist/serialization/json-serializer-names.js
|
|
2
|
+
var JsonSerializerNames = {
|
|
3
|
+
DefaultCaseInsensitive: "DefaultCaseInsensitive",
|
|
4
|
+
CaseInsensitive: "CaseInsensitive",
|
|
5
|
+
Indented: "Indented",
|
|
6
|
+
CamelCase: "CamelCase",
|
|
7
|
+
CaseInsensitiveIndented: "CaseInsensitiveIndented",
|
|
8
|
+
IndentedIgnoreNull: "IndentedIgnoreNull",
|
|
9
|
+
PreservePropertyNames: "PreservePropertyNames",
|
|
10
|
+
CamelCaseIndented: "CamelCaseIndented",
|
|
11
|
+
AllNames: [
|
|
12
|
+
"DefaultCaseInsensitive",
|
|
13
|
+
"CaseInsensitive",
|
|
14
|
+
"Indented",
|
|
15
|
+
"CamelCase",
|
|
16
|
+
"CaseInsensitiveIndented",
|
|
17
|
+
"IndentedIgnoreNull",
|
|
18
|
+
"PreservePropertyNames",
|
|
19
|
+
"CamelCaseIndented"
|
|
20
|
+
]
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
// ../../node_modules/@uipath/resource-builder-sdk/dist/serialization/json-serializer.js
|
|
24
|
+
class JsonSerializer {
|
|
25
|
+
serialize(value) {
|
|
26
|
+
if (value == null)
|
|
27
|
+
return null;
|
|
28
|
+
let toSerialize = value;
|
|
29
|
+
if (this.options.ignoreNull)
|
|
30
|
+
toSerialize = this.removeNullValues(value);
|
|
31
|
+
if (this.options.camelCase && !this.options.preservePropertyNames)
|
|
32
|
+
toSerialize = this.toCamelCase(toSerialize);
|
|
33
|
+
if (this.options.enumCamelCase !== false)
|
|
34
|
+
toSerialize = this.convertEnumValuesToCamelCase(toSerialize);
|
|
35
|
+
const json = JSON.stringify(toSerialize, null, this.options.indented ? 2 : undefined);
|
|
36
|
+
return json;
|
|
37
|
+
}
|
|
38
|
+
async serializeAsync(stream, value, cancellationToken) {
|
|
39
|
+
cancellationToken?.throwIfAborted?.();
|
|
40
|
+
const json = this.serialize(value);
|
|
41
|
+
if (json === null)
|
|
42
|
+
return;
|
|
43
|
+
const writer = stream.getWriter();
|
|
44
|
+
try {
|
|
45
|
+
const bytes = this.encoder.encode(json);
|
|
46
|
+
await writer.write(bytes);
|
|
47
|
+
} finally {
|
|
48
|
+
writer.releaseLock();
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
serializeToUtf8Bytes(value) {
|
|
52
|
+
const json = this.serialize(value);
|
|
53
|
+
if (json === null)
|
|
54
|
+
return new Uint8Array(0);
|
|
55
|
+
return this.encoder.encode(json);
|
|
56
|
+
}
|
|
57
|
+
deserialize(value) {
|
|
58
|
+
if (value == null || value === "")
|
|
59
|
+
return null;
|
|
60
|
+
try {
|
|
61
|
+
let cleanValue = value.charCodeAt(0) === 65279 ? value.slice(1) : value;
|
|
62
|
+
if (cleanValue.charCodeAt(cleanValue.length - 1) === 26)
|
|
63
|
+
cleanValue = cleanValue.slice(0, -1);
|
|
64
|
+
const parsed = JSON.parse(cleanValue);
|
|
65
|
+
return parsed;
|
|
66
|
+
} catch {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
deserializeAsType(value, _type) {
|
|
71
|
+
return this.deserialize(value);
|
|
72
|
+
}
|
|
73
|
+
removeNullValues(obj) {
|
|
74
|
+
if (obj == null)
|
|
75
|
+
return obj;
|
|
76
|
+
if (Array.isArray(obj))
|
|
77
|
+
return obj.map((item) => this.removeNullValues(item));
|
|
78
|
+
if (typeof obj == "object") {
|
|
79
|
+
const result = {};
|
|
80
|
+
for (const [key, val] of Object.entries(obj))
|
|
81
|
+
if (val != null)
|
|
82
|
+
result[key] = this.removeNullValues(val);
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
return obj;
|
|
86
|
+
}
|
|
87
|
+
toCamelCase(obj) {
|
|
88
|
+
if (obj == null)
|
|
89
|
+
return obj;
|
|
90
|
+
if (Array.isArray(obj))
|
|
91
|
+
return obj.map((item) => this.toCamelCase(item));
|
|
92
|
+
if (typeof obj == "object") {
|
|
93
|
+
const result = {};
|
|
94
|
+
for (const [key, val] of Object.entries(obj)) {
|
|
95
|
+
const camelKey = key.charAt(0).toLowerCase() + key.slice(1);
|
|
96
|
+
result[camelKey] = this.toCamelCase(val);
|
|
97
|
+
}
|
|
98
|
+
return result;
|
|
99
|
+
}
|
|
100
|
+
return obj;
|
|
101
|
+
}
|
|
102
|
+
convertEnumValuesToCamelCase(obj, className) {
|
|
103
|
+
if (obj == null)
|
|
104
|
+
return obj;
|
|
105
|
+
if (typeof obj == "string")
|
|
106
|
+
return this.tryConvertEnumStringToCamelCase(obj, undefined, undefined);
|
|
107
|
+
if (Array.isArray(obj))
|
|
108
|
+
return obj.map((item) => this.convertEnumValuesToCamelCase(item, className));
|
|
109
|
+
if (typeof obj == "object") {
|
|
110
|
+
const result = {};
|
|
111
|
+
const currentClassName = obj.constructor?.name !== "Object" ? obj.constructor.name : className;
|
|
112
|
+
for (const [key, val] of Object.entries(obj))
|
|
113
|
+
if (typeof val == "string")
|
|
114
|
+
result[key] = this.tryConvertEnumStringToCamelCase(val, currentClassName, key);
|
|
115
|
+
else if (Array.isArray(val))
|
|
116
|
+
result[key] = val.map((item) => {
|
|
117
|
+
if (typeof item == "string")
|
|
118
|
+
return this.tryConvertEnumStringToCamelCase(item, currentClassName, key);
|
|
119
|
+
return this.convertEnumValuesToCamelCase(item, currentClassName);
|
|
120
|
+
});
|
|
121
|
+
else
|
|
122
|
+
result[key] = this.convertEnumValuesToCamelCase(val, currentClassName);
|
|
123
|
+
return result;
|
|
124
|
+
}
|
|
125
|
+
return obj;
|
|
126
|
+
}
|
|
127
|
+
tryConvertEnumStringToCamelCase(value, className, propertyName) {
|
|
128
|
+
if (this.camelCaseEnumProperties.size > 0) {
|
|
129
|
+
if (!propertyName || !this.isKnownCamelCaseEnum(className, propertyName))
|
|
130
|
+
return value;
|
|
131
|
+
} else if (propertyName && this.isInPropertySet(this.pascalCaseEnumProperties, className, propertyName))
|
|
132
|
+
return value;
|
|
133
|
+
if (/^[A-Z][a-zA-Z0-9]*$/.test(value))
|
|
134
|
+
return value.charAt(0).toLowerCase() + value.slice(1);
|
|
135
|
+
return value;
|
|
136
|
+
}
|
|
137
|
+
isKnownCamelCaseEnum(className, propertyName) {
|
|
138
|
+
if (this.isInPropertySet(this.pascalCaseEnumProperties, className, propertyName))
|
|
139
|
+
return false;
|
|
140
|
+
return this.isInPropertySet(this.camelCaseEnumProperties, className, propertyName);
|
|
141
|
+
}
|
|
142
|
+
isInPropertySet(propertySet, className, propertyName) {
|
|
143
|
+
if (className && propertySet.has(`${className}.${propertyName}`))
|
|
144
|
+
return true;
|
|
145
|
+
return propertySet.has(propertyName);
|
|
146
|
+
}
|
|
147
|
+
constructor(options = {}) {
|
|
148
|
+
this.isContextBased = false;
|
|
149
|
+
this.encoder = new TextEncoder;
|
|
150
|
+
this.options = options;
|
|
151
|
+
this.camelCaseEnumProperties = new Set(options.camelCaseEnumProperties ?? []);
|
|
152
|
+
this.pascalCaseEnumProperties = new Set(options.pascalCaseEnumProperties ?? []);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// ../../node_modules/@uipath/resource-builder-sdk/dist/serialization/pascal-case-enum-properties.js
|
|
157
|
+
var CAMEL_CASE_ENUM_PROPERTIES = [
|
|
158
|
+
"scope",
|
|
159
|
+
"replaceOption",
|
|
160
|
+
"lookupStrategy",
|
|
161
|
+
"folderType"
|
|
162
|
+
];
|
|
163
|
+
var SHARED_CORE_ABSTRACTIONS_PASCAL_CASE_PROPERTIES = [
|
|
164
|
+
"propertyCategory"
|
|
165
|
+
];
|
|
166
|
+
var RESOURCE_BUILDER_PASCAL_CASE_PROPERTIES = [
|
|
167
|
+
"ValidationState.errorSeverity",
|
|
168
|
+
"ValidationState.errorType",
|
|
169
|
+
"AddOrUpdateResourceToSolutionResponse.status",
|
|
170
|
+
"Overwrite.type",
|
|
171
|
+
"OverwriteValidationError.severity",
|
|
172
|
+
"ProjectResourceDescriptor.provisionType"
|
|
173
|
+
];
|
|
174
|
+
var PASCAL_CASE_ENUM_PROPERTIES = [
|
|
175
|
+
...SHARED_CORE_ABSTRACTIONS_PASCAL_CASE_PROPERTIES,
|
|
176
|
+
...RESOURCE_BUILDER_PASCAL_CASE_PROPERTIES
|
|
177
|
+
];
|
|
178
|
+
|
|
179
|
+
// ../../node_modules/@uipath/resource-builder-sdk/dist/serialization/json-serializer-factory.js
|
|
180
|
+
class JsonSerializerFactory {
|
|
181
|
+
get() {
|
|
182
|
+
return this.defaultSerializer;
|
|
183
|
+
}
|
|
184
|
+
getByName(name) {
|
|
185
|
+
if (!name)
|
|
186
|
+
return this.defaultSerializer;
|
|
187
|
+
let serializer = this.namedSerializers.get(name);
|
|
188
|
+
if (!serializer) {
|
|
189
|
+
serializer = this.createNamedSerializer(name);
|
|
190
|
+
this.namedSerializers.set(name, serializer);
|
|
191
|
+
}
|
|
192
|
+
return serializer;
|
|
193
|
+
}
|
|
194
|
+
initializePredefinedSerializers() {
|
|
195
|
+
for (const name of JsonSerializerNames.AllNames)
|
|
196
|
+
this.namedSerializers.set(name, this.createNamedSerializer(name));
|
|
197
|
+
}
|
|
198
|
+
createNamedSerializer(name) {
|
|
199
|
+
const options = this.createOptionsForName(name);
|
|
200
|
+
return new JsonSerializer(options);
|
|
201
|
+
}
|
|
202
|
+
createOptionsForName(name) {
|
|
203
|
+
const options = {
|
|
204
|
+
...this.baseOptions
|
|
205
|
+
};
|
|
206
|
+
switch (name) {
|
|
207
|
+
case JsonSerializerNames.DefaultCaseInsensitive:
|
|
208
|
+
return {
|
|
209
|
+
caseInsensitive: true
|
|
210
|
+
};
|
|
211
|
+
case JsonSerializerNames.CaseInsensitive:
|
|
212
|
+
options.caseInsensitive = true;
|
|
213
|
+
break;
|
|
214
|
+
case JsonSerializerNames.Indented:
|
|
215
|
+
options.indented = true;
|
|
216
|
+
break;
|
|
217
|
+
case JsonSerializerNames.CamelCase:
|
|
218
|
+
options.camelCase = true;
|
|
219
|
+
break;
|
|
220
|
+
case JsonSerializerNames.CaseInsensitiveIndented:
|
|
221
|
+
options.caseInsensitive = true;
|
|
222
|
+
options.indented = true;
|
|
223
|
+
break;
|
|
224
|
+
case JsonSerializerNames.IndentedIgnoreNull:
|
|
225
|
+
options.indented = true;
|
|
226
|
+
options.ignoreNull = true;
|
|
227
|
+
break;
|
|
228
|
+
case JsonSerializerNames.PreservePropertyNames:
|
|
229
|
+
options.preservePropertyNames = true;
|
|
230
|
+
options.camelCase = false;
|
|
231
|
+
break;
|
|
232
|
+
case JsonSerializerNames.CamelCaseIndented:
|
|
233
|
+
options.indented = true;
|
|
234
|
+
options.camelCase = true;
|
|
235
|
+
options.ignoreNull = true;
|
|
236
|
+
break;
|
|
237
|
+
default:
|
|
238
|
+
break;
|
|
239
|
+
}
|
|
240
|
+
return options;
|
|
241
|
+
}
|
|
242
|
+
constructor(options) {
|
|
243
|
+
const defaults = {
|
|
244
|
+
camelCase: true,
|
|
245
|
+
enumCamelCase: true,
|
|
246
|
+
camelCaseEnumProperties: CAMEL_CASE_ENUM_PROPERTIES,
|
|
247
|
+
pascalCaseEnumProperties: PASCAL_CASE_ENUM_PROPERTIES
|
|
248
|
+
};
|
|
249
|
+
this.baseOptions = options ? {
|
|
250
|
+
...defaults,
|
|
251
|
+
...options
|
|
252
|
+
} : defaults;
|
|
253
|
+
this.defaultSerializer = new JsonSerializer(this.baseOptions);
|
|
254
|
+
this.namedSerializers = new Map;
|
|
255
|
+
this.initializePredefinedSerializers();
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
// ../../node_modules/@uipath/resource-builder-sdk/dist/serialization/serializer-proxy.js
|
|
260
|
+
class JsonSerializerProxy {
|
|
261
|
+
serialize(value) {
|
|
262
|
+
return this.jsonSerializer.serialize(value);
|
|
263
|
+
}
|
|
264
|
+
serializeAsync(stream, value, cancellationToken) {
|
|
265
|
+
return this.jsonSerializer.serializeAsync(stream, value, cancellationToken);
|
|
266
|
+
}
|
|
267
|
+
serializeToUtf8Bytes(value) {
|
|
268
|
+
return this.jsonSerializer.serializeToUtf8Bytes(value);
|
|
269
|
+
}
|
|
270
|
+
deserialize(value) {
|
|
271
|
+
return this.jsonSerializer.deserialize(value);
|
|
272
|
+
}
|
|
273
|
+
tryDeserializeObject(json) {
|
|
274
|
+
if (!json || json.trim() === "")
|
|
275
|
+
return null;
|
|
276
|
+
try {
|
|
277
|
+
return this.jsonSerializer.isContextBased ? this.jsonSerializer.deserialize(json) : this.caseInsensitiveSerializer.deserialize(json);
|
|
278
|
+
} catch (ex) {
|
|
279
|
+
this.logger.info("Deserialization failed with exception.", ex);
|
|
280
|
+
return null;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
tryDeserialize(value) {
|
|
284
|
+
if (!value || value.trim() === "")
|
|
285
|
+
return [
|
|
286
|
+
false,
|
|
287
|
+
null
|
|
288
|
+
];
|
|
289
|
+
try {
|
|
290
|
+
const result = this.jsonSerializer.deserialize(value);
|
|
291
|
+
return [
|
|
292
|
+
true,
|
|
293
|
+
result
|
|
294
|
+
];
|
|
295
|
+
} catch (ex) {
|
|
296
|
+
this.logger.info("Deserialization failed with exception.", ex);
|
|
297
|
+
return [
|
|
298
|
+
false,
|
|
299
|
+
null
|
|
300
|
+
];
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
constructor(jsonSerializerFactory, loggerFactory) {
|
|
304
|
+
this.jsonSerializer = jsonSerializerFactory.get();
|
|
305
|
+
this.caseInsensitiveSerializer = jsonSerializerFactory.getByName(JsonSerializerNames.CaseInsensitive);
|
|
306
|
+
this.logger = loggerFactory.create("JsonSerializerProxy");
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
// ../../node_modules/@uipath/resource-builder-sdk/dist/serialization/stream-serializer.js
|
|
311
|
+
class StreamSerializer {
|
|
312
|
+
async serializeAsync(data, cancellationToken) {
|
|
313
|
+
cancellationToken?.throwIfAborted?.();
|
|
314
|
+
const serializer = this.jsonSerializerFactory.getByName(JsonSerializerNames.PreservePropertyNames);
|
|
315
|
+
const serializedContent = serializer.serialize(data);
|
|
316
|
+
const encoder = new TextEncoder;
|
|
317
|
+
const bytes = serializedContent ? encoder.encode(serializedContent) : new Uint8Array(0);
|
|
318
|
+
let streamClosed = false;
|
|
319
|
+
const stream = new ReadableStream({
|
|
320
|
+
start(controller) {
|
|
321
|
+
controller.enqueue(bytes);
|
|
322
|
+
controller.close();
|
|
323
|
+
streamClosed = true;
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
const disposeStream = this.disposeStream;
|
|
327
|
+
return {
|
|
328
|
+
stream,
|
|
329
|
+
dispose() {
|
|
330
|
+
if (disposeStream && !streamClosed)
|
|
331
|
+
stream.cancel().catch(() => {});
|
|
332
|
+
}
|
|
333
|
+
};
|
|
334
|
+
}
|
|
335
|
+
constructor(jsonSerializerFactory, disposeStream = true) {
|
|
336
|
+
this.jsonSerializerFactory = jsonSerializerFactory;
|
|
337
|
+
this.disposeStream = disposeStream;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
export { JsonSerializerNames, JsonSerializer, CAMEL_CASE_ENUM_PROPERTIES, SHARED_CORE_ABSTRACTIONS_PASCAL_CASE_PROPERTIES, RESOURCE_BUILDER_PASCAL_CASE_PROPERTIES, PASCAL_CASE_ENUM_PROPERTIES, JsonSerializerFactory, JsonSerializerProxy, StreamSerializer };
|
|
341
|
+
|
|
342
|
+
//# debugId=B9E68BD7718EF2DB64756E2164756E21
|
|
@@ -3,14 +3,14 @@ import {
|
|
|
3
3
|
PipelinesApi,
|
|
4
4
|
feedScopeInitOverride,
|
|
5
5
|
resolveFeedScope
|
|
6
|
-
} from "./packager-tool-
|
|
6
|
+
} from "./packager-tool-cp07fhx3.js";
|
|
7
7
|
import {
|
|
8
8
|
Configuration as Configuration2,
|
|
9
9
|
PackagesApi
|
|
10
|
-
} from "./packager-tool-
|
|
10
|
+
} from "./packager-tool-mj5p341c.js";
|
|
11
11
|
import {
|
|
12
12
|
getSolutionAuthContext
|
|
13
|
-
} from "./packager-tool-
|
|
13
|
+
} from "./packager-tool-2syrt51a.js";
|
|
14
14
|
import {
|
|
15
15
|
PollOutcome,
|
|
16
16
|
catchError,
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
logger,
|
|
20
20
|
mapPollFailure,
|
|
21
21
|
pollUntil
|
|
22
|
-
} from "./packager-tool-
|
|
22
|
+
} from "./packager-tool-0f0wt9vh.js";
|
|
23
23
|
import {
|
|
24
24
|
strFromU8,
|
|
25
25
|
strToU8,
|
|
@@ -161,6 +161,9 @@ class ZipService {
|
|
|
161
161
|
});
|
|
162
162
|
return zipData;
|
|
163
163
|
}
|
|
164
|
+
compressEntries(entries) {
|
|
165
|
+
return zipSync(entries, { level: 6 });
|
|
166
|
+
}
|
|
164
167
|
}
|
|
165
168
|
function isPluralForm(value) {
|
|
166
169
|
return typeof value === "object" && value !== null && "other" in value;
|
|
@@ -2269,4 +2272,4 @@ function registerPackagerFactories() {
|
|
|
2269
2272
|
|
|
2270
2273
|
export { Path, TemporaryStorageService, ZipService, I18nManager, translate, BuildConfiguration, LogLevel, LogMessage, ProjectTypes, TargetFramework, ToolErrorCodes, ToolResult, ProjectTool, toolsFactoryRepository2 as toolsFactoryRepository, registerPackagerFactories };
|
|
2271
2274
|
|
|
2272
|
-
//# debugId=
|
|
2275
|
+
//# debugId=52AD10AAEA66A6BC64756E2164756E21
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import {
|
|
2
|
+
registerPackagerFactories
|
|
3
|
+
} from "./packager-tool-jz2wbfjz.js";
|
|
4
|
+
import {
|
|
5
|
+
toolsFactoryRepository
|
|
6
|
+
} from "./packager-tool-nzghfa48.js";
|
|
7
|
+
import {
|
|
8
|
+
catchError,
|
|
9
|
+
ensurePackagerFactory,
|
|
10
|
+
logger,
|
|
11
|
+
unsupportedSolutionProjectType
|
|
12
|
+
} from "./packager-tool-0f0wt9vh.js";
|
|
13
|
+
|
|
14
|
+
// src/services/project-type-tools.ts
|
|
15
|
+
var PROJECT_TYPE_TO_TOOL = new Map([
|
|
16
|
+
["Process", "rpa"],
|
|
17
|
+
["Tests", "rpa"],
|
|
18
|
+
["WebApp", "rpa"],
|
|
19
|
+
["AppV2", "codedapp"],
|
|
20
|
+
["Api", "api-workflow"],
|
|
21
|
+
["Agent", "agent"],
|
|
22
|
+
["Function", "function"],
|
|
23
|
+
["CaseManagement", "maestro"],
|
|
24
|
+
["ProcessOrchestration", "maestro"],
|
|
25
|
+
["processOrchestration", "maestro"],
|
|
26
|
+
["Flow", "maestro"],
|
|
27
|
+
["BusinessRules", "maestro"],
|
|
28
|
+
["Entity", "df"]
|
|
29
|
+
]);
|
|
30
|
+
function toolVerbForProjectType(projectType) {
|
|
31
|
+
return PROJECT_TYPE_TO_TOOL.get(projectType);
|
|
32
|
+
}
|
|
33
|
+
function toolOwnedProjectTypes() {
|
|
34
|
+
return [...PROJECT_TYPE_TO_TOOL.keys()];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// src/services/packager-tool-resolver.ts
|
|
38
|
+
var PACKAGER_OWNED_TYPES = ["Connector"];
|
|
39
|
+
|
|
40
|
+
class UnpackableProjectTypeError extends Error {
|
|
41
|
+
__unpackableType = true;
|
|
42
|
+
instructions;
|
|
43
|
+
errorCode = "invalid_argument";
|
|
44
|
+
constructor(projectType, projectPath) {
|
|
45
|
+
super(`Project '${projectPath}' declares type '${projectType}', which this CLI cannot pack.`);
|
|
46
|
+
this.name = "UnpackableProjectTypeError";
|
|
47
|
+
this.instructions = buildUnpackableInstructions(projectType);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function isUnpackableProjectTypeError(error) {
|
|
51
|
+
return !!error && typeof error === "object" && error.__unpackableType === true;
|
|
52
|
+
}
|
|
53
|
+
function buildUnpackableInstructions(projectType) {
|
|
54
|
+
const allowed = `Types a solution can contain: ${packableProjectTypes().join(", ")}.`;
|
|
55
|
+
const codedAppHint = projectType.toLowerCase() === "app" ? " A coded app packs as 'AppV2': scaffold it with 'uip codedapp init <project-path>', which writes project.uiproj and webAppManifest.json and puts the app files under <project-path>/source." : "";
|
|
56
|
+
return `${allowed}${codedAppHint} Correct the project's Type in the .uipx, or drop the entry with 'uip solution projects remove <project-path>'.`;
|
|
57
|
+
}
|
|
58
|
+
var TOOL_TO_PACKAGE = new Map([
|
|
59
|
+
["rpa", "@uipath/rpa-tool"],
|
|
60
|
+
["codedapp", "@uipath/codedapp-tool"],
|
|
61
|
+
["api-workflow", "@uipath/api-workflow-tool"],
|
|
62
|
+
["agent", "@uipath/agent-tool"],
|
|
63
|
+
["maestro", "@uipath/maestro-tool"],
|
|
64
|
+
["function", "@uipath/function-tool"],
|
|
65
|
+
["df", "@uipath/data-fabric-tool"]
|
|
66
|
+
]);
|
|
67
|
+
async function readSolutionProjects(solutionDir, fs) {
|
|
68
|
+
const entries = await fs.readdir(solutionDir);
|
|
69
|
+
const uipxFile = entries.find((f) => f.endsWith(".uipx"));
|
|
70
|
+
if (!uipxFile)
|
|
71
|
+
return [];
|
|
72
|
+
const content = await fs.readFile(fs.path.join(solutionDir, uipxFile));
|
|
73
|
+
if (!content)
|
|
74
|
+
return [];
|
|
75
|
+
const json = typeof content === "string" ? content : new TextDecoder().decode(content);
|
|
76
|
+
const [parseError, solution] = catchError(() => JSON.parse(json));
|
|
77
|
+
if (parseError) {
|
|
78
|
+
throw new Error(`Failed to parse ${uipxFile}: ${parseError.message}`);
|
|
79
|
+
}
|
|
80
|
+
return (solution.Projects || []).map((p) => ({
|
|
81
|
+
type: typeof p.Type === "string" ? p.Type : "",
|
|
82
|
+
path: typeof p.ProjectRelativePath === "string" ? p.ProjectRelativePath : "(no ProjectRelativePath)"
|
|
83
|
+
}));
|
|
84
|
+
}
|
|
85
|
+
function packableProjectTypes() {
|
|
86
|
+
const types = new Set(toolOwnedProjectTypes());
|
|
87
|
+
for (const type of PACKAGER_OWNED_TYPES) {
|
|
88
|
+
types.add(type);
|
|
89
|
+
}
|
|
90
|
+
types.delete("processOrchestration");
|
|
91
|
+
return [...types].sort((a, b) => a.localeCompare(b));
|
|
92
|
+
}
|
|
93
|
+
async function ensurePackagerTools(solutionDir, fs) {
|
|
94
|
+
registerPackagerFactories();
|
|
95
|
+
const projects = await readSolutionProjects(solutionDir, fs);
|
|
96
|
+
if (projects.length === 0)
|
|
97
|
+
return;
|
|
98
|
+
const neededTools = new Set;
|
|
99
|
+
for (const { type, path } of projects) {
|
|
100
|
+
const unsupported = unsupportedSolutionProjectType(type);
|
|
101
|
+
if (unsupported) {
|
|
102
|
+
throw new Error(`Project type '${type}' cannot be packed as part of a solution. ${unsupported} Or drop it with 'uip solution projects remove <project-path>'.`);
|
|
103
|
+
}
|
|
104
|
+
if (!type) {
|
|
105
|
+
logger.warn(`Solution project '${path}' has no Type. Pack may fail.`);
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
if (toolsFactoryRepository.canHandleProject(type))
|
|
109
|
+
continue;
|
|
110
|
+
const toolVerb = toolVerbForProjectType(type);
|
|
111
|
+
if (toolVerb) {
|
|
112
|
+
neededTools.add(toolVerb);
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
throw new UnpackableProjectTypeError(type, path);
|
|
116
|
+
}
|
|
117
|
+
for (const toolVerb of neededTools) {
|
|
118
|
+
logger.info(`Loading packager factory for '${toolVerb}' to handle project types...`);
|
|
119
|
+
await ensurePackagerFactory(toolVerb, TOOL_TO_PACKAGE.get(toolVerb));
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
export { toolVerbForProjectType, UnpackableProjectTypeError, isUnpackableProjectTypeError, ensurePackagerTools };
|
|
124
|
+
|
|
125
|
+
//# debugId=CA0FE03AC2FB807A64756E2164756E21
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
readUipxFile
|
|
3
|
+
} from "./packager-tool-3jrq7smt.js";
|
|
1
4
|
import {
|
|
2
5
|
RESULTS,
|
|
3
6
|
addSdkUserAgentHeader,
|
|
@@ -5,9 +8,8 @@ import {
|
|
|
5
8
|
getSdkUserAgentToken,
|
|
6
9
|
installSdkUserAgentHeader,
|
|
7
10
|
logger,
|
|
8
|
-
readUipxFile,
|
|
9
11
|
summarizePlatformBody
|
|
10
|
-
} from "./packager-tool-
|
|
12
|
+
} from "./packager-tool-0f0wt9vh.js";
|
|
11
13
|
import {
|
|
12
14
|
zipSync
|
|
13
15
|
} from "./packager-tool-dfrk01gn.js";
|
|
@@ -3104,8 +3106,9 @@ async function listStudioWebSolutions(config, organizationName, options = {}) {
|
|
|
3104
3106
|
// ../solution-sdk/package.json
|
|
3105
3107
|
var package_default = {
|
|
3106
3108
|
name: "@uipath/solution-sdk",
|
|
3109
|
+
author: "UiPath",
|
|
3107
3110
|
license: "SEE LICENSE IN LICENSE.txt",
|
|
3108
|
-
version: "1.
|
|
3111
|
+
version: "1.203.0-preview.160",
|
|
3109
3112
|
repository: {
|
|
3110
3113
|
type: "git",
|
|
3111
3114
|
url: "https://github.com/UiPath/cli.git",
|
|
@@ -3144,7 +3147,7 @@ var package_default = {
|
|
|
3144
3147
|
],
|
|
3145
3148
|
private: false,
|
|
3146
3149
|
scripts: {
|
|
3147
|
-
build: "bun build ./src/index.ts ./src/resources/index.ts ./src/solution-auth.ts --outdir dist --format esm --target node --sourcemap=linked && bun build ./src/scripts/generate-sdk.ts --outdir dist/scripts --format esm --target node --sourcemap=linked && tsc -p tsconfig.build.json --noCheck",
|
|
3150
|
+
build: "bun build ./src/index.ts ./src/resources/index.ts ./src/solution-auth.ts --outdir dist --format esm --target node --splitting --sourcemap=linked && bun build ./src/scripts/generate-sdk.ts --outdir dist/scripts --format esm --target node --sourcemap=linked && tsc -p tsconfig.build.json --noCheck",
|
|
3148
3151
|
generate: "bun run src/scripts/generate-sdk.ts",
|
|
3149
3152
|
lint: "biome check .",
|
|
3150
3153
|
test: "vitest run",
|
|
@@ -3156,7 +3159,7 @@ var package_default = {
|
|
|
3156
3159
|
"@uipath/common": "workspace:*",
|
|
3157
3160
|
"@uipath/filesystem": "workspace:*",
|
|
3158
3161
|
"@uipath/orchestrator-sdk": "workspace:*",
|
|
3159
|
-
"@uipath/resource-builder-sdk": "
|
|
3162
|
+
"@uipath/resource-builder-sdk": "2025.11.0-alpha5891-4020",
|
|
3160
3163
|
"@uipath/solutionpackager-tool-core": "workspace:*",
|
|
3161
3164
|
"@uipath/studioweb-sdk": "workspace:*",
|
|
3162
3165
|
"@types/node": "^25.5.2",
|
|
@@ -3172,11 +3175,9 @@ installSdkUserAgentHeader(BaseAPI, SDK_USER_AGENT);
|
|
|
3172
3175
|
// ../solution-sdk/src/upload-service.ts
|
|
3173
3176
|
class HttpError extends Error {
|
|
3174
3177
|
status;
|
|
3175
|
-
|
|
3176
|
-
constructor(status, message, authChallenge) {
|
|
3178
|
+
constructor(status, message) {
|
|
3177
3179
|
super(message);
|
|
3178
3180
|
this.status = status;
|
|
3179
|
-
this.authChallenge = authChallenge;
|
|
3180
3181
|
}
|
|
3181
3182
|
}
|
|
3182
3183
|
|
|
@@ -3360,10 +3361,8 @@ async function solutionExistsOnStudioWeb(config, organizationName, solutionId) {
|
|
|
3360
3361
|
if (error.response.status === 404) {
|
|
3361
3362
|
return false;
|
|
3362
3363
|
}
|
|
3363
|
-
const status = error.response.status;
|
|
3364
3364
|
const text = await error.response.text().catch(() => "");
|
|
3365
|
-
|
|
3366
|
-
throw new HttpError(status, `Studio Web solution existence probe failed (${status}): ${body}`, parseAuthChallenge(error.response.headers?.get("www-authenticate") ?? undefined));
|
|
3365
|
+
throw new HttpError(error.response.status, `Studio Web solution existence probe failed (${error.response.status}): ${text}`);
|
|
3367
3366
|
}
|
|
3368
3367
|
throw error;
|
|
3369
3368
|
}
|
|
@@ -3495,4 +3494,4 @@ async function searchPackageVersions(config, packageKey, filter, feedFolderKey)
|
|
|
3495
3494
|
}
|
|
3496
3495
|
export { Configuration, getAvailablePublishLocationsV2, DeploymentActivationStatus, DeploymentOperationStatus, SolutionDeploymentAction, DeploymentsApi, PackagesApi, SearchApi, StudioWebIncompatibleProjectError, bundleSolution, deploymentsAutoInstall, isDebugProvisioningTerminal, isDebugProvisioningSucceeded, getProjectDebugStatus, searchPackageVersions, getStudioWebSolutionProjects, listStudioWebSolutions, isSolutionUploadHttpError, buildSolutionUploadFailureOutput, solutionExistsOnStudioWeb, importSolution, overwriteSolution };
|
|
3497
3496
|
|
|
3498
|
-
//# debugId=
|
|
3497
|
+
//# debugId=D3CDD3CE1AE3368C64756E2164756E21
|