@uipath/solution-tool 1.199.0-preview.97 → 1.199.0

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/deploy.js CHANGED
@@ -31453,7 +31453,7 @@ function requireOmap() {
31453
31453
  function resolveYamlOmap(data) {
31454
31454
  if (data === null)
31455
31455
  return true;
31456
- const objectKeys = [];
31456
+ const objectKeys = {};
31457
31457
  const object = data;
31458
31458
  for (let index = 0, length = object.length;index < length; index += 1) {
31459
31459
  const pair = object[index];
@@ -31471,10 +31471,9 @@ function requireOmap() {
31471
31471
  }
31472
31472
  if (!pairHasKey)
31473
31473
  return false;
31474
- if (objectKeys.indexOf(pairKey) === -1)
31475
- objectKeys.push(pairKey);
31476
- else
31474
+ if (_hasOwnProperty.call(objectKeys, pairKey))
31477
31475
  return false;
31476
+ Object.defineProperty(objectKeys, pairKey, { value: true });
31478
31477
  }
31479
31478
  return true;
31480
31479
  }
@@ -34335,8 +34334,18 @@ function getInboundTraceContext() {
34335
34334
 
34336
34335
  // ../common/src/telemetry/session-id.ts
34337
34336
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
34338
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
34339
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
34337
+ var SESSION_ID_MAX_LENGTH = 64;
34338
+ var RANDOM_SESSION_ID_LENGTH = 32;
34339
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
34340
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
34341
+ var INHERITED_SESSION_SOURCES = [
34342
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
34343
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
34344
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
34345
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
34346
+ { envVar: "WT_SESSION", source: "terminal" }
34347
+ ];
34348
+ var telemetrySessionSlot = singleton("TelemetrySession");
34340
34349
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
34341
34350
  function getProcessEnv2() {
34342
34351
  return globalThis.process?.env;
@@ -34345,14 +34354,42 @@ function normalizeSessionId(value) {
34345
34354
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
34346
34355
  return;
34347
34356
  }
34348
- const trimmed = String(value).trim();
34349
- return trimmed || undefined;
34357
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
34358
+ return cleaned || undefined;
34350
34359
  }
34351
34360
  function getConfiguredTelemetrySessionId() {
34352
34361
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
34353
34362
  }
34354
- function resolveTelemetrySessionId(existingSessionId) {
34355
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
34363
+ function getInheritedSession(env) {
34364
+ for (const candidate of INHERITED_SESSION_SOURCES) {
34365
+ const handle = normalizeSessionId(env[candidate.envVar]);
34366
+ if (handle) {
34367
+ return { id: handle, source: candidate.source };
34368
+ }
34369
+ }
34370
+ return;
34371
+ }
34372
+ function generateRandomSession() {
34373
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
34374
+ crypto.getRandomValues(bytes);
34375
+ let hex = "";
34376
+ for (const byte of bytes) {
34377
+ hex += byte.toString(16).padStart(2, "0");
34378
+ }
34379
+ return { id: hex, source: "random" };
34380
+ }
34381
+ function resolveTelemetrySession() {
34382
+ const existing = telemetrySessionSlot.get();
34383
+ if (existing) {
34384
+ return existing;
34385
+ }
34386
+ const declaredHandle = getConfiguredTelemetrySessionId();
34387
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
34388
+ telemetrySessionSlot.set(resolved);
34389
+ return resolved;
34390
+ }
34391
+ function getTelemetrySessionSource() {
34392
+ return resolveTelemetrySession().source;
34356
34393
  }
34357
34394
  function getTelemetryOperationId() {
34358
34395
  const existing = telemetryOperationIdSlot.get();
@@ -34629,24 +34666,18 @@ class TelemetryService {
34629
34666
  }
34630
34667
  enrichPropertiesWithContext(properties, context) {
34631
34668
  const globalProperties = getGlobalTelemetryProperties();
34632
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
34633
- const sessionId = resolveTelemetrySessionId(existingSessionId);
34634
34669
  const enriched = {
34635
34670
  ...getExecutionContextTelemetryProperties(),
34636
34671
  ...globalProperties,
34637
34672
  ...this.defaultProperties,
34638
34673
  ...redactProperties(properties ?? {}),
34674
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
34639
34675
  ...context ? {
34640
34676
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
34641
34677
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
34642
34678
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
34643
34679
  } : {}
34644
34680
  };
34645
- if (sessionId === undefined) {
34646
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
34647
- } else {
34648
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
34649
- }
34650
34681
  return enriched;
34651
34682
  }
34652
34683
  generateId() {
@@ -37741,7 +37772,7 @@ class JSONApiResponse2 {
37741
37772
  var package_default2 = {
37742
37773
  name: "@uipath/solution-sdk",
37743
37774
  license: "MIT",
37744
- version: "1.199.0-preview.97",
37775
+ version: "1.199.0",
37745
37776
  repository: {
37746
37777
  type: "git",
37747
37778
  url: "https://github.com/UiPath/cli.git",
@@ -43421,4 +43452,4 @@ export {
43421
43452
  activateDeploymentAsync
43422
43453
  };
43423
43454
 
43424
- //# debugId=329BA2D0DEF82DFC64756E2164756E21
43455
+ //# debugId=1E0AFA4DBC2D896E64756E2164756E21
package/dist/init.js CHANGED
@@ -26592,7 +26592,7 @@ function requireOmap() {
26592
26592
  function resolveYamlOmap(data) {
26593
26593
  if (data === null)
26594
26594
  return true;
26595
- const objectKeys = [];
26595
+ const objectKeys = {};
26596
26596
  const object = data;
26597
26597
  for (let index = 0, length = object.length;index < length; index += 1) {
26598
26598
  const pair = object[index];
@@ -26610,10 +26610,9 @@ function requireOmap() {
26610
26610
  }
26611
26611
  if (!pairHasKey)
26612
26612
  return false;
26613
- if (objectKeys.indexOf(pairKey) === -1)
26614
- objectKeys.push(pairKey);
26615
- else
26613
+ if (_hasOwnProperty.call(objectKeys, pairKey))
26616
26614
  return false;
26615
+ Object.defineProperty(objectKeys, pairKey, { value: true });
26617
26616
  }
26618
26617
  return true;
26619
26618
  }
@@ -29474,8 +29473,18 @@ function getInboundTraceContext() {
29474
29473
 
29475
29474
  // ../common/src/telemetry/session-id.ts
29476
29475
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
29477
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
29478
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
29476
+ var SESSION_ID_MAX_LENGTH = 64;
29477
+ var RANDOM_SESSION_ID_LENGTH = 32;
29478
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
29479
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
29480
+ var INHERITED_SESSION_SOURCES = [
29481
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
29482
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
29483
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
29484
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
29485
+ { envVar: "WT_SESSION", source: "terminal" }
29486
+ ];
29487
+ var telemetrySessionSlot = singleton("TelemetrySession");
29479
29488
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
29480
29489
  function getProcessEnv2() {
29481
29490
  return globalThis.process?.env;
@@ -29484,14 +29493,42 @@ function normalizeSessionId(value) {
29484
29493
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
29485
29494
  return;
29486
29495
  }
29487
- const trimmed = String(value).trim();
29488
- return trimmed || undefined;
29496
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
29497
+ return cleaned || undefined;
29489
29498
  }
29490
29499
  function getConfiguredTelemetrySessionId() {
29491
29500
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
29492
29501
  }
29493
- function resolveTelemetrySessionId(existingSessionId) {
29494
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
29502
+ function getInheritedSession(env) {
29503
+ for (const candidate of INHERITED_SESSION_SOURCES) {
29504
+ const handle = normalizeSessionId(env[candidate.envVar]);
29505
+ if (handle) {
29506
+ return { id: handle, source: candidate.source };
29507
+ }
29508
+ }
29509
+ return;
29510
+ }
29511
+ function generateRandomSession() {
29512
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
29513
+ crypto.getRandomValues(bytes);
29514
+ let hex = "";
29515
+ for (const byte of bytes) {
29516
+ hex += byte.toString(16).padStart(2, "0");
29517
+ }
29518
+ return { id: hex, source: "random" };
29519
+ }
29520
+ function resolveTelemetrySession() {
29521
+ const existing = telemetrySessionSlot.get();
29522
+ if (existing) {
29523
+ return existing;
29524
+ }
29525
+ const declaredHandle = getConfiguredTelemetrySessionId();
29526
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
29527
+ telemetrySessionSlot.set(resolved);
29528
+ return resolved;
29529
+ }
29530
+ function getTelemetrySessionSource() {
29531
+ return resolveTelemetrySession().source;
29495
29532
  }
29496
29533
  function getTelemetryOperationId() {
29497
29534
  const existing = telemetryOperationIdSlot.get();
@@ -29768,24 +29805,18 @@ class TelemetryService {
29768
29805
  }
29769
29806
  enrichPropertiesWithContext(properties, context) {
29770
29807
  const globalProperties = getGlobalTelemetryProperties();
29771
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
29772
- const sessionId = resolveTelemetrySessionId(existingSessionId);
29773
29808
  const enriched = {
29774
29809
  ...getExecutionContextTelemetryProperties(),
29775
29810
  ...globalProperties,
29776
29811
  ...this.defaultProperties,
29777
29812
  ...redactProperties(properties ?? {}),
29813
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
29778
29814
  ...context ? {
29779
29815
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
29780
29816
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
29781
29817
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
29782
29818
  } : {}
29783
29819
  };
29784
- if (sessionId === undefined) {
29785
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
29786
- } else {
29787
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
29788
- }
29789
29820
  return enriched;
29790
29821
  }
29791
29822
  generateId() {
@@ -30988,7 +31019,7 @@ function querystringSingleKey(key, value, keyPrefix = "") {
30988
31019
  var package_default = {
30989
31020
  name: "@uipath/solution-sdk",
30990
31021
  license: "MIT",
30991
- version: "1.199.0-preview.97",
31022
+ version: "1.199.0",
30992
31023
  repository: {
30993
31024
  type: "git",
30994
31025
  url: "https://github.com/UiPath/cli.git",
@@ -48813,4 +48844,4 @@ export {
48813
48844
  SolutionInitError
48814
48845
  };
48815
48846
 
48816
- //# debugId=4381AD93C55B727A64756E2164756E21
48847
+ //# debugId=7130FA76910023AE64756E2164756E21
package/dist/pack.js CHANGED
@@ -28624,7 +28624,12 @@ var require_fast_uri = __commonJS((exports, module) => {
28624
28624
  }
28625
28625
  function resolve(baseURI, relativeURI, options) {
28626
28626
  const schemelessOptions = options ? Object.assign({ scheme: "null" }, options) : { scheme: "null" };
28627
- const resolved = resolveComponent(parse5(baseURI, schemelessOptions), parse5(relativeURI, schemelessOptions), schemelessOptions, true);
28627
+ const { parsed: baseParsed, malformedAuthorityOrPort: baseMalformed } = parseWithStatus(baseURI, schemelessOptions);
28628
+ const { parsed: relativeParsed, malformedAuthorityOrPort: relativeMalformed } = parseWithStatus(relativeURI, schemelessOptions);
28629
+ if (baseMalformed || relativeMalformed) {
28630
+ throw new Error(baseParsed.error || relativeParsed.error || "URI is malformed.");
28631
+ }
28632
+ const resolved = resolveComponent(baseParsed, relativeParsed, schemelessOptions, true);
28628
28633
  schemelessOptions.skipEscape = true;
28629
28634
  return serialize(resolved, schemelessOptions);
28630
28635
  }
@@ -28751,6 +28756,7 @@ var require_fast_uri = __commonJS((exports, module) => {
28751
28756
  }
28752
28757
  var URI_PARSE = /^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;
28753
28758
  var AUTHORITY_PREFIX = /^(?:[^#/:?]+:)?\/\/([^/?#]*)/;
28759
+ var AUTHORITY_INTRODUCER_REGION = /^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;
28754
28760
  function getParseError(parsed, matches) {
28755
28761
  if (matches[2] !== undefined && parsed.path && parsed.path[0] !== "/") {
28756
28762
  return 'URI path must start with "/" when authority is present.';
@@ -28785,6 +28791,20 @@ var require_fast_uri = __commonJS((exports, module) => {
28785
28791
  parsed.error = "URI authority must not contain a literal backslash.";
28786
28792
  malformedAuthorityOrPort = true;
28787
28793
  }
28794
+ const introducerMatch = uri2.match(AUTHORITY_INTRODUCER_REGION);
28795
+ if (introducerMatch !== null) {
28796
+ const region = introducerMatch[1];
28797
+ const normalizedRegion = region.replace(/[\t\n\r]/g, "");
28798
+ if (normalizedRegion.length >= 2) {
28799
+ if (normalizedRegion.slice(0, 2) !== "//") {
28800
+ parsed.error = parsed.error || "URI authority must not contain a literal backslash.";
28801
+ malformedAuthorityOrPort = true;
28802
+ } else if (region.length !== normalizedRegion.length) {
28803
+ parsed.error = parsed.error || "URI authority introducer must not contain whitespace.";
28804
+ malformedAuthorityOrPort = true;
28805
+ }
28806
+ }
28807
+ }
28788
28808
  const matches = uri2.match(URI_PARSE);
28789
28809
  if (matches) {
28790
28810
  parsed.scheme = matches[1];
@@ -212009,8 +212029,8 @@ var bpmn_spec_default = {
212009
212029
  <bpmn:outgoing>{outgoingEdge}</bpmn:outgoing>
212010
212030
  </bpmn:Task>`,
212011
212031
  inputNotes: "Variable mappings use uipath:mapping with direct input/output elements, not a jsonBody pattern",
212012
- bpmnElementNotes: "Also used on bpmn:StartEvent and bpmn:EndEvent for variable mappings. On bpmn:Task with no serviceType, defaults to BPMN.Variables.",
212013
- extensionTagNotes: "Uses uipath:mapping (not uipath:activity). createExtensionTask checks for serviceType=BPMN.Variables on StartEvent/EndEvent/Task and routes to createModdleExtensionVariableMapping."
212032
+ bpmnElementNotes: "Also used on bpmn:StartEvent, bpmn:EndEvent, bpmn:ScriptTask, and bpmn:SubProcess for variable mappings. On bpmn:Task with no serviceType, defaults to BPMN.Variables.",
212033
+ extensionTagNotes: "Uses uipath:mapping (not uipath:activity). BPMN.Variables mappings are supported on StartEvent, EndEvent, Task, ScriptTask, and SubProcess owners."
212014
212034
  },
212015
212035
  "BPMN.ScriptTask": {
212016
212036
  extensionType: "BPMN.ScriptTask",
@@ -212753,6 +212773,7 @@ var SUPPORTED_UIPATH_EXTENSION_TAG_NAMES = Object.freeze([
212753
212773
  var SUPPORTED_UIPATH_EXTENSION_TAGS = Object.freeze(SUPPORTED_UIPATH_EXTENSION_TAG_NAMES.map((tag) => `uipath:${tag}`));
212754
212774
  var KNOWN_UIPATH_TAGS = new Set(SUPPORTED_UIPATH_EXTENSION_TAGS);
212755
212775
  var SEMANTIC_VALIDATION_ERROR = "BPMN_VALIDATION_ERROR";
212776
+ var BPMN_MODEL_NAMESPACE = "http://www.omg.org/spec/BPMN/20100524/MODEL";
212756
212777
 
212757
212778
  class BpmnValidateService {
212758
212779
  fileSystem;
@@ -212959,7 +212980,7 @@ class BpmnValidateService {
212959
212980
  });
212960
212981
  }
212961
212982
  const allowedOwners = getAllowedOwnerTypes(contract);
212962
- if (!allowedOwners.some((allowedOwner) => normalizeBpmnName(allowedOwner) === normalizeBpmnName(owner.name))) {
212983
+ if (!allowedOwners.some((allowedOwner) => getLocalName(allowedOwner) === getLocalName(owner.name) && resolveNamespace(owner) === BPMN_MODEL_NAMESPACE)) {
212963
212984
  diagnostics.push({
212964
212985
  file,
212965
212986
  element: describeElement(owner),
@@ -213428,10 +213449,23 @@ function findFirst(node, predicate) {
213428
213449
  return;
213429
213450
  }
213430
213451
  function hasLocalName(node, localName) {
213431
- return normalizeBpmnName(node.name).split(":").pop() === localName.toLowerCase();
213452
+ return getLocalName(node.name) === localName.toLowerCase();
213432
213453
  }
213433
- function normalizeBpmnName(name) {
213434
- return name.toLowerCase();
213454
+ function getLocalName(name) {
213455
+ return name.slice(name.lastIndexOf(":") + 1).toLowerCase();
213456
+ }
213457
+ function resolveNamespace(node) {
213458
+ const separator = node.name.indexOf(":");
213459
+ const prefix = separator === -1 ? "" : node.name.slice(0, separator);
213460
+ const declaration = prefix ? `xmlns:${prefix}` : "xmlns";
213461
+ let current = node;
213462
+ while (current) {
213463
+ if (Object.hasOwn(current.attributes, declaration)) {
213464
+ return current.attributes[declaration];
213465
+ }
213466
+ current = current.parent;
213467
+ }
213468
+ return;
213435
213469
  }
213436
213470
  function findBpmnOwner(payload) {
213437
213471
  const extensionElements = payload.parent;
@@ -213460,7 +213494,8 @@ function getAllowedOwnerTypes(contract) {
213460
213494
  "bpmn:StartEvent",
213461
213495
  "bpmn:EndEvent",
213462
213496
  "bpmn:Task",
213463
- "bpmn:ScriptTask"
213497
+ "bpmn:ScriptTask",
213498
+ "bpmn:SubProcess"
213464
213499
  ];
213465
213500
  }
213466
213501
  const placementTypes = Object.values(contract.placements).map((placement) => placement.type);
@@ -214074,7 +214109,7 @@ init_dist();
214074
214109
  // ../packager/packager-tool-flow/package.json
214075
214110
  var package_default = {
214076
214111
  name: "@uipath/packager-tool-flow",
214077
- version: "1.199.0-preview.97",
214112
+ version: "1.199.0",
214078
214113
  description: "UiPath Flow tool implementation",
214079
214114
  type: "module",
214080
214115
  exports: {
@@ -217963,6 +217998,16 @@ I18nManager.registerTranslations("zu", zu_default2);
217963
217998
  init_dist();
217964
217999
  import { execSync } from "node:child_process";
217965
218000
 
218001
+ // ../packager/packager-tool-workflowcompiler/src/workflow-compiler-config.ts
218002
+ var DEFAULT_WORKFLOW_COMPILER_VERSION = "26.0.198-alpha.24031";
218003
+ var DEFAULT_DOTNET_PATH = "dotnet";
218004
+ var workflowCompilerConfig = {
218005
+ workflowCompilerPath: undefined,
218006
+ workflowCompilerVersion: DEFAULT_WORKFLOW_COMPILER_VERSION,
218007
+ dotnetPath: DEFAULT_DOTNET_PATH,
218008
+ dotnetEnv: undefined
218009
+ };
218010
+
217966
218011
  // ../packager/packager-orchestrator-client/dist/index.js
217967
218012
  init_dist();
217968
218013
  init_dist();
@@ -218253,15 +218298,6 @@ init_dist();
218253
218298
  init_dist();
218254
218299
  import { spawn } from "node:child_process";
218255
218300
 
218256
- // ../packager/packager-tool-workflowcompiler/src/workflow-compiler-config.ts
218257
- var DEFAULT_WORKFLOW_COMPILER_VERSION = "26.0.198-alpha.24031";
218258
- var workflowCompilerConfig = {
218259
- workflowCompilerPath: undefined,
218260
- workflowCompilerVersion: DEFAULT_WORKFLOW_COMPILER_VERSION,
218261
- dotnetPath: "dotnet",
218262
- dotnetEnv: undefined
218263
- };
218264
-
218265
218301
  // ../packager/packager-tool-workflowcompiler/src/workflow-compiler-path-resolver.ts
218266
218302
  init_dist();
218267
218303
  import { execFileSync as execFileSync2 } from "node:child_process";
@@ -218912,11 +218948,14 @@ class WorkflowCompilerToolFactory {
218912
218948
  ProjectTypes.WebApp
218913
218949
  ];
218914
218950
  async createAsync(logger, fileSystem, context) {
218915
- if (!this.isDotnetAvailable()) {
218951
+ if (!this.isPinnedByCaller() && !this.isDotnetAvailable()) {
218916
218952
  throw new Error(translate.t("toolWorkflowcompiler.errors.dotnetNotAvailable"));
218917
218953
  }
218918
218954
  return new WorkflowCompilerTool(fileSystem, logger, context);
218919
218955
  }
218956
+ isPinnedByCaller() {
218957
+ return workflowCompilerConfig.workflowCompilerPath !== undefined && workflowCompilerConfig.dotnetPath !== DEFAULT_DOTNET_PATH;
218958
+ }
218920
218959
  isDotnetAvailable() {
218921
218960
  if (WorkflowCompilerToolFactory.cachedDotnetAvailable !== undefined) {
218922
218961
  return WorkflowCompilerToolFactory.cachedDotnetAvailable;
@@ -223538,7 +223577,7 @@ function requireOmap() {
223538
223577
  function resolveYamlOmap(data) {
223539
223578
  if (data === null)
223540
223579
  return true;
223541
- const objectKeys = [];
223580
+ const objectKeys = {};
223542
223581
  const object5 = data;
223543
223582
  for (let index = 0, length = object5.length;index < length; index += 1) {
223544
223583
  const pair = object5[index];
@@ -223556,10 +223595,9 @@ function requireOmap() {
223556
223595
  }
223557
223596
  if (!pairHasKey)
223558
223597
  return false;
223559
- if (objectKeys.indexOf(pairKey) === -1)
223560
- objectKeys.push(pairKey);
223561
- else
223598
+ if (_hasOwnProperty.call(objectKeys, pairKey))
223562
223599
  return false;
223600
+ Object.defineProperty(objectKeys, pairKey, { value: true });
223563
223601
  }
223564
223602
  return true;
223565
223603
  }
@@ -226420,8 +226458,18 @@ function getInboundTraceContext() {
226420
226458
 
226421
226459
  // ../common/src/telemetry/session-id.ts
226422
226460
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
226423
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
226424
- var telemetrySessionIdSlot = singleton2("TelemetrySessionId");
226461
+ var SESSION_ID_MAX_LENGTH = 64;
226462
+ var RANDOM_SESSION_ID_LENGTH = 32;
226463
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
226464
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
226465
+ var INHERITED_SESSION_SOURCES = [
226466
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
226467
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
226468
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
226469
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
226470
+ { envVar: "WT_SESSION", source: "terminal" }
226471
+ ];
226472
+ var telemetrySessionSlot = singleton2("TelemetrySession");
226425
226473
  var telemetryOperationIdSlot = singleton2("TelemetryOperationId");
226426
226474
  function getProcessEnv2() {
226427
226475
  return globalThis.process?.env;
@@ -226430,14 +226478,42 @@ function normalizeSessionId(value) {
226430
226478
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
226431
226479
  return;
226432
226480
  }
226433
- const trimmed = String(value).trim();
226434
- return trimmed || undefined;
226481
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
226482
+ return cleaned || undefined;
226435
226483
  }
226436
226484
  function getConfiguredTelemetrySessionId() {
226437
226485
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
226438
226486
  }
226439
- function resolveTelemetrySessionId(existingSessionId) {
226440
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
226487
+ function getInheritedSession(env) {
226488
+ for (const candidate of INHERITED_SESSION_SOURCES) {
226489
+ const handle = normalizeSessionId(env[candidate.envVar]);
226490
+ if (handle) {
226491
+ return { id: handle, source: candidate.source };
226492
+ }
226493
+ }
226494
+ return;
226495
+ }
226496
+ function generateRandomSession() {
226497
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
226498
+ crypto.getRandomValues(bytes);
226499
+ let hex4 = "";
226500
+ for (const byte of bytes) {
226501
+ hex4 += byte.toString(16).padStart(2, "0");
226502
+ }
226503
+ return { id: hex4, source: "random" };
226504
+ }
226505
+ function resolveTelemetrySession() {
226506
+ const existing = telemetrySessionSlot.get();
226507
+ if (existing) {
226508
+ return existing;
226509
+ }
226510
+ const declaredHandle = getConfiguredTelemetrySessionId();
226511
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
226512
+ telemetrySessionSlot.set(resolved);
226513
+ return resolved;
226514
+ }
226515
+ function getTelemetrySessionSource() {
226516
+ return resolveTelemetrySession().source;
226441
226517
  }
226442
226518
  function getTelemetryOperationId() {
226443
226519
  const existing = telemetryOperationIdSlot.get();
@@ -226714,24 +226790,18 @@ class TelemetryService {
226714
226790
  }
226715
226791
  enrichPropertiesWithContext(properties, context) {
226716
226792
  const globalProperties = getGlobalTelemetryProperties();
226717
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
226718
- const sessionId = resolveTelemetrySessionId(existingSessionId);
226719
226793
  const enriched = {
226720
226794
  ...getExecutionContextTelemetryProperties(),
226721
226795
  ...globalProperties,
226722
226796
  ...this.defaultProperties,
226723
226797
  ...redactProperties(properties ?? {}),
226798
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
226724
226799
  ...context ? {
226725
226800
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
226726
226801
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
226727
226802
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
226728
226803
  } : {}
226729
226804
  };
226730
- if (sessionId === undefined) {
226731
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
226732
- } else {
226733
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
226734
- }
226735
226805
  return enriched;
226736
226806
  }
226737
226807
  generateId() {
@@ -250426,7 +250496,7 @@ var INTERNAL_ERROR_NAMES2 = new Set([
250426
250496
  "SyntaxError",
250427
250497
  "RangeError"
250428
250498
  ]);
250429
- var telemetrySessionIdSlot2 = singleton4("TelemetrySessionId");
250499
+ var telemetrySessionSlot2 = singleton4("TelemetrySession");
250430
250500
  var telemetryOperationIdSlot2 = singleton4("TelemetryOperationId");
250431
250501
  var authSignalSlot2 = singleton4("TelemetryExecutionContextAuthSignal");
250432
250502
  var SENSITIVE_NAME_TOKENS2 = new Set([
@@ -250604,7 +250674,7 @@ var sdkUserAgentHostToken22 = singleton22("SdkUserAgentHostToken");
250604
250674
  var package_default3 = {
250605
250675
  name: "@uipath/project-packager",
250606
250676
  license: "MIT",
250607
- version: "1.199.0-preview.97",
250677
+ version: "1.199.0",
250608
250678
  description: "UiPath Project Packager - core library for packing individual UiPath projects",
250609
250679
  type: "module",
250610
250680
  main: "./dist/index.js",
@@ -250667,7 +250737,7 @@ var package_default3 = {
250667
250737
  "@uipath/packager-tool-webapp": "workspace:*",
250668
250738
  "@uipath/packager-tool-workflowcompiler": "workspace:*",
250669
250739
  "@vitest/coverage-v8": "^4.1.6",
250670
- jsdom: "^29.0.0",
250740
+ jsdom: "^30.0.1",
250671
250741
  typescript: "^6.0.2",
250672
250742
  "vite-tsconfig-paths": "^6.1.1",
250673
250743
  vitest: "^4.1.6"
@@ -258247,7 +258317,7 @@ function requireOmap2() {
258247
258317
  function resolveYamlOmap(data) {
258248
258318
  if (data === null)
258249
258319
  return true;
258250
- const objectKeys = [];
258320
+ const objectKeys = {};
258251
258321
  const object5 = data;
258252
258322
  for (let index = 0, length = object5.length;index < length; index += 1) {
258253
258323
  const pair = object5[index];
@@ -258265,10 +258335,9 @@ function requireOmap2() {
258265
258335
  }
258266
258336
  if (!pairHasKey)
258267
258337
  return false;
258268
- if (objectKeys.indexOf(pairKey) === -1)
258269
- objectKeys.push(pairKey);
258270
- else
258338
+ if (_hasOwnProperty.call(objectKeys, pairKey))
258271
258339
  return false;
258340
+ Object.defineProperty(objectKeys, pairKey, { value: true });
258272
258341
  }
258273
258342
  return true;
258274
258343
  }
@@ -261130,8 +261199,18 @@ function getInboundTraceContext2() {
261130
261199
  return parseInboundTraceparent2(getProcessEnv3()?.[TELEMETRY_TRACEPARENT_ENV2]);
261131
261200
  }
261132
261201
  var TELEMETRY_SESSION_ID_ENV2 = "UIPATH_SESSION_ID";
261133
- var TELEMETRY_SESSION_ID_PROPERTY2 = "session_id";
261134
- var telemetrySessionIdSlot3 = singleton5("TelemetrySessionId");
261202
+ var SESSION_ID_MAX_LENGTH2 = 64;
261203
+ var RANDOM_SESSION_ID_LENGTH2 = 32;
261204
+ var TELEMETRY_SESSION_SOURCE_PROPERTY2 = "session_id_source";
261205
+ var CONTROL_CHARACTERS2 = /\p{Cc}/gu;
261206
+ var INHERITED_SESSION_SOURCES2 = [
261207
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
261208
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
261209
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
261210
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
261211
+ { envVar: "WT_SESSION", source: "terminal" }
261212
+ ];
261213
+ var telemetrySessionSlot3 = singleton5("TelemetrySession");
261135
261214
  var telemetryOperationIdSlot3 = singleton5("TelemetryOperationId");
261136
261215
  function getProcessEnv22() {
261137
261216
  return globalThis.process?.env;
@@ -261140,14 +261219,42 @@ function normalizeSessionId2(value) {
261140
261219
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
261141
261220
  return;
261142
261221
  }
261143
- const trimmed = String(value).trim();
261144
- return trimmed || undefined;
261222
+ const cleaned = String(value).replace(CONTROL_CHARACTERS2, "").trim().slice(0, SESSION_ID_MAX_LENGTH2);
261223
+ return cleaned || undefined;
261145
261224
  }
261146
261225
  function getConfiguredTelemetrySessionId2() {
261147
261226
  return normalizeSessionId2(getProcessEnv22()?.[TELEMETRY_SESSION_ID_ENV2]);
261148
261227
  }
261149
- function resolveTelemetrySessionId2(existingSessionId) {
261150
- return getConfiguredTelemetrySessionId2() ?? normalizeSessionId2(existingSessionId);
261228
+ function getInheritedSession2(env2) {
261229
+ for (const candidate of INHERITED_SESSION_SOURCES2) {
261230
+ const handle = normalizeSessionId2(env2[candidate.envVar]);
261231
+ if (handle) {
261232
+ return { id: handle, source: candidate.source };
261233
+ }
261234
+ }
261235
+ return;
261236
+ }
261237
+ function generateRandomSession2() {
261238
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH2 / 2);
261239
+ crypto.getRandomValues(bytes);
261240
+ let hex4 = "";
261241
+ for (const byte of bytes) {
261242
+ hex4 += byte.toString(16).padStart(2, "0");
261243
+ }
261244
+ return { id: hex4, source: "random" };
261245
+ }
261246
+ function resolveTelemetrySession2() {
261247
+ const existing = telemetrySessionSlot3.get();
261248
+ if (existing) {
261249
+ return existing;
261250
+ }
261251
+ const declaredHandle = getConfiguredTelemetrySessionId2();
261252
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession2(getProcessEnv22() ?? {}) ?? generateRandomSession2();
261253
+ telemetrySessionSlot3.set(resolved);
261254
+ return resolved;
261255
+ }
261256
+ function getTelemetrySessionSource2() {
261257
+ return resolveTelemetrySession2().source;
261151
261258
  }
261152
261259
  function getTelemetryOperationId2() {
261153
261260
  const existing = telemetryOperationIdSlot3.get();
@@ -261419,24 +261526,18 @@ class TelemetryService2 {
261419
261526
  }
261420
261527
  enrichPropertiesWithContext(properties, context) {
261421
261528
  const globalProperties = getGlobalTelemetryProperties2();
261422
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY2] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY2] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY2];
261423
- const sessionId = resolveTelemetrySessionId2(existingSessionId);
261424
261529
  const enriched = {
261425
261530
  ...getExecutionContextTelemetryProperties2(),
261426
261531
  ...globalProperties,
261427
261532
  ...this.defaultProperties,
261428
261533
  ...redactProperties2(properties ?? {}),
261534
+ [TELEMETRY_SESSION_SOURCE_PROPERTY2]: getTelemetrySessionSource2(),
261429
261535
  ...context ? {
261430
261536
  [TELEMETRY_OPERATION_ID_PROPERTY2]: context.operationId,
261431
261537
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY2]: context.parentId } : {},
261432
261538
  [TELEMETRY_SPAN_ID_PROPERTY2]: context.id
261433
261539
  } : {}
261434
261540
  };
261435
- if (sessionId === undefined) {
261436
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY2];
261437
- } else {
261438
- enriched[TELEMETRY_SESSION_ID_PROPERTY2] = sessionId;
261439
- }
261440
261541
  return enriched;
261441
261542
  }
261442
261543
  generateId() {
@@ -262738,7 +262839,7 @@ var sdkUserAgentHostToken23 = singleton23("SdkUserAgentHostToken");
262738
262839
  var package_default4 = {
262739
262840
  name: "@uipath/project-packager",
262740
262841
  license: "MIT",
262741
- version: "1.199.0-preview.97",
262842
+ version: "1.199.0",
262742
262843
  description: "UiPath Project Packager - core library for packing individual UiPath projects",
262743
262844
  type: "module",
262744
262845
  main: "./dist/index.js",
@@ -262801,7 +262902,7 @@ var package_default4 = {
262801
262902
  "@uipath/packager-tool-webapp": "workspace:*",
262802
262903
  "@uipath/packager-tool-workflowcompiler": "workspace:*",
262803
262904
  "@vitest/coverage-v8": "^4.1.6",
262804
- jsdom: "^29.0.0",
262905
+ jsdom: "^30.0.1",
262805
262906
  typescript: "^6.0.2",
262806
262907
  "vite-tsconfig-paths": "^6.1.1",
262807
262908
  vitest: "^4.1.6"
@@ -281163,20 +281264,27 @@ async function ensurePackagerTools(solutionDir, fs8) {
281163
281264
  const projectTypes = await readProjectTypes(solutionDir, fs8);
281164
281265
  if (projectTypes.length === 0)
281165
281266
  return;
281166
- const neededTools = new Set;
281267
+ const neededTools = new Map;
281167
281268
  for (const type3 of projectTypes) {
281168
281269
  if (toolsFactoryRepository2.canHandleProject(type3))
281169
281270
  continue;
281170
281271
  const toolVerb = PROJECT_TYPE_TO_TOOL.get(type3);
281171
281272
  if (toolVerb) {
281172
- neededTools.add(toolVerb);
281273
+ const types5 = neededTools.get(toolVerb) ?? [];
281274
+ if (!types5.includes(type3))
281275
+ types5.push(type3);
281276
+ neededTools.set(toolVerb, types5);
281173
281277
  } else {
281174
281278
  logger.warn(`No CLI tool mapping found for project type '${type3}'. Pack may fail.`);
281175
281279
  }
281176
281280
  }
281177
- for (const toolVerb of neededTools) {
281281
+ for (const [toolVerb, types5] of neededTools) {
281178
281282
  logger.info(`Loading packager factory for '${toolVerb}' to handle project types...`);
281179
281283
  await ensurePackagerFactory(toolVerb);
281284
+ const stillMissing = types5.filter((type3) => !toolsFactoryRepository2.canHandleProject(type3));
281285
+ if (stillMissing.length > 0) {
281286
+ throw new Error(`Loaded '${toolVerb}' but it registered no packager factory for ` + `project type${stillMissing.length > 1 ? "s" : ""} ` + `${stillMissing.map((t13) => `'${t13}'`).join(", ")}. ` + `Reinstall it with 'uip tools install ${toolVerb}' — the ` + `copy on disk is missing its packager entry point or is off ` + `the CLI's release line.`);
281287
+ }
281180
281288
  }
281181
281289
  }
281182
281290
 
@@ -281529,4 +281637,4 @@ export {
281529
281637
  packSolutionAsync
281530
281638
  };
281531
281639
 
281532
- //# debugId=E870F79DCBF63CC364756E2164756E21
281640
+ //# debugId=CC6D081B5992B68464756E2164756E21
package/dist/publish.js CHANGED
@@ -24512,7 +24512,7 @@ function requireOmap() {
24512
24512
  function resolveYamlOmap(data) {
24513
24513
  if (data === null)
24514
24514
  return true;
24515
- const objectKeys = [];
24515
+ const objectKeys = {};
24516
24516
  const object = data;
24517
24517
  for (let index = 0, length = object.length;index < length; index += 1) {
24518
24518
  const pair = object[index];
@@ -24530,10 +24530,9 @@ function requireOmap() {
24530
24530
  }
24531
24531
  if (!pairHasKey)
24532
24532
  return false;
24533
- if (objectKeys.indexOf(pairKey) === -1)
24534
- objectKeys.push(pairKey);
24535
- else
24533
+ if (_hasOwnProperty.call(objectKeys, pairKey))
24536
24534
  return false;
24535
+ Object.defineProperty(objectKeys, pairKey, { value: true });
24537
24536
  }
24538
24537
  return true;
24539
24538
  }
@@ -27394,8 +27393,18 @@ function getInboundTraceContext() {
27394
27393
 
27395
27394
  // ../common/src/telemetry/session-id.ts
27396
27395
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
27397
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
27398
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
27396
+ var SESSION_ID_MAX_LENGTH = 64;
27397
+ var RANDOM_SESSION_ID_LENGTH = 32;
27398
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
27399
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
27400
+ var INHERITED_SESSION_SOURCES = [
27401
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
27402
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
27403
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
27404
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
27405
+ { envVar: "WT_SESSION", source: "terminal" }
27406
+ ];
27407
+ var telemetrySessionSlot = singleton("TelemetrySession");
27399
27408
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
27400
27409
  function getProcessEnv2() {
27401
27410
  return globalThis.process?.env;
@@ -27404,14 +27413,42 @@ function normalizeSessionId(value) {
27404
27413
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
27405
27414
  return;
27406
27415
  }
27407
- const trimmed = String(value).trim();
27408
- return trimmed || undefined;
27416
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
27417
+ return cleaned || undefined;
27409
27418
  }
27410
27419
  function getConfiguredTelemetrySessionId() {
27411
27420
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
27412
27421
  }
27413
- function resolveTelemetrySessionId(existingSessionId) {
27414
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
27422
+ function getInheritedSession(env) {
27423
+ for (const candidate of INHERITED_SESSION_SOURCES) {
27424
+ const handle = normalizeSessionId(env[candidate.envVar]);
27425
+ if (handle) {
27426
+ return { id: handle, source: candidate.source };
27427
+ }
27428
+ }
27429
+ return;
27430
+ }
27431
+ function generateRandomSession() {
27432
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
27433
+ crypto.getRandomValues(bytes);
27434
+ let hex = "";
27435
+ for (const byte of bytes) {
27436
+ hex += byte.toString(16).padStart(2, "0");
27437
+ }
27438
+ return { id: hex, source: "random" };
27439
+ }
27440
+ function resolveTelemetrySession() {
27441
+ const existing = telemetrySessionSlot.get();
27442
+ if (existing) {
27443
+ return existing;
27444
+ }
27445
+ const declaredHandle = getConfiguredTelemetrySessionId();
27446
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
27447
+ telemetrySessionSlot.set(resolved);
27448
+ return resolved;
27449
+ }
27450
+ function getTelemetrySessionSource() {
27451
+ return resolveTelemetrySession().source;
27415
27452
  }
27416
27453
  function getTelemetryOperationId() {
27417
27454
  const existing = telemetryOperationIdSlot.get();
@@ -27688,24 +27725,18 @@ class TelemetryService {
27688
27725
  }
27689
27726
  enrichPropertiesWithContext(properties, context) {
27690
27727
  const globalProperties = getGlobalTelemetryProperties();
27691
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
27692
- const sessionId = resolveTelemetrySessionId(existingSessionId);
27693
27728
  const enriched = {
27694
27729
  ...getExecutionContextTelemetryProperties(),
27695
27730
  ...globalProperties,
27696
27731
  ...this.defaultProperties,
27697
27732
  ...redactProperties(properties ?? {}),
27733
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
27698
27734
  ...context ? {
27699
27735
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
27700
27736
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
27701
27737
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
27702
27738
  } : {}
27703
27739
  };
27704
- if (sessionId === undefined) {
27705
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
27706
- } else {
27707
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
27708
- }
27709
27740
  return enriched;
27710
27741
  }
27711
27742
  generateId() {
@@ -30703,7 +30734,7 @@ class TextApiResponse2 {
30703
30734
  var package_default2 = {
30704
30735
  name: "@uipath/solution-sdk",
30705
30736
  license: "MIT",
30706
- version: "1.199.0-preview.97",
30737
+ version: "1.199.0",
30707
30738
  repository: {
30708
30739
  type: "git",
30709
30740
  url: "https://github.com/UiPath/cli.git",
@@ -33478,4 +33509,4 @@ export {
33478
33509
  publishSolutionAsync
33479
33510
  };
33480
33511
 
33481
- //# debugId=A2D23293DC62035F64756E2164756E21
33512
+ //# debugId=3D1C0742BB5DECF064756E2164756E21
package/dist/resource.js CHANGED
@@ -26878,7 +26878,7 @@ function requireOmap() {
26878
26878
  function resolveYamlOmap(data) {
26879
26879
  if (data === null)
26880
26880
  return true;
26881
- const objectKeys = [];
26881
+ const objectKeys = {};
26882
26882
  const object = data;
26883
26883
  for (let index = 0, length = object.length;index < length; index += 1) {
26884
26884
  const pair = object[index];
@@ -26896,10 +26896,9 @@ function requireOmap() {
26896
26896
  }
26897
26897
  if (!pairHasKey)
26898
26898
  return false;
26899
- if (objectKeys.indexOf(pairKey) === -1)
26900
- objectKeys.push(pairKey);
26901
- else
26899
+ if (_hasOwnProperty.call(objectKeys, pairKey))
26902
26900
  return false;
26901
+ Object.defineProperty(objectKeys, pairKey, { value: true });
26903
26902
  }
26904
26903
  return true;
26905
26904
  }
@@ -29760,8 +29759,18 @@ function getInboundTraceContext() {
29760
29759
 
29761
29760
  // ../common/src/telemetry/session-id.ts
29762
29761
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
29763
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
29764
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
29762
+ var SESSION_ID_MAX_LENGTH = 64;
29763
+ var RANDOM_SESSION_ID_LENGTH = 32;
29764
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
29765
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
29766
+ var INHERITED_SESSION_SOURCES = [
29767
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
29768
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
29769
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
29770
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
29771
+ { envVar: "WT_SESSION", source: "terminal" }
29772
+ ];
29773
+ var telemetrySessionSlot = singleton("TelemetrySession");
29765
29774
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
29766
29775
  function getProcessEnv2() {
29767
29776
  return globalThis.process?.env;
@@ -29770,14 +29779,42 @@ function normalizeSessionId(value) {
29770
29779
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
29771
29780
  return;
29772
29781
  }
29773
- const trimmed = String(value).trim();
29774
- return trimmed || undefined;
29782
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
29783
+ return cleaned || undefined;
29775
29784
  }
29776
29785
  function getConfiguredTelemetrySessionId() {
29777
29786
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
29778
29787
  }
29779
- function resolveTelemetrySessionId(existingSessionId) {
29780
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
29788
+ function getInheritedSession(env) {
29789
+ for (const candidate of INHERITED_SESSION_SOURCES) {
29790
+ const handle = normalizeSessionId(env[candidate.envVar]);
29791
+ if (handle) {
29792
+ return { id: handle, source: candidate.source };
29793
+ }
29794
+ }
29795
+ return;
29796
+ }
29797
+ function generateRandomSession() {
29798
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
29799
+ crypto.getRandomValues(bytes);
29800
+ let hex = "";
29801
+ for (const byte of bytes) {
29802
+ hex += byte.toString(16).padStart(2, "0");
29803
+ }
29804
+ return { id: hex, source: "random" };
29805
+ }
29806
+ function resolveTelemetrySession() {
29807
+ const existing = telemetrySessionSlot.get();
29808
+ if (existing) {
29809
+ return existing;
29810
+ }
29811
+ const declaredHandle = getConfiguredTelemetrySessionId();
29812
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
29813
+ telemetrySessionSlot.set(resolved);
29814
+ return resolved;
29815
+ }
29816
+ function getTelemetrySessionSource() {
29817
+ return resolveTelemetrySession().source;
29781
29818
  }
29782
29819
  function getTelemetryOperationId() {
29783
29820
  const existing = telemetryOperationIdSlot.get();
@@ -30054,24 +30091,18 @@ class TelemetryService {
30054
30091
  }
30055
30092
  enrichPropertiesWithContext(properties, context) {
30056
30093
  const globalProperties = getGlobalTelemetryProperties();
30057
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
30058
- const sessionId = resolveTelemetrySessionId(existingSessionId);
30059
30094
  const enriched = {
30060
30095
  ...getExecutionContextTelemetryProperties(),
30061
30096
  ...globalProperties,
30062
30097
  ...this.defaultProperties,
30063
30098
  ...redactProperties(properties ?? {}),
30099
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
30064
30100
  ...context ? {
30065
30101
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
30066
30102
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
30067
30103
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
30068
30104
  } : {}
30069
30105
  };
30070
- if (sessionId === undefined) {
30071
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
30072
- } else {
30073
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
30074
- }
30075
30106
  return enriched;
30076
30107
  }
30077
30108
  generateId() {
@@ -47991,4 +48022,4 @@ export {
47991
48022
  resourceRefreshAsync
47992
48023
  };
47993
48024
 
47994
- //# debugId=30D7942839702D9F64756E2164756E21
48025
+ //# debugId=BFBFBE6E70B046DD64756E2164756E21
package/dist/tool.js CHANGED
@@ -30536,7 +30536,7 @@ import"./packager-tool.js";
30536
30536
  var package_default = {
30537
30537
  name: "@uipath/solution-tool",
30538
30538
  license: "MIT",
30539
- version: "1.199.0-preview.97",
30539
+ version: "1.199.0",
30540
30540
  description: "Create, pack, publish, and deploy UiPath Automation Solutions.",
30541
30541
  repository: {
30542
30542
  type: "git",
@@ -33910,7 +33910,7 @@ function requireOmap() {
33910
33910
  function resolveYamlOmap(data) {
33911
33911
  if (data === null)
33912
33912
  return true;
33913
- const objectKeys = [];
33913
+ const objectKeys = {};
33914
33914
  const object = data;
33915
33915
  for (let index = 0, length = object.length;index < length; index += 1) {
33916
33916
  const pair = object[index];
@@ -33928,10 +33928,9 @@ function requireOmap() {
33928
33928
  }
33929
33929
  if (!pairHasKey)
33930
33930
  return false;
33931
- if (objectKeys.indexOf(pairKey) === -1)
33932
- objectKeys.push(pairKey);
33933
- else
33931
+ if (_hasOwnProperty.call(objectKeys, pairKey))
33934
33932
  return false;
33933
+ Object.defineProperty(objectKeys, pairKey, { value: true });
33935
33934
  }
33936
33935
  return true;
33937
33936
  }
@@ -36792,8 +36791,18 @@ function getInboundTraceContext() {
36792
36791
 
36793
36792
  // ../common/src/telemetry/session-id.ts
36794
36793
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
36795
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
36796
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
36794
+ var SESSION_ID_MAX_LENGTH = 64;
36795
+ var RANDOM_SESSION_ID_LENGTH = 32;
36796
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
36797
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
36798
+ var INHERITED_SESSION_SOURCES = [
36799
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
36800
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
36801
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
36802
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
36803
+ { envVar: "WT_SESSION", source: "terminal" }
36804
+ ];
36805
+ var telemetrySessionSlot = singleton("TelemetrySession");
36797
36806
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
36798
36807
  function getProcessEnv2() {
36799
36808
  return globalThis.process?.env;
@@ -36802,14 +36811,42 @@ function normalizeSessionId(value) {
36802
36811
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
36803
36812
  return;
36804
36813
  }
36805
- const trimmed = String(value).trim();
36806
- return trimmed || undefined;
36814
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
36815
+ return cleaned || undefined;
36807
36816
  }
36808
36817
  function getConfiguredTelemetrySessionId() {
36809
36818
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
36810
36819
  }
36811
- function resolveTelemetrySessionId(existingSessionId) {
36812
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
36820
+ function getInheritedSession(env) {
36821
+ for (const candidate of INHERITED_SESSION_SOURCES) {
36822
+ const handle = normalizeSessionId(env[candidate.envVar]);
36823
+ if (handle) {
36824
+ return { id: handle, source: candidate.source };
36825
+ }
36826
+ }
36827
+ return;
36828
+ }
36829
+ function generateRandomSession() {
36830
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
36831
+ crypto.getRandomValues(bytes);
36832
+ let hex = "";
36833
+ for (const byte of bytes) {
36834
+ hex += byte.toString(16).padStart(2, "0");
36835
+ }
36836
+ return { id: hex, source: "random" };
36837
+ }
36838
+ function resolveTelemetrySession() {
36839
+ const existing = telemetrySessionSlot.get();
36840
+ if (existing) {
36841
+ return existing;
36842
+ }
36843
+ const declaredHandle = getConfiguredTelemetrySessionId();
36844
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
36845
+ telemetrySessionSlot.set(resolved);
36846
+ return resolved;
36847
+ }
36848
+ function getTelemetrySessionSource() {
36849
+ return resolveTelemetrySession().source;
36813
36850
  }
36814
36851
  function getTelemetryOperationId() {
36815
36852
  const existing = telemetryOperationIdSlot.get();
@@ -37086,24 +37123,18 @@ class TelemetryService {
37086
37123
  }
37087
37124
  enrichPropertiesWithContext(properties, context) {
37088
37125
  const globalProperties = getGlobalTelemetryProperties();
37089
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
37090
- const sessionId = resolveTelemetrySessionId(existingSessionId);
37091
37126
  const enriched = {
37092
37127
  ...getExecutionContextTelemetryProperties(),
37093
37128
  ...globalProperties,
37094
37129
  ...this.defaultProperties,
37095
37130
  ...redactProperties(properties ?? {}),
37131
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
37096
37132
  ...context ? {
37097
37133
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
37098
37134
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
37099
37135
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
37100
37136
  } : {}
37101
37137
  };
37102
- if (sessionId === undefined) {
37103
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
37104
- } else {
37105
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
37106
- }
37107
37138
  return enriched;
37108
37139
  }
37109
37140
  generateId() {
@@ -64204,7 +64235,7 @@ var INTERNAL_ERROR_NAMES2 = new Set([
64204
64235
  "SyntaxError",
64205
64236
  "RangeError"
64206
64237
  ]);
64207
- var telemetrySessionIdSlot2 = singleton3("TelemetrySessionId");
64238
+ var telemetrySessionSlot2 = singleton3("TelemetrySession");
64208
64239
  var telemetryOperationIdSlot2 = singleton3("TelemetryOperationId");
64209
64240
  var authSignalSlot2 = singleton3("TelemetryExecutionContextAuthSignal");
64210
64241
  var SENSITIVE_NAME_TOKENS2 = new Set([
@@ -64382,7 +64413,7 @@ var sdkUserAgentHostToken22 = singleton22("SdkUserAgentHostToken");
64382
64413
  var package_default2 = {
64383
64414
  name: "@uipath/project-packager",
64384
64415
  license: "MIT",
64385
- version: "1.199.0-preview.97",
64416
+ version: "1.199.0",
64386
64417
  description: "UiPath Project Packager - core library for packing individual UiPath projects",
64387
64418
  type: "module",
64388
64419
  main: "./dist/index.js",
@@ -64445,7 +64476,7 @@ var package_default2 = {
64445
64476
  "@uipath/packager-tool-webapp": "workspace:*",
64446
64477
  "@uipath/packager-tool-workflowcompiler": "workspace:*",
64447
64478
  "@vitest/coverage-v8": "^4.1.6",
64448
- jsdom: "^29.0.0",
64479
+ jsdom: "^30.0.1",
64449
64480
  typescript: "^6.0.2",
64450
64481
  "vite-tsconfig-paths": "^6.1.1",
64451
64482
  vitest: "^4.1.6"
@@ -72006,7 +72037,7 @@ function requireOmap2() {
72006
72037
  function resolveYamlOmap(data) {
72007
72038
  if (data === null)
72008
72039
  return true;
72009
- const objectKeys = [];
72040
+ const objectKeys = {};
72010
72041
  const object = data;
72011
72042
  for (let index = 0, length = object.length;index < length; index += 1) {
72012
72043
  const pair = object[index];
@@ -72024,10 +72055,9 @@ function requireOmap2() {
72024
72055
  }
72025
72056
  if (!pairHasKey)
72026
72057
  return false;
72027
- if (objectKeys.indexOf(pairKey) === -1)
72028
- objectKeys.push(pairKey);
72029
- else
72058
+ if (_hasOwnProperty.call(objectKeys, pairKey))
72030
72059
  return false;
72060
+ Object.defineProperty(objectKeys, pairKey, { value: true });
72031
72061
  }
72032
72062
  return true;
72033
72063
  }
@@ -74889,8 +74919,18 @@ function getInboundTraceContext2() {
74889
74919
  return parseInboundTraceparent2(getProcessEnv3()?.[TELEMETRY_TRACEPARENT_ENV2]);
74890
74920
  }
74891
74921
  var TELEMETRY_SESSION_ID_ENV2 = "UIPATH_SESSION_ID";
74892
- var TELEMETRY_SESSION_ID_PROPERTY2 = "session_id";
74893
- var telemetrySessionIdSlot3 = singleton4("TelemetrySessionId");
74922
+ var SESSION_ID_MAX_LENGTH2 = 64;
74923
+ var RANDOM_SESSION_ID_LENGTH2 = 32;
74924
+ var TELEMETRY_SESSION_SOURCE_PROPERTY2 = "session_id_source";
74925
+ var CONTROL_CHARACTERS2 = /\p{Cc}/gu;
74926
+ var INHERITED_SESSION_SOURCES2 = [
74927
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
74928
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
74929
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
74930
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
74931
+ { envVar: "WT_SESSION", source: "terminal" }
74932
+ ];
74933
+ var telemetrySessionSlot3 = singleton4("TelemetrySession");
74894
74934
  var telemetryOperationIdSlot3 = singleton4("TelemetryOperationId");
74895
74935
  function getProcessEnv22() {
74896
74936
  return globalThis.process?.env;
@@ -74899,14 +74939,42 @@ function normalizeSessionId2(value) {
74899
74939
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
74900
74940
  return;
74901
74941
  }
74902
- const trimmed = String(value).trim();
74903
- return trimmed || undefined;
74942
+ const cleaned = String(value).replace(CONTROL_CHARACTERS2, "").trim().slice(0, SESSION_ID_MAX_LENGTH2);
74943
+ return cleaned || undefined;
74904
74944
  }
74905
74945
  function getConfiguredTelemetrySessionId2() {
74906
74946
  return normalizeSessionId2(getProcessEnv22()?.[TELEMETRY_SESSION_ID_ENV2]);
74907
74947
  }
74908
- function resolveTelemetrySessionId2(existingSessionId) {
74909
- return getConfiguredTelemetrySessionId2() ?? normalizeSessionId2(existingSessionId);
74948
+ function getInheritedSession2(env2) {
74949
+ for (const candidate of INHERITED_SESSION_SOURCES2) {
74950
+ const handle = normalizeSessionId2(env2[candidate.envVar]);
74951
+ if (handle) {
74952
+ return { id: handle, source: candidate.source };
74953
+ }
74954
+ }
74955
+ return;
74956
+ }
74957
+ function generateRandomSession2() {
74958
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH2 / 2);
74959
+ crypto.getRandomValues(bytes);
74960
+ let hex = "";
74961
+ for (const byte of bytes) {
74962
+ hex += byte.toString(16).padStart(2, "0");
74963
+ }
74964
+ return { id: hex, source: "random" };
74965
+ }
74966
+ function resolveTelemetrySession2() {
74967
+ const existing = telemetrySessionSlot3.get();
74968
+ if (existing) {
74969
+ return existing;
74970
+ }
74971
+ const declaredHandle = getConfiguredTelemetrySessionId2();
74972
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession2(getProcessEnv22() ?? {}) ?? generateRandomSession2();
74973
+ telemetrySessionSlot3.set(resolved);
74974
+ return resolved;
74975
+ }
74976
+ function getTelemetrySessionSource2() {
74977
+ return resolveTelemetrySession2().source;
74910
74978
  }
74911
74979
  function getTelemetryOperationId2() {
74912
74980
  const existing = telemetryOperationIdSlot3.get();
@@ -75178,24 +75246,18 @@ class TelemetryService2 {
75178
75246
  }
75179
75247
  enrichPropertiesWithContext(properties, context) {
75180
75248
  const globalProperties = getGlobalTelemetryProperties2();
75181
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY2] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY2] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY2];
75182
- const sessionId = resolveTelemetrySessionId2(existingSessionId);
75183
75249
  const enriched = {
75184
75250
  ...getExecutionContextTelemetryProperties2(),
75185
75251
  ...globalProperties,
75186
75252
  ...this.defaultProperties,
75187
75253
  ...redactProperties2(properties ?? {}),
75254
+ [TELEMETRY_SESSION_SOURCE_PROPERTY2]: getTelemetrySessionSource2(),
75188
75255
  ...context ? {
75189
75256
  [TELEMETRY_OPERATION_ID_PROPERTY2]: context.operationId,
75190
75257
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY2]: context.parentId } : {},
75191
75258
  [TELEMETRY_SPAN_ID_PROPERTY2]: context.id
75192
75259
  } : {}
75193
75260
  };
75194
- if (sessionId === undefined) {
75195
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY2];
75196
- } else {
75197
- enriched[TELEMETRY_SESSION_ID_PROPERTY2] = sessionId;
75198
- }
75199
75261
  return enriched;
75200
75262
  }
75201
75263
  generateId() {
@@ -76497,7 +76559,7 @@ var sdkUserAgentHostToken23 = singleton23("SdkUserAgentHostToken");
76497
76559
  var package_default3 = {
76498
76560
  name: "@uipath/project-packager",
76499
76561
  license: "MIT",
76500
- version: "1.199.0-preview.97",
76562
+ version: "1.199.0",
76501
76563
  description: "UiPath Project Packager - core library for packing individual UiPath projects",
76502
76564
  type: "module",
76503
76565
  main: "./dist/index.js",
@@ -76560,7 +76622,7 @@ var package_default3 = {
76560
76622
  "@uipath/packager-tool-webapp": "workspace:*",
76561
76623
  "@uipath/packager-tool-workflowcompiler": "workspace:*",
76562
76624
  "@vitest/coverage-v8": "^4.1.6",
76563
- jsdom: "^29.0.0",
76625
+ jsdom: "^30.0.1",
76564
76626
  typescript: "^6.0.2",
76565
76627
  "vite-tsconfig-paths": "^6.1.1",
76566
76628
  vitest: "^4.1.6"
@@ -78757,20 +78819,27 @@ async function ensurePackagerTools(solutionDir, fs9) {
78757
78819
  const projectTypes = await readProjectTypes(solutionDir, fs9);
78758
78820
  if (projectTypes.length === 0)
78759
78821
  return;
78760
- const neededTools = new Set;
78822
+ const neededTools = new Map;
78761
78823
  for (const type3 of projectTypes) {
78762
78824
  if (toolsFactoryRepository2.canHandleProject(type3))
78763
78825
  continue;
78764
78826
  const toolVerb = PROJECT_TYPE_TO_TOOL.get(type3);
78765
78827
  if (toolVerb) {
78766
- neededTools.add(toolVerb);
78828
+ const types4 = neededTools.get(toolVerb) ?? [];
78829
+ if (!types4.includes(type3))
78830
+ types4.push(type3);
78831
+ neededTools.set(toolVerb, types4);
78767
78832
  } else {
78768
78833
  logger.warn(`No CLI tool mapping found for project type '${type3}'. Pack may fail.`);
78769
78834
  }
78770
78835
  }
78771
- for (const toolVerb of neededTools) {
78836
+ for (const [toolVerb, types4] of neededTools) {
78772
78837
  logger.info(`Loading packager factory for '${toolVerb}' to handle project types...`);
78773
78838
  await ensurePackagerFactory(toolVerb);
78839
+ const stillMissing = types4.filter((type3) => !toolsFactoryRepository2.canHandleProject(type3));
78840
+ if (stillMissing.length > 0) {
78841
+ throw new Error(`Loaded '${toolVerb}' but it registered no packager factory for ` + `project type${stillMissing.length > 1 ? "s" : ""} ` + `${stillMissing.map((t3) => `'${t3}'`).join(", ")}. ` + `Reinstall it with 'uip tools install ${toolVerb}' — the ` + `copy on disk is missing its packager entry point or is off ` + `the CLI's release line.`);
78842
+ }
78774
78843
  }
78775
78844
  }
78776
78845
 
@@ -82051,7 +82120,7 @@ class TextApiResponse2 {
82051
82120
  var package_default5 = {
82052
82121
  name: "@uipath/solution-sdk",
82053
82122
  license: "MIT",
82054
- version: "1.199.0-preview.97",
82123
+ version: "1.199.0",
82055
82124
  repository: {
82056
82125
  type: "git",
82057
82126
  url: "https://github.com/UiPath/cli.git",
@@ -108716,4 +108785,4 @@ export {
108716
108785
  metadata
108717
108786
  };
108718
108787
 
108719
- //# debugId=7768D74B33069B2264756E2164756E21
108788
+ //# debugId=F0DC850E486C116A64756E2164756E21
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@uipath/solution-tool",
3
3
  "license": "MIT",
4
- "version": "1.199.0-preview.97",
4
+ "version": "1.199.0",
5
5
  "description": "Create, pack, publish, and deploy UiPath Automation Solutions.",
6
6
  "repository": {
7
7
  "type": "git",
@@ -46,5 +46,5 @@
46
46
  "dist"
47
47
  ],
48
48
  "private": false,
49
- "gitHead": "087ae21e842f27bde5eb0013892c9487bfe60568"
49
+ "gitHead": "723e6801b77b5926ba75e75b6a756cc38b1b7adc"
50
50
  }