@uipath/common 0.1.10 → 0.1.13

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 (2) hide show
  1. package/dist/index.js +33 -29
  2. package/package.json +4 -3
package/dist/index.js CHANGED
@@ -5016,7 +5016,7 @@ class NodeAppInsightsTelemetryProvider {
5016
5016
  return false;
5017
5017
  this.appInsightsModule = mod2;
5018
5018
  logger.debug("[AppInsights] NodeAppInsightsTelemetryProvider initialized");
5019
- const client = new mod2.TelemetryClient(this.connectionString, {});
5019
+ const client = new mod2.TelemetryClient(this.connectionString);
5020
5020
  client.context.tags[client.context.keys.sessionId] = this._sessionId;
5021
5021
  this.client = client;
5022
5022
  this.initialized = true;
@@ -5153,17 +5153,7 @@ async function getOrCreateProvider(connectionString) {
5153
5153
  }
5154
5154
 
5155
5155
  // src/telemetry.ts
5156
- var GLOBAL_SESSION_ID_KEY = "__uipcli_telemetry_session_id__";
5157
5156
  var GLOBAL_TELEMETRY_INSTANCE_KEY = "__uipcli_telemetry_instance__";
5158
- function getOrCreateSessionId() {
5159
- const existing = globalThis[GLOBAL_SESSION_ID_KEY];
5160
- if (typeof existing === "string")
5161
- return existing;
5162
- const id = crypto.randomUUID();
5163
- globalThis[GLOBAL_SESSION_ID_KEY] = id;
5164
- return id;
5165
- }
5166
- var sessionId = getOrCreateSessionId();
5167
5157
  var DEFAULT_AI_CONNECTION_STRING = Buffer.from("SW5zdHJ1bWVudGF0aW9uS2V5PTliZDM3NDgyLTgxMGUtNDQyYS1hYWE2LWQzOGVmNjVjNjY3NDtJbmdlc3Rpb25FbmRwb2ludD1odHRwczovL3dlc3RldXJvcGUtNS5pbi5hcHBsaWNhdGlvbmluc2lnaHRzLmF6dXJlLmNvbS87TGl2ZUVuZHBvaW50PWh0dHBzOi8vd2VzdGV1cm9wZS5saXZlZGlhZ25vc3RpY3MubW9uaXRvci5henVyZS5jb20vO0FwcGxpY2F0aW9uSWQ9MzU2OTdlZjEtOGJkMC00ZjE5LWEyN2MtZDg3Y2NhYzY2ZDJj", "base64").toString("utf-8");
5168
5158
  function getConnectionString() {
5169
5159
  return process.env.UIPATH_AI_CONNECTION_STRING || DEFAULT_AI_CONNECTION_STRING;
@@ -5226,8 +5216,10 @@ async function telemetryInit(defaultProperties) {
5226
5216
  const instance = new TelemetryService(provider, new NodeContextStorage);
5227
5217
  setGlobalTelemetryInstance(instance);
5228
5218
  _localTelemetryInstance = instance;
5229
- setGlobalTelemetryProperties({ sessionId, ...defaultProperties });
5230
- telemetry.setDefaultProperties({ sessionId, ...defaultProperties });
5219
+ if (defaultProperties) {
5220
+ setGlobalTelemetryProperties(defaultProperties);
5221
+ telemetry.setDefaultProperties(defaultProperties);
5222
+ }
5231
5223
  const isAppInsights = providerName === "NodeAppInsightsTelemetryProvider";
5232
5224
  if (!isAppInsights) {
5233
5225
  logger.debug(`[Telemetry] initialized with fallback provider (${providerName}). applicationinsights package not available.`);
@@ -5316,7 +5308,7 @@ function printOutput(data, format = "table", logFn) {
5316
5308
  break;
5317
5309
  }
5318
5310
  default: {
5319
- if ("Data" in data && data.Data != null) {
5311
+ if ("Data" in data && data.Data != null && !(Array.isArray(data.Data) && data.Data.length === 0)) {
5320
5312
  const logValue = data.Log;
5321
5313
  if (Array.isArray(data.Data)) {
5322
5314
  printResizableTable(data.Data, logFn, logValue);
@@ -5644,7 +5636,7 @@ function format(first, ...rest) {
5644
5636
  return result;
5645
5637
  }
5646
5638
  function formatArgs(args) {
5647
- return `${format(...args)}
5639
+ return `${format(args[0], ...args.slice(1))}
5648
5640
  `;
5649
5641
  }
5650
5642
  var guardInstalled = false;
@@ -5713,8 +5705,9 @@ async function extractErrorDetails(error, options) {
5713
5705
  let rawBody;
5714
5706
  let extractedMessage;
5715
5707
  let parsedBody;
5716
- if (response?.text) {
5717
- const [bodyError, body] = await catchError((async () => response.text())());
5708
+ const textFn = response?.text?.bind(response);
5709
+ if (textFn) {
5710
+ const [bodyError, body] = await catchError((async () => textFn())());
5718
5711
  if (!bodyError && body) {
5719
5712
  rawBody = body;
5720
5713
  const [parseError, parsed] = catchError(() => JSON.parse(body));
@@ -7422,8 +7415,9 @@ function truncateMessage(msg, maxLen = 500) {
7422
7415
  }
7423
7416
  async function handlePollError(error, errorSource, cfg, state) {
7424
7417
  state.consecutiveErrors++;
7425
- if (cfg.onError) {
7426
- const [callbackErr, decision] = await catchError(Promise.resolve().then(() => cfg.onError(error, state.consecutiveErrors)));
7418
+ const onError = cfg.onError;
7419
+ if (onError) {
7420
+ const [callbackErr, decision] = await catchError(Promise.resolve().then(() => onError(error, state.consecutiveErrors)));
7427
7421
  if (callbackErr) {
7428
7422
  if (cfg.label) {
7429
7423
  logger.warn(`[${cfg.logPrefix}] ${cfg.label} — onError callback threw: ${callbackErr.message}`);
@@ -7698,16 +7692,26 @@ function isFailureStatus(status) {
7698
7692
  function isSuccessStatus(status) {
7699
7693
  return isTerminalStatus(status) && !isFailureStatus(status);
7700
7694
  }
7695
+ // src/screen-logger.ts
7696
+ var ScreenLogger;
7697
+ ((ScreenLogger) => {
7698
+ function progress(message) {
7699
+ getOutputSink().writeErr(`${message}
7700
+ `);
7701
+ }
7702
+ ScreenLogger.progress = progress;
7703
+ })(ScreenLogger ||= {});
7701
7704
  // src/tool-provider.ts
7702
- var toolProvider;
7703
- function setToolProvider(provider) {
7704
- toolProvider = provider;
7705
+ var PROVIDER_KEY = Symbol.for("@uipath/common/packagerFactoryProvider");
7706
+ var _global = globalThis;
7707
+ function setPackagerFactoryProvider(provider) {
7708
+ _global[PROVIDER_KEY] = provider;
7705
7709
  }
7706
- async function ensureToolAvailable(verb) {
7707
- if (!toolProvider) {
7708
- throw new Error(`Tool '${verb}' is required but cannot be auto-installed. ` + `Run 'uip tools install ${verb}' manually.`);
7710
+ async function ensurePackagerFactory(verb) {
7711
+ if (!_global[PROVIDER_KEY]) {
7712
+ throw new Error(`Packager factory for '${verb}' is required but no factory provider is registered. ` + `Run 'uip tools install ${verb}' manually.`);
7709
7713
  }
7710
- await toolProvider(verb);
7714
+ await _global[PROVIDER_KEY](verb);
7711
7715
  }
7712
7716
  // src/trackedAction.ts
7713
7717
  import { Command } from "commander";
@@ -7779,14 +7783,13 @@ export {
7779
7783
  telemetryInit,
7780
7784
  telemetryFlushAndShutdown,
7781
7785
  telemetry,
7782
- setToolProvider,
7783
7786
  setProcessContextPollSignal,
7787
+ setPackagerFactoryProvider,
7784
7788
  setOutputFormat,
7785
7789
  setOutputFilter,
7786
7790
  setGlobalTelemetryProperties,
7787
7791
  setGlobalSink,
7788
7792
  setGlobalLogFilePath,
7789
- sessionId,
7790
7793
  runWithSink,
7791
7794
  restoreConsole,
7792
7795
  registerHelpAll,
@@ -7812,7 +7815,7 @@ export {
7812
7815
  extractErrorDetails,
7813
7816
  extractCommandHelp,
7814
7817
  evaluateJsonPath,
7815
- ensureToolAvailable,
7818
+ ensurePackagerFactory,
7816
7819
  deriveCommandPath,
7817
7820
  createTelemetryProvider,
7818
7821
  createPollAbortController,
@@ -7822,6 +7825,7 @@ export {
7822
7825
  catchError,
7823
7826
  UIPATH_HOME_DIR,
7824
7827
  SuccessOutput,
7828
+ ScreenLogger,
7825
7829
  PollOutcome,
7826
7830
  POLL_DEFAULTS,
7827
7831
  OutputFormatter,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uipath/common",
3
- "version": "0.1.10",
3
+ "version": "0.1.13",
4
4
  "description": "Common infrastructure needed by uipcli tools.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -25,6 +25,7 @@
25
25
  ],
26
26
  "scripts": {
27
27
  "build": "bun build ./src/index.ts --outdir dist --format esm --target node --external commander --external applicationinsights --external @uipath/telemetry",
28
+ "typecheck": "tsc --noEmit",
28
29
  "lint": "biome check .",
29
30
  "test": "vitest run",
30
31
  "test:coverage": "vitest run --coverage"
@@ -35,9 +36,9 @@
35
36
  "jsonpath-plus": "^10.4.0"
36
37
  },
37
38
  "devDependencies": {
38
- "@uipath/telemetry": "workspace:*",
39
+ "@uipath/telemetry": "0.0.6",
39
40
  "@types/js-yaml": "^4.0.9",
40
- "@types/node": "^25.2.3",
41
+ "@types/node": "^25.5.0",
41
42
  "typescript": "^5"
42
43
  },
43
44
  "peerDependencies": {