@polkadot-api/substrate-client 1.0.0-canary.ef78431 → 1.0.0-canary.f69e140

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,21 +1,30 @@
1
- class BlockHashNotFoundError extends Error {
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value);
4
+ const _BlockHashNotFoundError = class _BlockHashNotFoundError extends Error {
2
5
  constructor(hash) {
3
6
  super(`Invalid BlockHash: ${hash}`);
4
- this.name = "BlockHashNotFoundError";
7
+ this.name = _BlockHashNotFoundError.errorName;
5
8
  }
6
- }
7
- class StorageError extends Error {
9
+ };
10
+ __publicField(_BlockHashNotFoundError, "errorName", "BlockHashNotFoundError");
11
+ let BlockHashNotFoundError = _BlockHashNotFoundError;
12
+ const _StorageError = class _StorageError extends Error {
8
13
  constructor(message) {
9
14
  super(`Storage Error: ${message}`);
10
- this.name = "StorageError";
15
+ this.name = _StorageError.errorName;
11
16
  }
12
- }
13
- class CallError extends Error {
17
+ };
18
+ __publicField(_StorageError, "errorName", "StorageError");
19
+ let StorageError = _StorageError;
20
+ const _CallError = class _CallError extends Error {
14
21
  constructor(message) {
15
22
  super(`Call Error: ${message}`);
16
- this.name = "CallError";
23
+ this.name = _CallError.errorName;
17
24
  }
18
- }
25
+ };
26
+ __publicField(_CallError, "errorName", "CallError");
27
+ let CallError = _CallError;
19
28
 
20
29
  export { BlockHashNotFoundError, CallError, StorageError };
21
30
  //# sourceMappingURL=errors.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.mjs","sources":["../../../src/archive/errors.ts"],"sourcesContent":["export class BlockHashNotFoundError extends Error {\n constructor(hash: string) {\n super(`Invalid BlockHash: ${hash}`)\n this.name = \"BlockHashNotFoundError\"\n }\n}\n\nexport class StorageError extends Error {\n constructor(message: string) {\n super(`Storage Error: ${message}`)\n this.name = \"StorageError\"\n }\n}\n\nexport class CallError extends Error {\n constructor(message: string) {\n super(`Call Error: ${message}`)\n this.name = \"CallError\"\n }\n}\n"],"names":[],"mappings":"AAAO,MAAM,+BAA+B,KAAA,CAAM;AAAA,EAChD,YAAY,IAAA,EAAc;AACxB,IAAA,KAAA,CAAM,CAAA,mBAAA,EAAsB,IAAI,CAAA,CAAE,CAAA;AAClC,IAAA,IAAA,CAAK,IAAA,GAAO,wBAAA;AAAA,EACd;AACF;AAEO,MAAM,qBAAqB,KAAA,CAAM;AAAA,EACtC,YAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,CAAA,eAAA,EAAkB,OAAO,CAAA,CAAE,CAAA;AACjC,IAAA,IAAA,CAAK,IAAA,GAAO,cAAA;AAAA,EACd;AACF;AAEO,MAAM,kBAAkB,KAAA,CAAM;AAAA,EACnC,YAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,CAAA,YAAA,EAAe,OAAO,CAAA,CAAE,CAAA;AAC9B,IAAA,IAAA,CAAK,IAAA,GAAO,WAAA;AAAA,EACd;AACF;;;;"}
1
+ {"version":3,"file":"errors.mjs","sources":["../../../src/archive/errors.ts"],"sourcesContent":["export class BlockHashNotFoundError extends Error {\n static errorName = \"BlockHashNotFoundError\"\n\n constructor(hash: string) {\n super(`Invalid BlockHash: ${hash}`)\n this.name = BlockHashNotFoundError.errorName\n }\n}\n\nexport class StorageError extends Error {\n static errorName = \"StorageError\"\n\n constructor(message: string) {\n super(`Storage Error: ${message}`)\n this.name = StorageError.errorName\n }\n}\n\nexport class CallError extends Error {\n static errorName = \"CallError\"\n\n constructor(message: string) {\n super(`Call Error: ${message}`)\n this.name = CallError.errorName\n }\n}\n"],"names":[],"mappings":";;;AAAO,MAAM,uBAAA,GAAN,MAAM,uBAAA,SAA+B,KAAA,CAAM;AAAA,EAGhD,YAAY,IAAA,EAAc;AACxB,IAAA,KAAA,CAAM,CAAA,mBAAA,EAAsB,IAAI,CAAA,CAAE,CAAA;AAClC,IAAA,IAAA,CAAK,OAAO,uBAAA,CAAuB,SAAA;AAAA,EACrC;AACF,CAAA;AANE,aAAA,CADW,yBACJ,WAAA,EAAY,wBAAA,CAAA;AADd,IAAM,sBAAA,GAAN;AASA,MAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,KAAA,CAAM;AAAA,EAGtC,YAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,CAAA,eAAA,EAAkB,OAAO,CAAA,CAAE,CAAA;AACjC,IAAA,IAAA,CAAK,OAAO,aAAA,CAAa,SAAA;AAAA,EAC3B;AACF,CAAA;AANE,aAAA,CADW,eACJ,WAAA,EAAY,cAAA,CAAA;AADd,IAAM,YAAA,GAAN;AASA,MAAM,UAAA,GAAN,MAAM,UAAA,SAAkB,KAAA,CAAM;AAAA,EAGnC,YAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,CAAA,YAAA,EAAe,OAAO,CAAA,CAAE,CAAA;AAC9B,IAAA,IAAA,CAAK,OAAO,UAAA,CAAU,SAAA;AAAA,EACxB;AACF,CAAA;AANE,aAAA,CADW,YACJ,WAAA,EAAY,WAAA,CAAA;AADd,IAAM,SAAA,GAAN;;;;"}
@@ -1,33 +1,46 @@
1
- class StopError extends Error {
1
+ var __defProp$1 = Object.defineProperty;
2
+ var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField$1 = (obj, key, value) => __defNormalProp$1(obj, key + "" , value);
4
+ const _StopError = class _StopError extends Error {
2
5
  constructor() {
3
6
  super("ChainHead stopped");
4
- this.name = "StopError";
7
+ this.name = _StopError.errorName;
5
8
  }
6
- }
7
- class DisjointError extends Error {
9
+ };
10
+ __publicField$1(_StopError, "errorName", "StopError");
11
+ let StopError = _StopError;
12
+ const _DisjointError = class _DisjointError extends Error {
8
13
  constructor() {
9
14
  super("ChainHead disjointed");
10
- this.name = "DisjointError";
15
+ this.name = _DisjointError.errorName;
11
16
  }
12
- }
13
- class OperationLimitError extends Error {
17
+ };
18
+ __publicField$1(_DisjointError, "errorName", "DisjointError");
19
+ let DisjointError = _DisjointError;
20
+ const _OperationLimitError = class _OperationLimitError extends Error {
14
21
  constructor() {
15
22
  super("ChainHead operations limit reached");
16
- this.name = "OperationLimitError";
23
+ this.name = _OperationLimitError.errorName;
17
24
  }
18
- }
19
- class OperationError extends Error {
25
+ };
26
+ __publicField$1(_OperationLimitError, "errorName", "OperationLimitError");
27
+ let OperationLimitError = _OperationLimitError;
28
+ const _OperationError = class _OperationError extends Error {
20
29
  constructor(error) {
21
30
  super(error);
22
- this.name = "OperationError";
31
+ this.name = _OperationError.errorName;
23
32
  }
24
- }
25
- class OperationInaccessibleError extends Error {
33
+ };
34
+ __publicField$1(_OperationError, "errorName", "OperationError");
35
+ let OperationError = _OperationError;
36
+ const _OperationInaccessibleError = class _OperationInaccessibleError extends Error {
26
37
  constructor() {
27
38
  super("ChainHead operation inaccessible");
28
- this.name = "OperationInaccessibleError";
39
+ this.name = _OperationInaccessibleError.errorName;
29
40
  }
30
- }
41
+ };
42
+ __publicField$1(_OperationInaccessibleError, "errorName", "OperationInaccessibleError");
43
+ let OperationInaccessibleError = _OperationInaccessibleError;
31
44
 
32
45
  export { DisjointError, OperationError, OperationInaccessibleError, OperationLimitError, StopError };
33
46
  //# sourceMappingURL=errors.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.mjs","sources":["../../../src/chainhead/errors.ts"],"sourcesContent":["export class StopError extends Error {\n constructor() {\n super(\"ChainHead stopped\")\n this.name = \"StopError\"\n }\n}\n\nexport class DisjointError extends Error {\n constructor() {\n super(\"ChainHead disjointed\")\n this.name = \"DisjointError\"\n }\n}\n\nexport class OperationLimitError extends Error {\n constructor() {\n super(\"ChainHead operations limit reached\")\n this.name = \"OperationLimitError\"\n }\n}\n\nexport class OperationError extends Error {\n constructor(error: string) {\n super(error)\n this.name = \"OperationError\"\n }\n}\n\nexport class OperationInaccessibleError extends Error {\n constructor() {\n super(\"ChainHead operation inaccessible\")\n this.name = \"OperationInaccessibleError\"\n }\n}\n"],"names":[],"mappings":"AAAO,MAAM,kBAAkB,KAAA,CAAM;AAAA,EACnC,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,mBAAmB,CAAA;AACzB,IAAA,IAAA,CAAK,IAAA,GAAO,WAAA;AAAA,EACd;AACF;AAEO,MAAM,sBAAsB,KAAA,CAAM;AAAA,EACvC,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,sBAAsB,CAAA;AAC5B,IAAA,IAAA,CAAK,IAAA,GAAO,eAAA;AAAA,EACd;AACF;AAEO,MAAM,4BAA4B,KAAA,CAAM;AAAA,EAC7C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,oCAAoC,CAAA;AAC1C,IAAA,IAAA,CAAK,IAAA,GAAO,qBAAA;AAAA,EACd;AACF;AAEO,MAAM,uBAAuB,KAAA,CAAM;AAAA,EACxC,YAAY,KAAA,EAAe;AACzB,IAAA,KAAA,CAAM,KAAK,CAAA;AACX,IAAA,IAAA,CAAK,IAAA,GAAO,gBAAA;AAAA,EACd;AACF;AAEO,MAAM,mCAAmC,KAAA,CAAM;AAAA,EACpD,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,kCAAkC,CAAA;AACxC,IAAA,IAAA,CAAK,IAAA,GAAO,4BAAA;AAAA,EACd;AACF;;;;"}
1
+ {"version":3,"file":"errors.mjs","sources":["../../../src/chainhead/errors.ts"],"sourcesContent":["export class StopError extends Error {\n static errorName = \"StopError\"\n\n constructor() {\n super(\"ChainHead stopped\")\n this.name = StopError.errorName\n }\n}\n\nexport class DisjointError extends Error {\n static errorName = \"DisjointError\"\n\n constructor() {\n super(\"ChainHead disjointed\")\n this.name = DisjointError.errorName\n }\n}\n\nexport class OperationLimitError extends Error {\n static errorName = \"OperationLimitError\"\n\n constructor() {\n super(\"ChainHead operations limit reached\")\n this.name = OperationLimitError.errorName\n }\n}\n\nexport class OperationError extends Error {\n static errorName = \"OperationError\"\n\n constructor(error: string) {\n super(error)\n this.name = OperationError.errorName\n }\n}\n\nexport class OperationInaccessibleError extends Error {\n static errorName = \"OperationInaccessibleError\"\n\n constructor() {\n super(\"ChainHead operation inaccessible\")\n this.name = OperationInaccessibleError.errorName\n }\n}\n"],"names":["__publicField"],"mappings":";;;AAAO,MAAM,UAAA,GAAN,MAAM,UAAA,SAAkB,KAAA,CAAM;AAAA,EAGnC,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,mBAAmB,CAAA;AACzB,IAAA,IAAA,CAAK,OAAO,UAAA,CAAU,SAAA;AAAA,EACxB;AACF,CAAA;AANEA,eAAA,CADW,YACJ,WAAA,EAAY,WAAA,CAAA;AADd,IAAM,SAAA,GAAN;AASA,MAAM,cAAA,GAAN,MAAM,cAAA,SAAsB,KAAA,CAAM;AAAA,EAGvC,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,sBAAsB,CAAA;AAC5B,IAAA,IAAA,CAAK,OAAO,cAAA,CAAc,SAAA;AAAA,EAC5B;AACF,CAAA;AANEA,eAAA,CADW,gBACJ,WAAA,EAAY,eAAA,CAAA;AADd,IAAM,aAAA,GAAN;AASA,MAAM,oBAAA,GAAN,MAAM,oBAAA,SAA4B,KAAA,CAAM;AAAA,EAG7C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,oCAAoC,CAAA;AAC1C,IAAA,IAAA,CAAK,OAAO,oBAAA,CAAoB,SAAA;AAAA,EAClC;AACF,CAAA;AANEA,eAAA,CADW,sBACJ,WAAA,EAAY,qBAAA,CAAA;AADd,IAAM,mBAAA,GAAN;AASA,MAAM,eAAA,GAAN,MAAM,eAAA,SAAuB,KAAA,CAAM;AAAA,EAGxC,YAAY,KAAA,EAAe;AACzB,IAAA,KAAA,CAAM,KAAK,CAAA;AACX,IAAA,IAAA,CAAK,OAAO,eAAA,CAAe,SAAA;AAAA,EAC7B;AACF,CAAA;AANEA,eAAA,CADW,iBACJ,WAAA,EAAY,gBAAA,CAAA;AADd,IAAM,cAAA,GAAN;AASA,MAAM,2BAAA,GAAN,MAAM,2BAAA,SAAmC,KAAA,CAAM;AAAA,EAGpD,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,kCAAkC,CAAA;AACxC,IAAA,IAAA,CAAK,OAAO,2BAAA,CAA2B,SAAA;AAAA,EACzC;AACF,CAAA;AANEA,eAAA,CADW,6BACJ,WAAA,EAAY,4BAAA,CAAA;AADd,IAAM,0BAAA,GAAN;;;;"}
@@ -2,7 +2,7 @@ import { noop } from '@polkadot-api/utils';
2
2
  import { chainHead } from '../methods.mjs';
3
3
  import { OperationLimitError, OperationInaccessibleError, OperationError } from './errors.mjs';
4
4
 
5
- const createStorageCb = (request) => (hash, inputs, childTrie, onItems, onError, onDone, onDiscardedItems) => {
5
+ const createStorageCb$1 = (request) => (hash, inputs, childTrie, onItems, onError, onDone, onDiscardedItems) => {
6
6
  if (inputs.length === 0) {
7
7
  onDone();
8
8
  return noop;
@@ -68,5 +68,5 @@ const createStorageCb = (request) => (hash, inputs, childTrie, onItems, onError,
68
68
  };
69
69
  };
70
70
 
71
- export { createStorageCb };
71
+ export { createStorageCb$1 as createStorageCb };
72
72
  //# sourceMappingURL=storage-subscription.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage-subscription.mjs","sources":["../../../src/chainhead/storage-subscription.ts"],"sourcesContent":["import { noop } from \"@polkadot-api/utils\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\nimport {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { chainHead } from \"@/methods\"\nimport {\n OperationError,\n OperationInaccessibleError,\n OperationLimitError,\n} from \"./errors\"\n\nexport const createStorageCb =\n (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n ): FollowResponse[\"storageSubscription\"] =>\n (hash, inputs, childTrie, onItems, onError, onDone, onDiscardedItems) => {\n if (inputs.length === 0) {\n onDone()\n return noop\n }\n\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n request(chainHead.storage, [hash, inputs, childTrie], {\n onSuccess: (response, followSubscription) => {\n if (\n response.result === \"limitReached\" ||\n response.discardedItems === inputs.length\n )\n return onError(new OperationLimitError())\n\n const { operationId } = response\n const stopOperation = () => {\n request(chainHead.stopOperation, [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n const doneListening = followSubscription(response.operationId, {\n next: (event) => {\n switch (event.event) {\n case \"operationStorageItems\": {\n onItems(event.items)\n break\n }\n case \"operationStorageDone\": {\n _onDone()\n break\n }\n case \"operationError\": {\n _onError(new OperationError(event.error))\n break\n }\n case \"operationInaccessible\": {\n _onError(new OperationInaccessibleError())\n break\n }\n default:\n request(chainHead.continue, [event.operationId])\n }\n },\n error: onError,\n })\n\n cancel = () => {\n doneListening()\n request(chainHead.stopOperation, [response.operationId])\n }\n\n const _onError = (e: Error) => {\n cancel = noop\n doneListening()\n onError(e)\n }\n\n const _onDone = () => {\n cancel = noop\n doneListening()\n onDone()\n }\n\n onDiscardedItems(response.discardedItems)\n },\n onError,\n })\n\n return () => {\n cancel()\n }\n }\n"],"names":[],"mappings":";;;;AAiBO,MAAM,eAAA,GACX,CACE,OAAA,KAQF,CAAC,IAAA,EAAM,QAAQ,SAAA,EAAW,OAAA,EAAS,OAAA,EAAS,MAAA,EAAQ,gBAAA,KAAqB;AACvE,EAAA,IAAI,MAAA,CAAO,WAAW,CAAA,EAAG;AACvB,IAAA,MAAA,EAAO;AACP,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,IAAI,SAAA,GAAY,IAAA;AAChB,EAAA,IAAI,SAAS,MAAM;AACjB,IAAA,SAAA,GAAY,KAAA;AAAA,EACd,CAAA;AAEA,EAAA,OAAA,CAAQ,UAAU,OAAA,EAAS,CAAC,IAAA,EAAM,MAAA,EAAQ,SAAS,CAAA,EAAG;AAAA,IACpD,SAAA,EAAW,CAAC,QAAA,EAAU,kBAAA,KAAuB;AAC3C,MAAA,IACE,QAAA,CAAS,MAAA,KAAW,cAAA,IACpB,QAAA,CAAS,mBAAmB,MAAA,CAAO,MAAA;AAEnC,QAAA,OAAO,OAAA,CAAQ,IAAI,mBAAA,EAAqB,CAAA;AAE1C,MAAA,MAAM,EAAE,aAAY,GAAI,QAAA;AACxB,MAAA,MAAM,gBAAgB,MAAM;AAC1B,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,WAAW,CAAC,CAAA;AAAA,MAChD,CAAA;AAEA,MAAA,IAAI,CAAC,SAAA,EAAW,OAAO,aAAA,EAAc;AAErC,MAAA,MAAM,aAAA,GAAgB,kBAAA,CAAmB,QAAA,CAAS,WAAA,EAAa;AAAA,QAC7D,IAAA,EAAM,CAAC,KAAA,KAAU;AACf,UAAA,QAAQ,MAAM,KAAA;AAAO,YACnB,KAAK,uBAAA,EAAyB;AAC5B,cAAA,OAAA,CAAQ,MAAM,KAAK,CAAA;AACnB,cAAA;AAAA,YACF;AAAA,YACA,KAAK,sBAAA,EAAwB;AAC3B,cAAA,OAAA,EAAQ;AACR,cAAA;AAAA,YACF;AAAA,YACA,KAAK,gBAAA,EAAkB;AACrB,cAAA,QAAA,CAAS,IAAI,cAAA,CAAe,KAAA,CAAM,KAAK,CAAC,CAAA;AACxC,cAAA;AAAA,YACF;AAAA,YACA,KAAK,uBAAA,EAAyB;AAC5B,cAAA,QAAA,CAAS,IAAI,4BAA4B,CAAA;AACzC,cAAA;AAAA,YACF;AAAA,YACA;AACE,cAAA,OAAA,CAAQ,SAAA,CAAU,QAAA,EAAU,CAAC,KAAA,CAAM,WAAW,CAAC,CAAA;AAAA;AACnD,QACF,CAAA;AAAA,QACA,KAAA,EAAO;AAAA,OACR,CAAA;AAED,MAAA,MAAA,GAAS,MAAM;AACb,QAAA,aAAA,EAAc;AACd,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,QAAA,CAAS,WAAW,CAAC,CAAA;AAAA,MACzD,CAAA;AAEA,MAAA,MAAM,QAAA,GAAW,CAAC,CAAA,KAAa;AAC7B,QAAA,MAAA,GAAS,IAAA;AACT,QAAA,aAAA,EAAc;AACd,QAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACX,CAAA;AAEA,MAAA,MAAM,UAAU,MAAM;AACpB,QAAA,MAAA,GAAS,IAAA;AACT,QAAA,aAAA,EAAc;AACd,QAAA,MAAA,EAAO;AAAA,MACT,CAAA;AAEA,MAAA,gBAAA,CAAiB,SAAS,cAAc,CAAA;AAAA,IAC1C,CAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,OAAO,MAAM;AACX,IAAA,MAAA,EAAO;AAAA,EACT,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"storage-subscription.mjs","sources":["../../../src/chainhead/storage-subscription.ts"],"sourcesContent":["import { noop } from \"@polkadot-api/utils\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\nimport {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { chainHead } from \"@/methods\"\nimport {\n OperationError,\n OperationInaccessibleError,\n OperationLimitError,\n} from \"./errors\"\n\nexport const createStorageCb =\n (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n ): FollowResponse[\"storageSubscription\"] =>\n (hash, inputs, childTrie, onItems, onError, onDone, onDiscardedItems) => {\n if (inputs.length === 0) {\n onDone()\n return noop\n }\n\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n request(chainHead.storage, [hash, inputs, childTrie], {\n onSuccess: (response, followSubscription) => {\n if (\n response.result === \"limitReached\" ||\n response.discardedItems === inputs.length\n )\n return onError(new OperationLimitError())\n\n const { operationId } = response\n const stopOperation = () => {\n request(chainHead.stopOperation, [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n const doneListening = followSubscription(response.operationId, {\n next: (event) => {\n switch (event.event) {\n case \"operationStorageItems\": {\n onItems(event.items)\n break\n }\n case \"operationStorageDone\": {\n _onDone()\n break\n }\n case \"operationError\": {\n _onError(new OperationError(event.error))\n break\n }\n case \"operationInaccessible\": {\n _onError(new OperationInaccessibleError())\n break\n }\n default:\n request(chainHead.continue, [event.operationId])\n }\n },\n error: onError,\n })\n\n cancel = () => {\n doneListening()\n request(chainHead.stopOperation, [response.operationId])\n }\n\n const _onError = (e: Error) => {\n cancel = noop\n doneListening()\n onError(e)\n }\n\n const _onDone = () => {\n cancel = noop\n doneListening()\n onDone()\n }\n\n onDiscardedItems(response.discardedItems)\n },\n onError,\n })\n\n return () => {\n cancel()\n }\n }\n"],"names":["createStorageCb"],"mappings":";;;;AAiBO,MAAMA,iBAAA,GACX,CACE,OAAA,KAQF,CAAC,IAAA,EAAM,QAAQ,SAAA,EAAW,OAAA,EAAS,OAAA,EAAS,MAAA,EAAQ,gBAAA,KAAqB;AACvE,EAAA,IAAI,MAAA,CAAO,WAAW,CAAA,EAAG;AACvB,IAAA,MAAA,EAAO;AACP,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,IAAI,SAAA,GAAY,IAAA;AAChB,EAAA,IAAI,SAAS,MAAM;AACjB,IAAA,SAAA,GAAY,KAAA;AAAA,EACd,CAAA;AAEA,EAAA,OAAA,CAAQ,UAAU,OAAA,EAAS,CAAC,IAAA,EAAM,MAAA,EAAQ,SAAS,CAAA,EAAG;AAAA,IACpD,SAAA,EAAW,CAAC,QAAA,EAAU,kBAAA,KAAuB;AAC3C,MAAA,IACE,QAAA,CAAS,MAAA,KAAW,cAAA,IACpB,QAAA,CAAS,mBAAmB,MAAA,CAAO,MAAA;AAEnC,QAAA,OAAO,OAAA,CAAQ,IAAI,mBAAA,EAAqB,CAAA;AAE1C,MAAA,MAAM,EAAE,aAAY,GAAI,QAAA;AACxB,MAAA,MAAM,gBAAgB,MAAM;AAC1B,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,WAAW,CAAC,CAAA;AAAA,MAChD,CAAA;AAEA,MAAA,IAAI,CAAC,SAAA,EAAW,OAAO,aAAA,EAAc;AAErC,MAAA,MAAM,aAAA,GAAgB,kBAAA,CAAmB,QAAA,CAAS,WAAA,EAAa;AAAA,QAC7D,IAAA,EAAM,CAAC,KAAA,KAAU;AACf,UAAA,QAAQ,MAAM,KAAA;AAAO,YACnB,KAAK,uBAAA,EAAyB;AAC5B,cAAA,OAAA,CAAQ,MAAM,KAAK,CAAA;AACnB,cAAA;AAAA,YACF;AAAA,YACA,KAAK,sBAAA,EAAwB;AAC3B,cAAA,OAAA,EAAQ;AACR,cAAA;AAAA,YACF;AAAA,YACA,KAAK,gBAAA,EAAkB;AACrB,cAAA,QAAA,CAAS,IAAI,cAAA,CAAe,KAAA,CAAM,KAAK,CAAC,CAAA;AACxC,cAAA;AAAA,YACF;AAAA,YACA,KAAK,uBAAA,EAAyB;AAC5B,cAAA,QAAA,CAAS,IAAI,4BAA4B,CAAA;AACzC,cAAA;AAAA,YACF;AAAA,YACA;AACE,cAAA,OAAA,CAAQ,SAAA,CAAU,QAAA,EAAU,CAAC,KAAA,CAAM,WAAW,CAAC,CAAA;AAAA;AACnD,QACF,CAAA;AAAA,QACA,KAAA,EAAO;AAAA,OACR,CAAA;AAED,MAAA,MAAA,GAAS,MAAM;AACb,QAAA,aAAA,EAAc;AACd,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,QAAA,CAAS,WAAW,CAAC,CAAA;AAAA,MACzD,CAAA;AAEA,MAAA,MAAM,QAAA,GAAW,CAAC,CAAA,KAAa;AAC7B,QAAA,MAAA,GAAS,IAAA;AACT,QAAA,aAAA,EAAc;AACd,QAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACX,CAAA;AAEA,MAAA,MAAM,UAAU,MAAM;AACpB,QAAA,MAAA,GAAS,IAAA;AACT,QAAA,aAAA,EAAc;AACd,QAAA,MAAA,EAAO;AAAA,MACT,CAAA;AAEA,MAAA,gBAAA,CAAiB,SAAS,cAAc,CAAA;AAAA,IAC1C,CAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,OAAO,MAAM;AACX,IAAA,MAAA,EAAO;AAAA,EACT,CAAA;AACF;;;;"}
@@ -2,7 +2,7 @@ import { OperationLimitError } from './errors.mjs';
2
2
  import { abortablePromiseFn } from '../internal-utils/abortablePromiseFn.mjs';
3
3
  import { createStorageCb } from './storage-subscription.mjs';
4
4
 
5
- const createStorageFn = (request) => {
5
+ const createStorageFn$1 = (request) => {
6
6
  const cbStore = createStorageCb(request);
7
7
  return abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {
8
8
  const isDescendants = type.startsWith("descendants");
@@ -36,5 +36,5 @@ const createStorageFn = (request) => {
36
36
  });
37
37
  };
38
38
 
39
- export { createStorageFn };
39
+ export { createStorageFn$1 as createStorageFn };
40
40
  //# sourceMappingURL=storage.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage.mjs","sources":["../../../src/chainhead/storage.ts"],"sourcesContent":["import { OperationLimitError } from \"./errors\"\nimport type {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { abortablePromiseFn } from \"@/internal-utils\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\n\nexport const createStorageFn = (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n): FollowResponse[\"storage\"] => {\n const cbStore = createStorageCb(request)\n return abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {\n const isDescendants = type.startsWith(\"descendants\")\n let result: any = isDescendants ? [] : null\n\n const onItems: Parameters<typeof cbStore>[3] = isDescendants\n ? (items) => {\n result.push(items)\n }\n : (items) => {\n result = items[0]?.[type as \"value\"]\n }\n\n const cancel = cbStore(\n hash,\n [{ key, type }],\n childTrie ?? null,\n onItems,\n reject,\n () => {\n try {\n resolve(isDescendants ? result.flat() : result)\n } catch (e) {\n reject(e)\n }\n },\n (nDiscarded) => {\n if (nDiscarded > 0) {\n cancel()\n reject(new OperationLimitError())\n }\n },\n )\n return cancel\n })\n}\n"],"names":[],"mappings":";;;;AAaO,MAAM,eAAA,GAAkB,CAC7B,OAAA,KAO8B;AAC9B,EAAA,MAAM,OAAA,GAAU,gBAAgB,OAAO,CAAA;AACvC,EAAA,OAAO,mBAAmB,CAAC,OAAA,EAAS,QAAQ,IAAA,EAAM,IAAA,EAAM,KAAK,SAAA,KAAc;AACzE,IAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,UAAA,CAAW,aAAa,CAAA;AACnD,IAAA,IAAI,MAAA,GAAc,aAAA,GAAgB,EAAC,GAAI,IAAA;AAEvC,IAAA,MAAM,OAAA,GAAyC,aAAA,GAC3C,CAAC,KAAA,KAAU;AACT,MAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,IACnB,CAAA,GACA,CAAC,KAAA,KAAU;AACT,MAAA,MAAA,GAAS,KAAA,CAAM,CAAC,CAAA,GAAI,IAAe,CAAA;AAAA,IACrC,CAAA;AAEJ,IAAA,MAAM,MAAA,GAAS,OAAA;AAAA,MACb,IAAA;AAAA,MACA,CAAC,EAAE,GAAA,EAAK,IAAA,EAAM,CAAA;AAAA,MACd,SAAA,IAAa,IAAA;AAAA,MACb,OAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAM;AACJ,QAAA,IAAI;AACF,UAAA,OAAA,CAAQ,aAAA,GAAgB,MAAA,CAAO,IAAA,EAAK,GAAI,MAAM,CAAA;AAAA,QAChD,SAAS,CAAA,EAAG;AACV,UAAA,MAAA,CAAO,CAAC,CAAA;AAAA,QACV;AAAA,MACF,CAAA;AAAA,MACA,CAAC,UAAA,KAAe;AACd,QAAA,IAAI,aAAa,CAAA,EAAG;AAClB,UAAA,MAAA,EAAO;AACP,UAAA,MAAA,CAAO,IAAI,qBAAqB,CAAA;AAAA,QAClC;AAAA,MACF;AAAA,KACF;AACA,IAAA,OAAO,MAAA;AAAA,EACT,CAAC,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"storage.mjs","sources":["../../../src/chainhead/storage.ts"],"sourcesContent":["import { OperationLimitError } from \"./errors\"\nimport type {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { abortablePromiseFn } from \"@/internal-utils\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\n\nexport const createStorageFn = (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n): FollowResponse[\"storage\"] => {\n const cbStore = createStorageCb(request)\n return abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {\n const isDescendants = type.startsWith(\"descendants\")\n let result: any = isDescendants ? [] : null\n\n const onItems: Parameters<typeof cbStore>[3] = isDescendants\n ? (items) => {\n result.push(items)\n }\n : (items) => {\n result = items[0]?.[type as \"value\"]\n }\n\n const cancel = cbStore(\n hash,\n [{ key, type }],\n childTrie ?? null,\n onItems,\n reject,\n () => {\n try {\n resolve(isDescendants ? result.flat() : result)\n } catch (e) {\n reject(e)\n }\n },\n (nDiscarded) => {\n if (nDiscarded > 0) {\n cancel()\n reject(new OperationLimitError())\n }\n },\n )\n return cancel\n })\n}\n"],"names":["createStorageFn"],"mappings":";;;;AAaO,MAAMA,iBAAA,GAAkB,CAC7B,OAAA,KAO8B;AAC9B,EAAA,MAAM,OAAA,GAAU,gBAAgB,OAAO,CAAA;AACvC,EAAA,OAAO,mBAAmB,CAAC,OAAA,EAAS,QAAQ,IAAA,EAAM,IAAA,EAAM,KAAK,SAAA,KAAc;AACzE,IAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,UAAA,CAAW,aAAa,CAAA;AACnD,IAAA,IAAI,MAAA,GAAc,aAAA,GAAgB,EAAC,GAAI,IAAA;AAEvC,IAAA,MAAM,OAAA,GAAyC,aAAA,GAC3C,CAAC,KAAA,KAAU;AACT,MAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,IACnB,CAAA,GACA,CAAC,KAAA,KAAU;AACT,MAAA,MAAA,GAAS,KAAA,CAAM,CAAC,CAAA,GAAI,IAAe,CAAA;AAAA,IACrC,CAAA;AAEJ,IAAA,MAAM,MAAA,GAAS,OAAA;AAAA,MACb,IAAA;AAAA,MACA,CAAC,EAAE,GAAA,EAAK,IAAA,EAAM,CAAA;AAAA,MACd,SAAA,IAAa,IAAA;AAAA,MACb,OAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAM;AACJ,QAAA,IAAI;AACF,UAAA,OAAA,CAAQ,aAAA,GAAgB,MAAA,CAAO,IAAA,EAAK,GAAI,MAAM,CAAA;AAAA,QAChD,SAAS,CAAA,EAAG;AACV,UAAA,MAAA,CAAO,CAAC,CAAA;AAAA,QACV;AAAA,MACF,CAAA;AAAA,MACA,CAAC,UAAA,KAAe;AACd,QAAA,IAAI,aAAa,CAAA,EAAG;AAClB,UAAA,MAAA,EAAO;AACP,UAAA,MAAA,CAAO,IAAI,qBAAqB,CAAA;AAAA,QAClC;AAAA,MACF;AAAA,KACF;AACA,IAAA,OAAO,MAAA;AAAA,EACT,CAAC,CAAA;AACH;;;;"}
@@ -1,8 +1,10 @@
1
1
  import { createClient as createClient$1 } from '@polkadot-api/raw-client';
2
2
  import { getTransaction } from './transaction/transaction.mjs';
3
+ import './chainhead/errors.mjs';
3
4
  import { getChainHead } from './chainhead/chainhead.mjs';
4
5
  import { abortablePromiseFn } from './internal-utils/abortablePromiseFn.mjs';
5
6
  import { createGetChainSpec } from './chainspec.mjs';
7
+ import './archive/errors.mjs';
6
8
  import { getArchive } from './archive/archive.mjs';
7
9
 
8
10
  const createClient = (provider) => {
@@ -1 +1 @@
1
- {"version":3,"file":"substrate-client.mjs","sources":["../../src/substrate-client.ts"],"sourcesContent":["import type { JsonRpcProvider } from \"@polkadot-api/json-rpc-provider\"\nimport {\n ClientRequestCb,\n createClient as createRawClient,\n} from \"@polkadot-api/raw-client\"\nimport { getTransaction } from \"./transaction/transaction\"\nimport { getChainHead } from \"./chainhead\"\nimport type { ChainHead } from \"./chainhead\"\nimport type { Transaction } from \"./transaction\"\nimport { UnsubscribeFn } from \"./common-types\"\nimport { abortablePromiseFn } from \"./internal-utils\"\nimport { ChainSpecData, createGetChainSpec } from \"./chainspec\"\nimport { Archive, getArchive } from \"./archive\"\n\nexport interface SubstrateClient {\n archive: Archive\n chainHead: ChainHead\n transaction: Transaction\n destroy: UnsubscribeFn\n getChainSpecData: () => Promise<ChainSpecData>\n request: <T>(\n method: string,\n params: any[],\n abortSignal?: AbortSignal,\n ) => Promise<T>\n _request: <Reply, Notification>(\n method: string,\n params: any[],\n cb?: ClientRequestCb<Reply, Notification>,\n ) => UnsubscribeFn\n}\n\nexport const createClient = (provider: JsonRpcProvider): SubstrateClient => {\n const { request, disconnect } = createRawClient(provider)\n return {\n archive: getArchive(request),\n chainHead: getChainHead(request),\n transaction: getTransaction(request),\n getChainSpecData: createGetChainSpec(request),\n destroy: disconnect,\n request: abortablePromiseFn(\n <T>(\n onSuccess: (value: T) => void,\n onError: (e: any) => void,\n method: string,\n params: any[],\n ) => request(method, params, { onSuccess, onError }),\n ),\n _request: request,\n }\n}\n"],"names":["createRawClient"],"mappings":";;;;;;;AAgCO,MAAM,YAAA,GAAe,CAAC,QAAA,KAA+C;AAC1E,EAAA,MAAM,EAAE,OAAA,EAAS,UAAA,EAAW,GAAIA,eAAgB,QAAQ,CAAA;AACxD,EAAA,OAAO;AAAA,IACL,OAAA,EAAS,WAAW,OAAO,CAAA;AAAA,IAC3B,SAAA,EAAW,aAAa,OAAO,CAAA;AAAA,IAC/B,WAAA,EAAa,eAAe,OAAO,CAAA;AAAA,IACnC,gBAAA,EAAkB,mBAAmB,OAAO,CAAA;AAAA,IAC5C,OAAA,EAAS,UAAA;AAAA,IACT,OAAA,EAAS,kBAAA;AAAA,MACP,CACE,SAAA,EACA,OAAA,EACA,MAAA,EACA,MAAA,KACG,OAAA,CAAQ,MAAA,EAAQ,MAAA,EAAQ,EAAE,SAAA,EAAW,OAAA,EAAS;AAAA,KACrD;AAAA,IACA,QAAA,EAAU;AAAA,GACZ;AACF;;;;"}
1
+ {"version":3,"file":"substrate-client.mjs","sources":["../../src/substrate-client.ts"],"sourcesContent":["import type { JsonRpcProvider } from \"@polkadot-api/json-rpc-provider\"\nimport {\n ClientRequestCb,\n createClient as createRawClient,\n} from \"@polkadot-api/raw-client\"\nimport { getTransaction } from \"./transaction/transaction\"\nimport { getChainHead } from \"./chainhead\"\nimport type { ChainHead } from \"./chainhead\"\nimport type { Transaction } from \"./transaction\"\nimport { UnsubscribeFn } from \"./common-types\"\nimport { abortablePromiseFn } from \"./internal-utils\"\nimport { ChainSpecData, createGetChainSpec } from \"./chainspec\"\nimport { Archive, getArchive } from \"./archive\"\n\nexport interface SubstrateClient {\n archive: Archive\n chainHead: ChainHead\n transaction: Transaction\n destroy: UnsubscribeFn\n getChainSpecData: () => Promise<ChainSpecData>\n request: <T>(\n method: string,\n params: any[],\n abortSignal?: AbortSignal,\n ) => Promise<T>\n _request: <Reply, Notification>(\n method: string,\n params: any[],\n cb?: ClientRequestCb<Reply, Notification>,\n ) => UnsubscribeFn\n}\n\nexport const createClient = (provider: JsonRpcProvider): SubstrateClient => {\n const { request, disconnect } = createRawClient(provider)\n return {\n archive: getArchive(request),\n chainHead: getChainHead(request),\n transaction: getTransaction(request),\n getChainSpecData: createGetChainSpec(request),\n destroy: disconnect,\n request: abortablePromiseFn(\n <T>(\n onSuccess: (value: T) => void,\n onError: (e: any) => void,\n method: string,\n params: any[],\n ) => request(method, params, { onSuccess, onError }),\n ),\n _request: request,\n }\n}\n"],"names":["createRawClient"],"mappings":";;;;;;;;;AAgCO,MAAM,YAAA,GAAe,CAAC,QAAA,KAA+C;AAC1E,EAAA,MAAM,EAAE,OAAA,EAAS,UAAA,EAAW,GAAIA,eAAgB,QAAQ,CAAA;AACxD,EAAA,OAAO;AAAA,IACL,OAAA,EAAS,WAAW,OAAO,CAAA;AAAA,IAC3B,SAAA,EAAW,aAAa,OAAO,CAAA;AAAA,IAC/B,WAAA,EAAa,eAAe,OAAO,CAAA;AAAA,IACnC,gBAAA,EAAkB,mBAAmB,OAAO,CAAA;AAAA,IAC5C,OAAA,EAAS,UAAA;AAAA,IACT,OAAA,EAAS,kBAAA;AAAA,MACP,CACE,SAAA,EACA,OAAA,EACA,MAAA,EACA,MAAA,KACG,OAAA,CAAQ,MAAA,EAAQ,MAAA,EAAQ,EAAE,SAAA,EAAW,OAAA,EAAS;AAAA,KACrD;AAAA,IACA,QAAA,EAAU;AAAA,GACZ;AACF;;;;"}
package/dist/index.d.ts CHANGED
@@ -95,18 +95,23 @@ interface ChainHead {
95
95
  }
96
96
 
97
97
  declare class StopError extends Error {
98
+ static errorName: string;
98
99
  constructor();
99
100
  }
100
101
  declare class DisjointError extends Error {
102
+ static errorName: string;
101
103
  constructor();
102
104
  }
103
105
  declare class OperationLimitError extends Error {
106
+ static errorName: string;
104
107
  constructor();
105
108
  }
106
109
  declare class OperationError extends Error {
110
+ static errorName: string;
107
111
  constructor(error: string);
108
112
  }
109
113
  declare class OperationInaccessibleError extends Error {
114
+ static errorName: string;
110
115
  constructor();
111
116
  }
112
117
 
@@ -213,12 +218,15 @@ interface Archive {
213
218
  }
214
219
 
215
220
  declare class BlockHashNotFoundError extends Error {
221
+ static errorName: string;
216
222
  constructor(hash: string);
217
223
  }
218
224
  declare class StorageError extends Error {
225
+ static errorName: string;
219
226
  constructor(message: string);
220
227
  }
221
228
  declare class CallError extends Error {
229
+ static errorName: string;
222
230
  constructor(message: string);
223
231
  }
224
232
 
package/dist/index.js CHANGED
@@ -3,36 +3,49 @@
3
3
  var utils = require('@polkadot-api/utils');
4
4
  var rawClient = require('@polkadot-api/raw-client');
5
5
 
6
- class StopError extends Error {
6
+ var __defProp$1 = Object.defineProperty;
7
+ var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __publicField$1 = (obj, key, value) => __defNormalProp$1(obj, key + "" , value);
9
+ const _StopError = class _StopError extends Error {
7
10
  constructor() {
8
11
  super("ChainHead stopped");
9
- this.name = "StopError";
12
+ this.name = _StopError.errorName;
10
13
  }
11
- }
12
- class DisjointError extends Error {
14
+ };
15
+ __publicField$1(_StopError, "errorName", "StopError");
16
+ let StopError = _StopError;
17
+ const _DisjointError = class _DisjointError extends Error {
13
18
  constructor() {
14
19
  super("ChainHead disjointed");
15
- this.name = "DisjointError";
20
+ this.name = _DisjointError.errorName;
16
21
  }
17
- }
18
- class OperationLimitError extends Error {
22
+ };
23
+ __publicField$1(_DisjointError, "errorName", "DisjointError");
24
+ let DisjointError = _DisjointError;
25
+ const _OperationLimitError = class _OperationLimitError extends Error {
19
26
  constructor() {
20
27
  super("ChainHead operations limit reached");
21
- this.name = "OperationLimitError";
28
+ this.name = _OperationLimitError.errorName;
22
29
  }
23
- }
24
- class OperationError extends Error {
30
+ };
31
+ __publicField$1(_OperationLimitError, "errorName", "OperationLimitError");
32
+ let OperationLimitError = _OperationLimitError;
33
+ const _OperationError = class _OperationError extends Error {
25
34
  constructor(error) {
26
35
  super(error);
27
- this.name = "OperationError";
36
+ this.name = _OperationError.errorName;
28
37
  }
29
- }
30
- class OperationInaccessibleError extends Error {
38
+ };
39
+ __publicField$1(_OperationError, "errorName", "OperationError");
40
+ let OperationError = _OperationError;
41
+ const _OperationInaccessibleError = class _OperationInaccessibleError extends Error {
31
42
  constructor() {
32
43
  super("ChainHead operation inaccessible");
33
- this.name = "OperationInaccessibleError";
44
+ this.name = _OperationInaccessibleError.errorName;
34
45
  }
35
- }
46
+ };
47
+ __publicField$1(_OperationInaccessibleError, "errorName", "OperationInaccessibleError");
48
+ let OperationInaccessibleError = _OperationInaccessibleError;
36
49
 
37
50
  const abortablePromiseFn = (fn) => (...args) => new Promise((res, rej) => {
38
51
  let cancel = utils.noop;
@@ -409,24 +422,33 @@ function getChainHead(request) {
409
422
  };
410
423
  }
411
424
 
412
- class BlockHashNotFoundError extends Error {
425
+ var __defProp = Object.defineProperty;
426
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
427
+ var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value);
428
+ const _BlockHashNotFoundError = class _BlockHashNotFoundError extends Error {
413
429
  constructor(hash) {
414
430
  super(`Invalid BlockHash: ${hash}`);
415
- this.name = "BlockHashNotFoundError";
431
+ this.name = _BlockHashNotFoundError.errorName;
416
432
  }
417
- }
418
- class StorageError extends Error {
433
+ };
434
+ __publicField(_BlockHashNotFoundError, "errorName", "BlockHashNotFoundError");
435
+ let BlockHashNotFoundError = _BlockHashNotFoundError;
436
+ const _StorageError = class _StorageError extends Error {
419
437
  constructor(message) {
420
438
  super(`Storage Error: ${message}`);
421
- this.name = "StorageError";
439
+ this.name = _StorageError.errorName;
422
440
  }
423
- }
424
- class CallError extends Error {
441
+ };
442
+ __publicField(_StorageError, "errorName", "StorageError");
443
+ let StorageError = _StorageError;
444
+ const _CallError = class _CallError extends Error {
425
445
  constructor(message) {
426
446
  super(`Call Error: ${message}`);
427
- this.name = "CallError";
447
+ this.name = _CallError.errorName;
428
448
  }
429
- }
449
+ };
450
+ __publicField(_CallError, "errorName", "CallError");
451
+ let CallError = _CallError;
430
452
 
431
453
  const createStorageCb = (archiveRequest) => (hash, inputs, childTrie, onItem, onError, onDone) => {
432
454
  if (inputs.length === 0) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/chainhead/errors.ts","../src/internal-utils/abortablePromiseFn.ts","../src/internal-utils/deferred-promise.ts","../src/internal-utils/noop.ts","../src/methods.ts","../src/chainhead/operation-promise.ts","../src/chainhead/body.ts","../src/chainhead/call.ts","../src/chainhead/header.ts","../src/chainhead/storage-subscription.ts","../src/chainhead/storage.ts","../src/chainhead/unpin.ts","../src/chainhead/chainhead.ts","../src/archive/errors.ts","../src/archive/storage-subscription.ts","../src/archive/storage.ts","../src/archive/archive.ts","../src/transaction/transaction.ts","../src/chainspec.ts","../src/substrate-client.ts"],"sourcesContent":["export class StopError extends Error {\n constructor() {\n super(\"ChainHead stopped\")\n this.name = \"StopError\"\n }\n}\n\nexport class DisjointError extends Error {\n constructor() {\n super(\"ChainHead disjointed\")\n this.name = \"DisjointError\"\n }\n}\n\nexport class OperationLimitError extends Error {\n constructor() {\n super(\"ChainHead operations limit reached\")\n this.name = \"OperationLimitError\"\n }\n}\n\nexport class OperationError extends Error {\n constructor(error: string) {\n super(error)\n this.name = \"OperationError\"\n }\n}\n\nexport class OperationInaccessibleError extends Error {\n constructor() {\n super(\"ChainHead operation inaccessible\")\n this.name = \"OperationInaccessibleError\"\n }\n}\n","import { AbortError, noop } from \"@polkadot-api/utils\"\nimport { AbortablePromiseFn } from \"../common-types\"\n\nexport const abortablePromiseFn =\n <T, A extends Array<any>>(\n fn: (\n ...args: [...[res: (x: T) => void, rej: (e: any) => void], ...A]\n ) => () => void,\n ): AbortablePromiseFn<A, T> =>\n (...args): Promise<T> =>\n new Promise((res, rej) => {\n let cancel = noop\n\n const [actualArgs, abortSignal] =\n args[args.length - 1] instanceof AbortSignal\n ? ([args.slice(0, args.length - 1), args[args.length - 1]] as [\n A,\n AbortSignal,\n ])\n : ([args] as unknown as [A])\n\n const onAbort = () => {\n cancel()\n rej(new AbortError())\n }\n\n abortSignal?.addEventListener(\"abort\", onAbort, { once: true })\n\n const withCleanup =\n <T>(fn: (x: T) => void): ((x: T) => void) =>\n (x) => {\n cancel = noop\n abortSignal?.removeEventListener(\"abort\", onAbort)\n fn(x)\n }\n\n cancel = fn(...[withCleanup(res), withCleanup(rej), ...actualArgs])\n })\n","export interface DeferredPromise<T> {\n promise: Promise<T>\n res: (value: T) => void\n rej: (err: Error) => void\n}\n\nexport function deferred<T>(): DeferredPromise<T> {\n let res: (value: T) => void = () => {}\n let rej: (err: Error) => void = () => {}\n\n const promise = new Promise<T>((_res, _rej) => {\n res = _res\n rej = _rej\n })\n\n return { promise, res, rej }\n}\n","export const noop = (): void => {}\n","const chainHead = {\n body: \"\",\n call: \"\",\n continue: \"\",\n follow: \"\",\n header: \"\",\n stopOperation: \"\",\n storage: \"\",\n unfollow: \"\",\n unpin: \"\",\n followEvent: \"\",\n}\n\nconst chainSpec = {\n chainName: \"\",\n genesisHash: \"\",\n properties: \"\",\n}\n\nconst transaction = {\n broadcast: \"\",\n stop: \"\",\n}\n\nObject.entries({ chainHead, chainSpec, transaction }).forEach(\n ([fnGroupName, methods]) => {\n Object.keys(methods).forEach((methodName) => {\n ;(methods as any)[methodName] = `${fnGroupName}_v1_${methodName}`\n })\n },\n)\n\nexport { chainHead, transaction, chainSpec }\n","import { abortablePromiseFn, noop } from \"@/internal-utils\"\nimport {\n CommonOperationEventsRpc,\n OperationResponseRpc,\n} from \"./json-rpc-types\"\nimport {\n OperationError,\n OperationInaccessibleError,\n OperationLimitError,\n} from \"./errors\"\nimport { ClientInnerRequest } from \"./public-types\"\nimport { chainHead } from \"@/methods\"\n\nexport const createOperationPromise =\n <I extends { operationId: string; event: string }, O, A extends Array<any>>(\n operationName: string,\n factory: (\n ...args: A\n ) => [\n Array<any>,\n (e: I, res: (x: O) => void, rej: (e: Error) => void) => void,\n ],\n ) =>\n (\n request: ClientInnerRequest<\n OperationResponseRpc,\n I | CommonOperationEventsRpc\n >,\n ) =>\n abortablePromiseFn<O, A>((res, rej, ...args) => {\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n const [requestArgs, logicCb] = factory(...args)\n request(operationName, requestArgs, {\n onSuccess: (response, followSubscription) => {\n if (response.result === \"limitReached\")\n return rej(new OperationLimitError())\n\n const { operationId } = response\n const stopOperation = () => {\n request(chainHead.stopOperation, [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n let done = noop\n const _res = (x: O) => {\n isRunning = false\n done()\n res(x)\n }\n const _rej = (x: Error) => {\n isRunning = false\n done()\n rej(x)\n }\n\n done = followSubscription(operationId, {\n next: (e) => {\n const _e = e as CommonOperationEventsRpc\n if (_e.event === \"operationError\")\n rej(new OperationError(_e.error))\n else if (_e.event === \"operationInaccessible\")\n rej(new OperationInaccessibleError())\n else logicCb(e as I, _res, _rej)\n },\n error: _rej,\n })\n\n cancel = () => {\n if (isRunning) {\n done()\n stopOperation()\n }\n }\n },\n onError: rej,\n })\n\n return () => {\n cancel()\n }\n })\n","import { chainHead } from \"@/methods\"\nimport type { OperationBodyDoneRpc } from \"./json-rpc-types\"\nimport { createOperationPromise } from \"./operation-promise\"\n\nexport const createBodyFn = createOperationPromise(\n chainHead.body,\n (hash: string) => [\n [hash],\n (e: OperationBodyDoneRpc, res: (x: Array<string>) => void) => {\n res(e.value)\n },\n ],\n)\n","import { chainHead } from \"@/methods\"\nimport type { OperationCallDoneRpc } from \"./json-rpc-types\"\nimport { createOperationPromise } from \"./operation-promise\"\n\nexport const createCallFn = createOperationPromise(\n chainHead.call,\n (hash: string, fnName: string, callParameters: string) => [\n [hash, fnName, callParameters],\n (e: OperationCallDoneRpc, res: (output: string) => void) => {\n res(e.output)\n },\n ],\n)\n","import { chainHead } from \"@/methods\"\nimport { ClientInnerRequest } from \"./public-types\"\n\nexport const createHeaderFn =\n (request: ClientInnerRequest<string, unknown>) => (hash: string) =>\n new Promise<string>((res, rej) => {\n request(chainHead.header, [hash], {\n onSuccess: res,\n onError: rej,\n })\n })\n","import { noop } from \"@polkadot-api/utils\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\nimport {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { chainHead } from \"@/methods\"\nimport {\n OperationError,\n OperationInaccessibleError,\n OperationLimitError,\n} from \"./errors\"\n\nexport const createStorageCb =\n (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n ): FollowResponse[\"storageSubscription\"] =>\n (hash, inputs, childTrie, onItems, onError, onDone, onDiscardedItems) => {\n if (inputs.length === 0) {\n onDone()\n return noop\n }\n\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n request(chainHead.storage, [hash, inputs, childTrie], {\n onSuccess: (response, followSubscription) => {\n if (\n response.result === \"limitReached\" ||\n response.discardedItems === inputs.length\n )\n return onError(new OperationLimitError())\n\n const { operationId } = response\n const stopOperation = () => {\n request(chainHead.stopOperation, [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n const doneListening = followSubscription(response.operationId, {\n next: (event) => {\n switch (event.event) {\n case \"operationStorageItems\": {\n onItems(event.items)\n break\n }\n case \"operationStorageDone\": {\n _onDone()\n break\n }\n case \"operationError\": {\n _onError(new OperationError(event.error))\n break\n }\n case \"operationInaccessible\": {\n _onError(new OperationInaccessibleError())\n break\n }\n default:\n request(chainHead.continue, [event.operationId])\n }\n },\n error: onError,\n })\n\n cancel = () => {\n doneListening()\n request(chainHead.stopOperation, [response.operationId])\n }\n\n const _onError = (e: Error) => {\n cancel = noop\n doneListening()\n onError(e)\n }\n\n const _onDone = () => {\n cancel = noop\n doneListening()\n onDone()\n }\n\n onDiscardedItems(response.discardedItems)\n },\n onError,\n })\n\n return () => {\n cancel()\n }\n }\n","import { OperationLimitError } from \"./errors\"\nimport type {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { abortablePromiseFn } from \"@/internal-utils\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\n\nexport const createStorageFn = (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n): FollowResponse[\"storage\"] => {\n const cbStore = createStorageCb(request)\n return abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {\n const isDescendants = type.startsWith(\"descendants\")\n let result: any = isDescendants ? [] : null\n\n const onItems: Parameters<typeof cbStore>[3] = isDescendants\n ? (items) => {\n result.push(items)\n }\n : (items) => {\n result = items[0]?.[type as \"value\"]\n }\n\n const cancel = cbStore(\n hash,\n [{ key, type }],\n childTrie ?? null,\n onItems,\n reject,\n () => {\n try {\n resolve(isDescendants ? result.flat() : result)\n } catch (e) {\n reject(e)\n }\n },\n (nDiscarded) => {\n if (nDiscarded > 0) {\n cancel()\n reject(new OperationLimitError())\n }\n },\n )\n return cancel\n })\n}\n","import { chainHead } from \"@/methods\"\nimport { ClientInnerRequest } from \"./public-types\"\n\nexport const createUnpinFn =\n (request: ClientInnerRequest<null, unknown>) => (hashes: string[]) =>\n hashes.length > 0\n ? new Promise<void>((res, rej) => {\n request(chainHead.unpin, [hashes], {\n onSuccess() {\n res()\n },\n onError: rej,\n })\n })\n : Promise.resolve()\n","import {\n DestroyedError,\n Subscriber,\n getSubscriptionsManager,\n ClientRequest,\n FollowSubscriptionCb,\n} from \"@polkadot-api/raw-client\"\nimport type {\n FollowEventWithRuntimeRpc,\n FollowEventWithoutRuntimeRpc,\n OperationEventsRpc,\n StopRpc,\n} from \"./json-rpc-types\"\nimport type {\n ChainHead,\n ClientInnerRequest,\n FollowEventWithoutRuntime,\n FollowEventWithRuntime,\n FollowResponse,\n} from \"./public-types\"\nimport { noop, deferred } from \"@/internal-utils\"\nimport { createBodyFn } from \"./body\"\nimport { createCallFn } from \"./call\"\nimport { createHeaderFn } from \"./header\"\nimport { createStorageFn } from \"./storage\"\nimport { createUnpinFn } from \"./unpin\"\nimport { DisjointError, StopError } from \"./errors\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport { chainHead } from \"@/methods\"\n\ntype FollowEventRpc =\n | FollowEventWithRuntimeRpc\n | FollowEventWithoutRuntimeRpc\n | OperationEventsRpc\n | StopRpc\n\nfunction isOperationEvent(event: FollowEventRpc): event is OperationEventsRpc {\n return (event as OperationEventsRpc).operationId !== undefined\n}\n\nexport function getChainHead(\n request: ClientRequest<string, FollowEventRpc>,\n): ChainHead {\n return (\n withRuntime: boolean,\n onFollowEvent:\n | ((event: FollowEventWithoutRuntime) => void)\n | ((event: FollowEventWithRuntime) => void),\n onFollowError: (e: Error) => void,\n ): FollowResponse => {\n const subscriptions = getSubscriptionsManager<OperationEventsRpc>()\n const ongoingRequests = new Set<() => void>()\n const deferredFollow = deferred<string | Error>()\n // If it's:\n // - a (deferred)`Promise`: it means that the susbscription is active AND that the response to the follow request has not been resolved\n // - a `string`: it means that the subscription is active and that the response to the follow request has been successful.\n // - `null`: it means that the subscription is inactive (for whatever reason: error or unsubscription)\n let followSubscription: Promise<string | Error> | string | null =\n deferredFollow.promise\n\n let stopListeningToFollowEvents = noop\n const unfollowRequest = (subscriptionId: string) => {\n request(chainHead.unfollow, [subscriptionId])\n }\n\n const stopEverything = (sendUnfollow: boolean) => {\n stopListeningToFollowEvents()\n // if it's `null` it means that everything has already been stopped\n if (followSubscription === null) return\n\n if (sendUnfollow) {\n if (followSubscription instanceof Promise) {\n followSubscription.then((x) => {\n if (typeof x === \"string\") unfollowRequest(x)\n })\n } else unfollowRequest(followSubscription)\n }\n followSubscription = null\n ongoingRequests.forEach((cb) => {\n cb()\n })\n ongoingRequests.clear()\n subscriptions.errorAll(new DisjointError())\n }\n\n const onAllFollowEventsNext = (event: FollowEventRpc) => {\n if (isOperationEvent(event))\n return subscriptions.next(event.operationId, event)\n\n switch (event.event) {\n case \"stop\":\n onFollowError(new StopError())\n return stopEverything(false)\n case \"initialized\":\n case \"newBlock\":\n case \"bestBlockChanged\":\n case \"finalized\":\n const { event: type, ...rest } = event\n return onFollowEvent({ type, ...rest } as any)\n }\n }\n\n const onAllFollowEventsError = (error: Error) => {\n onFollowError(error)\n stopEverything(!(error instanceof DestroyedError))\n }\n\n request(chainHead.follow, [withRuntime], {\n onSuccess: (\n subscriptionId: string,\n follow: FollowSubscriptionCb<FollowEventRpc>,\n ) => {\n // If the consumer has unsubscribed in between, then it will be `null`\n // and it should stay that way\n if (followSubscription instanceof Promise) {\n followSubscription = subscriptionId\n stopListeningToFollowEvents = follow(subscriptionId, {\n next: onAllFollowEventsNext,\n error: onAllFollowEventsError,\n })\n }\n deferredFollow.res(subscriptionId)\n },\n onError: (e: Error) => {\n followSubscription = null\n deferredFollow.res(e)\n onFollowError(e)\n },\n })\n\n const fRequest: ClientInnerRequest<any, any> = (method, params, cb) => {\n const disjoint = () => {\n cb?.onError(new DisjointError())\n }\n\n if (followSubscription === null) {\n disjoint()\n return noop\n }\n\n const onSubscription = (subscription: string) => {\n if (!cb) return request(method, [subscription, ...params])\n\n ongoingRequests.add(disjoint)\n\n const onSubscribeOperation = (\n operationId: string,\n subscriber: Subscriber<any>,\n ) => {\n if (followSubscription === null) {\n subscriber.error(new DisjointError())\n return noop\n }\n\n subscriptions.subscribe(operationId, subscriber)\n\n return () => {\n subscriptions.unsubscribe(operationId)\n }\n }\n\n const cleanup = request(method, [subscription, ...params], {\n onSuccess: (response) => {\n ongoingRequests.delete(disjoint)\n cb.onSuccess(response, onSubscribeOperation)\n },\n onError: (e) => {\n ongoingRequests.delete(disjoint)\n cb.onError(e)\n },\n })\n\n return () => {\n ongoingRequests.delete(disjoint)\n cleanup()\n }\n }\n\n if (typeof followSubscription === \"string\")\n return onSubscription(followSubscription)\n\n let onCancel = noop\n followSubscription.then((x) => {\n if (x instanceof Error) return disjoint()\n if (followSubscription) onCancel = onSubscription(x)\n })\n\n return () => {\n onCancel()\n }\n }\n\n return {\n unfollow() {\n stopEverything(true)\n },\n body: createBodyFn(fRequest),\n call: createCallFn(fRequest),\n header: createHeaderFn(fRequest),\n storage: createStorageFn(fRequest),\n storageSubscription: createStorageCb(fRequest),\n unpin: createUnpinFn(fRequest),\n _request: fRequest,\n }\n }\n}\n","export class BlockHashNotFoundError extends Error {\n constructor(hash: string) {\n super(`Invalid BlockHash: ${hash}`)\n this.name = \"BlockHashNotFoundError\"\n }\n}\n\nexport class StorageError extends Error {\n constructor(message: string) {\n super(`Storage Error: ${message}`)\n this.name = \"StorageError\"\n }\n}\n\nexport class CallError extends Error {\n constructor(message: string) {\n super(`Call Error: ${message}`)\n this.name = \"CallError\"\n }\n}\n","import type { ClientRequest } from \"@polkadot-api/raw-client\"\nimport { noop } from \"@polkadot-api/utils\"\nimport { Archive } from \"./public-types\"\nimport { StorageItemResponse } from \"@/chainhead\"\nimport { StorageError } from \"./errors\"\n\ntype StorageEvent = {\n event: \"storage\"\n} & StorageItemResponse\n\ntype StorageDone = {\n event: \"storageDone\"\n}\n\ntype StorageErrorEvent = {\n event: \"storageError\"\n error: string\n}\n\nexport const createStorageCb =\n (\n archiveRequest: ClientRequest<\n string,\n StorageEvent | StorageDone | StorageErrorEvent\n >,\n ): Archive[\"storageSubscription\"] =>\n (hash, inputs, childTrie, onItem, onError, onDone) => {\n if (inputs.length === 0) {\n onDone()\n return noop\n }\n\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n archiveRequest(\"storage\", [hash, inputs, childTrie], {\n onSuccess: (operationId, followSubscription) => {\n const stopOperation = () => {\n archiveRequest(\"stopStorage\", [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n const doneListening = followSubscription(operationId, {\n next: (event) => {\n const { event: type } = event\n if (type === \"storage\") {\n const { event: _, ...item } = event\n onItem(item)\n } else if (type === \"storageDone\") _onDone()\n else _onError(new StorageError(event.error))\n },\n error: onError,\n })\n\n const tearDown = () => {\n cancel = noop\n doneListening()\n }\n\n cancel = () => {\n tearDown()\n stopOperation()\n }\n\n const _onError = (e: Error) => {\n tearDown()\n onError(e)\n }\n\n const _onDone = () => {\n tearDown()\n onDone()\n }\n },\n onError,\n })\n\n return () => {\n cancel()\n }\n }\n","import { abortablePromiseFn } from \"@/internal-utils\"\nimport type { Archive } from \"./public-types\"\n\nexport const createStorageFn = (\n cbStore: Archive[\"storageSubscription\"],\n): Archive[\"storage\"] =>\n abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {\n const isDescendants = type.startsWith(\"descendants\")\n\n let result: any = isDescendants ? [] : null\n const onItem: Parameters<typeof cbStore>[3] = isDescendants\n ? result.push.bind(result)\n : ({ [type]: res }) => {\n result = res\n }\n\n return cbStore(\n hash,\n [{ key, type }],\n childTrie,\n onItem,\n (e) => {\n reject(e)\n result = null\n },\n () => {\n resolve(result)\n result = null\n },\n )\n })\n","import { abortablePromiseFn } from \"@/internal-utils\"\nimport { type ClientRequest } from \"@polkadot-api/raw-client\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport { createStorageFn } from \"./storage\"\nimport { Archive } from \"./public-types\"\nimport { CallError, BlockHashNotFoundError } from \"./errors\"\n\nconst identity =\n <T>() =>\n (x: T): T =>\n x\n\nconst handleInvalidBlockHash =\n <T>() =>\n (result: T | null, hash: string): T => {\n if (result === null) throw new BlockHashNotFoundError(hash)\n return result\n }\n\nexport const getArchive = (request: ClientRequest<any, any>): Archive => {\n const archiveRequest: ClientRequest<any, any> = (method: string, ...rest) =>\n request(`archive_v1_${method}`, ...rest)\n\n const fnCreator =\n <A extends Array<any>>(method: string) =>\n <I, O>(mapper: (input: I, ...args: A) => O) =>\n abortablePromiseFn<O, A>((res, rej, ...args) =>\n archiveRequest(method, args, {\n onSuccess: (x: I) => {\n try {\n res(mapper(x, ...args))\n } catch (e) {\n rej(e)\n }\n },\n onError: rej,\n }),\n )\n\n const header = fnCreator<[hash: string]>(\"header\")(\n handleInvalidBlockHash<string>(),\n )\n\n const body = fnCreator<[hash: string]>(\"body\")(\n handleInvalidBlockHash<string[]>(),\n )\n\n const storageSubscription = createStorageCb(archiveRequest)\n const storage = createStorageFn(storageSubscription)\n\n const call = fnCreator<\n [hash: string, function: string, callParameters: string]\n >(\"call\")((\n x:\n | { success: true; value: string }\n | { success: false; error: string }\n | null,\n hash,\n ) => {\n if (!x) throw new BlockHashNotFoundError(hash)\n if (!x.success) throw new CallError(x.error)\n return x.value\n })\n\n const finalizedHeight = fnCreator<[]>(\"finalizedHeight\")(identity<number>())\n const hashByHeight =\n fnCreator<[height: number]>(\"hashByHeight\")(identity<string[]>())\n\n return {\n header,\n body,\n storageSubscription,\n storage,\n call,\n finalizedHeight,\n hashByHeight,\n }\n}\n","import { noop } from \"@/internal-utils\"\nimport { type ClientRequest } from \"@polkadot-api/raw-client\"\nimport { transaction } from \"@/methods\"\n\nexport const getTransaction =\n (request: ClientRequest<string, any>) =>\n (tx: string, error: (e: Error) => void) => {\n let isDone = false\n let cancel = () => {\n isDone = true\n }\n\n request(transaction.broadcast, [tx], {\n onSuccess: (subscriptionId) => {\n if (subscriptionId !== null) {\n cancel = () => {\n request(transaction.stop, [subscriptionId])\n cancel = noop\n }\n if (isDone) cancel()\n } else if (!isDone) {\n error(new Error(\"Max # of broadcasted transactions has been reached\"))\n }\n },\n onError: error,\n })\n\n return () => {\n cancel()\n }\n }\n","import { type ClientRequest } from \"@polkadot-api/raw-client\"\nimport { abortablePromiseFn } from \"./internal-utils\"\nimport { chainSpec } from \"./methods\"\n\nexport interface ChainSpecData {\n name: string\n genesisHash: string\n properties: any\n}\n\nexport const createGetChainSpec = (clientRequest: ClientRequest<any, any>) => {\n const request = abortablePromiseFn(\n <T>(\n onSuccess: (value: T) => void,\n onError: (e: any) => void,\n method: string,\n params: any[],\n ) => clientRequest(method, params, { onSuccess, onError }),\n )\n let cachedPromise: null | Promise<ChainSpecData> = null\n\n return async (): Promise<ChainSpecData> => {\n if (cachedPromise) return cachedPromise\n return (cachedPromise = Promise.all([\n request<string>(chainSpec.chainName, []),\n request<string>(chainSpec.genesisHash, []),\n request<any>(chainSpec.properties, []),\n ]).then(([name, genesisHash, properties]) => ({\n name,\n genesisHash,\n properties,\n })))\n }\n}\n","import type { JsonRpcProvider } from \"@polkadot-api/json-rpc-provider\"\nimport {\n ClientRequestCb,\n createClient as createRawClient,\n} from \"@polkadot-api/raw-client\"\nimport { getTransaction } from \"./transaction/transaction\"\nimport { getChainHead } from \"./chainhead\"\nimport type { ChainHead } from \"./chainhead\"\nimport type { Transaction } from \"./transaction\"\nimport { UnsubscribeFn } from \"./common-types\"\nimport { abortablePromiseFn } from \"./internal-utils\"\nimport { ChainSpecData, createGetChainSpec } from \"./chainspec\"\nimport { Archive, getArchive } from \"./archive\"\n\nexport interface SubstrateClient {\n archive: Archive\n chainHead: ChainHead\n transaction: Transaction\n destroy: UnsubscribeFn\n getChainSpecData: () => Promise<ChainSpecData>\n request: <T>(\n method: string,\n params: any[],\n abortSignal?: AbortSignal,\n ) => Promise<T>\n _request: <Reply, Notification>(\n method: string,\n params: any[],\n cb?: ClientRequestCb<Reply, Notification>,\n ) => UnsubscribeFn\n}\n\nexport const createClient = (provider: JsonRpcProvider): SubstrateClient => {\n const { request, disconnect } = createRawClient(provider)\n return {\n archive: getArchive(request),\n chainHead: getChainHead(request),\n transaction: getTransaction(request),\n getChainSpecData: createGetChainSpec(request),\n destroy: disconnect,\n request: abortablePromiseFn(\n <T>(\n onSuccess: (value: T) => void,\n onError: (e: any) => void,\n method: string,\n params: any[],\n ) => request(method, params, { onSuccess, onError }),\n ),\n _request: request,\n }\n}\n"],"names":["noop","AbortError","fn","createStorageCb","createStorageFn","getSubscriptionsManager","DestroyedError","createRawClient"],"mappings":";;;;;AAAO,MAAM,kBAAkB,KAAA,CAAM;AAAA,EACnC,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,mBAAmB,CAAA;AACzB,IAAA,IAAA,CAAK,IAAA,GAAO,WAAA;AAAA,EACd;AACF;AAEO,MAAM,sBAAsB,KAAA,CAAM;AAAA,EACvC,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,sBAAsB,CAAA;AAC5B,IAAA,IAAA,CAAK,IAAA,GAAO,eAAA;AAAA,EACd;AACF;AAEO,MAAM,4BAA4B,KAAA,CAAM;AAAA,EAC7C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,oCAAoC,CAAA;AAC1C,IAAA,IAAA,CAAK,IAAA,GAAO,qBAAA;AAAA,EACd;AACF;AAEO,MAAM,uBAAuB,KAAA,CAAM;AAAA,EACxC,YAAY,KAAA,EAAe;AACzB,IAAA,KAAA,CAAM,KAAK,CAAA;AACX,IAAA,IAAA,CAAK,IAAA,GAAO,gBAAA;AAAA,EACd;AACF;AAEO,MAAM,mCAAmC,KAAA,CAAM;AAAA,EACpD,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,kCAAkC,CAAA;AACxC,IAAA,IAAA,CAAK,IAAA,GAAO,4BAAA;AAAA,EACd;AACF;;AC9BO,MAAM,kBAAA,GACX,CACE,EAAA,KAIF,CAAA,GAAI,SACF,IAAI,OAAA,CAAQ,CAAC,GAAA,EAAK,GAAA,KAAQ;AACxB,EAAA,IAAI,MAAA,GAASA,UAAA;AAEb,EAAA,MAAM,CAAC,UAAA,EAAY,WAAW,CAAA,GAC5B,IAAA,CAAK,KAAK,MAAA,GAAS,CAAC,CAAA,YAAa,WAAA,GAC5B,CAAC,IAAA,CAAK,MAAM,CAAA,EAAG,IAAA,CAAK,MAAA,GAAS,CAAC,CAAA,EAAG,IAAA,CAAK,IAAA,CAAK,MAAA,GAAS,CAAC,CAAC,CAAA,GAItD,CAAC,IAAI,CAAA;AAEZ,EAAA,MAAM,UAAU,MAAM;AACpB,IAAA,MAAA,EAAO;AACP,IAAA,GAAA,CAAI,IAAIC,kBAAY,CAAA;AAAA,EACtB,CAAA;AAEA,EAAA,WAAA,EAAa,iBAAiB,OAAA,EAAS,OAAA,EAAS,EAAE,IAAA,EAAM,MAAM,CAAA;AAE9D,EAAA,MAAM,WAAA,GACJ,CAAIC,GAAAA,KACJ,CAAC,CAAA,KAAM;AACL,IAAA,MAAA,GAASF,UAAA;AACT,IAAA,WAAA,EAAa,mBAAA,CAAoB,SAAS,OAAO,CAAA;AACjD,IAAAE,IAAG,CAAC,CAAA;AAAA,EACN,CAAA;AAEF,EAAA,MAAA,GAAS,EAAA,CAAG,GAAG,CAAC,WAAA,CAAY,GAAG,CAAA,EAAG,WAAA,CAAY,GAAG,CAAA,EAAG,GAAG,UAAU,CAAC,CAAA;AACpE,CAAC,CAAA;;AC/BE,SAAS,QAAA,GAAkC;AAChD,EAAA,IAAI,MAA0B,MAAM;AAAA,EAAC,CAAA;AACrC,EAAA,IAAI,MAA4B,MAAM;AAAA,EAAC,CAAA;AAEvC,EAAA,MAAM,OAAA,GAAU,IAAI,OAAA,CAAW,CAAC,MAAM,IAAA,KAAS;AAC7C,IAAA,GAAA,GAAM,IAAA;AACN,IAAA,GAAA,GAAM,IAAA;AAAA,EACR,CAAC,CAAA;AAED,EAAA,OAAO,EAAE,OAAA,EAAS,GAAA,EAAK,GAAA,EAAI;AAC7B;;AChBO,MAAM,OAAO,MAAY;AAAC,CAAA;;ACAjC,MAAM,SAAA,GAAY;AAAA,EAChB,IAAA,EAAM,EAAA;AAAA,EACN,IAAA,EAAM,EAAA;AAAA,EACN,QAAA,EAAU,EAAA;AAAA,EACV,MAAA,EAAQ,EAAA;AAAA,EACR,MAAA,EAAQ,EAAA;AAAA,EACR,aAAA,EAAe,EAAA;AAAA,EACf,OAAA,EAAS,EAAA;AAAA,EACT,QAAA,EAAU,EAAA;AAAA,EACV,KAAA,EAAO,EAAA;AAAA,EACP,WAAA,EAAa;AACf,CAAA;AAEA,MAAM,SAAA,GAAY;AAAA,EAChB,SAAA,EAAW,EAAA;AAAA,EACX,WAAA,EAAa,EAAA;AAAA,EACb,UAAA,EAAY;AACd,CAAA;AAEA,MAAM,WAAA,GAAc;AAAA,EAClB,SAAA,EAAW,EAAA;AAAA,EACX,IAAA,EAAM;AACR,CAAA;AAEA,MAAA,CAAO,QAAQ,EAAE,SAAA,EAAW,SAAA,EAAW,WAAA,EAAa,CAAA,CAAE,OAAA;AAAA,EACpD,CAAC,CAAC,WAAA,EAAa,OAAO,CAAA,KAAM;AAC1B,IAAA,MAAA,CAAO,IAAA,CAAK,OAAO,CAAA,CAAE,OAAA,CAAQ,CAAC,UAAA,KAAe;AAC1C,MAAC,QAAgB,UAAU,CAAA,GAAI,CAAA,EAAG,WAAW,OAAO,UAAU,CAAA,CAAA;AAAA,IACjE,CAAC,CAAA;AAAA,EACH;AACF,CAAA;;ACjBO,MAAM,sBAAA,GACX,CACE,aAAA,EACA,OAAA,KAOF,CACE,YAKA,kBAAA,CAAyB,CAAC,GAAA,EAAK,GAAA,EAAA,GAAQ,IAAA,KAAS;AAC9C,EAAA,IAAI,SAAA,GAAY,IAAA;AAChB,EAAA,IAAI,SAAS,MAAM;AACjB,IAAA,SAAA,GAAY,KAAA;AAAA,EACd,CAAA;AAEA,EAAA,MAAM,CAAC,WAAA,EAAa,OAAO,CAAA,GAAI,OAAA,CAAQ,GAAG,IAAI,CAAA;AAC9C,EAAA,OAAA,CAAQ,eAAe,WAAA,EAAa;AAAA,IAClC,SAAA,EAAW,CAAC,QAAA,EAAU,kBAAA,KAAuB;AAC3C,MAAA,IAAI,SAAS,MAAA,KAAW,cAAA;AACtB,QAAA,OAAO,GAAA,CAAI,IAAI,mBAAA,EAAqB,CAAA;AAEtC,MAAA,MAAM,EAAE,aAAY,GAAI,QAAA;AACxB,MAAA,MAAM,gBAAgB,MAAM;AAC1B,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,WAAW,CAAC,CAAA;AAAA,MAChD,CAAA;AAEA,MAAA,IAAI,CAAC,SAAA,EAAW,OAAO,aAAA,EAAc;AAErC,MAAA,IAAI,IAAA,GAAO,IAAA;AACX,MAAA,MAAM,IAAA,GAAO,CAAC,CAAA,KAAS;AACrB,QAAA,SAAA,GAAY,KAAA;AACZ,QAAA,IAAA,EAAK;AACL,QAAA,GAAA,CAAI,CAAC,CAAA;AAAA,MACP,CAAA;AACA,MAAA,MAAM,IAAA,GAAO,CAAC,CAAA,KAAa;AACzB,QAAA,SAAA,GAAY,KAAA;AACZ,QAAA,IAAA,EAAK;AACL,QAAA,GAAA,CAAI,CAAC,CAAA;AAAA,MACP,CAAA;AAEA,MAAA,IAAA,GAAO,mBAAmB,WAAA,EAAa;AAAA,QACrC,IAAA,EAAM,CAAC,CAAA,KAAM;AACX,UAAA,MAAM,EAAA,GAAK,CAAA;AACX,UAAA,IAAI,GAAG,KAAA,KAAU,gBAAA;AACf,YAAA,GAAA,CAAI,IAAI,cAAA,CAAe,EAAA,CAAG,KAAK,CAAC,CAAA;AAAA,eAAA,IACzB,GAAG,KAAA,KAAU,uBAAA;AACpB,YAAA,GAAA,CAAI,IAAI,4BAA4B,CAAA;AAAA,eACjC,OAAA,CAAQ,CAAA,EAAQ,IAAA,EAAM,IAAI,CAAA;AAAA,QACjC,CAAA;AAAA,QACA,KAAA,EAAO;AAAA,OACR,CAAA;AAED,MAAA,MAAA,GAAS,MAAM;AACb,QAAA,IAAI,SAAA,EAAW;AACb,UAAA,IAAA,EAAK;AACL,UAAA,aAAA,EAAc;AAAA,QAChB;AAAA,MACF,CAAA;AAAA,IACF,CAAA;AAAA,IACA,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,OAAO,MAAM;AACX,IAAA,MAAA,EAAO;AAAA,EACT,CAAA;AACF,CAAC,CAAA;;ACjFE,MAAM,YAAA,GAAe,sBAAA;AAAA,EAC1B,SAAA,CAAU,IAAA;AAAA,EACV,CAAC,IAAA,KAAiB;AAAA,IAChB,CAAC,IAAI,CAAA;AAAA,IACL,CAAC,GAAyB,GAAA,KAAoC;AAC5D,MAAA,GAAA,CAAI,EAAE,KAAK,CAAA;AAAA,IACb;AAAA;AAEJ,CAAA;;ACRO,MAAM,YAAA,GAAe,sBAAA;AAAA,EAC1B,SAAA,CAAU,IAAA;AAAA,EACV,CAAC,IAAA,EAAc,MAAA,EAAgB,cAAA,KAA2B;AAAA,IACxD,CAAC,IAAA,EAAM,MAAA,EAAQ,cAAc,CAAA;AAAA,IAC7B,CAAC,GAAyB,GAAA,KAAkC;AAC1D,MAAA,GAAA,CAAI,EAAE,MAAM,CAAA;AAAA,IACd;AAAA;AAEJ,CAAA;;ACTO,MAAM,cAAA,GACX,CAAC,OAAA,KAAiD,CAAC,SACjD,IAAI,OAAA,CAAgB,CAAC,GAAA,EAAK,GAAA,KAAQ;AAChC,EAAA,OAAA,CAAQ,SAAA,CAAU,MAAA,EAAQ,CAAC,IAAI,CAAA,EAAG;AAAA,IAChC,SAAA,EAAW,GAAA;AAAA,IACX,OAAA,EAAS;AAAA,GACV,CAAA;AACH,CAAC,CAAA;;ACOE,MAAMC,iBAAA,GACX,CACE,OAAA,KAQF,CAAC,IAAA,EAAM,QAAQ,SAAA,EAAW,OAAA,EAAS,OAAA,EAAS,MAAA,EAAQ,gBAAA,KAAqB;AACvE,EAAA,IAAI,MAAA,CAAO,WAAW,CAAA,EAAG;AACvB,IAAA,MAAA,EAAO;AACP,IAAA,OAAOH,UAAA;AAAA,EACT;AAEA,EAAA,IAAI,SAAA,GAAY,IAAA;AAChB,EAAA,IAAI,SAAS,MAAM;AACjB,IAAA,SAAA,GAAY,KAAA;AAAA,EACd,CAAA;AAEA,EAAA,OAAA,CAAQ,UAAU,OAAA,EAAS,CAAC,IAAA,EAAM,MAAA,EAAQ,SAAS,CAAA,EAAG;AAAA,IACpD,SAAA,EAAW,CAAC,QAAA,EAAU,kBAAA,KAAuB;AAC3C,MAAA,IACE,QAAA,CAAS,MAAA,KAAW,cAAA,IACpB,QAAA,CAAS,mBAAmB,MAAA,CAAO,MAAA;AAEnC,QAAA,OAAO,OAAA,CAAQ,IAAI,mBAAA,EAAqB,CAAA;AAE1C,MAAA,MAAM,EAAE,aAAY,GAAI,QAAA;AACxB,MAAA,MAAM,gBAAgB,MAAM;AAC1B,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,WAAW,CAAC,CAAA;AAAA,MAChD,CAAA;AAEA,MAAA,IAAI,CAAC,SAAA,EAAW,OAAO,aAAA,EAAc;AAErC,MAAA,MAAM,aAAA,GAAgB,kBAAA,CAAmB,QAAA,CAAS,WAAA,EAAa;AAAA,QAC7D,IAAA,EAAM,CAAC,KAAA,KAAU;AACf,UAAA,QAAQ,MAAM,KAAA;AAAO,YACnB,KAAK,uBAAA,EAAyB;AAC5B,cAAA,OAAA,CAAQ,MAAM,KAAK,CAAA;AACnB,cAAA;AAAA,YACF;AAAA,YACA,KAAK,sBAAA,EAAwB;AAC3B,cAAA,OAAA,EAAQ;AACR,cAAA;AAAA,YACF;AAAA,YACA,KAAK,gBAAA,EAAkB;AACrB,cAAA,QAAA,CAAS,IAAI,cAAA,CAAe,KAAA,CAAM,KAAK,CAAC,CAAA;AACxC,cAAA;AAAA,YACF;AAAA,YACA,KAAK,uBAAA,EAAyB;AAC5B,cAAA,QAAA,CAAS,IAAI,4BAA4B,CAAA;AACzC,cAAA;AAAA,YACF;AAAA,YACA;AACE,cAAA,OAAA,CAAQ,SAAA,CAAU,QAAA,EAAU,CAAC,KAAA,CAAM,WAAW,CAAC,CAAA;AAAA;AACnD,QACF,CAAA;AAAA,QACA,KAAA,EAAO;AAAA,OACR,CAAA;AAED,MAAA,MAAA,GAAS,MAAM;AACb,QAAA,aAAA,EAAc;AACd,QAAA,OAAA,CAAQ,SAAA,CAAU,aAAA,EAAe,CAAC,QAAA,CAAS,WAAW,CAAC,CAAA;AAAA,MACzD,CAAA;AAEA,MAAA,MAAM,QAAA,GAAW,CAAC,CAAA,KAAa;AAC7B,QAAA,MAAA,GAASA,UAAA;AACT,QAAA,aAAA,EAAc;AACd,QAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACX,CAAA;AAEA,MAAA,MAAM,UAAU,MAAM;AACpB,QAAA,MAAA,GAASA,UAAA;AACT,QAAA,aAAA,EAAc;AACd,QAAA,MAAA,EAAO;AAAA,MACT,CAAA;AAEA,MAAA,gBAAA,CAAiB,SAAS,cAAc,CAAA;AAAA,IAC1C,CAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,OAAO,MAAM;AACX,IAAA,MAAA,EAAO;AAAA,EACT,CAAA;AACF,CAAA;;AC3FK,MAAMI,iBAAA,GAAkB,CAC7B,OAAA,KAO8B;AAC9B,EAAA,MAAM,OAAA,GAAUD,kBAAgB,OAAO,CAAA;AACvC,EAAA,OAAO,mBAAmB,CAAC,OAAA,EAAS,QAAQ,IAAA,EAAM,IAAA,EAAM,KAAK,SAAA,KAAc;AACzE,IAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,UAAA,CAAW,aAAa,CAAA;AACnD,IAAA,IAAI,MAAA,GAAc,aAAA,GAAgB,EAAC,GAAI,IAAA;AAEvC,IAAA,MAAM,OAAA,GAAyC,aAAA,GAC3C,CAAC,KAAA,KAAU;AACT,MAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,IACnB,CAAA,GACA,CAAC,KAAA,KAAU;AACT,MAAA,MAAA,GAAS,KAAA,CAAM,CAAC,CAAA,GAAI,IAAe,CAAA;AAAA,IACrC,CAAA;AAEJ,IAAA,MAAM,MAAA,GAAS,OAAA;AAAA,MACb,IAAA;AAAA,MACA,CAAC,EAAE,GAAA,EAAK,IAAA,EAAM,CAAA;AAAA,MACd,SAAA,IAAa,IAAA;AAAA,MACb,OAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAM;AACJ,QAAA,IAAI;AACF,UAAA,OAAA,CAAQ,aAAA,GAAgB,MAAA,CAAO,IAAA,EAAK,GAAI,MAAM,CAAA;AAAA,QAChD,SAAS,CAAA,EAAG;AACV,UAAA,MAAA,CAAO,CAAC,CAAA;AAAA,QACV;AAAA,MACF,CAAA;AAAA,MACA,CAAC,UAAA,KAAe;AACd,QAAA,IAAI,aAAa,CAAA,EAAG;AAClB,UAAA,MAAA,EAAO;AACP,UAAA,MAAA,CAAO,IAAI,qBAAqB,CAAA;AAAA,QAClC;AAAA,MACF;AAAA,KACF;AACA,IAAA,OAAO,MAAA;AAAA,EACT,CAAC,CAAA;AACH,CAAA;;ACtDO,MAAM,aAAA,GACX,CAAC,OAAA,KAA+C,CAAC,MAAA,KAC/C,MAAA,CAAO,MAAA,GAAS,CAAA,GACZ,IAAI,OAAA,CAAc,CAAC,GAAA,EAAK,GAAA,KAAQ;AAC9B,EAAA,OAAA,CAAQ,SAAA,CAAU,KAAA,EAAO,CAAC,MAAM,CAAA,EAAG;AAAA,IACjC,SAAA,GAAY;AACV,MAAA,GAAA,EAAI;AAAA,IACN,CAAA;AAAA,IACA,OAAA,EAAS;AAAA,GACV,CAAA;AACH,CAAC,CAAA,GACD,QAAQ,OAAA,EAAQ;;ACsBxB,SAAS,iBAAiB,KAAA,EAAoD;AAC5E,EAAA,OAAQ,MAA6B,WAAA,KAAgB,MAAA;AACvD;AAEO,SAAS,aACd,OAAA,EACW;AACX,EAAA,OAAO,CACL,WAAA,EACA,aAAA,EAGA,aAAA,KACmB;AACnB,IAAA,MAAM,gBAAgBE,iCAAA,EAA4C;AAClE,IAAA,MAAM,eAAA,uBAAsB,GAAA,EAAgB;AAC5C,IAAA,MAAM,iBAAiB,QAAA,EAAyB;AAKhD,IAAA,IAAI,qBACF,cAAA,CAAe,OAAA;AAEjB,IAAA,IAAI,2BAAA,GAA8B,IAAA;AAClC,IAAA,MAAM,eAAA,GAAkB,CAAC,cAAA,KAA2B;AAClD,MAAA,OAAA,CAAQ,SAAA,CAAU,QAAA,EAAU,CAAC,cAAc,CAAC,CAAA;AAAA,IAC9C,CAAA;AAEA,IAAA,MAAM,cAAA,GAAiB,CAAC,YAAA,KAA0B;AAChD,MAAA,2BAAA,EAA4B;AAE5B,MAAA,IAAI,uBAAuB,IAAA,EAAM;AAEjC,MAAA,IAAI,YAAA,EAAc;AAChB,QAAA,IAAI,8BAA8B,OAAA,EAAS;AACzC,UAAA,kBAAA,CAAmB,IAAA,CAAK,CAAC,CAAA,KAAM;AAC7B,YAAA,IAAI,OAAO,CAAA,KAAM,QAAA,EAAU,eAAA,CAAgB,CAAC,CAAA;AAAA,UAC9C,CAAC,CAAA;AAAA,QACH,CAAA,sBAAuB,kBAAkB,CAAA;AAAA,MAC3C;AACA,MAAA,kBAAA,GAAqB,IAAA;AACrB,MAAA,eAAA,CAAgB,OAAA,CAAQ,CAAC,EAAA,KAAO;AAC9B,QAAA,EAAA,EAAG;AAAA,MACL,CAAC,CAAA;AACD,MAAA,eAAA,CAAgB,KAAA,EAAM;AACtB,MAAA,aAAA,CAAc,QAAA,CAAS,IAAI,aAAA,EAAe,CAAA;AAAA,IAC5C,CAAA;AAEA,IAAA,MAAM,qBAAA,GAAwB,CAAC,KAAA,KAA0B;AACvD,MAAA,IAAI,iBAAiB,KAAK,CAAA;AACxB,QAAA,OAAO,aAAA,CAAc,IAAA,CAAK,KAAA,CAAM,WAAA,EAAa,KAAK,CAAA;AAEpD,MAAA,QAAQ,MAAM,KAAA;AAAO,QACnB,KAAK,MAAA;AACH,UAAA,aAAA,CAAc,IAAI,WAAW,CAAA;AAC7B,UAAA,OAAO,eAAe,KAAK,CAAA;AAAA,QAC7B,KAAK,aAAA;AAAA,QACL,KAAK,UAAA;AAAA,QACL,KAAK,kBAAA;AAAA,QACL,KAAK,WAAA;AACH,UAAA,MAAM,EAAE,KAAA,EAAO,IAAA,EAAM,GAAG,MAAK,GAAI,KAAA;AACjC,UAAA,OAAO,aAAA,CAAc,EAAE,IAAA,EAAM,GAAG,MAAa,CAAA;AAAA;AACjD,IACF,CAAA;AAEA,IAAA,MAAM,sBAAA,GAAyB,CAAC,KAAA,KAAiB;AAC/C,MAAA,aAAA,CAAc,KAAK,CAAA;AACnB,MAAA,cAAA,CAAe,EAAE,iBAAiBC,wBAAA,CAAe,CAAA;AAAA,IACnD,CAAA;AAEA,IAAA,OAAA,CAAQ,SAAA,CAAU,MAAA,EAAQ,CAAC,WAAW,CAAA,EAAG;AAAA,MACvC,SAAA,EAAW,CACT,cAAA,EACA,MAAA,KACG;AAGH,QAAA,IAAI,8BAA8B,OAAA,EAAS;AACzC,UAAA,kBAAA,GAAqB,cAAA;AACrB,UAAA,2BAAA,GAA8B,OAAO,cAAA,EAAgB;AAAA,YACnD,IAAA,EAAM,qBAAA;AAAA,YACN,KAAA,EAAO;AAAA,WACR,CAAA;AAAA,QACH;AACA,QAAA,cAAA,CAAe,IAAI,cAAc,CAAA;AAAA,MACnC,CAAA;AAAA,MACA,OAAA,EAAS,CAAC,CAAA,KAAa;AACrB,QAAA,kBAAA,GAAqB,IAAA;AACrB,QAAA,cAAA,CAAe,IAAI,CAAC,CAAA;AACpB,QAAA,aAAA,CAAc,CAAC,CAAA;AAAA,MACjB;AAAA,KACD,CAAA;AAED,IAAA,MAAM,QAAA,GAAyC,CAAC,MAAA,EAAQ,MAAA,EAAQ,EAAA,KAAO;AACrE,MAAA,MAAM,WAAW,MAAM;AACrB,QAAA,EAAA,EAAI,OAAA,CAAQ,IAAI,aAAA,EAAe,CAAA;AAAA,MACjC,CAAA;AAEA,MAAA,IAAI,uBAAuB,IAAA,EAAM;AAC/B,QAAA,QAAA,EAAS;AACT,QAAA,OAAO,IAAA;AAAA,MACT;AAEA,MAAA,MAAM,cAAA,GAAiB,CAAC,YAAA,KAAyB;AAC/C,QAAA,IAAI,CAAC,IAAI,OAAO,OAAA,CAAQ,QAAQ,CAAC,YAAA,EAAc,GAAG,MAAM,CAAC,CAAA;AAEzD,QAAA,eAAA,CAAgB,IAAI,QAAQ,CAAA;AAE5B,QAAA,MAAM,oBAAA,GAAuB,CAC3B,WAAA,EACA,UAAA,KACG;AACH,UAAA,IAAI,uBAAuB,IAAA,EAAM;AAC/B,YAAA,UAAA,CAAW,KAAA,CAAM,IAAI,aAAA,EAAe,CAAA;AACpC,YAAA,OAAO,IAAA;AAAA,UACT;AAEA,UAAA,aAAA,CAAc,SAAA,CAAU,aAAa,UAAU,CAAA;AAE/C,UAAA,OAAO,MAAM;AACX,YAAA,aAAA,CAAc,YAAY,WAAW,CAAA;AAAA,UACvC,CAAA;AAAA,QACF,CAAA;AAEA,QAAA,MAAM,UAAU,OAAA,CAAQ,MAAA,EAAQ,CAAC,YAAA,EAAc,GAAG,MAAM,CAAA,EAAG;AAAA,UACzD,SAAA,EAAW,CAAC,QAAA,KAAa;AACvB,YAAA,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAC/B,YAAA,EAAA,CAAG,SAAA,CAAU,UAAU,oBAAoB,CAAA;AAAA,UAC7C,CAAA;AAAA,UACA,OAAA,EAAS,CAAC,CAAA,KAAM;AACd,YAAA,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAC/B,YAAA,EAAA,CAAG,QAAQ,CAAC,CAAA;AAAA,UACd;AAAA,SACD,CAAA;AAED,QAAA,OAAO,MAAM;AACX,UAAA,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAC/B,UAAA,OAAA,EAAQ;AAAA,QACV,CAAA;AAAA,MACF,CAAA;AAEA,MAAA,IAAI,OAAO,kBAAA,KAAuB,QAAA;AAChC,QAAA,OAAO,eAAe,kBAAkB,CAAA;AAE1C,MAAA,IAAI,QAAA,GAAW,IAAA;AACf,MAAA,kBAAA,CAAmB,IAAA,CAAK,CAAC,CAAA,KAAM;AAC7B,QAAA,IAAI,CAAA,YAAa,KAAA,EAAO,OAAO,QAAA,EAAS;AACxC,QAAA,IAAI,kBAAA,EAAoB,QAAA,GAAW,cAAA,CAAe,CAAC,CAAA;AAAA,MACrD,CAAC,CAAA;AAED,MAAA,OAAO,MAAM;AACX,QAAA,QAAA,EAAS;AAAA,MACX,CAAA;AAAA,IACF,CAAA;AAEA,IAAA,OAAO;AAAA,MACL,QAAA,GAAW;AACT,QAAA,cAAA,CAAe,IAAI,CAAA;AAAA,MACrB,CAAA;AAAA,MACA,IAAA,EAAM,aAAa,QAAQ,CAAA;AAAA,MAC3B,IAAA,EAAM,aAAa,QAAQ,CAAA;AAAA,MAC3B,MAAA,EAAQ,eAAe,QAAQ,CAAA;AAAA,MAC/B,OAAA,EAASF,kBAAgB,QAAQ,CAAA;AAAA,MACjC,mBAAA,EAAqBD,kBAAgB,QAAQ,CAAA;AAAA,MAC7C,KAAA,EAAO,cAAc,QAAQ,CAAA;AAAA,MAC7B,QAAA,EAAU;AAAA,KACZ;AAAA,EACF,CAAA;AACF;;AC7MO,MAAM,+BAA+B,KAAA,CAAM;AAAA,EAChD,YAAY,IAAA,EAAc;AACxB,IAAA,KAAA,CAAM,CAAA,mBAAA,EAAsB,IAAI,CAAA,CAAE,CAAA;AAClC,IAAA,IAAA,CAAK,IAAA,GAAO,wBAAA;AAAA,EACd;AACF;AAEO,MAAM,qBAAqB,KAAA,CAAM;AAAA,EACtC,YAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,CAAA,eAAA,EAAkB,OAAO,CAAA,CAAE,CAAA;AACjC,IAAA,IAAA,CAAK,IAAA,GAAO,cAAA;AAAA,EACd;AACF;AAEO,MAAM,kBAAkB,KAAA,CAAM;AAAA,EACnC,YAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,CAAA,YAAA,EAAe,OAAO,CAAA,CAAE,CAAA;AAC9B,IAAA,IAAA,CAAK,IAAA,GAAO,WAAA;AAAA,EACd;AACF;;ACAO,MAAM,eAAA,GACX,CACE,cAAA,KAKF,CAAC,MAAM,MAAA,EAAQ,SAAA,EAAW,MAAA,EAAQ,OAAA,EAAS,MAAA,KAAW;AACpD,EAAA,IAAI,MAAA,CAAO,WAAW,CAAA,EAAG;AACvB,IAAA,MAAA,EAAO;AACP,IAAA,OAAOH,UAAA;AAAA,EACT;AAEA,EAAA,IAAI,SAAA,GAAY,IAAA;AAChB,EAAA,IAAI,SAAS,MAAM;AACjB,IAAA,SAAA,GAAY,KAAA;AAAA,EACd,CAAA;AAEA,EAAA,cAAA,CAAe,SAAA,EAAW,CAAC,IAAA,EAAM,MAAA,EAAQ,SAAS,CAAA,EAAG;AAAA,IACnD,SAAA,EAAW,CAAC,WAAA,EAAa,kBAAA,KAAuB;AAC9C,MAAA,MAAM,gBAAgB,MAAM;AAC1B,QAAA,cAAA,CAAe,aAAA,EAAe,CAAC,WAAW,CAAC,CAAA;AAAA,MAC7C,CAAA;AAEA,MAAA,IAAI,CAAC,SAAA,EAAW,OAAO,aAAA,EAAc;AAErC,MAAA,MAAM,aAAA,GAAgB,mBAAmB,WAAA,EAAa;AAAA,QACpD,IAAA,EAAM,CAAC,KAAA,KAAU;AACf,UAAA,MAAM,EAAE,KAAA,EAAO,IAAA,EAAK,GAAI,KAAA;AACxB,UAAA,IAAI,SAAS,SAAA,EAAW;AACtB,YAAA,MAAM,EAAE,KAAA,EAAO,CAAA,EAAG,GAAG,MAAK,GAAI,KAAA;AAC9B,YAAA,MAAA,CAAO,IAAI,CAAA;AAAA,UACb,CAAA,MAAA,IAAW,IAAA,KAAS,aAAA,EAAe,OAAA,EAAQ;AAAA,eACtC,QAAA,CAAS,IAAI,YAAA,CAAa,KAAA,CAAM,KAAK,CAAC,CAAA;AAAA,QAC7C,CAAA;AAAA,QACA,KAAA,EAAO;AAAA,OACR,CAAA;AAED,MAAA,MAAM,WAAW,MAAM;AACrB,QAAA,MAAA,GAASA,UAAA;AACT,QAAA,aAAA,EAAc;AAAA,MAChB,CAAA;AAEA,MAAA,MAAA,GAAS,MAAM;AACb,QAAA,QAAA,EAAS;AACT,QAAA,aAAA,EAAc;AAAA,MAChB,CAAA;AAEA,MAAA,MAAM,QAAA,GAAW,CAAC,CAAA,KAAa;AAC7B,QAAA,QAAA,EAAS;AACT,QAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACX,CAAA;AAEA,MAAA,MAAM,UAAU,MAAM;AACpB,QAAA,QAAA,EAAS;AACT,QAAA,MAAA,EAAO;AAAA,MACT,CAAA;AAAA,IACF,CAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,OAAO,MAAM;AACX,IAAA,MAAA,EAAO;AAAA,EACT,CAAA;AACF,CAAA;;AChFK,MAAM,eAAA,GAAkB,CAC7B,OAAA,KAEA,kBAAA,CAAmB,CAAC,SAAS,MAAA,EAAQ,IAAA,EAAM,IAAA,EAAM,GAAA,EAAK,SAAA,KAAc;AAClE,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,UAAA,CAAW,aAAa,CAAA;AAEnD,EAAA,IAAI,MAAA,GAAc,aAAA,GAAgB,EAAC,GAAI,IAAA;AACvC,EAAA,MAAM,MAAA,GAAwC,aAAA,GAC1C,MAAA,CAAO,IAAA,CAAK,IAAA,CAAK,MAAM,CAAA,GACvB,CAAC,EAAE,CAAC,IAAA,GAAO,GAAA,EAAI,KAAM;AACnB,IAAA,MAAA,GAAS,GAAA;AAAA,EACX,CAAA;AAEJ,EAAA,OAAO,OAAA;AAAA,IACL,IAAA;AAAA,IACA,CAAC,EAAE,GAAA,EAAK,IAAA,EAAM,CAAA;AAAA,IACd,SAAA;AAAA,IACA,MAAA;AAAA,IACA,CAAC,CAAA,KAAM;AACL,MAAA,MAAA,CAAO,CAAC,CAAA;AACR,MAAA,MAAA,GAAS,IAAA;AAAA,IACX,CAAA;AAAA,IACA,MAAM;AACJ,MAAA,OAAA,CAAQ,MAAM,CAAA;AACd,MAAA,MAAA,GAAS,IAAA;AAAA,IACX;AAAA,GACF;AACF,CAAC,CAAA;;ACvBH,MAAM,QAAA,GACJ,MACA,CAAC,CAAA,KACC,CAAA;AAEJ,MAAM,sBAAA,GACJ,MACA,CAAC,MAAA,EAAkB,IAAA,KAAoB;AACrC,EAAA,IAAI,MAAA,KAAW,IAAA,EAAM,MAAM,IAAI,uBAAuB,IAAI,CAAA;AAC1D,EAAA,OAAO,MAAA;AACT,CAAA;AAEK,MAAM,UAAA,GAAa,CAAC,OAAA,KAA8C;AACvE,EAAA,MAAM,cAAA,GAA0C,CAAC,MAAA,EAAA,GAAmB,IAAA,KAClE,QAAQ,CAAA,WAAA,EAAc,MAAM,CAAA,CAAA,EAAI,GAAG,IAAI,CAAA;AAEzC,EAAA,MAAM,SAAA,GACJ,CAAuB,MAAA,KACvB,CAAO,MAAA,KACL,kBAAA;AAAA,IAAyB,CAAC,GAAA,EAAK,GAAA,EAAA,GAAQ,IAAA,KACrC,cAAA,CAAe,QAAQ,IAAA,EAAM;AAAA,MAC3B,SAAA,EAAW,CAAC,CAAA,KAAS;AACnB,QAAA,IAAI;AACF,UAAA,GAAA,CAAI,MAAA,CAAO,CAAA,EAAG,GAAG,IAAI,CAAC,CAAA;AAAA,QACxB,SAAS,CAAA,EAAG;AACV,UAAA,GAAA,CAAI,CAAC,CAAA;AAAA,QACP;AAAA,MACF,CAAA;AAAA,MACA,OAAA,EAAS;AAAA,KACV;AAAA,GACH;AAEJ,EAAA,MAAM,MAAA,GAAS,UAA0B,QAAQ,CAAA;AAAA,IAC/C,sBAAA;AAA+B,GACjC;AAEA,EAAA,MAAM,IAAA,GAAO,UAA0B,MAAM,CAAA;AAAA,IAC3C,sBAAA;AAAiC,GACnC;AAEA,EAAA,MAAM,mBAAA,GAAsB,gBAAgB,cAAc,CAAA;AAC1D,EAAA,MAAM,OAAA,GAAU,gBAAgB,mBAAmB,CAAA;AAEnD,EAAA,MAAM,OAAO,SAAA,CAEX,MAAM,CAAA,CAAE,CACR,GAIA,IAAA,KACG;AACH,IAAA,IAAI,CAAC,CAAA,EAAG,MAAM,IAAI,uBAAuB,IAAI,CAAA;AAC7C,IAAA,IAAI,CAAC,CAAA,CAAE,OAAA,QAAe,IAAI,SAAA,CAAU,EAAE,KAAK,CAAA;AAC3C,IAAA,OAAO,CAAA,CAAE,KAAA;AAAA,EACX,CAAC,CAAA;AAED,EAAA,MAAM,eAAA,GAAkB,SAAA,CAAc,iBAAiB,CAAA,CAAE,UAAkB,CAAA;AAC3E,EAAA,MAAM,YAAA,GACJ,SAAA,CAA4B,cAAc,CAAA,CAAE,UAAoB,CAAA;AAElE,EAAA,OAAO;AAAA,IACL,MAAA;AAAA,IACA,IAAA;AAAA,IACA,mBAAA;AAAA,IACA,OAAA;AAAA,IACA,IAAA;AAAA,IACA,eAAA;AAAA,IACA;AAAA,GACF;AACF,CAAA;;ACzEO,MAAM,cAAA,GACX,CAAC,OAAA,KACD,CAAC,IAAY,KAAA,KAA8B;AACzC,EAAA,IAAI,MAAA,GAAS,KAAA;AACb,EAAA,IAAI,SAAS,MAAM;AACjB,IAAA,MAAA,GAAS,IAAA;AAAA,EACX,CAAA;AAEA,EAAA,OAAA,CAAQ,WAAA,CAAY,SAAA,EAAW,CAAC,EAAE,CAAA,EAAG;AAAA,IACnC,SAAA,EAAW,CAAC,cAAA,KAAmB;AAC7B,MAAA,IAAI,mBAAmB,IAAA,EAAM;AAC3B,QAAA,MAAA,GAAS,MAAM;AACb,UAAA,OAAA,CAAQ,WAAA,CAAY,IAAA,EAAM,CAAC,cAAc,CAAC,CAAA;AAC1C,UAAA,MAAA,GAAS,IAAA;AAAA,QACX,CAAA;AACA,QAAA,IAAI,QAAQ,MAAA,EAAO;AAAA,MACrB,CAAA,MAAA,IAAW,CAAC,MAAA,EAAQ;AAClB,QAAA,KAAA,CAAM,IAAI,KAAA,CAAM,oDAAoD,CAAC,CAAA;AAAA,MACvE;AAAA,IACF,CAAA;AAAA,IACA,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,OAAO,MAAM;AACX,IAAA,MAAA,EAAO;AAAA,EACT,CAAA;AACF,CAAA;;ACpBK,MAAM,kBAAA,GAAqB,CAAC,aAAA,KAA2C;AAC5E,EAAA,MAAM,OAAA,GAAU,kBAAA;AAAA,IACd,CACE,SAAA,EACA,OAAA,EACA,MAAA,EACA,MAAA,KACG,aAAA,CAAc,MAAA,EAAQ,MAAA,EAAQ,EAAE,SAAA,EAAW,OAAA,EAAS;AAAA,GAC3D;AACA,EAAA,IAAI,aAAA,GAA+C,IAAA;AAEnD,EAAA,OAAO,YAAoC;AACzC,IAAA,IAAI,eAAe,OAAO,aAAA;AAC1B,IAAA,OAAQ,aAAA,GAAgB,QAAQ,GAAA,CAAI;AAAA,MAClC,OAAA,CAAgB,SAAA,CAAU,SAAA,EAAW,EAAE,CAAA;AAAA,MACvC,OAAA,CAAgB,SAAA,CAAU,WAAA,EAAa,EAAE,CAAA;AAAA,MACzC,OAAA,CAAa,SAAA,CAAU,UAAA,EAAY,EAAE;AAAA,KACtC,EAAE,IAAA,CAAK,CAAC,CAAC,IAAA,EAAM,WAAA,EAAa,UAAU,CAAA,MAAO;AAAA,MAC5C,IAAA;AAAA,MACA,WAAA;AAAA,MACA;AAAA,KACF,CAAE,CAAA;AAAA,EACJ,CAAA;AACF,CAAA;;ACDO,MAAM,YAAA,GAAe,CAAC,QAAA,KAA+C;AAC1E,EAAA,MAAM,EAAE,OAAA,EAAS,UAAA,EAAW,GAAIO,uBAAgB,QAAQ,CAAA;AACxD,EAAA,OAAO;AAAA,IACL,OAAA,EAAS,WAAW,OAAO,CAAA;AAAA,IAC3B,SAAA,EAAW,aAAa,OAAO,CAAA;AAAA,IAC/B,WAAA,EAAa,eAAe,OAAO,CAAA;AAAA,IACnC,gBAAA,EAAkB,mBAAmB,OAAO,CAAA;AAAA,IAC5C,OAAA,EAAS,UAAA;AAAA,IACT,OAAA,EAAS,kBAAA;AAAA,MACP,CACE,SAAA,EACA,OAAA,EACA,MAAA,EACA,MAAA,KACG,OAAA,CAAQ,MAAA,EAAQ,MAAA,EAAQ,EAAE,SAAA,EAAW,OAAA,EAAS;AAAA,KACrD;AAAA,IACA,QAAA,EAAU;AAAA,GACZ;AACF;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/chainhead/errors.ts","../src/internal-utils/abortablePromiseFn.ts","../src/internal-utils/deferred-promise.ts","../src/internal-utils/noop.ts","../src/methods.ts","../src/chainhead/operation-promise.ts","../src/chainhead/body.ts","../src/chainhead/call.ts","../src/chainhead/header.ts","../src/chainhead/storage-subscription.ts","../src/chainhead/storage.ts","../src/chainhead/unpin.ts","../src/chainhead/chainhead.ts","../src/archive/errors.ts","../src/archive/storage-subscription.ts","../src/archive/storage.ts","../src/archive/archive.ts","../src/transaction/transaction.ts","../src/chainspec.ts","../src/substrate-client.ts"],"sourcesContent":["export class StopError extends Error {\n static errorName = \"StopError\"\n\n constructor() {\n super(\"ChainHead stopped\")\n this.name = StopError.errorName\n }\n}\n\nexport class DisjointError extends Error {\n static errorName = \"DisjointError\"\n\n constructor() {\n super(\"ChainHead disjointed\")\n this.name = DisjointError.errorName\n }\n}\n\nexport class OperationLimitError extends Error {\n static errorName = \"OperationLimitError\"\n\n constructor() {\n super(\"ChainHead operations limit reached\")\n this.name = OperationLimitError.errorName\n }\n}\n\nexport class OperationError extends Error {\n static errorName = \"OperationError\"\n\n constructor(error: string) {\n super(error)\n this.name = OperationError.errorName\n }\n}\n\nexport class OperationInaccessibleError extends Error {\n static errorName = \"OperationInaccessibleError\"\n\n constructor() {\n super(\"ChainHead operation inaccessible\")\n this.name = OperationInaccessibleError.errorName\n }\n}\n","import { AbortError, noop } from \"@polkadot-api/utils\"\nimport { AbortablePromiseFn } from \"../common-types\"\n\nexport const abortablePromiseFn =\n <T, A extends Array<any>>(\n fn: (\n ...args: [...[res: (x: T) => void, rej: (e: any) => void], ...A]\n ) => () => void,\n ): AbortablePromiseFn<A, T> =>\n (...args): Promise<T> =>\n new Promise((res, rej) => {\n let cancel = noop\n\n const [actualArgs, abortSignal] =\n args[args.length - 1] instanceof AbortSignal\n ? ([args.slice(0, args.length - 1), args[args.length - 1]] as [\n A,\n AbortSignal,\n ])\n : ([args] as unknown as [A])\n\n const onAbort = () => {\n cancel()\n rej(new AbortError())\n }\n\n abortSignal?.addEventListener(\"abort\", onAbort, { once: true })\n\n const withCleanup =\n <T>(fn: (x: T) => void): ((x: T) => void) =>\n (x) => {\n cancel = noop\n abortSignal?.removeEventListener(\"abort\", onAbort)\n fn(x)\n }\n\n cancel = fn(...[withCleanup(res), withCleanup(rej), ...actualArgs])\n })\n","export interface DeferredPromise<T> {\n promise: Promise<T>\n res: (value: T) => void\n rej: (err: Error) => void\n}\n\nexport function deferred<T>(): DeferredPromise<T> {\n let res: (value: T) => void = () => {}\n let rej: (err: Error) => void = () => {}\n\n const promise = new Promise<T>((_res, _rej) => {\n res = _res\n rej = _rej\n })\n\n return { promise, res, rej }\n}\n","export const noop = (): void => {}\n","const chainHead = {\n body: \"\",\n call: \"\",\n continue: \"\",\n follow: \"\",\n header: \"\",\n stopOperation: \"\",\n storage: \"\",\n unfollow: \"\",\n unpin: \"\",\n followEvent: \"\",\n}\n\nconst chainSpec = {\n chainName: \"\",\n genesisHash: \"\",\n properties: \"\",\n}\n\nconst transaction = {\n broadcast: \"\",\n stop: \"\",\n}\n\nObject.entries({ chainHead, chainSpec, transaction }).forEach(\n ([fnGroupName, methods]) => {\n Object.keys(methods).forEach((methodName) => {\n ;(methods as any)[methodName] = `${fnGroupName}_v1_${methodName}`\n })\n },\n)\n\nexport { chainHead, transaction, chainSpec }\n","import { abortablePromiseFn, noop } from \"@/internal-utils\"\nimport {\n CommonOperationEventsRpc,\n OperationResponseRpc,\n} from \"./json-rpc-types\"\nimport {\n OperationError,\n OperationInaccessibleError,\n OperationLimitError,\n} from \"./errors\"\nimport { ClientInnerRequest } from \"./public-types\"\nimport { chainHead } from \"@/methods\"\n\nexport const createOperationPromise =\n <I extends { operationId: string; event: string }, O, A extends Array<any>>(\n operationName: string,\n factory: (\n ...args: A\n ) => [\n Array<any>,\n (e: I, res: (x: O) => void, rej: (e: Error) => void) => void,\n ],\n ) =>\n (\n request: ClientInnerRequest<\n OperationResponseRpc,\n I | CommonOperationEventsRpc\n >,\n ) =>\n abortablePromiseFn<O, A>((res, rej, ...args) => {\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n const [requestArgs, logicCb] = factory(...args)\n request(operationName, requestArgs, {\n onSuccess: (response, followSubscription) => {\n if (response.result === \"limitReached\")\n return rej(new OperationLimitError())\n\n const { operationId } = response\n const stopOperation = () => {\n request(chainHead.stopOperation, [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n let done = noop\n const _res = (x: O) => {\n isRunning = false\n done()\n res(x)\n }\n const _rej = (x: Error) => {\n isRunning = false\n done()\n rej(x)\n }\n\n done = followSubscription(operationId, {\n next: (e) => {\n const _e = e as CommonOperationEventsRpc\n if (_e.event === \"operationError\")\n rej(new OperationError(_e.error))\n else if (_e.event === \"operationInaccessible\")\n rej(new OperationInaccessibleError())\n else logicCb(e as I, _res, _rej)\n },\n error: _rej,\n })\n\n cancel = () => {\n if (isRunning) {\n done()\n stopOperation()\n }\n }\n },\n onError: rej,\n })\n\n return () => {\n cancel()\n }\n })\n","import { chainHead } from \"@/methods\"\nimport type { OperationBodyDoneRpc } from \"./json-rpc-types\"\nimport { createOperationPromise } from \"./operation-promise\"\n\nexport const createBodyFn = createOperationPromise(\n chainHead.body,\n (hash: string) => [\n [hash],\n (e: OperationBodyDoneRpc, res: (x: Array<string>) => void) => {\n res(e.value)\n },\n ],\n)\n","import { chainHead } from \"@/methods\"\nimport type { OperationCallDoneRpc } from \"./json-rpc-types\"\nimport { createOperationPromise } from \"./operation-promise\"\n\nexport const createCallFn = createOperationPromise(\n chainHead.call,\n (hash: string, fnName: string, callParameters: string) => [\n [hash, fnName, callParameters],\n (e: OperationCallDoneRpc, res: (output: string) => void) => {\n res(e.output)\n },\n ],\n)\n","import { chainHead } from \"@/methods\"\nimport { ClientInnerRequest } from \"./public-types\"\n\nexport const createHeaderFn =\n (request: ClientInnerRequest<string, unknown>) => (hash: string) =>\n new Promise<string>((res, rej) => {\n request(chainHead.header, [hash], {\n onSuccess: res,\n onError: rej,\n })\n })\n","import { noop } from \"@polkadot-api/utils\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\nimport {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { chainHead } from \"@/methods\"\nimport {\n OperationError,\n OperationInaccessibleError,\n OperationLimitError,\n} from \"./errors\"\n\nexport const createStorageCb =\n (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n ): FollowResponse[\"storageSubscription\"] =>\n (hash, inputs, childTrie, onItems, onError, onDone, onDiscardedItems) => {\n if (inputs.length === 0) {\n onDone()\n return noop\n }\n\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n request(chainHead.storage, [hash, inputs, childTrie], {\n onSuccess: (response, followSubscription) => {\n if (\n response.result === \"limitReached\" ||\n response.discardedItems === inputs.length\n )\n return onError(new OperationLimitError())\n\n const { operationId } = response\n const stopOperation = () => {\n request(chainHead.stopOperation, [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n const doneListening = followSubscription(response.operationId, {\n next: (event) => {\n switch (event.event) {\n case \"operationStorageItems\": {\n onItems(event.items)\n break\n }\n case \"operationStorageDone\": {\n _onDone()\n break\n }\n case \"operationError\": {\n _onError(new OperationError(event.error))\n break\n }\n case \"operationInaccessible\": {\n _onError(new OperationInaccessibleError())\n break\n }\n default:\n request(chainHead.continue, [event.operationId])\n }\n },\n error: onError,\n })\n\n cancel = () => {\n doneListening()\n request(chainHead.stopOperation, [response.operationId])\n }\n\n const _onError = (e: Error) => {\n cancel = noop\n doneListening()\n onError(e)\n }\n\n const _onDone = () => {\n cancel = noop\n doneListening()\n onDone()\n }\n\n onDiscardedItems(response.discardedItems)\n },\n onError,\n })\n\n return () => {\n cancel()\n }\n }\n","import { OperationLimitError } from \"./errors\"\nimport type {\n CommonOperationEventsRpc,\n LimitReachedRpc,\n OperationStorageDoneRpc,\n OperationStorageItemsRpc,\n OperationWaitingForContinueRpc,\n OperationStorageStartedRpc,\n} from \"./json-rpc-types\"\nimport { abortablePromiseFn } from \"@/internal-utils\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport type { ClientInnerRequest, FollowResponse } from \"./public-types\"\n\nexport const createStorageFn = (\n request: ClientInnerRequest<\n OperationStorageStartedRpc | LimitReachedRpc,\n | CommonOperationEventsRpc\n | OperationStorageItemsRpc\n | OperationStorageDoneRpc\n | OperationWaitingForContinueRpc\n >,\n): FollowResponse[\"storage\"] => {\n const cbStore = createStorageCb(request)\n return abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {\n const isDescendants = type.startsWith(\"descendants\")\n let result: any = isDescendants ? [] : null\n\n const onItems: Parameters<typeof cbStore>[3] = isDescendants\n ? (items) => {\n result.push(items)\n }\n : (items) => {\n result = items[0]?.[type as \"value\"]\n }\n\n const cancel = cbStore(\n hash,\n [{ key, type }],\n childTrie ?? null,\n onItems,\n reject,\n () => {\n try {\n resolve(isDescendants ? result.flat() : result)\n } catch (e) {\n reject(e)\n }\n },\n (nDiscarded) => {\n if (nDiscarded > 0) {\n cancel()\n reject(new OperationLimitError())\n }\n },\n )\n return cancel\n })\n}\n","import { chainHead } from \"@/methods\"\nimport { ClientInnerRequest } from \"./public-types\"\n\nexport const createUnpinFn =\n (request: ClientInnerRequest<null, unknown>) => (hashes: string[]) =>\n hashes.length > 0\n ? new Promise<void>((res, rej) => {\n request(chainHead.unpin, [hashes], {\n onSuccess() {\n res()\n },\n onError: rej,\n })\n })\n : Promise.resolve()\n","import {\n DestroyedError,\n Subscriber,\n getSubscriptionsManager,\n ClientRequest,\n FollowSubscriptionCb,\n} from \"@polkadot-api/raw-client\"\nimport type {\n FollowEventWithRuntimeRpc,\n FollowEventWithoutRuntimeRpc,\n OperationEventsRpc,\n StopRpc,\n} from \"./json-rpc-types\"\nimport type {\n ChainHead,\n ClientInnerRequest,\n FollowEventWithoutRuntime,\n FollowEventWithRuntime,\n FollowResponse,\n} from \"./public-types\"\nimport { noop, deferred } from \"@/internal-utils\"\nimport { createBodyFn } from \"./body\"\nimport { createCallFn } from \"./call\"\nimport { createHeaderFn } from \"./header\"\nimport { createStorageFn } from \"./storage\"\nimport { createUnpinFn } from \"./unpin\"\nimport { DisjointError, StopError } from \"./errors\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport { chainHead } from \"@/methods\"\n\ntype FollowEventRpc =\n | FollowEventWithRuntimeRpc\n | FollowEventWithoutRuntimeRpc\n | OperationEventsRpc\n | StopRpc\n\nfunction isOperationEvent(event: FollowEventRpc): event is OperationEventsRpc {\n return (event as OperationEventsRpc).operationId !== undefined\n}\n\nexport function getChainHead(\n request: ClientRequest<string, FollowEventRpc>,\n): ChainHead {\n return (\n withRuntime: boolean,\n onFollowEvent:\n | ((event: FollowEventWithoutRuntime) => void)\n | ((event: FollowEventWithRuntime) => void),\n onFollowError: (e: Error) => void,\n ): FollowResponse => {\n const subscriptions = getSubscriptionsManager<OperationEventsRpc>()\n const ongoingRequests = new Set<() => void>()\n const deferredFollow = deferred<string | Error>()\n // If it's:\n // - a (deferred)`Promise`: it means that the susbscription is active AND that the response to the follow request has not been resolved\n // - a `string`: it means that the subscription is active and that the response to the follow request has been successful.\n // - `null`: it means that the subscription is inactive (for whatever reason: error or unsubscription)\n let followSubscription: Promise<string | Error> | string | null =\n deferredFollow.promise\n\n let stopListeningToFollowEvents = noop\n const unfollowRequest = (subscriptionId: string) => {\n request(chainHead.unfollow, [subscriptionId])\n }\n\n const stopEverything = (sendUnfollow: boolean) => {\n stopListeningToFollowEvents()\n // if it's `null` it means that everything has already been stopped\n if (followSubscription === null) return\n\n if (sendUnfollow) {\n if (followSubscription instanceof Promise) {\n followSubscription.then((x) => {\n if (typeof x === \"string\") unfollowRequest(x)\n })\n } else unfollowRequest(followSubscription)\n }\n followSubscription = null\n ongoingRequests.forEach((cb) => {\n cb()\n })\n ongoingRequests.clear()\n subscriptions.errorAll(new DisjointError())\n }\n\n const onAllFollowEventsNext = (event: FollowEventRpc) => {\n if (isOperationEvent(event))\n return subscriptions.next(event.operationId, event)\n\n switch (event.event) {\n case \"stop\":\n onFollowError(new StopError())\n return stopEverything(false)\n case \"initialized\":\n case \"newBlock\":\n case \"bestBlockChanged\":\n case \"finalized\":\n const { event: type, ...rest } = event\n return onFollowEvent({ type, ...rest } as any)\n }\n }\n\n const onAllFollowEventsError = (error: Error) => {\n onFollowError(error)\n stopEverything(!(error instanceof DestroyedError))\n }\n\n request(chainHead.follow, [withRuntime], {\n onSuccess: (\n subscriptionId: string,\n follow: FollowSubscriptionCb<FollowEventRpc>,\n ) => {\n // If the consumer has unsubscribed in between, then it will be `null`\n // and it should stay that way\n if (followSubscription instanceof Promise) {\n followSubscription = subscriptionId\n stopListeningToFollowEvents = follow(subscriptionId, {\n next: onAllFollowEventsNext,\n error: onAllFollowEventsError,\n })\n }\n deferredFollow.res(subscriptionId)\n },\n onError: (e: Error) => {\n followSubscription = null\n deferredFollow.res(e)\n onFollowError(e)\n },\n })\n\n const fRequest: ClientInnerRequest<any, any> = (method, params, cb) => {\n const disjoint = () => {\n cb?.onError(new DisjointError())\n }\n\n if (followSubscription === null) {\n disjoint()\n return noop\n }\n\n const onSubscription = (subscription: string) => {\n if (!cb) return request(method, [subscription, ...params])\n\n ongoingRequests.add(disjoint)\n\n const onSubscribeOperation = (\n operationId: string,\n subscriber: Subscriber<any>,\n ) => {\n if (followSubscription === null) {\n subscriber.error(new DisjointError())\n return noop\n }\n\n subscriptions.subscribe(operationId, subscriber)\n\n return () => {\n subscriptions.unsubscribe(operationId)\n }\n }\n\n const cleanup = request(method, [subscription, ...params], {\n onSuccess: (response) => {\n ongoingRequests.delete(disjoint)\n cb.onSuccess(response, onSubscribeOperation)\n },\n onError: (e) => {\n ongoingRequests.delete(disjoint)\n cb.onError(e)\n },\n })\n\n return () => {\n ongoingRequests.delete(disjoint)\n cleanup()\n }\n }\n\n if (typeof followSubscription === \"string\")\n return onSubscription(followSubscription)\n\n let onCancel = noop\n followSubscription.then((x) => {\n if (x instanceof Error) return disjoint()\n if (followSubscription) onCancel = onSubscription(x)\n })\n\n return () => {\n onCancel()\n }\n }\n\n return {\n unfollow() {\n stopEverything(true)\n },\n body: createBodyFn(fRequest),\n call: createCallFn(fRequest),\n header: createHeaderFn(fRequest),\n storage: createStorageFn(fRequest),\n storageSubscription: createStorageCb(fRequest),\n unpin: createUnpinFn(fRequest),\n _request: fRequest,\n }\n }\n}\n","export class BlockHashNotFoundError extends Error {\n static errorName = \"BlockHashNotFoundError\"\n\n constructor(hash: string) {\n super(`Invalid BlockHash: ${hash}`)\n this.name = BlockHashNotFoundError.errorName\n }\n}\n\nexport class StorageError extends Error {\n static errorName = \"StorageError\"\n\n constructor(message: string) {\n super(`Storage Error: ${message}`)\n this.name = StorageError.errorName\n }\n}\n\nexport class CallError extends Error {\n static errorName = \"CallError\"\n\n constructor(message: string) {\n super(`Call Error: ${message}`)\n this.name = CallError.errorName\n }\n}\n","import type { ClientRequest } from \"@polkadot-api/raw-client\"\nimport { noop } from \"@polkadot-api/utils\"\nimport { Archive } from \"./public-types\"\nimport { StorageItemResponse } from \"@/chainhead\"\nimport { StorageError } from \"./errors\"\n\ntype StorageEvent = {\n event: \"storage\"\n} & StorageItemResponse\n\ntype StorageDone = {\n event: \"storageDone\"\n}\n\ntype StorageErrorEvent = {\n event: \"storageError\"\n error: string\n}\n\nexport const createStorageCb =\n (\n archiveRequest: ClientRequest<\n string,\n StorageEvent | StorageDone | StorageErrorEvent\n >,\n ): Archive[\"storageSubscription\"] =>\n (hash, inputs, childTrie, onItem, onError, onDone) => {\n if (inputs.length === 0) {\n onDone()\n return noop\n }\n\n let isRunning = true\n let cancel = () => {\n isRunning = false\n }\n\n archiveRequest(\"storage\", [hash, inputs, childTrie], {\n onSuccess: (operationId, followSubscription) => {\n const stopOperation = () => {\n archiveRequest(\"stopStorage\", [operationId])\n }\n\n if (!isRunning) return stopOperation()\n\n const doneListening = followSubscription(operationId, {\n next: (event) => {\n const { event: type } = event\n if (type === \"storage\") {\n const { event: _, ...item } = event\n onItem(item)\n } else if (type === \"storageDone\") _onDone()\n else _onError(new StorageError(event.error))\n },\n error: onError,\n })\n\n const tearDown = () => {\n cancel = noop\n doneListening()\n }\n\n cancel = () => {\n tearDown()\n stopOperation()\n }\n\n const _onError = (e: Error) => {\n tearDown()\n onError(e)\n }\n\n const _onDone = () => {\n tearDown()\n onDone()\n }\n },\n onError,\n })\n\n return () => {\n cancel()\n }\n }\n","import { abortablePromiseFn } from \"@/internal-utils\"\nimport type { Archive } from \"./public-types\"\n\nexport const createStorageFn = (\n cbStore: Archive[\"storageSubscription\"],\n): Archive[\"storage\"] =>\n abortablePromiseFn((resolve, reject, hash, type, key, childTrie) => {\n const isDescendants = type.startsWith(\"descendants\")\n\n let result: any = isDescendants ? [] : null\n const onItem: Parameters<typeof cbStore>[3] = isDescendants\n ? result.push.bind(result)\n : ({ [type]: res }) => {\n result = res\n }\n\n return cbStore(\n hash,\n [{ key, type }],\n childTrie,\n onItem,\n (e) => {\n reject(e)\n result = null\n },\n () => {\n resolve(result)\n result = null\n },\n )\n })\n","import { abortablePromiseFn } from \"@/internal-utils\"\nimport { type ClientRequest } from \"@polkadot-api/raw-client\"\nimport { createStorageCb } from \"./storage-subscription\"\nimport { createStorageFn } from \"./storage\"\nimport { Archive } from \"./public-types\"\nimport { CallError, BlockHashNotFoundError } from \"./errors\"\n\nconst identity =\n <T>() =>\n (x: T): T =>\n x\n\nconst handleInvalidBlockHash =\n <T>() =>\n (result: T | null, hash: string): T => {\n if (result === null) throw new BlockHashNotFoundError(hash)\n return result\n }\n\nexport const getArchive = (request: ClientRequest<any, any>): Archive => {\n const archiveRequest: ClientRequest<any, any> = (method: string, ...rest) =>\n request(`archive_v1_${method}`, ...rest)\n\n const fnCreator =\n <A extends Array<any>>(method: string) =>\n <I, O>(mapper: (input: I, ...args: A) => O) =>\n abortablePromiseFn<O, A>((res, rej, ...args) =>\n archiveRequest(method, args, {\n onSuccess: (x: I) => {\n try {\n res(mapper(x, ...args))\n } catch (e) {\n rej(e)\n }\n },\n onError: rej,\n }),\n )\n\n const header = fnCreator<[hash: string]>(\"header\")(\n handleInvalidBlockHash<string>(),\n )\n\n const body = fnCreator<[hash: string]>(\"body\")(\n handleInvalidBlockHash<string[]>(),\n )\n\n const storageSubscription = createStorageCb(archiveRequest)\n const storage = createStorageFn(storageSubscription)\n\n const call = fnCreator<\n [hash: string, function: string, callParameters: string]\n >(\"call\")((\n x:\n | { success: true; value: string }\n | { success: false; error: string }\n | null,\n hash,\n ) => {\n if (!x) throw new BlockHashNotFoundError(hash)\n if (!x.success) throw new CallError(x.error)\n return x.value\n })\n\n const finalizedHeight = fnCreator<[]>(\"finalizedHeight\")(identity<number>())\n const hashByHeight =\n fnCreator<[height: number]>(\"hashByHeight\")(identity<string[]>())\n\n return {\n header,\n body,\n storageSubscription,\n storage,\n call,\n finalizedHeight,\n hashByHeight,\n }\n}\n","import { noop } from \"@/internal-utils\"\nimport { type ClientRequest } from \"@polkadot-api/raw-client\"\nimport { transaction } from \"@/methods\"\n\nexport const getTransaction =\n (request: ClientRequest<string, any>) =>\n (tx: string, error: (e: Error) => void) => {\n let isDone = false\n let cancel = () => {\n isDone = true\n }\n\n request(transaction.broadcast, [tx], {\n onSuccess: (subscriptionId) => {\n if (subscriptionId !== null) {\n cancel = () => {\n request(transaction.stop, [subscriptionId])\n cancel = noop\n }\n if (isDone) cancel()\n } else if (!isDone) {\n error(new Error(\"Max # of broadcasted transactions has been reached\"))\n }\n },\n onError: error,\n })\n\n return () => {\n cancel()\n }\n }\n","import { type ClientRequest } from \"@polkadot-api/raw-client\"\nimport { abortablePromiseFn } from \"./internal-utils\"\nimport { chainSpec } from \"./methods\"\n\nexport interface ChainSpecData {\n name: string\n genesisHash: string\n properties: any\n}\n\nexport const createGetChainSpec = (clientRequest: ClientRequest<any, any>) => {\n const request = abortablePromiseFn(\n <T>(\n onSuccess: (value: T) => void,\n onError: (e: any) => void,\n method: string,\n params: any[],\n ) => clientRequest(method, params, { onSuccess, onError }),\n )\n let cachedPromise: null | Promise<ChainSpecData> = null\n\n return async (): Promise<ChainSpecData> => {\n if (cachedPromise) return cachedPromise\n return (cachedPromise = Promise.all([\n request<string>(chainSpec.chainName, []),\n request<string>(chainSpec.genesisHash, []),\n request<any>(chainSpec.properties, []),\n ]).then(([name, genesisHash, properties]) => ({\n name,\n genesisHash,\n properties,\n })))\n }\n}\n","import type { JsonRpcProvider } from \"@polkadot-api/json-rpc-provider\"\nimport {\n ClientRequestCb,\n createClient as createRawClient,\n} from \"@polkadot-api/raw-client\"\nimport { getTransaction } from \"./transaction/transaction\"\nimport { getChainHead } from \"./chainhead\"\nimport type { ChainHead } from \"./chainhead\"\nimport type { Transaction } from \"./transaction\"\nimport { UnsubscribeFn } from \"./common-types\"\nimport { abortablePromiseFn } from \"./internal-utils\"\nimport { ChainSpecData, createGetChainSpec } from \"./chainspec\"\nimport { Archive, getArchive } from \"./archive\"\n\nexport interface SubstrateClient {\n archive: Archive\n chainHead: ChainHead\n transaction: Transaction\n destroy: UnsubscribeFn\n getChainSpecData: () => Promise<ChainSpecData>\n request: <T>(\n method: string,\n params: any[],\n abortSignal?: AbortSignal,\n ) => Promise<T>\n _request: <Reply, Notification>(\n method: string,\n params: any[],\n cb?: ClientRequestCb<Reply, Notification>,\n ) => UnsubscribeFn\n}\n\nexport const createClient = (provider: JsonRpcProvider): SubstrateClient => {\n const { request, disconnect } = createRawClient(provider)\n return {\n archive: getArchive(request),\n chainHead: getChainHead(request),\n transaction: getTransaction(request),\n getChainSpecData: createGetChainSpec(request),\n destroy: disconnect,\n request: abortablePromiseFn(\n <T>(\n onSuccess: (value: T) => void,\n onError: (e: any) => void,\n method: string,\n params: any[],\n ) => request(method, params, { onSuccess, onError }),\n ),\n _request: request,\n }\n}\n"],"names":["__publicField","noop","AbortError","fn","createStorageCb","createStorageFn","getSubscriptionsManager","DestroyedError","createRawClient"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polkadot-api/substrate-client",
3
- "version": "1.0.0-canary.ef78431",
3
+ "version": "1.0.0-canary.f69e140",
4
4
  "author": "Josep M Sobrepere (https://github.com/josepot)",
5
5
  "repository": {
6
6
  "type": "git",
@@ -35,9 +35,9 @@
35
35
  "dist"
36
36
  ],
37
37
  "dependencies": {
38
- "@polkadot-api/raw-client": "1.0.0-canary.ef78431",
39
- "@polkadot-api/json-rpc-provider": "1.0.0-canary.ef78431",
40
- "@polkadot-api/utils": "1.0.0-canary.ef78431"
38
+ "@polkadot-api/raw-client": "1.0.0-canary.f69e140",
39
+ "@polkadot-api/json-rpc-provider": "1.0.0-canary.f69e140",
40
+ "@polkadot-api/utils": "1.0.0-canary.f69e140"
41
41
  },
42
42
  "scripts": {
43
43
  "build-core": "tsc --noEmit && rollup -c ../../rollup.config.js",