@xyo-network/react-archivist 2.64.9 → 2.65.0

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.
Files changed (194) hide show
  1. package/dist/browser/hooks/queries/useArchivistAll.d.cts +2 -2
  2. package/dist/browser/hooks/queries/useArchivistAll.d.cts.map +1 -1
  3. package/dist/browser/hooks/queries/useArchivistAll.d.mts +2 -2
  4. package/dist/browser/hooks/queries/useArchivistAll.d.mts.map +1 -1
  5. package/dist/browser/hooks/queries/useArchivistAll.d.ts +2 -2
  6. package/dist/browser/hooks/queries/useArchivistAll.d.ts.map +1 -1
  7. package/dist/browser/hooks/queries/useArchivistGet.d.cts +2 -2
  8. package/dist/browser/hooks/queries/useArchivistGet.d.cts.map +1 -1
  9. package/dist/browser/hooks/queries/useArchivistGet.d.mts +2 -2
  10. package/dist/browser/hooks/queries/useArchivistGet.d.mts.map +1 -1
  11. package/dist/browser/hooks/queries/useArchivistGet.d.ts +2 -2
  12. package/dist/browser/hooks/queries/useArchivistGet.d.ts.map +1 -1
  13. package/dist/node/hooks/queries/useArchivistAll.d.cts +2 -2
  14. package/dist/node/hooks/queries/useArchivistAll.d.cts.map +1 -1
  15. package/dist/node/hooks/queries/useArchivistAll.d.mts +2 -2
  16. package/dist/node/hooks/queries/useArchivistAll.d.mts.map +1 -1
  17. package/dist/node/hooks/queries/useArchivistAll.d.ts +2 -2
  18. package/dist/node/hooks/queries/useArchivistAll.d.ts.map +1 -1
  19. package/dist/node/hooks/queries/useArchivistGet.d.cts +2 -2
  20. package/dist/node/hooks/queries/useArchivistGet.d.cts.map +1 -1
  21. package/dist/node/hooks/queries/useArchivistGet.d.mts +2 -2
  22. package/dist/node/hooks/queries/useArchivistGet.d.mts.map +1 -1
  23. package/dist/node/hooks/queries/useArchivistGet.d.ts +2 -2
  24. package/dist/node/hooks/queries/useArchivistGet.d.ts.map +1 -1
  25. package/package.json +20 -20
  26. package/dist/browser/components/Card/Card.cjs +0 -206
  27. package/dist/browser/components/Card/Card.cjs.map +0 -1
  28. package/dist/browser/components/Card/Card.js +0 -185
  29. package/dist/browser/components/Card/Card.js.map +0 -1
  30. package/dist/browser/components/Card/CardActions.cjs +0 -31
  31. package/dist/browser/components/Card/CardActions.cjs.map +0 -1
  32. package/dist/browser/components/Card/CardActions.js +0 -10
  33. package/dist/browser/components/Card/CardActions.js.map +0 -1
  34. package/dist/browser/components/Card/CardContent.cjs +0 -92
  35. package/dist/browser/components/Card/CardContent.cjs.map +0 -1
  36. package/dist/browser/components/Card/CardContent.js +0 -71
  37. package/dist/browser/components/Card/CardContent.js.map +0 -1
  38. package/dist/browser/components/Card/CardHeader.cjs +0 -125
  39. package/dist/browser/components/Card/CardHeader.cjs.map +0 -1
  40. package/dist/browser/components/Card/CardHeader.js +0 -104
  41. package/dist/browser/components/Card/CardHeader.js.map +0 -1
  42. package/dist/browser/components/Card/components/ArchivistParent.cjs +0 -36
  43. package/dist/browser/components/Card/components/ArchivistParent.cjs.map +0 -1
  44. package/dist/browser/components/Card/components/ArchivistParent.js +0 -15
  45. package/dist/browser/components/Card/components/ArchivistParent.js.map +0 -1
  46. package/dist/browser/components/Card/components/ArchivistParents.cjs +0 -60
  47. package/dist/browser/components/Card/components/ArchivistParents.cjs.map +0 -1
  48. package/dist/browser/components/Card/components/ArchivistParents.js +0 -39
  49. package/dist/browser/components/Card/components/ArchivistParents.js.map +0 -1
  50. package/dist/browser/components/Card/components/Stats/ArchivistStats.cjs +0 -39
  51. package/dist/browser/components/Card/components/Stats/ArchivistStats.cjs.map +0 -1
  52. package/dist/browser/components/Card/components/Stats/ArchivistStats.js +0 -18
  53. package/dist/browser/components/Card/components/Stats/ArchivistStats.js.map +0 -1
  54. package/dist/browser/components/Card/components/Stats/MemoryArchivistStats.cjs +0 -107
  55. package/dist/browser/components/Card/components/Stats/MemoryArchivistStats.cjs.map +0 -1
  56. package/dist/browser/components/Card/components/Stats/MemoryArchivistStats.js +0 -86
  57. package/dist/browser/components/Card/components/Stats/MemoryArchivistStats.js.map +0 -1
  58. package/dist/browser/components/Card/components/Stats/index.cjs +0 -108
  59. package/dist/browser/components/Card/components/Stats/index.cjs.map +0 -1
  60. package/dist/browser/components/Card/components/Stats/index.js +0 -85
  61. package/dist/browser/components/Card/components/Stats/index.js.map +0 -1
  62. package/dist/browser/components/Card/components/index.cjs +0 -144
  63. package/dist/browser/components/Card/components/index.cjs.map +0 -1
  64. package/dist/browser/components/Card/components/index.js +0 -121
  65. package/dist/browser/components/Card/components/index.js.map +0 -1
  66. package/dist/browser/components/Card/index.cjs +0 -210
  67. package/dist/browser/components/Card/index.cjs.map +0 -1
  68. package/dist/browser/components/Card/index.js +0 -187
  69. package/dist/browser/components/Card/index.js.map +0 -1
  70. package/dist/browser/components/Details/Details.cjs +0 -100
  71. package/dist/browser/components/Details/Details.cjs.map +0 -1
  72. package/dist/browser/components/Details/Details.js +0 -79
  73. package/dist/browser/components/Details/Details.js.map +0 -1
  74. package/dist/browser/components/Details/index.cjs +0 -102
  75. package/dist/browser/components/Details/index.cjs.map +0 -1
  76. package/dist/browser/components/Details/index.js +0 -79
  77. package/dist/browser/components/Details/index.js.map +0 -1
  78. package/dist/browser/components/index.cjs +0 -287
  79. package/dist/browser/components/index.cjs.map +0 -1
  80. package/dist/browser/components/index.js +0 -264
  81. package/dist/browser/components/index.js.map +0 -1
  82. package/dist/browser/hooks/index.cjs +0 -99
  83. package/dist/browser/hooks/index.cjs.map +0 -1
  84. package/dist/browser/hooks/index.js +0 -76
  85. package/dist/browser/hooks/index.js.map +0 -1
  86. package/dist/browser/hooks/node/index.cjs +0 -64
  87. package/dist/browser/hooks/node/index.cjs.map +0 -1
  88. package/dist/browser/hooks/node/index.js +0 -41
  89. package/dist/browser/hooks/node/index.js.map +0 -1
  90. package/dist/browser/hooks/node/useArchivistFromNode.cjs +0 -38
  91. package/dist/browser/hooks/node/useArchivistFromNode.cjs.map +0 -1
  92. package/dist/browser/hooks/node/useArchivistFromNode.js +0 -17
  93. package/dist/browser/hooks/node/useArchivistFromNode.js.map +0 -1
  94. package/dist/browser/hooks/node/useArchivistsFromNode.cjs +0 -47
  95. package/dist/browser/hooks/node/useArchivistsFromNode.cjs.map +0 -1
  96. package/dist/browser/hooks/node/useArchivistsFromNode.js +0 -26
  97. package/dist/browser/hooks/node/useArchivistsFromNode.js.map +0 -1
  98. package/dist/browser/hooks/queries/index.cjs +0 -60
  99. package/dist/browser/hooks/queries/index.cjs.map +0 -1
  100. package/dist/browser/hooks/queries/index.js +0 -37
  101. package/dist/browser/hooks/queries/index.js.map +0 -1
  102. package/dist/browser/hooks/queries/useArchivistAll.cjs +0 -44
  103. package/dist/browser/hooks/queries/useArchivistAll.cjs.map +0 -1
  104. package/dist/browser/hooks/queries/useArchivistAll.js +0 -23
  105. package/dist/browser/hooks/queries/useArchivistAll.js.map +0 -1
  106. package/dist/browser/hooks/queries/useArchivistGet.cjs +0 -37
  107. package/dist/browser/hooks/queries/useArchivistGet.cjs.map +0 -1
  108. package/dist/browser/hooks/queries/useArchivistGet.js +0 -16
  109. package/dist/browser/hooks/queries/useArchivistGet.js.map +0 -1
  110. package/dist/docs.json +0 -25256
  111. package/dist/node/components/Card/Card.cjs +0 -212
  112. package/dist/node/components/Card/Card.cjs.map +0 -1
  113. package/dist/node/components/Card/Card.js +0 -187
  114. package/dist/node/components/Card/Card.js.map +0 -1
  115. package/dist/node/components/Card/CardActions.cjs +0 -35
  116. package/dist/node/components/Card/CardActions.cjs.map +0 -1
  117. package/dist/node/components/Card/CardActions.js +0 -10
  118. package/dist/node/components/Card/CardActions.js.map +0 -1
  119. package/dist/node/components/Card/CardContent.cjs +0 -96
  120. package/dist/node/components/Card/CardContent.cjs.map +0 -1
  121. package/dist/node/components/Card/CardContent.js +0 -71
  122. package/dist/node/components/Card/CardContent.js.map +0 -1
  123. package/dist/node/components/Card/CardHeader.cjs +0 -131
  124. package/dist/node/components/Card/CardHeader.cjs.map +0 -1
  125. package/dist/node/components/Card/CardHeader.js +0 -106
  126. package/dist/node/components/Card/CardHeader.js.map +0 -1
  127. package/dist/node/components/Card/components/ArchivistParent.cjs +0 -40
  128. package/dist/node/components/Card/components/ArchivistParent.cjs.map +0 -1
  129. package/dist/node/components/Card/components/ArchivistParent.js +0 -15
  130. package/dist/node/components/Card/components/ArchivistParent.js.map +0 -1
  131. package/dist/node/components/Card/components/ArchivistParents.cjs +0 -64
  132. package/dist/node/components/Card/components/ArchivistParents.cjs.map +0 -1
  133. package/dist/node/components/Card/components/ArchivistParents.js +0 -39
  134. package/dist/node/components/Card/components/ArchivistParents.js.map +0 -1
  135. package/dist/node/components/Card/components/Stats/ArchivistStats.cjs +0 -43
  136. package/dist/node/components/Card/components/Stats/ArchivistStats.cjs.map +0 -1
  137. package/dist/node/components/Card/components/Stats/ArchivistStats.js +0 -18
  138. package/dist/node/components/Card/components/Stats/ArchivistStats.js.map +0 -1
  139. package/dist/node/components/Card/components/Stats/MemoryArchivistStats.cjs +0 -113
  140. package/dist/node/components/Card/components/Stats/MemoryArchivistStats.cjs.map +0 -1
  141. package/dist/node/components/Card/components/Stats/MemoryArchivistStats.js +0 -88
  142. package/dist/node/components/Card/components/Stats/MemoryArchivistStats.js.map +0 -1
  143. package/dist/node/components/Card/components/Stats/index.cjs +0 -115
  144. package/dist/node/components/Card/components/Stats/index.cjs.map +0 -1
  145. package/dist/node/components/Card/components/Stats/index.js +0 -87
  146. package/dist/node/components/Card/components/Stats/index.js.map +0 -1
  147. package/dist/node/components/Card/components/index.cjs +0 -153
  148. package/dist/node/components/Card/components/index.cjs.map +0 -1
  149. package/dist/node/components/Card/components/index.js +0 -123
  150. package/dist/node/components/Card/components/index.js.map +0 -1
  151. package/dist/node/components/Card/index.cjs +0 -218
  152. package/dist/node/components/Card/index.cjs.map +0 -1
  153. package/dist/node/components/Card/index.js +0 -189
  154. package/dist/node/components/Card/index.js.map +0 -1
  155. package/dist/node/components/Details/Details.cjs +0 -112
  156. package/dist/node/components/Details/Details.cjs.map +0 -1
  157. package/dist/node/components/Details/Details.js +0 -87
  158. package/dist/node/components/Details/Details.js.map +0 -1
  159. package/dist/node/components/Details/index.cjs +0 -114
  160. package/dist/node/components/Details/index.cjs.map +0 -1
  161. package/dist/node/components/Details/index.js +0 -87
  162. package/dist/node/components/Details/index.js.map +0 -1
  163. package/dist/node/components/index.cjs +0 -304
  164. package/dist/node/components/index.cjs.map +0 -1
  165. package/dist/node/components/index.js +0 -274
  166. package/dist/node/components/index.js.map +0 -1
  167. package/dist/node/hooks/index.cjs +0 -108
  168. package/dist/node/hooks/index.cjs.map +0 -1
  169. package/dist/node/hooks/index.js +0 -78
  170. package/dist/node/hooks/index.js.map +0 -1
  171. package/dist/node/hooks/node/index.cjs +0 -70
  172. package/dist/node/hooks/node/index.cjs.map +0 -1
  173. package/dist/node/hooks/node/index.js +0 -42
  174. package/dist/node/hooks/node/index.js.map +0 -1
  175. package/dist/node/hooks/node/useArchivistFromNode.cjs +0 -43
  176. package/dist/node/hooks/node/useArchivistFromNode.cjs.map +0 -1
  177. package/dist/node/hooks/node/useArchivistFromNode.js +0 -18
  178. package/dist/node/hooks/node/useArchivistFromNode.js.map +0 -1
  179. package/dist/node/hooks/node/useArchivistsFromNode.cjs +0 -51
  180. package/dist/node/hooks/node/useArchivistsFromNode.cjs.map +0 -1
  181. package/dist/node/hooks/node/useArchivistsFromNode.js +0 -26
  182. package/dist/node/hooks/node/useArchivistsFromNode.js.map +0 -1
  183. package/dist/node/hooks/queries/index.cjs +0 -66
  184. package/dist/node/hooks/queries/index.cjs.map +0 -1
  185. package/dist/node/hooks/queries/index.js +0 -38
  186. package/dist/node/hooks/queries/index.js.map +0 -1
  187. package/dist/node/hooks/queries/useArchivistAll.cjs +0 -49
  188. package/dist/node/hooks/queries/useArchivistAll.cjs.map +0 -1
  189. package/dist/node/hooks/queries/useArchivistAll.js +0 -24
  190. package/dist/node/hooks/queries/useArchivistAll.js.map +0 -1
  191. package/dist/node/hooks/queries/useArchivistGet.cjs +0 -41
  192. package/dist/node/hooks/queries/useArchivistGet.cjs.map +0 -1
  193. package/dist/node/hooks/queries/useArchivistGet.js +0 -16
  194. package/dist/node/hooks/queries/useArchivistGet.js.map +0 -1
@@ -1,153 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/Card/components/index.ts
21
- var components_exports = {};
22
- __export(components_exports, {
23
- ArchivistParent: () => ArchivistParent,
24
- ArchivistParents: () => ArchivistParents,
25
- ArchivistStats: () => ArchivistStats,
26
- MemoryArchivistsStats: () => MemoryArchivistsStats
27
- });
28
- module.exports = __toCommonJS(components_exports);
29
-
30
- // src/components/Card/components/ArchivistParent.tsx
31
- var import_material = require("@mui/material");
32
- var import_jsx_runtime = require("react/jsx-runtime");
33
- var ArchivistParent = ({ archivistType, parentArchivists }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: parentArchivists == null ? void 0 : parentArchivists.map((address) => {
34
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.ListItem, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Typography, { variant: "subtitle2", children: [
35
- archivistType,
36
- ":",
37
- " ",
38
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", sx: { ml: 0.5 }, children: address })
39
- ] }) }, address);
40
- }) });
41
-
42
- // src/components/Card/components/ArchivistParents.tsx
43
- var import_icons_material = require("@mui/icons-material");
44
- var import_material2 = require("@mui/material");
45
- var import_react_flexbox = require("@xylabs/react-flexbox");
46
- var import_react = require("react");
47
- var import_jsx_runtime2 = require("react/jsx-runtime");
48
- var ArchivistParents = ({ config, ...props }) => {
49
- const [parentArchivistCollapse, setParentArchivistCollapse] = (0, import_react.useState)(false);
50
- const { commit, read, write } = (config == null ? void 0 : config.parents) ?? {};
51
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: commit || read || write ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react_flexbox.FlexCol, { alignItems: "start", ...props, children: [
52
- /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("span", { onClick: () => setParentArchivistCollapse(!parentArchivistCollapse), children: [
53
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "subtitle2", sx: { cursor: "pointer", display: "inline-block" }, children: "Parents" }),
54
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.IconButton, { size: "small", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ArrowRightRounded, { sx: { rotate: parentArchivistCollapse ? "90deg" : "0deg", transition: "all .25s" } }) })
55
- ] }),
56
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Collapse, { in: parentArchivistCollapse, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Paper, { elevation: 2, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_material2.List, { children: [
57
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ArchivistParent, { archivistType: "Commit", parentArchivists: commit }),
58
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ArchivistParent, { archivistType: "Read", parentArchivists: read }),
59
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ArchivistParent, { archivistType: "Write", parentArchivists: write })
60
- ] }) }) })
61
- ] }) : null });
62
- };
63
-
64
- // src/components/Card/components/Stats/ArchivistStats.tsx
65
- var import_material3 = require("@mui/material");
66
- var import_react_flexbox2 = require("@xylabs/react-flexbox");
67
- var import_bs = require("react-icons/bs/index.js");
68
- var import_vsc = require("react-icons/vsc/index.js");
69
- var import_jsx_runtime3 = require("react/jsx-runtime");
70
- var ArchivistStats = ({ addresses = {}, boundWitnesses, payloads, schemas = {} }) => {
71
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_react_flexbox2.FlexRow, { gap: 2, mr: 0.5, children: [
72
- (payloads == null ? void 0 : payloads.length) ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Payloads", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: payloads == null ? void 0 : payloads.length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_vsc.VscSymbolNamespace, { size: 20 }) }) }) : null,
73
- (boundWitnesses == null ? void 0 : boundWitnesses.length) ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Blocks", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: boundWitnesses == null ? void 0 : boundWitnesses.length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_vsc.VscSymbolMethod, { size: 20 }) }) }) : null,
74
- Object.entries(schemas).length ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Schemas", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: Object.entries(schemas).length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_bs.BsFileEarmarkCode, { size: 20 }) }) }) : null,
75
- Object.entries(addresses).length ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Addresses", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: Object.entries(addresses).length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_vsc.VscOrganization, { size: 20 }) }) }) : null
76
- ] });
77
- };
78
-
79
- // src/components/Card/components/Stats/MemoryArchivistStats.tsx
80
- var import_react_async_effect = require("@xylabs/react-async-effect");
81
- var import_archivist = require("@xyo-network/archivist");
82
- var import_boundwitness_model = require("@xyo-network/boundwitness-model");
83
- var import_boundwitness_wrapper = require("@xyo-network/boundwitness-wrapper");
84
- var import_react2 = require("react");
85
- var import_jsx_runtime4 = require("react/jsx-runtime");
86
- var MemoryArchivistsStats = ({ archivist }) => {
87
- const [all, setAll] = (0, import_react2.useState)();
88
- const getAll = (0, import_react2.useCallback)(async (archivist2) => {
89
- var _a;
90
- const all2 = await ((_a = archivist2 == null ? void 0 : archivist2.all) == null ? void 0 : _a.call(archivist2));
91
- setAll(all2);
92
- }, []);
93
- (0, import_react2.useEffect)(() => {
94
- const listeners = [];
95
- if (archivist == null ? void 0 : archivist.queries.includes(import_archivist.ArchivistAllQuerySchema)) {
96
- const insertListener = archivist.on("inserted", async () => {
97
- await getAll(archivist);
98
- });
99
- listeners.push(insertListener);
100
- const clearListener = archivist.on("cleared", async () => {
101
- await getAll(archivist);
102
- });
103
- listeners.push(clearListener);
104
- }
105
- return () => listeners.forEach((listener) => listener == null ? void 0 : listener());
106
- }, [archivist, getAll]);
107
- (0, import_react_async_effect.useAsyncEffect)(
108
- // eslint-disable-next-line react-hooks/exhaustive-deps
109
- async () => {
110
- if (archivist == null ? void 0 : archivist.queries.includes(import_archivist.ArchivistAllQuerySchema)) {
111
- await getAll(archivist);
112
- } else {
113
- setAll(null);
114
- }
115
- },
116
- [archivist, getAll]
117
- );
118
- const payloads = (0, import_react2.useMemo)(() => all === null ? [] : all == null ? void 0 : all.filter((payload) => payload.schema !== import_boundwitness_model.BoundWitnessSchema), [all]);
119
- const boundWitnesses = (0, import_react2.useMemo)(() => all === null ? [] : all == null ? void 0 : all.filter((payload) => payload.schema === import_boundwitness_model.BoundWitnessSchema), [all]);
120
- const addresses = (0, import_react2.useMemo)(
121
- () => (all == null ? void 0 : all.reduce(
122
- (prev, payload) => {
123
- var _a;
124
- const w = import_boundwitness_wrapper.BoundWitnessWrapper.tryParse(payload);
125
- (_a = w == null ? void 0 : w.addresses) == null ? void 0 : _a.forEach((address) => {
126
- prev[address] = (prev[address] ?? 0) + 1;
127
- });
128
- return prev;
129
- },
130
- {}
131
- )) ?? {},
132
- [all]
133
- );
134
- const schemas = (0, import_react2.useMemo)(
135
- () => (all == null ? void 0 : all.reduce(
136
- (prev, payload) => {
137
- prev[payload.schema] = (prev[payload.schema] ?? 0) + 1;
138
- return prev;
139
- },
140
- {}
141
- )) ?? {},
142
- [all]
143
- );
144
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ArchivistStats, { addresses, boundWitnesses, payloads, schemas });
145
- };
146
- // Annotate the CommonJS export names for ESM import in node:
147
- 0 && (module.exports = {
148
- ArchivistParent,
149
- ArchivistParents,
150
- ArchivistStats,
151
- MemoryArchivistsStats
152
- });
153
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../src/components/Card/components/index.ts","../../../../../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"],"sourcesContent":["export * from './ArchivistParent'\nexport * from './ArchivistParents'\nexport * from './Stats'\n","import { ListItem, Typography } from '@mui/material'\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 <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 { Collapse, IconButton, List, Paper, Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { ArchivistConfig } from '@xyo-network/archivist'\nimport { useState } from 'react'\n\nimport { ArchivistParent } from './ArchivistParent'\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 { commit, read, write } = config?.parents ?? {}\n\n return (\n <>\n {commit || read || write ? (\n <FlexCol alignItems=\"start\" {...props}>\n <span onClick={() => setParentArchivistCollapse(!parentArchivistCollapse)}>\n <Typography variant=\"subtitle2\" sx={{ cursor: 'pointer', display: 'inline-block' }}>\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 ) : null}\n </>\n )\n}\n","import { Badge, Tooltip } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { Payload } from '@xyo-network/payload-model'\n// eslint-disable-next-line import/no-internal-modules\nimport { BsFileEarmarkCode } from 'react-icons/bs/index.js'\n// eslint-disable-next-line import/no-internal-modules\nimport { VscOrganization, VscSymbolMethod, VscSymbolNamespace } from 'react-icons/vsc/index.js'\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> = ({ addresses = {}, boundWitnesses, payloads, schemas = {} }) => {\n return (\n <FlexRow gap={2} mr={0.5}>\n {payloads?.length ? (\n <Tooltip title=\"Payloads\">\n <Badge badgeContent={payloads?.length} color=\"primary\">\n <VscSymbolNamespace size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {boundWitnesses?.length ? (\n <Tooltip title=\"Blocks\">\n <Badge badgeContent={boundWitnesses?.length} color=\"primary\">\n <VscSymbolMethod size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {Object.entries(schemas).length ? (\n <Tooltip title=\"Schemas\">\n <Badge badgeContent={Object.entries(schemas).length} color=\"primary\">\n <BsFileEarmarkCode size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {Object.entries(addresses).length ? (\n <Tooltip title=\"Addresses\">\n <Badge badgeContent={Object.entries(addresses).length} color=\"primary\">\n <VscOrganization size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n </FlexRow>\n )\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ArchivistAllQuerySchema, ArchivistInstance } from '@xyo-network/archivist'\nimport { BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { EventUnsubscribeFunction } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport { ArchivistStats } from './ArchivistStats'\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 () => listeners.forEach((listener) => listener?.())\n }, [archivist, getAll])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\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 = BoundWitnessWrapper.tryParse(payload) as BoundWitnessWrapper | undefined\n w?.addresses?.forEach((address) => {\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,sBAAqC;AAQnC;AADK,IAAM,kBAAgD,CAAC,EAAE,eAAe,iBAAiB,MAC9F,2EACG,+DAAkB,IAAI,CAAC,YAAY;AAClC,SACE,4CAAC,4BACC,uDAAC,8BAAW,SAAQ,aACjB;AAAA;AAAA,IAAc;AAAA,IAAE;AAAA,IACjB,4CAAC,8BAAW,SAAS,WAAW,IAAI,EAAE,IAAI,IAAI,GAC3C,mBACH;AAAA,KACF,KANa,OAOf;AAEJ,IACF;;;ACrBF,4BAA2D;AAC3D,IAAAA,mBAA8D;AAC9D,2BAAsC;AAEtC,mBAAyB;AAcrB,IAAAC,sBAAA;AANG,IAAM,mBAAoD,CAAC,EAAE,QAAQ,GAAG,MAAM,MAAM;AACzF,QAAM,CAAC,yBAAyB,0BAA0B,QAAI,uBAAS,KAAK;AAE5E,QAAM,EAAE,QAAQ,MAAM,MAAM,KAAI,iCAAQ,YAAW,CAAC;AAEpD,SACE,6EACG,oBAAU,QAAQ,QACjB,8CAAC,gCAAQ,YAAW,SAAS,GAAG,OAC9B;AAAA,kDAAC,UAAK,SAAS,MAAM,2BAA2B,CAAC,uBAAuB,GACtE;AAAA,mDAAC,+BAAW,SAAQ,aAAY,IAAI,EAAE,QAAQ,WAAW,SAAS,eAAe,GAAG,qBAEpF;AAAA,MACA,6CAAC,+BAAW,MAAK,SACf,uDAAC,sBAAAC,mBAAA,EAAsB,IAAI,EAAE,QAAQ,0BAA0B,UAAU,QAAQ,YAAY,WAAW,GAAG,GAC7G;AAAA,OACF;AAAA,IACA,6CAAC,6BAAS,IAAI,yBACZ,uDAAC,0BAAM,WAAW,GAChB,wDAAC,yBACC;AAAA,mDAAC,mBAAgB,eAAc,UAAS,kBAAkB,QAAQ;AAAA,MAClE,6CAAC,mBAAgB,eAAc,QAAO,kBAAkB,MAAM;AAAA,MAC9D,6CAAC,mBAAgB,eAAc,SAAQ,kBAAkB,OAAO;AAAA,OAClE,GACF,GACF;AAAA,KACF,IACE,MACN;AAEJ;;;AC1CA,IAAAC,mBAA+B;AAC/B,IAAAC,wBAAwB;AAGxB,gBAAkC;AAElC,iBAAqE;AAWjE,IAAAC,sBAAA;AAFG,IAAM,iBAAgD,CAAC,EAAE,YAAY,CAAC,GAAG,gBAAgB,UAAU,UAAU,CAAC,EAAE,MAAM;AAC3H,SACE,8CAAC,iCAAQ,KAAK,GAAG,IAAI,KAClB;AAAA,0CAAU,UACT,6CAAC,4BAAQ,OAAM,YACb,uDAAC,0BAAM,cAAc,qCAAU,QAAQ,OAAM,WAC3C,uDAAC,iCAAmB,MAAM,IAAI,GAChC,GACF,IACE;AAAA,KACH,iDAAgB,UACf,6CAAC,4BAAQ,OAAM,UACb,uDAAC,0BAAM,cAAc,iDAAgB,QAAQ,OAAM,WACjD,uDAAC,8BAAgB,MAAM,IAAI,GAC7B,GACF,IACE;AAAA,IACH,OAAO,QAAQ,OAAO,EAAE,SACvB,6CAAC,4BAAQ,OAAM,WACb,uDAAC,0BAAM,cAAc,OAAO,QAAQ,OAAO,EAAE,QAAQ,OAAM,WACzD,uDAAC,+BAAkB,MAAM,IAAI,GAC/B,GACF,IACE;AAAA,IACH,OAAO,QAAQ,SAAS,EAAE,SACzB,6CAAC,4BAAQ,OAAM,aACb,uDAAC,0BAAM,cAAc,OAAO,QAAQ,SAAS,EAAE,QAAQ,OAAM,WAC3D,uDAAC,8BAAgB,MAAM,IAAI,GAC7B,GACF,IACE;AAAA,KACN;AAEJ;;;AChDA,gCAA+B;AAC/B,uBAA2D;AAC3D,gCAAmC;AACnC,kCAAoC;AAGpC,IAAAC,gBAA0D;AA0EjD,IAAAC,sBAAA;AAlEF,IAAM,wBAA6D,CAAC,EAAE,UAAU,MAAM;AAC3F,QAAM,CAAC,KAAK,MAAM,QAAI,wBAA2B;AAEjD,QAAM,aAAS,2BAAY,OAAOC,eAAkC;AAjBtE;AAkBI,UAAMC,OAAM,QAAM,KAAAD,cAAA,gBAAAA,WAAW,QAAX,wBAAAA;AAClB,WAAOC,IAAG;AAAA,EACZ,GAAG,CAAC,CAAC;AAEL,+BAAU,MAAM;AACd,UAAM,YAAwC,CAAC;AAE/C,QAAI,uCAAW,QAAQ,SAAS,2CAA0B;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,UAAU,QAAQ,CAAC,aAAa,sCAAY;AAAA,EAC3D,GAAG,CAAC,WAAW,MAAM,CAAC;AAEtB;AAAA;AAAA,IAEE,YAAY;AACV,UAAI,uCAAW,QAAQ,SAAS,2CAA0B;AACxD,cAAM,OAAO,SAAS;AAAA,MACxB,OAAO;AACL,eAAO,IAAI;AAAA,MACb;AAAA,IACF;AAAA,IACA,CAAC,WAAW,MAAM;AAAA,EACpB;AAEA,QAAM,eAAW,uBAAQ,MAAO,QAAQ,OAAO,CAAC,IAAI,2BAAK,OAAO,CAAC,YAAY,QAAQ,WAAW,+CAAsB,CAAC,GAAG,CAAC;AAC3H,QAAM,qBAAiB,uBAAQ,MAAO,QAAQ,OAAO,CAAC,IAAI,2BAAK,OAAO,CAAC,YAAY,QAAQ,WAAW,+CAAsB,CAAC,GAAG,CAAC;AACjI,QAAM,gBAAY;AAAA,IAChB,OACE,2BAAK;AAAA,MACH,CAAC,MAAM,YAAY;AAzD3B;AA0DU,cAAM,IAAI,gDAAoB,SAAS,OAAO;AAC9C,qCAAG,cAAH,mBAAc,QAAQ,CAAC,YAAY;AACjC,eAAK,OAAO,KAAK,KAAK,OAAO,KAAK,KAAK;AAAA,QACzC;AACA,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,UACE,CAAC;AAAA,IACR,CAAC,GAAG;AAAA,EACN;AACA,QAAM,cAAU;AAAA,IACd,OACE,2BAAK;AAAA,MACH,CAAC,MAAM,YAAY;AACjB,aAAK,QAAQ,MAAM,KAAK,KAAK,QAAQ,MAAM,KAAK,KAAK;AACrD,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,UACE,CAAC;AAAA,IACR,CAAC,GAAG;AAAA,EACN;AAEA,SAAO,6CAAC,kBAAe,WAAsB,gBAAgC,UAAoB,SAAkB;AACrH;","names":["import_material","import_jsx_runtime","ArrowRightRoundedIcon","import_material","import_react_flexbox","import_jsx_runtime","import_react","import_jsx_runtime","archivist","all"]}
@@ -1,123 +0,0 @@
1
- // src/components/Card/components/ArchivistParent.tsx
2
- import { ListItem, Typography } from "@mui/material";
3
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
- var ArchivistParent = ({ archivistType, parentArchivists }) => /* @__PURE__ */ jsx(Fragment, { children: parentArchivists == null ? void 0 : parentArchivists.map((address) => {
5
- return /* @__PURE__ */ jsx(ListItem, { children: /* @__PURE__ */ jsxs(Typography, { variant: "subtitle2", children: [
6
- archivistType,
7
- ":",
8
- " ",
9
- /* @__PURE__ */ jsx(Typography, { variant: "caption", sx: { ml: 0.5 }, children: address })
10
- ] }) }, address);
11
- }) });
12
-
13
- // src/components/Card/components/ArchivistParents.tsx
14
- import { ArrowRightRounded as ArrowRightRoundedIcon } from "@mui/icons-material";
15
- import { Collapse, IconButton, List, Paper, Typography as Typography2 } from "@mui/material";
16
- import { FlexCol } from "@xylabs/react-flexbox";
17
- import { useState } from "react";
18
- import { Fragment as Fragment2, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
19
- var ArchivistParents = ({ config, ...props }) => {
20
- const [parentArchivistCollapse, setParentArchivistCollapse] = useState(false);
21
- const { commit, read, write } = (config == null ? void 0 : config.parents) ?? {};
22
- return /* @__PURE__ */ jsx2(Fragment2, { children: commit || read || write ? /* @__PURE__ */ jsxs2(FlexCol, { alignItems: "start", ...props, children: [
23
- /* @__PURE__ */ jsxs2("span", { onClick: () => setParentArchivistCollapse(!parentArchivistCollapse), children: [
24
- /* @__PURE__ */ jsx2(Typography2, { variant: "subtitle2", sx: { cursor: "pointer", display: "inline-block" }, children: "Parents" }),
25
- /* @__PURE__ */ jsx2(IconButton, { size: "small", children: /* @__PURE__ */ jsx2(ArrowRightRoundedIcon, { sx: { rotate: parentArchivistCollapse ? "90deg" : "0deg", transition: "all .25s" } }) })
26
- ] }),
27
- /* @__PURE__ */ jsx2(Collapse, { in: parentArchivistCollapse, children: /* @__PURE__ */ jsx2(Paper, { elevation: 2, children: /* @__PURE__ */ jsxs2(List, { children: [
28
- /* @__PURE__ */ jsx2(ArchivistParent, { archivistType: "Commit", parentArchivists: commit }),
29
- /* @__PURE__ */ jsx2(ArchivistParent, { archivistType: "Read", parentArchivists: read }),
30
- /* @__PURE__ */ jsx2(ArchivistParent, { archivistType: "Write", parentArchivists: write })
31
- ] }) }) })
32
- ] }) : null });
33
- };
34
-
35
- // src/components/Card/components/Stats/ArchivistStats.tsx
36
- import { Badge, Tooltip } from "@mui/material";
37
- import { FlexRow } from "@xylabs/react-flexbox";
38
- import { BsFileEarmarkCode } from "react-icons/bs/index.js";
39
- import { VscOrganization, VscSymbolMethod, VscSymbolNamespace } from "react-icons/vsc/index.js";
40
- import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
41
- var ArchivistStats = ({ addresses = {}, boundWitnesses, payloads, schemas = {} }) => {
42
- return /* @__PURE__ */ jsxs3(FlexRow, { gap: 2, mr: 0.5, children: [
43
- (payloads == null ? void 0 : payloads.length) ? /* @__PURE__ */ jsx3(Tooltip, { title: "Payloads", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: payloads == null ? void 0 : payloads.length, color: "primary", children: /* @__PURE__ */ jsx3(VscSymbolNamespace, { size: 20 }) }) }) : null,
44
- (boundWitnesses == null ? void 0 : boundWitnesses.length) ? /* @__PURE__ */ jsx3(Tooltip, { title: "Blocks", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: boundWitnesses == null ? void 0 : boundWitnesses.length, color: "primary", children: /* @__PURE__ */ jsx3(VscSymbolMethod, { size: 20 }) }) }) : null,
45
- Object.entries(schemas).length ? /* @__PURE__ */ jsx3(Tooltip, { title: "Schemas", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: Object.entries(schemas).length, color: "primary", children: /* @__PURE__ */ jsx3(BsFileEarmarkCode, { size: 20 }) }) }) : null,
46
- Object.entries(addresses).length ? /* @__PURE__ */ jsx3(Tooltip, { title: "Addresses", children: /* @__PURE__ */ jsx3(Badge, { badgeContent: Object.entries(addresses).length, color: "primary", children: /* @__PURE__ */ jsx3(VscOrganization, { size: 20 }) }) }) : null
47
- ] });
48
- };
49
-
50
- // src/components/Card/components/Stats/MemoryArchivistStats.tsx
51
- import { useAsyncEffect } from "@xylabs/react-async-effect";
52
- import { ArchivistAllQuerySchema } from "@xyo-network/archivist";
53
- import { BoundWitnessSchema } from "@xyo-network/boundwitness-model";
54
- import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
55
- import { useCallback, useEffect, useMemo, useState as useState2 } from "react";
56
- import { jsx as jsx4 } from "react/jsx-runtime";
57
- var MemoryArchivistsStats = ({ archivist }) => {
58
- const [all, setAll] = useState2();
59
- const getAll = useCallback(async (archivist2) => {
60
- var _a;
61
- const all2 = await ((_a = archivist2 == null ? void 0 : archivist2.all) == null ? void 0 : _a.call(archivist2));
62
- setAll(all2);
63
- }, []);
64
- useEffect(() => {
65
- const listeners = [];
66
- if (archivist == null ? void 0 : archivist.queries.includes(ArchivistAllQuerySchema)) {
67
- const insertListener = archivist.on("inserted", async () => {
68
- await getAll(archivist);
69
- });
70
- listeners.push(insertListener);
71
- const clearListener = archivist.on("cleared", async () => {
72
- await getAll(archivist);
73
- });
74
- listeners.push(clearListener);
75
- }
76
- return () => listeners.forEach((listener) => listener == null ? void 0 : listener());
77
- }, [archivist, getAll]);
78
- useAsyncEffect(
79
- // eslint-disable-next-line react-hooks/exhaustive-deps
80
- async () => {
81
- if (archivist == null ? void 0 : archivist.queries.includes(ArchivistAllQuerySchema)) {
82
- await getAll(archivist);
83
- } else {
84
- setAll(null);
85
- }
86
- },
87
- [archivist, getAll]
88
- );
89
- const payloads = useMemo(() => all === null ? [] : all == null ? void 0 : all.filter((payload) => payload.schema !== BoundWitnessSchema), [all]);
90
- const boundWitnesses = useMemo(() => all === null ? [] : all == null ? void 0 : all.filter((payload) => payload.schema === BoundWitnessSchema), [all]);
91
- const addresses = useMemo(
92
- () => (all == null ? void 0 : all.reduce(
93
- (prev, payload) => {
94
- var _a;
95
- const w = BoundWitnessWrapper.tryParse(payload);
96
- (_a = w == null ? void 0 : w.addresses) == null ? void 0 : _a.forEach((address) => {
97
- prev[address] = (prev[address] ?? 0) + 1;
98
- });
99
- return prev;
100
- },
101
- {}
102
- )) ?? {},
103
- [all]
104
- );
105
- const schemas = useMemo(
106
- () => (all == null ? void 0 : all.reduce(
107
- (prev, payload) => {
108
- prev[payload.schema] = (prev[payload.schema] ?? 0) + 1;
109
- return prev;
110
- },
111
- {}
112
- )) ?? {},
113
- [all]
114
- );
115
- return /* @__PURE__ */ jsx4(ArchivistStats, { addresses, boundWitnesses, payloads, schemas });
116
- };
117
- export {
118
- ArchivistParent,
119
- ArchivistParents,
120
- ArchivistStats,
121
- MemoryArchivistsStats
122
- };
123
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../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"],"sourcesContent":["import { ListItem, Typography } from '@mui/material'\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 <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 { Collapse, IconButton, List, Paper, Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { ArchivistConfig } from '@xyo-network/archivist'\nimport { useState } from 'react'\n\nimport { ArchivistParent } from './ArchivistParent'\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 { commit, read, write } = config?.parents ?? {}\n\n return (\n <>\n {commit || read || write ? (\n <FlexCol alignItems=\"start\" {...props}>\n <span onClick={() => setParentArchivistCollapse(!parentArchivistCollapse)}>\n <Typography variant=\"subtitle2\" sx={{ cursor: 'pointer', display: 'inline-block' }}>\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 ) : null}\n </>\n )\n}\n","import { Badge, Tooltip } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { Payload } from '@xyo-network/payload-model'\n// eslint-disable-next-line import/no-internal-modules\nimport { BsFileEarmarkCode } from 'react-icons/bs/index.js'\n// eslint-disable-next-line import/no-internal-modules\nimport { VscOrganization, VscSymbolMethod, VscSymbolNamespace } from 'react-icons/vsc/index.js'\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> = ({ addresses = {}, boundWitnesses, payloads, schemas = {} }) => {\n return (\n <FlexRow gap={2} mr={0.5}>\n {payloads?.length ? (\n <Tooltip title=\"Payloads\">\n <Badge badgeContent={payloads?.length} color=\"primary\">\n <VscSymbolNamespace size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {boundWitnesses?.length ? (\n <Tooltip title=\"Blocks\">\n <Badge badgeContent={boundWitnesses?.length} color=\"primary\">\n <VscSymbolMethod size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {Object.entries(schemas).length ? (\n <Tooltip title=\"Schemas\">\n <Badge badgeContent={Object.entries(schemas).length} color=\"primary\">\n <BsFileEarmarkCode size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {Object.entries(addresses).length ? (\n <Tooltip title=\"Addresses\">\n <Badge badgeContent={Object.entries(addresses).length} color=\"primary\">\n <VscOrganization size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n </FlexRow>\n )\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ArchivistAllQuerySchema, ArchivistInstance } from '@xyo-network/archivist'\nimport { BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { EventUnsubscribeFunction } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport { ArchivistStats } from './ArchivistStats'\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 () => listeners.forEach((listener) => listener?.())\n }, [archivist, getAll])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\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 = BoundWitnessWrapper.tryParse(payload) as BoundWitnessWrapper | undefined\n w?.addresses?.forEach((address) => {\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"],"mappings":";AAAA,SAAS,UAAU,kBAAkB;AAQnC,mBAMU,KAFF,YAJR;AADK,IAAM,kBAAgD,CAAC,EAAE,eAAe,iBAAiB,MAC9F,gCACG,+DAAkB,IAAI,CAAC,YAAY;AAClC,SACE,oBAAC,YACC,+BAAC,cAAW,SAAQ,aACjB;AAAA;AAAA,IAAc;AAAA,IAAE;AAAA,IACjB,oBAAC,cAAW,SAAS,WAAW,IAAI,EAAE,IAAI,IAAI,GAC3C,mBACH;AAAA,KACF,KANa,OAOf;AAEJ,IACF;;;ACrBF,SAAS,qBAAqB,6BAA6B;AAC3D,SAAS,UAAU,YAAY,MAAM,OAAO,cAAAA,mBAAkB;AAC9D,SAAuB,eAAe;AAEtC,SAAS,gBAAgB;AAcrB,qBAAAC,WAIQ,OAAAC,MADF,QAAAC,aAHN;AANG,IAAM,mBAAoD,CAAC,EAAE,QAAQ,GAAG,MAAM,MAAM;AACzF,QAAM,CAAC,yBAAyB,0BAA0B,IAAI,SAAS,KAAK;AAE5E,QAAM,EAAE,QAAQ,MAAM,MAAM,KAAI,iCAAQ,YAAW,CAAC;AAEpD,SACE,gBAAAD,KAAAD,WAAA,EACG,oBAAU,QAAQ,QACjB,gBAAAE,MAAC,WAAQ,YAAW,SAAS,GAAG,OAC9B;AAAA,oBAAAA,MAAC,UAAK,SAAS,MAAM,2BAA2B,CAAC,uBAAuB,GACtE;AAAA,sBAAAD,KAACE,aAAA,EAAW,SAAQ,aAAY,IAAI,EAAE,QAAQ,WAAW,SAAS,eAAe,GAAG,qBAEpF;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,IACE,MACN;AAEJ;;;AC1CA,SAAS,OAAO,eAAe;AAC/B,SAAS,eAAe;AAGxB,SAAS,yBAAyB;AAElC,SAAS,iBAAiB,iBAAiB,0BAA0B;AAWjE,SAIQ,OAAAG,MAJR,QAAAC,aAAA;AAFG,IAAM,iBAAgD,CAAC,EAAE,YAAY,CAAC,GAAG,gBAAgB,UAAU,UAAU,CAAC,EAAE,MAAM;AAC3H,SACE,gBAAAA,MAAC,WAAQ,KAAK,GAAG,IAAI,KAClB;AAAA,0CAAU,UACT,gBAAAD,KAAC,WAAQ,OAAM,YACb,0BAAAA,KAAC,SAAM,cAAc,qCAAU,QAAQ,OAAM,WAC3C,0BAAAA,KAAC,sBAAmB,MAAM,IAAI,GAChC,GACF,IACE;AAAA,KACH,iDAAgB,UACf,gBAAAA,KAAC,WAAQ,OAAM,UACb,0BAAAA,KAAC,SAAM,cAAc,iDAAgB,QAAQ,OAAM,WACjD,0BAAAA,KAAC,mBAAgB,MAAM,IAAI,GAC7B,GACF,IACE;AAAA,IACH,OAAO,QAAQ,OAAO,EAAE,SACvB,gBAAAA,KAAC,WAAQ,OAAM,WACb,0BAAAA,KAAC,SAAM,cAAc,OAAO,QAAQ,OAAO,EAAE,QAAQ,OAAM,WACzD,0BAAAA,KAAC,qBAAkB,MAAM,IAAI,GAC/B,GACF,IACE;AAAA,IACH,OAAO,QAAQ,SAAS,EAAE,SACzB,gBAAAA,KAAC,WAAQ,OAAM,aACb,0BAAAA,KAAC,SAAM,cAAc,OAAO,QAAQ,SAAS,EAAE,QAAQ,OAAM,WAC3D,0BAAAA,KAAC,mBAAgB,MAAM,IAAI,GAC7B,GACF,IACE;AAAA,KACN;AAEJ;;;AChDA,SAAS,sBAAsB;AAC/B,SAAS,+BAAkD;AAC3D,SAAS,0BAA0B;AACnC,SAAS,2BAA2B;AAGpC,SAAS,aAAa,WAAW,SAAS,YAAAE,iBAAgB;AA0EjD,gBAAAC,YAAA;AAlEF,IAAM,wBAA6D,CAAC,EAAE,UAAU,MAAM;AAC3F,QAAM,CAAC,KAAK,MAAM,IAAIC,UAA2B;AAEjD,QAAM,SAAS,YAAY,OAAOC,eAAkC;AAjBtE;AAkBI,UAAMC,OAAM,QAAM,KAAAD,cAAA,gBAAAA,WAAW,QAAX,wBAAAA;AAClB,WAAOC,IAAG;AAAA,EACZ,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,UAAM,YAAwC,CAAC;AAE/C,QAAI,uCAAW,QAAQ,SAAS,0BAA0B;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,UAAU,QAAQ,CAAC,aAAa,sCAAY;AAAA,EAC3D,GAAG,CAAC,WAAW,MAAM,CAAC;AAEtB;AAAA;AAAA,IAEE,YAAY;AACV,UAAI,uCAAW,QAAQ,SAAS,0BAA0B;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,2BAAK,OAAO,CAAC,YAAY,QAAQ,WAAW,qBAAsB,CAAC,GAAG,CAAC;AAC3H,QAAM,iBAAiB,QAAQ,MAAO,QAAQ,OAAO,CAAC,IAAI,2BAAK,OAAO,CAAC,YAAY,QAAQ,WAAW,qBAAsB,CAAC,GAAG,CAAC;AACjI,QAAM,YAAY;AAAA,IAChB,OACE,2BAAK;AAAA,MACH,CAAC,MAAM,YAAY;AAzD3B;AA0DU,cAAM,IAAI,oBAAoB,SAAS,OAAO;AAC9C,qCAAG,cAAH,mBAAc,QAAQ,CAAC,YAAY;AACjC,eAAK,OAAO,KAAK,KAAK,OAAO,KAAK,KAAK;AAAA,QACzC;AACA,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,UACE,CAAC;AAAA,IACR,CAAC,GAAG;AAAA,EACN;AACA,QAAM,UAAU;AAAA,IACd,OACE,2BAAK;AAAA,MACH,CAAC,MAAM,YAAY;AACjB,aAAK,QAAQ,MAAM,KAAK,KAAK,QAAQ,MAAM,KAAK,KAAK;AACrD,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,UACE,CAAC;AAAA,IACR,CAAC,GAAG;AAAA,EACN;AAEA,SAAO,gBAAAH,KAAC,kBAAe,WAAsB,gBAAgC,UAAoB,SAAkB;AACrH;","names":["Typography","Fragment","jsx","jsxs","Typography","jsx","jsxs","useState","jsx","useState","archivist","all"]}
@@ -1,218 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/Card/index.ts
21
- var Card_exports = {};
22
- __export(Card_exports, {
23
- ArchivistCard: () => ArchivistCard,
24
- ArchivistCardContent: () => ArchivistCardContent,
25
- ArchivistCardHeader: () => ArchivistCardHeader
26
- });
27
- module.exports = __toCommonJS(Card_exports);
28
-
29
- // src/components/Card/Card.tsx
30
- var import_material4 = require("@mui/material");
31
- var import_react_module3 = require("@xyo-network/react-module");
32
-
33
- // src/components/Card/CardContent.tsx
34
- var import_react_async_effect2 = require("@xylabs/react-async-effect");
35
- var import_react_flexbox3 = require("@xylabs/react-flexbox");
36
- var import_module = require("@xyo-network/module");
37
- var import_react_module = require("@xyo-network/react-module");
38
- var import_react_wallet = require("@xyo-network/react-wallet");
39
- var import_react3 = require("react");
40
-
41
- // src/components/Card/components/ArchivistParent.tsx
42
- var import_material = require("@mui/material");
43
- var import_jsx_runtime = require("react/jsx-runtime");
44
- var ArchivistParent = ({ archivistType, parentArchivists }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: parentArchivists == null ? void 0 : parentArchivists.map((address) => {
45
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.ListItem, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Typography, { variant: "subtitle2", children: [
46
- archivistType,
47
- ":",
48
- " ",
49
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", sx: { ml: 0.5 }, children: address })
50
- ] }) }, address);
51
- }) });
52
-
53
- // src/components/Card/components/ArchivistParents.tsx
54
- var import_icons_material = require("@mui/icons-material");
55
- var import_material2 = require("@mui/material");
56
- var import_react_flexbox = require("@xylabs/react-flexbox");
57
- var import_react = require("react");
58
- var import_jsx_runtime2 = require("react/jsx-runtime");
59
- var ArchivistParents = ({ config, ...props }) => {
60
- const [parentArchivistCollapse, setParentArchivistCollapse] = (0, import_react.useState)(false);
61
- const { commit, read, write } = (config == null ? void 0 : config.parents) ?? {};
62
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: commit || read || write ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react_flexbox.FlexCol, { alignItems: "start", ...props, children: [
63
- /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("span", { onClick: () => setParentArchivistCollapse(!parentArchivistCollapse), children: [
64
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "subtitle2", sx: { cursor: "pointer", display: "inline-block" }, children: "Parents" }),
65
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.IconButton, { size: "small", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ArrowRightRounded, { sx: { rotate: parentArchivistCollapse ? "90deg" : "0deg", transition: "all .25s" } }) })
66
- ] }),
67
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Collapse, { in: parentArchivistCollapse, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Paper, { elevation: 2, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_material2.List, { children: [
68
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ArchivistParent, { archivistType: "Commit", parentArchivists: commit }),
69
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ArchivistParent, { archivistType: "Read", parentArchivists: read }),
70
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ArchivistParent, { archivistType: "Write", parentArchivists: write })
71
- ] }) }) })
72
- ] }) : null });
73
- };
74
-
75
- // src/components/Card/components/Stats/ArchivistStats.tsx
76
- var import_material3 = require("@mui/material");
77
- var import_react_flexbox2 = require("@xylabs/react-flexbox");
78
- var import_bs = require("react-icons/bs/index.js");
79
- var import_vsc = require("react-icons/vsc/index.js");
80
- var import_jsx_runtime3 = require("react/jsx-runtime");
81
- var ArchivistStats = ({ addresses = {}, boundWitnesses, payloads, schemas = {} }) => {
82
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_react_flexbox2.FlexRow, { gap: 2, mr: 0.5, children: [
83
- (payloads == null ? void 0 : payloads.length) ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Payloads", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: payloads == null ? void 0 : payloads.length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_vsc.VscSymbolNamespace, { size: 20 }) }) }) : null,
84
- (boundWitnesses == null ? void 0 : boundWitnesses.length) ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Blocks", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: boundWitnesses == null ? void 0 : boundWitnesses.length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_vsc.VscSymbolMethod, { size: 20 }) }) }) : null,
85
- Object.entries(schemas).length ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Schemas", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: Object.entries(schemas).length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_bs.BsFileEarmarkCode, { size: 20 }) }) }) : null,
86
- Object.entries(addresses).length ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Tooltip, { title: "Addresses", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Badge, { badgeContent: Object.entries(addresses).length, color: "primary", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_vsc.VscOrganization, { size: 20 }) }) }) : null
87
- ] });
88
- };
89
-
90
- // src/components/Card/components/Stats/MemoryArchivistStats.tsx
91
- var import_react_async_effect = require("@xylabs/react-async-effect");
92
- var import_archivist = require("@xyo-network/archivist");
93
- var import_boundwitness_model = require("@xyo-network/boundwitness-model");
94
- var import_boundwitness_wrapper = require("@xyo-network/boundwitness-wrapper");
95
- var import_react2 = require("react");
96
- var import_jsx_runtime4 = require("react/jsx-runtime");
97
- var MemoryArchivistsStats = ({ archivist }) => {
98
- const [all, setAll] = (0, import_react2.useState)();
99
- const getAll = (0, import_react2.useCallback)(async (archivist2) => {
100
- var _a;
101
- const all2 = await ((_a = archivist2 == null ? void 0 : archivist2.all) == null ? void 0 : _a.call(archivist2));
102
- setAll(all2);
103
- }, []);
104
- (0, import_react2.useEffect)(() => {
105
- const listeners = [];
106
- if (archivist == null ? void 0 : archivist.queries.includes(import_archivist.ArchivistAllQuerySchema)) {
107
- const insertListener = archivist.on("inserted", async () => {
108
- await getAll(archivist);
109
- });
110
- listeners.push(insertListener);
111
- const clearListener = archivist.on("cleared", async () => {
112
- await getAll(archivist);
113
- });
114
- listeners.push(clearListener);
115
- }
116
- return () => listeners.forEach((listener) => listener == null ? void 0 : listener());
117
- }, [archivist, getAll]);
118
- (0, import_react_async_effect.useAsyncEffect)(
119
- // eslint-disable-next-line react-hooks/exhaustive-deps
120
- async () => {
121
- if (archivist == null ? void 0 : archivist.queries.includes(import_archivist.ArchivistAllQuerySchema)) {
122
- await getAll(archivist);
123
- } else {
124
- setAll(null);
125
- }
126
- },
127
- [archivist, getAll]
128
- );
129
- const payloads = (0, import_react2.useMemo)(() => all === null ? [] : all == null ? void 0 : all.filter((payload) => payload.schema !== import_boundwitness_model.BoundWitnessSchema), [all]);
130
- const boundWitnesses = (0, import_react2.useMemo)(() => all === null ? [] : all == null ? void 0 : all.filter((payload) => payload.schema === import_boundwitness_model.BoundWitnessSchema), [all]);
131
- const addresses = (0, import_react2.useMemo)(
132
- () => (all == null ? void 0 : all.reduce(
133
- (prev, payload) => {
134
- var _a;
135
- const w = import_boundwitness_wrapper.BoundWitnessWrapper.tryParse(payload);
136
- (_a = w == null ? void 0 : w.addresses) == null ? void 0 : _a.forEach((address) => {
137
- prev[address] = (prev[address] ?? 0) + 1;
138
- });
139
- return prev;
140
- },
141
- {}
142
- )) ?? {},
143
- [all]
144
- );
145
- const schemas = (0, import_react2.useMemo)(
146
- () => (all == null ? void 0 : all.reduce(
147
- (prev, payload) => {
148
- prev[payload.schema] = (prev[payload.schema] ?? 0) + 1;
149
- return prev;
150
- },
151
- {}
152
- )) ?? {},
153
- [all]
154
- );
155
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ArchivistStats, { addresses, boundWitnesses, payloads, schemas });
156
- };
157
-
158
- // src/components/Card/CardContent.tsx
159
- var import_jsx_runtime5 = require("react/jsx-runtime");
160
- var ArchivistCardContent = ({ children, module: module2, ...props }) => {
161
- const [config, setConfig] = (0, import_react3.useState)();
162
- const [wallet] = (0, import_react_wallet.useWallet)();
163
- (0, import_react_async_effect2.useAsyncEffect)(
164
- // eslint-disable-next-line react-hooks/exhaustive-deps
165
- async (mounted) => {
166
- if (wallet && module2) {
167
- const wrapper = import_module.ModuleWrapper.wrap(module2, wallet);
168
- const payloads = await (wrapper == null ? void 0 : wrapper.discover());
169
- if (mounted()) {
170
- setConfig(payloads == null ? void 0 : payloads[0]);
171
- }
172
- } else {
173
- setConfig(void 0);
174
- }
175
- },
176
- [module2, wallet]
177
- );
178
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react_module.ModuleCardContent, { module: module2, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(import_react_flexbox3.FlexGrowRow, { flexWrap: "wrap", justifyContent: "start", gap: 2, children: [
179
- children,
180
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ArchivistParents, { config })
181
- ] }) });
182
- };
183
-
184
- // src/components/Card/CardHeader.tsx
185
- var import_archivist2 = require("@xyo-network/archivist");
186
- var import_react_module2 = require("@xyo-network/react-module");
187
- var import_react4 = require("react");
188
- var import_jsx_runtime6 = require("react/jsx-runtime");
189
- var ArchivistStats2 = (archivist) => {
190
- switch (archivist == null ? void 0 : archivist.config.schema) {
191
- case import_archivist2.MemoryArchivistConfigSchema:
192
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MemoryArchivistsStats, { archivist });
193
- default:
194
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, {});
195
- }
196
- };
197
- var ArchivistCardHeader = ({ title, module: module2, ...props }) => {
198
- const Stats = (0, import_react4.useMemo)(() => ArchivistStats2(module2), [module2]);
199
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react_module2.ModuleCardHeader, { module: module2, title: title ?? (module2 == null ? void 0 : module2.config.name) ?? "Archivist", action: Stats, ...props });
200
- };
201
-
202
- // src/components/Card/Card.tsx
203
- var import_jsx_runtime7 = require("react/jsx-runtime");
204
- var ArchivistCard = ({ children, module: module2, ...props }) => {
205
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_material4.Card, { ...props, children: [
206
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(ArchivistCardHeader, { module: module2 }),
207
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(ArchivistCardContent, { module: module2 }),
208
- children,
209
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_react_module3.ModuleCardActions, { module: module2 })
210
- ] });
211
- };
212
- // Annotate the CommonJS export names for ESM import in node:
213
- 0 && (module.exports = {
214
- ArchivistCard,
215
- ArchivistCardContent,
216
- ArchivistCardHeader
217
- });
218
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Card/index.ts","../../../../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"],"sourcesContent":["export * from './Card'\nexport * from './CardContent'\nexport * from './CardHeader'\n","import { Card, CardProps } from '@mui/material'\nimport { ArchivistInstance } from '@xyo-network/archivist'\nimport { ModuleCardActions, ModuleRenderProps } from '@xyo-network/react-module'\n\nimport { ArchivistCardContent } from './CardContent'\nimport { ArchivistCardHeader } from './CardHeader'\n\nexport const ArchivistCard: React.FC<CardProps & ModuleRenderProps<ArchivistInstance>> = ({ children, module, ...props }) => {\n return (\n <Card {...props}>\n <ArchivistCardHeader module={module} />\n <ArchivistCardContent module={module} />\n {children}\n <ModuleCardActions module={module} />\n </Card>\n )\n}\n","import { CardContentProps } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { ArchivistConfig, ArchivistInstance } from '@xyo-network/archivist'\nimport { ModuleWrapper } from '@xyo-network/module'\nimport { ModuleCardContent, ModuleRenderProps } from '@xyo-network/react-module'\nimport { useWallet } from '@xyo-network/react-wallet'\nimport React, { useState } from 'react'\n\nimport { ArchivistParents } from './components'\n\nexport const ArchivistCardContent: React.FC<ModuleRenderProps<ArchivistInstance> & CardContentProps> = ({ children, module, ...props }) => {\n const [config, setConfig] = useState<ArchivistConfig>()\n const [wallet] = useWallet()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (wallet && module) {\n const wrapper = ModuleWrapper.wrap(module, wallet)\n const payloads = await wrapper?.discover()\n if (mounted()) {\n setConfig(payloads?.[0] as ArchivistConfig)\n }\n } else {\n setConfig(undefined)\n }\n },\n [module, wallet],\n )\n\n return (\n <ModuleCardContent module={module} {...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'\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 <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 { Collapse, IconButton, List, Paper, Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { ArchivistConfig } from '@xyo-network/archivist'\nimport { useState } from 'react'\n\nimport { ArchivistParent } from './ArchivistParent'\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 { commit, read, write } = config?.parents ?? {}\n\n return (\n <>\n {commit || read || write ? (\n <FlexCol alignItems=\"start\" {...props}>\n <span onClick={() => setParentArchivistCollapse(!parentArchivistCollapse)}>\n <Typography variant=\"subtitle2\" sx={{ cursor: 'pointer', display: 'inline-block' }}>\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 ) : null}\n </>\n )\n}\n","import { Badge, Tooltip } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { Payload } from '@xyo-network/payload-model'\n// eslint-disable-next-line import/no-internal-modules\nimport { BsFileEarmarkCode } from 'react-icons/bs/index.js'\n// eslint-disable-next-line import/no-internal-modules\nimport { VscOrganization, VscSymbolMethod, VscSymbolNamespace } from 'react-icons/vsc/index.js'\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> = ({ addresses = {}, boundWitnesses, payloads, schemas = {} }) => {\n return (\n <FlexRow gap={2} mr={0.5}>\n {payloads?.length ? (\n <Tooltip title=\"Payloads\">\n <Badge badgeContent={payloads?.length} color=\"primary\">\n <VscSymbolNamespace size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {boundWitnesses?.length ? (\n <Tooltip title=\"Blocks\">\n <Badge badgeContent={boundWitnesses?.length} color=\"primary\">\n <VscSymbolMethod size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {Object.entries(schemas).length ? (\n <Tooltip title=\"Schemas\">\n <Badge badgeContent={Object.entries(schemas).length} color=\"primary\">\n <BsFileEarmarkCode size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n {Object.entries(addresses).length ? (\n <Tooltip title=\"Addresses\">\n <Badge badgeContent={Object.entries(addresses).length} color=\"primary\">\n <VscOrganization size={20} />\n </Badge>\n </Tooltip>\n ) : null}\n </FlexRow>\n )\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { ArchivistAllQuerySchema, ArchivistInstance } from '@xyo-network/archivist'\nimport { BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { EventUnsubscribeFunction } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport { ArchivistStats } from './ArchivistStats'\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 () => listeners.forEach((listener) => listener?.())\n }, [archivist, getAll])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\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 = BoundWitnessWrapper.tryParse(payload) as BoundWitnessWrapper | undefined\n w?.addresses?.forEach((address) => {\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 { CardHeaderProps } from '@mui/material'\nimport { ArchivistInstance, MemoryArchivistConfigSchema } from '@xyo-network/archivist'\nimport { ModuleCardHeader, ModuleRenderProps } from '@xyo-network/react-module'\nimport { useMemo } from 'react'\n\nimport { MemoryArchivistsStats } from './components'\n\nconst ArchivistStats = (archivist?: ArchivistInstance) => {\n switch (archivist?.config.schema) {\n case MemoryArchivistConfigSchema:\n return <MemoryArchivistsStats archivist={archivist} />\n default:\n return <></>\n }\n}\n\nexport const ArchivistCardHeader: React.FC<ModuleRenderProps<ArchivistInstance> & CardHeaderProps> = ({ title, module, ...props }) => {\n const Stats = useMemo(() => ArchivistStats(module), [module])\n return <ModuleCardHeader module={module} title={title ?? module?.config.name ?? 'Archivist'} action={Stats} {...props} />\n}\n"],"mappings":"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","names":["import_material","import_react_module","import_react_async_effect","import_react_flexbox","import_react","import_material","import_jsx_runtime","ArrowRightRoundedIcon","import_material","import_react_flexbox","import_jsx_runtime","import_react","import_jsx_runtime","archivist","all","import_jsx_runtime","module","import_archivist","import_react_module","import_react","import_jsx_runtime","ArchivistStats","module","import_jsx_runtime","module"]}