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.
- package/dist/bruce-models.es5.js +65 -1
- package/dist/bruce-models.es5.js.map +1 -1
- package/dist/bruce-models.umd.js +65 -1
- package/dist/bruce-models.umd.js.map +1 -1
- package/dist/lib/bruce-models.js +1 -1
- package/dist/lib/server/pending-action.js +64 -0
- package/dist/lib/server/pending-action.js.map +1 -1
- package/dist/types/bruce-models.d.ts +1 -1
- package/dist/types/server/pending-action.d.ts +33 -0
- package/package.json +1 -1
package/dist/lib/bruce-models.js
CHANGED
|
@@ -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.
|
|
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":";;;;;;;;;;;;AAAA,oCAAiC;AAGjC,gDAA6C;AAE7C;;;;GAIG;AACH,IAAiB,aAAa,
|
|
1
|
+
{"version":3,"file":"pending-action.js","sourceRoot":"","sources":["../../../src/server/pending-action.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
}
|