@vpmedia/simplify 1.15.0 → 1.17.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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @vpmedia/simplify
2
2
 
3
- [![npm version](https://badge.fury.io/js/@vpmedia%2Fsimplify.svg?v=1.15.0)](https://badge.fury.io/js/@vpmedia%2Fsimplify)
3
+ [![npm version](https://badge.fury.io/js/@vpmedia%2Fsimplify.svg?v=1.17.0)](https://badge.fury.io/js/@vpmedia%2Fsimplify)
4
4
  [![Node.js CI](https://github.com/vpmedia/simplify/actions/workflows/ci.yml/badge.svg)](https://github.com/vpmedia/simplify/actions/workflows/ci.yml)
5
5
 
6
6
  @vpmedia/simplify TBD
package/lefthook.yml CHANGED
@@ -1,7 +1,3 @@
1
- # Copyright (c) Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
- # author: Andras Csizmadia <andras@vpmedia.hu>
3
- # see: https://github.com/evilmartians/lefthook/blob/master/docs/configuration.md
4
-
5
1
  pre-commit:
6
2
  parallel: false
7
3
  commands:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vpmedia/simplify",
3
- "version": "1.15.0",
3
+ "version": "1.17.0",
4
4
  "description": "@vpmedia/simplify",
5
5
  "author": "Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)",
6
6
  "license": "MIT",
@@ -19,32 +19,30 @@
19
19
  "types": "./types/index.d.ts",
20
20
  "type": "module",
21
21
  "devDependencies": {
22
- "@babel/preset-env": "^7.26.0",
23
- "@eslint/js": "^9.15.0",
22
+ "@babel/preset-env": "^7.26.9",
23
+ "@eslint/js": "^9.21.0",
24
24
  "@jest/globals": "^29.7.0",
25
25
  "@types/jest": "^29.5.14",
26
- "eslint": "^9.15.0",
27
- "eslint-plugin-jsdoc": "^50.5.0",
28
- "eslint-plugin-unicorn": "^56.0.1",
29
- "globals": "^15.12.0",
26
+ "eslint": "^9.22.0",
27
+ "eslint-plugin-jsdoc": "^50.6.3",
28
+ "eslint-plugin-unicorn": "^57.0.0",
29
+ "globals": "^16.0.0",
30
30
  "jest": "^29.7.0",
31
31
  "jest-environment-jsdom": "^29.7.0",
32
- "lefthook": "^1.8.4",
33
- "prettier": "^3.3.3",
34
- "typescript": "^5.6.3"
32
+ "prettier": "^3.5.3",
33
+ "typescript": "^5.8.2"
35
34
  },
36
35
  "scripts": {
37
36
  "test": "NODE_OPTIONS=--experimental-vm-modules jest --passWithNoTests",
38
37
  "lint": "eslint \"**/*.{js,jsx}\"",
39
38
  "typecheck": "tsc",
40
- "format": "prettier --write \"./**/*.{js,jsx,mjs,cjs,ts,tsx,json,md,css}\"",
41
- "lefthook:install": "lefthook install",
42
- "lefthook:uninstall": "lefthook uninstall"
39
+ "format": "prettier --write \"./**/*.{js,jsx,mjs,cjs,ts,tsx,json,md,css}\""
43
40
  },
44
41
  "browserslist": [
45
42
  "> 0.5%",
46
43
  "not dead",
47
- "not op_mini all"
44
+ "not op_mini all",
45
+ "iOS >= 14"
48
46
  ],
49
47
  "dependencies": {
50
48
  "eventemitter3": "^5.0.1"
package/src/index.js CHANGED
@@ -9,11 +9,12 @@ export { addLeadingZero } from './util/addLeadingZero.js';
9
9
  export { capitalize } from './util/capitalize.js';
10
10
  export { deg2rad } from './util/deg2rad.js';
11
11
  export { delayPromise } from './util/delayPromise.js';
12
- export { FetchError, HTTP_0_ANY, fetchRetry } from './util/fetchRetry.js';
12
+ export { FetchError, fetchRetry, HTTP_0_ANY } from './util/fetchRetry.js';
13
13
  export { fixFloatPrecision } from './util/fixFloatPrecision.js';
14
14
  export { getObjValueByPath } from './util/getObjValueByPath.js';
15
15
  export { getRandomInt } from './util/getRandomInt.js';
16
16
  export { getURLParam } from './util/getURLParam.js';
17
+ export { loadJSON } from './util/loadJSON.js';
17
18
  export { purgeObject } from './util/purgeObject.js';
18
19
  export { addFloat, fixFloat, subFloat } from './util/safeFloat.js';
19
20
  export { sanitizeURLParam } from './util/sanitizeURLParam.js';
@@ -109,21 +109,24 @@ export const initPageLifecycle = () => {
109
109
  return;
110
110
  }
111
111
  logger.info('initPageLifecycle');
112
- // DEV: capturing events are mandatory to propagate events to root window
113
- const options = { capture: true };
114
112
  onPageLifecycleStateChange(detectPageLifecycleState());
115
- for (const eventType of ['pageshow', 'focus', 'blur', 'visibilitychange', 'resume']) {
116
- window.addEventListener(eventType, () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
117
- }
118
- window.addEventListener('freeze', () => onPageLifecycleStateChange(PAGE_LIFECYCLE_STATE_FROZEN), options);
113
+ onDocumentStateChange(document.readyState);
114
+ const options = { capture: true };
115
+ document.addEventListener('visibilitychange', () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
116
+ // window.addEventListener('popstate', () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
117
+ window.addEventListener('pageshow', () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
118
+ window.addEventListener('focus', () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
119
+ window.addEventListener('blur', () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
120
+ document.addEventListener('resume', () => onPageLifecycleStateChange(detectPageLifecycleState()), options);
121
+ document.addEventListener('freeze', () => onPageLifecycleStateChange(PAGE_LIFECYCLE_STATE_FROZEN), options);
119
122
  window.addEventListener(
120
123
  'pagehide',
121
124
  (event) =>
122
125
  onPageLifecycleStateChange(event.persisted ? PAGE_LIFECYCLE_STATE_FROZEN : PAGE_LIFECYCLE_STATE_TERMINATED),
123
126
  options
124
127
  );
125
- window.addEventListener('DOMContentLoaded', () => onDocumentStateChange(DOCUMENT_STATE_DOM_LOADED), options);
126
- window.addEventListener('readystatechange', () => onDocumentStateChange(document.readyState), options);
128
+ document.addEventListener('DOMContentLoaded', () => onDocumentStateChange(DOCUMENT_STATE_DOM_LOADED), options);
129
+ document.addEventListener('readystatechange', () => onDocumentStateChange(document.readyState), options);
127
130
  window.addEventListener('load', () => onDocumentStateChange(DOCUMENT_STATE_FULLY_LOADED), options);
128
131
  isInitialized = true;
129
132
  };
@@ -1,4 +1,4 @@
1
- import { HTTP_401_UNAUTHORIZED, HTTP_403_FORBIDDEN, HTTP_405_METHOD_NOT_ALLOWED } from '../const/http_status.js';
1
+ import { HTTP_401_UNAUTHORIZED, HTTP_403_FORBIDDEN, HTTP_405_METHOD_NOT_ALLOWED, HTTP_422_UNPROCESSABLE_ENTITY } from '../const/http_status.js';
2
2
  import { Logger } from '../logging/Logger.js';
3
3
  import { delayPromise } from './delayPromise.js';
4
4
 
@@ -38,6 +38,7 @@ export const fetchRetry = async (resource, fetchOptions, retryOptions) => {
38
38
  HTTP_401_UNAUTHORIZED,
39
39
  HTTP_403_FORBIDDEN,
40
40
  HTTP_405_METHOD_NOT_ALLOWED,
41
+ HTTP_422_UNPROCESSABLE_ENTITY,
41
42
  ];
42
43
  while (retryOptions.numTries > 0) {
43
44
  logger.info('request', { resource, fetchOptions, retryOptions });
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Load JSON file using a fetch GET request.
3
+ * @param {string} url - URL to load.
4
+ * @returns {Promise<string>} The parsed JSON data.
5
+ */
6
+ export async function loadJSON(url) {
7
+ const response = await fetch(url);
8
+ const json = await response.json();
9
+ return JSON.stringify(json);
10
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"http_status.d.ts","sourceRoot":"","sources":["../../src/const/http_status.js"],"names":[],"mappings":"AAAA,oCAAqC;AACrC,+CAAgD;AAChD,sCAAuC;AACvC,uCAAwC;AACxC,8BAA+B;AAC/B,mCAAoC;AACpC,oCAAqC;AACrC,yDAA0D;AAC1D,sCAAuC;AACvC,yCAA0C;AAC1C,2CAA4C;AAC5C,wCAAyC;AACzC,4CAA6C;AAC7C,mCAAoC;AACpC,4CAA6C;AAC7C,6CAA8C;AAC9C,iCAAkC;AAClC,qCAAsC;AACtC,wCAAyC;AACzC,qCAAsC;AACtC,oCAAqC;AACrC,8CAA+C;AAC/C,8CAA+C;AAC/C,uCAAwC;AACxC,wCAAyC;AACzC,4CAA6C;AAC7C,qCAAsC;AACtC,qCAAsC;AACtC,8CAA+C;AAC/C,0CAA2C;AAC3C,yDAA0D;AAC1D,2CAA4C;AAC5C,oCAAqC;AACrC,gCAAiC;AACjC,2CAA4C;AAC5C,+CAAgD;AAChD,oDAAqD;AACrD,gDAAiD;AACjD,kDAAmD;AACnD,2DAA4D;AAC5D,8CAA+C;AAC/C,uCAAwC;AACxC,+CAAgD;AAChD,gDAAiD;AACjD,kCAAmC;AACnC,6CAA8C;AAC9C,qCAAsC;AACtC,4CAA6C;AAC7C,iDAAkD;AAClD,6CAA8C;AAC9C,oDAAqD;AACrD,2DAA4D;AAC5D,yDAA0D;AAC1D,iDAAkD;AAClD,2CAA4C;AAC5C,uCAAwC;AACxC,+CAAgD;AAChD,2CAA4C;AAC5C,sDAAuD;AACvD,mDAAoD;AACpD,gDAAiD;AACjD,yCAA0C;AAC1C,wCAAyC;AACzC,2DAA4D"}
1
+ {"version":3,"file":"http_status.d.ts","sourceRoot":"","sources":["../../src/const/http_status.js"],"names":[],"mappings":"AAAA,gCAAiC,GAAG,CAAC;AACrC,2CAA4C,GAAG,CAAC;AAChD,kCAAmC,GAAG,CAAC;AACvC,mCAAoC,GAAG,CAAC;AACxC,0BAA2B,GAAG,CAAC;AAC/B,+BAAgC,GAAG,CAAC;AACpC,gCAAiC,GAAG,CAAC;AACrC,qDAAsD,GAAG,CAAC;AAC1D,kCAAmC,GAAG,CAAC;AACvC,qCAAsC,GAAG,CAAC;AAC1C,uCAAwC,GAAG,CAAC;AAC5C,oCAAqC,GAAG,CAAC;AACzC,wCAAyC,GAAG,CAAC;AAC7C,+BAAgC,GAAG,CAAC;AACpC,wCAAyC,GAAG,CAAC;AAC7C,yCAA0C,GAAG,CAAC;AAC9C,6BAA8B,GAAG,CAAC;AAClC,iCAAkC,GAAG,CAAC;AACtC,oCAAqC,GAAG,CAAC;AACzC,iCAAkC,GAAG,CAAC;AACtC,gCAAiC,GAAG,CAAC;AACrC,0CAA2C,GAAG,CAAC;AAC/C,0CAA2C,GAAG,CAAC;AAC/C,mCAAoC,GAAG,CAAC;AACxC,oCAAqC,GAAG,CAAC;AACzC,wCAAyC,GAAG,CAAC;AAC7C,iCAAkC,GAAG,CAAC;AACtC,iCAAkC,GAAG,CAAC;AACtC,0CAA2C,GAAG,CAAC;AAC/C,sCAAuC,GAAG,CAAC;AAC3C,qDAAsD,GAAG,CAAC;AAC1D,uCAAwC,GAAG,CAAC;AAC5C,gCAAiC,GAAG,CAAC;AACrC,4BAA6B,GAAG,CAAC;AACjC,uCAAwC,GAAG,CAAC;AAC5C,2CAA4C,GAAG,CAAC;AAChD,gDAAiD,GAAG,CAAC;AACrD,4CAA6C,GAAG,CAAC;AACjD,8CAA+C,GAAG,CAAC;AACnD,uDAAwD,GAAG,CAAC;AAC5D,0CAA2C,GAAG,CAAC;AAC/C,mCAAoC,GAAG,CAAC;AACxC,2CAA4C,GAAG,CAAC;AAChD,4CAA6C,GAAG,CAAC;AACjD,8BAA+B,GAAG,CAAC;AACnC,yCAA0C,GAAG,CAAC;AAC9C,iCAAkC,GAAG,CAAC;AACtC,wCAAyC,GAAG,CAAC;AAC7C,6CAA8C,GAAG,CAAC;AAClD,yCAA0C,GAAG,CAAC;AAC9C,gDAAiD,GAAG,CAAC;AACrD,uDAAwD,GAAG,CAAC;AAC5D,qDAAsD,GAAG,CAAC;AAC1D,6CAA8C,GAAG,CAAC;AAClD,uCAAwC,GAAG,CAAC;AAC5C,mCAAoC,GAAG,CAAC;AACxC,2CAA4C,GAAG,CAAC;AAChD,uCAAwC,GAAG,CAAC;AAC5C,kDAAmD,GAAG,CAAC;AACvD,+CAAgD,GAAG,CAAC;AACpD,4CAA6C,GAAG,CAAC;AACjD,qCAAsC,GAAG,CAAC;AAC1C,oCAAqC,GAAG,CAAC;AACzC,uDAAwD,GAAG,CAAC"}
package/types/index.d.ts CHANGED
@@ -12,11 +12,12 @@ export { fixFloatPrecision } from "./util/fixFloatPrecision.js";
12
12
  export { getObjValueByPath } from "./util/getObjValueByPath.js";
13
13
  export { getRandomInt } from "./util/getRandomInt.js";
14
14
  export { getURLParam } from "./util/getURLParam.js";
15
+ export { loadJSON } from "./util/loadJSON.js";
15
16
  export { purgeObject } from "./util/purgeObject.js";
16
17
  export { sanitizeURLParam } from "./util/sanitizeURLParam.js";
17
18
  export { saveAsFile } from "./util/saveAsFile.js";
18
19
  export { setObjValueByPath } from "./util/setObjValueByPath.js";
19
20
  export { underscoreToCamelCase } from "./util/underscoreToCamelCase.js";
20
- export { FetchError, HTTP_0_ANY, fetchRetry } from "./util/fetchRetry.js";
21
+ export { FetchError, fetchRetry, HTTP_0_ANY } from "./util/fetchRetry.js";
21
22
  export { addFloat, fixFloat, subFloat } from "./util/safeFloat.js";
22
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../src/logging/Logger.js"],"names":[],"mappings":"AAGA,4BAA6B;AAC7B,2BAA4B;AAC5B,2BAA4B;AAC5B,4BAA6B;AAC7B,6BAA8B;AAE9B;IACE;;OAEG;IACH,yBAFU,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAED;IAC/B;;OAEG;IACH,6BAFU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAElD;IAEnC;;;OAGG;IACH,kBAFW,MAAM,EAShB;IANC,aAAgB;IAKhB,cAAkG;IAGpG;;;;OAIG;IACH,eAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,cAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,cAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,eAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,mBAHW,MAAM,aACN,KAAK,QAWf;CACF"}
1
+ {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../src/logging/Logger.js"],"names":[],"mappings":"AAGA,0BAA2B,CAAC,CAAC;AAC7B,yBAA0B,CAAC,CAAC;AAC5B,yBAA0B,CAAC,CAAC;AAC5B,0BAA2B,CAAC,CAAC;AAC7B,2BAA4B,CAAC,CAAC;AAE9B;IACE;;OAEG;IACH,yBAFU,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAED;IAC/B;;OAEG;IACH,6BAFU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAElD;IAEnC;;;OAGG;IACH,kBAFW,MAAM,EAShB;IANC,aAAgB;IAKhB,cAAkG;IAGpG;;;;OAIG;IACH,eAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,cAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,cAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,eAHW,MAAM,cACN,MAAM,QAehB;IAED;;;;OAIG;IACH,mBAHW,MAAM,aACN,KAAK,QAWf;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/const.js"],"names":[],"mappings":"AAAA,mDAAoD;AACpD,mDAAoD;AACpD,qDAAsD;AACtD,mDAAoD;AACpD,2DAA4D;AAE5D,oDAAqD;AACrD,wDAAyD;AACzD,iDAAkD;AAClD,uDAAwD;AACxD,+CAAgD"}
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/const.js"],"names":[],"mappings":"AAAA,0CAA2C,QAAQ,CAAC;AACpD,0CAA2C,QAAQ,CAAC;AACpD,2CAA4C,SAAS,CAAC;AACtD,0CAA2C,QAAQ,CAAC;AACpD,8CAA+C,YAAY,CAAC;AAE5D,wCAAyC,WAAW,CAAC;AACrD,0CAA2C,aAAa,CAAC;AACzD,sCAAuC,UAAU,CAAC;AAClD,yCAA0C,aAAa,CAAC;AACxD,qCAAsC,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/event.js"],"names":[],"mappings":"AAAA,2EAA4E;AAC5E,gEAAiE"}
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/event.js"],"names":[],"mappings":"AAAA,gDAAiD,0BAA0B,CAAC;AAC5E,0CAA2C,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"typedef.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/typedef.js"],"names":[],"mappings":"AAAA,2BAA4B;iCAGf,QAAgD,GAAG,QAAgD,GAAG,SAAiD,GAAG,QAAgD,GAAG,YAAoD;4BAIjQ,SAA2C,GAAG,aAA+C,GAAG,UAA4C,GAAG,WAA8C,GAAG,aAAgD"}
1
+ {"version":3,"file":"typedef.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/typedef.js"],"names":[],"mappings":"AAAA,sBAAuB,IAAI,CAAC;iCAGf,QAAgD,GAAG,QAAgD,GAAG,SAAiD,GAAG,QAAgD,GAAG,YAAoD;4BAIjQ,SAA2C,GAAG,aAA+C,GAAG,UAA4C,GAAG,WAA8C,GAAG,aAAgD"}
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/util.js"],"names":[],"mappings":"AAsCO,gDAHI,OAAO,cAAc,EAAE,aAAa,GAAG,OAAO,cAAc,EAAE,kBAAkB,YAChF,MAAM,IAAI,QAMpB;AAgEM,0CAsBN;AAMM,yCAFM,MAAM,CAIlB;AAMM,oCAFM,OAAO,cAAc,EAAE,aAAa,CAIhD;AAMM,gDAFM,YAAY,CAOxB;AAMM,8CAFM,OAAO,CAInB;6BA9J4B,eAAe"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/pagelifecycle/util.js"],"names":[],"mappings":"AAsCO,gDAHI,OAAO,cAAc,EAAE,aAAa,GAAG,OAAO,cAAc,EAAE,kBAAkB,YAChF,MAAM,IAAI,QAMpB;AAgEM,0CAyBN;AAMM,yCAFM,MAAM,CAIlB;AAMM,oCAFM,OAAO,cAAc,EAAE,aAAa,CAIhD;AAMM,gDAFM,YAAY,CAOxB;AAMM,8CAFM,OAAO,CAInB;6BAjK4B,eAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchRetry.d.ts","sourceRoot":"","sources":["../../src/util/fetchRetry.js"],"names":[],"mappings":"AAMA,2BAA4B;AAE5B;IACE;;;;;;OAMG;IACH,qBALW,MAAM,YACN,MAAM,GAAG,GAAG,GAAG,OAAO,gBACtB,WAAW,YACX,QAAQ,EAQlB;IAHC,iCAAwB;IACxB,0BAAgC;IAChC,mBAAwB;CAE3B;AASM,qCALI,MAAM,GAAG,GAAG,GAAG,OAAO,iBACtB,WAAW,iBACX;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,GAC5D,OAAO,CAAC,QAAQ,CAAC,CA0C7B"}
1
+ {"version":3,"file":"fetchRetry.d.ts","sourceRoot":"","sources":["../../src/util/fetchRetry.js"],"names":[],"mappings":"AAMA,yBAA0B,CAAC,CAAC;AAE5B;IACE;;;;;;OAMG;IACH,qBALW,MAAM,YACN,MAAM,GAAG,GAAG,GAAG,OAAO,gBACtB,WAAW,YACX,QAAQ,EAQlB;IAHC,iCAAwB;IACxB,0BAAgC;IAChC,mBAAwB;CAE3B;AASM,qCALI,MAAM,GAAG,GAAG,GAAG,OAAO,iBACtB,WAAW,iBACX;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,GAC5D,OAAO,CAAC,QAAQ,CAAC,CA2C7B"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Load JSON file using a fetch GET request.
3
+ * @param {string} url - URL to load.
4
+ * @returns {Promise<string>} The parsed JSON data.
5
+ */
6
+ export function loadJSON(url: string): Promise<string>;
7
+ //# sourceMappingURL=loadJSON.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadJSON.d.ts","sourceRoot":"","sources":["../../src/util/loadJSON.js"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,8BAHW,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC,CAM3B"}