bruce-models 4.8.0 → 4.8.1

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.
@@ -103,5 +103,5 @@ __exportStar(require("./plugin/plugin"), exports);
103
103
  __exportStar(require("./environment"), exports);
104
104
  __exportStar(require("./data-source/data-source"), exports);
105
105
  // This is updated with the package.json version on build.
106
- exports.VERSION = "4.8.0";
106
+ exports.VERSION = "4.8.1";
107
107
  //# sourceMappingURL=bruce-models.js.map
@@ -128,5 +128,69 @@ var PendingAction;
128
128
  });
129
129
  }
130
130
  PendingAction.Cancel = Cancel;
131
+ /**
132
+ * Resolves when the Pending Action is no longer running.
133
+ * @param params
134
+ *
135
+ * @example
136
+ * try {
137
+ * const { action } = await PendingAction.OnCompletion({ actionId: 123 });
138
+ * }
139
+ * catch (e) {
140
+ * // Threw because the action failed to be found.
141
+ * // Most likely scenarios are invalid actionId or server connection issues.
142
+ * // If it's related to server connection issues then wait a bit and relaunch.
143
+ * }
144
+ *
145
+ * // Here is how you can stop the loop on early disposal.
146
+ * let disposed = false;
147
+ * const { action } = await PendingAction.OnCompletion({
148
+ * actionId: 123,
149
+ * isDisposed: () => {
150
+ * return disposed;
151
+ * }
152
+ * });
153
+ * // Action will resolve as null if it was disposed early.
154
+ */
155
+ function OnCompletion(params) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ let { api, actionId, req: reqParams, interval: intMs, isDisposed } = params;
158
+ if (!actionId) {
159
+ throw ("Action ID is required.");
160
+ }
161
+ if (!api) {
162
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
163
+ }
164
+ if (!intMs || intMs <= 0) {
165
+ intMs = 3000;
166
+ }
167
+ const res = yield new Promise((res, rej) => {
168
+ let interval = setInterval(() => __awaiter(this, void 0, void 0, function* () {
169
+ if (isDisposed && isDisposed()) {
170
+ clearInterval(interval);
171
+ res(null);
172
+ }
173
+ try {
174
+ const { action } = yield Get({
175
+ api,
176
+ actionId,
177
+ req: reqParams
178
+ });
179
+ if (action.Status !== EStatus.InProgress) {
180
+ clearInterval(interval);
181
+ res(action);
182
+ }
183
+ }
184
+ catch (e) {
185
+ rej(e);
186
+ }
187
+ }), intMs);
188
+ });
189
+ return {
190
+ action: res
191
+ };
192
+ });
193
+ }
194
+ PendingAction.OnCompletion = OnCompletion;
131
195
  })(PendingAction = exports.PendingAction || (exports.PendingAction = {}));
132
196
  //# sourceMappingURL=pending-action.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pending-action.js","sourceRoot":"","sources":["../../../src/server/pending-action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pending-action.js","sourceRoot":"","sources":["../../../src/server/pending-action.ts"],"names":[],"mappings":"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"}
@@ -85,4 +85,4 @@ export * from "./internal/uploader";
85
85
  export * from "./plugin/plugin";
86
86
  export * from "./environment";
87
87
  export * from "./data-source/data-source";
88
- export declare const VERSION = "4.8.0";
88
+ export declare const VERSION = "4.8.1";
@@ -100,4 +100,37 @@ export declare namespace PendingAction {
100
100
  actionId: number;
101
101
  req?: Api.IReqParams;
102
102
  }): Promise<void>;
103
+ /**
104
+ * Resolves when the Pending Action is no longer running.
105
+ * @param params
106
+ *
107
+ * @example
108
+ * try {
109
+ * const { action } = await PendingAction.OnCompletion({ actionId: 123 });
110
+ * }
111
+ * catch (e) {
112
+ * // Threw because the action failed to be found.
113
+ * // Most likely scenarios are invalid actionId or server connection issues.
114
+ * // If it's related to server connection issues then wait a bit and relaunch.
115
+ * }
116
+ *
117
+ * // Here is how you can stop the loop on early disposal.
118
+ * let disposed = false;
119
+ * const { action } = await PendingAction.OnCompletion({
120
+ * actionId: 123,
121
+ * isDisposed: () => {
122
+ * return disposed;
123
+ * }
124
+ * });
125
+ * // Action will resolve as null if it was disposed early.
126
+ */
127
+ function OnCompletion(params: {
128
+ api?: BruceApi.Api;
129
+ actionId: number;
130
+ interval?: number;
131
+ isDisposed?: () => boolean;
132
+ req?: Api.IReqParams;
133
+ }): Promise<{
134
+ action: IAction | null;
135
+ }>;
103
136
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-models",
3
- "version": "4.8.0",
3
+ "version": "4.8.1",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-models.umd.js",