ropegeo-common 1.18.1 → 1.18.3

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.
@@ -1,5 +1,6 @@
1
1
  export declare const TILE_LIST_PAGE_LIMIT = 100;
2
2
  export declare const LIST_HTTP_BATCH_SIZE = 32;
3
+ export declare const IMAGE_FILE_BATCH_SIZE = 5;
3
4
  export declare const TILE_FILE_BATCH_SIZE = 25;
4
5
  export declare const REGION_PAGES_PER_CHUNK = 10;
5
6
  //# sourceMappingURL=downloadConstants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"downloadConstants.d.ts","sourceRoot":"","sources":["../../../src/download/helpers/downloadConstants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,sBAAsB,KAAK,CAAC"}
1
+ {"version":3,"file":"downloadConstants.d.ts","sourceRoot":"","sources":["../../../src/download/helpers/downloadConstants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,sBAAsB,KAAK,CAAC"}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REGION_PAGES_PER_CHUNK = exports.TILE_FILE_BATCH_SIZE = exports.LIST_HTTP_BATCH_SIZE = exports.TILE_LIST_PAGE_LIMIT = void 0;
3
+ exports.REGION_PAGES_PER_CHUNK = exports.TILE_FILE_BATCH_SIZE = exports.IMAGE_FILE_BATCH_SIZE = exports.LIST_HTTP_BATCH_SIZE = exports.TILE_LIST_PAGE_LIMIT = void 0;
4
4
  exports.TILE_LIST_PAGE_LIMIT = 100;
5
5
  exports.LIST_HTTP_BATCH_SIZE = 32;
6
+ exports.IMAGE_FILE_BATCH_SIZE = 5;
6
7
  exports.TILE_FILE_BATCH_SIZE = 25;
7
8
  exports.REGION_PAGES_PER_CHUNK = 10;
@@ -1 +1 @@
1
- {"version":3,"file":"downloadHttpRequest.d.ts","sourceRoot":"","sources":["../../../src/download/helpers/downloadHttpRequest.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6BH;;;GAGG;AACH,wBAAsB,mBAAmB,CACrC,GAAG,EAAE,MAAM,GAAG,GAAG,EACjB,WAAW,CAAC,EAAE,WAAW,EACzB,IAAI,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC,CAmCnB"}
1
+ {"version":3,"file":"downloadHttpRequest.d.ts","sourceRoot":"","sources":["../../../src/download/helpers/downloadHttpRequest.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8CH;;;GAGG;AACH,wBAAsB,mBAAmB,CACrC,GAAG,EAAE,MAAM,GAAG,GAAG,EACjB,WAAW,CAAC,EAAE,WAAW,EACzB,IAAI,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC,CAwCnB"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.downloadHttpRequest = downloadHttpRequest;
8
+ const networkRequestPolicy_1 = require("../../helpers/network/networkRequestPolicy");
8
9
  const DEFAULT_HEADERS = {
9
10
  Accept: 'application/json, text/html, application/xml, */*',
10
11
  'Accept-Language': 'en-US,en;q=0.9',
@@ -24,6 +25,20 @@ const buildNonOkMessage = async (response, requestUrl) => {
24
25
  return (`downloadHttpRequest non-OK: status=${response.status} statusText=${response.statusText} ` +
25
26
  `requestUrl=${requestUrl} finalUrl=${finalUrl} server=${server} responseBody=${bodyPreview}`);
26
27
  };
28
+ function abortSignalAfterMs(ms) {
29
+ const controller = new AbortController();
30
+ const timeoutId = setTimeout(() => {
31
+ if (!controller.signal.aborted) {
32
+ controller.abort();
33
+ }
34
+ }, ms);
35
+ return {
36
+ signal: controller.signal,
37
+ dispose: () => {
38
+ clearTimeout(timeoutId);
39
+ },
40
+ };
41
+ }
27
42
  /**
28
43
  * Send a single HTTP request for download list/page JSON fetches.
29
44
  * Aborts when `abortSignal` fires or after 30 seconds. Throws on non-OK responses.
@@ -36,10 +51,11 @@ async function downloadHttpRequest(url, abortSignal, init) {
36
51
  : new Error(String(abortSignal.reason));
37
52
  throw new Error(`downloadHttpRequest aborted: requestUrl=${requestUrl} error=${err.message}`);
38
53
  }
39
- const timeoutSignal = AbortSignal.timeout(DOWNLOAD_HTTP_REQUEST_TIMEOUT_MS);
40
- const requestSignal = abortSignal != null
41
- ? AbortSignal.any([abortSignal, timeoutSignal])
42
- : timeoutSignal;
54
+ const deadline = abortSignal != null
55
+ ? (0, networkRequestPolicy_1.mergeParentSignalWithDeadline)(abortSignal, DOWNLOAD_HTTP_REQUEST_TIMEOUT_MS)
56
+ : null;
57
+ const timeoutOnly = deadline == null ? abortSignalAfterMs(DOWNLOAD_HTTP_REQUEST_TIMEOUT_MS) : null;
58
+ const requestSignal = deadline?.signal ?? timeoutOnly.signal;
43
59
  let response;
44
60
  try {
45
61
  response = await globalThis.fetch(requestUrl, {
@@ -51,6 +67,10 @@ async function downloadHttpRequest(url, abortSignal, init) {
51
67
  catch (error) {
52
68
  throw new Error(`downloadHttpRequest failed: requestUrl=${requestUrl} error=${error}`);
53
69
  }
70
+ finally {
71
+ deadline?.dispose();
72
+ timeoutOnly?.dispose();
73
+ }
54
74
  if (!response.ok) {
55
75
  throw new Error(await buildNonOkMessage(response, requestUrl));
56
76
  }
@@ -15,7 +15,7 @@ export { DownloadJob } from './downloadJob';
15
15
  export { DownloadPhase } from './downloadPhase';
16
16
  export { DownloadJobQueue } from './downloadJobQueue';
17
17
  export { titleForPhase, buildDeleteStoredPagePhase } from './helpers/downloadPhaseTitles';
18
- export { TILE_LIST_PAGE_LIMIT, LIST_HTTP_BATCH_SIZE, TILE_FILE_BATCH_SIZE, REGION_PAGES_PER_CHUNK, } from './helpers/downloadConstants';
18
+ export { TILE_LIST_PAGE_LIMIT, LIST_HTTP_BATCH_SIZE, IMAGE_FILE_BATCH_SIZE, TILE_FILE_BATCH_SIZE, REGION_PAGES_PER_CHUNK, } from './helpers/downloadConstants';
19
19
  export { DOWNLOAD_CANCELLED_MESSAGE, DownloadCancelledError, InvalidDownloadJobStoredStateError, isDownloadCancelledError, } from './errors';
20
20
  export { reconcilePendingFileTransfer, enqueuePendingFileTransfer, } from './helpers/pendingFileTransfer';
21
21
  export { DownloadTask } from './tasks/abstractDownloadTask';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/download/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,EAC3B,sBAAsB,EACtB,cAAc,EACd,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,GACtB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oCAAoC,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AACvG,OAAO,EAAE,mCAAmC,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,EAAE,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AACvG,OAAO,EAAE,iCAAiC,EAAE,MAAM,kDAAkD,CAAC;AACrG,OAAO,EAAE,mCAAmC,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,EAAE,oCAAoC,EAAE,MAAM,qDAAqD,CAAC;AAC3G,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACH,0BAA0B,EAC1B,sBAAsB,EACtB,kCAAkC,EAClC,wBAAwB,GAC3B,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,4BAA4B,EAC5B,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/download/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,EAC3B,sBAAsB,EACtB,cAAc,EACd,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,GACtB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oCAAoC,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AACvG,OAAO,EAAE,mCAAmC,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,EAAE,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AACvG,OAAO,EAAE,iCAAiC,EAAE,MAAM,kDAAkD,CAAC;AACrG,OAAO,EAAE,mCAAmC,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,EAAE,oCAAoC,EAAE,MAAM,qDAAqD,CAAC;AAC3G,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACH,0BAA0B,EAC1B,sBAAsB,EACtB,kCAAkC,EAClC,wBAAwB,GAC3B,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,4BAA4B,EAC5B,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.planDownloadPhases = exports.SaveOfflinePageTask = exports.FetchRegionRouteListTask = exports.FetchRopeGeoTileFilesTask = exports.FetchMapboxPackTask = exports.FetchImageFilesTask = exports.FetchRopeGeoTileListTask = exports.FetchPageJsonTask = exports.DeleteStoredPageTask = exports.DownloadTask = exports.enqueuePendingFileTransfer = exports.reconcilePendingFileTransfer = exports.isDownloadCancelledError = exports.InvalidDownloadJobStoredStateError = exports.DownloadCancelledError = exports.DOWNLOAD_CANCELLED_MESSAGE = exports.REGION_PAGES_PER_CHUNK = exports.TILE_FILE_BATCH_SIZE = exports.LIST_HTTP_BATCH_SIZE = exports.TILE_LIST_PAGE_LIMIT = exports.buildDeleteStoredPagePhase = exports.titleForPhase = exports.DownloadJobQueue = exports.DownloadPhase = exports.DownloadJob = exports.SaveOfflinePageMiniMapTaskDependency = exports.SaveOfflinePageImagesTaskDependency = exports.SaveOfflinePageViewTaskDependency = exports.FetchRegionRouteListTaskDependency = exports.FetchRopeGeoTileFilesTaskDependency = exports.FetchRopeGeoTileListTaskDependency = exports.FetchMapboxPackTaskDependency = exports.FetchImageFilesTaskDependency = exports.FetchPageJsonTaskDependency = exports.DownloadDependencyKeys = exports.seedConsumerDependencies = exports.hydrateTaskDependencyFromStoredState = void 0;
3
+ exports.planDownloadPhases = exports.SaveOfflinePageTask = exports.FetchRegionRouteListTask = exports.FetchRopeGeoTileFilesTask = exports.FetchMapboxPackTask = exports.FetchImageFilesTask = exports.FetchRopeGeoTileListTask = exports.FetchPageJsonTask = exports.DeleteStoredPageTask = exports.DownloadTask = exports.enqueuePendingFileTransfer = exports.reconcilePendingFileTransfer = exports.isDownloadCancelledError = exports.InvalidDownloadJobStoredStateError = exports.DownloadCancelledError = exports.DOWNLOAD_CANCELLED_MESSAGE = exports.REGION_PAGES_PER_CHUNK = exports.TILE_FILE_BATCH_SIZE = exports.IMAGE_FILE_BATCH_SIZE = exports.LIST_HTTP_BATCH_SIZE = exports.TILE_LIST_PAGE_LIMIT = exports.buildDeleteStoredPagePhase = exports.titleForPhase = exports.DownloadJobQueue = exports.DownloadPhase = exports.DownloadJob = exports.SaveOfflinePageMiniMapTaskDependency = exports.SaveOfflinePageImagesTaskDependency = exports.SaveOfflinePageViewTaskDependency = exports.FetchRegionRouteListTaskDependency = exports.FetchRopeGeoTileFilesTaskDependency = exports.FetchRopeGeoTileListTaskDependency = exports.FetchMapboxPackTaskDependency = exports.FetchImageFilesTaskDependency = exports.FetchPageJsonTaskDependency = exports.DownloadDependencyKeys = exports.seedConsumerDependencies = exports.hydrateTaskDependencyFromStoredState = void 0;
4
4
  var downloadDependencyRegistry_1 = require("./helpers/downloadDependencyRegistry");
5
5
  Object.defineProperty(exports, "hydrateTaskDependencyFromStoredState", { enumerable: true, get: function () { return downloadDependencyRegistry_1.hydrateTaskDependencyFromStoredState; } });
6
6
  var seedConsumerDependencies_1 = require("./helpers/seedConsumerDependencies");
@@ -37,6 +37,7 @@ Object.defineProperty(exports, "buildDeleteStoredPagePhase", { enumerable: true,
37
37
  var downloadConstants_1 = require("./helpers/downloadConstants");
38
38
  Object.defineProperty(exports, "TILE_LIST_PAGE_LIMIT", { enumerable: true, get: function () { return downloadConstants_1.TILE_LIST_PAGE_LIMIT; } });
39
39
  Object.defineProperty(exports, "LIST_HTTP_BATCH_SIZE", { enumerable: true, get: function () { return downloadConstants_1.LIST_HTTP_BATCH_SIZE; } });
40
+ Object.defineProperty(exports, "IMAGE_FILE_BATCH_SIZE", { enumerable: true, get: function () { return downloadConstants_1.IMAGE_FILE_BATCH_SIZE; } });
40
41
  Object.defineProperty(exports, "TILE_FILE_BATCH_SIZE", { enumerable: true, get: function () { return downloadConstants_1.TILE_FILE_BATCH_SIZE; } });
41
42
  Object.defineProperty(exports, "REGION_PAGES_PER_CHUNK", { enumerable: true, get: function () { return downloadConstants_1.REGION_PAGES_PER_CHUNK; } });
42
43
  var errors_1 = require("./errors");
@@ -1 +1 @@
1
- {"version":3,"file":"fetchImageFilesTask.d.ts","sourceRoot":"","sources":["../../../src/download/tasks/fetchImageFilesTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAKjE,OAAO,KAAK,EACR,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EAEvB,cAAc,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAetD,KAAK,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAE3F,qBAAa,mBAAoB,SAAQ,YAAY;IACjD,QAAQ,CAAC,QAAQ,qBAAqB;IACtC,QAAQ,CAAC,cAAc,+BAAqD;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAyB;gBAErC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,sBAAsB,CAAA;KAAE;IAO7G,OAAO,CACT,GAAG,EAAE,kBAAkB,EACvB,eAAe,EAAE,uBAAuB,EACxC,MAAM,EAAE,WAAW,GACpB,OAAO,CAAC,cAAc,CAAC;YAyCZ,YAAY;IAmC1B,aAAa,IAAI,uBAAuB;IAUxC,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,mBAAmB;CAe5D"}
1
+ {"version":3,"file":"fetchImageFilesTask.d.ts","sourceRoot":"","sources":["../../../src/download/tasks/fetchImageFilesTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAKjE,OAAO,KAAK,EACR,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EAEvB,cAAc,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAetD,KAAK,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAE3F,qBAAa,mBAAoB,SAAQ,YAAY;IACjD,QAAQ,CAAC,QAAQ,qBAAqB;IACtC,QAAQ,CAAC,cAAc,+BAAqD;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAyB;gBAErC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,sBAAsB,CAAA;KAAE;IAO7G,OAAO,CACT,GAAG,EAAE,kBAAkB,EACvB,eAAe,EAAE,uBAAuB,EACxC,MAAM,EAAE,WAAW,GACpB,OAAO,CAAC,cAAc,CAAC;YAyCZ,YAAY;IAuC1B,aAAa,IAAI,uBAAuB;IAUxC,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,mBAAmB;CAe5D"}
@@ -36,7 +36,7 @@ class FetchImageFilesTask extends abstractDownloadTask_1.DownloadTask {
36
36
  ctx.setDependency(downloadDependencyKeys_1.DownloadDependencyKeys.SaveOfflinePageImages, new saveOfflinePageImagesTaskDependency_1.SaveOfflinePageImagesTaskDependency({}));
37
37
  return { done: true };
38
38
  }
39
- const end = Math.min(dep.slots.length, this.cursor + downloadConstants_1.TILE_FILE_BATCH_SIZE);
39
+ const end = Math.min(dep.slots.length, this.cursor + downloadConstants_1.IMAGE_FILE_BATCH_SIZE);
40
40
  for (let i = this.cursor; i < end; i += 1) {
41
41
  if (signal.aborted) {
42
42
  break;
@@ -53,11 +53,9 @@ class FetchImageFilesTask extends abstractDownloadTask_1.DownloadTask {
53
53
  return { done: false };
54
54
  }
55
55
  async downloadSlot(ctx, platformHarness, slot) {
56
- const output = {};
57
56
  const downloadVersion = async (version, url) => {
58
57
  if (url == null || url.length === 0) {
59
- output[version] = null;
60
- return;
58
+ return [version, null];
61
59
  }
62
60
  const destPath = platformHarness.paths.imageDest(ctx.pageId, slot.imageId, version, extFromUrl(url));
63
61
  await platformHarness.ensureParentDir(destPath);
@@ -66,11 +64,17 @@ class FetchImageFilesTask extends abstractDownloadTask_1.DownloadTask {
66
64
  destPath,
67
65
  background: true,
68
66
  });
69
- output[version] = destPath;
67
+ return [version, destPath];
70
68
  };
71
- await downloadVersion(imageVersions_1.ImageVersion.preview, slot.versions.preview);
72
- await downloadVersion(imageVersions_1.ImageVersion.banner, slot.versions.banner);
73
- await downloadVersion(imageVersions_1.ImageVersion.full, slot.versions.full);
69
+ const results = await Promise.all([
70
+ downloadVersion(imageVersions_1.ImageVersion.preview, slot.versions.preview),
71
+ downloadVersion(imageVersions_1.ImageVersion.banner, slot.versions.banner),
72
+ downloadVersion(imageVersions_1.ImageVersion.full, slot.versions.full),
73
+ ]);
74
+ const output = {};
75
+ for (const [version, destPath] of results) {
76
+ output[version] = destPath;
77
+ }
74
78
  return output;
75
79
  }
76
80
  toStoredState() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ropegeo-common",
3
- "version": "1.18.1",
3
+ "version": "1.18.3",
4
4
  "description": "Shared domain models and helpers for RopeGeo and WebScraper",
5
5
  "license": "ISC",
6
6
  "repository": {