@sonisoft/now-sdk-ext-core 5.1.0 → 5.3.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.
Files changed (46) hide show
  1. package/dist/auth/NowSDKAuthenticationHandler.js +17 -3
  2. package/dist/auth/NowSDKAuthenticationHandler.js.map +1 -1
  3. package/dist/comm/http/IRequestHandler.d.ts +20 -1
  4. package/dist/comm/http/RequestHandler.d.ts +31 -1
  5. package/dist/comm/http/RequestHandler.js +90 -5
  6. package/dist/comm/http/RequestHandler.js.map +1 -1
  7. package/dist/comm/http/ServiceNowRequest.d.ts +2 -0
  8. package/dist/comm/http/ServiceNowRequest.js +9 -0
  9. package/dist/comm/http/ServiceNowRequest.js.map +1 -1
  10. package/dist/comm/http/SessionManager.d.ts +10 -0
  11. package/dist/comm/http/SessionManager.js +43 -1
  12. package/dist/comm/http/SessionManager.js.map +1 -1
  13. package/dist/exception/StaleInstanceError.d.ts +50 -0
  14. package/dist/exception/StaleInstanceError.js +63 -0
  15. package/dist/exception/StaleInstanceError.js.map +1 -0
  16. package/dist/index.d.ts +3 -0
  17. package/dist/index.js +3 -0
  18. package/dist/index.js.map +1 -1
  19. package/dist/sn/BackgroundScriptExecutor.js +4 -1
  20. package/dist/sn/BackgroundScriptExecutor.js.map +1 -1
  21. package/dist/sn/IServiceNowInstance.d.ts +10 -0
  22. package/dist/sn/OperationProgress.d.ts +63 -0
  23. package/dist/sn/OperationProgress.js +69 -0
  24. package/dist/sn/OperationProgress.js.map +1 -0
  25. package/dist/sn/SNRequestBase.d.ts +13 -0
  26. package/dist/sn/SNRequestBase.js +17 -0
  27. package/dist/sn/SNRequestBase.js.map +1 -1
  28. package/dist/sn/ServiceNowInstance.d.ts +9 -0
  29. package/dist/sn/ServiceNowInstance.js +25 -0
  30. package/dist/sn/ServiceNowInstance.js.map +1 -1
  31. package/dist/sn/application/AppRepoApplication.d.ts +3 -2
  32. package/dist/sn/application/AppRepoApplication.js +9 -5
  33. package/dist/sn/application/AppRepoApplication.js.map +1 -1
  34. package/dist/sn/application/ApplicationManager.d.ts +3 -2
  35. package/dist/sn/application/ApplicationManager.js +9 -5
  36. package/dist/sn/application/ApplicationManager.js.map +1 -1
  37. package/dist/sn/atf/ATFTestExecutor.d.ts +4 -3
  38. package/dist/sn/atf/ATFTestExecutor.js +9 -5
  39. package/dist/sn/atf/ATFTestExecutor.js.map +1 -1
  40. package/dist/util/Logger.d.ts +13 -0
  41. package/dist/util/Logger.js +30 -1
  42. package/dist/util/Logger.js.map +1 -1
  43. package/dist/util/redact.d.ts +47 -0
  44. package/dist/util/redact.js +228 -0
  45. package/dist/util/redact.js.map +1 -0
  46. package/package.json +1 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -124,7 +124,10 @@ export class BackgroundScriptExecutor {
124
124
  const isLoggedIn = response.headers["x-is-logged-in"] === "true" ? true : false;
125
125
  if (response.status == 200 && isLoggedIn && !isNil(response.data)) {
126
126
  csrfToken = CSRFTokenHelper.extractCSRFToken(response.data);
127
- this._logger.debug("CSRF Token Received: " + csrfToken, { csrfToken: csrfToken });
127
+ // The token is deliberately not interpolated into the message. Logger's
128
+ // redaction format can scrub a `csrfToken` field but cannot scrub free text,
129
+ // so a secret concatenated into the message string reaches disk verbatim.
130
+ this._logger.debug("CSRF token received.", { received: !isNil(csrfToken) });
128
131
  }
129
132
  else {
130
133
  this._logger.error("getBackgroundScriptCSRFToken: Invalid response. Status not 200, not logged in, or response data is empty.", { response: response });
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundScriptExecutor.js","sourceRoot":"","sources":["../../src/sn/BackgroundScriptExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BackgroundScriptExecutor.js","sourceRoot":"","sources":["../../src/sn/BackgroundScriptExecutor.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,14 @@ export interface IServiceNowInstance {
5
5
  getAlias(): string;
6
6
  getPassword(): string;
7
7
  get credential(): unknown;
8
+ /**
9
+ * Stable, process-local identity used to bind a session to the instance it was
10
+ * minted for.
11
+ *
12
+ * Optional so that adding it is not a breaking change for anyone implementing
13
+ * this interface outside the repo. An implementation without it has no identity
14
+ * to compare, and every guard treats unknown identity as permissive rather than
15
+ * as a mismatch.
16
+ */
17
+ getInstanceId?(): number;
8
18
  }
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Progress reporting for long-running platform operations.
3
+ *
4
+ * App installs, app-repo publishes and ATF suite runs all poll a tracker for
5
+ * minutes — up to a 30-minute default timeout — and until now reported nothing
6
+ * until they finished. A caller could not distinguish "working" from "hung".
7
+ *
8
+ * This is a structured callback rather than the `(message: string) => void`
9
+ * shape used by the older batch and update-set options. That is a deliberate
10
+ * divergence: the tracker returns `percent_complete`, so these operations know
11
+ * how far along they are, and flattening that into a string would throw away the
12
+ * one thing that lets a consumer render real progress instead of a spinner. The
13
+ * MCP server, for instance, can only send a determinate `progress`/`total`
14
+ * notification if it receives a number.
15
+ */
16
+ export interface OperationProgress {
17
+ /** Human-readable description of the current state, suitable for display. */
18
+ message: string;
19
+ /**
20
+ * Completion percentage, 0-100, where the platform reports one.
21
+ * Absent rather than zero when genuinely unknown — a caller rendering a bar
22
+ * needs to tell "no information" apart from "not started".
23
+ */
24
+ percentComplete?: number;
25
+ /** Raw platform status code, for callers that need to branch on it. */
26
+ status?: string;
27
+ }
28
+ export type OperationProgressCallback = (progress: OperationProgress) => void;
29
+ /**
30
+ * Wraps a callback so it only fires when the reported state actually changes.
31
+ *
32
+ * The poll loops run every 5 seconds by default. Over a 30-minute install that
33
+ * is 360 ticks, almost all of them identical — forwarding each one would bury
34
+ * the handful of updates that mean something, and for the MCP server it would
35
+ * mean 360 notifications for perhaps five state changes.
36
+ *
37
+ * Returns a no-op when no callback is supplied, so the loops can call it
38
+ * unconditionally rather than guarding at every site.
39
+ */
40
+ export declare function createProgressEmitter(onProgress?: OperationProgressCallback): OperationProgressCallback;
41
+ /**
42
+ * Shape of the tracker payloads returned by ProgressWorker and the ATF and
43
+ * app-repo progress endpoints. Structural rather than imported, because the
44
+ * three sources declare their own near-identical response types.
45
+ */
46
+ export interface TrackerLikeProgress {
47
+ percent_complete?: number;
48
+ status?: string;
49
+ status_label?: string;
50
+ status_message?: string;
51
+ }
52
+ /**
53
+ * Builds an OperationProgress from a tracker payload.
54
+ *
55
+ * Exists because the same message-fallback chain was repeated at six call sites
56
+ * across three files, differing only in the fallback string — the kind of
57
+ * duplication where one copy quietly drifts.
58
+ *
59
+ * `fallback` is only used when the platform reports no message at all. It is
60
+ * phrased by the caller because "started" is wrong for a poll that has been
61
+ * running for ten minutes.
62
+ */
63
+ export declare function toOperationProgress(progress: TrackerLikeProgress, fallback: string): OperationProgress;
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Progress reporting for long-running platform operations.
3
+ *
4
+ * App installs, app-repo publishes and ATF suite runs all poll a tracker for
5
+ * minutes — up to a 30-minute default timeout — and until now reported nothing
6
+ * until they finished. A caller could not distinguish "working" from "hung".
7
+ *
8
+ * This is a structured callback rather than the `(message: string) => void`
9
+ * shape used by the older batch and update-set options. That is a deliberate
10
+ * divergence: the tracker returns `percent_complete`, so these operations know
11
+ * how far along they are, and flattening that into a string would throw away the
12
+ * one thing that lets a consumer render real progress instead of a spinner. The
13
+ * MCP server, for instance, can only send a determinate `progress`/`total`
14
+ * notification if it receives a number.
15
+ */
16
+ /**
17
+ * Wraps a callback so it only fires when the reported state actually changes.
18
+ *
19
+ * The poll loops run every 5 seconds by default. Over a 30-minute install that
20
+ * is 360 ticks, almost all of them identical — forwarding each one would bury
21
+ * the handful of updates that mean something, and for the MCP server it would
22
+ * mean 360 notifications for perhaps five state changes.
23
+ *
24
+ * Returns a no-op when no callback is supplied, so the loops can call it
25
+ * unconditionally rather than guarding at every site.
26
+ */
27
+ export function createProgressEmitter(onProgress) {
28
+ if (!onProgress) {
29
+ return () => { };
30
+ }
31
+ let lastKey;
32
+ return (progress) => {
33
+ const key = `${progress.percentComplete ?? ""}|${progress.status ?? ""}|${progress.message}`;
34
+ if (key === lastKey) {
35
+ return;
36
+ }
37
+ lastKey = key;
38
+ // Best-effort. A consumer's reporting sink is not allowed to abort the
39
+ // operation it is reporting on: a throwing callback would otherwise take
40
+ // down a thirty-minute install that had already succeeded. Swallowed
41
+ // rather than logged here, because this module has no logger and adding
42
+ // one would make an error-reporting path able to fail on its own.
43
+ try {
44
+ onProgress(progress);
45
+ }
46
+ catch {
47
+ /* progress reporting must never fail the operation */
48
+ }
49
+ };
50
+ }
51
+ /**
52
+ * Builds an OperationProgress from a tracker payload.
53
+ *
54
+ * Exists because the same message-fallback chain was repeated at six call sites
55
+ * across three files, differing only in the fallback string — the kind of
56
+ * duplication where one copy quietly drifts.
57
+ *
58
+ * `fallback` is only used when the platform reports no message at all. It is
59
+ * phrased by the caller because "started" is wrong for a poll that has been
60
+ * running for ten minutes.
61
+ */
62
+ export function toOperationProgress(progress, fallback) {
63
+ return {
64
+ message: progress.status_message || progress.status_label || fallback,
65
+ percentComplete: progress.percent_complete,
66
+ status: progress.status,
67
+ };
68
+ }
69
+ //# sourceMappingURL=OperationProgress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OperationProgress.js","sourceRoot":"","sources":["../../src/sn/OperationProgress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmBH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CACjC,UAAsC;IAEtC,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,GAAG,EAAE,GAAqD,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,OAA2B,CAAC;IAChC,OAAO,CAAC,QAA2B,EAAE,EAAE;QACnC,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,eAAe,IAAI,EAAE,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC7F,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QACD,OAAO,GAAG,GAAG,CAAC;QAEd,uEAAuE;QACvE,yEAAyE;QACzE,qEAAqE;QACrE,wEAAwE;QACxE,kEAAkE;QAClE,IAAI,CAAC;YACD,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACL,sDAAsD;QAC1D,CAAC;IACL,CAAC,CAAC;AACN,CAAC;AAcD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAC/B,QAA6B,EAC7B,QAAgB;IAEhB,OAAO;QACH,OAAO,EAAE,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ;QACrE,eAAe,EAAE,QAAQ,CAAC,gBAAgB;QAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM;KAC1B,CAAC;AACN,CAAC"}
@@ -9,5 +9,18 @@ export declare abstract class SNRequestBase {
9
9
  get request(): ServiceNowRequest;
10
10
  set request(value: ServiceNowRequest);
11
11
  get snInstance(): ServiceNowInstance;
12
+ /**
13
+ * Swapping the instance rebuilds the bound request.
14
+ *
15
+ * Without this, the setter changed `_snInstance` while `_req` kept serving the
16
+ * previous instance — and because that handler's bound id and its session id
17
+ * both stayed pointed at the old instance, they still MATCHED each other. So
18
+ * RequestHandler's dispatch guard saw nothing wrong and requests silently kept
19
+ * going to the old instance: exactly the class of bug this guard exists to
20
+ * close, reachable through a public setter on exported API.
21
+ *
22
+ * Rebuilding discards the old session deliberately. A session minted for the
23
+ * previous instance must never be reused, so the next call re-authenticates.
24
+ */
12
25
  set snInstance(value: ServiceNowInstance);
13
26
  }
@@ -17,8 +17,25 @@ export class SNRequestBase {
17
17
  get snInstance() {
18
18
  return this._snInstance;
19
19
  }
20
+ /**
21
+ * Swapping the instance rebuilds the bound request.
22
+ *
23
+ * Without this, the setter changed `_snInstance` while `_req` kept serving the
24
+ * previous instance — and because that handler's bound id and its session id
25
+ * both stayed pointed at the old instance, they still MATCHED each other. So
26
+ * RequestHandler's dispatch guard saw nothing wrong and requests silently kept
27
+ * going to the old instance: exactly the class of bug this guard exists to
28
+ * close, reachable through a public setter on exported API.
29
+ *
30
+ * Rebuilding discards the old session deliberately. A session minted for the
31
+ * previous instance must never be reused, so the next call re-authenticates.
32
+ */
20
33
  set snInstance(value) {
34
+ const changed = this._snInstance?.getInstanceId?.() !== value?.getInstanceId?.();
21
35
  this._snInstance = value;
36
+ if (changed) {
37
+ this._req = new ServiceNowRequest(value);
38
+ }
22
39
  }
23
40
  }
24
41
  //# sourceMappingURL=SNRequestBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SNRequestBase.js","sourceRoot":"","sources":["../../src/sn/SNRequestBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAIxC,MAAM,OAAgB,aAAa;IACvB,WAAW,CAAqB;IAGhC,IAAI,CAAoB;IAGhC,OAAO,GAAU,IAAI,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAE/C,YAAmB,QAA2B;QAC1C,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IACD,IAAW,OAAO,CAAG,KAAwB;QACzC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD,IAAW,UAAU,CAAG,KAAyB;QAC7C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC7B,CAAC;CAEJ"}
1
+ {"version":3,"file":"SNRequestBase.js","sourceRoot":"","sources":["../../src/sn/SNRequestBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAIxC,MAAM,OAAgB,aAAa;IACvB,WAAW,CAAqB;IAGhC,IAAI,CAAoB;IAGhC,OAAO,GAAU,IAAI,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAE/C,YAAmB,QAA2B;QAC1C,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IACD,IAAW,OAAO,CAAG,KAAwB;QACzC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,IAAW,UAAU,CAAG,KAAyB;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,EAAE,KAAK,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC;QACjF,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,IAAI,GAAG,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;CAEJ"}
@@ -14,6 +14,7 @@ export declare class ServiceNowInstance implements IServiceNowInstance {
14
14
  private _alias;
15
15
  private _password;
16
16
  private _credential;
17
+ private readonly _instanceId;
17
18
  constructor(snInstanceSettingsObj?: ServiceNowSettingsInstance | null);
18
19
  isDefault(): boolean;
19
20
  getHost(): string;
@@ -21,4 +22,12 @@ export declare class ServiceNowInstance implements IServiceNowInstance {
21
22
  getAlias(): string;
22
23
  getPassword(): string;
23
24
  get credential(): unknown;
25
+ /**
26
+ * Stable identity for this instance object, unique within the process.
27
+ *
28
+ * Used to tie a session to the instance it was minted for, so a request can
29
+ * never be dispatched with another instance's credentials. Not persisted and
30
+ * not meaningful across processes.
31
+ */
32
+ getInstanceId(): number;
24
33
  }
@@ -1,3 +1,17 @@
1
+ /**
2
+ * Monotonic source of instance identity.
3
+ *
4
+ * A ServiceNowInstance is immutable once constructed — every field is private with
5
+ * only a getter — so object identity *is* the generation, and a construction ordinal
6
+ * captures it exactly. Deliberately not a hash of the credential: identity must not
7
+ * require touching credential material.
8
+ *
9
+ * This is what lets a session be tied to the instance it was minted for. A consumer
10
+ * that refreshes a connection (now-sdk-ext-mcp evicts on a 30-minute TTL) constructs
11
+ * a new ServiceNowInstance, which takes a new id, which no longer matches the id
12
+ * recorded against a cached session.
13
+ */
14
+ let nextInstanceId = 1;
1
15
  export class ServiceNowInstance {
2
16
  _isDefault;
3
17
  _host;
@@ -5,6 +19,7 @@ export class ServiceNowInstance {
5
19
  _alias;
6
20
  _password;
7
21
  _credential;
22
+ _instanceId = nextInstanceId++;
8
23
  constructor(snInstanceSettingsObj) {
9
24
  if (typeof snInstanceSettingsObj != 'undefined' && snInstanceSettingsObj != null) {
10
25
  if (snInstanceSettingsObj.host) {
@@ -46,5 +61,15 @@ export class ServiceNowInstance {
46
61
  get credential() {
47
62
  return this._credential;
48
63
  }
64
+ /**
65
+ * Stable identity for this instance object, unique within the process.
66
+ *
67
+ * Used to tie a session to the instance it was minted for, so a request can
68
+ * never be dispatched with another instance's credentials. Not persisted and
69
+ * not meaningful across processes.
70
+ */
71
+ getInstanceId() {
72
+ return this._instanceId;
73
+ }
49
74
  }
50
75
  //# sourceMappingURL=ServiceNowInstance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceNowInstance.js","sourceRoot":"","sources":["../../src/sn/ServiceNowInstance.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,kBAAkB;IACnB,UAAU,CAAS;IACnB,KAAK,CAAQ;IACb,SAAS,CAAQ;IACjB,MAAM,CAAQ;IAEd,SAAS,CAAQ;IAEjB,WAAW,CAAS;IAE5B,YAAY,qBAAwD;QAChE,IAAG,OAAO,qBAAqB,IAAI,WAAW,IAAI,qBAAqB,IAAI,IAAI,EAAC,CAAC;YAC7E,IAAG,qBAAqB,CAAC,IAAI,EAAC,CAAC;gBAC3B,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC;YAC5C,CAAC;YACD,IAAG,qBAAqB,CAAC,KAAK,EAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC;YAC9C,CAAC;YACD,IAAG,qBAAqB,CAAC,QAAQ,EAAC,CAAC;gBAC/B,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;YACpD,CAAC;YACD,IAAG,qBAAqB,CAAC,SAAS,EAAC,CAAC;gBAChC,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,SAAS,CAAC;YACtD,CAAC;YACD,IAAG,qBAAqB,CAAC,QAAQ,EAAC,CAAC;gBAC/B,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;YACpD,CAAC;YAED,IAAG,qBAAqB,CAAC,UAAU,EAAC,CAAC;gBACjC,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,UAAU,CAAC;YACxD,CAAC;QAEL,CAAC;IACL,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,gIAAgI;IAChI,WAAW;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACJ"}
1
+ {"version":3,"file":"ServiceNowInstance.js","sourceRoot":"","sources":["../../src/sn/ServiceNowInstance.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,IAAI,cAAc,GAAG,CAAC,CAAC;AAWvB,MAAM,OAAO,kBAAkB;IACnB,UAAU,CAAS;IACnB,KAAK,CAAQ;IACb,SAAS,CAAQ;IACjB,MAAM,CAAQ;IAEd,SAAS,CAAQ;IAEjB,WAAW,CAAS;IAEX,WAAW,GAAU,cAAc,EAAE,CAAC;IAEvD,YAAY,qBAAwD;QAChE,IAAG,OAAO,qBAAqB,IAAI,WAAW,IAAI,qBAAqB,IAAI,IAAI,EAAC,CAAC;YAC7E,IAAG,qBAAqB,CAAC,IAAI,EAAC,CAAC;gBAC3B,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC;YAC5C,CAAC;YACD,IAAG,qBAAqB,CAAC,KAAK,EAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC;YAC9C,CAAC;YACD,IAAG,qBAAqB,CAAC,QAAQ,EAAC,CAAC;gBAC/B,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;YACpD,CAAC;YACD,IAAG,qBAAqB,CAAC,SAAS,EAAC,CAAC;gBAChC,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,SAAS,CAAC;YACtD,CAAC;YACD,IAAG,qBAAqB,CAAC,QAAQ,EAAC,CAAC;gBAC/B,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;YACpD,CAAC;YAED,IAAG,qBAAqB,CAAC,UAAU,EAAC,CAAC;gBACjC,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,UAAU,CAAC;YACxD,CAAC;QAEL,CAAC;IACL,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,gIAAgI;IAChI,WAAW;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,aAAa;QACT,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACJ"}
@@ -1,5 +1,6 @@
1
1
  import { ServiceNowInstance } from "../ServiceNowInstance.js";
2
2
  import { ProgressResult } from "../ProgressWorker.js";
3
+ import { OperationProgressCallback } from "../OperationProgress.js";
3
4
  /**
4
5
  * AppRepoApplication class for managing application repository operations
5
6
  * Provides methods to install applications from and publish applications to
@@ -28,7 +29,7 @@ export declare class AppRepoApplication {
28
29
  * @param timeoutMs Timeout in milliseconds (default: 30 minutes)
29
30
  * @returns Promise<AppRepoOperationResult> Final operation result
30
31
  */
31
- installFromAppRepoAndWait(request: AppRepoInstallRequest, pollIntervalMs?: number, timeoutMs?: number): Promise<AppRepoOperationResult>;
32
+ installFromAppRepoAndWait(request: AppRepoInstallRequest, pollIntervalMs?: number, timeoutMs?: number, onProgress?: OperationProgressCallback): Promise<AppRepoOperationResult>;
32
33
  /**
33
34
  * Publishes an application to the application repository
34
35
  * @param request AppRepoPublishRequest containing publish parameters
@@ -42,7 +43,7 @@ export declare class AppRepoApplication {
42
43
  * @param timeoutMs Timeout in milliseconds (default: 30 minutes)
43
44
  * @returns Promise<AppRepoOperationResult> Final operation result
44
45
  */
45
- publishToAppRepoAndWait(request: AppRepoPublishRequest, pollIntervalMs?: number, timeoutMs?: number): Promise<AppRepoOperationResult>;
46
+ publishToAppRepoAndWait(request: AppRepoPublishRequest, pollIntervalMs?: number, timeoutMs?: number, onProgress?: OperationProgressCallback): Promise<AppRepoOperationResult>;
46
47
  /**
47
48
  * Gets the current progress of an app repo operation
48
49
  * @param progressId Progress ID from the operation response
@@ -1,6 +1,7 @@
1
1
  import { Logger } from "../../util/Logger.js";
2
2
  import { ServiceNowRequest } from "../../comm/http/ServiceNowRequest.js";
3
3
  import { ProgressWorker } from "../ProgressWorker.js";
4
+ import { createProgressEmitter, toOperationProgress } from "../OperationProgress.js";
4
5
  /**
5
6
  * AppRepoApplication class for managing application repository operations
6
7
  * Provides methods to install applications from and publish applications to
@@ -63,12 +64,12 @@ export class AppRepoApplication {
63
64
  * @param timeoutMs Timeout in milliseconds (default: 30 minutes)
64
65
  * @returns Promise<AppRepoOperationResult> Final operation result
65
66
  */
66
- async installFromAppRepoAndWait(request, pollIntervalMs = this.DEFAULT_POLL_INTERVAL, timeoutMs = this.DEFAULT_TIMEOUT) {
67
+ async installFromAppRepoAndWait(request, pollIntervalMs = this.DEFAULT_POLL_INTERVAL, timeoutMs = this.DEFAULT_TIMEOUT, onProgress) {
67
68
  const installResponse = await this.installFromAppRepo(request);
68
69
  if (!installResponse.links?.progress?.id) {
69
70
  throw new Error('No progress ID returned from install operation');
70
71
  }
71
- return await this.waitForCompletion(installResponse.links.progress.id, pollIntervalMs, timeoutMs);
72
+ return await this.waitForCompletion(installResponse.links.progress.id, pollIntervalMs, timeoutMs, onProgress);
72
73
  }
73
74
  /**
74
75
  * Publishes an application to the application repository
@@ -111,12 +112,12 @@ export class AppRepoApplication {
111
112
  * @param timeoutMs Timeout in milliseconds (default: 30 minutes)
112
113
  * @returns Promise<AppRepoOperationResult> Final operation result
113
114
  */
114
- async publishToAppRepoAndWait(request, pollIntervalMs = this.DEFAULT_POLL_INTERVAL, timeoutMs = this.DEFAULT_TIMEOUT) {
115
+ async publishToAppRepoAndWait(request, pollIntervalMs = this.DEFAULT_POLL_INTERVAL, timeoutMs = this.DEFAULT_TIMEOUT, onProgress) {
115
116
  const publishResponse = await this.publishToAppRepo(request);
116
117
  if (!publishResponse.links?.progress?.id) {
117
118
  throw new Error('No progress ID returned from publish operation');
118
119
  }
119
- return await this.waitForCompletion(publishResponse.links.progress.id, pollIntervalMs, timeoutMs);
120
+ return await this.waitForCompletion(publishResponse.links.progress.id, pollIntervalMs, timeoutMs, onProgress);
120
121
  }
121
122
  /**
122
123
  * Gets the current progress of an app repo operation
@@ -134,14 +135,17 @@ export class AppRepoApplication {
134
135
  * @param timeoutMs Timeout in milliseconds
135
136
  * @returns Promise<AppRepoOperationResult> Final operation result
136
137
  */
137
- async waitForCompletion(progressId, pollIntervalMs, timeoutMs) {
138
+ async waitForCompletion(progressId, pollIntervalMs, timeoutMs, onProgress) {
138
139
  const startTime = Date.now();
140
+ const emit = createProgressEmitter(onProgress);
139
141
  let progress = await this.getProgress(progressId);
140
142
  this._logger.info(`Waiting for operation completion. Progress: ${progress.percent_complete}%`);
143
+ emit(toOperationProgress(progress, 'Operation in progress'));
141
144
  while (progress.percent_complete < 100 && (Date.now() - startTime) < timeoutMs) {
142
145
  await new Promise(resolve => setTimeout(resolve, pollIntervalMs));
143
146
  progress = await this.getProgress(progressId);
144
147
  this._logger.info(`Operation progress: ${progress.percent_complete}% - ${progress.status_label}`);
148
+ emit(toOperationProgress(progress, 'Operation in progress'));
145
149
  }
146
150
  if (progress.percent_complete < 100) {
147
151
  throw new Error(`Operation timed out after ${timeoutMs}ms`);
@@ -1 +1 @@
1
- {"version":3,"file":"AppRepoApplication.js","sourceRoot":"","sources":["../../../src/sn/application/AppRepoApplication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppRepoApplication.js","sourceRoot":"","sources":["../../../src/sn/application/AppRepoApplication.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAkB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAA6B,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE7G;;;;GAIG;AACH,MAAM,OAAO,kBAAkB;IACV,wBAAwB,GAAG,+BAA+B,CAAC;IAC3D,wBAAwB,GAAG,+BAA+B,CAAC;IAC3D,gBAAgB,GAAG,oCAAoC,CAAC;IAExD,eAAe,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa;IAC/C,qBAAqB,GAAG,IAAI,CAAC,CAAC,YAAY;IAEnD,OAAO,GAAW,IAAI,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACnD,IAAI,CAAoB;IACxB,SAAS,CAAqB;IAEtC,YAAmB,QAA4B;QAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,kBAAkB,CAAC,OAA8B;QAC1D,MAAM,WAAW,GAAqC;YAClD,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACzB,CAAC;QAEF,0BAA0B;QAC1B,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1C,CAAC;QACD,IAAI,OAAO,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC9C,WAAW,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;QACtE,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACzC,WAAW,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAC5D,CAAC;QAED,MAAM,WAAW,GAAgB;YAC7B,IAAI,EAAE,IAAI,CAAC,wBAAwB;YACnC,OAAO,EAAE;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,cAAc,EAAE,kBAAkB;aACrC;YACD,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,IAAI;SACb,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yCAAyC,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAEhG,MAAM,IAAI,GAAsD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAqC,WAAW,CAAC,CAAC;QAEtI,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACnE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAClC,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,wDAAwD,IAAI,CAAC,MAAM,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACzI,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,yBAAyB,CAClC,OAA8B,EAC9B,iBAAyB,IAAI,CAAC,qBAAqB,EACnD,YAAoB,IAAI,CAAC,eAAe,EACxC,UAAsC;QAEtC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAE/D,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAC/B,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EACjC,cAAc,EACd,SAAS,EACT,UAAU,CACb,CAAC;IACN,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,gBAAgB,CAAC,OAA8B;QACxD,MAAM,WAAW,GAAqC;YAClD,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACzB,CAAC;QAEF,0BAA0B;QAC1B,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1C,CAAC;QACD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QAC9C,CAAC;QAED,MAAM,WAAW,GAAgB;YAC7B,IAAI,EAAE,IAAI,CAAC,wBAAwB;YACnC,OAAO,EAAE;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,cAAc,EAAE,kBAAkB;aACrC;YACD,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,IAAI;SACb,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAE9F,MAAM,IAAI,GAAsD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAqC,WAAW,CAAC,CAAC;QAEtI,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACnE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAClC,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,sDAAsD,IAAI,CAAC,MAAM,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACvI,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,uBAAuB,CAChC,OAA8B,EAC9B,iBAAyB,IAAI,CAAC,qBAAqB,EACnD,YAAoB,IAAI,CAAC,eAAe,EACxC,UAAsC;QAEtC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE7D,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAC/B,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EACjC,cAAc,EACd,SAAS,EACT,UAAU,CACb,CAAC;IACN,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CAAC,UAAkB;QACvC,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,MAAM,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,iBAAiB,CAC3B,UAAkB,EAClB,cAAsB,EACtB,SAAiB,EACjB,UAAsC;QAEtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,QAAQ,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC/F,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC;QAE7D,OAAO,QAAQ,CAAC,gBAAgB,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,SAAS,EAAE,CAAC;YAC7E,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;YAClE,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,QAAQ,CAAC,gBAAgB,OAAO,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;YAClG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,QAAQ,CAAC,gBAAgB,GAAG,GAAG,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,IAAI,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC,gBAAgB;YAC3C,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,YAAY,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC;QAC/F,CAAC;QAED,OAAO;YACH,OAAO,EAAE,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,oBAAoB;YACtD,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,KAAK,EAAE,QAAQ,CAAC,KAAK;SACxB,CAAC;IACN,CAAC;CACJ"}
@@ -5,6 +5,7 @@ import { ApplicationDetailModel } from "./ApplicationDetailModel.js";
5
5
  import { BatchInstallation } from "./BatchInstallation.js";
6
6
  import { BatchDefinition } from "./BatchDefinition.js";
7
7
  import { StoreAppSearchOptions, StoreAppInstallOptions, StoreAppUpdateOptions, StoreAppOperationResult, StoreAppFinalResult } from "./StoreApplicationModels.js";
8
+ import { OperationProgressCallback } from "../OperationProgress.js";
8
9
  export declare enum APP_TAB_CONTEXT {
9
10
  AVAILABLE_FOR_YOU = "available_for_you",
10
11
  INSTALLED = "installed",
@@ -81,7 +82,7 @@ export declare class ApplicationManager {
81
82
  * @param timeoutMs Timeout in ms (default: 30 min)
82
83
  * @returns StoreAppFinalResult with success status and details
83
84
  */
84
- installStoreApplicationAndWait(options: StoreAppInstallOptions, pollIntervalMs?: number, timeoutMs?: number): Promise<StoreAppFinalResult>;
85
+ installStoreApplicationAndWait(options: StoreAppInstallOptions, pollIntervalMs?: number, timeoutMs?: number, onProgress?: OperationProgressCallback): Promise<StoreAppFinalResult>;
85
86
  /**
86
87
  * Initiate update of a store application.
87
88
  * Uses GET /api/sn_appclient/appmanager/app/update
@@ -96,7 +97,7 @@ export declare class ApplicationManager {
96
97
  * @param timeoutMs Timeout in ms (default: 30 min)
97
98
  * @returns StoreAppFinalResult with success status and details
98
99
  */
99
- updateStoreApplicationAndWait(options: StoreAppUpdateOptions, pollIntervalMs?: number, timeoutMs?: number): Promise<StoreAppFinalResult>;
100
+ updateStoreApplicationAndWait(options: StoreAppUpdateOptions, pollIntervalMs?: number, timeoutMs?: number, onProgress?: OperationProgressCallback): Promise<StoreAppFinalResult>;
100
101
  /**
101
102
  * Poll installation progress via ProgressWorker until complete, timed out, or failed.
102
103
  * Uses GET /api/sn_cicd/progress/{progressId}
@@ -2,6 +2,7 @@ import { Logger } from "../../util/Logger.js";
2
2
  import { ServiceNowRequest } from "../../comm/http/ServiceNowRequest.js";
3
3
  import * as fs from 'fs';
4
4
  import { ProgressWorker } from "../ProgressWorker.js";
5
+ import { createProgressEmitter, toOperationProgress } from "../OperationProgress.js";
5
6
  export var APP_TAB_CONTEXT;
6
7
  (function (APP_TAB_CONTEXT) {
7
8
  APP_TAB_CONTEXT["AVAILABLE_FOR_YOU"] = "available_for_you";
@@ -296,13 +297,13 @@ export class ApplicationManager {
296
297
  * @param timeoutMs Timeout in ms (default: 30 min)
297
298
  * @returns StoreAppFinalResult with success status and details
298
299
  */
299
- async installStoreApplicationAndWait(options, pollIntervalMs, timeoutMs) {
300
+ async installStoreApplicationAndWait(options, pollIntervalMs, timeoutMs, onProgress) {
300
301
  const operationResult = await this.installStoreApplication(options);
301
302
  const trackerId = operationResult.tracker_id || operationResult.trackerId || operationResult.links?.progress?.id;
302
303
  if (!trackerId) {
303
304
  throw new Error('No tracker ID returned from install operation');
304
305
  }
305
- return await this.waitForInstallationCompletion(trackerId, pollIntervalMs || this.DEFAULT_POLL_INTERVAL, timeoutMs || this.DEFAULT_INSTALL_TIMEOUT);
306
+ return await this.waitForInstallationCompletion(trackerId, pollIntervalMs || this.DEFAULT_POLL_INTERVAL, timeoutMs || this.DEFAULT_INSTALL_TIMEOUT, onProgress);
306
307
  }
307
308
  /**
308
309
  * Initiate update of a store application.
@@ -341,13 +342,13 @@ export class ApplicationManager {
341
342
  * @param timeoutMs Timeout in ms (default: 30 min)
342
343
  * @returns StoreAppFinalResult with success status and details
343
344
  */
344
- async updateStoreApplicationAndWait(options, pollIntervalMs, timeoutMs) {
345
+ async updateStoreApplicationAndWait(options, pollIntervalMs, timeoutMs, onProgress) {
345
346
  const operationResult = await this.updateStoreApplication(options);
346
347
  const trackerId = operationResult.tracker_id || operationResult.trackerId || operationResult.links?.progress?.id;
347
348
  if (!trackerId) {
348
349
  throw new Error('No tracker ID returned from update operation');
349
350
  }
350
- return await this.waitForInstallationCompletion(trackerId, pollIntervalMs || this.DEFAULT_POLL_INTERVAL, timeoutMs || this.DEFAULT_INSTALL_TIMEOUT);
351
+ return await this.waitForInstallationCompletion(trackerId, pollIntervalMs || this.DEFAULT_POLL_INTERVAL, timeoutMs || this.DEFAULT_INSTALL_TIMEOUT, onProgress);
351
352
  }
352
353
  /**
353
354
  * Poll installation progress via ProgressWorker until complete, timed out, or failed.
@@ -357,15 +358,18 @@ export class ApplicationManager {
357
358
  * @param timeoutMs Timeout in ms
358
359
  * @returns StoreAppFinalResult with success status
359
360
  */
360
- async waitForInstallationCompletion(progressId, pollIntervalMs, timeoutMs) {
361
+ async waitForInstallationCompletion(progressId, pollIntervalMs, timeoutMs, onProgress) {
361
362
  const progressWorker = new ProgressWorker(this._instance);
363
+ const emit = createProgressEmitter(onProgress);
362
364
  const startTime = Date.now();
363
365
  let progress = await progressWorker.getProgress(progressId);
364
366
  this._logger.info(`Installation progress: ${JSON.stringify(progress)}`);
367
+ emit(toOperationProgress(progress, 'Installation in progress'));
365
368
  while (progress.percent_complete < 100 && (Date.now() - startTime) < timeoutMs) {
366
369
  await new Promise(resolve => setTimeout(resolve, pollIntervalMs));
367
370
  progress = await progressWorker.getProgress(progressId);
368
371
  this._logger.info(`Installation progress: ${progress.percent_complete}%`);
372
+ emit(toOperationProgress(progress, 'Installation in progress'));
369
373
  }
370
374
  if (progress.percent_complete < 100) {
371
375
  return {