@xyo-network/react-api 2.40.5 → 2.40.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/address/contexts/HistoryDiviner/Context.d.ts +4 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Context.d.ts.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Context.js +6 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Context.js.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Provider.d.ts +8 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Provider.d.ts.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Provider.js +29 -0
- package/dist/cjs/address/contexts/HistoryDiviner/Provider.js.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/State.d.ts +8 -0
- package/dist/cjs/address/contexts/HistoryDiviner/State.d.ts.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/State.js +3 -0
- package/dist/cjs/address/contexts/HistoryDiviner/State.js.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/index.d.ts +6 -0
- package/dist/cjs/address/contexts/HistoryDiviner/index.d.ts.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/index.js +9 -0
- package/dist/cjs/address/contexts/HistoryDiviner/index.js.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/use.d.ts +2 -0
- package/dist/cjs/address/contexts/HistoryDiviner/use.d.ts.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/use.js +8 -0
- package/dist/cjs/address/contexts/HistoryDiviner/use.js.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/useDiviner.d.ts +3 -0
- package/dist/cjs/address/contexts/HistoryDiviner/useDiviner.d.ts.map +1 -0
- package/dist/cjs/address/contexts/HistoryDiviner/useDiviner.js +36 -0
- package/dist/cjs/address/contexts/HistoryDiviner/useDiviner.js.map +1 -0
- package/dist/cjs/address/contexts/index.d.ts +2 -0
- package/dist/cjs/address/contexts/index.d.ts.map +1 -0
- package/dist/cjs/address/contexts/index.js +5 -0
- package/dist/cjs/address/contexts/index.js.map +1 -0
- package/dist/cjs/address/index.d.ts +2 -0
- package/dist/cjs/address/index.d.ts.map +1 -0
- package/dist/cjs/address/index.js +5 -0
- package/dist/cjs/address/index.js.map +1 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/docs.json +1316 -789
- package/dist/esm/address/contexts/HistoryDiviner/Context.d.ts +4 -0
- package/dist/esm/address/contexts/HistoryDiviner/Context.d.ts.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/Context.js +3 -0
- package/dist/esm/address/contexts/HistoryDiviner/Context.js.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/Provider.d.ts +8 -0
- package/dist/esm/address/contexts/HistoryDiviner/Provider.d.ts.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/Provider.js +25 -0
- package/dist/esm/address/contexts/HistoryDiviner/Provider.js.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/State.d.ts +8 -0
- package/dist/esm/address/contexts/HistoryDiviner/State.d.ts.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/State.js +2 -0
- package/dist/esm/address/contexts/HistoryDiviner/State.js.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/index.d.ts +6 -0
- package/dist/esm/address/contexts/HistoryDiviner/index.d.ts.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/index.js +6 -0
- package/dist/esm/address/contexts/HistoryDiviner/index.js.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/use.d.ts +2 -0
- package/dist/esm/address/contexts/HistoryDiviner/use.d.ts.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/use.js +4 -0
- package/dist/esm/address/contexts/HistoryDiviner/use.js.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/useDiviner.d.ts +3 -0
- package/dist/esm/address/contexts/HistoryDiviner/useDiviner.d.ts.map +1 -0
- package/dist/esm/address/contexts/HistoryDiviner/useDiviner.js +31 -0
- package/dist/esm/address/contexts/HistoryDiviner/useDiviner.js.map +1 -0
- package/dist/esm/address/contexts/index.d.ts +2 -0
- package/dist/esm/address/contexts/index.d.ts.map +1 -0
- package/dist/esm/address/contexts/index.js +2 -0
- package/dist/esm/address/contexts/index.js.map +1 -0
- package/dist/esm/address/index.d.ts +2 -0
- package/dist/esm/address/index.d.ts.map +1 -0
- package/dist/esm/address/index.js +2 -0
- package/dist/esm/address/index.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/package.json +5 -4
- package/src/address/contexts/HistoryDiviner/Context.ts +5 -0
- package/src/address/contexts/HistoryDiviner/Provider.tsx +39 -0
- package/src/address/contexts/HistoryDiviner/State.ts +8 -0
- package/src/address/contexts/HistoryDiviner/index.ts +5 -0
- package/src/address/contexts/HistoryDiviner/use.tsx +5 -0
- package/src/address/contexts/HistoryDiviner/useDiviner.tsx +37 -0
- package/src/address/contexts/index.ts +1 -0
- package/src/address/index.ts +1 -0
- package/src/index.ts +1 -0
@@ -0,0 +1,4 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import { AddressHistoryDivinerState } from './State';
|
3
|
+
export declare const AddressHistoryDivinerContext: import("react").Context<AddressHistoryDivinerState & import("@xyo-network/react-shared").ContextExState>;
|
4
|
+
//# sourceMappingURL=Context.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/Context.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAEpD,eAAO,MAAM,4BAA4B,0GAAgD,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/Context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAI3D,MAAM,CAAC,MAAM,4BAA4B,GAAG,eAAe,EAA8B,CAAA"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import { XyoRemoteAddressHistoryDiviner } from '@xyo-network/api';
|
3
|
+
import { ContextExProviderProps } from '@xyo-network/react-shared';
|
4
|
+
export declare type AddressHistoryDivinerProviderProps = ContextExProviderProps<{
|
5
|
+
diviner?: XyoRemoteAddressHistoryDiviner;
|
6
|
+
}>;
|
7
|
+
export declare const AddressHistoryDivinerProvider: React.FC<AddressHistoryDivinerProviderProps>;
|
8
|
+
//# sourceMappingURL=Provider.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/Provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAKlE,oBAAY,kCAAkC,GAAG,sBAAsB,CAAC;IACtE,OAAO,CAAC,EAAE,8BAA8B,CAAA;CACzC,CAAC,CAAA;AAEF,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC,kCAAkC,CA4BtF,CAAA"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
2
|
+
import { useEffect, useState } from 'react';
|
3
|
+
import { AddressHistoryDivinerContext } from './Context';
|
4
|
+
export const AddressHistoryDivinerProvider = ({ diviner: divinerProp, required = false, children }) => {
|
5
|
+
const [diviner, setDiviner] = useState(divinerProp);
|
6
|
+
useEffect(() => {
|
7
|
+
if (divinerProp) {
|
8
|
+
setDiviner(divinerProp);
|
9
|
+
}
|
10
|
+
}, [divinerProp, setDiviner]);
|
11
|
+
const resolveDiviner = () => {
|
12
|
+
if (divinerProp) {
|
13
|
+
return diviner === divinerProp ? diviner : undefined;
|
14
|
+
}
|
15
|
+
else {
|
16
|
+
return diviner;
|
17
|
+
}
|
18
|
+
};
|
19
|
+
return (_jsx(AddressHistoryDivinerContext.Provider, { value: {
|
20
|
+
diviner: resolveDiviner(),
|
21
|
+
provided: true,
|
22
|
+
setDiviner,
|
23
|
+
}, children: diviner ? children : required ? null : children }));
|
24
|
+
};
|
25
|
+
//# sourceMappingURL=Provider.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/Provider.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAA;AAMxD,MAAM,CAAC,MAAM,6BAA6B,GAAiD,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;IAClJ,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA6C,WAAW,CAAC,CAAA;IAE/F,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,EAAE;YACf,UAAU,CAAC,WAAW,CAAC,CAAA;SACxB;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAA;IAE7B,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,IAAI,WAAW,EAAE;YACf,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;SACrD;aAAM;YACL,OAAO,OAAO,CAAA;SACf;IACH,CAAC,CAAA;IAED,OAAO,CACL,KAAC,4BAA4B,CAAC,QAAQ,IACpC,KAAK,EAAE;YACL,OAAO,EAAE,cAAc,EAAE;YACzB,QAAQ,EAAE,IAAI;YACd,UAAU;SACX,YAEA,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,GACV,CACzC,CAAA;AACH,CAAC,CAAA"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { XyoRemoteAddressHistoryDiviner } from '@xyo-network/api';
|
2
|
+
import { ContextExState } from '@xyo-network/react-shared';
|
3
|
+
import { Dispatch, SetStateAction } from 'react';
|
4
|
+
export interface AddressHistoryDivinerState extends ContextExState {
|
5
|
+
diviner?: XyoRemoteAddressHistoryDiviner;
|
6
|
+
setDiviner?: Dispatch<SetStateAction<XyoRemoteAddressHistoryDiviner | undefined>>;
|
7
|
+
}
|
8
|
+
//# sourceMappingURL=State.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/State.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAEhD,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,OAAO,CAAC,EAAE,8BAA8B,CAAA;IACxC,UAAU,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,8BAA8B,GAAG,SAAS,CAAC,CAAC,CAAA;CAClF"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"State.js","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/State.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/address/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 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/address/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 @@
|
|
1
|
+
{"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/use.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,wBAAwB,cAAe,OAAO,wHAAkF,CAAA"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import { useContextEx } from '@xyo-network/react-shared';
|
2
|
+
import { AddressHistoryDivinerContext } from './Context';
|
3
|
+
export const useAddressHistoryDiviner = (required) => useContextEx(AddressHistoryDivinerContext, 'AddressHistoryDiviner', required);
|
4
|
+
//# sourceMappingURL=use.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use.js","sourceRoot":"","sources":["../../../../../src/address/contexts/HistoryDiviner/use.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAA;AAExD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAkB,EAAE,EAAE,CAAC,YAAY,CAAC,4BAA4B,EAAE,uBAAuB,EAAE,QAAQ,CAAC,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useDiviner.d.ts","sourceRoot":"","sources":["../../../../../src/address/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/address/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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/address/contexts/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/address/contexts/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/address/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/address/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
package/dist/esm/index.d.ts
CHANGED
package/dist/esm/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
|
package/dist/esm/index.js
CHANGED
package/dist/esm/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
|
package/package.json
CHANGED
@@ -15,9 +15,9 @@
|
|
15
15
|
"@xylabs/react-flexbox": "^2.15.1",
|
16
16
|
"@xylabs/react-shared": "^2.15.1",
|
17
17
|
"@xyo-network/api-models": "^2.39.6",
|
18
|
-
"@xyo-network/react-archivist": "^2.40.
|
19
|
-
"@xyo-network/react-network": "^2.40.
|
20
|
-
"@xyo-network/react-shared": "^2.40.
|
18
|
+
"@xyo-network/react-archivist": "^2.40.7",
|
19
|
+
"@xyo-network/react-network": "^2.40.7",
|
20
|
+
"@xyo-network/react-shared": "^2.40.7",
|
21
21
|
"lodash": "^4.17.21",
|
22
22
|
"react-json-view": "^1.21.3",
|
23
23
|
"tslib": "^2.4.1"
|
@@ -30,6 +30,7 @@
|
|
30
30
|
"@xylabs/sdk-js": "^2.6.9",
|
31
31
|
"@xyo-network/api": "^2.39.6",
|
32
32
|
"@xyo-network/archivist": "^2.39.6",
|
33
|
+
"@xyo-network/boundwitness": "^2.39.6",
|
33
34
|
"@xyo-network/diviner": "^2.39.6",
|
34
35
|
"@xyo-network/module": "^2.39.6",
|
35
36
|
"@xyo-network/network": "^2.39.6",
|
@@ -110,5 +111,5 @@
|
|
110
111
|
},
|
111
112
|
"sideEffects": false,
|
112
113
|
"types": "dist/esm/index.d.ts",
|
113
|
-
"version": "2.40.
|
114
|
+
"version": "2.40.7"
|
114
115
|
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import { XyoRemoteAddressHistoryDiviner } from '@xyo-network/api'
|
2
|
+
import { ContextExProviderProps } from '@xyo-network/react-shared'
|
3
|
+
import { useEffect, useState } from 'react'
|
4
|
+
|
5
|
+
import { AddressHistoryDivinerContext } from './Context'
|
6
|
+
|
7
|
+
export type AddressHistoryDivinerProviderProps = ContextExProviderProps<{
|
8
|
+
diviner?: XyoRemoteAddressHistoryDiviner
|
9
|
+
}>
|
10
|
+
|
11
|
+
export const AddressHistoryDivinerProvider: React.FC<AddressHistoryDivinerProviderProps> = ({ diviner: divinerProp, required = false, children }) => {
|
12
|
+
const [diviner, setDiviner] = useState<XyoRemoteAddressHistoryDiviner | undefined>(divinerProp)
|
13
|
+
|
14
|
+
useEffect(() => {
|
15
|
+
if (divinerProp) {
|
16
|
+
setDiviner(divinerProp)
|
17
|
+
}
|
18
|
+
}, [divinerProp, setDiviner])
|
19
|
+
|
20
|
+
const resolveDiviner = () => {
|
21
|
+
if (divinerProp) {
|
22
|
+
return diviner === divinerProp ? diviner : undefined
|
23
|
+
} else {
|
24
|
+
return diviner
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
return (
|
29
|
+
<AddressHistoryDivinerContext.Provider
|
30
|
+
value={{
|
31
|
+
diviner: resolveDiviner(),
|
32
|
+
provided: true,
|
33
|
+
setDiviner,
|
34
|
+
}}
|
35
|
+
>
|
36
|
+
{diviner ? children : required ? null : children}
|
37
|
+
</AddressHistoryDivinerContext.Provider>
|
38
|
+
)
|
39
|
+
}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { XyoRemoteAddressHistoryDiviner } from '@xyo-network/api'
|
2
|
+
import { ContextExState } from '@xyo-network/react-shared'
|
3
|
+
import { Dispatch, SetStateAction } from 'react'
|
4
|
+
|
5
|
+
export interface AddressHistoryDivinerState extends ContextExState {
|
6
|
+
diviner?: XyoRemoteAddressHistoryDiviner
|
7
|
+
setDiviner?: Dispatch<SetStateAction<XyoRemoteAddressHistoryDiviner | undefined>>
|
8
|
+
}
|
@@ -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
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './HistoryDiviner'
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './contexts'
|
package/src/index.ts
CHANGED