@xyo-network/react-schema 2.64.0-rc.6 → 2.64.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.
- package/dist/browser/components/Property/SchemaProperty.cjs +76 -0
- package/dist/{node/components/Property/SchemaProperty.mjs.map → browser/components/Property/SchemaProperty.cjs.map} +1 -1
- package/dist/browser/components/Property/SchemaProperty.d.cts +40 -0
- package/dist/browser/components/Property/SchemaProperty.d.cts.map +1 -0
- package/dist/browser/components/Property/index.cjs +78 -0
- package/dist/browser/components/Property/index.cjs.map +1 -0
- package/dist/browser/components/Property/index.d.cts +2 -0
- package/dist/browser/components/Property/index.d.cts.map +1 -0
- package/dist/browser/components/SelectEx/SchemaSelectEx.cjs +68 -0
- package/dist/browser/components/SelectEx/SchemaSelectEx.cjs.map +1 -0
- package/dist/browser/components/SelectEx/SchemaSelectEx.d.cts +5 -0
- package/dist/browser/components/SelectEx/SchemaSelectEx.d.cts.map +1 -0
- package/dist/browser/components/SelectEx/index.cjs +70 -0
- package/dist/browser/components/SelectEx/index.cjs.map +1 -0
- package/dist/browser/components/SelectEx/index.d.cts +2 -0
- package/dist/browser/components/SelectEx/index.d.cts.map +1 -0
- package/dist/browser/components/index.cjs +123 -0
- package/dist/browser/components/index.cjs.map +1 -0
- package/dist/browser/components/index.d.cts +3 -0
- package/dist/browser/components/index.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/Context.cjs +28 -0
- package/dist/{node/contexts/Schema/Context.mjs.map → browser/contexts/Schema/Context.cjs.map} +1 -1
- package/dist/browser/contexts/Schema/Context.d.cts +4 -0
- package/dist/browser/contexts/Schema/Context.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/Provider/Memory.cjs +94 -0
- package/dist/browser/contexts/Schema/Provider/Memory.cjs.map +1 -0
- package/dist/browser/contexts/Schema/Provider/Memory.d.cts +5 -0
- package/dist/browser/contexts/Schema/Provider/Memory.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/Provider/Props.cjs +19 -0
- package/dist/browser/contexts/Schema/Provider/Props.cjs.map +1 -0
- package/dist/browser/contexts/Schema/Provider/Props.d.cts +5 -0
- package/dist/browser/contexts/Schema/Provider/Props.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/Provider/Route.cjs +144 -0
- package/dist/browser/contexts/Schema/Provider/Route.cjs.map +1 -0
- package/dist/browser/contexts/Schema/Provider/Route.d.cts +5 -0
- package/dist/browser/contexts/Schema/Provider/Route.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/Provider/index.cjs +147 -0
- package/dist/browser/contexts/Schema/Provider/index.cjs.map +1 -0
- package/dist/browser/contexts/Schema/Provider/index.d.cts +4 -0
- package/dist/browser/contexts/Schema/Provider/index.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/State.cjs +19 -0
- package/dist/browser/contexts/Schema/State.cjs.map +1 -0
- package/dist/browser/contexts/Schema/State.d.cts +13 -0
- package/dist/browser/contexts/Schema/State.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/index.cjs +149 -0
- package/dist/browser/contexts/Schema/index.cjs.map +1 -0
- package/dist/browser/contexts/Schema/index.d.cts +5 -0
- package/dist/browser/contexts/Schema/index.d.cts.map +1 -0
- package/dist/browser/contexts/Schema/use.cjs +36 -0
- package/dist/browser/contexts/Schema/use.cjs.map +1 -0
- package/dist/browser/contexts/Schema/use.d.cts +3 -0
- package/dist/browser/contexts/Schema/use.d.cts.map +1 -0
- package/dist/browser/contexts/index.cjs +149 -0
- package/dist/browser/contexts/index.cjs.map +1 -0
- package/dist/browser/contexts/index.d.cts +2 -0
- package/dist/browser/contexts/index.d.cts.map +1 -0
- package/dist/browser/hooks/index.cjs +189 -0
- package/dist/browser/hooks/index.cjs.map +1 -0
- package/dist/browser/hooks/index.d.cts +5 -0
- package/dist/browser/hooks/index.d.cts.map +1 -0
- package/dist/browser/hooks/useGetSchema.cjs +69 -0
- package/dist/{node/hooks/useGetSchema.mjs.map → browser/hooks/useGetSchema.cjs.map} +1 -1
- package/dist/browser/hooks/useGetSchema.d.cts +27 -0
- package/dist/browser/hooks/useGetSchema.d.cts.map +1 -0
- package/dist/browser/hooks/useSchemaDefinitions.cjs +47 -0
- package/dist/{node/hooks/useSchemaDefinitions.mjs.map → browser/hooks/useSchemaDefinitions.cjs.map} +1 -1
- package/dist/browser/hooks/useSchemaDefinitions.d.cts +6 -0
- package/dist/browser/hooks/useSchemaDefinitions.d.cts.map +1 -0
- package/dist/browser/hooks/useSchemaList.cjs +69 -0
- package/dist/browser/hooks/useSchemaList.cjs.map +1 -0
- package/dist/browser/hooks/useSchemaList.d.cts +3 -0
- package/dist/browser/hooks/useSchemaList.d.cts.map +1 -0
- package/dist/browser/hooks/useSchemaStats.cjs +71 -0
- package/dist/{node/hooks/useSchemaStats.mjs.map → browser/hooks/useSchemaStats.cjs.map} +1 -1
- package/dist/browser/hooks/useSchemaStats.d.cts +4 -0
- package/dist/browser/hooks/useSchemaStats.d.cts.map +1 -0
- package/dist/browser/index.cjs +354 -0
- package/dist/browser/index.cjs.map +1 -0
- package/dist/browser/index.d.cts +4 -0
- package/dist/browser/index.d.cts.map +1 -0
- package/dist/docs.json +2071 -0
- package/dist/node/components/Property/SchemaProperty.cjs +81 -0
- package/dist/node/components/Property/SchemaProperty.cjs.map +1 -0
- package/dist/node/components/Property/SchemaProperty.d.cts +40 -0
- package/dist/node/components/Property/SchemaProperty.d.cts.map +1 -0
- package/dist/node/components/Property/SchemaProperty.js +26 -48
- package/dist/node/components/Property/SchemaProperty.js.map +1 -1
- package/dist/node/components/Property/index.cjs +83 -0
- package/dist/node/components/Property/index.cjs.map +1 -0
- package/dist/node/components/Property/index.d.cts +2 -0
- package/dist/node/components/Property/index.d.cts.map +1 -0
- package/dist/node/components/Property/index.js +53 -20
- package/dist/node/components/Property/index.js.map +1 -1
- package/dist/node/components/SelectEx/SchemaSelectEx.cjs +72 -0
- package/dist/node/components/SelectEx/SchemaSelectEx.cjs.map +1 -0
- package/dist/node/components/SelectEx/SchemaSelectEx.d.cts +5 -0
- package/dist/node/components/SelectEx/SchemaSelectEx.d.cts.map +1 -0
- package/dist/node/components/SelectEx/SchemaSelectEx.js +27 -39
- package/dist/node/components/SelectEx/SchemaSelectEx.js.map +1 -1
- package/dist/node/components/SelectEx/index.cjs +74 -0
- package/dist/node/components/SelectEx/index.cjs.map +1 -0
- package/dist/node/components/SelectEx/index.d.cts +2 -0
- package/dist/node/components/SelectEx/index.d.cts.map +1 -0
- package/dist/node/components/SelectEx/index.js +45 -21
- package/dist/node/components/SelectEx/index.js.map +1 -1
- package/dist/node/components/index.cjs +129 -0
- package/dist/node/components/index.cjs.map +1 -0
- package/dist/node/components/index.d.cts +3 -0
- package/dist/node/components/index.d.cts.map +1 -0
- package/dist/node/components/index.js +98 -22
- package/dist/node/components/index.js.map +1 -1
- package/dist/node/contexts/Schema/Context.cjs +32 -0
- package/dist/node/contexts/Schema/Context.cjs.map +1 -0
- package/dist/node/contexts/Schema/Context.d.cts +4 -0
- package/dist/node/contexts/Schema/Context.d.cts.map +1 -0
- package/dist/node/contexts/Schema/Context.js +5 -28
- package/dist/node/contexts/Schema/Context.js.map +1 -1
- package/dist/node/contexts/Schema/Provider/Memory.cjs +98 -0
- package/dist/node/contexts/Schema/Provider/Memory.cjs.map +1 -0
- package/dist/node/contexts/Schema/Provider/Memory.d.cts +5 -0
- package/dist/node/contexts/Schema/Provider/Memory.d.cts.map +1 -0
- package/dist/node/contexts/Schema/Provider/Memory.js +65 -37
- package/dist/node/contexts/Schema/Provider/Memory.js.map +1 -1
- package/dist/node/contexts/Schema/Provider/Props.cjs +19 -0
- package/dist/node/contexts/Schema/Provider/Props.cjs.map +1 -0
- package/dist/node/contexts/Schema/Provider/Props.d.cts +5 -0
- package/dist/node/contexts/Schema/Provider/Props.d.cts.map +1 -0
- package/dist/node/contexts/Schema/Provider/Props.js +0 -16
- package/dist/node/contexts/Schema/Provider/Props.js.map +1 -1
- package/dist/node/contexts/Schema/Provider/Route.cjs +148 -0
- package/dist/node/contexts/Schema/Provider/Route.cjs.map +1 -0
- package/dist/node/contexts/Schema/Provider/Route.d.cts +5 -0
- package/dist/node/contexts/Schema/Provider/Route.d.cts.map +1 -0
- package/dist/node/contexts/Schema/Provider/Route.js +94 -42
- package/dist/node/contexts/Schema/Provider/Route.js.map +1 -1
- package/dist/node/contexts/Schema/Provider/index.cjs +152 -0
- package/dist/node/contexts/Schema/Provider/index.cjs.map +1 -0
- package/dist/node/contexts/Schema/Provider/index.d.cts +4 -0
- package/dist/node/contexts/Schema/Provider/index.d.cts.map +1 -0
- package/dist/node/contexts/Schema/Provider/index.js +122 -25
- package/dist/node/contexts/Schema/Provider/index.js.map +1 -1
- package/dist/node/contexts/Schema/State.cjs +19 -0
- package/dist/node/contexts/Schema/State.cjs.map +1 -0
- package/dist/node/contexts/Schema/State.d.cts +13 -0
- package/dist/node/contexts/Schema/State.d.cts.map +1 -0
- package/dist/node/contexts/Schema/State.js +0 -16
- package/dist/node/contexts/Schema/State.js.map +1 -1
- package/dist/node/contexts/Schema/index.cjs +156 -0
- package/dist/node/contexts/Schema/index.cjs.map +1 -0
- package/dist/node/contexts/Schema/index.d.cts +5 -0
- package/dist/node/contexts/Schema/index.d.cts.map +1 -0
- package/dist/node/contexts/Schema/index.js +124 -27
- package/dist/node/contexts/Schema/index.js.map +1 -1
- package/dist/node/contexts/Schema/use.cjs +40 -0
- package/dist/node/contexts/Schema/use.cjs.map +1 -0
- package/dist/node/contexts/Schema/use.d.cts +3 -0
- package/dist/node/contexts/Schema/use.d.cts.map +1 -0
- package/dist/node/contexts/Schema/use.js +12 -30
- package/dist/node/contexts/Schema/use.js.map +1 -1
- package/dist/node/contexts/index.cjs +156 -0
- package/dist/node/contexts/index.cjs.map +1 -0
- package/dist/node/contexts/index.d.cts +2 -0
- package/dist/node/contexts/index.d.cts.map +1 -0
- package/dist/node/contexts/index.js +124 -21
- package/dist/node/contexts/index.js.map +1 -1
- package/dist/node/hooks/index.cjs +199 -0
- package/dist/node/hooks/index.cjs.map +1 -0
- package/dist/node/hooks/index.d.cts +5 -0
- package/dist/node/hooks/index.d.cts.map +1 -0
- package/dist/node/hooks/index.js +167 -27
- package/dist/node/hooks/index.js.map +1 -1
- package/dist/node/hooks/useGetSchema.cjs +73 -0
- package/dist/node/hooks/useGetSchema.cjs.map +1 -0
- package/dist/node/hooks/useGetSchema.d.cts +27 -0
- package/dist/node/hooks/useGetSchema.d.cts.map +1 -0
- package/dist/node/hooks/useGetSchema.js +18 -41
- package/dist/node/hooks/useGetSchema.js.map +1 -1
- package/dist/node/hooks/useSchemaDefinitions.cjs +54 -0
- package/dist/node/hooks/useSchemaDefinitions.cjs.map +1 -0
- package/dist/node/hooks/useSchemaDefinitions.d.cts +6 -0
- package/dist/node/hooks/useSchemaDefinitions.d.cts.map +1 -0
- package/dist/node/hooks/useSchemaDefinitions.js +14 -34
- package/dist/node/hooks/useSchemaDefinitions.js.map +1 -1
- package/dist/node/hooks/useSchemaList.cjs +73 -0
- package/dist/node/hooks/{useSchemaList.mjs.map → useSchemaList.cjs.map} +1 -1
- package/dist/node/hooks/useSchemaList.d.cts +3 -0
- package/dist/node/hooks/useSchemaList.d.cts.map +1 -0
- package/dist/node/hooks/useSchemaList.js +16 -39
- package/dist/node/hooks/useSchemaList.js.map +1 -1
- package/dist/node/hooks/useSchemaStats.cjs +75 -0
- package/dist/node/hooks/useSchemaStats.cjs.map +1 -0
- package/dist/node/hooks/useSchemaStats.d.cts +4 -0
- package/dist/node/hooks/useSchemaStats.d.cts.map +1 -0
- package/dist/node/hooks/useSchemaStats.js +17 -40
- package/dist/node/hooks/useSchemaStats.js.map +1 -1
- package/dist/node/index.cjs +371 -0
- package/dist/node/index.cjs.map +1 -0
- package/dist/node/index.d.cts +4 -0
- package/dist/node/index.d.cts.map +1 -0
- package/dist/node/index.js +333 -25
- package/dist/node/index.js.map +1 -1
- package/package.json +36 -36
- package/dist/browser/components/Property/SchemaProperty.stories.js +0 -37
- package/dist/browser/components/Property/SchemaProperty.stories.js.map +0 -1
- package/dist/browser/hooks/stories/TestSchemaHooks.stories.js +0 -65
- package/dist/browser/hooks/stories/TestSchemaHooks.stories.js.map +0 -1
- package/dist/browser/hooks/useGetSchema.stories.js +0 -63
- package/dist/browser/hooks/useGetSchema.stories.js.map +0 -1
- package/dist/node/components/Property/SchemaProperty.mjs +0 -54
- package/dist/node/components/Property/SchemaProperty.stories.js +0 -64
- package/dist/node/components/Property/SchemaProperty.stories.js.map +0 -1
- package/dist/node/components/Property/SchemaProperty.stories.mjs +0 -37
- package/dist/node/components/Property/SchemaProperty.stories.mjs.map +0 -1
- package/dist/node/components/Property/index.mjs +0 -2
- package/dist/node/components/Property/index.mjs.map +0 -1
- package/dist/node/components/SelectEx/SchemaSelectEx.mjs +0 -35
- package/dist/node/components/SelectEx/SchemaSelectEx.mjs.map +0 -1
- package/dist/node/components/SelectEx/index.mjs +0 -2
- package/dist/node/components/SelectEx/index.mjs.map +0 -1
- package/dist/node/components/index.mjs +0 -3
- package/dist/node/components/index.mjs.map +0 -1
- package/dist/node/contexts/Schema/Context.mjs +0 -6
- package/dist/node/contexts/Schema/Provider/Memory.mjs +0 -21
- package/dist/node/contexts/Schema/Provider/Memory.mjs.map +0 -1
- package/dist/node/contexts/Schema/Provider/Props.mjs +0 -1
- package/dist/node/contexts/Schema/Provider/Props.mjs.map +0 -1
- package/dist/node/contexts/Schema/Provider/Route.mjs +0 -47
- package/dist/node/contexts/Schema/Provider/Route.mjs.map +0 -1
- package/dist/node/contexts/Schema/Provider/index.mjs +0 -4
- package/dist/node/contexts/Schema/Provider/index.mjs.map +0 -1
- package/dist/node/contexts/Schema/State.mjs +0 -1
- package/dist/node/contexts/Schema/State.mjs.map +0 -1
- package/dist/node/contexts/Schema/index.mjs +0 -5
- package/dist/node/contexts/Schema/index.mjs.map +0 -1
- package/dist/node/contexts/Schema/use.mjs +0 -9
- package/dist/node/contexts/Schema/use.mjs.map +0 -1
- package/dist/node/contexts/index.mjs +0 -2
- package/dist/node/contexts/index.mjs.map +0 -1
- package/dist/node/hooks/index.mjs +0 -5
- package/dist/node/hooks/index.mjs.map +0 -1
- package/dist/node/hooks/stories/TestSchemaHooks.stories.js +0 -89
- package/dist/node/hooks/stories/TestSchemaHooks.stories.js.map +0 -1
- package/dist/node/hooks/stories/TestSchemaHooks.stories.mjs +0 -65
- package/dist/node/hooks/stories/TestSchemaHooks.stories.mjs.map +0 -1
- package/dist/node/hooks/useGetSchema.mjs +0 -47
- package/dist/node/hooks/useGetSchema.stories.js +0 -98
- package/dist/node/hooks/useGetSchema.stories.js.map +0 -1
- package/dist/node/hooks/useGetSchema.stories.mjs +0 -63
- package/dist/node/hooks/useGetSchema.stories.mjs.map +0 -1
- package/dist/node/hooks/useSchemaDefinitions.mjs +0 -25
- package/dist/node/hooks/useSchemaList.mjs +0 -47
- package/dist/node/hooks/useSchemaStats.mjs +0 -49
- package/dist/node/index.mjs +0 -4
- package/dist/node/index.mjs.map +0 -1
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Alert, Button, TextField, Typography } from "@mui/material";
|
|
3
|
-
import { useAsyncEffect } from "@xylabs/react-async-effect";
|
|
4
|
-
import { FlexGrowRow } from "@xylabs/react-flexbox";
|
|
5
|
-
import { HttpBridge, HttpBridgeConfigSchema } from "@xyo-network/http-bridge";
|
|
6
|
-
import { MemoryNode } from "@xyo-network/node-memory";
|
|
7
|
-
import { NodeConfigSchema } from "@xyo-network/node-model";
|
|
8
|
-
import { NodeProvider } from "@xyo-network/react-node";
|
|
9
|
-
import { DefaultSeedPhrase } from "@xyo-network/react-storybook";
|
|
10
|
-
import { useWallet, WalletProvider } from "@xyo-network/react-wallet";
|
|
11
|
-
import { SchemaCache } from "@xyo-network/schema-cache";
|
|
12
|
-
import { useState } from "react";
|
|
13
|
-
import { useSchemaDefinitions } from "../useSchemaDefinitions";
|
|
14
|
-
import { useSchemaList } from "../useSchemaList";
|
|
15
|
-
import { useSchemaStats } from "../useSchemaStats";
|
|
16
|
-
const apiConfig = { apiDomain: "https://api.archivist.xyo.network" };
|
|
17
|
-
const nodeUrl = "http://localhost:8080/node";
|
|
18
|
-
const MemoryNodeDecorator = (Story, args) => {
|
|
19
|
-
const [node, setNode] = useState();
|
|
20
|
-
useAsyncEffect(
|
|
21
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
22
|
-
async () => {
|
|
23
|
-
const node2 = await MemoryNode.create({ config: { schema: NodeConfigSchema } });
|
|
24
|
-
const bridge = await HttpBridge.create({ config: { nodeUrl, schema: HttpBridgeConfigSchema, security: { allowAnonymous: true } } });
|
|
25
|
-
await node2.register(bridge);
|
|
26
|
-
await node2.attach(bridge.address, true);
|
|
27
|
-
setNode(node2);
|
|
28
|
-
},
|
|
29
|
-
[]
|
|
30
|
-
);
|
|
31
|
-
const [wallet] = useWallet({ mnemonic: DefaultSeedPhrase });
|
|
32
|
-
return /* @__PURE__ */ jsx(WalletProvider, { rootWallet: wallet, children: /* @__PURE__ */ jsx(NodeProvider, { node, children: /* @__PURE__ */ jsx(Story, { ...args }) }) });
|
|
33
|
-
};
|
|
34
|
-
var TestSchemaHooks_stories_default = {
|
|
35
|
-
decorators: [MemoryNodeDecorator],
|
|
36
|
-
title: "schema/Hooks"
|
|
37
|
-
};
|
|
38
|
-
const Template = () => {
|
|
39
|
-
SchemaCache.instance.proxy = `${apiConfig.apiDomain}/domain`;
|
|
40
|
-
const [addressText, setAddressText] = useState("");
|
|
41
|
-
const [address, setAddress] = useState();
|
|
42
|
-
const [schemaStats, schemaStatsError] = useSchemaStats(address);
|
|
43
|
-
const [schemaList, schemaListError] = useSchemaList(address);
|
|
44
|
-
const mappedSchemaList = schemaList?.schemas?.map((name) => ({ name }));
|
|
45
|
-
const schemaDefinitions = useSchemaDefinitions(mappedSchemaList);
|
|
46
|
-
return /* @__PURE__ */ jsxs("div", { style: { display: "flex", flexDirection: "column", rowGap: "16px" }, children: [
|
|
47
|
-
schemaStatsError ? /* @__PURE__ */ jsx(Alert, { severity: "error", children: schemaStatsError.message ?? schemaListError?.message }) : null,
|
|
48
|
-
/* @__PURE__ */ jsxs(FlexGrowRow, { columnGap: 4, children: [
|
|
49
|
-
/* @__PURE__ */ jsx(TextField, { fullWidth: true, size: "small", value: address, label: "Address", onChange: (event) => setAddressText(event.target.value) }),
|
|
50
|
-
/* @__PURE__ */ jsx(Button, { variant: "contained", onClick: () => setAddress(addressText), sx: { whiteSpace: "nowrap" }, children: "Get Stats" })
|
|
51
|
-
] }),
|
|
52
|
-
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: "Schema Stats" }),
|
|
53
|
-
/* @__PURE__ */ jsx("code", { children: /* @__PURE__ */ jsx("pre", { children: JSON.stringify(schemaStats, null, 2) }) }),
|
|
54
|
-
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: "Schema List" }),
|
|
55
|
-
/* @__PURE__ */ jsx("code", { children: /* @__PURE__ */ jsx("pre", { children: JSON.stringify(schemaList, null, 2) }) }),
|
|
56
|
-
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: "Schema Definitions" }),
|
|
57
|
-
/* @__PURE__ */ jsx("pre", { children: /* @__PURE__ */ jsx("code", { children: JSON.stringify(schemaDefinitions, null, 2) }) })
|
|
58
|
-
] });
|
|
59
|
-
};
|
|
60
|
-
const Default = Template.bind({});
|
|
61
|
-
export {
|
|
62
|
-
Default,
|
|
63
|
-
TestSchemaHooks_stories_default as default
|
|
64
|
-
};
|
|
65
|
-
//# sourceMappingURL=TestSchemaHooks.stories.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/hooks/stories/TestSchemaHooks.stories.tsx"],"sourcesContent":["import { Alert, Button, TextField, Typography } from '@mui/material'\nimport { Decorator, Meta, StoryFn } from '@storybook/react'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { HttpBridge, HttpBridgeConfigSchema } from '@xyo-network/http-bridge'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeConfigSchema } from '@xyo-network/node-model'\nimport { NodeProvider } from '@xyo-network/react-node'\nimport { DefaultSeedPhrase } from '@xyo-network/react-storybook'\nimport { useWallet, WalletProvider } from '@xyo-network/react-wallet'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { useState } from 'react'\n\nimport { useSchemaDefinitions } from '../useSchemaDefinitions'\nimport { useSchemaList } from '../useSchemaList'\nimport { useSchemaStats } from '../useSchemaStats'\n\nconst apiConfig = { apiDomain: 'https://api.archivist.xyo.network' }\nconst nodeUrl = 'http://localhost:8080/node'\n\nconst MemoryNodeDecorator: Decorator = (Story, args) => {\n const [node, setNode] = useState<MemoryNode>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n const node = await MemoryNode.create({ config: { schema: NodeConfigSchema } })\n const bridge = await HttpBridge.create({ config: { nodeUrl, schema: HttpBridgeConfigSchema, security: { allowAnonymous: true } } })\n await node.register(bridge)\n await node.attach(bridge.address, true)\n setNode(node)\n },\n [],\n )\n\n const [wallet] = useWallet({ mnemonic: DefaultSeedPhrase })\n\n return (\n <WalletProvider rootWallet={wallet}>\n <NodeProvider node={node}>\n <Story {...args} />\n </NodeProvider>\n </WalletProvider>\n )\n}\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n decorators: [MemoryNodeDecorator],\n title: 'schema/Hooks',\n} as Meta\n\nconst Template: StoryFn<React.FC> = () => {\n SchemaCache.instance.proxy = `${apiConfig.apiDomain}/domain`\n const [addressText, setAddressText] = useState<string>('')\n const [address, setAddress] = useState<string>()\n const [schemaStats, schemaStatsError] = useSchemaStats(address)\n const [schemaList, schemaListError] = useSchemaList(address)\n const mappedSchemaList = schemaList?.schemas?.map((name) => ({ name })) as { name: string }[]\n const schemaDefinitions = useSchemaDefinitions(mappedSchemaList)\n\n return (\n <div style={{ display: 'flex', flexDirection: 'column', rowGap: '16px' }}>\n {schemaStatsError ? <Alert severity={'error'}>{schemaStatsError.message ?? schemaListError?.message}</Alert> : null}\n <FlexGrowRow columnGap={4}>\n <TextField fullWidth size=\"small\" value={address} label=\"Address\" onChange={(event) => setAddressText(event.target.value)} />\n <Button variant=\"contained\" onClick={() => setAddress(addressText)} sx={{ whiteSpace: 'nowrap' }}>\n Get Stats\n </Button>\n </FlexGrowRow>\n <Typography variant={'h2'}>Schema Stats</Typography>\n <code>\n <pre>{JSON.stringify(schemaStats, null, 2)}</pre>\n </code>\n <Typography variant={'h2'}>Schema List</Typography>\n <code>\n <pre>{JSON.stringify(schemaList, null, 2)}</pre>\n </code>\n <Typography variant={'h2'}>Schema Definitions</Typography>\n <pre>\n <code>{JSON.stringify(schemaDefinitions, null, 2)}</code>\n </pre>\n </div>\n )\n}\n\nconst Default = Template.bind({})\n\nexport { Default }\n"],"mappings":"AAwCQ,cAwBF,YAxBE;AAxCR,SAAS,OAAO,QAAQ,WAAW,kBAAkB;AAErD,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAC5B,SAAS,YAAY,8BAA8B;AACnD,SAAS,kBAAkB;AAC3B,SAAS,wBAAwB;AACjC,SAAS,oBAAoB;AAC7B,SAAS,yBAAyB;AAClC,SAAS,WAAW,sBAAsB;AAC1C,SAAS,mBAAmB;AAC5B,SAAS,gBAAgB;AAEzB,SAAS,4BAA4B;AACrC,SAAS,qBAAqB;AAC9B,SAAS,sBAAsB;AAE/B,MAAM,YAAY,EAAE,WAAW,oCAAoC;AACnE,MAAM,UAAU;AAEhB,MAAM,sBAAiC,CAAC,OAAO,SAAS;AACtD,QAAM,CAAC,MAAM,OAAO,IAAI,SAAqB;AAE7C;AAAA;AAAA,IAEE,YAAY;AACV,YAAMA,QAAO,MAAM,WAAW,OAAO,EAAE,QAAQ,EAAE,QAAQ,iBAAiB,EAAE,CAAC;AAC7E,YAAM,SAAS,MAAM,WAAW,OAAO,EAAE,QAAQ,EAAE,SAAS,QAAQ,wBAAwB,UAAU,EAAE,gBAAgB,KAAK,EAAE,EAAE,CAAC;AAClI,YAAMA,MAAK,SAAS,MAAM;AAC1B,YAAMA,MAAK,OAAO,OAAO,SAAS,IAAI;AACtC,cAAQA,KAAI;AAAA,IACd;AAAA,IACA,CAAC;AAAA,EACH;AAEA,QAAM,CAAC,MAAM,IAAI,UAAU,EAAE,UAAU,kBAAkB,CAAC;AAE1D,SACE,oBAAC,kBAAe,YAAY,QAC1B,8BAAC,gBAAa,MACZ,8BAAC,SAAO,GAAG,MAAM,GACnB,GACF;AAEJ;AAGA,IAAO,kCAAQ;AAAA,EACb,YAAY,CAAC,mBAAmB;AAAA,EAChC,OAAO;AACT;AAEA,MAAM,WAA8B,MAAM;AACxC,cAAY,SAAS,QAAQ,GAAG,UAAU,SAAS;AACnD,QAAM,CAAC,aAAa,cAAc,IAAI,SAAiB,EAAE;AACzD,QAAM,CAAC,SAAS,UAAU,IAAI,SAAiB;AAC/C,QAAM,CAAC,aAAa,gBAAgB,IAAI,eAAe,OAAO;AAC9D,QAAM,CAAC,YAAY,eAAe,IAAI,cAAc,OAAO;AAC3D,QAAM,mBAAmB,YAAY,SAAS,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE;AACtE,QAAM,oBAAoB,qBAAqB,gBAAgB;AAE/D,SACE,qBAAC,SAAI,OAAO,EAAE,SAAS,QAAQ,eAAe,UAAU,QAAQ,OAAO,GACpE;AAAA,uBAAmB,oBAAC,SAAM,UAAU,SAAU,2BAAiB,WAAW,iBAAiB,SAAQ,IAAW;AAAA,IAC/G,qBAAC,eAAY,WAAW,GACtB;AAAA,0BAAC,aAAU,WAAS,MAAC,MAAK,SAAQ,OAAO,SAAS,OAAM,WAAU,UAAU,CAAC,UAAU,eAAe,MAAM,OAAO,KAAK,GAAG;AAAA,MAC3H,oBAAC,UAAO,SAAQ,aAAY,SAAS,MAAM,WAAW,WAAW,GAAG,IAAI,EAAE,YAAY,SAAS,GAAG,uBAElG;AAAA,OACF;AAAA,IACA,oBAAC,cAAW,SAAS,MAAM,0BAAY;AAAA,IACvC,oBAAC,UACC,8BAAC,SAAK,eAAK,UAAU,aAAa,MAAM,CAAC,GAAE,GAC7C;AAAA,IACA,oBAAC,cAAW,SAAS,MAAM,yBAAW;AAAA,IACtC,oBAAC,UACC,8BAAC,SAAK,eAAK,UAAU,YAAY,MAAM,CAAC,GAAE,GAC5C;AAAA,IACA,oBAAC,cAAW,SAAS,MAAM,gCAAkB;AAAA,IAC7C,oBAAC,SACC,8BAAC,UAAM,eAAK,UAAU,mBAAmB,MAAM,CAAC,GAAE,GACpD;AAAA,KACF;AAEJ;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;","names":["node"]}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { useAsyncEffect } from "@xylabs/react-async-effect";
|
|
2
|
-
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
3
|
-
import { ModuleErrorSchema } from "@xyo-network/payload-model";
|
|
4
|
-
import { SchemaCache } from "@xyo-network/schema-cache";
|
|
5
|
-
import { useState } from "react";
|
|
6
|
-
const useGetSchemaPayload = (schema) => {
|
|
7
|
-
const [notFound, setNotFound] = useState(false);
|
|
8
|
-
const [xyoError, setError] = useState();
|
|
9
|
-
const [schemaCacheEntry, setSchemaCacheEntry] = useState();
|
|
10
|
-
const [schemaLocal, setSchemaLocal] = useState();
|
|
11
|
-
useAsyncEffect(
|
|
12
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
13
|
-
async (mounted) => {
|
|
14
|
-
const firstRequest = !notFound && !schemaCacheEntry && !xyoError;
|
|
15
|
-
const schemaChanged = schema !== schemaLocal;
|
|
16
|
-
if (schema && firstRequest || schema && schemaChanged) {
|
|
17
|
-
try {
|
|
18
|
-
const schemaCacheEntry2 = await SchemaCache.instance.get(schema);
|
|
19
|
-
if (mounted()) {
|
|
20
|
-
setSchemaCacheEntry(schemaCacheEntry2);
|
|
21
|
-
setNotFound(schemaCacheEntry2 === null || schemaCacheEntry2 === void 0);
|
|
22
|
-
}
|
|
23
|
-
} catch (e) {
|
|
24
|
-
const error = e;
|
|
25
|
-
console.error(e);
|
|
26
|
-
if (mounted()) {
|
|
27
|
-
setError({ message: error.message, schema: ModuleErrorSchema, sources: [] });
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
if (schemaChanged) {
|
|
32
|
-
setSchemaLocal(schema);
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
[xyoError, notFound, schema, schemaLocal, schemaCacheEntry]
|
|
36
|
-
);
|
|
37
|
-
return {
|
|
38
|
-
notFound,
|
|
39
|
-
schemaHuri: schemaCacheEntry?.huri,
|
|
40
|
-
schemaPayload: schemaCacheEntry ? new PayloadBuilder(schemaCacheEntry?.payload).fields(schemaCacheEntry.payload).build() : schemaCacheEntry,
|
|
41
|
-
xyoError
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
export {
|
|
45
|
-
useGetSchemaPayload
|
|
46
|
-
};
|
|
47
|
-
//# sourceMappingURL=useGetSchema.mjs.map
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var useGetSchema_stories_exports = {};
|
|
30
|
-
__export(useGetSchema_stories_exports, {
|
|
31
|
-
Default: () => Default,
|
|
32
|
-
Domain: () => Domain,
|
|
33
|
-
default: () => useGetSchema_stories_default
|
|
34
|
-
});
|
|
35
|
-
module.exports = __toCommonJS(useGetSchema_stories_exports);
|
|
36
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
|
37
|
-
var import_material = require("@mui/material");
|
|
38
|
-
var import_react_flexbox = require("@xylabs/react-flexbox");
|
|
39
|
-
var import_schema_cache = require("@xyo-network/schema-cache");
|
|
40
|
-
var import_react2 = require("react");
|
|
41
|
-
var import_useGetSchema = require("./useGetSchema");
|
|
42
|
-
const JsonView = (0, import_react2.lazy)(() => import(
|
|
43
|
-
/* webpackChunkName: "jsonView" */
|
|
44
|
-
"react-json-view"
|
|
45
|
-
));
|
|
46
|
-
import_schema_cache.SchemaCache.instance.proxy = "https://beta.api.archivist.xyo.network/domain";
|
|
47
|
-
const UseGetSchemaComponent = ({ schema }) => {
|
|
48
|
-
const exampleSchemas = ["network.xyo.domain", "network.xyo.payload", "network.xyo.schema"];
|
|
49
|
-
const [schemaFieldValue, setSchemaFieldValue] = (0, import_react2.useState)("");
|
|
50
|
-
const { schemaPayload } = (0, import_useGetSchema.useGetSchemaPayload)(schemaFieldValue);
|
|
51
|
-
(0, import_react2.useEffect)(() => {
|
|
52
|
-
if (schema) {
|
|
53
|
-
setSchemaFieldValue(schema);
|
|
54
|
-
}
|
|
55
|
-
}, [schema]);
|
|
56
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
57
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Typography, { variant: "body1", fontWeight: "bold", mb: 2, children: [
|
|
58
|
-
"Example schemas to test:",
|
|
59
|
-
exampleSchemas.map((schema2, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
60
|
-
import_material.Typography,
|
|
61
|
-
{
|
|
62
|
-
component: "span",
|
|
63
|
-
mx: 1,
|
|
64
|
-
onClick: () => setSchemaFieldValue(schema2),
|
|
65
|
-
sx: { cursor: "pointer", textDecoration: "underline" },
|
|
66
|
-
children: schema2
|
|
67
|
-
},
|
|
68
|
-
index
|
|
69
|
-
))
|
|
70
|
-
] }),
|
|
71
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.FormControl, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.TextField, { value: schemaFieldValue, label: "Schema Name", onChange: (e) => setSchemaFieldValue(e.target.value) }) }),
|
|
72
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_flexbox.FlexRow, { my: 3, justifyContent: "start", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_flexbox.FlexCol, { busy: true }), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(JsonView, { src: schemaPayload || {} }) }) })
|
|
73
|
-
] });
|
|
74
|
-
};
|
|
75
|
-
const StorybookEntry = {
|
|
76
|
-
argTypes: {},
|
|
77
|
-
component: UseGetSchemaComponent,
|
|
78
|
-
parameters: {
|
|
79
|
-
docs: {
|
|
80
|
-
page: null
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
title: "payload/useGetSchema"
|
|
84
|
-
};
|
|
85
|
-
const Template = ({ schema }) => {
|
|
86
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UseGetSchemaComponent, { schema });
|
|
87
|
-
};
|
|
88
|
-
const Default = Template.bind({});
|
|
89
|
-
Default.args = { schema: "network.xyo.schema" };
|
|
90
|
-
const Domain = Template.bind({});
|
|
91
|
-
Domain.args = { schema: "network.xyo.domain" };
|
|
92
|
-
var useGetSchema_stories_default = StorybookEntry;
|
|
93
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
94
|
-
0 && (module.exports = {
|
|
95
|
-
Default,
|
|
96
|
-
Domain
|
|
97
|
-
});
|
|
98
|
-
//# sourceMappingURL=useGetSchema.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/hooks/useGetSchema.stories.tsx"],"sourcesContent":["import { FormControl, TextField, Typography } from '@mui/material'\nimport { Meta, StoryFn } from '@storybook/react'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { lazy, Suspense, useEffect, useState } from 'react'\n\nimport { useGetSchemaPayload } from './useGetSchema'\n\nconst JsonView = lazy(() => import(/* webpackChunkName: \"jsonView\" */ 'react-json-view'))\n\nSchemaCache.instance.proxy = 'https://beta.api.archivist.xyo.network/domain'\n\nconst UseGetSchemaComponent: React.FC<{ schema: string }> = ({ schema }) => {\n const exampleSchemas = ['network.xyo.domain', 'network.xyo.payload', 'network.xyo.schema']\n const [schemaFieldValue, setSchemaFieldValue] = useState('')\n const { schemaPayload } = useGetSchemaPayload(schemaFieldValue)\n\n useEffect(() => {\n if (schema) {\n setSchemaFieldValue(schema)\n }\n }, [schema])\n\n return (\n <>\n <Typography variant=\"body1\" fontWeight=\"bold\" mb={2}>\n Example schemas to test:\n {exampleSchemas.map((schema, index) => (\n <Typography\n component=\"span\"\n mx={1}\n key={index}\n onClick={() => setSchemaFieldValue(schema)}\n sx={{ cursor: 'pointer', textDecoration: 'underline' }}\n >\n {schema}\n </Typography>\n ))}\n </Typography>\n <FormControl>\n <TextField value={schemaFieldValue} label=\"Schema Name\" onChange={(e) => setSchemaFieldValue(e.target.value)} />\n </FormControl>\n <FlexRow my={3} justifyContent=\"start\">\n <Suspense fallback={<FlexCol busy />}>\n <JsonView src={schemaPayload || {}} />\n </Suspense>\n </FlexRow>\n </>\n )\n}\n\nconst StorybookEntry: Meta = {\n argTypes: {},\n component: UseGetSchemaComponent,\n parameters: {\n docs: {\n page: null,\n },\n },\n title: 'payload/useGetSchema',\n}\n\nconst Template: StoryFn<typeof UseGetSchemaComponent> = ({ schema }) => {\n return <UseGetSchemaComponent schema={schema} />\n}\n\nconst Default = Template.bind({})\nDefault.args = { schema: 'network.xyo.schema' }\n\nconst Domain = Template.bind({})\nDomain.args = { schema: 'network.xyo.domain' }\n\nexport { Default, Domain }\n\n// eslint-disable-next-line import/no-default-export\nexport default StorybookEntry\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAwBI;AAxBJ,sBAAmD;AAEnD,2BAAiC;AACjC,0BAA4B;AAC5B,IAAAA,gBAAoD;AAEpD,0BAAoC;AAEpC,MAAM,eAAW,oBAAK,MAAM;AAAA;AAAA,EAA0C;AAAiB,CAAC;AAExF,gCAAY,SAAS,QAAQ;AAE7B,MAAM,wBAAsD,CAAC,EAAE,OAAO,MAAM;AAC1E,QAAM,iBAAiB,CAAC,sBAAsB,uBAAuB,oBAAoB;AACzF,QAAM,CAAC,kBAAkB,mBAAmB,QAAI,wBAAS,EAAE;AAC3D,QAAM,EAAE,cAAc,QAAI,yCAAoB,gBAAgB;AAE9D,+BAAU,MAAM;AACd,QAAI,QAAQ;AACV,0BAAoB,MAAM;AAAA,IAC5B;AAAA,EACF,GAAG,CAAC,MAAM,CAAC;AAEX,SACE,4EACE;AAAA,iDAAC,8BAAW,SAAQ,SAAQ,YAAW,QAAO,IAAI,GAAG;AAAA;AAAA,MAElD,eAAe,IAAI,CAACC,SAAQ,UAC3B;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,IAAI;AAAA,UAEJ,SAAS,MAAM,oBAAoBA,OAAM;AAAA,UACzC,IAAI,EAAE,QAAQ,WAAW,gBAAgB,YAAY;AAAA,UAEpD,UAAAA;AAAA;AAAA,QAJI;AAAA,MAKP,CACD;AAAA,OACH;AAAA,IACA,4CAAC,+BACC,sDAAC,6BAAU,OAAO,kBAAkB,OAAM,eAAc,UAAU,CAAC,MAAM,oBAAoB,EAAE,OAAO,KAAK,GAAG,GAChH;AAAA,IACA,4CAAC,gCAAQ,IAAI,GAAG,gBAAe,SAC7B,sDAAC,0BAAS,UAAU,4CAAC,gCAAQ,MAAI,MAAC,GAChC,sDAAC,YAAS,KAAK,iBAAiB,CAAC,GAAG,GACtC,GACF;AAAA,KACF;AAEJ;AAEA,MAAM,iBAAuB;AAAA,EAC3B,UAAU,CAAC;AAAA,EACX,WAAW;AAAA,EACX,YAAY;AAAA,IACV,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,OAAO;AACT;AAEA,MAAM,WAAkD,CAAC,EAAE,OAAO,MAAM;AACtE,SAAO,4CAAC,yBAAsB,QAAgB;AAChD;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;AAChC,QAAQ,OAAO,EAAE,QAAQ,qBAAqB;AAE9C,MAAM,SAAS,SAAS,KAAK,CAAC,CAAC;AAC/B,OAAO,OAAO,EAAE,QAAQ,qBAAqB;AAK7C,IAAO,+BAAQ;","names":["import_react","schema"]}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { FormControl, TextField, Typography } from "@mui/material";
|
|
3
|
-
import { FlexCol, FlexRow } from "@xylabs/react-flexbox";
|
|
4
|
-
import { SchemaCache } from "@xyo-network/schema-cache";
|
|
5
|
-
import { lazy, Suspense, useEffect, useState } from "react";
|
|
6
|
-
import { useGetSchemaPayload } from "./useGetSchema";
|
|
7
|
-
const JsonView = lazy(() => import(
|
|
8
|
-
/* webpackChunkName: "jsonView" */
|
|
9
|
-
"react-json-view"
|
|
10
|
-
));
|
|
11
|
-
SchemaCache.instance.proxy = "https://beta.api.archivist.xyo.network/domain";
|
|
12
|
-
const UseGetSchemaComponent = ({ schema }) => {
|
|
13
|
-
const exampleSchemas = ["network.xyo.domain", "network.xyo.payload", "network.xyo.schema"];
|
|
14
|
-
const [schemaFieldValue, setSchemaFieldValue] = useState("");
|
|
15
|
-
const { schemaPayload } = useGetSchemaPayload(schemaFieldValue);
|
|
16
|
-
useEffect(() => {
|
|
17
|
-
if (schema) {
|
|
18
|
-
setSchemaFieldValue(schema);
|
|
19
|
-
}
|
|
20
|
-
}, [schema]);
|
|
21
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
22
|
-
/* @__PURE__ */ jsxs(Typography, { variant: "body1", fontWeight: "bold", mb: 2, children: [
|
|
23
|
-
"Example schemas to test:",
|
|
24
|
-
exampleSchemas.map((schema2, index) => /* @__PURE__ */ jsx(
|
|
25
|
-
Typography,
|
|
26
|
-
{
|
|
27
|
-
component: "span",
|
|
28
|
-
mx: 1,
|
|
29
|
-
onClick: () => setSchemaFieldValue(schema2),
|
|
30
|
-
sx: { cursor: "pointer", textDecoration: "underline" },
|
|
31
|
-
children: schema2
|
|
32
|
-
},
|
|
33
|
-
index
|
|
34
|
-
))
|
|
35
|
-
] }),
|
|
36
|
-
/* @__PURE__ */ jsx(FormControl, { children: /* @__PURE__ */ jsx(TextField, { value: schemaFieldValue, label: "Schema Name", onChange: (e) => setSchemaFieldValue(e.target.value) }) }),
|
|
37
|
-
/* @__PURE__ */ jsx(FlexRow, { my: 3, justifyContent: "start", children: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(FlexCol, { busy: true }), children: /* @__PURE__ */ jsx(JsonView, { src: schemaPayload || {} }) }) })
|
|
38
|
-
] });
|
|
39
|
-
};
|
|
40
|
-
const StorybookEntry = {
|
|
41
|
-
argTypes: {},
|
|
42
|
-
component: UseGetSchemaComponent,
|
|
43
|
-
parameters: {
|
|
44
|
-
docs: {
|
|
45
|
-
page: null
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
title: "payload/useGetSchema"
|
|
49
|
-
};
|
|
50
|
-
const Template = ({ schema }) => {
|
|
51
|
-
return /* @__PURE__ */ jsx(UseGetSchemaComponent, { schema });
|
|
52
|
-
};
|
|
53
|
-
const Default = Template.bind({});
|
|
54
|
-
Default.args = { schema: "network.xyo.schema" };
|
|
55
|
-
const Domain = Template.bind({});
|
|
56
|
-
Domain.args = { schema: "network.xyo.domain" };
|
|
57
|
-
var useGetSchema_stories_default = StorybookEntry;
|
|
58
|
-
export {
|
|
59
|
-
Default,
|
|
60
|
-
Domain,
|
|
61
|
-
useGetSchema_stories_default as default
|
|
62
|
-
};
|
|
63
|
-
//# sourceMappingURL=useGetSchema.stories.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/hooks/useGetSchema.stories.tsx"],"sourcesContent":["import { FormControl, TextField, Typography } from '@mui/material'\nimport { Meta, StoryFn } from '@storybook/react'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { lazy, Suspense, useEffect, useState } from 'react'\n\nimport { useGetSchemaPayload } from './useGetSchema'\n\nconst JsonView = lazy(() => import(/* webpackChunkName: \"jsonView\" */ 'react-json-view'))\n\nSchemaCache.instance.proxy = 'https://beta.api.archivist.xyo.network/domain'\n\nconst UseGetSchemaComponent: React.FC<{ schema: string }> = ({ schema }) => {\n const exampleSchemas = ['network.xyo.domain', 'network.xyo.payload', 'network.xyo.schema']\n const [schemaFieldValue, setSchemaFieldValue] = useState('')\n const { schemaPayload } = useGetSchemaPayload(schemaFieldValue)\n\n useEffect(() => {\n if (schema) {\n setSchemaFieldValue(schema)\n }\n }, [schema])\n\n return (\n <>\n <Typography variant=\"body1\" fontWeight=\"bold\" mb={2}>\n Example schemas to test:\n {exampleSchemas.map((schema, index) => (\n <Typography\n component=\"span\"\n mx={1}\n key={index}\n onClick={() => setSchemaFieldValue(schema)}\n sx={{ cursor: 'pointer', textDecoration: 'underline' }}\n >\n {schema}\n </Typography>\n ))}\n </Typography>\n <FormControl>\n <TextField value={schemaFieldValue} label=\"Schema Name\" onChange={(e) => setSchemaFieldValue(e.target.value)} />\n </FormControl>\n <FlexRow my={3} justifyContent=\"start\">\n <Suspense fallback={<FlexCol busy />}>\n <JsonView src={schemaPayload || {}} />\n </Suspense>\n </FlexRow>\n </>\n )\n}\n\nconst StorybookEntry: Meta = {\n argTypes: {},\n component: UseGetSchemaComponent,\n parameters: {\n docs: {\n page: null,\n },\n },\n title: 'payload/useGetSchema',\n}\n\nconst Template: StoryFn<typeof UseGetSchemaComponent> = ({ schema }) => {\n return <UseGetSchemaComponent schema={schema} />\n}\n\nconst Default = Template.bind({})\nDefault.args = { schema: 'network.xyo.schema' }\n\nconst Domain = Template.bind({})\nDomain.args = { schema: 'network.xyo.domain' }\n\nexport { Default, Domain }\n\n// eslint-disable-next-line import/no-default-export\nexport default StorybookEntry\n"],"mappings":"AAwBI,mBAIM,KAHJ,YADF;AAxBJ,SAAS,aAAa,WAAW,kBAAkB;AAEnD,SAAS,SAAS,eAAe;AACjC,SAAS,mBAAmB;AAC5B,SAAS,MAAM,UAAU,WAAW,gBAAgB;AAEpD,SAAS,2BAA2B;AAEpC,MAAM,WAAW,KAAK,MAAM;AAAA;AAAA,EAA0C;AAAiB,CAAC;AAExF,YAAY,SAAS,QAAQ;AAE7B,MAAM,wBAAsD,CAAC,EAAE,OAAO,MAAM;AAC1E,QAAM,iBAAiB,CAAC,sBAAsB,uBAAuB,oBAAoB;AACzF,QAAM,CAAC,kBAAkB,mBAAmB,IAAI,SAAS,EAAE;AAC3D,QAAM,EAAE,cAAc,IAAI,oBAAoB,gBAAgB;AAE9D,YAAU,MAAM;AACd,QAAI,QAAQ;AACV,0BAAoB,MAAM;AAAA,IAC5B;AAAA,EACF,GAAG,CAAC,MAAM,CAAC;AAEX,SACE,iCACE;AAAA,yBAAC,cAAW,SAAQ,SAAQ,YAAW,QAAO,IAAI,GAAG;AAAA;AAAA,MAElD,eAAe,IAAI,CAACA,SAAQ,UAC3B;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,IAAI;AAAA,UAEJ,SAAS,MAAM,oBAAoBA,OAAM;AAAA,UACzC,IAAI,EAAE,QAAQ,WAAW,gBAAgB,YAAY;AAAA,UAEpD,UAAAA;AAAA;AAAA,QAJI;AAAA,MAKP,CACD;AAAA,OACH;AAAA,IACA,oBAAC,eACC,8BAAC,aAAU,OAAO,kBAAkB,OAAM,eAAc,UAAU,CAAC,MAAM,oBAAoB,EAAE,OAAO,KAAK,GAAG,GAChH;AAAA,IACA,oBAAC,WAAQ,IAAI,GAAG,gBAAe,SAC7B,8BAAC,YAAS,UAAU,oBAAC,WAAQ,MAAI,MAAC,GAChC,8BAAC,YAAS,KAAK,iBAAiB,CAAC,GAAG,GACtC,GACF;AAAA,KACF;AAEJ;AAEA,MAAM,iBAAuB;AAAA,EAC3B,UAAU,CAAC;AAAA,EACX,WAAW;AAAA,EACX,YAAY;AAAA,IACV,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,OAAO;AACT;AAEA,MAAM,WAAkD,CAAC,EAAE,OAAO,MAAM;AACtE,SAAO,oBAAC,yBAAsB,QAAgB;AAChD;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;AAChC,QAAQ,OAAO,EAAE,QAAQ,qBAAqB;AAE9C,MAAM,SAAS,SAAS,KAAK,CAAC,CAAC;AAC/B,OAAO,OAAO,EAAE,QAAQ,qBAAqB;AAK7C,IAAO,+BAAQ;","names":["schema"]}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { useAsyncEffect } from "@xylabs/react-async-effect";
|
|
2
|
-
import { SchemaCache } from "@xyo-network/schema-cache";
|
|
3
|
-
import { useState } from "react";
|
|
4
|
-
const useSchemaDefinitions = (schemaList) => {
|
|
5
|
-
const [schemaPayloads, setSchemaPayloads] = useState();
|
|
6
|
-
useAsyncEffect(
|
|
7
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
8
|
-
async (mounted) => {
|
|
9
|
-
if (schemaList) {
|
|
10
|
-
const promiseResults = await Promise.allSettled(schemaList?.map(({ name }) => SchemaCache.instance.get(name)));
|
|
11
|
-
if (mounted()) {
|
|
12
|
-
setSchemaPayloads(
|
|
13
|
-
promiseResults.map((result) => result.status === "fulfilled" ? result.value?.payload : void 0).filter((item) => item !== void 0 && item !== null)
|
|
14
|
-
);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
[schemaList]
|
|
19
|
-
);
|
|
20
|
-
return schemaPayloads;
|
|
21
|
-
};
|
|
22
|
-
export {
|
|
23
|
-
useSchemaDefinitions
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=useSchemaDefinitions.mjs.map
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { useAsyncEffect } from "@xylabs/react-async-effect";
|
|
2
|
-
import { SchemaListQuerySchema } from "@xyo-network/diviner-schema-list-model";
|
|
3
|
-
import { useDivinerFromNode } from "@xyo-network/react-diviner";
|
|
4
|
-
import { useEffect, useMemo, useState } from "react";
|
|
5
|
-
const useSchemaList = (address, nameOrAddress = "SchemaListDiviner") => {
|
|
6
|
-
const [schemaList, setSchemaList] = useState();
|
|
7
|
-
const [error, setError] = useState();
|
|
8
|
-
const [diviner, divinerError] = useDivinerFromNode(nameOrAddress);
|
|
9
|
-
const query = useMemo(
|
|
10
|
-
() => address ? [
|
|
11
|
-
{
|
|
12
|
-
address,
|
|
13
|
-
schema: SchemaListQuerySchema
|
|
14
|
-
}
|
|
15
|
-
] : void 0,
|
|
16
|
-
[address]
|
|
17
|
-
);
|
|
18
|
-
useEffect(() => {
|
|
19
|
-
if (diviner === null) {
|
|
20
|
-
setSchemaList(null);
|
|
21
|
-
setError(void 0);
|
|
22
|
-
}
|
|
23
|
-
}, [diviner]);
|
|
24
|
-
useAsyncEffect(
|
|
25
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps, require-await
|
|
26
|
-
async (mounted) => {
|
|
27
|
-
if (diviner) {
|
|
28
|
-
try {
|
|
29
|
-
const response = await diviner.divine(query);
|
|
30
|
-
if (mounted()) {
|
|
31
|
-
setSchemaList(response?.[0]);
|
|
32
|
-
setError(void 0);
|
|
33
|
-
}
|
|
34
|
-
} catch (e) {
|
|
35
|
-
setError(e);
|
|
36
|
-
setSchemaList(void 0);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
|
-
[diviner, divinerError, query]
|
|
41
|
-
);
|
|
42
|
-
return [schemaList, error];
|
|
43
|
-
};
|
|
44
|
-
export {
|
|
45
|
-
useSchemaList
|
|
46
|
-
};
|
|
47
|
-
//# sourceMappingURL=useSchemaList.mjs.map
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useAsyncEffect } from "@xylabs/react-async-effect";
|
|
2
|
-
import { isSchemaStatsPayload, SchemaStatsQuerySchema } from "@xyo-network/diviner-schema-stats-model";
|
|
3
|
-
import { TYPES } from "@xyo-network/node-core-types";
|
|
4
|
-
import { useDivinerFromNode } from "@xyo-network/react-diviner";
|
|
5
|
-
import { useMemo, useState } from "react";
|
|
6
|
-
const useSchemaStats = (statsAddress, nameOrAddress = TYPES.SchemaStatsDiviner.description) => {
|
|
7
|
-
const [refresh, setRefresh] = useState(1);
|
|
8
|
-
const [diviner, divinerError] = useDivinerFromNode(nameOrAddress);
|
|
9
|
-
const [error, setError] = useState();
|
|
10
|
-
const refreshHistory = () => setRefresh((previous) => previous + 1);
|
|
11
|
-
const [schemaList, setSchemaList] = useState();
|
|
12
|
-
const query = useMemo(
|
|
13
|
-
() => ({
|
|
14
|
-
address: statsAddress,
|
|
15
|
-
schema: SchemaStatsQuerySchema
|
|
16
|
-
}),
|
|
17
|
-
[statsAddress]
|
|
18
|
-
);
|
|
19
|
-
useAsyncEffect(
|
|
20
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
21
|
-
async (mounted) => {
|
|
22
|
-
if (diviner) {
|
|
23
|
-
if (divinerError) {
|
|
24
|
-
if (mounted()) {
|
|
25
|
-
setError(divinerError);
|
|
26
|
-
setSchemaList(void 0);
|
|
27
|
-
}
|
|
28
|
-
} else {
|
|
29
|
-
try {
|
|
30
|
-
const schemas = (await diviner.divine([query])).filter(isSchemaStatsPayload);
|
|
31
|
-
if (mounted()) {
|
|
32
|
-
setSchemaList(schemas);
|
|
33
|
-
setError(void 0);
|
|
34
|
-
}
|
|
35
|
-
} catch (ex) {
|
|
36
|
-
setError(ex);
|
|
37
|
-
setSchemaList(void 0);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
|
-
[diviner, refresh, divinerError, query]
|
|
43
|
-
);
|
|
44
|
-
return [schemaList, error, refreshHistory];
|
|
45
|
-
};
|
|
46
|
-
export {
|
|
47
|
-
useSchemaStats
|
|
48
|
-
};
|
|
49
|
-
//# sourceMappingURL=useSchemaStats.mjs.map
|
package/dist/node/index.mjs
DELETED
package/dist/node/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["export * from './components'\nexport * from './contexts'\nexport * from './hooks'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
|