@xyo-network/react-archivist 2.28.1 → 2.28.2
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/components/Details.d.ts.map +1 -1
- package/dist/cjs/components/Details.js +3 -2
- package/dist/cjs/components/Details.js.map +1 -1
- package/dist/cjs/contexts/use.d.ts +1 -1
- package/dist/cjs/contexts/use.d.ts.map +1 -1
- package/dist/cjs/contexts/use.js +3 -2
- package/dist/cjs/contexts/use.js.map +1 -1
- package/dist/docs.json +570 -639
- package/dist/esm/components/Details.d.ts.map +1 -1
- package/dist/esm/components/Details.js +3 -2
- package/dist/esm/components/Details.js.map +1 -1
- package/dist/esm/contexts/use.d.ts +1 -1
- package/dist/esm/contexts/use.d.ts.map +1 -1
- package/dist/esm/contexts/use.js +3 -2
- package/dist/esm/contexts/use.js.map +1 -1
- package/package.json +8 -6
- package/src/components/Details.tsx +11 -5
- package/src/contexts/use.ts +7 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Details.d.ts","sourceRoot":"","sources":["../../../src/components/Details.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAW,MAAM,uBAAuB,CAAA;AAE7D,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"Details.d.ts","sourceRoot":"","sources":["../../../src/components/Details.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAW,MAAM,uBAAuB,CAAA;AAE7D,OAAO,EAAE,YAAY,EAA6E,MAAM,wBAAwB,CAAA;AAMhI,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,SAAS,CAAC,EAAE,YAAY,CAAA;CACzB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA0CvD,CAAA"}
|
|
@@ -3,6 +3,7 @@ import { ButtonGroup, Typography } from '@mui/material';
|
|
|
3
3
|
import { ButtonEx } from '@xylabs/react-button';
|
|
4
4
|
import { FlexCol } from '@xylabs/react-flexbox';
|
|
5
5
|
import { useAsyncEffect } from '@xylabs/react-shared';
|
|
6
|
+
import { XyoArchivistClearQueryPayloadSchema, XyoArchivistCommitQueryPayloadSchema } from '@xyo-network/archivist';
|
|
6
7
|
import { useState } from 'react';
|
|
7
8
|
import { useArchivist } from '../contexts';
|
|
8
9
|
export const ArchivistDetails = ({ archivist: archivistProp, ...props }) => {
|
|
@@ -12,12 +13,12 @@ export const ArchivistDetails = ({ archivist: archivistProp, ...props }) => {
|
|
|
12
13
|
useAsyncEffect(
|
|
13
14
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14
15
|
async (mounted) => {
|
|
15
|
-
const payloads = await archivist?.all
|
|
16
|
+
const [, payloads] = (await archivist?.query({ schema: 'network.xyo.query.archivist.all' })) ?? [];
|
|
16
17
|
if (mounted()) {
|
|
17
18
|
setPayloads(payloads);
|
|
18
19
|
}
|
|
19
20
|
}, [archivist, refresh]);
|
|
20
|
-
return (_jsxs(FlexCol, { ...props, children: [_jsx(Typography, { children: `Payloads: ${payloads ? payloads.length : '-'}` }), _jsxs(ButtonGroup, { children: [_jsx(ButtonEx, { disabled: archivist?.
|
|
21
|
+
return (_jsxs(FlexCol, { ...props, children: [_jsx(Typography, { children: `Payloads: ${payloads ? payloads.length : '-'}` }), _jsxs(ButtonGroup, { children: [_jsx(ButtonEx, { disabled: !archivist?.queriable(XyoArchivistCommitQueryPayloadSchema), onClick: () => archivist?.query?.({ schema: XyoArchivistCommitQueryPayloadSchema }), children: "Commit" }), _jsx(ButtonEx, { disabled: archivist?.queriable(XyoArchivistClearQueryPayloadSchema), onClick: () => archivist?.query({ schema: XyoArchivistClearQueryPayloadSchema }), children: "Clear" }), _jsx(ButtonEx, { onClick: () => {
|
|
21
22
|
setRefresh(refresh + 1);
|
|
22
23
|
}, children: "Refresh" })] })] }));
|
|
23
24
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Details.js","sourceRoot":"","sources":["../../../src/components/Details.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"Details.js","sourceRoot":"","sources":["../../../src/components/Details.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAgB,mCAAmC,EAAE,oCAAoC,EAAE,MAAM,wBAAwB,CAAA;AAEhI,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM1C,MAAM,CAAC,MAAM,gBAAgB,GAA+B,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrG,MAAM,EAAE,SAAS,GAAG,aAAa,EAAE,GAAG,YAAY,EAAE,CAAA;IACpD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAyB,CAAA;IACjE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAEzC,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QAClG,IAAI,OAAO,EAAE,EAAE;YACb,WAAW,CAAC,QAAQ,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,CAAC,CACrB,CAAA;IAED,OAAO,CACL,MAAC,OAAO,OAAK,KAAK,aAChB,KAAC,UAAU,cAAE,aAAa,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAc,EAC1E,MAAC,WAAW,eACV,KAAC,QAAQ,IACP,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,oCAAoC,CAAC,EACrE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC,uBAG1E,EACX,KAAC,QAAQ,IACP,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,mCAAmC,CAAC,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC,sBAGvE,EACX,KAAC,QAAQ,IACP,OAAO,EAAE,GAAG,EAAE;4BACZ,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;wBACzB,CAAC,wBAGQ,IACC,IACN,CACX,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -2,5 +2,5 @@ import { XyoPayloadFindFilter } from '@xyo-network/archivist';
|
|
|
2
2
|
import { XyoPayload } from '@xyo-network/payload';
|
|
3
3
|
export declare const useArchivist: (required?: boolean) => Omit<import("./State").ArchivistState & import("@xyo-network/react-shared").ContextExState, "provided">;
|
|
4
4
|
export declare const useArchivistGet: (ids?: string[], required?: boolean) => [(XyoPayload | null)[]?, Error?];
|
|
5
|
-
export declare const useArchivistFind: (filter
|
|
5
|
+
export declare const useArchivistFind: <TFilter extends XyoPayloadFindFilter>(filter: TFilter, required?: boolean) => [(XyoPayload | null)[]?, Error?];
|
|
6
6
|
//# sourceMappingURL=use.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/contexts/use.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/contexts/use.ts"],"names":[],"mappings":"AACA,OAAO,EAAyE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAEpI,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAMjD,eAAO,MAAM,YAAY,iIAExB,CAAA;AAED,eAAO,MAAM,eAAe,SAAU,MAAM,EAAE,yBAAqB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAoBjG,CAAA;AAED,eAAO,MAAM,gBAAgB,iFAA8E,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAoBzI,CAAA"}
|
package/dist/esm/contexts/use.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useAsyncEffect } from '@xylabs/react-shared';
|
|
2
|
+
import { XyoArchivistFindQueryPayloadSchema, XyoArchivistGetQueryPayloadSchema } from '@xyo-network/archivist';
|
|
2
3
|
import { useContextEx } from '@xyo-network/react-shared';
|
|
3
4
|
import { useState } from 'react';
|
|
4
5
|
import { ArchivistContext } from './Context';
|
|
@@ -13,7 +14,7 @@ export const useArchivistGet = (ids, required = false) => {
|
|
|
13
14
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14
15
|
async (mounted) => {
|
|
15
16
|
try {
|
|
16
|
-
const result = archivist ? await archivist.
|
|
17
|
+
const [, result] = archivist ? await archivist.query({ hashes: ids ?? [], schema: XyoArchivistGetQueryPayloadSchema }) : [];
|
|
17
18
|
if (mounted()) {
|
|
18
19
|
setError(undefined);
|
|
19
20
|
setPayloads(result);
|
|
@@ -33,7 +34,7 @@ export const useArchivistFind = (filter, required = false) => {
|
|
|
33
34
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
34
35
|
async (mounted) => {
|
|
35
36
|
try {
|
|
36
|
-
const result = archivist
|
|
37
|
+
const [, result] = archivist ? await archivist.query({ filter, schema: XyoArchivistFindQueryPayloadSchema }) : [];
|
|
37
38
|
if (mounted()) {
|
|
38
39
|
setError(undefined);
|
|
39
40
|
setPayloads(result);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use.js","sourceRoot":"","sources":["../../../src/contexts/use.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"use.js","sourceRoot":"","sources":["../../../src/contexts/use.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,kCAAkC,EAAE,iCAAiC,EAAwB,MAAM,wBAAwB,CAAA;AAGpI,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAE5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAE,EAAE;IAC/C,OAAO,YAAY,CAAC,gBAAgB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;AAC9D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAc,EAAE,QAAQ,GAAG,KAAK,EAAoC,EAAE;IACpG,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAe,CAAA;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAC3C,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC3H,IAAI,OAAO,EAAE,EAAE;gBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;gBACnB,WAAW,CAAC,MAAM,CAAC,CAAA;aACpB;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,SAAS,EAAE,GAAG,CAAC,CACjB,CAAA;IACD,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAuC,MAAe,EAAE,QAAQ,GAAG,KAAK,EAAoC,EAAE;IAC5I,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAe,CAAA;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAC3C,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACjH,IAAI,OAAO,EAAE,EAAE;gBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;gBACnB,WAAW,CAAC,MAAM,CAAC,CAAA;aACpB;SACF;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,EAAW,CAAC,CAAA;SACtB;IACH,CAAC,EACD,CAAC,SAAS,EAAE,MAAM,CAAC,CACpB,CAAA;IACD,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -17,10 +17,11 @@
|
|
|
17
17
|
"@xylabs/react-flexbox": "^2.14.13",
|
|
18
18
|
"@xylabs/react-shared": "^2.14.13",
|
|
19
19
|
"@xylabs/sdk-js": "2.6.6",
|
|
20
|
-
"@xyo-network/api": "^2.26.
|
|
21
|
-
"@xyo-network/archivist": "^2.26.
|
|
22
|
-
"@xyo-network/
|
|
23
|
-
"@xyo-network/
|
|
20
|
+
"@xyo-network/api": "^2.26.13",
|
|
21
|
+
"@xyo-network/archivist": "^2.26.13",
|
|
22
|
+
"@xyo-network/module": "^2.26.13",
|
|
23
|
+
"@xyo-network/payload": "^2.26.13",
|
|
24
|
+
"@xyo-network/react-shared": "^2.28.2",
|
|
24
25
|
"react": "^18.2.0",
|
|
25
26
|
"react-dom": "^18.2.0",
|
|
26
27
|
"tslib": "^2.4.0"
|
|
@@ -29,7 +30,8 @@
|
|
|
29
30
|
"devDependencies": {
|
|
30
31
|
"@storybook/react": "^6.5.10",
|
|
31
32
|
"@xylabs/tsconfig-dom": "^2.5.119",
|
|
32
|
-
"@xyo-network/
|
|
33
|
+
"@xyo-network/account": "^2.26.13",
|
|
34
|
+
"@xyo-network/react-storybook": "^2.28.2"
|
|
33
35
|
},
|
|
34
36
|
"browser": "dist/esm/index.js",
|
|
35
37
|
"docs": "dist/docs.json",
|
|
@@ -73,5 +75,5 @@
|
|
|
73
75
|
},
|
|
74
76
|
"sideEffects": false,
|
|
75
77
|
"types": "dist/esm/index.d.ts",
|
|
76
|
-
"version": "2.28.
|
|
78
|
+
"version": "2.28.2"
|
|
77
79
|
}
|
|
@@ -2,7 +2,7 @@ import { ButtonGroup, Typography } from '@mui/material'
|
|
|
2
2
|
import { ButtonEx } from '@xylabs/react-button'
|
|
3
3
|
import { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'
|
|
4
4
|
import { useAsyncEffect } from '@xylabs/react-shared'
|
|
5
|
-
import { XyoArchivist } from '@xyo-network/archivist'
|
|
5
|
+
import { XyoArchivist, XyoArchivistClearQueryPayloadSchema, XyoArchivistCommitQueryPayloadSchema } from '@xyo-network/archivist'
|
|
6
6
|
import { XyoPayload } from '@xyo-network/payload'
|
|
7
7
|
import { useState } from 'react'
|
|
8
8
|
|
|
@@ -14,13 +14,13 @@ export interface ArchivistDetails extends FlexBoxProps {
|
|
|
14
14
|
|
|
15
15
|
export const ArchivistDetails: React.FC<ArchivistDetails> = ({ archivist: archivistProp, ...props }) => {
|
|
16
16
|
const { archivist = archivistProp } = useArchivist()
|
|
17
|
-
const [payloads, setPayloads] = useState<XyoPayload[]>()
|
|
17
|
+
const [payloads, setPayloads] = useState<(XyoPayload | null)[]>()
|
|
18
18
|
const [refresh, setRefresh] = useState(0)
|
|
19
19
|
|
|
20
20
|
useAsyncEffect(
|
|
21
21
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
22
22
|
async (mounted) => {
|
|
23
|
-
const payloads = await archivist?.all
|
|
23
|
+
const [, payloads] = (await archivist?.query({ schema: 'network.xyo.query.archivist.all' })) ?? []
|
|
24
24
|
if (mounted()) {
|
|
25
25
|
setPayloads(payloads)
|
|
26
26
|
}
|
|
@@ -32,10 +32,16 @@ export const ArchivistDetails: React.FC<ArchivistDetails> = ({ archivist: archiv
|
|
|
32
32
|
<FlexCol {...props}>
|
|
33
33
|
<Typography>{`Payloads: ${payloads ? payloads.length : '-'}`}</Typography>
|
|
34
34
|
<ButtonGroup>
|
|
35
|
-
<ButtonEx
|
|
35
|
+
<ButtonEx
|
|
36
|
+
disabled={!archivist?.queriable(XyoArchivistCommitQueryPayloadSchema)}
|
|
37
|
+
onClick={() => archivist?.query?.({ schema: XyoArchivistCommitQueryPayloadSchema })}
|
|
38
|
+
>
|
|
36
39
|
Commit
|
|
37
40
|
</ButtonEx>
|
|
38
|
-
<ButtonEx
|
|
41
|
+
<ButtonEx
|
|
42
|
+
disabled={archivist?.queriable(XyoArchivistClearQueryPayloadSchema)}
|
|
43
|
+
onClick={() => archivist?.query({ schema: XyoArchivistClearQueryPayloadSchema })}
|
|
44
|
+
>
|
|
39
45
|
Clear
|
|
40
46
|
</ButtonEx>
|
|
41
47
|
<ButtonEx
|
package/src/contexts/use.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { useAsyncEffect } from '@xylabs/react-shared'
|
|
2
|
-
import { XyoPayloadFindFilter } from '@xyo-network/archivist'
|
|
2
|
+
import { XyoArchivistFindQueryPayloadSchema, XyoArchivistGetQueryPayloadSchema, XyoPayloadFindFilter } from '@xyo-network/archivist'
|
|
3
|
+
import { XyoPayloads } from '@xyo-network/module'
|
|
3
4
|
import { XyoPayload } from '@xyo-network/payload'
|
|
4
5
|
import { useContextEx } from '@xyo-network/react-shared'
|
|
5
6
|
import { useState } from 'react'
|
|
@@ -12,13 +13,13 @@ export const useArchivist = (required = false) => {
|
|
|
12
13
|
|
|
13
14
|
export const useArchivistGet = (ids?: string[], required = false): [(XyoPayload | null)[]?, Error?] => {
|
|
14
15
|
const { archivist } = useArchivist(required)
|
|
15
|
-
const [payloads, setPayloads] = useState<
|
|
16
|
+
const [payloads, setPayloads] = useState<XyoPayloads>()
|
|
16
17
|
const [error, setError] = useState<Error>()
|
|
17
18
|
useAsyncEffect(
|
|
18
19
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
19
20
|
async (mounted) => {
|
|
20
21
|
try {
|
|
21
|
-
const result = archivist ? await archivist.
|
|
22
|
+
const [, result] = archivist ? await archivist.query({ hashes: ids ?? [], schema: XyoArchivistGetQueryPayloadSchema }) : []
|
|
22
23
|
if (mounted()) {
|
|
23
24
|
setError(undefined)
|
|
24
25
|
setPayloads(result)
|
|
@@ -32,15 +33,15 @@ export const useArchivistGet = (ids?: string[], required = false): [(XyoPayload
|
|
|
32
33
|
return [payloads, error]
|
|
33
34
|
}
|
|
34
35
|
|
|
35
|
-
export const useArchivistFind = (filter
|
|
36
|
+
export const useArchivistFind = <TFilter extends XyoPayloadFindFilter>(filter: TFilter, required = false): [(XyoPayload | null)[]?, Error?] => {
|
|
36
37
|
const { archivist } = useArchivist(required)
|
|
37
|
-
const [payloads, setPayloads] = useState<
|
|
38
|
+
const [payloads, setPayloads] = useState<XyoPayloads>()
|
|
38
39
|
const [error, setError] = useState<Error>()
|
|
39
40
|
useAsyncEffect(
|
|
40
41
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
41
42
|
async (mounted) => {
|
|
42
43
|
try {
|
|
43
|
-
const result = archivist
|
|
44
|
+
const [, result] = archivist ? await archivist.query({ filter, schema: XyoArchivistFindQueryPayloadSchema }) : []
|
|
44
45
|
if (mounted()) {
|
|
45
46
|
setError(undefined)
|
|
46
47
|
setPayloads(result)
|