@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
|
@@ -0,0 +1,76 @@
|
|
|
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/Property/SchemaProperty.tsx
|
|
21
|
+
var SchemaProperty_exports = {};
|
|
22
|
+
__export(SchemaProperty_exports, {
|
|
23
|
+
SchemaProperty: () => SchemaProperty
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(SchemaProperty_exports);
|
|
26
|
+
var import_icons_material = require("@mui/icons-material");
|
|
27
|
+
var import_material = require("@mui/material");
|
|
28
|
+
var import_react_async_effect = require("@xylabs/react-async-effect");
|
|
29
|
+
var import_react_link = require("@xylabs/react-link");
|
|
30
|
+
var import_react_event = require("@xyo-network/react-event");
|
|
31
|
+
var import_react_property = require("@xyo-network/react-property");
|
|
32
|
+
var import_schema_cache = require("@xyo-network/schema-cache");
|
|
33
|
+
var import_react = require("react");
|
|
34
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
|
+
var useResolveSchema = (schema) => {
|
|
36
|
+
const [entry, setEntry] = (0, import_react.useState)();
|
|
37
|
+
(0, import_react_async_effect.useAsyncEffect)(
|
|
38
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
39
|
+
async (mounted) => {
|
|
40
|
+
if (schema) {
|
|
41
|
+
const entry2 = await import_schema_cache.SchemaCache.instance.get(schema);
|
|
42
|
+
if (mounted()) {
|
|
43
|
+
setEntry(entry2);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
[schema]
|
|
48
|
+
);
|
|
49
|
+
return entry;
|
|
50
|
+
};
|
|
51
|
+
var SchemaProperty = (0, import_react.forwardRef)(
|
|
52
|
+
({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {
|
|
53
|
+
const resolvedSchema = useResolveSchema(value);
|
|
54
|
+
const [buttonRef, buttonDispatch] = (0, import_react_event.useEvent)(void 0);
|
|
55
|
+
const [divRef, divDispatch] = (0, import_react_event.useEvent)(void 0);
|
|
56
|
+
const onClick = (dispatch, openNewWindow = false) => {
|
|
57
|
+
dispatch?.(
|
|
58
|
+
"schema",
|
|
59
|
+
"click",
|
|
60
|
+
JSON.stringify({
|
|
61
|
+
openNewWindow,
|
|
62
|
+
schema: value
|
|
63
|
+
})
|
|
64
|
+
);
|
|
65
|
+
};
|
|
66
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_property.Property, { ref: forwardedRef, title: "Schema", value, tip: "Schema sent with the payload", titleProps, ...props, children: [
|
|
67
|
+
value && showStatusIcon ? resolvedSchema === null ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.NewReleases, { color: "warning", fontSize: "inherit" }) }) : resolvedSchema === void 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.NewReleases, { color: "disabled", fontSize: "inherit" }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { rel: "noopener noreferrer", size: "small", target: "_blank", href: resolvedSchema?.huri?.href ?? "", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.Verified, { color: "success", fontSize: "inherit" }) }) : null,
|
|
68
|
+
value ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
69
|
+
showLinkNames ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { display: "block", width: "100%", sx: { cursor: "pointer" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_property.PropertyValue, { ref: divRef, value, title: "view schema", onClick: () => onClick(divDispatch) }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_property.PropertyValue, { ref: divRef, value, title: "view schema", onClick: () => onClick(divDispatch) }),
|
|
70
|
+
showOpenNewWindowLink ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch, true), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.OpenInNew, { fontSize: "inherit" }) }) : null
|
|
71
|
+
] }) : null
|
|
72
|
+
] });
|
|
73
|
+
}
|
|
74
|
+
);
|
|
75
|
+
SchemaProperty.displayName = "SchemaProperty";
|
|
76
|
+
//# sourceMappingURL=SchemaProperty.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Property/SchemaProperty.tsx"],"sourcesContent":["import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Property/SchemaProperty.tsx"],"sourcesContent":["import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAAqG;AACrG,sBAA2B;AAC3B,gCAA+B;AAC/B,wBAAuB;AACvB,yBAAmD;AACnD,4BAAuD;AACvD,0BAA8C;AAC9C,mBAAqC;AAgDvB;AAvCd,IAAM,mBAAmB,CAAC,WAAoB;AAC5C,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAkC;AAC5D;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,UAAI,QAAQ;AACV,cAAMA,SAAQ,MAAM,gCAAY,SAAS,IAAI,MAAM;AACnD,YAAI,QAAQ,GAAG;AACb,mBAASA,MAAK;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACA,SAAO;AACT;AAEO,IAAM,qBAAiB;AAAA,EAC5B,CAAC,EAAE,gBAAgB,MAAM,wBAAwB,MAAM,iBAAiB,MAAM,YAAY,OAAO,GAAG,MAAM,GAAG,iBAAiB;AAC5H,UAAM,iBAAiB,iBAAiB,KAAK;AAC7C,UAAM,CAAC,WAAW,cAAc,QAAI,6BAA4B,MAAS;AACzE,UAAM,CAAC,QAAQ,WAAW,QAAI,6BAAyB,MAAS;AAEhE,UAAM,UAAU,CAAC,UAAsD,gBAAgB,UAAU;AAC/F;AAAA,QACE;AAAA,QACA;AAAA,QACA,KAAK,UAAU;AAAA,UACb;AAAA,UACA,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA,IACF;AAEA,WACE,6CAAC,kCAAS,KAAK,cAAc,OAAM,UAAS,OAAc,KAAI,gCAA+B,YAAyB,GAAG,OACtH;AAAA,eAAS,iBACR,mBAAmB,OACjB,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,cAAc,GAC5E,sDAAC,sBAAAC,aAAA,EAAgB,OAAM,WAAU,UAAS,WAAU,GACtD,IACE,mBAAmB,SACrB,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,cAAc,GAC5E,sDAAC,sBAAAA,aAAA,EAAgB,OAAM,YAAW,UAAS,WAAU,GACvD,IAEA,4CAAC,8BAAW,KAAI,uBAAsB,MAAK,SAAQ,QAAO,UAAS,MAAM,gBAAgB,MAAM,QAAQ,IACrG,sDAAC,sBAAAC,UAAA,EAAa,OAAM,WAAU,UAAS,WAAU,GACnD,IAEA;AAAA,MACH,QACC,4EACG;AAAA,wBACC,4CAAC,4BAAO,SAAQ,SAAQ,OAAM,QAAO,IAAI,EAAE,QAAQ,UAAU,GAC3D,sDAAC,uCAAc,KAAK,QAAQ,OAAc,OAAM,eAAc,SAAS,MAAM,QAAQ,WAAW,GAAG,GACrG,IAEA,4CAAC,uCAAc,KAAK,QAAQ,OAAc,OAAM,eAAc,SAAS,MAAM,QAAQ,WAAW,GAAG;AAAA,QAEpG,wBACC,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,gBAAgB,IAAI,GAClF,sDAAC,sBAAAC,WAAA,EAAc,UAAS,WAAU,GACpC,IACE;AAAA,SACN,IACE;AAAA,OACN;AAAA,EAEJ;AACF;AAEA,eAAe,cAAc;","names":["entry","NewReleasesIcon","VerifiedIcon","OpenInNewIcon"]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { PropertyProps } from '@xyo-network/react-property';
|
|
3
|
+
export type SchemaPropertyProps = PropertyProps & {
|
|
4
|
+
showLinkNames?: boolean;
|
|
5
|
+
showOpenNewWindowLink?: boolean;
|
|
6
|
+
showStatusIcon?: boolean;
|
|
7
|
+
value?: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const SchemaProperty: import("react").ForwardRefExoticComponent<((import("@xyo-network/react-property").PropertyBaseProps & {
|
|
10
|
+
actions?: import("@xyo-network/react-property").PropertyAction[] | undefined;
|
|
11
|
+
badge?: boolean | undefined;
|
|
12
|
+
required?: boolean | undefined;
|
|
13
|
+
size?: import("@xyo-network/react-shared").SizeProp | undefined;
|
|
14
|
+
value?: string | number | boolean | null | undefined;
|
|
15
|
+
} & import("@xylabs/react-flexbox").BusyBoxProps & {
|
|
16
|
+
paper?: false | undefined;
|
|
17
|
+
} & {
|
|
18
|
+
showLinkNames?: boolean | undefined;
|
|
19
|
+
showOpenNewWindowLink?: boolean | undefined;
|
|
20
|
+
showStatusIcon?: boolean | undefined;
|
|
21
|
+
value?: string | undefined;
|
|
22
|
+
}) | Omit<import("@xyo-network/react-property").PropertyBaseProps & {
|
|
23
|
+
actions?: import("@xyo-network/react-property").PropertyAction[] | undefined;
|
|
24
|
+
badge?: boolean | undefined;
|
|
25
|
+
required?: boolean | undefined;
|
|
26
|
+
size?: import("@xyo-network/react-shared").SizeProp | undefined;
|
|
27
|
+
value?: string | number | boolean | null | undefined;
|
|
28
|
+
} & import("@mui/material").PaperOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
29
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
30
|
+
}, "className" | "style" | "classes" | "children" | "elevation" | "square" | "sx" | "variant"> & {
|
|
31
|
+
component?: import("react").ElementType<any> | undefined;
|
|
32
|
+
} & {
|
|
33
|
+
paper: true;
|
|
34
|
+
} & {
|
|
35
|
+
showLinkNames?: boolean | undefined;
|
|
36
|
+
showOpenNewWindowLink?: boolean | undefined;
|
|
37
|
+
showStatusIcon?: boolean | undefined;
|
|
38
|
+
value?: string | undefined;
|
|
39
|
+
}, "ref">) & import("react").RefAttributes<HTMLDivElement>>;
|
|
40
|
+
//# sourceMappingURL=SchemaProperty.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaProperty.d.ts","sourceRoot":"","sources":["../../../../src/components/Property/SchemaProperty.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAY,aAAa,EAAiB,MAAM,6BAA6B,CAAA;AAIpF,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAmBD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DAqD1B,CAAA"}
|
|
@@ -0,0 +1,78 @@
|
|
|
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/Property/index.ts
|
|
21
|
+
var Property_exports = {};
|
|
22
|
+
__export(Property_exports, {
|
|
23
|
+
SchemaProperty: () => SchemaProperty
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(Property_exports);
|
|
26
|
+
|
|
27
|
+
// src/components/Property/SchemaProperty.tsx
|
|
28
|
+
var import_icons_material = require("@mui/icons-material");
|
|
29
|
+
var import_material = require("@mui/material");
|
|
30
|
+
var import_react_async_effect = require("@xylabs/react-async-effect");
|
|
31
|
+
var import_react_link = require("@xylabs/react-link");
|
|
32
|
+
var import_react_event = require("@xyo-network/react-event");
|
|
33
|
+
var import_react_property = require("@xyo-network/react-property");
|
|
34
|
+
var import_schema_cache = require("@xyo-network/schema-cache");
|
|
35
|
+
var import_react = require("react");
|
|
36
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
37
|
+
var useResolveSchema = (schema) => {
|
|
38
|
+
const [entry, setEntry] = (0, import_react.useState)();
|
|
39
|
+
(0, import_react_async_effect.useAsyncEffect)(
|
|
40
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
41
|
+
async (mounted) => {
|
|
42
|
+
if (schema) {
|
|
43
|
+
const entry2 = await import_schema_cache.SchemaCache.instance.get(schema);
|
|
44
|
+
if (mounted()) {
|
|
45
|
+
setEntry(entry2);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
[schema]
|
|
50
|
+
);
|
|
51
|
+
return entry;
|
|
52
|
+
};
|
|
53
|
+
var SchemaProperty = (0, import_react.forwardRef)(
|
|
54
|
+
({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {
|
|
55
|
+
const resolvedSchema = useResolveSchema(value);
|
|
56
|
+
const [buttonRef, buttonDispatch] = (0, import_react_event.useEvent)(void 0);
|
|
57
|
+
const [divRef, divDispatch] = (0, import_react_event.useEvent)(void 0);
|
|
58
|
+
const onClick = (dispatch, openNewWindow = false) => {
|
|
59
|
+
dispatch?.(
|
|
60
|
+
"schema",
|
|
61
|
+
"click",
|
|
62
|
+
JSON.stringify({
|
|
63
|
+
openNewWindow,
|
|
64
|
+
schema: value
|
|
65
|
+
})
|
|
66
|
+
);
|
|
67
|
+
};
|
|
68
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_property.Property, { ref: forwardedRef, title: "Schema", value, tip: "Schema sent with the payload", titleProps, ...props, children: [
|
|
69
|
+
value && showStatusIcon ? resolvedSchema === null ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.NewReleases, { color: "warning", fontSize: "inherit" }) }) : resolvedSchema === void 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.NewReleases, { color: "disabled", fontSize: "inherit" }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { rel: "noopener noreferrer", size: "small", target: "_blank", href: resolvedSchema?.huri?.href ?? "", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.Verified, { color: "success", fontSize: "inherit" }) }) : null,
|
|
70
|
+
value ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
71
|
+
showLinkNames ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { display: "block", width: "100%", sx: { cursor: "pointer" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_property.PropertyValue, { ref: divRef, value, title: "view schema", onClick: () => onClick(divDispatch) }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_property.PropertyValue, { ref: divRef, value, title: "view schema", onClick: () => onClick(divDispatch) }),
|
|
72
|
+
showOpenNewWindowLink ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch, true), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.OpenInNew, { fontSize: "inherit" }) }) : null
|
|
73
|
+
] }) : null
|
|
74
|
+
] });
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
SchemaProperty.displayName = "SchemaProperty";
|
|
78
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Property/index.ts","../../../../src/components/Property/SchemaProperty.tsx"],"sourcesContent":["export * from './SchemaProperty'\n","import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,4BAAqG;AACrG,sBAA2B;AAC3B,gCAA+B;AAC/B,wBAAuB;AACvB,yBAAmD;AACnD,4BAAuD;AACvD,0BAA8C;AAC9C,mBAAqC;AAgDvB;AAvCd,IAAM,mBAAmB,CAAC,WAAoB;AAC5C,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAkC;AAC5D;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,UAAI,QAAQ;AACV,cAAMA,SAAQ,MAAM,gCAAY,SAAS,IAAI,MAAM;AACnD,YAAI,QAAQ,GAAG;AACb,mBAASA,MAAK;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACA,SAAO;AACT;AAEO,IAAM,qBAAiB;AAAA,EAC5B,CAAC,EAAE,gBAAgB,MAAM,wBAAwB,MAAM,iBAAiB,MAAM,YAAY,OAAO,GAAG,MAAM,GAAG,iBAAiB;AAC5H,UAAM,iBAAiB,iBAAiB,KAAK;AAC7C,UAAM,CAAC,WAAW,cAAc,QAAI,6BAA4B,MAAS;AACzE,UAAM,CAAC,QAAQ,WAAW,QAAI,6BAAyB,MAAS;AAEhE,UAAM,UAAU,CAAC,UAAsD,gBAAgB,UAAU;AAC/F;AAAA,QACE;AAAA,QACA;AAAA,QACA,KAAK,UAAU;AAAA,UACb;AAAA,UACA,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA,IACF;AAEA,WACE,6CAAC,kCAAS,KAAK,cAAc,OAAM,UAAS,OAAc,KAAI,gCAA+B,YAAyB,GAAG,OACtH;AAAA,eAAS,iBACR,mBAAmB,OACjB,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,cAAc,GAC5E,sDAAC,sBAAAC,aAAA,EAAgB,OAAM,WAAU,UAAS,WAAU,GACtD,IACE,mBAAmB,SACrB,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,cAAc,GAC5E,sDAAC,sBAAAA,aAAA,EAAgB,OAAM,YAAW,UAAS,WAAU,GACvD,IAEA,4CAAC,8BAAW,KAAI,uBAAsB,MAAK,SAAQ,QAAO,UAAS,MAAM,gBAAgB,MAAM,QAAQ,IACrG,sDAAC,sBAAAC,UAAA,EAAa,OAAM,WAAU,UAAS,WAAU,GACnD,IAEA;AAAA,MACH,QACC,4EACG;AAAA,wBACC,4CAAC,4BAAO,SAAQ,SAAQ,OAAM,QAAO,IAAI,EAAE,QAAQ,UAAU,GAC3D,sDAAC,uCAAc,KAAK,QAAQ,OAAc,OAAM,eAAc,SAAS,MAAM,QAAQ,WAAW,GAAG,GACrG,IAEA,4CAAC,uCAAc,KAAK,QAAQ,OAAc,OAAM,eAAc,SAAS,MAAM,QAAQ,WAAW,GAAG;AAAA,QAEpG,wBACC,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,gBAAgB,IAAI,GAClF,sDAAC,sBAAAC,WAAA,EAAc,UAAS,WAAU,GACpC,IACE;AAAA,SACN,IACE;AAAA,OACN;AAAA,EAEJ;AACF;AAEA,eAAe,cAAc;","names":["entry","NewReleasesIcon","VerifiedIcon","OpenInNewIcon"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Property/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,68 @@
|
|
|
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/SelectEx/SchemaSelectEx.tsx
|
|
21
|
+
var SchemaSelectEx_exports = {};
|
|
22
|
+
__export(SchemaSelectEx_exports, {
|
|
23
|
+
SchemaSelectEx: () => SchemaSelectEx
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(SchemaSelectEx_exports);
|
|
26
|
+
var import_material = require("@mui/material");
|
|
27
|
+
var import_react_select = require("@xylabs/react-select");
|
|
28
|
+
|
|
29
|
+
// src/contexts/Schema/Context.ts
|
|
30
|
+
var import_react_shared = require("@xyo-network/react-shared");
|
|
31
|
+
var SchemaContext = (0, import_react_shared.createContextEx)();
|
|
32
|
+
|
|
33
|
+
// src/contexts/Schema/use.ts
|
|
34
|
+
var import_react_shared2 = require("@xyo-network/react-shared");
|
|
35
|
+
var useSchema = (required = false) => {
|
|
36
|
+
return (0, import_react_shared2.useContextEx)(SchemaContext, "Schema", required);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
// src/components/SelectEx/SchemaSelectEx.tsx
|
|
40
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
41
|
+
var SchemaSelectEx = ({ onChange, ...props }) => {
|
|
42
|
+
const { schema, setSchema, schemaList } = useSchema(false);
|
|
43
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
44
|
+
import_react_select.SelectEx,
|
|
45
|
+
{
|
|
46
|
+
variant: "outlined",
|
|
47
|
+
size: "small",
|
|
48
|
+
value: schema ?? "none",
|
|
49
|
+
onChange: (event, child) => {
|
|
50
|
+
if (event.target.value !== schema) {
|
|
51
|
+
onChange?.(event, child);
|
|
52
|
+
setSchema?.(event.target.value);
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
renderValue: (value) => {
|
|
56
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { children: value === "none" ? "- None -" : value });
|
|
57
|
+
},
|
|
58
|
+
...props,
|
|
59
|
+
children: [
|
|
60
|
+
schemaList?.map((schema2, index) => {
|
|
61
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.MenuItem, { value: schema2, children: schema2 }, index);
|
|
62
|
+
}),
|
|
63
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.MenuItem, { value: "none", children: "- None -" }, "none")
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=SchemaSelectEx.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/SelectEx/SchemaSelectEx.tsx","../../../../src/contexts/Schema/Context.ts","../../../../src/contexts/Schema/use.ts"],"sourcesContent":["import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAqC;AACrC,0BAAwC;;;ACDxC,0BAAgC;AAIzB,IAAM,oBAAgB,qCAAoC;;;ACJjE,IAAAA,uBAA6B;AAKtB,IAAM,YAAY,CAAC,WAAW,UAAU;AAC7C,aAAO,mCAAiC,eAAe,UAAU,QAAQ;AAC3E;;;AFII;AAJG,IAAM,iBAAgD,CAAC,EAAE,UAAU,GAAG,MAAM,MAAM;AACvF,QAAM,EAAE,QAAQ,WAAW,WAAW,IAAI,UAAU,KAAK;AAEzD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAO,UAAU;AAAA,MACjB,UAAU,CAAC,OAAO,UAAU;AAC1B,YAAI,MAAM,OAAO,UAAU,QAAQ;AACjC,qBAAW,OAAO,KAAK;AACvB,sBAAY,MAAM,OAAO,KAAK;AAAA,QAChC;AAAA,MACF;AAAA,MACA,aAAa,CAAC,UAAU;AACtB,eAAO,4CAAC,8BAAY,oBAAU,SAAS,aAAa,OAAM;AAAA,MAC5D;AAAA,MACC,GAAG;AAAA,MAEH;AAAA,oBAAY,IAAI,CAACC,SAAQ,UAAU;AAClC,iBACE,4CAAC,4BAAqB,OAAOA,SAC1B,UAAAA,WADY,KAEf;AAAA,QAEJ,CAAC;AAAA,QACD,4CAAC,4BAAoB,OAAM,QAAO,wBAApB,MAEd;AAAA;AAAA;AAAA,EACF;AAEJ;","names":["import_react_shared","schema"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaSelectEx.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectEx/SchemaSelectEx.tsx"],"names":[],"mappings":";AACA,OAAO,EAAY,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAI9D,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;AAEvD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA+BxD,CAAA"}
|
|
@@ -0,0 +1,70 @@
|
|
|
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/SelectEx/index.ts
|
|
21
|
+
var SelectEx_exports = {};
|
|
22
|
+
__export(SelectEx_exports, {
|
|
23
|
+
SchemaSelectEx: () => SchemaSelectEx
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(SelectEx_exports);
|
|
26
|
+
|
|
27
|
+
// src/components/SelectEx/SchemaSelectEx.tsx
|
|
28
|
+
var import_material = require("@mui/material");
|
|
29
|
+
var import_react_select = require("@xylabs/react-select");
|
|
30
|
+
|
|
31
|
+
// src/contexts/Schema/Context.ts
|
|
32
|
+
var import_react_shared = require("@xyo-network/react-shared");
|
|
33
|
+
var SchemaContext = (0, import_react_shared.createContextEx)();
|
|
34
|
+
|
|
35
|
+
// src/contexts/Schema/use.ts
|
|
36
|
+
var import_react_shared2 = require("@xyo-network/react-shared");
|
|
37
|
+
var useSchema = (required = false) => {
|
|
38
|
+
return (0, import_react_shared2.useContextEx)(SchemaContext, "Schema", required);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
// src/components/SelectEx/SchemaSelectEx.tsx
|
|
42
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
43
|
+
var SchemaSelectEx = ({ onChange, ...props }) => {
|
|
44
|
+
const { schema, setSchema, schemaList } = useSchema(false);
|
|
45
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
46
|
+
import_react_select.SelectEx,
|
|
47
|
+
{
|
|
48
|
+
variant: "outlined",
|
|
49
|
+
size: "small",
|
|
50
|
+
value: schema ?? "none",
|
|
51
|
+
onChange: (event, child) => {
|
|
52
|
+
if (event.target.value !== schema) {
|
|
53
|
+
onChange?.(event, child);
|
|
54
|
+
setSchema?.(event.target.value);
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
renderValue: (value) => {
|
|
58
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { children: value === "none" ? "- None -" : value });
|
|
59
|
+
},
|
|
60
|
+
...props,
|
|
61
|
+
children: [
|
|
62
|
+
schemaList?.map((schema2, index) => {
|
|
63
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.MenuItem, { value: schema2, children: schema2 }, index);
|
|
64
|
+
}),
|
|
65
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.MenuItem, { value: "none", children: "- None -" }, "none")
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
);
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/SelectEx/index.ts","../../../../src/components/SelectEx/SchemaSelectEx.tsx","../../../../src/contexts/Schema/Context.ts","../../../../src/contexts/Schema/use.ts"],"sourcesContent":["export * from './SchemaSelectEx'\n","import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,sBAAqC;AACrC,0BAAwC;;;ACDxC,0BAAgC;AAIzB,IAAM,oBAAgB,qCAAoC;;;ACJjE,IAAAA,uBAA6B;AAKtB,IAAM,YAAY,CAAC,WAAW,UAAU;AAC7C,aAAO,mCAAiC,eAAe,UAAU,QAAQ;AAC3E;;;AFII;AAJG,IAAM,iBAAgD,CAAC,EAAE,UAAU,GAAG,MAAM,MAAM;AACvF,QAAM,EAAE,QAAQ,WAAW,WAAW,IAAI,UAAU,KAAK;AAEzD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAO,UAAU;AAAA,MACjB,UAAU,CAAC,OAAO,UAAU;AAC1B,YAAI,MAAM,OAAO,UAAU,QAAQ;AACjC,qBAAW,OAAO,KAAK;AACvB,sBAAY,MAAM,OAAO,KAAK;AAAA,QAChC;AAAA,MACF;AAAA,MACA,aAAa,CAAC,UAAU;AACtB,eAAO,4CAAC,8BAAY,oBAAU,SAAS,aAAa,OAAM;AAAA,MAC5D;AAAA,MACC,GAAG;AAAA,MAEH;AAAA,oBAAY,IAAI,CAACC,SAAQ,UAAU;AAClC,iBACE,4CAAC,4BAAqB,OAAOA,SAC1B,UAAAA,WADY,KAEf;AAAA,QAEJ,CAAC;AAAA,QACD,4CAAC,4BAAoB,OAAM,QAAO,wBAApB,MAEd;AAAA;AAAA;AAAA,EACF;AAEJ;","names":["import_react_shared","schema"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectEx/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,123 @@
|
|
|
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/index.ts
|
|
21
|
+
var components_exports = {};
|
|
22
|
+
__export(components_exports, {
|
|
23
|
+
SchemaProperty: () => SchemaProperty,
|
|
24
|
+
SchemaSelectEx: () => SchemaSelectEx
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(components_exports);
|
|
27
|
+
|
|
28
|
+
// src/components/Property/SchemaProperty.tsx
|
|
29
|
+
var import_icons_material = require("@mui/icons-material");
|
|
30
|
+
var import_material = require("@mui/material");
|
|
31
|
+
var import_react_async_effect = require("@xylabs/react-async-effect");
|
|
32
|
+
var import_react_link = require("@xylabs/react-link");
|
|
33
|
+
var import_react_event = require("@xyo-network/react-event");
|
|
34
|
+
var import_react_property = require("@xyo-network/react-property");
|
|
35
|
+
var import_schema_cache = require("@xyo-network/schema-cache");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
|
+
var useResolveSchema = (schema) => {
|
|
39
|
+
const [entry, setEntry] = (0, import_react.useState)();
|
|
40
|
+
(0, import_react_async_effect.useAsyncEffect)(
|
|
41
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
42
|
+
async (mounted) => {
|
|
43
|
+
if (schema) {
|
|
44
|
+
const entry2 = await import_schema_cache.SchemaCache.instance.get(schema);
|
|
45
|
+
if (mounted()) {
|
|
46
|
+
setEntry(entry2);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
[schema]
|
|
51
|
+
);
|
|
52
|
+
return entry;
|
|
53
|
+
};
|
|
54
|
+
var SchemaProperty = (0, import_react.forwardRef)(
|
|
55
|
+
({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {
|
|
56
|
+
const resolvedSchema = useResolveSchema(value);
|
|
57
|
+
const [buttonRef, buttonDispatch] = (0, import_react_event.useEvent)(void 0);
|
|
58
|
+
const [divRef, divDispatch] = (0, import_react_event.useEvent)(void 0);
|
|
59
|
+
const onClick = (dispatch, openNewWindow = false) => {
|
|
60
|
+
dispatch?.(
|
|
61
|
+
"schema",
|
|
62
|
+
"click",
|
|
63
|
+
JSON.stringify({
|
|
64
|
+
openNewWindow,
|
|
65
|
+
schema: value
|
|
66
|
+
})
|
|
67
|
+
);
|
|
68
|
+
};
|
|
69
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_property.Property, { ref: forwardedRef, title: "Schema", value, tip: "Schema sent with the payload", titleProps, ...props, children: [
|
|
70
|
+
value && showStatusIcon ? resolvedSchema === null ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.NewReleases, { color: "warning", fontSize: "inherit" }) }) : resolvedSchema === void 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.NewReleases, { color: "disabled", fontSize: "inherit" }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { rel: "noopener noreferrer", size: "small", target: "_blank", href: resolvedSchema?.huri?.href ?? "", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.Verified, { color: "success", fontSize: "inherit" }) }) : null,
|
|
71
|
+
value ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
72
|
+
showLinkNames ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { display: "block", width: "100%", sx: { cursor: "pointer" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_property.PropertyValue, { ref: divRef, value, title: "view schema", onClick: () => onClick(divDispatch) }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_property.PropertyValue, { ref: divRef, value, title: "view schema", onClick: () => onClick(divDispatch) }),
|
|
73
|
+
showOpenNewWindowLink ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: buttonRef, size: "small", onClick: () => onClick(buttonDispatch, true), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.OpenInNew, { fontSize: "inherit" }) }) : null
|
|
74
|
+
] }) : null
|
|
75
|
+
] });
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
SchemaProperty.displayName = "SchemaProperty";
|
|
79
|
+
|
|
80
|
+
// src/components/SelectEx/SchemaSelectEx.tsx
|
|
81
|
+
var import_material2 = require("@mui/material");
|
|
82
|
+
var import_react_select = require("@xylabs/react-select");
|
|
83
|
+
|
|
84
|
+
// src/contexts/Schema/Context.ts
|
|
85
|
+
var import_react_shared = require("@xyo-network/react-shared");
|
|
86
|
+
var SchemaContext = (0, import_react_shared.createContextEx)();
|
|
87
|
+
|
|
88
|
+
// src/contexts/Schema/use.ts
|
|
89
|
+
var import_react_shared2 = require("@xyo-network/react-shared");
|
|
90
|
+
var useSchema = (required = false) => {
|
|
91
|
+
return (0, import_react_shared2.useContextEx)(SchemaContext, "Schema", required);
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
// src/components/SelectEx/SchemaSelectEx.tsx
|
|
95
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
96
|
+
var SchemaSelectEx = ({ onChange, ...props }) => {
|
|
97
|
+
const { schema, setSchema, schemaList } = useSchema(false);
|
|
98
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
99
|
+
import_react_select.SelectEx,
|
|
100
|
+
{
|
|
101
|
+
variant: "outlined",
|
|
102
|
+
size: "small",
|
|
103
|
+
value: schema ?? "none",
|
|
104
|
+
onChange: (event, child) => {
|
|
105
|
+
if (event.target.value !== schema) {
|
|
106
|
+
onChange?.(event, child);
|
|
107
|
+
setSchema?.(event.target.value);
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
renderValue: (value) => {
|
|
111
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { children: value === "none" ? "- None -" : value });
|
|
112
|
+
},
|
|
113
|
+
...props,
|
|
114
|
+
children: [
|
|
115
|
+
schemaList?.map((schema2, index) => {
|
|
116
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.MenuItem, { value: schema2, children: schema2 }, index);
|
|
117
|
+
}),
|
|
118
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.MenuItem, { value: "none", children: "- None -" }, "none")
|
|
119
|
+
]
|
|
120
|
+
}
|
|
121
|
+
);
|
|
122
|
+
};
|
|
123
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/index.ts","../../../src/components/Property/SchemaProperty.tsx","../../../src/components/SelectEx/SchemaSelectEx.tsx","../../../src/contexts/Schema/Context.ts","../../../src/contexts/Schema/use.ts"],"sourcesContent":["export * from './Property'\nexport * from './SelectEx'\n","import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n","import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,4BAAqG;AACrG,sBAA2B;AAC3B,gCAA+B;AAC/B,wBAAuB;AACvB,yBAAmD;AACnD,4BAAuD;AACvD,0BAA8C;AAC9C,mBAAqC;AAgDvB;AAvCd,IAAM,mBAAmB,CAAC,WAAoB;AAC5C,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAkC;AAC5D;AAAA;AAAA,IAEE,OAAO,YAAY;AACjB,UAAI,QAAQ;AACV,cAAMA,SAAQ,MAAM,gCAAY,SAAS,IAAI,MAAM;AACnD,YAAI,QAAQ,GAAG;AACb,mBAASA,MAAK;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACA,SAAO;AACT;AAEO,IAAM,qBAAiB;AAAA,EAC5B,CAAC,EAAE,gBAAgB,MAAM,wBAAwB,MAAM,iBAAiB,MAAM,YAAY,OAAO,GAAG,MAAM,GAAG,iBAAiB;AAC5H,UAAM,iBAAiB,iBAAiB,KAAK;AAC7C,UAAM,CAAC,WAAW,cAAc,QAAI,6BAA4B,MAAS;AACzE,UAAM,CAAC,QAAQ,WAAW,QAAI,6BAAyB,MAAS;AAEhE,UAAM,UAAU,CAAC,UAAsD,gBAAgB,UAAU;AAC/F;AAAA,QACE;AAAA,QACA;AAAA,QACA,KAAK,UAAU;AAAA,UACb;AAAA,UACA,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA,IACF;AAEA,WACE,6CAAC,kCAAS,KAAK,cAAc,OAAM,UAAS,OAAc,KAAI,gCAA+B,YAAyB,GAAG,OACtH;AAAA,eAAS,iBACR,mBAAmB,OACjB,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,cAAc,GAC5E,sDAAC,sBAAAC,aAAA,EAAgB,OAAM,WAAU,UAAS,WAAU,GACtD,IACE,mBAAmB,SACrB,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,cAAc,GAC5E,sDAAC,sBAAAA,aAAA,EAAgB,OAAM,YAAW,UAAS,WAAU,GACvD,IAEA,4CAAC,8BAAW,KAAI,uBAAsB,MAAK,SAAQ,QAAO,UAAS,MAAM,gBAAgB,MAAM,QAAQ,IACrG,sDAAC,sBAAAC,UAAA,EAAa,OAAM,WAAU,UAAS,WAAU,GACnD,IAEA;AAAA,MACH,QACC,4EACG;AAAA,wBACC,4CAAC,4BAAO,SAAQ,SAAQ,OAAM,QAAO,IAAI,EAAE,QAAQ,UAAU,GAC3D,sDAAC,uCAAc,KAAK,QAAQ,OAAc,OAAM,eAAc,SAAS,MAAM,QAAQ,WAAW,GAAG,GACrG,IAEA,4CAAC,uCAAc,KAAK,QAAQ,OAAc,OAAM,eAAc,SAAS,MAAM,QAAQ,WAAW,GAAG;AAAA,QAEpG,wBACC,4CAAC,8BAAW,KAAK,WAAW,MAAK,SAAQ,SAAS,MAAM,QAAQ,gBAAgB,IAAI,GAClF,sDAAC,sBAAAC,WAAA,EAAc,UAAS,WAAU,GACpC,IACE;AAAA,SACN,IACE;AAAA,OACN;AAAA,EAEJ;AACF;AAEA,eAAe,cAAc;;;ACxF7B,IAAAC,mBAAqC;AACrC,0BAAwC;;;ACDxC,0BAAgC;AAIzB,IAAM,oBAAgB,qCAAoC;;;ACJjE,IAAAC,uBAA6B;AAKtB,IAAM,YAAY,CAAC,WAAW,UAAU;AAC7C,aAAO,mCAAiC,eAAe,UAAU,QAAQ;AAC3E;;;AFII,IAAAC,sBAAA;AAJG,IAAM,iBAAgD,CAAC,EAAE,UAAU,GAAG,MAAM,MAAM;AACvF,QAAM,EAAE,QAAQ,WAAW,WAAW,IAAI,UAAU,KAAK;AAEzD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAO,UAAU;AAAA,MACjB,UAAU,CAAC,OAAO,UAAU;AAC1B,YAAI,MAAM,OAAO,UAAU,QAAQ;AACjC,qBAAW,OAAO,KAAK;AACvB,sBAAY,MAAM,OAAO,KAAK;AAAA,QAChC;AAAA,MACF;AAAA,MACA,aAAa,CAAC,UAAU;AACtB,eAAO,6CAAC,+BAAY,oBAAU,SAAS,aAAa,OAAM;AAAA,MAC5D;AAAA,MACC,GAAG;AAAA,MAEH;AAAA,oBAAY,IAAI,CAACC,SAAQ,UAAU;AAClC,iBACE,6CAAC,6BAAqB,OAAOA,SAC1B,UAAAA,WADY,KAEf;AAAA,QAEJ,CAAC;AAAA,QACD,6CAAC,6BAAoB,OAAM,QAAO,wBAApB,MAEd;AAAA;AAAA;AAAA,EACF;AAEJ;","names":["entry","NewReleasesIcon","VerifiedIcon","OpenInNewIcon","import_material","import_react_shared","import_jsx_runtime","schema"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
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/contexts/Schema/Context.ts
|
|
21
|
+
var Context_exports = {};
|
|
22
|
+
__export(Context_exports, {
|
|
23
|
+
SchemaContext: () => SchemaContext
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(Context_exports);
|
|
26
|
+
var import_react_shared = require("@xyo-network/react-shared");
|
|
27
|
+
var SchemaContext = (0, import_react_shared.createContextEx)();
|
|
28
|
+
//# sourceMappingURL=Context.cjs.map
|
package/dist/{node/contexts/Schema/Context.mjs.map → browser/contexts/Schema/Context.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/Schema/Context.ts"],"sourcesContent":["import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/Schema/Context.ts"],"sourcesContent":["import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAAgC;AAIzB,IAAM,oBAAgB,qCAAoC;","names":[]}
|