@xyo-network/react-address 2.38.12 → 2.38.14

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.
@@ -2,4 +2,5 @@ export * from './Context';
2
2
  export * from './Provider';
3
3
  export * from './State';
4
4
  export * from './use';
5
+ export * from './useDiviner';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA"}
@@ -5,4 +5,5 @@ tslib_1.__exportStar(require("./Context"), exports);
5
5
  tslib_1.__exportStar(require("./Provider"), exports);
6
6
  tslib_1.__exportStar(require("./State"), exports);
7
7
  tslib_1.__exportStar(require("./use"), exports);
8
+ tslib_1.__exportStar(require("./useDiviner"), exports);
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":";;;AAAA,oDAAyB;AACzB,qDAA0B;AAC1B,kDAAuB;AACvB,gDAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":";;;AAAA,oDAAyB;AACzB,qDAA0B;AAC1B,kDAAuB;AACvB,gDAAqB;AACrB,uDAA4B"}
@@ -0,0 +1,3 @@
1
+ import { XyoBoundWitness } from '@xyo-network/boundwitness';
2
+ export declare const useDivineAddressHistory: (address?: string) => [XyoBoundWitness[] | undefined, Error | undefined, () => void];
3
+ //# sourceMappingURL=useDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDiviner.d.ts","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/useDiviner.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAO3D,eAAO,MAAM,uBAAuB,aAAc,MAAM,KAAG,CAAC,eAAe,EAAE,GAAG,SAAS,EAAE,KAAK,GAAG,SAAS,EAAE,MAAM,IAAI,CA2BvH,CAAA"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDivineAddressHistory = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_shared_1 = require("@xylabs/react-shared");
6
+ const api_1 = require("@xyo-network/api");
7
+ const diviner_1 = require("@xyo-network/diviner");
8
+ const payload_1 = require("@xyo-network/payload");
9
+ const react_1 = require("react");
10
+ const use_1 = require("./use");
11
+ const useDivineAddressHistory = (address) => {
12
+ const [blocks, setBlocks] = (0, react_1.useState)();
13
+ const [error, setError] = (0, react_1.useState)();
14
+ const { diviner } = (0, use_1.useAddressHistoryDiviner)();
15
+ const [refresh, setRefresh] = (0, react_1.useState)(1);
16
+ const refreshHistory = () => setRefresh((previous) => previous + 1);
17
+ (0, react_shared_1.useAsyncEffect)(
18
+ // eslint-disable-next-line react-hooks/exhaustive-deps
19
+ (mounted) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
20
+ if (diviner && address) {
21
+ try {
22
+ const source = new payload_1.XyoPayloadBuilder({ schema: api_1.AddressHistoryQuerySchema }).fields({ address }).build();
23
+ const result = (yield new diviner_1.XyoDivinerWrapper(diviner).divine([source]));
24
+ if (mounted() && result) {
25
+ setBlocks(result);
26
+ }
27
+ }
28
+ catch (e) {
29
+ setError(e);
30
+ }
31
+ }
32
+ }), [address, diviner, refresh]);
33
+ return [blocks, error, refreshHistory];
34
+ };
35
+ exports.useDivineAddressHistory = useDivineAddressHistory;
36
+ //# sourceMappingURL=useDiviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDiviner.js","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/useDiviner.tsx"],"names":[],"mappings":";;;;AAAA,uDAAqD;AACrD,0CAA4D;AAE5D,kDAAwD;AACxD,kDAAwD;AACxD,iCAAgC;AAEhC,+BAAgD;AAEzC,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAkE,EAAE;IAC1H,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,GAAqB,CAAA;IACzD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,GAAS,CAAA;IAC3C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,8BAAwB,GAAE,CAAA;IAC9C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAA;IAEzC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAA;IAEnE,IAAA,6BAAc;IACZ,uDAAuD;IACvD,CAAO,OAAO,EAAE,EAAE;QAChB,IAAI,OAAO,IAAI,OAAO,EAAE;YACtB,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,2BAAiB,CAAC,EAAE,MAAM,EAAE,+BAAyB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;gBACvG,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,2BAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAsB,CAAA;gBAC3F,IAAI,OAAO,EAAE,IAAI,MAAM,EAAE;oBACvB,SAAS,CAAC,MAAM,CAAC,CAAA;iBAClB;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,QAAQ,CAAC,CAAU,CAAC,CAAA;aACrB;SACF;IACH,CAAC,CAAA,EACD,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAC5B,CAAA;IAED,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAA;AACxC,CAAC,CAAA;AA3BY,QAAA,uBAAuB,2BA2BnC"}
package/dist/docs.json CHANGED
@@ -26,7 +26,7 @@
26
26
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts",
27
27
  "line": 6,
28
28
  "character": 2,
29
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts#L6"
29
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts#L6"
30
30
  }
31
31
  ],
32
32
  "type": {
@@ -71,7 +71,7 @@
71
71
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts",
72
72
  "line": 7,
73
73
  "character": 2,
74
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts#L7"
74
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts#L7"
75
75
  }
76
76
  ],
77
77
  "type": {
@@ -122,7 +122,7 @@
122
122
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts",
123
123
  "line": 5,
124
124
  "character": 17,
125
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts#L5"
125
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/State.ts#L5"
126
126
  }
127
127
  ],
128
128
  "extendedTypes": [
@@ -143,7 +143,7 @@
143
143
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx",
144
144
  "line": 7,
145
145
  "character": 12,
146
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L7"
146
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L7"
147
147
  }
148
148
  ],
149
149
  "type": {
@@ -171,7 +171,7 @@
171
171
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx",
172
172
  "line": 8,
173
173
  "character": 2,
174
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L8"
174
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L8"
175
175
  }
176
176
  ],
177
177
  "type": {
@@ -195,7 +195,7 @@
195
195
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx",
196
196
  "line": 7,
197
197
  "character": 72,
198
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L7"
198
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L7"
199
199
  }
200
200
  ]
201
201
  }
@@ -217,7 +217,7 @@
217
217
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/Context.ts",
218
218
  "line": 5,
219
219
  "character": 13,
220
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/Context.ts#L5"
220
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/Context.ts#L5"
221
221
  }
222
222
  ],
223
223
  "type": {
@@ -255,7 +255,7 @@
255
255
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx",
256
256
  "line": 11,
257
257
  "character": 13,
258
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L11"
258
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/Provider.tsx#L11"
259
259
  }
260
260
  ],
261
261
  "signatures": [
@@ -331,7 +331,7 @@
331
331
  "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/use.tsx",
332
332
  "line": 5,
333
333
  "character": 13,
334
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/contexts/HistoryDiviner/use.tsx#L5"
334
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/use.tsx#L5"
335
335
  }
336
336
  ],
337
337
  "signatures": [
@@ -384,6 +384,148 @@
384
384
  }
385
385
  }
386
386
  ]
387
+ },
388
+ {
389
+ "id": 16,
390
+ "name": "useDivineAddressHistory",
391
+ "kind": 64,
392
+ "kindString": "Function",
393
+ "flags": {},
394
+ "sources": [
395
+ {
396
+ "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/useDiviner.tsx",
397
+ "line": 10,
398
+ "character": 13,
399
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/useDiviner.tsx#L10"
400
+ }
401
+ ],
402
+ "signatures": [
403
+ {
404
+ "id": 17,
405
+ "name": "useDivineAddressHistory",
406
+ "kind": 4096,
407
+ "kindString": "Call signature",
408
+ "flags": {},
409
+ "parameters": [
410
+ {
411
+ "id": 18,
412
+ "name": "address",
413
+ "kind": 32768,
414
+ "kindString": "Parameter",
415
+ "flags": {
416
+ "isOptional": true
417
+ },
418
+ "type": {
419
+ "type": "intrinsic",
420
+ "name": "string"
421
+ }
422
+ }
423
+ ],
424
+ "type": {
425
+ "type": "tuple",
426
+ "elements": [
427
+ {
428
+ "type": "union",
429
+ "types": [
430
+ {
431
+ "type": "intrinsic",
432
+ "name": "undefined"
433
+ },
434
+ {
435
+ "type": "array",
436
+ "elementType": {
437
+ "type": "intersection",
438
+ "types": [
439
+ {
440
+ "type": "reference",
441
+ "name": "SchemaFields",
442
+ "qualifiedName": "SchemaFields",
443
+ "package": "@xyo-network/payload"
444
+ },
445
+ {
446
+ "type": "reference",
447
+ "name": "PayloadFields",
448
+ "qualifiedName": "PayloadFields",
449
+ "package": "@xyo-network/payload"
450
+ },
451
+ {
452
+ "type": "reference",
453
+ "name": "XyoBoundWitnessFields",
454
+ "qualifiedName": "XyoBoundWitnessFields",
455
+ "package": "@xyo-network/boundwitness"
456
+ },
457
+ {
458
+ "type": "reflection",
459
+ "declaration": {
460
+ "id": 19,
461
+ "name": "__type",
462
+ "kind": 65536,
463
+ "kindString": "Type literal",
464
+ "flags": {},
465
+ "sources": [
466
+ {
467
+ "fileName": "node_modules/@xyo-network/payload/dist/esm/models/XyoPayload.d.ts",
468
+ "line": 16,
469
+ "character": 227
470
+ }
471
+ ]
472
+ }
473
+ }
474
+ ]
475
+ }
476
+ }
477
+ ]
478
+ },
479
+ {
480
+ "type": "union",
481
+ "types": [
482
+ {
483
+ "type": "intrinsic",
484
+ "name": "undefined"
485
+ },
486
+ {
487
+ "type": "reference",
488
+ "name": "Error",
489
+ "qualifiedName": "Error",
490
+ "package": "typescript"
491
+ }
492
+ ]
493
+ },
494
+ {
495
+ "type": "reflection",
496
+ "declaration": {
497
+ "id": 20,
498
+ "name": "__type",
499
+ "kind": 65536,
500
+ "kindString": "Type literal",
501
+ "flags": {},
502
+ "sources": [
503
+ {
504
+ "fileName": "packages/sdk/packages/address/src/contexts/HistoryDiviner/useDiviner.tsx",
505
+ "line": 10,
506
+ "character": 110,
507
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/contexts/HistoryDiviner/useDiviner.tsx#L10"
508
+ }
509
+ ],
510
+ "signatures": [
511
+ {
512
+ "id": 21,
513
+ "name": "__type",
514
+ "kind": 4096,
515
+ "kindString": "Call signature",
516
+ "flags": {},
517
+ "type": {
518
+ "type": "intrinsic",
519
+ "name": "void"
520
+ }
521
+ }
522
+ ]
523
+ }
524
+ }
525
+ ]
526
+ }
527
+ }
528
+ ]
387
529
  }
388
530
  ],
389
531
  "groups": [
@@ -409,7 +551,8 @@
409
551
  "title": "Functions",
410
552
  "children": [
411
553
  5,
412
- 13
554
+ 13,
555
+ 16
413
556
  ]
414
557
  }
415
558
  ],
@@ -418,7 +561,7 @@
418
561
  "fileName": "packages/sdk/packages/address/src/index.ts",
419
562
  "line": 1,
420
563
  "character": 0,
421
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/47368ef276/packages/sdk/packages/address/src/index.ts#L1"
564
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/c7bbc671df/packages/sdk/packages/address/src/index.ts#L1"
422
565
  }
423
566
  ]
424
567
  }
@@ -2,4 +2,5 @@ export * from './Context';
2
2
  export * from './Provider';
3
3
  export * from './State';
4
4
  export * from './use';
5
+ export * from './useDiviner';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA"}
@@ -2,4 +2,5 @@ export * from './Context';
2
2
  export * from './Provider';
3
3
  export * from './State';
4
4
  export * from './use';
5
+ export * from './useDiviner';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { XyoBoundWitness } from '@xyo-network/boundwitness';
2
+ export declare const useDivineAddressHistory: (address?: string) => [XyoBoundWitness[] | undefined, Error | undefined, () => void];
3
+ //# sourceMappingURL=useDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDiviner.d.ts","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/useDiviner.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAO3D,eAAO,MAAM,uBAAuB,aAAc,MAAM,KAAG,CAAC,eAAe,EAAE,GAAG,SAAS,EAAE,KAAK,GAAG,SAAS,EAAE,MAAM,IAAI,CA2BvH,CAAA"}
@@ -0,0 +1,31 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared';
2
+ import { AddressHistoryQuerySchema } from '@xyo-network/api';
3
+ import { XyoDivinerWrapper } from '@xyo-network/diviner';
4
+ import { XyoPayloadBuilder } from '@xyo-network/payload';
5
+ import { useState } from 'react';
6
+ import { useAddressHistoryDiviner } from './use';
7
+ export const useDivineAddressHistory = (address) => {
8
+ const [blocks, setBlocks] = useState();
9
+ const [error, setError] = useState();
10
+ const { diviner } = useAddressHistoryDiviner();
11
+ const [refresh, setRefresh] = useState(1);
12
+ const refreshHistory = () => setRefresh((previous) => previous + 1);
13
+ useAsyncEffect(
14
+ // eslint-disable-next-line react-hooks/exhaustive-deps
15
+ async (mounted) => {
16
+ if (diviner && address) {
17
+ try {
18
+ const source = new XyoPayloadBuilder({ schema: AddressHistoryQuerySchema }).fields({ address }).build();
19
+ const result = (await new XyoDivinerWrapper(diviner).divine([source]));
20
+ if (mounted() && result) {
21
+ setBlocks(result);
22
+ }
23
+ }
24
+ catch (e) {
25
+ setError(e);
26
+ }
27
+ }
28
+ }, [address, diviner, refresh]);
29
+ return [blocks, error, refreshHistory];
30
+ };
31
+ //# sourceMappingURL=useDiviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDiviner.js","sourceRoot":"","sources":["../../../../src/contexts/HistoryDiviner/useDiviner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAA;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAA;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAkE,EAAE;IAC1H,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAqB,CAAA;IACzD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAC3C,MAAM,EAAE,OAAO,EAAE,GAAG,wBAAwB,EAAE,CAAA;IAC9C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAEzC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAA;IAEnE,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI,OAAO,IAAI,OAAO,EAAE;YACtB,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;gBACvG,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAsB,CAAA;gBAC3F,IAAI,OAAO,EAAE,IAAI,MAAM,EAAE;oBACvB,SAAS,CAAC,MAAM,CAAC,CAAA;iBAClB;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,QAAQ,CAAC,CAAU,CAAC,CAAA;aACrB;SACF;IACH,CAAC,EACD,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAC5B,CAAA;IAED,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAA;AACxC,CAAC,CAAA"}
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xyo-network/react-shared": "^2.38.12",
13
+ "@xyo-network/react-shared": "^2.38.14",
14
14
  "tslib": "^2.4.0"
15
15
  },
16
16
  "peerDependencies": {
@@ -65,5 +65,5 @@
65
65
  },
66
66
  "sideEffects": false,
67
67
  "types": "dist/esm/index.d.ts",
68
- "version": "2.38.12"
68
+ "version": "2.38.14"
69
69
  }
@@ -2,3 +2,4 @@ export * from './Context'
2
2
  export * from './Provider'
3
3
  export * from './State'
4
4
  export * from './use'
5
+ export * from './useDiviner'
@@ -0,0 +1,37 @@
1
+ import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { AddressHistoryQuerySchema } from '@xyo-network/api'
3
+ import { XyoBoundWitness } from '@xyo-network/boundwitness'
4
+ import { XyoDivinerWrapper } from '@xyo-network/diviner'
5
+ import { XyoPayloadBuilder } from '@xyo-network/payload'
6
+ import { useState } from 'react'
7
+
8
+ import { useAddressHistoryDiviner } from './use'
9
+
10
+ export const useDivineAddressHistory = (address?: string): [XyoBoundWitness[] | undefined, Error | undefined, () => void] => {
11
+ const [blocks, setBlocks] = useState<XyoBoundWitness[]>()
12
+ const [error, setError] = useState<Error>()
13
+ const { diviner } = useAddressHistoryDiviner()
14
+ const [refresh, setRefresh] = useState(1)
15
+
16
+ const refreshHistory = () => setRefresh((previous) => previous + 1)
17
+
18
+ useAsyncEffect(
19
+ // eslint-disable-next-line react-hooks/exhaustive-deps
20
+ async (mounted) => {
21
+ if (diviner && address) {
22
+ try {
23
+ const source = new XyoPayloadBuilder({ schema: AddressHistoryQuerySchema }).fields({ address }).build()
24
+ const result = (await new XyoDivinerWrapper(diviner).divine([source])) as XyoBoundWitness[]
25
+ if (mounted() && result) {
26
+ setBlocks(result)
27
+ }
28
+ } catch (e) {
29
+ setError(e as Error)
30
+ }
31
+ }
32
+ },
33
+ [address, diviner, refresh],
34
+ )
35
+
36
+ return [blocks, error, refreshHistory]
37
+ }