@xyo-network/react-api 2.41.20 → 2.41.22

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 +1 @@
1
- {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../../src/archive/contexts/Provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAKnD,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAIxE,CAAA"}
1
+ {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../../src/archive/contexts/Provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAMnD,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAUxE,CAAA"}
@@ -1,8 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useArchiveArchivists } from '@xyo-network/react-node';
2
3
  import { useState } from 'react';
3
4
  import { ArchiveContext } from './Context';
4
5
  export const ArchiveProvider = ({ defaultArchive, ...props }) => {
5
- const [archive, setArchive] = useState();
6
- return _jsx(ArchiveContext.Provider, { value: { archive: archive ?? defaultArchive, provided: true, setArchive }, ...props });
6
+ const [archive, setArchive] = useState(defaultArchive);
7
+ const { archivePayloadArchivist, archiveBoundWitnessArchivist } = useArchiveArchivists(archive);
8
+ return (_jsx(ArchiveContext.Provider, { value: { archive: archive ?? defaultArchive, archiveBoundWitnessArchivist, archivePayloadArchivist, provided: true, setArchive }, ...props }));
7
9
  };
8
10
  //# sourceMappingURL=Provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../../../src/archive/contexts/Provider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAM1C,MAAM,CAAC,MAAM,eAAe,GAAiD,CAAC,EAAE,cAAc,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAC5G,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAU,CAAA;IAEhD,OAAO,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAM,KAAK,GAAI,CAAA;AAC1H,CAAC,CAAA"}
1
+ {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../../../src/archive/contexts/Provider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAM1C,MAAM,CAAC,MAAM,eAAe,GAAiD,CAAC,EAAE,cAAc,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAC5G,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAqB,cAAc,CAAC,CAAA;IAC1E,MAAM,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAE/F,OAAO,CACL,KAAC,cAAc,CAAC,QAAQ,IACtB,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAC5H,KAAK,GACT,CACH,CAAA;AACH,CAAC,CAAA"}
@@ -1,7 +1,10 @@
1
+ import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
1
2
  import { ContextExState } from '@xyo-network/react-shared';
2
3
  import { Dispatch } from 'react';
3
4
  export interface ArchiveContextState extends ContextExState {
4
5
  archive?: string;
6
+ archivePayloadArchivist?: ArchivistWrapper;
7
+ archiveBoundWitnessArchivist?: ArchivistWrapper;
5
8
  setArchive?: Dispatch<string>;
6
9
  }
7
10
  //# sourceMappingURL=State.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../src/archive/contexts/State.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAC9B"}
1
+ {"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../src/archive/contexts/State.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uBAAuB,CAAC,EAAE,gBAAgB,CAAA;IAC1C,4BAA4B,CAAC,EAAE,gBAAgB,CAAA;IAC/C,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAC9B"}
package/package.json CHANGED
@@ -15,19 +15,20 @@
15
15
  "@xylabs/react-dialogs": "^2.15.8",
16
16
  "@xylabs/react-flexbox": "^2.15.8",
17
17
  "@xylabs/react-shared": "^2.15.8",
18
- "@xyo-network/api": "^2.43.5",
19
- "@xyo-network/api-models": "^2.43.5",
20
- "@xyo-network/archivist-wrapper": "^2.43.5",
21
- "@xyo-network/boundwitness-model": "^2.43.5",
22
- "@xyo-network/diviner": "^2.43.5",
23
- "@xyo-network/huri": "^2.43.5",
24
- "@xyo-network/module": "^2.43.5",
25
- "@xyo-network/network": "^2.43.5",
26
- "@xyo-network/payload-builder": "^2.43.5",
27
- "@xyo-network/payload-model": "^2.43.5",
28
- "@xyo-network/react-archivist": "^2.41.20",
29
- "@xyo-network/react-network": "^2.41.20",
30
- "@xyo-network/react-shared": "^2.41.20",
18
+ "@xyo-network/api": "^2.43.6",
19
+ "@xyo-network/api-models": "^2.43.6",
20
+ "@xyo-network/archivist-wrapper": "^2.43.6",
21
+ "@xyo-network/boundwitness-model": "^2.43.6",
22
+ "@xyo-network/diviner": "^2.43.6",
23
+ "@xyo-network/huri": "^2.43.6",
24
+ "@xyo-network/module": "^2.43.6",
25
+ "@xyo-network/network": "^2.43.6",
26
+ "@xyo-network/payload-builder": "^2.43.6",
27
+ "@xyo-network/payload-model": "^2.43.6",
28
+ "@xyo-network/react-archivist": "^2.41.22",
29
+ "@xyo-network/react-network": "^2.41.22",
30
+ "@xyo-network/react-node": "^2.41.22",
31
+ "@xyo-network/react-shared": "^2.41.22",
31
32
  "lodash": "^4.17.21",
32
33
  "react-json-view": "^1.21.3"
33
34
  },
@@ -39,7 +40,7 @@
39
40
  "react": "^18.2.0",
40
41
  "react-dom": "^18.2.0",
41
42
  "react-router-dom": "^6.6.1",
42
- "rollbar": "^2.26.0"
43
+ "rollbar": "^2.26.1"
43
44
  },
44
45
  "peerDependencies": {
45
46
  "@mui/icons-material": "5.11.0",
@@ -98,5 +99,5 @@
98
99
  },
99
100
  "sideEffects": false,
100
101
  "types": "dist/esm/index.d.ts",
101
- "version": "2.41.20"
102
+ "version": "2.41.22"
102
103
  }
@@ -0,0 +1,97 @@
1
+ /* eslint-disable import/no-internal-modules */
2
+ import { TextField, Typography } from '@mui/material'
3
+ import { ComponentStory, DecoratorFn } from '@storybook/react'
4
+ import { FlexCol } from '@xylabs/react-flexbox'
5
+ import { RemoteModuleResolver } from '@xyo-network/http-proxy-module'
6
+ import { NodeConfigSchema } from '@xyo-network/node'
7
+ import { MemoryNodeProvider, ModuleRepositoryProvider, useModuleRepository } from '@xyo-network/react-node'
8
+ import { usePromise } from '@xyo-network/react-shared'
9
+ import { useMemo, useState } from 'react'
10
+
11
+ import { ArchiveProvider, useArchive } from '../contexts'
12
+ import { ArchiveSelectEx } from './ArchiveSelectEx'
13
+
14
+ const apiConfig = { apiDomain: 'http://localhost:8080' }
15
+ const temp = 'temp'
16
+
17
+ const ModuleRepositoryDecorator: DecoratorFn = (Story, args) => {
18
+ return (
19
+ <ModuleRepositoryProvider defaultResolvers={{ beta: new RemoteModuleResolver(apiConfig) }}>
20
+ <Story {...args} />
21
+ </ModuleRepositoryProvider>
22
+ )
23
+ }
24
+
25
+ const MemoryNodeResolverDecorator: DecoratorFn = (Story, args) => {
26
+ const { resolvers } = useModuleRepository(true)
27
+ return (
28
+ <MemoryNodeProvider config={{ schema: NodeConfigSchema }} resolver={resolvers?.beta}>
29
+ <Story {...args} />
30
+ </MemoryNodeProvider>
31
+ )
32
+ }
33
+
34
+ const ArchiveDecorator: DecoratorFn = (Story, args) => (
35
+ <ArchiveProvider defaultArchive={temp}>
36
+ <Story {...args} />
37
+ </ArchiveProvider>
38
+ )
39
+
40
+ const StorybookEntry = {
41
+ argTypes: {},
42
+ component: ArchiveSelectEx,
43
+ decorators: [ArchiveDecorator, MemoryNodeResolverDecorator, ModuleRepositoryDecorator],
44
+ parameters: {
45
+ docs: {
46
+ page: null,
47
+ },
48
+ },
49
+ title: 'archive/ArchiveArchivist',
50
+ }
51
+
52
+ const Template: ComponentStory<typeof ArchiveSelectEx> = () => {
53
+ const { archivePayloadArchivist, archiveBoundWitnessArchivist, archive } = useArchive()
54
+ const [payloadHash, setPayloadHash] = useState<string>('')
55
+ const [boundwitnessHash, setBoundwitnessHash] = useState<string>('')
56
+
57
+ const payloadRequest = useMemo(
58
+ () => (archivePayloadArchivist && payloadHash ? archivePayloadArchivist?.get([payloadHash]) : undefined),
59
+ [payloadHash, archivePayloadArchivist],
60
+ )
61
+ const boundwitnessHashRequest = useMemo(
62
+ () => (archiveBoundWitnessArchivist && boundwitnessHash ? archiveBoundWitnessArchivist?.get([boundwitnessHash]) : undefined),
63
+ [archiveBoundWitnessArchivist, boundwitnessHash],
64
+ )
65
+
66
+ const [payloadResult] = usePromise(payloadRequest, [archivePayloadArchivist, payloadHash])
67
+ const [boundwitnessResult] = usePromise(boundwitnessHashRequest, [archivePayloadArchivist, boundwitnessHash])
68
+
69
+ return (
70
+ <FlexCol rowGap={3} width={'100%'}>
71
+ <TextField
72
+ fullWidth
73
+ value={payloadHash}
74
+ placeholder={`payload hash in ${archive} on ${apiConfig.apiDomain}`}
75
+ onChange={(e) => setPayloadHash(e.target.value)}
76
+ />
77
+ <Typography>Payload from Archive Archivist Module:</Typography>
78
+ <pre>{JSON.stringify(payloadResult?.shift(), null, 2)}</pre>
79
+ <TextField
80
+ fullWidth
81
+ value={boundwitnessHash}
82
+ placeholder={`boundwitness hash in ${archive} on ${apiConfig.apiDomain}`}
83
+ onChange={(e) => setBoundwitnessHash(e.target.value)}
84
+ />
85
+ <Typography>Bound Witness from Archive Archivist Module:</Typography>
86
+ <pre style={{ whiteSpace: 'break-spaces', wordBreak: 'break-all' }}>{JSON.stringify(boundwitnessResult?.shift(), null, 2)}</pre>
87
+ </FlexCol>
88
+ )
89
+ }
90
+
91
+ const Default = Template.bind({})
92
+ Default.args = {}
93
+
94
+ export { Default }
95
+
96
+ // eslint-disable-next-line import/no-default-export
97
+ export default StorybookEntry
@@ -1,4 +1,5 @@
1
1
  import { WithChildren } from '@xylabs/react-shared'
2
+ import { useArchiveArchivists } from '@xyo-network/react-node'
2
3
  import { useState } from 'react'
3
4
 
4
5
  import { ArchiveContext } from './Context'
@@ -8,7 +9,13 @@ export interface ArchiveProviderProps {
8
9
  }
9
10
 
10
11
  export const ArchiveProvider: React.FC<WithChildren<ArchiveProviderProps>> = ({ defaultArchive, ...props }) => {
11
- const [archive, setArchive] = useState<string>()
12
+ const [archive, setArchive] = useState<string | undefined>(defaultArchive)
13
+ const { archivePayloadArchivist, archiveBoundWitnessArchivist } = useArchiveArchivists(archive)
12
14
 
13
- return <ArchiveContext.Provider value={{ archive: archive ?? defaultArchive, provided: true, setArchive }} {...props} />
15
+ return (
16
+ <ArchiveContext.Provider
17
+ value={{ archive: archive ?? defaultArchive, archiveBoundWitnessArchivist, archivePayloadArchivist, provided: true, setArchive }}
18
+ {...props}
19
+ />
20
+ )
14
21
  }
@@ -1,7 +1,10 @@
1
+ import { ArchivistWrapper } from '@xyo-network/archivist-wrapper'
1
2
  import { ContextExState } from '@xyo-network/react-shared'
2
3
  import { Dispatch } from 'react'
3
4
 
4
5
  export interface ArchiveContextState extends ContextExState {
5
6
  archive?: string
7
+ archivePayloadArchivist?: ArchivistWrapper
8
+ archiveBoundWitnessArchivist?: ArchivistWrapper
6
9
  setArchive?: Dispatch<string>
7
10
  }