@uipath/solution-tool 1.204.0-preview.255 → 1.205.0-preview.256

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 (122) hide show
  1. package/README.md +3 -3
  2. package/dist/THIRD-PARTY-NOTICES.md +2 -2
  3. package/dist/archive-extract-x35t9ktj.js +120 -0
  4. package/dist/cleanup-command-service-n4e7vxnw.js +149 -0
  5. package/dist/deploy-delete-service-cag0q8yx.js +25 -0
  6. package/dist/deploy-run-service-f0h8wb9w.js +25 -0
  7. package/dist/{deploy-status-service-6svq7c6w.js → deploy-status-service-yh6xn6e0.js} +41 -33
  8. package/dist/deploy.js +23 -17
  9. package/dist/{deployment-search-v2qtz23x.js → deployment-search-mnywd9nc.js} +16 -10
  10. package/dist/{embedded-file-reader-rf2g1kfj.js → embedded-file-reader-z4becc02.js} +2 -2
  11. package/dist/{feed-resolver-xz3akamf.js → feed-resolver-fve33dxq.js} +10 -9
  12. package/dist/feed-scope-failure-jmg4t1r1.js +19 -0
  13. package/dist/{feed-session-sxga31vn.js → feed-session-7xqphdrg.js} +3 -3
  14. package/dist/governance-options-4vxz7ekn.js +32 -0
  15. package/dist/index-g8c8nf1c.js +667 -0
  16. package/dist/index-prm27bvm.js +138 -0
  17. package/dist/index.js +27 -29
  18. package/dist/init.js +11 -10
  19. package/dist/{list-tjetkspc.js → list-50mepbed.js} +10 -8
  20. package/dist/models/pack-command-types.d.ts +15 -0
  21. package/dist/node-7jm7ksqa.js +86 -0
  22. package/dist/pack-command-service-dewf5vsq.js +35 -0
  23. package/dist/pack-project-xwd1rbaa.js +97 -0
  24. package/dist/pack.js +24 -14
  25. package/dist/package-id-1wr3cy9c.js +13 -0
  26. package/dist/packager-tool-09swr9cp.js +171 -0
  27. package/dist/{packager-tool-a9jx8gf4.js → packager-tool-2vmsh5pt.js} +196 -1519
  28. package/dist/{packager-tool-px1j9kre.js → packager-tool-3bwnkjdq.js} +2 -2
  29. package/dist/{packager-tool-gb35b4qs.js → packager-tool-43ahv5mn.js} +192 -96
  30. package/dist/{packager-tool-9ha2z8h5.js → packager-tool-47by487p.js} +6 -4
  31. package/dist/packager-tool-47wzvqw0.js +86 -0
  32. package/dist/{packager-tool-zns6n8zp.js → packager-tool-5ddtwzva.js} +1 -1
  33. package/dist/packager-tool-5edvzz80.js +543 -0
  34. package/dist/{packager-tool-jq9zw82w.js → packager-tool-5n6jsn41.js} +104 -14
  35. package/dist/packager-tool-60af1hw2.js +26 -0
  36. package/dist/{packager-tool-f5gq77m5.js → packager-tool-61pwb567.js} +2 -2
  37. package/dist/{packager-tool-yrz4mwfn.js → packager-tool-6kz1pv9f.js} +1373 -486
  38. package/dist/packager-tool-6ybywxxn.js +1809 -0
  39. package/dist/packager-tool-8ptbmmmp.js +2132 -0
  40. package/dist/{packager-tool-7gr2nphb.js → packager-tool-97rcgwvv.js} +224 -6
  41. package/dist/{packager-tool-83m6ns0r.js → packager-tool-9t26kde1.js} +3556 -1646
  42. package/dist/packager-tool-act5r386.js +239 -0
  43. package/dist/packager-tool-amhyxzz6.js +125 -0
  44. package/dist/packager-tool-b03rva43.js +188 -0
  45. package/dist/{packager-tool-e2rtr49j.js → packager-tool-b2nhscfk.js} +15 -31
  46. package/dist/{packager-tool-tv9c1e80.js → packager-tool-d6rrfd46.js} +149 -53
  47. package/dist/packager-tool-frr2xmkr.js +445 -0
  48. package/dist/{packager-tool-v8bkkqdb.js → packager-tool-gmwva4yv.js} +5 -5
  49. package/dist/packager-tool-gs3f3tf7.js +103 -0
  50. package/dist/packager-tool-jg692f13.js +517 -0
  51. package/dist/packager-tool-jmpb786m.js +109 -0
  52. package/dist/{packager-tool-5sex4a1h.js → packager-tool-kds8ytzw.js} +74 -23
  53. package/dist/packager-tool-kkfb5kgn.js +182 -0
  54. package/dist/packager-tool-kvcxg0zv.js +1510 -0
  55. package/dist/packager-tool-n3jfjn5r.js +42 -0
  56. package/dist/{packager-tool-fjsn5h8s.js → packager-tool-n5d5dx5j.js} +2196 -3455
  57. package/dist/{packager-tool-yfpcvdpm.js → packager-tool-nsya65z1.js} +357 -1370
  58. package/dist/{packager-tool-fv7xyzg2.js → packager-tool-pbmqk39a.js} +126 -128
  59. package/dist/{packager-tool-bqre28m1.js → packager-tool-qw47eyw7.js} +1 -1
  60. package/dist/{packager-tool-9qgmwy21.js → packager-tool-rc3hwn4b.js} +25 -4
  61. package/dist/packager-tool-resolver-994z3jkj.js +23 -0
  62. package/dist/{packager-tool-tgw5x6vx.js → packager-tool-rvt68c1t.js} +17 -8
  63. package/dist/{packager-tool-gab9y5ct.js → packager-tool-t8gh825q.js} +37 -13
  64. package/dist/{packager-tool-kswwd3hp.js → packager-tool-tx834spe.js} +2376 -4077
  65. package/dist/{packager-tool-zf3929se.js → packager-tool-v1f5e8t9.js} +11 -1
  66. package/dist/{packager-tool-ssq2kzqm.js → packager-tool-w77d72a7.js} +13 -11
  67. package/dist/{packager-tool-1rzssy0x.js → packager-tool-wy4fx250.js} +19 -18
  68. package/dist/packager-tool-wz34ma3s.js +1333 -0
  69. package/dist/packager-tool-zq16e1xv.js +68 -0
  70. package/dist/packager-tool.js +2 -2
  71. package/dist/prepare-solution-resources-m1djfj62.js +29 -0
  72. package/dist/project-command-utils-t6pmpvq3.js +90 -0
  73. package/dist/project-contributions-79ndycrx.js +32 -0
  74. package/dist/publish.js +13 -12
  75. package/dist/resource-mutations-c3krjqze.js +36 -0
  76. package/dist/resource-version-lookup-0e3e2j58.js +99 -0
  77. package/dist/resource.js +10 -9
  78. package/dist/restore-command-service-5v0b9363.js +155 -0
  79. package/dist/run-service-tg6b67wp.js +428 -0
  80. package/dist/services/deploy-activate-service.d.ts +10 -5
  81. package/dist/services/deploy-delete-service.d.ts +8 -4
  82. package/dist/services/deploy-run-service.d.ts +34 -1
  83. package/dist/services/deploy-uninstall-service.d.ts +21 -3
  84. package/dist/services/deploy-upgrade-service.d.ts +35 -1
  85. package/dist/services/deployment-feed-locator.d.ts +15 -4
  86. package/dist/services/deployment-search-client.d.ts +5 -53
  87. package/dist/services/deployment-search.d.ts +58 -3
  88. package/dist/services/deployment-state.d.ts +84 -24
  89. package/dist/services/deployment-validation.d.ts +5 -0
  90. package/dist/services/emit-runtime-dependencies.d.ts +2 -1
  91. package/dist/services/feed-resolver.d.ts +6 -4
  92. package/dist/services/feed-selection.d.ts +47 -0
  93. package/dist/services/http-status.d.ts +2 -7
  94. package/dist/services/pack-command-service.d.ts +9 -0
  95. package/dist/services/pack-project-selection.d.ts +51 -0
  96. package/dist/services/pack-project.d.ts +26 -0
  97. package/dist/services/pack-service.d.ts +7 -3
  98. package/dist/services/package-search-client.d.ts +7 -0
  99. package/dist/services/packager-tool-resolver.d.ts +7 -1
  100. package/dist/services/packages-list-service.d.ts +1 -1
  101. package/dist/services/permanent-deletion-consent.d.ts +110 -0
  102. package/dist/services/pipeline-deploy-poll.d.ts +7 -0
  103. package/dist/services/prepare-solution-resources.d.ts +12 -2
  104. package/dist/services/project-contributions.d.ts +5 -4
  105. package/dist/services/search-failure.d.ts +9 -13
  106. package/dist/services/solution-packager-helpers.d.ts +5 -2
  107. package/dist/services/solution-path.d.ts +1 -1
  108. package/dist/services/uninstall-consent.d.ts +82 -0
  109. package/dist/ship-telemetry-myes7ak5.js +21 -0
  110. package/dist/solution-auth-aead70sw.js +11 -0
  111. package/dist/templates/AGENTS.md +125 -12
  112. package/dist/tool.js +27 -29
  113. package/dist/utils/deployment-errors.d.ts +9 -1
  114. package/package.json +2 -2
  115. package/dist/deploy-delete-service-w3e8x1kq.js +0 -22
  116. package/dist/feed-scope-failure-0j5byccb.js +0 -18
  117. package/dist/packager-tool-f2e9rzxk.js +0 -104
  118. package/dist/packager-tool-resolver-6zwhec62.js +0 -20
  119. package/dist/packager-tool-zdfn32bc.js +0 -4465
  120. package/dist/prepare-solution-resources-jpb5as2s.js +0 -25
  121. package/dist/project-contributions-6wpff2hm.js +0 -30
  122. package/dist/services/legacy-deployment-search-v3.d.ts +0 -23
@@ -3,6 +3,131 @@ import {
3
3
  zipSync
4
4
  } from "./packager-tool-dfrk01gn.js";
5
5
 
6
+ // ../packager/packager-core/src/models/tool-result.ts
7
+ class ToolResult {
8
+ errorCode;
9
+ message;
10
+ packages;
11
+ details;
12
+ instructions;
13
+ constructor(errorCode, message, packages = [], instructions) {
14
+ this.errorCode = errorCode;
15
+ this.message = message;
16
+ this.packages = packages;
17
+ this.instructions = instructions;
18
+ }
19
+ get isSuccess() {
20
+ return this.errorCode === "SUCCESS" /* Success */;
21
+ }
22
+ static success() {
23
+ return new ToolResult("SUCCESS" /* Success */);
24
+ }
25
+ static error(errorCode, message, instructions) {
26
+ return new ToolResult(errorCode, message, [], instructions);
27
+ }
28
+ }
29
+ // ../packager/packager-core/src/models/ignored-rules.ts
30
+ function normalizeIgnoredRules(ignoredRules) {
31
+ const rules = (ignoredRules ?? []).flatMap((rule) => rule.split(",")).map((rule) => rule.trim()).filter((rule) => rule.length > 0);
32
+ return [...new Set(rules)];
33
+ }
34
+ // ../packager/packager-core/src/models/log-message.ts
35
+ class LogMessage {
36
+ message;
37
+ logLevel;
38
+ source;
39
+ sourceTarget;
40
+ progress;
41
+ code;
42
+ filePath;
43
+ line;
44
+ id;
45
+ timestamp;
46
+ constructor(message, logLevel, options, timestamp) {
47
+ this.message = message;
48
+ this.logLevel = LogMessage.toLogLevel(logLevel);
49
+ this.source = options?.source;
50
+ this.sourceTarget = options?.sourceTarget;
51
+ this.progress = options?.progress;
52
+ this.code = options?.code;
53
+ this.filePath = options?.filePath;
54
+ this.line = options?.line;
55
+ this.id = options?.id;
56
+ this.timestamp = LogMessage.resolveTimestamp(timestamp);
57
+ }
58
+ static resolveTimestamp(timestamp) {
59
+ if (timestamp instanceof Date) {
60
+ return timestamp;
61
+ }
62
+ if (timestamp === undefined || timestamp === null) {
63
+ return new Date;
64
+ }
65
+ const parsed = new Date(timestamp);
66
+ if (Number.isNaN(parsed.getTime())) {
67
+ console.error(`[LogMessage] invalid timestamp "${timestamp}", defaulting to now`);
68
+ return new Date;
69
+ }
70
+ return parsed;
71
+ }
72
+ static toLogLevel(level) {
73
+ switch (level) {
74
+ case "Verbose":
75
+ case "Trace":
76
+ case "Debug":
77
+ return "Debug" /* Debug */;
78
+ case "Warn":
79
+ case "Warning":
80
+ return "Warning" /* Warn */;
81
+ case "Error":
82
+ case "Critical":
83
+ return "Error" /* Error */;
84
+ default:
85
+ return "Information" /* Info */;
86
+ }
87
+ }
88
+ toFormattedString() {
89
+ const parts = [];
90
+ parts.push(`[${this.timestamp.toISOString()}]`);
91
+ parts.push(`[${String(this.logLevel).toUpperCase()}]`);
92
+ if (this.source) {
93
+ parts.push(`[${this.source}]`);
94
+ }
95
+ if (this.sourceTarget) {
96
+ parts.push(`[${this.sourceTarget}]`);
97
+ }
98
+ const locationParts = [];
99
+ if (this.filePath) {
100
+ locationParts.push(this.filePath);
101
+ }
102
+ if (this.line) {
103
+ locationParts.push(`Line:${this.line}`);
104
+ }
105
+ if (this.id) {
106
+ locationParts.push(`Id:${this.id}`);
107
+ }
108
+ if (locationParts.length > 0) {
109
+ parts.push(`(${locationParts.join("")})`);
110
+ }
111
+ if (this.code) {
112
+ parts.push(`[${this.code}]`);
113
+ }
114
+ if (this.progress || this.progress === 0) {
115
+ parts.push(`${this.progress}%`);
116
+ }
117
+ parts.push(this.message);
118
+ return parts.join(" ");
119
+ }
120
+ }
121
+ // ../packager/packager-core/src/models/nuget-constants.ts
122
+ var NugetConstants = {
123
+ OutputFolderName: "bundle",
124
+ ContentFolderName: "content",
125
+ OperateFileName: "operate.json",
126
+ EntryPointsFileName: "entry-points.json",
127
+ PackageDescriptorFileName: "package-descriptor.json",
128
+ BindingsV2FileName: "bindings_v2.json",
129
+ BindingsFileId: "bindings.json"
130
+ };
6
131
  // ../packager/packager-core/src/services/tools-factory-repository.ts
7
132
  class ToolsFactoryRepository {
8
133
  projectFactoryMap = new Map;
@@ -106,17 +231,6 @@ class Path {
106
231
  }
107
232
  }
108
233
 
109
- // ../packager/packager-core/src/models/nuget-constants.ts
110
- var NugetConstants = {
111
- OutputFolderName: "bundle",
112
- ContentFolderName: "content",
113
- OperateFileName: "operate.json",
114
- EntryPointsFileName: "entry-points.json",
115
- PackageDescriptorFileName: "package-descriptor.json",
116
- BindingsV2FileName: "bindings_v2.json",
117
- BindingsFileId: "bindings.json"
118
- };
119
-
120
234
  // ../packager/packager-core/src/services/project-id.ts
121
235
  var OPERATE_FILE = "operate.json";
122
236
  var PROJECT_FILE = "project.json";
@@ -326,30 +440,6 @@ class NugetPackager {
326
440
  };
327
441
  }
328
442
  }
329
- // ../packager/packager-core/src/models/tool-result.ts
330
- class ToolResult {
331
- errorCode;
332
- message;
333
- packages;
334
- details;
335
- instructions;
336
- constructor(errorCode, message, packages = [], instructions) {
337
- this.errorCode = errorCode;
338
- this.message = message;
339
- this.packages = packages;
340
- this.instructions = instructions;
341
- }
342
- get isSuccess() {
343
- return this.errorCode === "SUCCESS" /* Success */;
344
- }
345
- static success() {
346
- return new ToolResult("SUCCESS" /* Success */);
347
- }
348
- static error(errorCode, message, instructions) {
349
- return new ToolResult(errorCode, message, [], instructions);
350
- }
351
- }
352
-
353
443
  // ../packager/packager-core/src/services/project-tool.ts
354
444
  class ProjectTool {
355
445
  fileSystem;
@@ -1346,98 +1436,6 @@ I18nManager.registerTranslations("zh-cn", zh_CN);
1346
1436
  I18nManager.registerTranslations("zh-tw", zh_TW);
1347
1437
  I18nManager.registerTranslations("zu", zu);
1348
1438
  I18nManager.setLocale("en");
1349
- // ../packager/packager-core/src/models/ignored-rules.ts
1350
- function normalizeIgnoredRules(ignoredRules) {
1351
- const rules = (ignoredRules ?? []).flatMap((rule) => rule.split(",")).map((rule) => rule.trim()).filter((rule) => rule.length > 0);
1352
- return [...new Set(rules)];
1353
- }
1354
- // ../packager/packager-core/src/models/log-message.ts
1355
- class LogMessage {
1356
- message;
1357
- logLevel;
1358
- source;
1359
- sourceTarget;
1360
- progress;
1361
- code;
1362
- filePath;
1363
- line;
1364
- id;
1365
- timestamp;
1366
- constructor(message, logLevel, options, timestamp) {
1367
- this.message = message;
1368
- this.logLevel = LogMessage.toLogLevel(logLevel);
1369
- this.source = options?.source;
1370
- this.sourceTarget = options?.sourceTarget;
1371
- this.progress = options?.progress;
1372
- this.code = options?.code;
1373
- this.filePath = options?.filePath;
1374
- this.line = options?.line;
1375
- this.id = options?.id;
1376
- this.timestamp = LogMessage.resolveTimestamp(timestamp);
1377
- }
1378
- static resolveTimestamp(timestamp) {
1379
- if (timestamp instanceof Date) {
1380
- return timestamp;
1381
- }
1382
- if (timestamp === undefined || timestamp === null) {
1383
- return new Date;
1384
- }
1385
- const parsed = new Date(timestamp);
1386
- if (Number.isNaN(parsed.getTime())) {
1387
- console.error(`[LogMessage] invalid timestamp "${timestamp}", defaulting to now`);
1388
- return new Date;
1389
- }
1390
- return parsed;
1391
- }
1392
- static toLogLevel(level) {
1393
- switch (level) {
1394
- case "Verbose":
1395
- case "Trace":
1396
- case "Debug":
1397
- return "Debug" /* Debug */;
1398
- case "Warn":
1399
- case "Warning":
1400
- return "Warning" /* Warn */;
1401
- case "Error":
1402
- case "Critical":
1403
- return "Error" /* Error */;
1404
- default:
1405
- return "Information" /* Info */;
1406
- }
1407
- }
1408
- toFormattedString() {
1409
- const parts = [];
1410
- parts.push(`[${this.timestamp.toISOString()}]`);
1411
- parts.push(`[${String(this.logLevel).toUpperCase()}]`);
1412
- if (this.source) {
1413
- parts.push(`[${this.source}]`);
1414
- }
1415
- if (this.sourceTarget) {
1416
- parts.push(`[${this.sourceTarget}]`);
1417
- }
1418
- const locationParts = [];
1419
- if (this.filePath) {
1420
- locationParts.push(this.filePath);
1421
- }
1422
- if (this.line) {
1423
- locationParts.push(`Line:${this.line}`);
1424
- }
1425
- if (this.id) {
1426
- locationParts.push(`Id:${this.id}`);
1427
- }
1428
- if (locationParts.length > 0) {
1429
- parts.push(`(${locationParts.join("")})`);
1430
- }
1431
- if (this.code) {
1432
- parts.push(`[${this.code}]`);
1433
- }
1434
- if (this.progress || this.progress === 0) {
1435
- parts.push(`${this.progress}%`);
1436
- }
1437
- parts.push(this.message);
1438
- return parts.join(" ");
1439
- }
1440
- }
1441
1439
  export { Path, TemporaryStorageService, ZipService, I18nManager, translate, normalizeIgnoredRules, LogMessage, NugetConstants, ToolResult, ensureProjectId, writeOrBackfillOperateProjectId, NugetPackager, ProjectTool, SolutionTool, toolsFactoryRepository };
1442
1440
 
1443
- //# debugId=7E433C7A73ED1B5664756E2164756E21
1441
+ //# debugId=85BA9493B219C1D764756E2164756E21
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveSessionIdentity
3
- } from "./packager-tool-gb35b4qs.js";
3
+ } from "./packager-tool-43ahv5mn.js";
4
4
 
5
5
  // src/services/feed-session.ts
6
6
  function classifyFeedSession(session) {
@@ -1,16 +1,17 @@
1
1
  import {
2
2
  findDeploymentByName,
3
3
  findLiveDeploymentByName
4
- } from "./packager-tool-tv9c1e80.js";
4
+ } from "./packager-tool-d6rrfd46.js";
5
5
  import {
6
+ feedScopeInitOverride,
6
7
  folderKeyInitOverride,
7
8
  listSelectablePublishLocations,
8
9
  resolvePersonalWorkspace
9
- } from "./packager-tool-tgw5x6vx.js";
10
+ } from "./packager-tool-rvt68c1t.js";
10
11
  import {
11
12
  catchError,
12
13
  extractErrorDetails
13
- } from "./packager-tool-kswwd3hp.js";
14
+ } from "./packager-tool-6ybywxxn.js";
14
15
 
15
16
  // src/services/deployment-feed-locator.ts
16
17
  var sweepResult = (location, skipped) => ({
@@ -66,6 +67,26 @@ async function nonTenantFeedsAsync(options) {
66
67
  }
67
68
  async function findDeploymentAcrossFeeds(auth, deploymentName, options) {
68
69
  const find = options.includeUninstalled ? findDeploymentByName : findLiveDeploymentByName;
70
+ const { selectedFeed } = options;
71
+ if (selectedFeed) {
72
+ const scope = feedScopeInitOverride(selectedFeed);
73
+ const feed = selectedFeed.kind !== "tenant" && selectedFeed.folderKey ? { kind: selectedFeed.kind, folderKey: selectedFeed.folderKey } : undefined;
74
+ const [searchError, deployment] = await catchError(find(auth, deploymentName, scope));
75
+ if (searchError) {
76
+ return sweepResult(undefined, [
77
+ {
78
+ kind: selectedFeed.kind,
79
+ folderKey: selectedFeed.folderKey,
80
+ reason: "search_failed",
81
+ error: searchError
82
+ }
83
+ ]);
84
+ }
85
+ if (!deployment) {
86
+ return sweepResult(undefined, []);
87
+ }
88
+ return sweepResult(feed ? { deployment, scope, feed } : { deployment }, []);
89
+ }
69
90
  const [tenantError, tenantMatch] = await catchError(find(auth, deploymentName));
70
91
  if (tenantError) {
71
92
  return sweepResult(undefined, [
@@ -169,4 +190,4 @@ async function reportIncompleteSweepAsync(deploymentName, skipped) {
169
190
 
170
191
  export { findDeploymentAcrossFeeds, isNameOrFeedRefusal, INCOMPLETE_SWEEP_ADVICE, retryAdvice, reportIncompleteSweepAsync };
171
192
 
172
- //# debugId=43A92F098DF7C11664756E2164756E21
193
+ //# debugId=15DBBF477D4D820E64756E2164756E21
@@ -0,0 +1,23 @@
1
+ import {
2
+ UnpackableProjectTypeError,
3
+ ensurePackagerTools,
4
+ isUnpackableProjectTypeError
5
+ } from "./packager-tool-b2nhscfk.js";
6
+ import {
7
+ toolVerbForProjectType
8
+ } from "./packager-tool-60af1hw2.js";
9
+ import"./packager-tool-5ddtwzva.js";
10
+ import"./packager-tool-pbmqk39a.js";
11
+ import"./packager-tool-tx834spe.js";
12
+ import"./packager-tool-6ybywxxn.js";
13
+ import"./packager-tool-v1f5e8t9.js";
14
+ import"./packager-tool-dfrk01gn.js";
15
+ import"./packager-tool-1de529jm.js";
16
+ export {
17
+ UnpackableProjectTypeError,
18
+ ensurePackagerTools,
19
+ isUnpackableProjectTypeError,
20
+ toolVerbForProjectType
21
+ };
22
+
23
+ //# debugId=0070262AA7F4F4B364756E2164756E21
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  getAvailablePublishLocationsV2
3
- } from "./packager-tool-83m6ns0r.js";
3
+ } from "./packager-tool-9t26kde1.js";
4
4
  import {
5
5
  classifyFeedSession
6
- } from "./packager-tool-bqre28m1.js";
6
+ } from "./packager-tool-qw47eyw7.js";
7
7
  import {
8
8
  PersonalWorkspacesApi,
9
9
  createOrchestratorConfig
10
- } from "./packager-tool-zdfn32bc.js";
11
- import {
12
- extractErrorDetails
13
- } from "./packager-tool-kswwd3hp.js";
10
+ } from "./packager-tool-8ptbmmmp.js";
14
11
  import {
15
12
  getLoginStatusAsync
16
- } from "./packager-tool-gb35b4qs.js";
13
+ } from "./packager-tool-43ahv5mn.js";
14
+ import {
15
+ extractErrorDetails
16
+ } from "./packager-tool-6ybywxxn.js";
17
17
 
18
18
  // src/services/personal-workspace-resolver.ts
19
19
  async function resolvePersonalWorkspace(options) {
@@ -106,6 +106,15 @@ async function describeFeedResolutionFailureAsync(error, options, session) {
106
106
  context: details.context
107
107
  };
108
108
  }
109
+ if (options.feed !== undefined && isRefusal(details.context?.httpStatus) && classifyFeedSession(session) === "application") {
110
+ return {
111
+ message: `--feed '${options.feed}' could not be checked: Studio Web refused this external app the list of publish locations (HTTP ${details.context?.httpStatus}).`,
112
+ instructions: "Give the external application the Studio Web (StudioWebS2S) grants that cover reading publish locations, or run it with a user session ('uip login'). To use the tenant feed, omit --feed.",
113
+ errorCode: "permission_denied",
114
+ retry: "RetryWillNotFix",
115
+ context: details.context
116
+ };
117
+ }
109
118
  return {
110
119
  message: details.message,
111
120
  instructions: feedResolutionFailureInstructions(options),
@@ -170,4 +179,4 @@ function matchFeed(feed, locations) {
170
179
 
171
180
  export { resolvePersonalWorkspace, listSelectablePublishLocations, folderKeyInitOverride, feedScopeInitOverride, feedSelectorFlag, feedResolutionFailureInstructions, describeFeedResolutionFailureAsync, resolveFeedScope };
172
181
 
173
- //# debugId=F37E07288EA6F3E164756E2164756E21
182
+ //# debugId=5F1D84C9922C98B064756E2164756E21
@@ -3,10 +3,10 @@ import {
3
3
  assertNoContributionErrors,
4
4
  collectProjectContributions,
5
5
  contributionErrorMessages
6
- } from "./packager-tool-1rzssy0x.js";
6
+ } from "./packager-tool-wy4fx250.js";
7
7
  import {
8
8
  ensurePackagerTools
9
- } from "./packager-tool-e2rtr49j.js";
9
+ } from "./packager-tool-b2nhscfk.js";
10
10
  import {
11
11
  Tokens,
12
12
  createResourceBuilderServices,
@@ -17,14 +17,16 @@ import {
17
17
  models_BindingsResourceType,
18
18
  readUipxProjects,
19
19
  syncAndLog
20
- } from "./packager-tool-yrz4mwfn.js";
20
+ } from "./packager-tool-6kz1pv9f.js";
21
21
  import {
22
- catchError,
23
22
  logger
24
- } from "./packager-tool-kswwd3hp.js";
23
+ } from "./packager-tool-tx834spe.js";
24
+ import {
25
+ catchError
26
+ } from "./packager-tool-6ybywxxn.js";
25
27
  import {
26
28
  getFileSystem
27
- } from "./packager-tool-zf3929se.js";
29
+ } from "./packager-tool-v1f5e8t9.js";
28
30
 
29
31
  // src/services/emit-runtime-dependencies.ts
30
32
  import { createHash } from "node:crypto";
@@ -44,7 +46,7 @@ function solutionFolderKey() {
44
46
  solutionFolderKeyCache ??= csharpGuidFromString("solution_folder");
45
47
  return solutionFolderKeyCache;
46
48
  }
47
- async function emitRuntimeDependenciesForProcesses(solutionDir) {
49
+ async function emitRuntimeDependenciesForProcesses(solutionDir, projectBindings) {
48
50
  const result = {
49
51
  processed: 0,
50
52
  warnings: []
@@ -85,7 +87,7 @@ async function emitRuntimeDependenciesForProcesses(solutionDir) {
85
87
  result.warnings.push(`Process resource "${proc.name}" has projectKey "${proc.projectKey}" but no matching project in .uipx; skipping`);
86
88
  continue;
87
89
  }
88
- const bindings = await readBindings(project.path, serializer, fs, result.warnings);
90
+ const bindings = await readBindings(project.path, serializer, fs, result.warnings, projectBindings?.get(project.id));
89
91
  proc.runtimeDependencies = await buildRuntimeDeps(bindings, solution.resources ?? [], overwrites, builder, result.warnings);
90
92
  result.processed += 1;
91
93
  logger.info(`Emitted ${proc.runtimeDependencies.length} runtime dependencies for process "${proc.name}" (project "${project.name}")`);
@@ -110,7 +112,17 @@ async function emitRuntimeDependenciesForProcesses(solutionDir) {
110
112
  }
111
113
  }
112
114
  }
113
- async function readBindings(projectDir, serializer, fs, warnings) {
115
+ async function readBindings(projectDir, serializer, fs, warnings, contributed) {
116
+ if (contributed !== undefined) {
117
+ if (contributed.length === 0)
118
+ return [];
119
+ const parsed2 = serializer.tryDeserialize(JSON.stringify({ version: "2.0", resources: contributed }));
120
+ if (!parsed2.success || !parsed2.metadata) {
121
+ warnings.push(`Failed to parse the bindings contributed by the project at ${projectDir}`);
122
+ return [];
123
+ }
124
+ return parsed2.metadata.resources ?? [];
125
+ }
114
126
  const bindingsPath = fs.path.join(projectDir, "bindings_v2.json");
115
127
  if (!await fs.exists(bindingsPath))
116
128
  return [];
@@ -216,6 +228,15 @@ function projectSubTypesFrom(contributions) {
216
228
  }
217
229
  return subTypes;
218
230
  }
231
+ function projectBindingsFrom(contributions) {
232
+ const bindings = new Map;
233
+ for (const [projectKey, contribution] of contributions.byProject) {
234
+ if (contribution.bindings) {
235
+ bindings.set(projectKey, contribution.bindings);
236
+ }
237
+ }
238
+ return bindings;
239
+ }
219
240
  async function prepareSolutionResources(solutionDir, fs, options) {
220
241
  const gate = options?.gate ?? true;
221
242
  const warnings = [];
@@ -226,7 +247,10 @@ async function prepareSolutionResources(solutionDir, fs, options) {
226
247
  } else {
227
248
  warnings.push(...contributionErrorMessages(contributions));
228
249
  }
229
- await syncAndLog(solutionDir, projectSubTypesFrom(contributions));
250
+ await syncAndLog(solutionDir, projectSubTypesFrom(contributions), {
251
+ projectBindings: projectBindingsFrom(contributions),
252
+ failOnUnresolved: gate
253
+ });
230
254
  const applied = await applyProjectContributions(solutionDir, contributions, { failOnUnmatchedPatch: gate }, fs);
231
255
  warnings.push(...applied.warnings);
232
256
  for (const warning of applied.warnings)
@@ -234,13 +258,13 @@ async function prepareSolutionResources(solutionDir, fs, options) {
234
258
  if (applied.updated > 0) {
235
259
  logger.info(`Applied project resource contributions to ${applied.updated} resource(s)`);
236
260
  }
237
- const rtd = await emitRuntimeDependenciesForProcesses(solutionDir);
261
+ const rtd = await emitRuntimeDependenciesForProcesses(solutionDir, projectBindingsFrom(contributions));
238
262
  warnings.push(...rtd.warnings);
239
263
  for (const warning of rtd.warnings)
240
264
  logger.warn(warning);
241
265
  return { warnings, updated: applied.updated };
242
266
  }
243
267
 
244
- export { projectSubTypesFrom, prepareSolutionResources };
268
+ export { projectSubTypesFrom, projectBindingsFrom, prepareSolutionResources };
245
269
 
246
- //# debugId=16FA8B6372D1A69964756E2164756E21
270
+ //# debugId=5FC361C697C3B19464756E2164756E21