@esri/hub-common 14.28.0 → 14.29.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/esm/groups/_internal/computeLinks.js +1 -1
- package/dist/esm/groups/_internal/computeLinks.js.map +1 -1
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/poll.js +33 -0
- package/dist/esm/utils/poll.js.map +1 -0
- package/dist/node/groups/_internal/computeLinks.js +1 -1
- package/dist/node/groups/_internal/computeLinks.js.map +1 -1
- package/dist/node/utils/index.js +1 -0
- package/dist/node/utils/index.js.map +1 -1
- package/dist/node/utils/poll.js +36 -0
- package/dist/node/utils/poll.js.map +1 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/poll.d.ts +11 -0
- package/package.json +1 -1
|
@@ -16,7 +16,7 @@ export function computeLinks(group, requestOptions) {
|
|
|
16
16
|
}
|
|
17
17
|
return {
|
|
18
18
|
self: getGroupHomeUrl(group.id, requestOptions),
|
|
19
|
-
siteRelative: `/
|
|
19
|
+
siteRelative: `/groups/${group.id}`,
|
|
20
20
|
workspaceRelative: getRelativeWorkspaceUrl("Group", group.id),
|
|
21
21
|
thumbnail: getGroupThumbnailUrl(requestOptions.portal, group, token),
|
|
22
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeLinks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;QAC/C,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeLinks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;QAC/C,YAAY,EAAE,WAAW,KAAK,CAAC,EAAE,EAAE;QACnC,iBAAiB,EAAE,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7D,SAAS,EAAE,oBAAoB,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC"}
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Function to poll a provided request until a validation
|
|
3
|
+
* state or timeout is reached
|
|
4
|
+
* @param requestFn
|
|
5
|
+
* @param validationFn
|
|
6
|
+
* @param opts
|
|
7
|
+
*/
|
|
8
|
+
export const poll = async (requestFn, validationFn, opts) => {
|
|
9
|
+
const options = opts || /* istanbul ignore next - must pass in overrides for tests */ {};
|
|
10
|
+
const timeout = options.timeout || 30000;
|
|
11
|
+
const timeBetweenRequests = options.timeBetweenRequests ||
|
|
12
|
+
/* istanbul ignore next - cannot delay by this much in tests */ 3000;
|
|
13
|
+
let resp;
|
|
14
|
+
let requestCount = 0;
|
|
15
|
+
do {
|
|
16
|
+
// On subsequent requests, check if the timeout has been reached
|
|
17
|
+
// If YES: throw an error
|
|
18
|
+
// If NO: delay before the next request
|
|
19
|
+
if (requestCount > 0) {
|
|
20
|
+
if (requestCount * timeBetweenRequests >= timeout) {
|
|
21
|
+
throw new Error("Polling timeout");
|
|
22
|
+
}
|
|
23
|
+
await delay(timeBetweenRequests);
|
|
24
|
+
}
|
|
25
|
+
resp = await requestFn();
|
|
26
|
+
requestCount++;
|
|
27
|
+
} while (!validationFn(resp));
|
|
28
|
+
return resp;
|
|
29
|
+
};
|
|
30
|
+
const delay = (milliseconds) => {
|
|
31
|
+
return new Promise((resolve) => setTimeout(resolve, milliseconds));
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=poll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poll.js","sourceRoot":"","sources":["../../../src/utils/poll.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACvB,SAAoB,EACpB,YAAoC,EACpC,IAGC,EACa,EAAE;IAChB,MAAM,OAAO,GACX,IAAI,IAAI,6DAA6D,CAAC,EAAE,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;IACzC,MAAM,mBAAmB,GACvB,OAAO,CAAC,mBAAmB;QAC3B,+DAA+D,CAAC,IAAI,CAAC;IAEvE,IAAI,IAAS,CAAC;IACd,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,GAAG;QACD,gEAAgE;QAChE,yBAAyB;QACzB,uCAAuC;QACvC,IAAI,YAAY,GAAG,CAAC,EAAE;YACpB,IAAI,YAAY,GAAG,mBAAmB,IAAI,OAAO,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;aACpC;YACD,MAAM,KAAK,CAAC,mBAAmB,CAAC,CAAC;SAClC;QAED,IAAI,GAAG,MAAM,SAAS,EAAE,CAAC;QACzB,YAAY,EAAE,CAAC;KAChB,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;IAE9B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,CAAC,YAAoB,EAAE,EAAE;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC"}
|
|
@@ -19,7 +19,7 @@ function computeLinks(group, requestOptions) {
|
|
|
19
19
|
}
|
|
20
20
|
return {
|
|
21
21
|
self: getGroupHomeUrl_1.getGroupHomeUrl(group.id, requestOptions),
|
|
22
|
-
siteRelative: `/
|
|
22
|
+
siteRelative: `/groups/${group.id}`,
|
|
23
23
|
workspaceRelative: getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl("Group", group.id),
|
|
24
24
|
thumbnail: utils_1.getGroupThumbnailUrl(requestOptions.portal, group, token),
|
|
25
25
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeLinks.ts"],"names":[],"mappings":";;;AAIA,gFAA6E;AAC7E,gEAA6D;AAC7D,8CAA0D;AAE1D;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,iCAAe,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;QAC/C,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeLinks.ts"],"names":[],"mappings":";;;AAIA,gFAA6E;AAC7E,gEAA6D;AAC7D,8CAA0D;AAE1D;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,iCAAe,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;QAC/C,YAAY,EAAE,WAAW,KAAK,CAAC,EAAE,EAAE;QACnC,iBAAiB,EAAE,iDAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7D,SAAS,EAAE,4BAAoB,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC;AAhBD,oCAgBC"}
|
package/dist/node/utils/index.js
CHANGED
|
@@ -25,4 +25,5 @@ tslib_1.__exportStar(require("./dasherize"), exports);
|
|
|
25
25
|
tslib_1.__exportStar(require("./titleize"), exports);
|
|
26
26
|
tslib_1.__exportStar(require("./memoize"), exports);
|
|
27
27
|
tslib_1.__exportStar(require("./getEnvironmentFromPortalUrl"), exports);
|
|
28
|
+
tslib_1.__exportStar(require("./poll"), exports);
|
|
28
29
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,kDAAwB;AACxB,qDAA2B;AAC3B,iEAAuC;AACvC,sEAA4C;AAC5C,sDAA4B;AAC5B,mEAAyC;AACzC,4DAAkC;AAClC,kEAAwC;AACxC,qDAA2B;AAC3B,oDAA0B;AAC1B,mDAAyB;AACzB,oDAA0B;AAC1B,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AACnC,mDAAyB;AACzB,4DAAkC;AAClC,6DAAmC;AACnC,gEAAsC;AACtC,sDAA4B;AAC5B,qDAA2B;AAC3B,oDAA0B;AAC1B,wEAA8C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,kDAAwB;AACxB,qDAA2B;AAC3B,iEAAuC;AACvC,sEAA4C;AAC5C,sDAA4B;AAC5B,mEAAyC;AACzC,4DAAkC;AAClC,kEAAwC;AACxC,qDAA2B;AAC3B,oDAA0B;AAC1B,mDAAyB;AACzB,oDAA0B;AAC1B,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AACnC,mDAAyB;AACzB,4DAAkC;AAClC,6DAAmC;AACnC,gEAAsC;AACtC,sDAA4B;AAC5B,qDAA2B;AAC3B,oDAA0B;AAC1B,wEAA8C;AAC9C,iDAAuB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.poll = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Function to poll a provided request until a validation
|
|
6
|
+
* state or timeout is reached
|
|
7
|
+
* @param requestFn
|
|
8
|
+
* @param validationFn
|
|
9
|
+
* @param opts
|
|
10
|
+
*/
|
|
11
|
+
exports.poll = async (requestFn, validationFn, opts) => {
|
|
12
|
+
const options = opts || /* istanbul ignore next - must pass in overrides for tests */ {};
|
|
13
|
+
const timeout = options.timeout || 30000;
|
|
14
|
+
const timeBetweenRequests = options.timeBetweenRequests ||
|
|
15
|
+
/* istanbul ignore next - cannot delay by this much in tests */ 3000;
|
|
16
|
+
let resp;
|
|
17
|
+
let requestCount = 0;
|
|
18
|
+
do {
|
|
19
|
+
// On subsequent requests, check if the timeout has been reached
|
|
20
|
+
// If YES: throw an error
|
|
21
|
+
// If NO: delay before the next request
|
|
22
|
+
if (requestCount > 0) {
|
|
23
|
+
if (requestCount * timeBetweenRequests >= timeout) {
|
|
24
|
+
throw new Error("Polling timeout");
|
|
25
|
+
}
|
|
26
|
+
await delay(timeBetweenRequests);
|
|
27
|
+
}
|
|
28
|
+
resp = await requestFn();
|
|
29
|
+
requestCount++;
|
|
30
|
+
} while (!validationFn(resp));
|
|
31
|
+
return resp;
|
|
32
|
+
};
|
|
33
|
+
const delay = (milliseconds) => {
|
|
34
|
+
return new Promise((resolve) => setTimeout(resolve, milliseconds));
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=poll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poll.js","sourceRoot":"","sources":["../../../src/utils/poll.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACU,QAAA,IAAI,GAAG,KAAK,EACvB,SAAoB,EACpB,YAAoC,EACpC,IAGC,EACa,EAAE;IAChB,MAAM,OAAO,GACX,IAAI,IAAI,6DAA6D,CAAC,EAAE,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;IACzC,MAAM,mBAAmB,GACvB,OAAO,CAAC,mBAAmB;QAC3B,+DAA+D,CAAC,IAAI,CAAC;IAEvE,IAAI,IAAS,CAAC;IACd,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,GAAG;QACD,gEAAgE;QAChE,yBAAyB;QACzB,uCAAuC;QACvC,IAAI,YAAY,GAAG,CAAC,EAAE;YACpB,IAAI,YAAY,GAAG,mBAAmB,IAAI,OAAO,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;aACpC;YACD,MAAM,KAAK,CAAC,mBAAmB,CAAC,CAAC;SAClC;QAED,IAAI,GAAG,MAAM,SAAS,EAAE,CAAC;QACzB,YAAY,EAAE,CAAC;KAChB,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;IAE9B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,CAAC,YAAoB,EAAE,EAAE;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Function to poll a provided request until a validation
|
|
3
|
+
* state or timeout is reached
|
|
4
|
+
* @param requestFn
|
|
5
|
+
* @param validationFn
|
|
6
|
+
* @param opts
|
|
7
|
+
*/
|
|
8
|
+
export declare const poll: (requestFn: () => any, validationFn: (resp: any) => boolean, opts?: {
|
|
9
|
+
timeout?: number;
|
|
10
|
+
timeBetweenRequests?: number;
|
|
11
|
+
}) => Promise<any>;
|