@esri/hub-common 14.194.0 → 14.195.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.
@@ -37,7 +37,6 @@ export async function fetchExportImageDownloadFile(options) {
37
37
  // requestOptions.params.size = `${maxImageWidth},${maxImageHeight}`;
38
38
  // }
39
39
  const blob = await request(`${entity.url}/exportImage`, requestOptions);
40
- progressCallback && progressCallback(DownloadOperationStatus.COMPLETED);
41
40
  return {
42
41
  type: "blob",
43
42
  blob,
@@ -1 +1 @@
1
- {"version":3,"file":"fetchExportImageDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchExportImageDownloadFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetchExportImageDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchExportImageDownloadFile.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  import HubError from "../../../HubError";
2
2
  import { getProp } from "../../../objects/get-prop";
3
+ import { wait } from "../../../utils/wait";
3
4
  import { ArcgisHubDownloadError, DownloadOperationStatus, ServiceDownloadFormat, } from "../../types";
4
5
  /**
5
6
  * @private
6
- * Fetches a download file url from the Hub Download API
7
+ * Fetches a download file url from the Hub Download API. If we know the file will be served from
8
+ * a cache, we also return the status of the cache.
7
9
  *
8
10
  * NOTE: The Hub Download API only works with a certain subset of Feature and Map services
9
11
  * and performs different operations (i.e., calling createReplica or paging the service's
@@ -13,13 +15,19 @@ import { ArcgisHubDownloadError, DownloadOperationStatus, ServiceDownloadFormat,
13
15
  * interface for downloading data from any service supported by the Hub Download API.
14
16
  *
15
17
  * @param options options for refining / filtering the resulting download file
16
- * @returns a url to download the file
18
+ * @returns the url to download the file and cache status
17
19
  */
18
20
  export async function fetchHubApiDownloadFile(options) {
19
21
  validateOptions(options);
20
22
  const requestUrl = getDownloadApiRequestUrl(options);
21
- const { pollInterval, progressCallback } = options;
22
- return pollDownloadApi(requestUrl, pollInterval, progressCallback);
23
+ const { pollInterval, updateCache, progressCallback } = options;
24
+ let cacheQueryParam;
25
+ if (updateCache) {
26
+ // The download api has 2 query params that can be used for controlling cache behavior.
27
+ // This one should only be used as part of an initial request to update the cache
28
+ cacheQueryParam = "updateCache";
29
+ }
30
+ return pollDownloadApi(requestUrl, pollInterval, cacheQueryParam, progressCallback);
23
31
  }
24
32
  function validateOptions(options) {
25
33
  const { layers = [] } = options;
@@ -41,7 +49,7 @@ function validateOptions(options) {
41
49
  * @returns a download api url that can be polled
42
50
  */
43
51
  function getDownloadApiRequestUrl(options) {
44
- const { entity, format, context, layers, geometry, where } = options;
52
+ const { entity, format, context, layers, geometry, where, updateCache } = options;
45
53
  const searchParams = new URLSearchParams({
46
54
  redirect: "false",
47
55
  layers: layers[0].toString(),
@@ -66,11 +74,21 @@ function getDownloadApiRequestUrl(options) {
66
74
  * Polls the Hub Download API until the download is ready, then returns the download file URL
67
75
  *
68
76
  * @param requestUrl Hub Download Api URL to poll
77
+ * @param pollInterval interval in milliseconds to poll for job completion
78
+ * @param cacheQueryParam an optional query param to control cache behavior. 'updateCache' should
79
+ * only be used with the initial request when a download cache update is desired. All subsequent
80
+ * requests should use'trackCacheUpdate' to follow the progress of the cache update.
81
+ * for subsequent requests when polling the progress of a cache update.
69
82
  * @param progressCallback an optional callback to report download generation progress
70
83
  * @returns the final file URL
71
84
  */
72
- async function pollDownloadApi(requestUrl, pollInterval, progressCallback) {
73
- const response = await fetch(requestUrl);
85
+ async function pollDownloadApi(requestUrl, pollInterval, cacheQueryParam, progressCallback) {
86
+ // If requested, append the cache query param to the request URL
87
+ let withCacheQueryParam = requestUrl;
88
+ if (cacheQueryParam) {
89
+ withCacheQueryParam = `${requestUrl}&${cacheQueryParam}=true`;
90
+ }
91
+ const response = await fetch(withCacheQueryParam);
74
92
  if (!response.ok) {
75
93
  const errorBody = await response.json();
76
94
  // TODO: Add standarized messageId when available
@@ -78,22 +96,29 @@ async function pollDownloadApi(requestUrl, pollInterval, progressCallback) {
78
96
  rawMessage: errorBody.message,
79
97
  });
80
98
  }
81
- const { status, progressInPercent, resultUrl } = await response.json();
99
+ const { status, progressInPercent, resultUrl, cacheStatus, } = await response.json();
82
100
  const operationStatus = toDownloadOperationStatus(status);
83
101
  if (operationStatus === DownloadOperationStatus.FAILED) {
84
102
  throw new HubError("fetchHubApiDownloadFileUrl", "Download operation failed with a 200");
85
103
  }
86
- progressCallback && progressCallback(operationStatus, progressInPercent);
87
- // Operation complete, return the download URL
88
104
  if (resultUrl) {
105
+ // Operation complete, return the download URL and cache status
89
106
  return {
90
107
  type: "url",
91
108
  href: resultUrl,
109
+ cacheStatus,
92
110
  };
93
111
  }
94
- // Operation still in progress, poll again
95
- await new Promise((resolve) => setTimeout(resolve, pollInterval));
96
- return pollDownloadApi(requestUrl, pollInterval, progressCallback);
112
+ // Operation still in progress. Report progress if a callback was provided and poll again.
113
+ progressCallback && progressCallback(operationStatus, progressInPercent);
114
+ await wait(pollInterval);
115
+ let updatedCacheQueryParam;
116
+ if (cacheQueryParam) {
117
+ // After an initial request with ?updateCache=true, we need to switch to ?trackCacheUpdate=true.
118
+ // This enables us to follow the progress of the cache update without causing an infinite update loop.
119
+ updatedCacheQueryParam = "trackCacheUpdate";
120
+ }
121
+ return pollDownloadApi(requestUrl, pollInterval, updatedCacheQueryParam, progressCallback);
97
122
  }
98
123
  /**
99
124
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"fetchHubApiDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EAGvB,qBAAqB,GAEtB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAkC;IAElC,eAAe,CAAC,OAAO,CAAC,CAAC;IACzB,MAAM,UAAU,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACnD,OAAO,eAAe,CAAC,UAAU,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,eAAe,CAAC,OAAkC;IACzD,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAEhC,yEAAyE;IACzE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,MAAM,IAAI,QAAQ,CAChB,4BAA4B,EAC5B,iCAAiC,CAClC,CAAC;KACH;IAED,+DAA+D;IAC/D,gEAAgE;IAChE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACrB,MAAM,IAAI,QAAQ,CAChB,4BAA4B,EAC5B,gDAAgD,CACjD,CAAC;KACH;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,wBAAwB,CAAC,OAAkC;IAClE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAErE,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC;QACvC,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC7B,CAAC,CAAC;IAEH,IAAI,QAAQ,EAAE;QACZ,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QACvC,kFAAkF;QAClF,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAClC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;KAC/D;IAED,gGAAgG;IAChG,IACE,CAAC,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC3E;QACA,YAAY,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;KAC7C;IAED,KAAK,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,wCAAwC,CAAC,CAAC;IACzE,KAAK,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAE7C,OAAO,GAAG,OAAO,CAAC,MAAM,0BACtB,MAAM,CAAC,EACT,IAAI,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,eAAe,CAC5B,UAAkB,EAClB,YAAoB,EACpB,gBAA2C;IAE3C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,iDAAiD;QACjD,MAAM,IAAI,sBAAsB,CAAC;YAC/B,UAAU,EAAE,SAAS,CAAC,OAAO;SAC9B,CAAC,CAAC;KACJ;IACD,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAC5C,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACxB,MAAM,eAAe,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,eAAe,KAAK,uBAAuB,CAAC,MAAM,EAAE;QACtD,MAAM,IAAI,QAAQ,CAChB,4BAA4B,EAC5B,sCAAsC,CACvC,CAAC;KACH;IACD,gBAAgB,IAAI,gBAAgB,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IAEzE,8CAA8C;IAC9C,IAAI,SAAS,EAAE;QACb,OAAO;YACL,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,SAAS;SAChB,CAAC;KACH;IAED,0CAA0C;IAC1C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;IAClE,OAAO,eAAe,CAAC,UAAU,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,yBAAyB,CAChC,MAA4B;IAE5B,gFAAgF;IAChF,MAAM,sBAAsB,GAGxB;QACF,wEAAwE;QACxE,OAAO,EAAE,uBAAuB,CAAC,OAAO;QACxC,UAAU,EAAE,uBAAuB,CAAC,UAAU;QAC9C,aAAa,EAAE,uBAAuB,CAAC,UAAU;QACjD,iBAAiB,EAAE,uBAAuB,CAAC,UAAU;QACrD,SAAS,EAAE,uBAAuB,CAAC,SAAS;QAC5C,mBAAmB,EAAE,uBAAuB,CAAC,MAAM;QACnD,MAAM,EAAE,uBAAuB,CAAC,MAAM;QAEtC,mGAAmG;QACnG,mBAAmB,EAAE,uBAAuB,CAAC,UAAU;QACvD,aAAa,EAAE,uBAAuB,CAAC,UAAU;QACjD,aAAa,EAAE,uBAAuB,CAAC,UAAU;QACjD,iBAAiB,EAAE,uBAAuB,CAAC,UAAU;QACrD,iBAAiB,EAAE,uBAAuB,CAAC,UAAU;QACrD,oBAAoB,EAAE,uBAAuB,CAAC,UAAU;KACzD,CAAC;IAEF,2EAA2E;IAC3E,yEAAyE;IACzE,MAAM,kBAAkB,GAAqD;QAC3E,OAAO,EAAE,uBAAuB,CAAC,OAAO;QACxC,UAAU,EAAE,uBAAuB,CAAC,UAAU;QAC9C,UAAU,EAAE,uBAAuB,CAAC,UAAU;QAC9C,cAAc,EAAE,uBAAuB,CAAC,UAAU;QAClD,MAAM,EAAE,uBAAuB,CAAC,MAAM;QACtC,SAAS,EAAE,uBAAuB,CAAC,SAAS;KAC7C,CAAC;IAEF,OAAO,CACL,sBAAsB,CAAC,MAA6B,CAAC;QACrD,kBAAkB,CAAC,MAAyB,CAAC,CAC9C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"fetchHubApiDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/downloads/types.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,IAAI;KACzB;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,KAAK;KAC1B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,CAAC,WAAW,CAAC;QACxB,kBAAkB,EAAE,IAAI;KACzB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,kBAAkB;QACxB,SAAS,EAAE,CAAC,kBAAkB,CAAC;QAC/B,kBAAkB,EAAE,IAAI;KACzB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,CAAC,SAAS,CAAC;QACtB,kBAAkB,EAAE,KAAK;KAC1B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,CAAC,iBAAiB,CAAC;QAC9B,kBAAkB,EAAE,IAAI;KACzB;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,CAAC,oBAAoB,CAAC;QACjC,kBAAkB,EAAE,IAAI;KACzB;CAOF,CAAC;AAKF;;GAEG;AACH,MAAM,CAAN,IAAY,qBA0BX;AA1BD,WAAY,qBAAqB;IAC/B,wBAAwB;IACxB,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,2CAAkB,CAAA;IAClB,oCAAW,CAAA;IACX,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,sCAAa,CAAA;IAEb,gCAAgC;IAChC,oCAAW,CAAA;IACX,wCAAe,CAAA;IACf,iEAAwC,CAAA;IACxC,6CAAoB,CAAA;IACpB,4CAAmB,CAAA;IACnB,mDAA0B,CAAA;IAC1B,sCAAa,CAAA;IACb,oCAAW,CAAA;IACX,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACnB,CAAC,EA1BW,qBAAqB,KAArB,qBAAqB,QA0BhC;AA0ED;;;GAGG;AACH,MAAM,CAAN,IAAY,uBAMX;AAND,WAAY,uBAAuB;IACjC,8CAAmB,CAAA;IACnB,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;IACzB,kDAAuB,CAAA;IACvB,4CAAiB,CAAA;AACnB,CAAC,EANW,uBAAuB,KAAvB,uBAAuB,QAMlC;AAoBD;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAK/C,YAAY,OAAuC;QACjD,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/downloads/types.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,IAAI;KACzB;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,KAAK;KAC1B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,CAAC,WAAW,CAAC;QACxB,kBAAkB,EAAE,IAAI;KACzB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,kBAAkB;QACxB,SAAS,EAAE,CAAC,kBAAkB,CAAC;QAC/B,kBAAkB,EAAE,IAAI;KACzB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,CAAC,SAAS,CAAC;QACtB,kBAAkB,EAAE,KAAK;KAC1B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,CAAC,iBAAiB,CAAC;QAC9B,kBAAkB,EAAE,IAAI;KACzB;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,CAAC,oBAAoB,CAAC;QACjC,kBAAkB,EAAE,IAAI;KACzB;CAOF,CAAC;AAKF;;GAEG;AACH,MAAM,CAAN,IAAY,qBA0BX;AA1BD,WAAY,qBAAqB;IAC/B,wBAAwB;IACxB,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,2CAAkB,CAAA;IAClB,oCAAW,CAAA;IACX,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,sCAAa,CAAA;IAEb,gCAAgC;IAChC,oCAAW,CAAA;IACX,wCAAe,CAAA;IACf,iEAAwC,CAAA;IACxC,6CAAoB,CAAA;IACpB,4CAAmB,CAAA;IACnB,mDAA0B,CAAA;IAC1B,sCAAa,CAAA;IACb,oCAAW,CAAA;IACX,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACnB,CAAC,EA1BW,qBAAqB,KAArB,qBAAqB,QA0BhC;AA4GD;;;GAGG;AACH,MAAM,CAAN,IAAY,uBAMX;AAND,WAAY,uBAAuB;IACjC,8CAAmB,CAAA;IACnB,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;IACzB,kDAAuB,CAAA;IACvB,4CAAiB,CAAA;AACnB,CAAC,EANW,uBAAuB,KAAvB,uBAAuB,QAMlC;AAoBD;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAK/C,YAAY,OAAuC;QACjD,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;CACF"}
@@ -40,7 +40,6 @@ async function fetchExportImageDownloadFile(options) {
40
40
  // requestOptions.params.size = `${maxImageWidth},${maxImageHeight}`;
41
41
  // }
42
42
  const blob = await arcgis_rest_request_1.request(`${entity.url}/exportImage`, requestOptions);
43
- progressCallback && progressCallback(types_1.DownloadOperationStatus.COMPLETED);
44
43
  return {
45
44
  type: "blob",
46
45
  blob,
@@ -1 +1 @@
1
- {"version":3,"file":"fetchExportImageDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchExportImageDownloadFile.ts"],"names":[],"mappings":";;;AAAA,mEAAoD;AACpD,uCAKqB;AACrB,gDAAyC;AACzC,wDAAoD;AAIpD;;;;;;;GAOG;AACI,KAAK,UAAU,4BAA4B,CAChD,OAAkC;IAElC,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IAC9D,gBAAgB,IAAI,gBAAgB,CAAC,+BAAuB,CAAC,OAAO,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC1C,iDAAiD;IACjD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAEzC,MAAM,cAAc,qBAAQ,OAAO,CAAC,cAAc,CAAE,CAAC;IACrD,cAAc,CAAC,UAAU,GAAG,KAAK,CAAC;IAClC,cAAc,CAAC,MAAM,GAAG;QACtB,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;QACvC,MAAM,EAAE,GAAG,IAAI,EAAE;QACjB,CAAC,EAAE,OAAO;QACV,MAAM;QACN,UAAU,EACR,sFAAsF;KACzF,CAAC;IAEF,8FAA8F;IAC9F,gGAAgG;IAChG,qCAAqC;IACrC,EAAE;IACF,4CAA4C;IAC5C,mDAAmD;IACnD,yCAAyC;IACzC,uEAAuE;IACvE,IAAI;IAEJ,MAAM,IAAI,GAAS,MAAM,6BAAO,CAAC,GAAG,MAAM,CAAC,GAAG,cAAc,EAAE,cAAc,CAAC,CAAC;IAC9E,gBAAgB,IAAI,gBAAgB,CAAC,+BAAuB,CAAC,SAAS,CAAC,CAAC;IACxE,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI;QACJ,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,MAA2B,CAAC;KAC/D,CAAC;AACJ,CAAC;AAzCD,oEAyCC;AAED,SAAS,eAAe,CAAC,OAAkC;IACzD,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE7B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC1C,MAAM,IAAI,kBAAQ,CAChB,iCAAiC,EACjC,uEAAuE,CACxE,CAAC;KACH;AACH,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAkC;IAElC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IACrC,MAAM,YAAY,GAAG,kBAAO,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;IAEpE,sEAAsE;IACtE,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,QAAQ,EAAE;QACZ,MAAM,GAAG,QAAyB,CAAC;KACpC;SAAM,IAAI,YAAY,EAAE;QACvB,MAAM,GAAG,YAAY,CAAC;KACvB;IAED,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,kBAAQ,CAChB,iCAAiC,EACjC,6CAA6C,CAC9C,CAAC;KACH;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CACtB,MAA2B,EAC3B,MAAyB;IAEzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,kBAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,6BAAqB,CAAC,GAAG,CAAC;QAC1D,CAAC,CAAC,+EAA+E;YAC/E,6BAAqB,CAAC,GAAG;QAC3B,CAAC,CAAC,MAAM,CAAC;IACX,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"fetchExportImageDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchExportImageDownloadFile.ts"],"names":[],"mappings":";;;AAAA,mEAAoD;AACpD,uCAKqB;AACrB,gDAAyC;AACzC,wDAAoD;AAIpD;;;;;;;GAOG;AACI,KAAK,UAAU,4BAA4B,CAChD,OAAkC;IAElC,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IAC9D,gBAAgB,IAAI,gBAAgB,CAAC,+BAAuB,CAAC,OAAO,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC1C,iDAAiD;IACjD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAEzC,MAAM,cAAc,qBAAQ,OAAO,CAAC,cAAc,CAAE,CAAC;IACrD,cAAc,CAAC,UAAU,GAAG,KAAK,CAAC;IAClC,cAAc,CAAC,MAAM,GAAG;QACtB,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;QACvC,MAAM,EAAE,GAAG,IAAI,EAAE;QACjB,CAAC,EAAE,OAAO;QACV,MAAM;QACN,UAAU,EACR,sFAAsF;KACzF,CAAC;IAEF,8FAA8F;IAC9F,gGAAgG;IAChG,qCAAqC;IACrC,EAAE;IACF,4CAA4C;IAC5C,mDAAmD;IACnD,yCAAyC;IACzC,uEAAuE;IACvE,IAAI;IAEJ,MAAM,IAAI,GAAS,MAAM,6BAAO,CAAC,GAAG,MAAM,CAAC,GAAG,cAAc,EAAE,cAAc,CAAC,CAAC;IAC9E,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI;QACJ,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,MAA2B,CAAC;KAC/D,CAAC;AACJ,CAAC;AAxCD,oEAwCC;AAED,SAAS,eAAe,CAAC,OAAkC;IACzD,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE7B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC1C,MAAM,IAAI,kBAAQ,CAChB,iCAAiC,EACjC,uEAAuE,CACxE,CAAC;KACH;AACH,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAkC;IAElC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IACrC,MAAM,YAAY,GAAG,kBAAO,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;IAEpE,sEAAsE;IACtE,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,QAAQ,EAAE;QACZ,MAAM,GAAG,QAAyB,CAAC;KACpC;SAAM,IAAI,YAAY,EAAE;QACvB,MAAM,GAAG,YAAY,CAAC;KACvB;IAED,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,kBAAQ,CAChB,iCAAiC,EACjC,6CAA6C,CAC9C,CAAC;KACH;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CACtB,MAA2B,EAC3B,MAAyB;IAEzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,kBAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,6BAAqB,CAAC,GAAG,CAAC;QAC1D,CAAC,CAAC,+EAA+E;YAC/E,6BAAqB,CAAC,GAAG;QAC3B,CAAC,CAAC,MAAM,CAAC;IACX,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;AAChC,CAAC"}
@@ -3,10 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.fetchHubApiDownloadFile = void 0;
4
4
  const HubError_1 = require("../../../HubError");
5
5
  const get_prop_1 = require("../../../objects/get-prop");
6
+ const wait_1 = require("../../../utils/wait");
6
7
  const types_1 = require("../../types");
7
8
  /**
8
9
  * @private
9
- * Fetches a download file url from the Hub Download API
10
+ * Fetches a download file url from the Hub Download API. If we know the file will be served from
11
+ * a cache, we also return the status of the cache.
10
12
  *
11
13
  * NOTE: The Hub Download API only works with a certain subset of Feature and Map services
12
14
  * and performs different operations (i.e., calling createReplica or paging the service's
@@ -16,13 +18,19 @@ const types_1 = require("../../types");
16
18
  * interface for downloading data from any service supported by the Hub Download API.
17
19
  *
18
20
  * @param options options for refining / filtering the resulting download file
19
- * @returns a url to download the file
21
+ * @returns the url to download the file and cache status
20
22
  */
21
23
  async function fetchHubApiDownloadFile(options) {
22
24
  validateOptions(options);
23
25
  const requestUrl = getDownloadApiRequestUrl(options);
24
- const { pollInterval, progressCallback } = options;
25
- return pollDownloadApi(requestUrl, pollInterval, progressCallback);
26
+ const { pollInterval, updateCache, progressCallback } = options;
27
+ let cacheQueryParam;
28
+ if (updateCache) {
29
+ // The download api has 2 query params that can be used for controlling cache behavior.
30
+ // This one should only be used as part of an initial request to update the cache
31
+ cacheQueryParam = "updateCache";
32
+ }
33
+ return pollDownloadApi(requestUrl, pollInterval, cacheQueryParam, progressCallback);
26
34
  }
27
35
  exports.fetchHubApiDownloadFile = fetchHubApiDownloadFile;
28
36
  function validateOptions(options) {
@@ -45,7 +53,7 @@ function validateOptions(options) {
45
53
  * @returns a download api url that can be polled
46
54
  */
47
55
  function getDownloadApiRequestUrl(options) {
48
- const { entity, format, context, layers, geometry, where } = options;
56
+ const { entity, format, context, layers, geometry, where, updateCache } = options;
49
57
  const searchParams = new URLSearchParams({
50
58
  redirect: "false",
51
59
  layers: layers[0].toString(),
@@ -70,11 +78,21 @@ function getDownloadApiRequestUrl(options) {
70
78
  * Polls the Hub Download API until the download is ready, then returns the download file URL
71
79
  *
72
80
  * @param requestUrl Hub Download Api URL to poll
81
+ * @param pollInterval interval in milliseconds to poll for job completion
82
+ * @param cacheQueryParam an optional query param to control cache behavior. 'updateCache' should
83
+ * only be used with the initial request when a download cache update is desired. All subsequent
84
+ * requests should use'trackCacheUpdate' to follow the progress of the cache update.
85
+ * for subsequent requests when polling the progress of a cache update.
73
86
  * @param progressCallback an optional callback to report download generation progress
74
87
  * @returns the final file URL
75
88
  */
76
- async function pollDownloadApi(requestUrl, pollInterval, progressCallback) {
77
- const response = await fetch(requestUrl);
89
+ async function pollDownloadApi(requestUrl, pollInterval, cacheQueryParam, progressCallback) {
90
+ // If requested, append the cache query param to the request URL
91
+ let withCacheQueryParam = requestUrl;
92
+ if (cacheQueryParam) {
93
+ withCacheQueryParam = `${requestUrl}&${cacheQueryParam}=true`;
94
+ }
95
+ const response = await fetch(withCacheQueryParam);
78
96
  if (!response.ok) {
79
97
  const errorBody = await response.json();
80
98
  // TODO: Add standarized messageId when available
@@ -82,22 +100,29 @@ async function pollDownloadApi(requestUrl, pollInterval, progressCallback) {
82
100
  rawMessage: errorBody.message,
83
101
  });
84
102
  }
85
- const { status, progressInPercent, resultUrl } = await response.json();
103
+ const { status, progressInPercent, resultUrl, cacheStatus, } = await response.json();
86
104
  const operationStatus = toDownloadOperationStatus(status);
87
105
  if (operationStatus === types_1.DownloadOperationStatus.FAILED) {
88
106
  throw new HubError_1.default("fetchHubApiDownloadFileUrl", "Download operation failed with a 200");
89
107
  }
90
- progressCallback && progressCallback(operationStatus, progressInPercent);
91
- // Operation complete, return the download URL
92
108
  if (resultUrl) {
109
+ // Operation complete, return the download URL and cache status
93
110
  return {
94
111
  type: "url",
95
112
  href: resultUrl,
113
+ cacheStatus,
96
114
  };
97
115
  }
98
- // Operation still in progress, poll again
99
- await new Promise((resolve) => setTimeout(resolve, pollInterval));
100
- return pollDownloadApi(requestUrl, pollInterval, progressCallback);
116
+ // Operation still in progress. Report progress if a callback was provided and poll again.
117
+ progressCallback && progressCallback(operationStatus, progressInPercent);
118
+ await wait_1.wait(pollInterval);
119
+ let updatedCacheQueryParam;
120
+ if (cacheQueryParam) {
121
+ // After an initial request with ?updateCache=true, we need to switch to ?trackCacheUpdate=true.
122
+ // This enables us to follow the progress of the cache update without causing an infinite update loop.
123
+ updatedCacheQueryParam = "trackCacheUpdate";
124
+ }
125
+ return pollDownloadApi(requestUrl, pollInterval, updatedCacheQueryParam, progressCallback);
101
126
  }
102
127
  /**
103
128
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"fetchHubApiDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetchHubApiDownloadFile.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/downloads/types.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACU,QAAA,mBAAmB,GAAG;IACjC,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,IAAI;KACzB;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,KAAK;KAC1B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,CAAC,WAAW,CAAC;QACxB,kBAAkB,EAAE,IAAI;KACzB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,kBAAkB;QACxB,SAAS,EAAE,CAAC,kBAAkB,CAAC;QAC/B,kBAAkB,EAAE,IAAI;KACzB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,CAAC,SAAS,CAAC;QACtB,kBAAkB,EAAE,KAAK;KAC1B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,CAAC,iBAAiB,CAAC;QAC9B,kBAAkB,EAAE,IAAI;KACzB;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,CAAC,oBAAoB,CAAC;QACjC,kBAAkB,EAAE,IAAI;KACzB;CAOF,CAAC;AAKF;;GAEG;AACH,IAAY,qBA0BX;AA1BD,WAAY,qBAAqB;IAC/B,wBAAwB;IACxB,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,2CAAkB,CAAA;IAClB,oCAAW,CAAA;IACX,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,sCAAa,CAAA;IAEb,gCAAgC;IAChC,oCAAW,CAAA;IACX,wCAAe,CAAA;IACf,iEAAwC,CAAA;IACxC,6CAAoB,CAAA;IACpB,4CAAmB,CAAA;IACnB,mDAA0B,CAAA;IAC1B,sCAAa,CAAA;IACb,oCAAW,CAAA;IACX,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACnB,CAAC,EA1BW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QA0BhC;AA0ED;;;GAGG;AACH,IAAY,uBAMX;AAND,WAAY,uBAAuB;IACjC,8CAAmB,CAAA;IACnB,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;IACzB,kDAAuB,CAAA;IACvB,4CAAiB,CAAA;AACnB,CAAC,EANW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAMlC;AAoBD;;GAEG;AACH,MAAa,sBAAuB,SAAQ,KAAK;IAK/C,YAAY,OAAuC;QACjD,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;CACF;AAZD,wDAYC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/downloads/types.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACU,QAAA,mBAAmB,GAAG;IACjC,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,IAAI;KACzB;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,KAAK;KAC1B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,CAAC,WAAW,CAAC;QACxB,kBAAkB,EAAE,IAAI;KACzB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,kBAAkB;QACxB,SAAS,EAAE,CAAC,kBAAkB,CAAC;QAC/B,kBAAkB,EAAE,IAAI;KACzB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,CAAC,SAAS,CAAC;QACtB,kBAAkB,EAAE,KAAK;KAC1B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,CAAC,iBAAiB,CAAC;QAC9B,kBAAkB,EAAE,IAAI;KACzB;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,CAAC,oBAAoB,CAAC;QACjC,kBAAkB,EAAE,IAAI;KACzB;CAOF,CAAC;AAKF;;GAEG;AACH,IAAY,qBA0BX;AA1BD,WAAY,qBAAqB;IAC/B,wBAAwB;IACxB,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,2CAAkB,CAAA;IAClB,oCAAW,CAAA;IACX,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,wCAAe,CAAA;IACf,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,sCAAa,CAAA;IAEb,gCAAgC;IAChC,oCAAW,CAAA;IACX,wCAAe,CAAA;IACf,iEAAwC,CAAA;IACxC,6CAAoB,CAAA;IACpB,4CAAmB,CAAA;IACnB,mDAA0B,CAAA;IAC1B,sCAAa,CAAA;IACb,oCAAW,CAAA;IACX,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACnB,CAAC,EA1BW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QA0BhC;AA4GD;;;GAGG;AACH,IAAY,uBAMX;AAND,WAAY,uBAAuB;IACjC,8CAAmB,CAAA;IACnB,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;IACzB,kDAAuB,CAAA;IACvB,4CAAiB,CAAA;AACnB,CAAC,EANW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAMlC;AAoBD;;GAEG;AACH,MAAa,sBAAuB,SAAQ,KAAK;IAK/C,YAAY,OAAuC;QACjD,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;CACF;AAZD,wDAYC"}
@@ -1,7 +1,8 @@
1
1
  import { IFetchDownloadFileOptions, IFetchDownloadFileResponse } from "../../types";
2
2
  /**
3
3
  * @private
4
- * Fetches a download file url from the Hub Download API
4
+ * Fetches a download file url from the Hub Download API. If we know the file will be served from
5
+ * a cache, we also return the status of the cache.
5
6
  *
6
7
  * NOTE: The Hub Download API only works with a certain subset of Feature and Map services
7
8
  * and performs different operations (i.e., calling createReplica or paging the service's
@@ -11,6 +12,6 @@ import { IFetchDownloadFileOptions, IFetchDownloadFileResponse } from "../../typ
11
12
  * interface for downloading data from any service supported by the Hub Download API.
12
13
  *
13
14
  * @param options options for refining / filtering the resulting download file
14
- * @returns a url to download the file
15
+ * @returns the url to download the file and cache status
15
16
  */
16
17
  export declare function fetchHubApiDownloadFile(options: IFetchDownloadFileOptions): Promise<IFetchDownloadFileResponse>;
@@ -113,16 +113,49 @@ export interface IFetchDownloadFileOptions {
113
113
  where?: string;
114
114
  progressCallback?: downloadProgressCallback;
115
115
  pollInterval?: number;
116
+ updateCache?: boolean;
116
117
  }
118
+ /**
119
+ * Response object for the fetchDownloadFile operation.
120
+ * The response object will contain either a Blob or a URL,
121
+ * depending on the type of download operation that was performed.
122
+ */
117
123
  export declare type IFetchDownloadFileResponse = IFetchDownloadFileBlobResponse | IFetchDownloadFileUrlResponse;
124
+ /**
125
+ * Base interface for all fetchDownloadFile response objects.
126
+ */
118
127
  interface IBaseFetchDownloadFileResponse {
119
128
  type: "blob" | "url";
129
+ /**
130
+ * If the response comes from our cache rather than a live download,
131
+ * indicates the status of the cached file
132
+ */
133
+ cacheStatus?: DownloadCacheStatus;
120
134
  }
135
+ /**
136
+ * Represents the status of a cached download file.
137
+ * - `ready` indicates that the file has up-to-date data
138
+ * - `ready_unknown` indicates that we don't know if the file is up-to-date
139
+ * - `stale` indicates that the file is out-of-date
140
+ */
141
+ export declare type DownloadCacheStatus = "ready" | "ready_unknown" | "stale";
142
+ /**
143
+ * Response object for the fetchDownloadFile operation when the response is a Blob.
144
+ */
121
145
  export interface IFetchDownloadFileBlobResponse extends IBaseFetchDownloadFileResponse {
122
146
  type: "blob";
147
+ /**
148
+ * The Blob object that contains the download file.
149
+ */
123
150
  blob: Blob;
151
+ /**
152
+ * The name to assign to the file when saving it to disk.
153
+ */
124
154
  filename: string;
125
155
  }
156
+ /**
157
+ * Response object for the fetchDownloadFile operation when the response is a URL.
158
+ */
126
159
  export interface IFetchDownloadFileUrlResponse extends IBaseFetchDownloadFileResponse {
127
160
  type: "url";
128
161
  href: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/hub-common",
3
- "version": "14.194.0",
3
+ "version": "14.195.0",
4
4
  "description": "Common TypeScript types and utility functions for @esri/hub.js.",
5
5
  "main": "dist/node/index.js",
6
6
  "module": "dist/esm/index.js",