@xyo-network/react-archivist 7.0.0 → 7.0.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.
@@ -3,7 +3,7 @@ import type { ArchivistInstance } from '@xyo-network/archivist-model';
3
3
  import React from 'react';
4
4
  import { ArchivistCard } from './Card.tsx';
5
5
  declare const StorybookEntry: Meta<typeof ArchivistCard>;
6
- declare const SingleModule: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("@mui/material").CardOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "style" | "classes" | "children" | "sx" | "variant" | "elevation" | "square" | "raised"> & {
6
+ declare const SingleModule: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("@mui/material").CardOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "style" | "classes" | "children" | "sx" | "variant" | "elevation" | "square" | "raised"> & {
7
7
  component?: React.ElementType;
8
8
  } & import("@xyo-network/react-module").ModuleRenderProps<ArchivistInstance<import("@xyo-network/archivist-model").ArchivistParams<import("@xyo-network/module-model").AnyConfigSchema<import("@xyo-network/archivist-model").ArchivistConfig>>, import("@xyo-network/archivist-model").ArchivistModuleEventData, import("@xyo-network/payload-model").Payload>>>;
9
9
  export { SingleModule };
@@ -1,8 +1,8 @@
1
1
  import type { Meta } from '@storybook/react-vite';
2
2
  import { ArchivistStats } from './ArchivistStats.tsx';
3
3
  declare const StorybookEntry: Meta<typeof ArchivistStats>;
4
- declare const Default: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./ArchivistStats.tsx").ArchivistStatsProps>;
5
- declare const WithStats: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./ArchivistStats.tsx").ArchivistStatsProps>;
4
+ declare const Default: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./ArchivistStats.tsx").ArchivistStatsProps>;
5
+ declare const WithStats: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./ArchivistStats.tsx").ArchivistStatsProps>;
6
6
  export { Default, WithStats };
7
7
  export default StorybookEntry;
8
8
  //# sourceMappingURL=ArchivistStats.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArchivistStats.stories.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Card/components/Stats/ArchivistStats.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAO1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAMrD,QAAA,MAAM,cAAc,EAIf,IAAI,CAAC,OAAO,cAAc,CAAC,CAAA;AAOhC,QAAA,MAAM,OAAO,sJAAoB,CAAA;AACjC,QAAA,MAAM,SAAS,sJAAoB,CAAA;AAQnC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;AAE7B,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"ArchivistStats.stories.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Card/components/Stats/ArchivistStats.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAO1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAMrD,QAAA,MAAM,cAAc,EAIf,IAAI,CAAC,OAAO,cAAc,CAAC,CAAA;AAOhC,QAAA,MAAM,OAAO,wLAAoB,CAAA;AACjC,QAAA,MAAM,SAAS,wLAAoB,CAAA;AAQnC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;AAE7B,eAAe,cAAc,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import type { Meta } from '@storybook/react-vite';
2
2
  import { MemoryArchivistsStats } from './MemoryArchivistStats.tsx';
3
3
  declare const StorybookEntry: Meta<typeof MemoryArchivistsStats>;
4
- declare const Default: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./MemoryArchivistStats.tsx").MemoryArchivistStatsProps>;
4
+ declare const Default: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, import("./MemoryArchivistStats.tsx").MemoryArchivistStatsProps>;
5
5
  export { Default };
6
6
  export default StorybookEntry;
7
7
  //# sourceMappingURL=MemoryArchivistStats.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryArchivistStats.stories.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Card/components/Stats/MemoryArchivistStats.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAU1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,QAAA,MAAM,cAAc,EAIf,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAsCvC,QAAA,MAAM,OAAO,kKAAoB,CAAA;AAEjC,OAAO,EAAE,OAAO,EAAE,CAAA;AAElB,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"MemoryArchivistStats.stories.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Card/components/Stats/MemoryArchivistStats.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAU1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,QAAA,MAAM,cAAc,EAIf,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAsCvC,QAAA,MAAM,OAAO,oMAAoB,CAAA;AAEjC,OAAO,EAAE,OAAO,EAAE,CAAA;AAElB,eAAe,cAAc,CAAA"}
@@ -2,9 +2,9 @@ import type { Meta } from '@storybook/react-vite';
2
2
  import type { ArchivistDetailsProps } from './Details.tsx';
3
3
  import { ArchivistDetails } from './Details.tsx';
4
4
  declare const StorybookEntry: Meta<typeof ArchivistDetails>;
5
- declare const WithNoArchivist: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, ArchivistDetailsProps>;
6
- declare const WithNoData: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, ArchivistDetailsProps>;
7
- declare const WithData: import("storybook/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, ArchivistDetailsProps>;
5
+ declare const WithNoArchivist: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, ArchivistDetailsProps>;
6
+ declare const WithNoData: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, ArchivistDetailsProps>;
7
+ declare const WithData: import(".store/storybook-virtual-fa39dd25b7/package/internal/csf").AnnotatedStoryFn<import("@storybook/react-vite").ReactRenderer, ArchivistDetailsProps>;
8
8
  export { WithData, WithNoArchivist, WithNoData, };
9
9
  export default StorybookEntry;
10
10
  //# sourceMappingURL=Details.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Details.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Details/Details.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAQ1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,QAAA,MAAM,cAAc,EAKf,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAA;AA2ClC,QAAA,MAAM,eAAe,yHAAyB,CAAA;AAG9C,QAAA,MAAM,UAAU,yHAA8B,CAAA;AAG9C,QAAA,MAAM,QAAQ,yHAA4B,CAAA;AAG1C,OAAO,EACL,QAAQ,EAAE,eAAe,EAAE,UAAU,GACtC,CAAA;AAED,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"Details.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Details/Details.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,uBAAuB,CAAA;AAQ1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,QAAA,MAAM,cAAc,EAKf,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAA;AA2ClC,QAAA,MAAM,eAAe,2JAAyB,CAAA;AAG9C,QAAA,MAAM,UAAU,2JAA8B,CAAA;AAG9C,QAAA,MAAM,QAAQ,2JAA4B,CAAA;AAG1C,OAAO,EACL,QAAQ,EAAE,eAAe,EAAE,UAAU,GACtC,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,10 +1,6 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/components/Card/Card.tsx
5
2
  import { Card } from "@mui/material";
6
3
  import { ModuleCardActions } from "@xyo-network/react-module";
7
- import React7 from "react";
8
4
 
9
5
  // src/components/Card/CardContent.tsx
10
6
  import { useAsyncEffect as useAsyncEffect2 } from "@xylabs/react-async-effect";
@@ -12,113 +8,95 @@ import { FlexGrowRow } from "@xylabs/react-flexbox";
12
8
  import { ModuleWrapper } from "@xyo-network/module-wrapper";
13
9
  import { ModuleCardContent } from "@xyo-network/react-module";
14
10
  import { useWallet } from "@xyo-network/react-wallet";
15
- import React5, { useState as useState3 } from "react";
11
+ import { useState as useState3 } from "react";
16
12
 
17
13
  // src/components/Card/components/ArchivistParent.tsx
18
14
  import { ListItem, Typography } from "@mui/material";
19
- import React from "react";
20
- var ArchivistParent = /* @__PURE__ */ __name(({ archivistType, parentArchivists }) => /* @__PURE__ */ React.createElement(React.Fragment, null, parentArchivists?.map((address) => {
21
- return /* @__PURE__ */ React.createElement(ListItem, {
22
- key: address
23
- }, /* @__PURE__ */ React.createElement(Typography, {
24
- variant: "subtitle2"
25
- }, archivistType, ":", " ", /* @__PURE__ */ React.createElement(Typography, {
26
- variant: "caption",
27
- sx: {
28
- ml: 0.5
29
- }
30
- }, address)));
31
- })), "ArchivistParent");
15
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
16
+ var ArchivistParent = ({ archivistType, parentArchivists }) => /* @__PURE__ */ jsx(Fragment, { children: parentArchivists?.map((address) => {
17
+ return /* @__PURE__ */ jsx(ListItem, { children: /* @__PURE__ */ jsxs(Typography, { variant: "subtitle2", children: [
18
+ archivistType,
19
+ ":",
20
+ " ",
21
+ /* @__PURE__ */ jsx(Typography, { variant: "caption", sx: { ml: 0.5 }, children: address })
22
+ ] }) }, address);
23
+ }) });
32
24
 
33
25
  // src/components/Card/components/ArchivistParents.tsx
34
26
  import { ArrowRightRounded as ArrowRightRoundedIcon } from "@mui/icons-material";
35
- import { Collapse, IconButton, List, Paper, Typography as Typography2 } from "@mui/material";
27
+ import {
28
+ Collapse,
29
+ IconButton,
30
+ List,
31
+ Paper,
32
+ Typography as Typography2
33
+ } from "@mui/material";
36
34
  import { FlexCol } from "@xylabs/react-flexbox";
37
- import React2, { useState } from "react";
38
- var ArchivistParents = /* @__PURE__ */ __name(({ config, ...props }) => {
35
+ import { useState } from "react";
36
+ import { Fragment as Fragment2, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
37
+ var ArchivistParents = ({ config, ...props }) => {
39
38
  const [parentArchivistCollapse, setParentArchivistCollapse] = useState(false);
40
- const { commit, read, write } = config?.parents ?? {};
41
- return /* @__PURE__ */ React2.createElement(React2.Fragment, null, commit || read || write ? /* @__PURE__ */ React2.createElement(FlexCol, {
42
- alignItems: "start",
43
- ...props
44
- }, /* @__PURE__ */ React2.createElement("span", {
45
- onClick: /* @__PURE__ */ __name(() => setParentArchivistCollapse(!parentArchivistCollapse), "onClick")
46
- }, /* @__PURE__ */ React2.createElement(Typography2, {
47
- variant: "subtitle2",
48
- sx: {
49
- cursor: "pointer",
50
- display: "inline-block"
51
- }
52
- }, "Parents"), /* @__PURE__ */ React2.createElement(IconButton, {
53
- size: "small"
54
- }, /* @__PURE__ */ React2.createElement(ArrowRightRoundedIcon, {
55
- sx: {
56
- rotate: parentArchivistCollapse ? "90deg" : "0deg",
57
- transition: "all .25s"
58
- }
59
- }))), /* @__PURE__ */ React2.createElement(Collapse, {
60
- in: parentArchivistCollapse
61
- }, /* @__PURE__ */ React2.createElement(Paper, {
62
- elevation: 2
63
- }, /* @__PURE__ */ React2.createElement(List, null, /* @__PURE__ */ React2.createElement(ArchivistParent, {
64
- archivistType: "Commit",
65
- parentArchivists: commit
66
- }), /* @__PURE__ */ React2.createElement(ArchivistParent, {
67
- archivistType: "Read",
68
- parentArchivists: read
69
- }), /* @__PURE__ */ React2.createElement(ArchivistParent, {
70
- archivistType: "Write",
71
- parentArchivists: write
72
- }))))) : null);
73
- }, "ArchivistParents");
39
+ const {
40
+ commit,
41
+ read,
42
+ write
43
+ } = config?.parents ?? {};
44
+ return /* @__PURE__ */ jsx2(Fragment2, { children: commit || read || write ? /* @__PURE__ */ jsxs2(FlexCol, { alignItems: "start", ...props, children: [
45
+ /* @__PURE__ */ jsxs2("span", { onClick: () => setParentArchivistCollapse(!parentArchivistCollapse), children: [
46
+ /* @__PURE__ */ jsx2(
47
+ Typography2,
48
+ {
49
+ variant: "subtitle2",
50
+ sx: { cursor: "pointer", display: "inline-block" },
51
+ children: "Parents"
52
+ }
53
+ ),
54
+ /* @__PURE__ */ jsx2(IconButton, { size: "small", children: /* @__PURE__ */ jsx2(ArrowRightRoundedIcon, { sx: { rotate: parentArchivistCollapse ? "90deg" : "0deg", transition: "all .25s" } }) })
55
+ ] }),
56
+ /* @__PURE__ */ jsx2(Collapse, { in: parentArchivistCollapse, children: /* @__PURE__ */ jsx2(Paper, { elevation: 2, children: /* @__PURE__ */ jsxs2(List, { children: [
57
+ /* @__PURE__ */ jsx2(ArchivistParent, { archivistType: "Commit", parentArchivists: commit }),
58
+ /* @__PURE__ */ jsx2(ArchivistParent, { archivistType: "Read", parentArchivists: read }),
59
+ /* @__PURE__ */ jsx2(ArchivistParent, { archivistType: "Write", parentArchivists: write })
60
+ ] }) }) })
61
+ ] }) : null });
62
+ };
74
63
 
75
64
  // src/components/Card/components/Stats/ArchivistStats.tsx
76
65
  import { Badge, Tooltip } from "@mui/material";
77
66
  import { FlexRow } from "@xylabs/react-flexbox";
78
- import React3 from "react";
79
67
  import { BsFileEarmarkCode } from "react-icons/bs";
80
- import { VscOrganization, VscSymbolMethod, VscSymbolNamespace } from "react-icons/vsc";
81
- var ArchivistStats = /* @__PURE__ */ __name(({ addresses, boundWitnesses, payloads, schemas }) => {
82
- return /* @__PURE__ */ React3.createElement(FlexRow, {
83
- gap: 2,
84
- mr: 0.5
85
- }, payloads?.length ? /* @__PURE__ */ React3.createElement(Tooltip, {
86
- title: "Payloads"
87
- }, /* @__PURE__ */ React3.createElement(Badge, {
88
- badgeContent: payloads?.length,
89
- color: "primary"
90
- }, /* @__PURE__ */ React3.createElement(VscSymbolNamespace, {
91
- size: 20
92
- }))) : null, boundWitnesses?.length ? /* @__PURE__ */ React3.createElement(Tooltip, {
93
- title: "Blocks"
94
- }, /* @__PURE__ */ React3.createElement(Badge, {
95
- badgeContent: boundWitnesses?.length,
96
- color: "primary"
97
- }, /* @__PURE__ */ React3.createElement(VscSymbolMethod, {
98
- size: 20
99
- }))) : null, Object.entries(schemas ?? {}).length > 0 ? /* @__PURE__ */ React3.createElement(Tooltip, {
100
- title: "Schemas"
101
- }, /* @__PURE__ */ React3.createElement(Badge, {
102
- badgeContent: Object.entries(schemas ?? {}).length,
103
- color: "primary"
104
- }, /* @__PURE__ */ React3.createElement(BsFileEarmarkCode, {
105
- size: 20
106
- }))) : null, Object.entries(addresses ?? {}).length > 0 ? /* @__PURE__ */ React3.createElement(Tooltip, {
107
- title: "Addresses"
108
- }, /* @__PURE__ */ React3.createElement(Badge, {
109
- badgeContent: Object.entries(addresses ?? {}).length,
110
- color: "primary"
111
- }, /* @__PURE__ */ React3.createElement(VscOrganization, {
112
- size: 20
113
- }))) : null);
114
- }, "ArchivistStats");
68
+ import {
69
+ VscOrganization,
70
+ VscSymbolMethod,
71
+ VscSymbolNamespace
72
+ } from "react-icons/vsc";
73
+ import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
74
+ var ArchivistStats = ({
75
+ addresses,
76
+ boundWitnesses,
77
+ payloads,
78
+ schemas
79
+ }) => {
80
+ return /* @__PURE__ */ jsxs3(FlexRow, { gap: 2, mr: 0.5, children: [
81
+ payloads?.length ? /* @__PURE__ */ jsx3(Tooltip, { title: "Payloads", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: payloads?.length, color: "primary", children: /* @__PURE__ */ jsx3(VscSymbolNamespace, { size: 20 }) }) }) : null,
82
+ boundWitnesses?.length ? /* @__PURE__ */ jsx3(Tooltip, { title: "Blocks", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: boundWitnesses?.length, color: "primary", children: /* @__PURE__ */ jsx3(VscSymbolMethod, { size: 20 }) }) }) : null,
83
+ Object.entries(schemas ?? {}).length > 0 ? /* @__PURE__ */ jsx3(Tooltip, { title: "Schemas", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: Object.entries(schemas ?? {}).length, color: "primary", children: /* @__PURE__ */ jsx3(BsFileEarmarkCode, { size: 20 }) }) }) : null,
84
+ Object.entries(addresses ?? {}).length > 0 ? /* @__PURE__ */ jsx3(Tooltip, { title: "Addresses", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: Object.entries(addresses ?? {}).length, color: "primary", children: /* @__PURE__ */ jsx3(VscOrganization, { size: 20 }) }) }) : null
85
+ ] });
86
+ };
115
87
 
116
88
  // src/components/Card/components/Stats/MemoryArchivistStats.tsx
117
89
  import { useAsyncEffect } from "@xylabs/react-async-effect";
118
90
  import { ArchivistAllQuerySchema } from "@xyo-network/archivist-model";
119
91
  import { asBoundWitness, BoundWitnessSchema } from "@xyo-network/boundwitness-model";
120
- import React4, { useCallback, useEffect, useMemo, useState as useState2 } from "react";
121
- var MemoryArchivistsStats = /* @__PURE__ */ __name(({ archivist }) => {
92
+ import {
93
+ useCallback,
94
+ useEffect,
95
+ useMemo,
96
+ useState as useState2
97
+ } from "react";
98
+ import { jsx as jsx4 } from "react/jsx-runtime";
99
+ var MemoryArchivistsStats = ({ archivist }) => {
122
100
  const [all, setAll] = useState2();
123
101
  const getAll = useCallback(async (archivist2) => {
124
102
  const all2 = await archivist2?.all?.();
@@ -139,117 +117,113 @@ var MemoryArchivistsStats = /* @__PURE__ */ __name(({ archivist }) => {
139
117
  return () => {
140
118
  for (const listener of listeners) listener?.();
141
119
  };
142
- }, [
143
- archivist,
144
- getAll
145
- ]);
146
- useAsyncEffect(async () => {
147
- if (archivist?.queries.includes(ArchivistAllQuerySchema)) {
148
- await getAll(archivist);
149
- } else {
150
- setAll(null);
151
- }
152
- }, [
153
- archivist,
154
- getAll
155
- ]);
156
- const payloads = useMemo(() => all === null ? [] : all?.filter((payload) => payload.schema !== BoundWitnessSchema), [
157
- all
158
- ]);
159
- const boundWitnesses = useMemo(() => all === null ? [] : all?.filter((payload) => payload.schema === BoundWitnessSchema), [
160
- all
161
- ]);
162
- const addresses = useMemo(() => all?.reduce((prev, payload) => {
163
- const w = asBoundWitness(payload);
164
- if (w?.addresses) for (const address of w?.addresses ?? []) {
165
- prev[address] = (prev[address] ?? 0) + 1;
166
- }
167
- return prev;
168
- }, {}) ?? {}, [
169
- all
170
- ]);
171
- const schemas = useMemo(() => all?.reduce((prev, payload) => {
172
- prev[payload.schema] = (prev[payload.schema] ?? 0) + 1;
173
- return prev;
174
- }, {}) ?? {}, [
175
- all
176
- ]);
177
- return /* @__PURE__ */ React4.createElement(ArchivistStats, {
178
- addresses,
179
- boundWitnesses,
180
- payloads,
181
- schemas
182
- });
183
- }, "MemoryArchivistsStats");
120
+ }, [archivist, getAll]);
121
+ useAsyncEffect(
122
+ async () => {
123
+ if (archivist?.queries.includes(ArchivistAllQuerySchema)) {
124
+ await getAll(archivist);
125
+ } else {
126
+ setAll(null);
127
+ }
128
+ },
129
+ [archivist, getAll]
130
+ );
131
+ const payloads = useMemo(() => all === null ? [] : all?.filter((payload) => payload.schema !== BoundWitnessSchema), [all]);
132
+ const boundWitnesses = useMemo(() => all === null ? [] : all?.filter((payload) => payload.schema === BoundWitnessSchema), [all]);
133
+ const addresses = useMemo(
134
+ () => all?.reduce(
135
+ (prev, payload) => {
136
+ const w = asBoundWitness(payload);
137
+ if (w?.addresses)
138
+ for (const address of w?.addresses ?? []) {
139
+ prev[address] = (prev[address] ?? 0) + 1;
140
+ }
141
+ return prev;
142
+ },
143
+ {}
144
+ ) ?? {},
145
+ [all]
146
+ );
147
+ const schemas = useMemo(
148
+ () => all?.reduce(
149
+ (prev, payload) => {
150
+ prev[payload.schema] = (prev[payload.schema] ?? 0) + 1;
151
+ return prev;
152
+ },
153
+ {}
154
+ ) ?? {},
155
+ [all]
156
+ );
157
+ return /* @__PURE__ */ jsx4(ArchivistStats, { addresses, boundWitnesses, payloads, schemas });
158
+ };
184
159
 
185
160
  // src/components/Card/CardContent.tsx
186
- var ArchivistCardContent = /* @__PURE__ */ __name(({ children, mod, ...props }) => {
161
+ import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
162
+ var ArchivistCardContent = ({
163
+ children,
164
+ mod,
165
+ ...props
166
+ }) => {
187
167
  const [config, setConfig] = useState3();
188
168
  const [wallet] = useWallet();
189
- useAsyncEffect2(async (mounted) => {
190
- if (wallet && mod) {
191
- const wrapper = ModuleWrapper.wrap(mod, wallet);
192
- const payloads = await wrapper?.state();
193
- if (mounted()) {
194
- setConfig(payloads?.[0]);
169
+ useAsyncEffect2(
170
+ async (mounted) => {
171
+ if (wallet && mod) {
172
+ const wrapper = ModuleWrapper.wrap(mod, wallet);
173
+ const payloads = await wrapper?.state();
174
+ if (mounted()) {
175
+ setConfig(payloads?.[0]);
176
+ }
177
+ } else {
178
+ setConfig(void 0);
195
179
  }
196
- } else {
197
- setConfig(void 0);
198
- }
199
- }, [
200
- mod,
201
- wallet
202
- ]);
203
- return /* @__PURE__ */ React5.createElement(ModuleCardContent, {
204
- mod,
205
- ...props
206
- }, /* @__PURE__ */ React5.createElement(FlexGrowRow, {
207
- flexWrap: "wrap",
208
- justifyContent: "start",
209
- gap: 2
210
- }, children, /* @__PURE__ */ React5.createElement(ArchivistParents, {
211
- config
212
- })));
213
- }, "ArchivistCardContent");
180
+ },
181
+ [mod, wallet]
182
+ );
183
+ return /* @__PURE__ */ jsx5(ModuleCardContent, { mod, ...props, children: /* @__PURE__ */ jsxs4(FlexGrowRow, { flexWrap: "wrap", justifyContent: "start", gap: 2, children: [
184
+ children,
185
+ /* @__PURE__ */ jsx5(ArchivistParents, { config })
186
+ ] }) });
187
+ };
214
188
 
215
189
  // src/components/Card/CardHeader.tsx
216
190
  import { MemoryArchivistConfigSchema } from "@xyo-network/archivist-memory";
217
191
  import { ModuleCardHeader } from "@xyo-network/react-module";
218
- import React6, { useMemo as useMemo2 } from "react";
219
- var ArchivistStats2 = /* @__PURE__ */ __name((archivist) => {
192
+ import { useMemo as useMemo2 } from "react";
193
+ import { Fragment as Fragment3, jsx as jsx6 } from "react/jsx-runtime";
194
+ var ArchivistStats2 = (archivist) => {
220
195
  switch (archivist?.config.schema) {
221
196
  case MemoryArchivistConfigSchema: {
222
- return /* @__PURE__ */ React6.createElement(MemoryArchivistsStats, {
223
- archivist
224
- });
197
+ return /* @__PURE__ */ jsx6(MemoryArchivistsStats, { archivist });
225
198
  }
226
199
  default: {
227
- return /* @__PURE__ */ React6.createElement(React6.Fragment, null);
200
+ return /* @__PURE__ */ jsx6(Fragment3, {});
228
201
  }
229
202
  }
230
- }, "ArchivistStats");
231
- var ArchivistCardHeader = /* @__PURE__ */ __name(({ title, mod, ...props }) => {
232
- const Stats = useMemo2(() => ArchivistStats2(mod), [
233
- mod
234
- ]);
235
- return /* @__PURE__ */ React6.createElement(ModuleCardHeader, {
236
- mod,
237
- title: title ?? mod?.config.name ?? "Archivist",
238
- action: Stats,
239
- ...props
240
- });
241
- }, "ArchivistCardHeader");
203
+ };
204
+ var ArchivistCardHeader = ({
205
+ title,
206
+ mod,
207
+ ...props
208
+ }) => {
209
+ const Stats = useMemo2(() => ArchivistStats2(mod), [mod]);
210
+ return /* @__PURE__ */ jsx6(ModuleCardHeader, { mod, title: title ?? mod?.config.name ?? "Archivist", action: Stats, ...props });
211
+ };
242
212
 
243
213
  // src/components/Card/Card.tsx
244
- var ArchivistCard = /* @__PURE__ */ __name(({ children, mod, ...props }) => {
245
- return /* @__PURE__ */ React7.createElement(Card, props, /* @__PURE__ */ React7.createElement(ArchivistCardHeader, {
246
- mod
247
- }), /* @__PURE__ */ React7.createElement(ArchivistCardContent, {
248
- mod
249
- }), children, /* @__PURE__ */ React7.createElement(ModuleCardActions, {
250
- mod
251
- }));
252
- }, "ArchivistCard");
214
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
215
+ var ArchivistCard = ({
216
+ children,
217
+ mod,
218
+ ...props
219
+ }) => {
220
+ return /* @__PURE__ */ jsxs5(Card, { ...props, children: [
221
+ /* @__PURE__ */ jsx7(ArchivistCardHeader, { mod }),
222
+ /* @__PURE__ */ jsx7(ArchivistCardContent, { mod }),
223
+ children,
224
+ /* @__PURE__ */ jsx7(ModuleCardActions, { mod })
225
+ ] });
226
+ };
253
227
 
254
228
  // src/components/Details/Details.tsx
255
229
  import { ButtonGroup, Typography as Typography3 } from "@mui/material";
@@ -258,38 +232,29 @@ import { ButtonEx } from "@xylabs/react-button";
258
232
  import { FlexCol as FlexCol2 } from "@xylabs/react-flexbox";
259
233
  import { ArchivistClearQuerySchema, ArchivistCommitQuerySchema } from "@xyo-network/archivist-model";
260
234
  import { QueryBoundWitnessBuilder } from "@xyo-network/boundwitness-builder";
261
- import React8, { useState as useState6 } from "react";
235
+ import { useState as useState6 } from "react";
262
236
 
263
237
  // src/hooks/node/useArchivistFromNode.tsx
264
238
  import { asArchivistInstance } from "@xyo-network/archivist-model";
265
239
  import { useModuleFromNode } from "@xyo-network/react-node";
266
- var useArchivistFromNode = /* @__PURE__ */ __name((nameOrAddressOrInstance, config) => {
240
+ var useArchivistFromNode = (nameOrAddressOrInstance, config) => {
267
241
  const [mod, error] = useModuleFromNode(nameOrAddressOrInstance, config);
268
242
  const instance = asArchivistInstance(mod);
269
243
  if (mod && !instance) {
270
244
  const error2 = new Error(`Resolved module is not a ArchivistInstance [${mod.config?.schema}:${mod.config?.name}:${mod.address}]`);
271
245
  console.error(error2.message);
272
- return [
273
- void 0,
274
- error2
275
- ];
246
+ return [void 0, error2];
276
247
  }
277
- return [
278
- instance,
279
- error
280
- ];
281
- }, "useArchivistFromNode");
248
+ return [instance, error];
249
+ };
282
250
 
283
251
  // src/hooks/node/useArchivistsFromNode.tsx
284
252
  import { isArchivistInstance } from "@xyo-network/archivist-model";
285
253
  import { useModulesFromNode } from "@xyo-network/react-node";
286
- var useArchivistsFromNode = /* @__PURE__ */ __name((ids, config) => {
254
+ var useArchivistsFromNode = (ids, config) => {
287
255
  const [modules, error] = useModulesFromNode(ids, config);
288
256
  if (error) {
289
- return [
290
- null,
291
- error
292
- ];
257
+ return [null, error];
293
258
  }
294
259
  return modules ? [
295
260
  // eslint-disable-next-line unicorn/no-array-reduce
@@ -300,33 +265,24 @@ var useArchivistsFromNode = /* @__PURE__ */ __name((ids, config) => {
300
265
  return prev;
301
266
  }, []),
302
267
  void 0
303
- ] : [
304
- modules,
305
- error
306
- ];
307
- }, "useArchivistsFromNode");
268
+ ] : [modules, error];
269
+ };
308
270
 
309
271
  // src/hooks/node/useWeakArchivistFromNode.tsx
310
272
  import { isArchivistInstance as isArchivistInstance2 } from "@xyo-network/archivist-model";
311
273
  import { useWeakModuleFromNode } from "@xyo-network/react-node";
312
- var useWeakArchivistFromNode = /* @__PURE__ */ __name((nameOrAddressOrInstance, config) => {
313
- return useWeakModuleFromNode(nameOrAddressOrInstance, {
314
- identity: isArchivistInstance2,
315
- ...config
316
- });
317
- }, "useWeakArchivistFromNode");
274
+ var useWeakArchivistFromNode = (nameOrAddressOrInstance, config) => {
275
+ return useWeakModuleFromNode(nameOrAddressOrInstance, { identity: isArchivistInstance2, ...config });
276
+ };
318
277
 
319
278
  // src/hooks/node/useWeakArchivistsFromNode.tsx
320
279
  import { exists } from "@xylabs/exists";
321
280
  import { asArchivistInstance as asArchivistInstance2 } from "@xyo-network/archivist-model";
322
281
  import { useWeakModulesFromNode } from "@xyo-network/react-node";
323
- var useWeakArchivistsFromNode = /* @__PURE__ */ __name((ids, config) => {
282
+ var useWeakArchivistsFromNode = (ids, config) => {
324
283
  const [modules, error] = useWeakModulesFromNode(ids, config);
325
284
  if (error) {
326
- return [
327
- null,
328
- error
329
- ];
285
+ return [null, error];
330
286
  }
331
287
  return [
332
288
  modules?.map((mod) => {
@@ -337,13 +293,13 @@ var useWeakArchivistsFromNode = /* @__PURE__ */ __name((ids, config) => {
337
293
  }).filter(exists) ?? [],
338
294
  void 0
339
295
  ];
340
- }, "useWeakArchivistsFromNode");
296
+ };
341
297
 
342
298
  // src/hooks/queries/useArchivistAll.tsx
343
299
  import { usePromise } from "@xylabs/react-promise";
344
300
  import { useRefresh } from "@xyo-network/react-module";
345
301
  import { useState as useState4 } from "react";
346
- var useArchivistAll = /* @__PURE__ */ __name((archivist) => {
302
+ var useArchivistAll = (archivist) => {
347
303
  const [error, setError] = useState4();
348
304
  const [enabled, refresh] = useRefresh();
349
305
  const payloads = usePromise(async () => {
@@ -355,43 +311,28 @@ var useArchivistAll = /* @__PURE__ */ __name((archivist) => {
355
311
  const error2 = ex;
356
312
  setError(error2);
357
313
  }
358
- }, [
359
- archivist,
360
- enabled
361
- ]);
362
- return [
363
- payloads,
364
- error,
365
- refresh
366
- ];
367
- }, "useArchivistAll");
314
+ }, [archivist, enabled]);
315
+ return [payloads, error, refresh];
316
+ };
368
317
 
369
318
  // src/hooks/queries/useArchivistGet.tsx
370
319
  import { usePromise as usePromise2 } from "@xylabs/react-promise";
371
320
  import { useRefresh as useRefresh2 } from "@xyo-network/react-module";
372
- var useArchivistGet = /* @__PURE__ */ __name((archivist, hashes) => {
321
+ var useArchivistGet = (archivist, hashes) => {
373
322
  const [enabled, refresh] = useRefresh2();
374
323
  const [payloads, error] = usePromise2(async () => {
375
324
  if (enabled && archivist && hashes) {
376
325
  return await archivist.get(hashes);
377
326
  }
378
- }, [
379
- archivist,
380
- hashes,
381
- enabled
382
- ]);
383
- return [
384
- payloads,
385
- error,
386
- refresh
387
- ];
388
- }, "useArchivistGet");
327
+ }, [archivist, hashes, enabled]);
328
+ return [payloads, error, refresh];
329
+ };
389
330
 
390
331
  // src/hooks/queries/useWeakArchivistAll.tsx
391
332
  import { usePromise as usePromise3 } from "@xylabs/react-promise";
392
333
  import { useRefresh as useRefresh3 } from "@xyo-network/react-module";
393
334
  import { useState as useState5 } from "react";
394
- var useWeakArchivistAll = /* @__PURE__ */ __name((archivist) => {
335
+ var useWeakArchivistAll = (archivist) => {
395
336
  const [error, setError] = useState5();
396
337
  const [enabled, refresh] = useRefresh3();
397
338
  const payloads = usePromise3(async () => {
@@ -403,91 +344,75 @@ var useWeakArchivistAll = /* @__PURE__ */ __name((archivist) => {
403
344
  const error2 = ex;
404
345
  setError(error2);
405
346
  }
406
- }, [
407
- archivist,
408
- enabled
409
- ]);
410
- return [
411
- payloads,
412
- error,
413
- refresh
414
- ];
415
- }, "useWeakArchivistAll");
347
+ }, [archivist, enabled]);
348
+ return [payloads, error, refresh];
349
+ };
416
350
 
417
351
  // src/hooks/queries/useWeakArchivistGet.tsx
418
352
  import { usePromise as usePromise4 } from "@xylabs/react-promise";
419
353
  import { useRefresh as useRefresh4 } from "@xyo-network/react-module";
420
- var useWeakArchivistGet = /* @__PURE__ */ __name((archivist, hashes) => {
354
+ var useWeakArchivistGet = (archivist, hashes) => {
421
355
  const [enabled, refresh] = useRefresh4();
422
356
  const [payloads, error] = usePromise4(async () => {
423
357
  const archivistInstance = archivist?.deref();
424
358
  if (enabled && archivistInstance && hashes) {
425
359
  return await archivistInstance.get(hashes);
426
360
  }
427
- }, [
428
- archivist,
429
- hashes,
430
- enabled
431
- ]);
432
- return [
433
- payloads,
434
- error,
435
- refresh
436
- ];
437
- }, "useWeakArchivistGet");
361
+ }, [archivist, hashes, enabled]);
362
+ return [payloads, error, refresh];
363
+ };
438
364
 
439
365
  // src/components/Details/Details.tsx
440
- var testQueryCommit = {
441
- schema: ArchivistCommitQuerySchema
442
- };
366
+ import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
367
+ var testQueryCommit = { schema: ArchivistCommitQuerySchema };
443
368
  var testQueryCommitBoundWitnessBuilder = new QueryBoundWitnessBuilder().query(testQueryCommit);
444
- var testQueryClear = {
445
- schema: ArchivistClearQuerySchema
446
- };
369
+ var testQueryClear = { schema: ArchivistClearQuerySchema };
447
370
  var testQueryClearBoundWitnessBuilder = new QueryBoundWitnessBuilder().query(testQueryClear);
448
- var ArchivistDetails = /* @__PURE__ */ __name(({ address, ...props }) => {
371
+ var ArchivistDetails = ({ address, ...props }) => {
449
372
  const [archivist] = useWeakArchivistFromNode(address);
450
373
  const [payloads, setPayloads] = useState6();
451
374
  const [refresh, setRefresh] = useState6(0);
452
375
  const [queryableCommit, setQueryableCommit] = useState6(false);
453
376
  const [queryableClear, setQueryableClear] = useState6(false);
454
- useAsyncEffect3(async () => {
455
- const instance = archivist?.deref();
456
- if (instance) {
457
- const [commitBW] = await testQueryCommitBoundWitnessBuilder.build();
458
- const [clearBW] = await testQueryClearBoundWitnessBuilder.build();
459
- setQueryableCommit(await instance?.queryable(commitBW, [
460
- testQueryCommit
461
- ]));
462
- setQueryableClear(await instance?.queryable(clearBW, [
463
- testQueryClear
464
- ]));
465
- }
466
- }, [
467
- archivist
468
- ]);
469
- useAsyncEffect3(async (mounted) => {
470
- const payloads2 = await archivist?.deref()?.all?.();
471
- if (mounted()) {
472
- setPayloads(payloads2);
473
- }
474
- }, [
475
- archivist,
476
- refresh
477
- ]);
478
- return /* @__PURE__ */ React8.createElement(FlexCol2, props, /* @__PURE__ */ React8.createElement(Typography3, null, `Payloads: ${payloads ? payloads.length : "-"}`), /* @__PURE__ */ React8.createElement(ButtonGroup, null, /* @__PURE__ */ React8.createElement(ButtonEx, {
479
- disabled: payloads?.length === 0 || !archivist || !queryableCommit,
480
- onClick: /* @__PURE__ */ __name(() => archivist?.deref()?.commit?.(), "onClick")
481
- }, "Commit"), /* @__PURE__ */ React8.createElement(ButtonEx, {
482
- disabled: !archivist || !queryableClear,
483
- onClick: /* @__PURE__ */ __name(() => archivist?.deref()?.clear?.(), "onClick")
484
- }, "Clear"), /* @__PURE__ */ React8.createElement(ButtonEx, {
485
- disabled: !archivist,
486
- onClick: /* @__PURE__ */ __name(() => {
487
- setRefresh(refresh + 1);
488
- }, "onClick")
489
- }, "Refresh")));
490
- }, "ArchivistDetails");
377
+ useAsyncEffect3(
378
+ async () => {
379
+ const instance = archivist?.deref();
380
+ if (instance) {
381
+ const [commitBW] = await testQueryCommitBoundWitnessBuilder.build();
382
+ const [clearBW] = await testQueryClearBoundWitnessBuilder.build();
383
+ setQueryableCommit(await instance?.queryable(commitBW, [testQueryCommit]));
384
+ setQueryableClear(await instance?.queryable(clearBW, [testQueryClear]));
385
+ }
386
+ },
387
+ [archivist]
388
+ );
389
+ useAsyncEffect3(
390
+ async (mounted) => {
391
+ const payloads2 = await archivist?.deref()?.all?.();
392
+ if (mounted()) {
393
+ setPayloads(payloads2);
394
+ }
395
+ },
396
+ [archivist, refresh]
397
+ );
398
+ return /* @__PURE__ */ jsxs6(FlexCol2, { ...props, children: [
399
+ /* @__PURE__ */ jsx8(Typography3, { children: `Payloads: ${payloads ? payloads.length : "-"}` }),
400
+ /* @__PURE__ */ jsxs6(ButtonGroup, { children: [
401
+ /* @__PURE__ */ jsx8(ButtonEx, { disabled: payloads?.length === 0 || !archivist || !queryableCommit, onClick: () => archivist?.deref()?.commit?.(), children: "Commit" }),
402
+ /* @__PURE__ */ jsx8(ButtonEx, { disabled: !archivist || !queryableClear, onClick: () => archivist?.deref()?.clear?.(), children: "Clear" }),
403
+ /* @__PURE__ */ jsx8(
404
+ ButtonEx,
405
+ {
406
+ disabled: !archivist,
407
+ onClick: () => {
408
+ setRefresh(refresh + 1);
409
+ },
410
+ children: "Refresh"
411
+ }
412
+ )
413
+ ] })
414
+ ] });
415
+ };
491
416
  export {
492
417
  ArchivistCard,
493
418
  ArchivistCardContent,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/Card/Card.tsx","../../src/components/Card/CardContent.tsx","../../src/components/Card/components/ArchivistParent.tsx","../../src/components/Card/components/ArchivistParents.tsx","../../src/components/Card/components/Stats/ArchivistStats.tsx","../../src/components/Card/components/Stats/MemoryArchivistStats.tsx","../../src/components/Card/CardHeader.tsx","../../src/components/Details/Details.tsx","../../src/hooks/node/useArchivistFromNode.tsx","../../src/hooks/node/useArchivistsFromNode.tsx","../../src/hooks/node/useWeakArchivistFromNode.tsx","../../src/hooks/node/useWeakArchivistsFromNode.tsx","../../src/hooks/queries/useArchivistAll.tsx","../../src/hooks/queries/useArchivistGet.tsx","../../src/hooks/queries/useWeakArchivistAll.tsx","../../src/hooks/queries/useWeakArchivistGet.tsx"],"sourcesContent":["import type { CardProps } from '@mui/material'\nimport { Card } from '@mui/material'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleRenderProps } from '@xyo-network/react-module'\nimport { ModuleCardActions } from '@xyo-network/react-module'\nimport React from 'react'\n\nimport { ArchivistCardContent } from './CardContent.tsx'\nimport { ArchivistCardHeader } from './CardHeader.tsx'\n\nexport const ArchivistCard: React.FC<CardProps & ModuleRenderProps<ArchivistInstance>> = ({\n children, mod, ...props\n}) => {\n return (\n <Card {...props}>\n <ArchivistCardHeader mod={mod} />\n <ArchivistCardContent mod={mod} />\n {children}\n <ModuleCardActions mod={mod} />\n </Card>\n )\n}\n","import type { CardContentProps } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport type { ArchivistConfig, ArchivistInstance } from '@xyo-network/archivist-model'\nimport { ModuleWrapper } from '@xyo-network/module-wrapper'\nimport type { ModuleRenderProps } from '@xyo-network/react-module'\nimport { ModuleCardContent } from '@xyo-network/react-module'\nimport { useWallet } from '@xyo-network/react-wallet'\nimport React, { useState } from 'react'\n\nimport { ArchivistParents } from './components/index.ts'\n\nexport const ArchivistCardContent: React.FC<ModuleRenderProps<ArchivistInstance> & CardContentProps> = ({\n children, mod, ...props\n}) => {\n const [config, setConfig] = useState<ArchivistConfig>()\n const [wallet] = useWallet()\n\n useAsyncEffect(\n async (mounted) => {\n if (wallet && mod) {\n const wrapper = ModuleWrapper.wrap(mod, wallet)\n const payloads = await wrapper?.state()\n if (mounted()) {\n setConfig(payloads?.[0] as ArchivistConfig)\n }\n } else {\n setConfig(undefined)\n }\n },\n [mod, wallet],\n )\n\n return (\n <ModuleCardContent mod={mod} {...props}>\n <FlexGrowRow flexWrap=\"wrap\" justifyContent=\"start\" gap={2}>\n {children}\n <ArchivistParents config={config} />\n </FlexGrowRow>\n </ModuleCardContent>\n )\n}\n","import { ListItem, Typography } from '@mui/material'\nimport React from 'react'\n\nexport interface ArchivistTypeProps {\n archivistType?: 'Commit' | 'Read' | 'Write'\n parentArchivists?: string[]\n}\n\nexport const ArchivistParent: React.FC<ArchivistTypeProps> = ({ archivistType, parentArchivists }) => (\n <>\n {parentArchivists?.map((address) => {\n return (\n <ListItem key={address}>\n <Typography variant=\"subtitle2\">\n {archivistType}\n :\n {' '}\n <Typography variant=\"caption\" sx={{ ml: 0.5 }}>\n {address}\n </Typography>\n </Typography>\n </ListItem>\n )\n })}\n </>\n)\n","import { ArrowRightRounded as ArrowRightRoundedIcon } from '@mui/icons-material'\nimport {\n Collapse, IconButton, List, Paper, Typography,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { ArchivistConfig } from '@xyo-network/archivist-model'\nimport React, { useState } from 'react'\n\nimport { ArchivistParent } from './ArchivistParent.tsx'\n\nexport interface ArchivistParentsProps extends FlexBoxProps {\n config?: ArchivistConfig\n}\n\nexport const ArchivistParents: React.FC<ArchivistParentsProps> = ({ config, ...props }) => {\n const [parentArchivistCollapse, setParentArchivistCollapse] = useState(false)\n\n const {\n commit, read, write,\n } = config?.parents ?? {}\n\n return (\n <>\n {commit || read || write\n ? (\n <FlexCol alignItems=\"start\" {...props}>\n <span onClick={() => setParentArchivistCollapse(!parentArchivistCollapse)}>\n <Typography\n variant=\"subtitle2\"\n sx={{ cursor: 'pointer', display: 'inline-block' }}\n >\n Parents\n </Typography>\n <IconButton size=\"small\">\n <ArrowRightRoundedIcon sx={{ rotate: parentArchivistCollapse ? '90deg' : '0deg', transition: 'all .25s' }} />\n </IconButton>\n </span>\n <Collapse in={parentArchivistCollapse}>\n <Paper elevation={2}>\n <List>\n <ArchivistParent archivistType=\"Commit\" parentArchivists={commit} />\n <ArchivistParent archivistType=\"Read\" parentArchivists={read} />\n <ArchivistParent archivistType=\"Write\" parentArchivists={write} />\n </List>\n </Paper>\n </Collapse>\n </FlexCol>\n )\n : null}\n </>\n )\n}\n","import { Badge, Tooltip } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React from 'react'\n// eslint-disable-next-line import-x/no-internal-modules\nimport { BsFileEarmarkCode } from 'react-icons/bs'\nimport {\n VscOrganization, VscSymbolMethod, VscSymbolNamespace,\n// eslint-disable-next-line import-x/no-internal-modules\n} from 'react-icons/vsc'\n\nexport interface ArchivistStatsProps {\n addresses?: Record<string, number>\n boundWitnesses?: Payload[] | null\n payloads?: Payload[] | null\n schemas?: Record<string, number>\n}\n\nexport const ArchivistStats: React.FC<ArchivistStatsProps> = ({\n addresses, boundWitnesses, payloads, schemas,\n}) => {\n return (\n <FlexRow gap={2} mr={0.5}>\n {payloads?.length\n ? (\n <Tooltip title=\"Payloads\">\n <Badge badgeContent={payloads?.length} color=\"primary\">\n <VscSymbolNamespace size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n {boundWitnesses?.length\n ? (\n <Tooltip title=\"Blocks\">\n <Badge badgeContent={boundWitnesses?.length} color=\"primary\">\n <VscSymbolMethod size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n {Object.entries(schemas ?? {}).length > 0\n ? (\n <Tooltip title=\"Schemas\">\n <Badge badgeContent={Object.entries(schemas ?? {}).length} color=\"primary\">\n <BsFileEarmarkCode size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n {Object.entries(addresses ?? {}).length > 0\n ? (\n <Tooltip title=\"Addresses\">\n <Badge badgeContent={Object.entries(addresses ?? {}).length} color=\"primary\">\n <VscOrganization size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n </FlexRow>\n )\n}\n","import type { EventUnsubscribeFunction } from '@xylabs/events'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { ArchivistAllQuerySchema } from '@xyo-network/archivist-model'\nimport { asBoundWitness, BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React, {\n useCallback, useEffect, useMemo, useState,\n} from 'react'\n\nimport { ArchivistStats } from './ArchivistStats.tsx'\n\nexport interface MemoryArchivistStatsProps {\n archivist?: ArchivistInstance\n}\n\nexport const MemoryArchivistsStats: React.FC<MemoryArchivistStatsProps> = ({ archivist }) => {\n const [all, setAll] = useState<Payload[] | null>()\n\n const getAll = useCallback(async (archivist?: ArchivistInstance) => {\n const all = await archivist?.all?.()\n setAll(all)\n }, [])\n\n useEffect(() => {\n const listeners: EventUnsubscribeFunction[] = []\n\n if (archivist?.queries.includes(ArchivistAllQuerySchema)) {\n const insertListener = archivist.on('inserted', async () => {\n await getAll(archivist)\n })\n listeners.push(insertListener)\n\n const clearListener = archivist.on('cleared', async () => {\n await getAll(archivist)\n })\n listeners.push(clearListener)\n }\n\n return () => {\n for (const listener of listeners) listener?.()\n }\n }, [archivist, getAll])\n\n useAsyncEffect(\n async () => {\n if (archivist?.queries.includes(ArchivistAllQuerySchema)) {\n await getAll(archivist)\n } else {\n setAll(null)\n }\n },\n [archivist, getAll],\n )\n\n const payloads = useMemo(() => (all === null ? [] : all?.filter(payload => payload.schema !== BoundWitnessSchema)), [all])\n const boundWitnesses = useMemo(() => (all === null ? [] : all?.filter(payload => payload.schema === BoundWitnessSchema)), [all])\n const addresses = useMemo(\n () =>\n all?.reduce(\n (prev, payload) => {\n const w = asBoundWitness(payload)\n if (w?.addresses)\n for (const address of w?.addresses ?? []) {\n prev[address] = (prev[address] ?? 0) + 1\n }\n return prev\n },\n {} as Record<string, number>,\n ) ?? {},\n [all],\n )\n const schemas = useMemo(\n () =>\n all?.reduce(\n (prev, payload) => {\n prev[payload.schema] = (prev[payload.schema] ?? 0) + 1\n return prev\n },\n {} as Record<string, number>,\n ) ?? {},\n [all],\n )\n\n return <ArchivistStats addresses={addresses} boundWitnesses={boundWitnesses} payloads={payloads} schemas={schemas} />\n}\n","import type { CardHeaderProps } from '@mui/material'\nimport { MemoryArchivistConfigSchema } from '@xyo-network/archivist-memory'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleRenderProps } from '@xyo-network/react-module'\nimport { ModuleCardHeader } from '@xyo-network/react-module'\nimport React, { useMemo } from 'react'\n\nimport { MemoryArchivistsStats } from './components/index.ts'\n\nconst ArchivistStats = (archivist?: ArchivistInstance) => {\n switch (archivist?.config.schema) {\n case MemoryArchivistConfigSchema: {\n return <MemoryArchivistsStats archivist={archivist} />\n }\n default: {\n return <></>\n }\n }\n}\n\nexport const ArchivistCardHeader: React.FC<ModuleRenderProps<ArchivistInstance> & CardHeaderProps> = ({\n title, mod, ...props\n}) => {\n const Stats = useMemo(() => ArchivistStats(mod), [mod])\n return <ModuleCardHeader mod={mod} title={title ?? mod?.config.name ?? 'Archivist'} action={Stats} {...props} />\n}\n","import { ButtonGroup, Typography } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ButtonEx } from '@xylabs/react-button'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { ArchivistClearQuerySchema, ArchivistCommitQuerySchema } from '@xyo-network/archivist-model'\nimport { QueryBoundWitnessBuilder } from '@xyo-network/boundwitness-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React, { useState } from 'react'\n\nimport { useWeakArchivistFromNode } from '../../hooks/index.ts'\n\nconst testQueryCommit = { schema: ArchivistCommitQuerySchema }\nconst testQueryCommitBoundWitnessBuilder = new QueryBoundWitnessBuilder().query(testQueryCommit)\n\nconst testQueryClear = { schema: ArchivistClearQuerySchema }\nconst testQueryClearBoundWitnessBuilder = new QueryBoundWitnessBuilder().query(testQueryClear)\n\nexport interface ArchivistDetailsProps extends FlexBoxProps {\n address?: string\n}\n\nexport const ArchivistDetails: React.FC<ArchivistDetailsProps> = ({ address, ...props }) => {\n const [archivist] = useWeakArchivistFromNode(address)\n const [payloads, setPayloads] = useState<Payload[]>()\n const [refresh, setRefresh] = useState(0)\n const [queryableCommit, setQueryableCommit] = useState(false)\n const [queryableClear, setQueryableClear] = useState(false)\n\n useAsyncEffect(\n async () => {\n const instance = archivist?.deref()\n if (instance) {\n const [commitBW] = await testQueryCommitBoundWitnessBuilder.build()\n const [clearBW] = await testQueryClearBoundWitnessBuilder.build()\n setQueryableCommit(await instance?.queryable(commitBW, [testQueryCommit]))\n setQueryableClear(await instance?.queryable(clearBW, [testQueryClear]))\n }\n },\n [archivist],\n )\n\n useAsyncEffect(\n async (mounted) => {\n const payloads = await archivist?.deref()?.all?.()\n if (mounted()) {\n setPayloads(payloads)\n }\n },\n [archivist, refresh],\n )\n\n return (\n <FlexCol {...props}>\n <Typography>{`Payloads: ${payloads ? payloads.length : '-'}`}</Typography>\n <ButtonGroup>\n <ButtonEx disabled={payloads?.length === 0 || !archivist || !queryableCommit} onClick={() => archivist?.deref()?.commit?.()}>\n Commit\n </ButtonEx>\n <ButtonEx disabled={!archivist || !queryableClear} onClick={() => archivist?.deref()?.clear?.()}>\n Clear\n </ButtonEx>\n <ButtonEx\n disabled={!archivist}\n onClick={() => {\n setRefresh(refresh + 1)\n }}\n >\n Refresh\n </ButtonEx>\n </ButtonGroup>\n </FlexCol>\n )\n}\n","import type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { asArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakArchivistFromNode */\nexport const useArchivistFromNode = (\n nameOrAddressOrInstance?: string | ArchivistInstance,\n config?: ModuleFromNodeConfig,\n): [ArchivistInstance | undefined, Error | undefined] => {\n const [mod, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asArchivistInstance(mod)\n if (mod && !instance) {\n const error = new Error(`Resolved module is not a ArchivistInstance [${mod.config?.schema}:${mod.config?.name}:${mod.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","import type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { isArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleIdentifier } from '@xyo-network/module-model'\nimport type { ModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakArchivistsFromNode */\nexport const useArchivistsFromNode = (\n ids?: ModuleIdentifier[],\n config?: ModuleFromNodeConfig,\n): [ArchivistInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(ids, config)\n if (error) {\n return [null, error]\n }\n return modules\n ? [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<ArchivistInstance[]>((prev, mod) => {\n if (isArchivistInstance(mod)) {\n prev.push(mod)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { isArchivistInstance } from '@xyo-network/archivist-model'\nimport type { WeakModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useWeakModuleFromNode } from '@xyo-network/react-node'\n\nexport const useWeakArchivistFromNode = (\n nameOrAddressOrInstance?: string | ArchivistInstance,\n config?: WeakModuleFromNodeConfig,\n): [WeakRef<ArchivistInstance> | undefined, Error | undefined] => {\n return useWeakModuleFromNode<ArchivistInstance>(nameOrAddressOrInstance, { identity: isArchivistInstance, ...config })\n}\n","import { exists } from '@xylabs/exists'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { asArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleIdentifier } from '@xyo-network/module-model'\nimport type { ModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useWeakModulesFromNode } from '@xyo-network/react-node'\n\nexport const useWeakArchivistsFromNode = (\n ids?: ModuleIdentifier[],\n config?: ModuleFromNodeConfig,\n): [WeakRef<ArchivistInstance>[] | null | undefined, Error | undefined] => {\n const [modules, error] = useWeakModulesFromNode(ids, config)\n if (error) {\n return [null, error]\n }\n return [\n modules\n ?.map((mod) => {\n const instance = asArchivistInstance(mod?.deref())\n if (instance) {\n return new WeakRef(instance)\n }\n })\n .filter(exists) ?? [],\n undefined,\n ]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { useRefresh } from '@xyo-network/react-module'\nimport { useState } from 'react'\n\nexport const useArchivistAll = (archivist: ArchivistInstance) => {\n const [error, setError] = useState<Error>()\n const [enabled, refresh] = useRefresh()\n\n const payloads = usePromise(async () => {\n try {\n if (enabled) {\n return await archivist?.all?.()\n }\n } catch (ex) {\n const error = ex as Error\n setError(error)\n }\n }, [archivist, enabled])\n\n return [payloads, error, refresh]\n}\n","import type { Hash } from '@xylabs/hex'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { Payload, WithStorageMeta } from '@xyo-network/payload-model'\nimport type { RefreshCallback } from '@xyo-network/react-module'\nimport { useRefresh } from '@xyo-network/react-module'\n\nexport const useArchivistGet = <T extends Payload = Payload>(\n archivist?: ArchivistInstance | null,\n hashes?: Hash[],\n): [T[] | undefined, Error | undefined, RefreshCallback] => {\n const [enabled, refresh] = useRefresh()\n\n const [payloads, error] = usePromise(async () => {\n if (enabled && archivist && hashes) {\n return (await archivist.get(hashes)) as WithStorageMeta<T>[]\n }\n }, [archivist, hashes, enabled])\n\n return [payloads, error, refresh]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { useRefresh } from '@xyo-network/react-module'\nimport { useState } from 'react'\n\nexport const useWeakArchivistAll = (archivist: WeakRef<ArchivistInstance>) => {\n const [error, setError] = useState<Error>()\n const [enabled, refresh] = useRefresh()\n\n const payloads = usePromise(async () => {\n try {\n if (enabled) {\n return await archivist?.deref()?.all?.()\n }\n } catch (ex) {\n const error = ex as Error\n setError(error)\n }\n }, [archivist, enabled])\n\n return [payloads, error, refresh]\n}\n","import type { Hash } from '@xylabs/hex'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { Payload, WithStorageMeta } from '@xyo-network/payload-model'\nimport type { RefreshCallback } from '@xyo-network/react-module'\nimport { useRefresh } from '@xyo-network/react-module'\n\nexport const useWeakArchivistGet = <T extends Payload = Payload>(\n archivist?: WeakRef<ArchivistInstance> | null,\n hashes?: Hash[],\n): [T[] | undefined, Error | undefined, RefreshCallback] => {\n const [enabled, refresh] = useRefresh()\n\n const [payloads, error] = usePromise(async () => {\n const archivistInstance = archivist?.deref()\n if (enabled && archivistInstance && hashes) {\n return (await archivistInstance.get(hashes)) as WithStorageMeta<T>[]\n }\n }, [archivist, hashes, enabled])\n\n return [payloads, error, refresh]\n}\n"],"mappings":"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","names":["Card","ModuleCardActions","React","useAsyncEffect","FlexGrowRow","ModuleWrapper","ModuleCardContent","useWallet","React","useState","ListItem","Typography","React","ArchivistParent","archivistType","parentArchivists","map","address","ListItem","key","Typography","variant","sx","ml","ArrowRightRounded","ArrowRightRoundedIcon","Collapse","IconButton","List","Paper","Typography","FlexCol","React","useState","ArchivistParents","config","props","parentArchivistCollapse","setParentArchivistCollapse","useState","commit","read","write","parents","React","FlexCol","alignItems","span","onClick","Typography","variant","sx","cursor","display","IconButton","size","ArrowRightRoundedIcon","rotate","transition","Collapse","in","Paper","elevation","List","ArchivistParent","archivistType","parentArchivists","Badge","Tooltip","FlexRow","React","BsFileEarmarkCode","VscOrganization","VscSymbolMethod","VscSymbolNamespace","ArchivistStats","addresses","boundWitnesses","payloads","schemas","React","FlexRow","gap","mr","length","Tooltip","title","Badge","badgeContent","color","VscSymbolNamespace","size","VscSymbolMethod","Object","entries","BsFileEarmarkCode","VscOrganization","useAsyncEffect","ArchivistAllQuerySchema","asBoundWitness","BoundWitnessSchema","React","useCallback","useEffect","useMemo","useState","MemoryArchivistsStats","archivist","all","setAll","useState","getAll","useCallback","useEffect","listeners","queries","includes","ArchivistAllQuerySchema","insertListener","on","push","clearListener","listener","useAsyncEffect","payloads","useMemo","filter","payload","schema","BoundWitnessSchema","boundWitnesses","addresses","reduce","prev","w","asBoundWitness","address","schemas","React","ArchivistStats","ArchivistCardContent","children","mod","props","config","setConfig","useState","wallet","useWallet","useAsyncEffect","mounted","wrapper","ModuleWrapper","wrap","payloads","state","undefined","React","ModuleCardContent","FlexGrowRow","flexWrap","justifyContent","gap","ArchivistParents","MemoryArchivistConfigSchema","ModuleCardHeader","React","useMemo","ArchivistStats","archivist","config","schema","MemoryArchivistConfigSchema","React","MemoryArchivistsStats","ArchivistCardHeader","title","mod","props","Stats","useMemo","ModuleCardHeader","name","action","ArchivistCard","children","mod","props","React","Card","ArchivistCardHeader","ArchivistCardContent","ModuleCardActions","ButtonGroup","Typography","useAsyncEffect","ButtonEx","FlexCol","ArchivistClearQuerySchema","ArchivistCommitQuerySchema","QueryBoundWitnessBuilder","React","useState","asArchivistInstance","useModuleFromNode","useArchivistFromNode","nameOrAddressOrInstance","config","mod","error","useModuleFromNode","instance","asArchivistInstance","Error","schema","name","address","console","message","undefined","isArchivistInstance","useModulesFromNode","useArchivistsFromNode","ids","config","modules","error","useModulesFromNode","reduce","prev","mod","isArchivistInstance","push","undefined","isArchivistInstance","useWeakModuleFromNode","useWeakArchivistFromNode","nameOrAddressOrInstance","config","useWeakModuleFromNode","identity","isArchivistInstance","exists","asArchivistInstance","useWeakModulesFromNode","useWeakArchivistsFromNode","ids","config","modules","error","useWeakModulesFromNode","map","mod","instance","asArchivistInstance","deref","WeakRef","filter","exists","undefined","usePromise","useRefresh","useState","useArchivistAll","archivist","error","setError","useState","enabled","refresh","useRefresh","payloads","usePromise","all","ex","usePromise","useRefresh","useArchivistGet","archivist","hashes","enabled","refresh","useRefresh","payloads","error","usePromise","get","usePromise","useRefresh","useState","useWeakArchivistAll","archivist","error","setError","useState","enabled","refresh","useRefresh","payloads","usePromise","deref","all","ex","usePromise","useRefresh","useWeakArchivistGet","archivist","hashes","enabled","refresh","useRefresh","payloads","error","usePromise","archivistInstance","deref","get","testQueryCommit","schema","ArchivistCommitQuerySchema","testQueryCommitBoundWitnessBuilder","QueryBoundWitnessBuilder","query","testQueryClear","ArchivistClearQuerySchema","testQueryClearBoundWitnessBuilder","ArchivistDetails","address","props","archivist","useWeakArchivistFromNode","payloads","setPayloads","useState","refresh","setRefresh","queryableCommit","setQueryableCommit","queryableClear","setQueryableClear","useAsyncEffect","instance","deref","commitBW","build","clearBW","queryable","mounted","all","React","FlexCol","Typography","length","ButtonGroup","ButtonEx","disabled","onClick","commit","clear"]}
1
+ {"version":3,"sources":["../../src/components/Card/Card.tsx","../../src/components/Card/CardContent.tsx","../../src/components/Card/components/ArchivistParent.tsx","../../src/components/Card/components/ArchivistParents.tsx","../../src/components/Card/components/Stats/ArchivistStats.tsx","../../src/components/Card/components/Stats/MemoryArchivistStats.tsx","../../src/components/Card/CardHeader.tsx","../../src/components/Details/Details.tsx","../../src/hooks/node/useArchivistFromNode.tsx","../../src/hooks/node/useArchivistsFromNode.tsx","../../src/hooks/node/useWeakArchivistFromNode.tsx","../../src/hooks/node/useWeakArchivistsFromNode.tsx","../../src/hooks/queries/useArchivistAll.tsx","../../src/hooks/queries/useArchivistGet.tsx","../../src/hooks/queries/useWeakArchivistAll.tsx","../../src/hooks/queries/useWeakArchivistGet.tsx"],"sourcesContent":["import type { CardProps } from '@mui/material'\nimport { Card } from '@mui/material'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleRenderProps } from '@xyo-network/react-module'\nimport { ModuleCardActions } from '@xyo-network/react-module'\nimport React from 'react'\n\nimport { ArchivistCardContent } from './CardContent.tsx'\nimport { ArchivistCardHeader } from './CardHeader.tsx'\n\nexport const ArchivistCard: React.FC<CardProps & ModuleRenderProps<ArchivistInstance>> = ({\n children, mod, ...props\n}) => {\n return (\n <Card {...props}>\n <ArchivistCardHeader mod={mod} />\n <ArchivistCardContent mod={mod} />\n {children}\n <ModuleCardActions mod={mod} />\n </Card>\n )\n}\n","import type { CardContentProps } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport type { ArchivistConfig, ArchivistInstance } from '@xyo-network/archivist-model'\nimport { ModuleWrapper } from '@xyo-network/module-wrapper'\nimport type { ModuleRenderProps } from '@xyo-network/react-module'\nimport { ModuleCardContent } from '@xyo-network/react-module'\nimport { useWallet } from '@xyo-network/react-wallet'\nimport React, { useState } from 'react'\n\nimport { ArchivistParents } from './components/index.ts'\n\nexport const ArchivistCardContent: React.FC<ModuleRenderProps<ArchivistInstance> & CardContentProps> = ({\n children, mod, ...props\n}) => {\n const [config, setConfig] = useState<ArchivistConfig>()\n const [wallet] = useWallet()\n\n useAsyncEffect(\n async (mounted) => {\n if (wallet && mod) {\n const wrapper = ModuleWrapper.wrap(mod, wallet)\n const payloads = await wrapper?.state()\n if (mounted()) {\n setConfig(payloads?.[0] as ArchivistConfig)\n }\n } else {\n setConfig(undefined)\n }\n },\n [mod, wallet],\n )\n\n return (\n <ModuleCardContent mod={mod} {...props}>\n <FlexGrowRow flexWrap=\"wrap\" justifyContent=\"start\" gap={2}>\n {children}\n <ArchivistParents config={config} />\n </FlexGrowRow>\n </ModuleCardContent>\n )\n}\n","import { ListItem, Typography } from '@mui/material'\nimport React from 'react'\n\nexport interface ArchivistTypeProps {\n archivistType?: 'Commit' | 'Read' | 'Write'\n parentArchivists?: string[]\n}\n\nexport const ArchivistParent: React.FC<ArchivistTypeProps> = ({ archivistType, parentArchivists }) => (\n <>\n {parentArchivists?.map((address) => {\n return (\n <ListItem key={address}>\n <Typography variant=\"subtitle2\">\n {archivistType}\n :\n {' '}\n <Typography variant=\"caption\" sx={{ ml: 0.5 }}>\n {address}\n </Typography>\n </Typography>\n </ListItem>\n )\n })}\n </>\n)\n","import { ArrowRightRounded as ArrowRightRoundedIcon } from '@mui/icons-material'\nimport {\n Collapse, IconButton, List, Paper, Typography,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { ArchivistConfig } from '@xyo-network/archivist-model'\nimport React, { useState } from 'react'\n\nimport { ArchivistParent } from './ArchivistParent.tsx'\n\nexport interface ArchivistParentsProps extends FlexBoxProps {\n config?: ArchivistConfig\n}\n\nexport const ArchivistParents: React.FC<ArchivistParentsProps> = ({ config, ...props }) => {\n const [parentArchivistCollapse, setParentArchivistCollapse] = useState(false)\n\n const {\n commit, read, write,\n } = config?.parents ?? {}\n\n return (\n <>\n {commit || read || write\n ? (\n <FlexCol alignItems=\"start\" {...props}>\n <span onClick={() => setParentArchivistCollapse(!parentArchivistCollapse)}>\n <Typography\n variant=\"subtitle2\"\n sx={{ cursor: 'pointer', display: 'inline-block' }}\n >\n Parents\n </Typography>\n <IconButton size=\"small\">\n <ArrowRightRoundedIcon sx={{ rotate: parentArchivistCollapse ? '90deg' : '0deg', transition: 'all .25s' }} />\n </IconButton>\n </span>\n <Collapse in={parentArchivistCollapse}>\n <Paper elevation={2}>\n <List>\n <ArchivistParent archivistType=\"Commit\" parentArchivists={commit} />\n <ArchivistParent archivistType=\"Read\" parentArchivists={read} />\n <ArchivistParent archivistType=\"Write\" parentArchivists={write} />\n </List>\n </Paper>\n </Collapse>\n </FlexCol>\n )\n : null}\n </>\n )\n}\n","import { Badge, Tooltip } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React from 'react'\n// eslint-disable-next-line import-x/no-internal-modules\nimport { BsFileEarmarkCode } from 'react-icons/bs'\nimport {\n VscOrganization, VscSymbolMethod, VscSymbolNamespace,\n// eslint-disable-next-line import-x/no-internal-modules\n} from 'react-icons/vsc'\n\nexport interface ArchivistStatsProps {\n addresses?: Record<string, number>\n boundWitnesses?: Payload[] | null\n payloads?: Payload[] | null\n schemas?: Record<string, number>\n}\n\nexport const ArchivistStats: React.FC<ArchivistStatsProps> = ({\n addresses, boundWitnesses, payloads, schemas,\n}) => {\n return (\n <FlexRow gap={2} mr={0.5}>\n {payloads?.length\n ? (\n <Tooltip title=\"Payloads\">\n <Badge badgeContent={payloads?.length} color=\"primary\">\n <VscSymbolNamespace size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n {boundWitnesses?.length\n ? (\n <Tooltip title=\"Blocks\">\n <Badge badgeContent={boundWitnesses?.length} color=\"primary\">\n <VscSymbolMethod size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n {Object.entries(schemas ?? {}).length > 0\n ? (\n <Tooltip title=\"Schemas\">\n <Badge badgeContent={Object.entries(schemas ?? {}).length} color=\"primary\">\n <BsFileEarmarkCode size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n {Object.entries(addresses ?? {}).length > 0\n ? (\n <Tooltip title=\"Addresses\">\n <Badge badgeContent={Object.entries(addresses ?? {}).length} color=\"primary\">\n <VscOrganization size={20} />\n </Badge>\n </Tooltip>\n )\n : null}\n </FlexRow>\n )\n}\n","import type { EventUnsubscribeFunction } from '@xylabs/events'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { ArchivistAllQuerySchema } from '@xyo-network/archivist-model'\nimport { asBoundWitness, BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React, {\n useCallback, useEffect, useMemo, useState,\n} from 'react'\n\nimport { ArchivistStats } from './ArchivistStats.tsx'\n\nexport interface MemoryArchivistStatsProps {\n archivist?: ArchivistInstance\n}\n\nexport const MemoryArchivistsStats: React.FC<MemoryArchivistStatsProps> = ({ archivist }) => {\n const [all, setAll] = useState<Payload[] | null>()\n\n const getAll = useCallback(async (archivist?: ArchivistInstance) => {\n const all = await archivist?.all?.()\n setAll(all)\n }, [])\n\n useEffect(() => {\n const listeners: EventUnsubscribeFunction[] = []\n\n if (archivist?.queries.includes(ArchivistAllQuerySchema)) {\n const insertListener = archivist.on('inserted', async () => {\n await getAll(archivist)\n })\n listeners.push(insertListener)\n\n const clearListener = archivist.on('cleared', async () => {\n await getAll(archivist)\n })\n listeners.push(clearListener)\n }\n\n return () => {\n for (const listener of listeners) listener?.()\n }\n }, [archivist, getAll])\n\n useAsyncEffect(\n async () => {\n if (archivist?.queries.includes(ArchivistAllQuerySchema)) {\n await getAll(archivist)\n } else {\n setAll(null)\n }\n },\n [archivist, getAll],\n )\n\n const payloads = useMemo(() => (all === null ? [] : all?.filter(payload => payload.schema !== BoundWitnessSchema)), [all])\n const boundWitnesses = useMemo(() => (all === null ? [] : all?.filter(payload => payload.schema === BoundWitnessSchema)), [all])\n const addresses = useMemo(\n () =>\n all?.reduce(\n (prev, payload) => {\n const w = asBoundWitness(payload)\n if (w?.addresses)\n for (const address of w?.addresses ?? []) {\n prev[address] = (prev[address] ?? 0) + 1\n }\n return prev\n },\n {} as Record<string, number>,\n ) ?? {},\n [all],\n )\n const schemas = useMemo(\n () =>\n all?.reduce(\n (prev, payload) => {\n prev[payload.schema] = (prev[payload.schema] ?? 0) + 1\n return prev\n },\n {} as Record<string, number>,\n ) ?? {},\n [all],\n )\n\n return <ArchivistStats addresses={addresses} boundWitnesses={boundWitnesses} payloads={payloads} schemas={schemas} />\n}\n","import type { CardHeaderProps } from '@mui/material'\nimport { MemoryArchivistConfigSchema } from '@xyo-network/archivist-memory'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleRenderProps } from '@xyo-network/react-module'\nimport { ModuleCardHeader } from '@xyo-network/react-module'\nimport React, { useMemo } from 'react'\n\nimport { MemoryArchivistsStats } from './components/index.ts'\n\nconst ArchivistStats = (archivist?: ArchivistInstance) => {\n switch (archivist?.config.schema) {\n case MemoryArchivistConfigSchema: {\n return <MemoryArchivistsStats archivist={archivist} />\n }\n default: {\n return <></>\n }\n }\n}\n\nexport const ArchivistCardHeader: React.FC<ModuleRenderProps<ArchivistInstance> & CardHeaderProps> = ({\n title, mod, ...props\n}) => {\n const Stats = useMemo(() => ArchivistStats(mod), [mod])\n return <ModuleCardHeader mod={mod} title={title ?? mod?.config.name ?? 'Archivist'} action={Stats} {...props} />\n}\n","import { ButtonGroup, Typography } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ButtonEx } from '@xylabs/react-button'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { ArchivistClearQuerySchema, ArchivistCommitQuerySchema } from '@xyo-network/archivist-model'\nimport { QueryBoundWitnessBuilder } from '@xyo-network/boundwitness-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React, { useState } from 'react'\n\nimport { useWeakArchivistFromNode } from '../../hooks/index.ts'\n\nconst testQueryCommit = { schema: ArchivistCommitQuerySchema }\nconst testQueryCommitBoundWitnessBuilder = new QueryBoundWitnessBuilder().query(testQueryCommit)\n\nconst testQueryClear = { schema: ArchivistClearQuerySchema }\nconst testQueryClearBoundWitnessBuilder = new QueryBoundWitnessBuilder().query(testQueryClear)\n\nexport interface ArchivistDetailsProps extends FlexBoxProps {\n address?: string\n}\n\nexport const ArchivistDetails: React.FC<ArchivistDetailsProps> = ({ address, ...props }) => {\n const [archivist] = useWeakArchivistFromNode(address)\n const [payloads, setPayloads] = useState<Payload[]>()\n const [refresh, setRefresh] = useState(0)\n const [queryableCommit, setQueryableCommit] = useState(false)\n const [queryableClear, setQueryableClear] = useState(false)\n\n useAsyncEffect(\n async () => {\n const instance = archivist?.deref()\n if (instance) {\n const [commitBW] = await testQueryCommitBoundWitnessBuilder.build()\n const [clearBW] = await testQueryClearBoundWitnessBuilder.build()\n setQueryableCommit(await instance?.queryable(commitBW, [testQueryCommit]))\n setQueryableClear(await instance?.queryable(clearBW, [testQueryClear]))\n }\n },\n [archivist],\n )\n\n useAsyncEffect(\n async (mounted) => {\n const payloads = await archivist?.deref()?.all?.()\n if (mounted()) {\n setPayloads(payloads)\n }\n },\n [archivist, refresh],\n )\n\n return (\n <FlexCol {...props}>\n <Typography>{`Payloads: ${payloads ? payloads.length : '-'}`}</Typography>\n <ButtonGroup>\n <ButtonEx disabled={payloads?.length === 0 || !archivist || !queryableCommit} onClick={() => archivist?.deref()?.commit?.()}>\n Commit\n </ButtonEx>\n <ButtonEx disabled={!archivist || !queryableClear} onClick={() => archivist?.deref()?.clear?.()}>\n Clear\n </ButtonEx>\n <ButtonEx\n disabled={!archivist}\n onClick={() => {\n setRefresh(refresh + 1)\n }}\n >\n Refresh\n </ButtonEx>\n </ButtonGroup>\n </FlexCol>\n )\n}\n","import type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { asArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakArchivistFromNode */\nexport const useArchivistFromNode = (\n nameOrAddressOrInstance?: string | ArchivistInstance,\n config?: ModuleFromNodeConfig,\n): [ArchivistInstance | undefined, Error | undefined] => {\n const [mod, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asArchivistInstance(mod)\n if (mod && !instance) {\n const error = new Error(`Resolved module is not a ArchivistInstance [${mod.config?.schema}:${mod.config?.name}:${mod.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","import type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { isArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleIdentifier } from '@xyo-network/module-model'\nimport type { ModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakArchivistsFromNode */\nexport const useArchivistsFromNode = (\n ids?: ModuleIdentifier[],\n config?: ModuleFromNodeConfig,\n): [ArchivistInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(ids, config)\n if (error) {\n return [null, error]\n }\n return modules\n ? [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<ArchivistInstance[]>((prev, mod) => {\n if (isArchivistInstance(mod)) {\n prev.push(mod)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { isArchivistInstance } from '@xyo-network/archivist-model'\nimport type { WeakModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useWeakModuleFromNode } from '@xyo-network/react-node'\n\nexport const useWeakArchivistFromNode = (\n nameOrAddressOrInstance?: string | ArchivistInstance,\n config?: WeakModuleFromNodeConfig,\n): [WeakRef<ArchivistInstance> | undefined, Error | undefined] => {\n return useWeakModuleFromNode<ArchivistInstance>(nameOrAddressOrInstance, { identity: isArchivistInstance, ...config })\n}\n","import { exists } from '@xylabs/exists'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { asArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleIdentifier } from '@xyo-network/module-model'\nimport type { ModuleFromNodeConfig } from '@xyo-network/react-node'\nimport { useWeakModulesFromNode } from '@xyo-network/react-node'\n\nexport const useWeakArchivistsFromNode = (\n ids?: ModuleIdentifier[],\n config?: ModuleFromNodeConfig,\n): [WeakRef<ArchivistInstance>[] | null | undefined, Error | undefined] => {\n const [modules, error] = useWeakModulesFromNode(ids, config)\n if (error) {\n return [null, error]\n }\n return [\n modules\n ?.map((mod) => {\n const instance = asArchivistInstance(mod?.deref())\n if (instance) {\n return new WeakRef(instance)\n }\n })\n .filter(exists) ?? [],\n undefined,\n ]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { useRefresh } from '@xyo-network/react-module'\nimport { useState } from 'react'\n\nexport const useArchivistAll = (archivist: ArchivistInstance) => {\n const [error, setError] = useState<Error>()\n const [enabled, refresh] = useRefresh()\n\n const payloads = usePromise(async () => {\n try {\n if (enabled) {\n return await archivist?.all?.()\n }\n } catch (ex) {\n const error = ex as Error\n setError(error)\n }\n }, [archivist, enabled])\n\n return [payloads, error, refresh]\n}\n","import type { Hash } from '@xylabs/hex'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { Payload, WithStorageMeta } from '@xyo-network/payload-model'\nimport type { RefreshCallback } from '@xyo-network/react-module'\nimport { useRefresh } from '@xyo-network/react-module'\n\nexport const useArchivistGet = <T extends Payload = Payload>(\n archivist?: ArchivistInstance | null,\n hashes?: Hash[],\n): [T[] | undefined, Error | undefined, RefreshCallback] => {\n const [enabled, refresh] = useRefresh()\n\n const [payloads, error] = usePromise(async () => {\n if (enabled && archivist && hashes) {\n return (await archivist.get(hashes)) as WithStorageMeta<T>[]\n }\n }, [archivist, hashes, enabled])\n\n return [payloads, error, refresh]\n}\n","import { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { useRefresh } from '@xyo-network/react-module'\nimport { useState } from 'react'\n\nexport const useWeakArchivistAll = (archivist: WeakRef<ArchivistInstance>) => {\n const [error, setError] = useState<Error>()\n const [enabled, refresh] = useRefresh()\n\n const payloads = usePromise(async () => {\n try {\n if (enabled) {\n return await archivist?.deref()?.all?.()\n }\n } catch (ex) {\n const error = ex as Error\n setError(error)\n }\n }, [archivist, enabled])\n\n return [payloads, error, refresh]\n}\n","import type { Hash } from '@xylabs/hex'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport type { Payload, WithStorageMeta } from '@xyo-network/payload-model'\nimport type { RefreshCallback } from '@xyo-network/react-module'\nimport { useRefresh } from '@xyo-network/react-module'\n\nexport const useWeakArchivistGet = <T extends Payload = Payload>(\n archivist?: WeakRef<ArchivistInstance> | null,\n hashes?: Hash[],\n): [T[] | undefined, Error | undefined, RefreshCallback] => {\n const [enabled, refresh] = useRefresh()\n\n const [payloads, error] = usePromise(async () => {\n const archivistInstance = archivist?.deref()\n if (enabled && archivistInstance && hashes) {\n return (await archivistInstance.get(hashes)) as WithStorageMeta<T>[]\n }\n }, [archivist, hashes, enabled])\n\n return [payloads, error, refresh]\n}\n"],"mappings":";AACA,SAAS,YAAY;AAGrB,SAAS,yBAAyB;;;ACHlC,SAAS,kBAAAA,uBAAsB;AAC/B,SAAS,mBAAmB;AAE5B,SAAS,qBAAqB;AAE9B,SAAS,yBAAyB;AAClC,SAAS,iBAAiB;AAC1B,SAAgB,YAAAC,iBAAgB;;;ACRhC,SAAS,UAAU,kBAAkB;AASnC,mBAQU,KAJF,YAJR;AADK,IAAM,kBAAgD,CAAC,EAAE,eAAe,iBAAiB,MAC9F,gCACG,4BAAkB,IAAI,CAAC,YAAY;AAClC,SACE,oBAAC,YACC,+BAAC,cAAW,SAAQ,aACjB;AAAA;AAAA,IAAc;AAAA,IAEd;AAAA,IACD,oBAAC,cAAW,SAAQ,WAAU,IAAI,EAAE,IAAI,IAAI,GACzC,mBACH;AAAA,KACF,KARa,OASf;AAEJ,CAAC,GACH;;;ACxBF,SAAS,qBAAqB,6BAA6B;AAC3D;AAAA,EACE;AAAA,EAAU;AAAA,EAAY;AAAA,EAAM;AAAA,EAAO,cAAAC;AAAA,OAC9B;AAEP,SAAS,eAAe;AAExB,SAAgB,gBAAgB;AAgB5B,qBAAAC,WAKY,OAAAC,MADF,QAAAC,aAJV;AARG,IAAM,mBAAoD,CAAC,EAAE,QAAQ,GAAG,MAAM,MAAM;AACzF,QAAM,CAAC,yBAAyB,0BAA0B,IAAI,SAAS,KAAK;AAE5E,QAAM;AAAA,IACJ;AAAA,IAAQ;AAAA,IAAM;AAAA,EAChB,IAAI,QAAQ,WAAW,CAAC;AAExB,SACE,gBAAAD,KAAAD,WAAA,EACG,oBAAU,QAAQ,QAEb,gBAAAE,MAAC,WAAQ,YAAW,SAAS,GAAG,OAC9B;AAAA,oBAAAA,MAAC,UAAK,SAAS,MAAM,2BAA2B,CAAC,uBAAuB,GACtE;AAAA,sBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,IAAI,EAAE,QAAQ,WAAW,SAAS,eAAe;AAAA,UAClD;AAAA;AAAA,MAED;AAAA,MACA,gBAAAF,KAAC,cAAW,MAAK,SACf,0BAAAA,KAAC,yBAAsB,IAAI,EAAE,QAAQ,0BAA0B,UAAU,QAAQ,YAAY,WAAW,GAAG,GAC7G;AAAA,OACF;AAAA,IACA,gBAAAA,KAAC,YAAS,IAAI,yBACZ,0BAAAA,KAAC,SAAM,WAAW,GAChB,0BAAAC,MAAC,QACC;AAAA,sBAAAD,KAAC,mBAAgB,eAAc,UAAS,kBAAkB,QAAQ;AAAA,MAClE,gBAAAA,KAAC,mBAAgB,eAAc,QAAO,kBAAkB,MAAM;AAAA,MAC9D,gBAAAA,KAAC,mBAAgB,eAAc,SAAQ,kBAAkB,OAAO;AAAA,OAClE,GACF,GACF;AAAA,KACF,IAEF,MACN;AAEJ;;;ACpDA,SAAS,OAAO,eAAe;AAC/B,SAAS,eAAe;AAIxB,SAAS,yBAAyB;AAClC;AAAA,EACE;AAAA,EAAiB;AAAA,EAAiB;AAAA,OAE7B;AAaH,SAKY,OAAAG,MALZ,QAAAC,aAAA;AAJG,IAAM,iBAAgD,CAAC;AAAA,EAC5D;AAAA,EAAW;AAAA,EAAgB;AAAA,EAAU;AACvC,MAAM;AACJ,SACE,gBAAAA,MAAC,WAAQ,KAAK,GAAG,IAAI,KAClB;AAAA,cAAU,SAEL,gBAAAD,KAAC,WAAQ,OAAM,YACb,0BAAAA,KAAC,SAAM,cAAc,UAAU,QAAQ,OAAM,WAC3C,0BAAAA,KAAC,sBAAmB,MAAM,IAAI,GAChC,GACF,IAEF;AAAA,IACH,gBAAgB,SAEX,gBAAAA,KAAC,WAAQ,OAAM,UACb,0BAAAA,KAAC,SAAM,cAAc,gBAAgB,QAAQ,OAAM,WACjD,0BAAAA,KAAC,mBAAgB,MAAM,IAAI,GAC7B,GACF,IAEF;AAAA,IACH,OAAO,QAAQ,WAAW,CAAC,CAAC,EAAE,SAAS,IAElC,gBAAAA,KAAC,WAAQ,OAAM,WACb,0BAAAA,KAAC,SAAM,cAAc,OAAO,QAAQ,WAAW,CAAC,CAAC,EAAE,QAAQ,OAAM,WAC/D,0BAAAA,KAAC,qBAAkB,MAAM,IAAI,GAC/B,GACF,IAEF;AAAA,IACH,OAAO,QAAQ,aAAa,CAAC,CAAC,EAAE,SAAS,IAEpC,gBAAAA,KAAC,WAAQ,OAAM,aACb,0BAAAA,KAAC,SAAM,cAAc,OAAO,QAAQ,aAAa,CAAC,CAAC,EAAE,QAAQ,OAAM,WACjE,0BAAAA,KAAC,mBAAgB,MAAM,IAAI,GAC7B,GACF,IAEF;AAAA,KACN;AAEJ;;;AC5DA,SAAS,sBAAsB;AAE/B,SAAS,+BAA+B;AACxC,SAAS,gBAAgB,0BAA0B;AAEnD;AAAA,EACE;AAAA,EAAa;AAAA,EAAW;AAAA,EAAS,YAAAE;AAAA,OAC5B;AA4EE,gBAAAC,YAAA;AApEF,IAAM,wBAA6D,CAAC,EAAE,UAAU,MAAM;AAC3F,QAAM,CAAC,KAAK,MAAM,IAAIC,UAA2B;AAEjD,QAAM,SAAS,YAAY,OAAOC,eAAkC;AAClE,UAAMC,OAAM,MAAMD,YAAW,MAAM;AACnC,WAAOC,IAAG;AAAA,EACZ,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,UAAM,YAAwC,CAAC;AAE/C,QAAI,WAAW,QAAQ,SAAS,uBAAuB,GAAG;AACxD,YAAM,iBAAiB,UAAU,GAAG,YAAY,YAAY;AAC1D,cAAM,OAAO,SAAS;AAAA,MACxB,CAAC;AACD,gBAAU,KAAK,cAAc;AAE7B,YAAM,gBAAgB,UAAU,GAAG,WAAW,YAAY;AACxD,cAAM,OAAO,SAAS;AAAA,MACxB,CAAC;AACD,gBAAU,KAAK,aAAa;AAAA,IAC9B;AAEA,WAAO,MAAM;AACX,iBAAW,YAAY,UAAW,YAAW;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,WAAW,MAAM,CAAC;AAEtB;AAAA,IACE,YAAY;AACV,UAAI,WAAW,QAAQ,SAAS,uBAAuB,GAAG;AACxD,cAAM,OAAO,SAAS;AAAA,MACxB,OAAO;AACL,eAAO,IAAI;AAAA,MACb;AAAA,IACF;AAAA,IACA,CAAC,WAAW,MAAM;AAAA,EACpB;AAEA,QAAM,WAAW,QAAQ,MAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,OAAO,aAAW,QAAQ,WAAW,kBAAkB,GAAI,CAAC,GAAG,CAAC;AACzH,QAAM,iBAAiB,QAAQ,MAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,OAAO,aAAW,QAAQ,WAAW,kBAAkB,GAAI,CAAC,GAAG,CAAC;AAC/H,QAAM,YAAY;AAAA,IAChB,MACE,KAAK;AAAA,MACH,CAAC,MAAM,YAAY;AACjB,cAAM,IAAI,eAAe,OAAO;AAChC,YAAI,GAAG;AACL,qBAAW,WAAW,GAAG,aAAa,CAAC,GAAG;AACxC,iBAAK,OAAO,KAAK,KAAK,OAAO,KAAK,KAAK;AAAA,UACzC;AACF,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,IACH,KAAK,CAAC;AAAA,IACR,CAAC,GAAG;AAAA,EACN;AACA,QAAM,UAAU;AAAA,IACd,MACE,KAAK;AAAA,MACH,CAAC,MAAM,YAAY;AACjB,aAAK,QAAQ,MAAM,KAAK,KAAK,QAAQ,MAAM,KAAK,KAAK;AACrD,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,IACH,KAAK,CAAC;AAAA,IACR,CAAC,GAAG;AAAA,EACN;AAEA,SAAO,gBAAAH,KAAC,kBAAe,WAAsB,gBAAgC,UAAoB,SAAkB;AACrH;;;AJlDM,SAEE,OAAAI,MAFF,QAAAC,aAAA;AAvBC,IAAM,uBAA0F,CAAC;AAAA,EACtG;AAAA,EAAU;AAAA,EAAK,GAAG;AACpB,MAAM;AACJ,QAAM,CAAC,QAAQ,SAAS,IAAIC,UAA0B;AACtD,QAAM,CAAC,MAAM,IAAI,UAAU;AAE3B,EAAAC;AAAA,IACE,OAAO,YAAY;AACjB,UAAI,UAAU,KAAK;AACjB,cAAM,UAAU,cAAc,KAAK,KAAK,MAAM;AAC9C,cAAM,WAAW,MAAM,SAAS,MAAM;AACtC,YAAI,QAAQ,GAAG;AACb,oBAAU,WAAW,CAAC,CAAoB;AAAA,QAC5C;AAAA,MACF,OAAO;AACL,kBAAU,MAAS;AAAA,MACrB;AAAA,IACF;AAAA,IACA,CAAC,KAAK,MAAM;AAAA,EACd;AAEA,SACE,gBAAAH,KAAC,qBAAkB,KAAW,GAAG,OAC/B,0BAAAC,MAAC,eAAY,UAAS,QAAO,gBAAe,SAAQ,KAAK,GACtD;AAAA;AAAA,IACD,gBAAAD,KAAC,oBAAiB,QAAgB;AAAA,KACpC,GACF;AAEJ;;;AKxCA,SAAS,mCAAmC;AAG5C,SAAS,wBAAwB;AACjC,SAAgB,WAAAI,gBAAe;AAOlB,SAGA,YAAAC,WAHA,OAAAC,YAAA;AAHb,IAAMC,kBAAiB,CAAC,cAAkC;AACxD,UAAQ,WAAW,OAAO,QAAQ;AAAA,IAChC,KAAK,6BAA6B;AAChC,aAAO,gBAAAD,KAAC,yBAAsB,WAAsB;AAAA,IACtD;AAAA,IACA,SAAS;AACP,aAAO,gBAAAA,KAAAD,WAAA,EAAE;AAAA,IACX;AAAA,EACF;AACF;AAEO,IAAM,sBAAwF,CAAC;AAAA,EACpG;AAAA,EAAO;AAAA,EAAK,GAAG;AACjB,MAAM;AACJ,QAAM,QAAQG,SAAQ,MAAMD,gBAAe,GAAG,GAAG,CAAC,GAAG,CAAC;AACtD,SAAO,gBAAAD,KAAC,oBAAiB,KAAU,OAAO,SAAS,KAAK,OAAO,QAAQ,aAAa,QAAQ,OAAQ,GAAG,OAAO;AAChH;;;ANXI,SACE,OAAAG,MADF,QAAAC,aAAA;AAJG,IAAM,gBAA4E,CAAC;AAAA,EACxF;AAAA,EAAU;AAAA,EAAK,GAAG;AACpB,MAAM;AACJ,SACE,gBAAAA,MAAC,QAAM,GAAG,OACR;AAAA,oBAAAD,KAAC,uBAAoB,KAAU;AAAA,IAC/B,gBAAAA,KAAC,wBAAqB,KAAU;AAAA,IAC/B;AAAA,IACD,gBAAAA,KAAC,qBAAkB,KAAU;AAAA,KAC/B;AAEJ;;;AOrBA,SAAS,aAAa,cAAAE,mBAAkB;AACxC,SAAS,kBAAAC,uBAAsB;AAC/B,SAAS,gBAAgB;AAEzB,SAAS,WAAAC,gBAAe;AACxB,SAAS,2BAA2B,kCAAkC;AACtE,SAAS,gCAAgC;AAEzC,SAAgB,YAAAC,iBAAgB;;;ACPhC,SAAS,2BAA2B;AAEpC,SAAS,yBAAyB;AAG3B,IAAM,uBAAuB,CAClC,yBACA,WACuD;AACvD,QAAM,CAAC,KAAK,KAAK,IAAI,kBAAkB,yBAAyB,MAAM;AACtE,QAAM,WAAW,oBAAoB,GAAG;AACxC,MAAI,OAAO,CAAC,UAAU;AACpB,UAAMC,SAAQ,IAAI,MAAM,+CAA+C,IAAI,QAAQ,MAAM,IAAI,IAAI,QAAQ,IAAI,IAAI,IAAI,OAAO,GAAG;AAC/H,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;ACjBA,SAAS,2BAA2B;AAGpC,SAAS,0BAA0B;AAG5B,IAAM,wBAAwB,CACnC,KACA,WACgE;AAChE,QAAM,CAAC,SAAS,KAAK,IAAI,mBAAmB,KAAK,MAAM;AACvD,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA4B,CAAC,MAAM,QAAQ;AACjD,UAAI,oBAAoB,GAAG,GAAG;AAC5B,aAAK,KAAK,GAAG;AAAA,MACf;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;;;AC1BA,SAAS,uBAAAC,4BAA2B;AAEpC,SAAS,6BAA6B;AAE/B,IAAM,2BAA2B,CACtC,yBACA,WACgE;AAChE,SAAO,sBAAyC,yBAAyB,EAAE,UAAUA,sBAAqB,GAAG,OAAO,CAAC;AACvH;;;ACVA,SAAS,cAAc;AAEvB,SAAS,uBAAAC,4BAA2B;AAGpC,SAAS,8BAA8B;AAEhC,IAAM,4BAA4B,CACvC,KACA,WACyE;AACzE,QAAM,CAAC,SAAS,KAAK,IAAI,uBAAuB,KAAK,MAAM;AAC3D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO;AAAA,IACL,SACI,IAAI,CAAC,QAAQ;AACb,YAAM,WAAWA,qBAAoB,KAAK,MAAM,CAAC;AACjD,UAAI,UAAU;AACZ,eAAO,IAAI,QAAQ,QAAQ;AAAA,MAC7B;AAAA,IACF,CAAC,EACA,OAAO,MAAM,KAAK,CAAC;AAAA,IACtB;AAAA,EACF;AACF;;;AC1BA,SAAS,kBAAkB;AAE3B,SAAS,kBAAkB;AAC3B,SAAS,YAAAC,iBAAgB;AAElB,IAAM,kBAAkB,CAAC,cAAiC;AAC/D,QAAM,CAAC,OAAO,QAAQ,IAAIA,UAAgB;AAC1C,QAAM,CAAC,SAAS,OAAO,IAAI,WAAW;AAEtC,QAAM,WAAW,WAAW,YAAY;AACtC,QAAI;AACF,UAAI,SAAS;AACX,eAAO,MAAM,WAAW,MAAM;AAAA,MAChC;AAAA,IACF,SAAS,IAAI;AACX,YAAMC,SAAQ;AACd,eAASA,MAAK;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,WAAW,OAAO,CAAC;AAEvB,SAAO,CAAC,UAAU,OAAO,OAAO;AAClC;;;ACpBA,SAAS,cAAAC,mBAAkB;AAI3B,SAAS,cAAAC,mBAAkB;AAEpB,IAAM,kBAAkB,CAC7B,WACA,WAC0D;AAC1D,QAAM,CAAC,SAAS,OAAO,IAAIA,YAAW;AAEtC,QAAM,CAAC,UAAU,KAAK,IAAID,YAAW,YAAY;AAC/C,QAAI,WAAW,aAAa,QAAQ;AAClC,aAAQ,MAAM,UAAU,IAAI,MAAM;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,WAAW,QAAQ,OAAO,CAAC;AAE/B,SAAO,CAAC,UAAU,OAAO,OAAO;AAClC;;;ACpBA,SAAS,cAAAE,mBAAkB;AAE3B,SAAS,cAAAC,mBAAkB;AAC3B,SAAS,YAAAC,iBAAgB;AAElB,IAAM,sBAAsB,CAAC,cAA0C;AAC5E,QAAM,CAAC,OAAO,QAAQ,IAAIA,UAAgB;AAC1C,QAAM,CAAC,SAAS,OAAO,IAAID,YAAW;AAEtC,QAAM,WAAWD,YAAW,YAAY;AACtC,QAAI;AACF,UAAI,SAAS;AACX,eAAO,MAAM,WAAW,MAAM,GAAG,MAAM;AAAA,MACzC;AAAA,IACF,SAAS,IAAI;AACX,YAAMG,SAAQ;AACd,eAASA,MAAK;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,WAAW,OAAO,CAAC;AAEvB,SAAO,CAAC,UAAU,OAAO,OAAO;AAClC;;;ACpBA,SAAS,cAAAC,mBAAkB;AAI3B,SAAS,cAAAC,mBAAkB;AAEpB,IAAM,sBAAsB,CACjC,WACA,WAC0D;AAC1D,QAAM,CAAC,SAAS,OAAO,IAAIA,YAAW;AAEtC,QAAM,CAAC,UAAU,KAAK,IAAID,YAAW,YAAY;AAC/C,UAAM,oBAAoB,WAAW,MAAM;AAC3C,QAAI,WAAW,qBAAqB,QAAQ;AAC1C,aAAQ,MAAM,kBAAkB,IAAI,MAAM;AAAA,IAC5C;AAAA,EACF,GAAG,CAAC,WAAW,QAAQ,OAAO,CAAC;AAE/B,SAAO,CAAC,UAAU,OAAO,OAAO;AAClC;;;ARiCM,gBAAAE,MACA,QAAAC,aADA;AA1CN,IAAM,kBAAkB,EAAE,QAAQ,2BAA2B;AAC7D,IAAM,qCAAqC,IAAI,yBAAyB,EAAE,MAAM,eAAe;AAE/F,IAAM,iBAAiB,EAAE,QAAQ,0BAA0B;AAC3D,IAAM,oCAAoC,IAAI,yBAAyB,EAAE,MAAM,cAAc;AAMtF,IAAM,mBAAoD,CAAC,EAAE,SAAS,GAAG,MAAM,MAAM;AAC1F,QAAM,CAAC,SAAS,IAAI,yBAAyB,OAAO;AACpD,QAAM,CAAC,UAAU,WAAW,IAAIC,UAAoB;AACpD,QAAM,CAAC,SAAS,UAAU,IAAIA,UAAS,CAAC;AACxC,QAAM,CAAC,iBAAiB,kBAAkB,IAAIA,UAAS,KAAK;AAC5D,QAAM,CAAC,gBAAgB,iBAAiB,IAAIA,UAAS,KAAK;AAE1D,EAAAC;AAAA,IACE,YAAY;AACV,YAAM,WAAW,WAAW,MAAM;AAClC,UAAI,UAAU;AACZ,cAAM,CAAC,QAAQ,IAAI,MAAM,mCAAmC,MAAM;AAClE,cAAM,CAAC,OAAO,IAAI,MAAM,kCAAkC,MAAM;AAChE,2BAAmB,MAAM,UAAU,UAAU,UAAU,CAAC,eAAe,CAAC,CAAC;AACzE,0BAAkB,MAAM,UAAU,UAAU,SAAS,CAAC,cAAc,CAAC,CAAC;AAAA,MACxE;AAAA,IACF;AAAA,IACA,CAAC,SAAS;AAAA,EACZ;AAEA,EAAAA;AAAA,IACE,OAAO,YAAY;AACjB,YAAMC,YAAW,MAAM,WAAW,MAAM,GAAG,MAAM;AACjD,UAAI,QAAQ,GAAG;AACb,oBAAYA,SAAQ;AAAA,MACtB;AAAA,IACF;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SACE,gBAAAH,MAACI,UAAA,EAAS,GAAG,OACX;AAAA,oBAAAL,KAACM,aAAA,EAAY,uBAAa,WAAW,SAAS,SAAS,GAAG,IAAG;AAAA,IAC7D,gBAAAL,MAAC,eACC;AAAA,sBAAAD,KAAC,YAAS,UAAU,UAAU,WAAW,KAAK,CAAC,aAAa,CAAC,iBAAiB,SAAS,MAAM,WAAW,MAAM,GAAG,SAAS,GAAG,oBAE7H;AAAA,MACA,gBAAAA,KAAC,YAAS,UAAU,CAAC,aAAa,CAAC,gBAAgB,SAAS,MAAM,WAAW,MAAM,GAAG,QAAQ,GAAG,mBAEjG;AAAA,MACA,gBAAAA;AAAA,QAAC;AAAA;AAAA,UACC,UAAU,CAAC;AAAA,UACX,SAAS,MAAM;AACb,uBAAW,UAAU,CAAC;AAAA,UACxB;AAAA,UACD;AAAA;AAAA,MAED;AAAA,OACF;AAAA,KACF;AAEJ;","names":["useAsyncEffect","useState","Typography","Fragment","jsx","jsxs","Typography","jsx","jsxs","useState","jsx","useState","archivist","all","jsx","jsxs","useState","useAsyncEffect","useMemo","Fragment","jsx","ArchivistStats","useMemo","jsx","jsxs","Typography","useAsyncEffect","FlexCol","useState","error","isArchivistInstance","asArchivistInstance","useState","error","usePromise","useRefresh","usePromise","useRefresh","useState","error","usePromise","useRefresh","jsx","jsxs","useState","useAsyncEffect","payloads","FlexCol","Typography"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/react-archivist",
3
- "version": "7.0.0",
3
+ "version": "7.0.2",
4
4
  "description": "Common React library for all XYO projects that use React",
5
5
  "keywords": [
6
6
  "xyo",
@@ -43,44 +43,47 @@
43
43
  "src"
44
44
  ],
45
45
  "dependencies": {
46
- "@xylabs/exists": "^5.0.0",
47
- "@xylabs/hex": "^5.0.0",
48
- "@xylabs/react-async-effect": "^7.0.0",
49
- "@xylabs/react-button": "^7.0.0",
50
- "@xylabs/react-flexbox": "^7.0.0",
51
- "@xylabs/react-promise": "^7.0.0",
52
- "@xyo-network/archivist-memory": "^5.0.0",
53
- "@xyo-network/archivist-model": "^5.0.0",
54
- "@xyo-network/boundwitness-builder": "^5.0.0",
55
- "@xyo-network/boundwitness-model": "^5.0.0",
56
- "@xyo-network/module-model": "^5.0.0",
57
- "@xyo-network/module-wrapper": "^5.0.0",
58
- "@xyo-network/payload-model": "^5.0.0",
59
- "@xyo-network/react-module": "^7.0.0",
60
- "@xyo-network/react-node": "^7.0.0",
61
- "@xyo-network/react-wallet": "^7.0.0",
62
- "react-icons": "^5.5.0"
46
+ "@xylabs/exists": "~5.0.11",
47
+ "@xylabs/hex": "~5.0.11",
48
+ "@xylabs/react-async-effect": "~7.0.4",
49
+ "@xylabs/react-button": "~7.0.4",
50
+ "@xylabs/react-flexbox": "~7.0.4",
51
+ "@xylabs/react-promise": "~7.0.4",
52
+ "@xyo-network/archivist-memory": "~5.0.7",
53
+ "@xyo-network/archivist-model": "~5.0.7",
54
+ "@xyo-network/boundwitness-builder": "~5.0.7",
55
+ "@xyo-network/boundwitness-model": "~5.0.7",
56
+ "@xyo-network/module-model": "~5.0.7",
57
+ "@xyo-network/module-wrapper": "~5.0.7",
58
+ "@xyo-network/payload-model": "~5.0.7",
59
+ "@xyo-network/react-module": "^7.0.2",
60
+ "@xyo-network/react-node": "^7.0.2",
61
+ "@xyo-network/react-wallet": "^7.0.2",
62
+ "react-icons": "~5.5.0"
63
63
  },
64
64
  "devDependencies": {
65
- "@mui/icons-material": "^7.2.0",
66
- "@mui/material": "^7.2.0",
67
- "@storybook/react-vite": "^9.0.18",
68
- "@types/react": "^19.1.9",
69
- "@xylabs/events": "^5.0.0",
70
- "@xylabs/ts-scripts-yarn3": "^7.0.2",
71
- "@xylabs/tsconfig-react": "^7.0.2",
72
- "@xyo-network/account": "^5.0.0",
73
- "@xyo-network/node-memory": "^5.0.0",
74
- "react": "^19.1.1",
75
- "react-dom": "^19.1.1",
76
- "storybook": "^9.0.18",
77
- "typescript": "^5.8.3"
65
+ "@mui/icons-material": "~7.3.1",
66
+ "@mui/material": "~7.3.1",
67
+ "@storybook/react-vite": "~9.1.3",
68
+ "@types/react": "~19.1.11",
69
+ "@xylabs/events": "~5.0.11",
70
+ "@xylabs/ts-scripts-yarn3": "~7.1.7",
71
+ "@xylabs/tsconfig": "~7.1.7",
72
+ "@xylabs/tsconfig-dom": "~7.1.7",
73
+ "@xylabs/tsconfig-react": "~7.1.7",
74
+ "@xyo-network/account": "~5.0.7",
75
+ "@xyo-network/node-memory": "~5.0.7",
76
+ "react": "~19.1.1",
77
+ "react-dom": "~19.1.1",
78
+ "storybook": "~9.1.3",
79
+ "typescript": "~5.9.2",
80
+ "vite": "~7.1.3"
78
81
  },
79
82
  "peerDependencies": {
80
83
  "@mui/icons-material": ">=6 <8",
81
84
  "@mui/material": ">=6 <8",
82
- "react": "^19",
83
- "react-dom": "^19"
85
+ "react": "~19",
86
+ "react-dom": "~19"
84
87
  },
85
88
  "publishConfig": {
86
89
  "access": "public"