@xyo-network/react-embed 2.62.3 → 2.64.0-rc.1
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/index.js +6 -16
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +13 -12
- package/src/components/embed-card/card/EmbedCardHeader.tsx +1 -1
- package/src/components/embed-card/menu/EmbedMenu.tsx +1 -1
- package/src/components/embed-card/menu/JsonMenuItem.tsx +1 -1
- package/dist/docs.json +0 -4855
package/dist/index.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
2
|
var __defProp = Object.defineProperty;
|
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
6
|
var __export = (target, all) => {
|
|
9
7
|
for (var name in all)
|
|
@@ -17,14 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
15
|
}
|
|
18
16
|
return to;
|
|
19
17
|
};
|
|
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
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
19
|
|
|
30
20
|
// src/index.ts
|
|
@@ -72,7 +62,7 @@ var BusyCard = ({
|
|
|
72
62
|
};
|
|
73
63
|
|
|
74
64
|
// src/components/embed-card/card/EmbedCardHeader.tsx
|
|
75
|
-
var
|
|
65
|
+
var import_icons_material3 = require("@mui/icons-material");
|
|
76
66
|
var import_material5 = require("@mui/material");
|
|
77
67
|
var import_react_flexbox2 = require("@xylabs/react-flexbox");
|
|
78
68
|
|
|
@@ -231,19 +221,19 @@ var import_react_shared9 = require("@xyo-network/react-shared");
|
|
|
231
221
|
var useValidatePayload = () => (0, import_react_shared9.useContextEx)(ValidatePayloadContext, "ValidateSchema", true);
|
|
232
222
|
|
|
233
223
|
// src/components/embed-card/menu/EmbedMenu.tsx
|
|
234
|
-
var
|
|
224
|
+
var import_icons_material2 = require("@mui/icons-material");
|
|
235
225
|
var import_material4 = require("@mui/material");
|
|
236
226
|
var import_react5 = require("react");
|
|
237
227
|
|
|
238
228
|
// src/components/embed-card/menu/JsonMenuItem.tsx
|
|
239
|
-
var
|
|
229
|
+
var import_icons_material = require("@mui/icons-material");
|
|
240
230
|
var import_material3 = require("@mui/material");
|
|
241
231
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
242
232
|
var JsonMenuItem = (props) => {
|
|
243
233
|
const { huri } = useResolvePayload();
|
|
244
234
|
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, { children: huri ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_material3.MenuItem, { title: "Source Payload JSON", onClick: () => window.open(huri, "_blank"), ...props, children: [
|
|
245
235
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_material3.ListItemText, { sx: { mr: 1 }, children: "JSON" }),
|
|
246
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_material3.ListItemIcon, { sx: { justifyContent: "end" }, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
236
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_material3.ListItemIcon, { sx: { justifyContent: "end" }, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_icons_material.OpenInNew, { fontSize: "small" }) })
|
|
247
237
|
] }) : null });
|
|
248
238
|
};
|
|
249
239
|
|
|
@@ -259,7 +249,7 @@ var EmbedMenu = (props) => {
|
|
|
259
249
|
setAnchorEl(null);
|
|
260
250
|
};
|
|
261
251
|
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [
|
|
262
|
-
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_material4.IconButton, { onClick: handleClick, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
252
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_material4.IconButton, { onClick: handleClick, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_icons_material2.MoreVert, {}) }),
|
|
263
253
|
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_material4.Menu, { anchorEl, open, onClose: handleClose, PaperProps: { variant: "elevation" }, MenuListProps: { dense: true }, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(JsonMenuItem, {}) })
|
|
264
254
|
] });
|
|
265
255
|
};
|
|
@@ -280,7 +270,7 @@ var EmbedCardHeader = () => {
|
|
|
280
270
|
timestamp ? hideTimestamp && hideRefreshButton ? "" : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
281
271
|
import_material5.Chip,
|
|
282
272
|
{
|
|
283
|
-
avatar: hideRefreshButton ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, {}) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
273
|
+
avatar: hideRefreshButton ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, {}) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_icons_material3.Refresh, {}),
|
|
284
274
|
clickable: hideRefreshButton ? false : true,
|
|
285
275
|
onClick: refreshHuri,
|
|
286
276
|
label: hideTimestamp ? "" : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/components/embed-card/card/BusyCard.tsx","../src/components/embed-card/card/EmbedCardHeader.tsx","../src/contexts/EmbedPluginContext/Context.tsx","../src/contexts/EmbedPluginContext/Provider.tsx","../src/contexts/EmbedPluginContext/use.tsx","../src/contexts/RefreshPayloadContext/Provider.tsx","../src/contexts/RefreshPayloadContext/Context.tsx","../src/contexts/RefreshPayloadContext/use.tsx","../src/contexts/ResolvePayloadContext/Context.ts","../src/contexts/ResolvePayloadContext/Provider.tsx","../src/contexts/ResolvePayloadContext/use.tsx","../src/contexts/ValidatePayloadContext/Provider.tsx","../src/contexts/ValidatePayloadContext/Context.ts","../src/contexts/ValidatePayloadContext/use.tsx","../src/components/embed-card/menu/EmbedMenu.tsx","../src/components/embed-card/menu/JsonMenuItem.tsx","../src/components/embed-card/card/EmbedPluginCard.tsx","../src/components/controls/EmbedFormControl.tsx","../src/components/controls/ListModeSelect.tsx","../src/components/controls/RenderSelect.tsx","../src/components/embed-card/EmbedPluginCard.tsx","../src/components/EmbedPlugin.tsx","../src/components/EmbedResolver.tsx","../src/components/validation-alerts/ValidatePayload.tsx","../src/components/validation-alerts/ValidatePlugins.tsx","../src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx","../src/components/embed-card/error-handling/EmbedErrorCard.tsx"],"sourcesContent":["export * from './components'\nexport * from './contexts'\nexport * from './types'\n","import { Card, CardProps } from '@mui/material'\nimport { useBusyTiming } from '@xylabs/react-flexbox'\nimport {\n BusyCircularProgress,\n BusyCircularProgressProps,\n BusyLinearProgress,\n BusyLinearProgressProps,\n BusyVariant,\n WithChildren,\n} from '@xylabs/react-shared'\n\nexport interface BusyCardProps extends CardProps {\n busy?: boolean\n busyMinimum?: number\n busyVariant?: BusyVariant\n busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps\n}\n\nexport const BusyCard: React.FC<WithChildren<BusyCardProps>> = ({\n busy,\n busyMinimum = 500,\n busyVariant = 'circular',\n busyVariantProps,\n children,\n ...props\n}) => {\n const internalBusy = useBusyTiming(busy, busyMinimum)\n return (\n <Card {...props}>\n {children}\n {busyVariant === 'circular' && internalBusy ? <BusyCircularProgress {...(busyVariantProps as BusyCircularProgressProps)} /> : null}\n {busyVariant === 'linear' && internalBusy ? <BusyLinearProgress {...(busyVariantProps as BusyLinearProgressProps)} /> : null}\n </Card>\n )\n}\n","import RefreshIcon from '@mui/icons-material/Refresh'\nimport { Avatar, CardHeader, CardHeaderProps, Chip, Theme } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedMenu } from '../menu'\n\nexport const EmbedCardHeader: React.FC<CardHeaderProps> = () => {\n const { refreshHuri, huri } = useResolvePayload()\n const { activePlugin, timestampLabel, hideElementsConfig } = useEmbedPluginState()\n const { hideAvatar, hideTitle, hideRefreshButton, hideTimestamp, hideCardActions } = hideElementsConfig ?? {}\n //this is temporary so that we can add the ability to get a timestamp via diviner later\n const timestamp = Date.now()\n return (\n <CardHeader\n sx={{ flexWrap: 'wrap', rowGap: 1 }}\n avatar={\n hideAvatar ? (\n <></>\n ) : (\n <Avatar sx={{ bgcolor: (theme: Theme) => theme.palette.primary.main }} aria-label={activePlugin?.name}>\n {activePlugin?.name?.charAt(0)}\n </Avatar>\n )\n }\n action={\n <FlexRow flexWrap=\"wrap\" columnGap={0.5}>\n {timestamp ? (\n hideTimestamp && hideRefreshButton ? (\n ''\n ) : (\n <Chip\n avatar={hideRefreshButton ? <></> : <RefreshIcon />}\n clickable={hideRefreshButton ? false : true}\n onClick={refreshHuri}\n label={hideTimestamp ? '' : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`}\n />\n )\n ) : null}\n {/* Huri case is valid as long as the only menu item is JSON */}\n {hideCardActions || huri === undefined ? null : <EmbedMenu />}\n </FlexRow>\n }\n title={hideTitle ? '' : activePlugin?.name}\n />\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginState } from './State'\n\nexport const EmbedPluginContext = createContextEx<EmbedPluginState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { useEffect, useState } from 'react'\n\nimport { EmbedPluginContext } from './Context'\nimport { EmbedPluginBase } from './State'\n\nexport type EmbedPluginProviderProps = EmbedPluginBase\n\n/** Expose passed embed plugin props via context */\nexport const EmbedPluginProvider: React.FC<WithChildren<EmbedPluginProviderProps>> = ({\n children,\n refreshTitle,\n timestampLabel,\n hideElementsConfig,\n plugins,\n embedPluginConfig,\n}) => {\n const [activePlugin, setActivePlugin] = useState<PayloadRenderPlugin | undefined>(plugins ? plugins[0] : undefined)\n\n useEffect(() => {\n setActivePlugin(plugins ? plugins[0] : undefined)\n }, [plugins])\n\n return (\n <EmbedPluginContext.Provider\n value={{\n activePlugin,\n embedPluginConfig,\n hideElementsConfig,\n provided: true,\n refreshTitle,\n setActivePlugin,\n timestampLabel,\n }}\n >\n {children}\n </EmbedPluginContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginContext } from './Context'\n\nexport const useEmbedPluginState = () => useContextEx(EmbedPluginContext, 'EmbedPlugin', true)\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport interface RefreshPayloadProps {\n onRefresh?: () => void\n refreshPayload?: boolean\n}\n\nexport const RefreshPayloadProvider: React.FC<WithChildren<RefreshPayloadProps>> = ({ children, onRefresh, refreshPayload }) => {\n const [localRefreshPayload, setRefreshPayload] = useState(refreshPayload)\n\n return (\n <RefreshPayloadContext.Provider value={{ onRefresh, provided: true, refreshPayload: localRefreshPayload, setRefreshPayload }}>\n {children}\n </RefreshPayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadState } from './State'\n\nexport const RefreshPayloadContext = createContextEx<RefreshPayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport const useRefreshPayload = () => useContextEx(RefreshPayloadContext, 'RefreshPayload', true)\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadState } from './State'\n\nexport const ResolvePayloadContext = createContextEx<ResolvePayloadState>()\n","import { delay } from '@xylabs/delay'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { Huri } from '@xyo-network/huri'\nimport { ModuleError, ModuleErrorSchema, Payload } from '@xyo-network/payload-model'\nimport { useEffect, useState } from 'react'\n\nimport { useRefreshPayload } from '../RefreshPayloadContext'\nimport { ResolvePayloadContext } from './Context'\nimport { ResolvePayloadState } from './State'\n\nexport type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>\n\nexport const ResolvePayloadProvider: React.FC<WithChildren<ResolvePayloadProviderProps>> = ({ children, huriPayload }) => {\n const [payload, setPayload] = useState<Payload>()\n const [huri, setHuri] = useState<string>()\n const { refreshPayload, setRefreshPayload, onRefresh } = useRefreshPayload()\n\n useEffect(() => {\n typeof huriPayload === 'string' ? setHuri(huriPayload) : undefined\n if (typeof huriPayload === 'object') {\n setPayload(huriPayload)\n setRefreshPayload?.(true)\n }\n }, [huriPayload, setRefreshPayload])\n\n const [notFound, setNotFound] = useState<boolean>()\n const [huriError, setHuriError] = useState<ModuleError>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (huri && !refreshPayload) {\n try {\n const huriInstance = new Huri(huri)\n const result = await huriInstance.fetch()\n // ensure the busy state can stay for a moment to avoid flashing too quickly\n await delay(500)\n\n if (mounted()) {\n setNotFound(result === null)\n setPayload(result)\n setRefreshPayload?.(true)\n }\n } catch (e) {\n const error = e as Error\n setHuriError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n },\n [huri, payload, refreshPayload, setRefreshPayload],\n )\n\n const refreshHuri = () => {\n onRefresh?.()\n if (huri) {\n setRefreshPayload?.(false)\n }\n }\n\n return (\n <ResolvePayloadContext.Provider value={{ huri, huriError, notFound, payload, provided: true, refreshHuri, setPayload }}>\n {children}\n </ResolvePayloadContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadContext } from './Context'\n\nexport const useResolvePayload = () => useContextEx(ResolvePayloadContext, 'ResolvePayload', true)\n","import { Chip } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { SchemaCache, SchemaNameToValidatorMap } from '@xyo-network/schema-cache'\nimport { useState } from 'react'\n\nimport { useResolvePayload } from '../ResolvePayloadContext'\nimport { ValidatePayloadContext } from './Context'\n\nexport interface ValidatePayloadProviderProps {\n // Opt-in flag to validate payloads for the plugin(s)\n enabled?: boolean\n}\n\nexport const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>> = ({ children, enabled = false }) => {\n const { payload } = useResolvePayload()\n const [initialized, setInitialized] = useState(false)\n const [valid, setValid] = useState<boolean>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n if (payload && enabled) {\n await SchemaCache.instance.get(payload.schema)\n\n const possibleKnownSchema = payload.schema as keyof SchemaNameToValidatorMap\n\n if (SchemaCache.instance.validators[possibleKnownSchema]) {\n const validator = SchemaCache.instance.validators[possibleKnownSchema]\n setValid(validator?.(payload))\n }\n setInitialized(true)\n }\n },\n [payload, enabled],\n )\n\n return (\n <ValidatePayloadContext.Provider value={{ enabled, provided: true, schema: payload?.schema, validPayload: valid }}>\n {enabled ? <>{initialized ? children : <Chip label=\"Validating Payload...\" />}</> : children}\n </ValidatePayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadState } from './State'\n\nexport const ValidatePayloadContext = createContextEx<ValidatePayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadContext } from './Context'\n\nexport const useValidatePayload = () => useContextEx(ValidatePayloadContext, 'ValidateSchema', true)\n","import MoreVertIcon from '@mui/icons-material/MoreVert'\nimport { IconButton, IconButtonProps, Menu } from '@mui/material'\nimport { useState } from 'react'\n\nimport { JsonMenuItem } from './JsonMenuItem'\n\nexport const EmbedMenu: React.FC<IconButtonProps> = (props) => {\n // TODO - link to explore website\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return (\n <>\n <IconButton onClick={handleClick} {...props}>\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} PaperProps={{ variant: 'elevation' }} MenuListProps={{ dense: true }}>\n <JsonMenuItem />\n </Menu>\n </>\n )\n}\n","import OpenInNewIcon from '@mui/icons-material/OpenInNew'\nimport { ListItemIcon, ListItemText, MenuItem, MenuItemProps } from '@mui/material'\n\nimport { useResolvePayload } from '../../../contexts'\n\nexport const JsonMenuItem: React.FC<MenuItemProps> = (props) => {\n const { huri } = useResolvePayload()\n\n return (\n <>\n {huri ? (\n <MenuItem title=\"Source Payload JSON\" onClick={() => window.open(huri, '_blank')} {...props}>\n <ListItemText sx={{ mr: 1 }}>JSON</ListItemText>\n <ListItemIcon sx={{ justifyContent: 'end' }}>\n <OpenInNewIcon fontSize=\"small\" />\n </ListItemIcon>\n </MenuItem>\n ) : null}\n </>\n )\n}\n","import { CardContent } from '@mui/material'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { useListMode } from '@xyo-network/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedRenderSelect, ListModeSelectFormControl } from '../../controls'\nimport { BusyCard, BusyCardProps } from './BusyCard'\nimport { EmbedCardHeader } from './EmbedCardHeader'\n\nexport const EmbedPluginCard: React.FC<BusyCardProps> = ({ ...props }) => {\n const { payload } = useResolvePayload()\n const { activePlugin: ActivePlugin, plugins, hideElementsConfig } = useEmbedPluginState()\n const { listMode } = useListMode()\n const supportsListMode = ActivePlugin?.components?.box?.listModes?.length ?? 0 > 1\n\n return (\n <BusyCard {...props}>\n {hideElementsConfig?.hideCardHeader ? null : <EmbedCardHeader />}\n {/* Only show the row if the children are present */}\n {(plugins && plugins.length) || supportsListMode ? (\n <FlexGrowRow columnGap={2} rowGap={2} flexWrap=\"wrap\" pb={1}>\n {plugins && plugins.length > 1 ? <EmbedRenderSelect /> : null}\n {supportsListMode ? <ListModeSelectFormControl /> : null}\n </FlexGrowRow>\n ) : null}\n <CardContent sx={{ height: '100%' }}>\n {ActivePlugin ? <ActivePlugin.components.box.detailsBox payload={payload} {...(supportsListMode && { listMode })} /> : null}\n </CardContent>\n </BusyCard>\n )\n}\n","import { FormControl, FormControlProps, InputLabel } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedFormControlProps extends FormControlProps {\n formId?: string\n formLabel?: string\n}\n\nexport const EmbedFormControl: React.FC<WithChildren<EmbedFormControlProps>> = ({ formId, formLabel, children, ...props }) => {\n return (\n <FormControl {...props}>\n <InputLabel id={formId}>{formLabel}</InputLabel>\n {children}\n </FormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\nimport { ListMode, useListMode } from '@xyo-network/react-shared'\n\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst listModeSelectId = 'listmode-select-id'\nconst listModeSelectLabel = 'List Mode'\n\nexport const ListModeSelect: React.FC<SelectProps<ListMode>> = (props) => {\n const { listMode, setListMode } = useListMode()\n\n return (\n <Select<ListMode>\n value={(listMode ?? 'default') as ListMode}\n onChange={(event) => {\n setListMode?.(event.target.value as ListMode)\n }}\n {...props}\n >\n <MenuItem key=\"default\" value=\"default\">\n Default\n </MenuItem>\n <MenuItem key=\"table\" value=\"table\">\n Table\n </MenuItem>\n <MenuItem key=\"grid\" value=\"grid\">\n Grid\n </MenuItem>\n </Select>\n )\n}\n\nexport const ListModeSelectFormControl: React.FC<SelectProps<ListMode>> = (props) => {\n return (\n <EmbedFormControl formId={listModeSelectId} formLabel={listModeSelectLabel}>\n <ListModeSelect size=\"small\" label={listModeSelectLabel} labelId={listModeSelectId} {...props} />\n </EmbedFormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\n\nimport { useEmbedPluginState } from '../../contexts'\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst renderSelectId = 'render-select-id'\nconst renderSelectLabel = 'Renderer'\n\nexport const EmbedRenderSelect: React.FC<SelectProps> = (props) => {\n const { activePlugin, setActivePlugin, plugins } = useEmbedPluginState()\n return (\n <EmbedFormControl formId={renderSelectId} formLabel={renderSelectLabel}>\n <Select size=\"small\" value={activePlugin?.name} {...props}>\n {plugins?.map((plugin) => (\n <MenuItem value={plugin.name} key={plugin.name} onClick={() => setActivePlugin?.(plugin)}>\n {plugin.name}\n </MenuItem>\n ))}\n </Select>\n </EmbedFormControl>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useRefreshPayload, useResolvePayload } from '../../contexts'\nimport { EmbedPluginProps } from '../../types'\nimport { EmbedPluginInner } from '../EmbedPlugin'\nimport { BusyCardProps, EmbedPluginCard } from './card'\nimport { EmbedCardApiErrorRenderer } from './error-handling'\n\nexport interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {}\n\nexport const ApiEmbedPluginCard: React.FC<EmbedPluginCardProps> = ({ children, ...props }) => {\n const {\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n ...busyCardProps\n } = props\n\n return (\n <EmbedPluginInner\n {...{\n embedPluginConfig,\n hideElementsConfig,\n huriPayload,\n onRefresh,\n plugins,\n refreshTitle,\n timestampLabel,\n validateSchema,\n }}\n >\n <EmbedPluginCardInner {...busyCardProps} />\n {children}\n </EmbedPluginInner>\n )\n}\n\nexport const EmbedPluginCardInner: React.FC<BusyCardProps> = (props) => {\n const { payload, huriError } = useResolvePayload()\n const { refreshPayload } = useRefreshPayload()\n const theme = useTheme()\n\n return (\n <EmbedCardApiErrorRenderer xyoError={huriError}>\n <EmbedPluginCard\n elevation={3}\n variant=\"elevation\"\n busy={Boolean(!refreshPayload && payload)}\n busyVariantProps={{ style: { alignItems: 'start', paddingTop: theme.spacing(2), zIndex: 2 } }}\n sx={{ position: 'relative' }}\n {...props}\n />\n </EmbedCardApiErrorRenderer>\n )\n}\n\n/** @deprecated - use EmbedPluginCard and use CardProps instead of FlexBoxProps */\nexport const EmbedPlugin = EmbedPluginCard\n","import { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ErrorBoundary, ListModeProvider } from '@xyo-network/react-shared'\n\nimport { EmbedPluginProvider, RefreshPayloadProvider, ResolvePayloadProvider, ValidatePayloadProvider } from '../contexts'\nimport { EmbedPluginProps } from '../types'\nimport { EmbedResolver } from './EmbedResolver'\nimport { ValidatePayloadAlert, ValidatePluginsAlert } from './validation-alerts'\n\nexport const EmbedPluginInner: React.FC<WithChildren<EmbedPluginProps>> = ({\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n children,\n}) => {\n return (\n <ErrorBoundary>\n <EmbedPluginProvider\n refreshTitle={refreshTitle}\n timestampLabel={timestampLabel}\n hideElementsConfig={hideElementsConfig}\n plugins={plugins}\n embedPluginConfig={embedPluginConfig}\n >\n <WithResolvers onRefresh={onRefresh} huriPayload={huriPayload}>\n <WithValidators validateSchema={validateSchema}>\n <ListModeProvider defaultListMode={embedPluginConfig?.listMode}>{children}</ListModeProvider>\n </WithValidators>\n </WithResolvers>\n </EmbedPluginProvider>\n </ErrorBoundary>\n )\n}\n\ninterface WithResolversProps extends Pick<EmbedPluginProps, 'onRefresh' | 'huriPayload'>, FlexBoxProps {}\n\nconst WithResolvers: React.FC<WithChildren<WithResolversProps>> = ({ children, onRefresh, huriPayload }) => {\n return (\n <RefreshPayloadProvider onRefresh={onRefresh}>\n <ResolvePayloadProvider huriPayload={huriPayload}>\n <EmbedResolver>{children}</EmbedResolver>\n </ResolvePayloadProvider>\n </RefreshPayloadProvider>\n )\n}\n\nconst WithValidators: React.FC<WithChildren<{ validateSchema?: boolean }>> = ({ children, validateSchema }) => {\n return (\n <ValidatePayloadProvider enabled={validateSchema}>\n <ValidatePluginsAlert>\n <ValidatePayloadAlert>{children}</ValidatePayloadAlert>\n </ValidatePluginsAlert>\n </ValidatePayloadProvider>\n )\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { LoadResult } from '@xyo-network/react-shared'\n\nimport { useResolvePayload } from '../contexts'\n\nexport const EmbedResolver: React.FC<WithChildren> = ({ children }) => {\n const { payload, notFound, huriError } = useResolvePayload()\n\n return (\n <LoadResult searchResult={payload} notFound={!!notFound} error={!!huriError}>\n {children}\n </LoadResult>\n )\n}\n","import { Alert, AlertProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useValidatePayload } from '../../contexts'\n\nexport const ValidatePayloadAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { validPayload, enabled, schema } = useValidatePayload()\n\n if (enabled && validPayload === false) {\n return (\n <Alert severity=\"error\" title=\"Invalid Payload!\" {...props}>\n Payload schema claimed to be {schema} but failed to validate.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { Alert, AlertProps, AlertTitle } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../contexts'\n\nexport const ValidatePluginsAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { payload } = useResolvePayload()\n const { plugins } = useEmbedPluginState()\n\n if (payload && plugins?.length === 0) {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing plugins!</AlertTitle>Payload found but no plugins were present.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { CardProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ModuleError } from '@xyo-network/payload-model'\nimport { ErrorAlert, ErrorRender } from '@xyo-network/react-error'\n\nimport { EmbedErrorCard } from './EmbedErrorCard'\n\ninterface EmbedCardApiErrorRendererProps extends CardProps {\n xyoError?: ModuleError\n}\n\nexport const EmbedCardApiErrorRenderer: React.FC<WithChildren<EmbedCardApiErrorRendererProps>> = ({ xyoError, children, ...props }) => {\n return (\n <ErrorRender error={xyoError} noReAuth noErrorDisplay customError={<CustomApiErrorCard xyoError={xyoError} {...props} />}>\n {children}\n </ErrorRender>\n )\n}\n\nconst CustomApiErrorCard: React.FC<EmbedCardApiErrorRendererProps> = ({ xyoError, ...props }) => {\n return (\n <EmbedErrorCard {...props}>\n <ErrorAlert error={xyoError} />\n </EmbedErrorCard>\n )\n}\n","import { Alert, AlertProps, AlertTitle, Card, CardContent, CardProps, Typography } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedErrorCardBaseProps {\n alertProps?: AlertProps\n error?: Error\n hideErrorDetails?: boolean\n}\n\ninterface EmbedErrorCardProps extends EmbedErrorCardBaseProps, CardProps {\n alertProps?: AlertProps\n error?: Error\n}\n\nexport const EmbedErrorCard: React.FC<WithChildren<EmbedErrorCardProps>> = (props) => {\n const { alertProps, error, hideErrorDetails = true, children, ...cardProps } = props\n const errorProps = { alertProps, error, hideErrorDetails }\n return (\n <Card {...cardProps}>\n <CardContent>{children ?? <DefaultErrorAlert {...errorProps} />}</CardContent>\n </Card>\n )\n}\n\nconst DefaultErrorAlert: React.FC<EmbedErrorCardBaseProps> = ({ alertProps, hideErrorDetails, error }) => {\n return (\n <Alert severity=\"error\" {...alertProps}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {!hideErrorDetails && error ? (\n <>\n <Typography variant=\"caption\">Error: </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n </>\n ) : (\n <Typography variant=\"caption\" fontSize=\"small\">\n Error Loading Plugin\n </Typography>\n )}\n </Alert>\n )\n}\n"],"mappings":"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","names":["import_material","import_react_flexbox","import_react_shared","import_jsx_runtime","import_react_shared","import_react","import_react_shared","import_jsx_runtime","import_react_shared","import_react_shared","import_react","import_jsx_runtime","import_react_shared","import_material","import_react_async_effect","import_react","import_react_shared","import_jsx_runtime","import_react_shared","import_material","import_react","import_material","import_jsx_runtime","OpenInNewIcon","import_jsx_runtime","MoreVertIcon","import_jsx_runtime","RefreshIcon","import_material","import_react_flexbox","import_react_shared","import_material","import_jsx_runtime","import_material","import_react_shared","import_jsx_runtime","import_material","import_jsx_runtime","import_jsx_runtime","import_material","import_react_shared","import_react_shared","import_jsx_runtime","import_material","import_jsx_runtime","import_material","import_jsx_runtime","import_jsx_runtime","import_material","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/components/embed-card/card/BusyCard.tsx","../src/components/embed-card/card/EmbedCardHeader.tsx","../src/contexts/EmbedPluginContext/Context.tsx","../src/contexts/EmbedPluginContext/Provider.tsx","../src/contexts/EmbedPluginContext/use.tsx","../src/contexts/RefreshPayloadContext/Provider.tsx","../src/contexts/RefreshPayloadContext/Context.tsx","../src/contexts/RefreshPayloadContext/use.tsx","../src/contexts/ResolvePayloadContext/Context.ts","../src/contexts/ResolvePayloadContext/Provider.tsx","../src/contexts/ResolvePayloadContext/use.tsx","../src/contexts/ValidatePayloadContext/Provider.tsx","../src/contexts/ValidatePayloadContext/Context.ts","../src/contexts/ValidatePayloadContext/use.tsx","../src/components/embed-card/menu/EmbedMenu.tsx","../src/components/embed-card/menu/JsonMenuItem.tsx","../src/components/embed-card/card/EmbedPluginCard.tsx","../src/components/controls/EmbedFormControl.tsx","../src/components/controls/ListModeSelect.tsx","../src/components/controls/RenderSelect.tsx","../src/components/embed-card/EmbedPluginCard.tsx","../src/components/EmbedPlugin.tsx","../src/components/EmbedResolver.tsx","../src/components/validation-alerts/ValidatePayload.tsx","../src/components/validation-alerts/ValidatePlugins.tsx","../src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx","../src/components/embed-card/error-handling/EmbedErrorCard.tsx"],"sourcesContent":["export * from './components'\nexport * from './contexts'\nexport * from './types'\n","import { Card, CardProps } from '@mui/material'\nimport { useBusyTiming } from '@xylabs/react-flexbox'\nimport {\n BusyCircularProgress,\n BusyCircularProgressProps,\n BusyLinearProgress,\n BusyLinearProgressProps,\n BusyVariant,\n WithChildren,\n} from '@xylabs/react-shared'\n\nexport interface BusyCardProps extends CardProps {\n busy?: boolean\n busyMinimum?: number\n busyVariant?: BusyVariant\n busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps\n}\n\nexport const BusyCard: React.FC<WithChildren<BusyCardProps>> = ({\n busy,\n busyMinimum = 500,\n busyVariant = 'circular',\n busyVariantProps,\n children,\n ...props\n}) => {\n const internalBusy = useBusyTiming(busy, busyMinimum)\n return (\n <Card {...props}>\n {children}\n {busyVariant === 'circular' && internalBusy ? <BusyCircularProgress {...(busyVariantProps as BusyCircularProgressProps)} /> : null}\n {busyVariant === 'linear' && internalBusy ? <BusyLinearProgress {...(busyVariantProps as BusyLinearProgressProps)} /> : null}\n </Card>\n )\n}\n","import { Refresh as RefreshIcon } from '@mui/icons-material'\nimport { Avatar, CardHeader, CardHeaderProps, Chip, Theme } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedMenu } from '../menu'\n\nexport const EmbedCardHeader: React.FC<CardHeaderProps> = () => {\n const { refreshHuri, huri } = useResolvePayload()\n const { activePlugin, timestampLabel, hideElementsConfig } = useEmbedPluginState()\n const { hideAvatar, hideTitle, hideRefreshButton, hideTimestamp, hideCardActions } = hideElementsConfig ?? {}\n //this is temporary so that we can add the ability to get a timestamp via diviner later\n const timestamp = Date.now()\n return (\n <CardHeader\n sx={{ flexWrap: 'wrap', rowGap: 1 }}\n avatar={\n hideAvatar ? (\n <></>\n ) : (\n <Avatar sx={{ bgcolor: (theme: Theme) => theme.palette.primary.main }} aria-label={activePlugin?.name}>\n {activePlugin?.name?.charAt(0)}\n </Avatar>\n )\n }\n action={\n <FlexRow flexWrap=\"wrap\" columnGap={0.5}>\n {timestamp ? (\n hideTimestamp && hideRefreshButton ? (\n ''\n ) : (\n <Chip\n avatar={hideRefreshButton ? <></> : <RefreshIcon />}\n clickable={hideRefreshButton ? false : true}\n onClick={refreshHuri}\n label={hideTimestamp ? '' : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`}\n />\n )\n ) : null}\n {/* Huri case is valid as long as the only menu item is JSON */}\n {hideCardActions || huri === undefined ? null : <EmbedMenu />}\n </FlexRow>\n }\n title={hideTitle ? '' : activePlugin?.name}\n />\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginState } from './State'\n\nexport const EmbedPluginContext = createContextEx<EmbedPluginState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { useEffect, useState } from 'react'\n\nimport { EmbedPluginContext } from './Context'\nimport { EmbedPluginBase } from './State'\n\nexport type EmbedPluginProviderProps = EmbedPluginBase\n\n/** Expose passed embed plugin props via context */\nexport const EmbedPluginProvider: React.FC<WithChildren<EmbedPluginProviderProps>> = ({\n children,\n refreshTitle,\n timestampLabel,\n hideElementsConfig,\n plugins,\n embedPluginConfig,\n}) => {\n const [activePlugin, setActivePlugin] = useState<PayloadRenderPlugin | undefined>(plugins ? plugins[0] : undefined)\n\n useEffect(() => {\n setActivePlugin(plugins ? plugins[0] : undefined)\n }, [plugins])\n\n return (\n <EmbedPluginContext.Provider\n value={{\n activePlugin,\n embedPluginConfig,\n hideElementsConfig,\n provided: true,\n refreshTitle,\n setActivePlugin,\n timestampLabel,\n }}\n >\n {children}\n </EmbedPluginContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginContext } from './Context'\n\nexport const useEmbedPluginState = () => useContextEx(EmbedPluginContext, 'EmbedPlugin', true)\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport interface RefreshPayloadProps {\n onRefresh?: () => void\n refreshPayload?: boolean\n}\n\nexport const RefreshPayloadProvider: React.FC<WithChildren<RefreshPayloadProps>> = ({ children, onRefresh, refreshPayload }) => {\n const [localRefreshPayload, setRefreshPayload] = useState(refreshPayload)\n\n return (\n <RefreshPayloadContext.Provider value={{ onRefresh, provided: true, refreshPayload: localRefreshPayload, setRefreshPayload }}>\n {children}\n </RefreshPayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadState } from './State'\n\nexport const RefreshPayloadContext = createContextEx<RefreshPayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport const useRefreshPayload = () => useContextEx(RefreshPayloadContext, 'RefreshPayload', true)\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadState } from './State'\n\nexport const ResolvePayloadContext = createContextEx<ResolvePayloadState>()\n","import { delay } from '@xylabs/delay'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { Huri } from '@xyo-network/huri'\nimport { ModuleError, ModuleErrorSchema, Payload } from '@xyo-network/payload-model'\nimport { useEffect, useState } from 'react'\n\nimport { useRefreshPayload } from '../RefreshPayloadContext'\nimport { ResolvePayloadContext } from './Context'\nimport { ResolvePayloadState } from './State'\n\nexport type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>\n\nexport const ResolvePayloadProvider: React.FC<WithChildren<ResolvePayloadProviderProps>> = ({ children, huriPayload }) => {\n const [payload, setPayload] = useState<Payload>()\n const [huri, setHuri] = useState<string>()\n const { refreshPayload, setRefreshPayload, onRefresh } = useRefreshPayload()\n\n useEffect(() => {\n typeof huriPayload === 'string' ? setHuri(huriPayload) : undefined\n if (typeof huriPayload === 'object') {\n setPayload(huriPayload)\n setRefreshPayload?.(true)\n }\n }, [huriPayload, setRefreshPayload])\n\n const [notFound, setNotFound] = useState<boolean>()\n const [huriError, setHuriError] = useState<ModuleError>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (huri && !refreshPayload) {\n try {\n const huriInstance = new Huri(huri)\n const result = await huriInstance.fetch()\n // ensure the busy state can stay for a moment to avoid flashing too quickly\n await delay(500)\n\n if (mounted()) {\n setNotFound(result === null)\n setPayload(result)\n setRefreshPayload?.(true)\n }\n } catch (e) {\n const error = e as Error\n setHuriError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n },\n [huri, payload, refreshPayload, setRefreshPayload],\n )\n\n const refreshHuri = () => {\n onRefresh?.()\n if (huri) {\n setRefreshPayload?.(false)\n }\n }\n\n return (\n <ResolvePayloadContext.Provider value={{ huri, huriError, notFound, payload, provided: true, refreshHuri, setPayload }}>\n {children}\n </ResolvePayloadContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadContext } from './Context'\n\nexport const useResolvePayload = () => useContextEx(ResolvePayloadContext, 'ResolvePayload', true)\n","import { Chip } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { SchemaCache, SchemaNameToValidatorMap } from '@xyo-network/schema-cache'\nimport { useState } from 'react'\n\nimport { useResolvePayload } from '../ResolvePayloadContext'\nimport { ValidatePayloadContext } from './Context'\n\nexport interface ValidatePayloadProviderProps {\n // Opt-in flag to validate payloads for the plugin(s)\n enabled?: boolean\n}\n\nexport const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>> = ({ children, enabled = false }) => {\n const { payload } = useResolvePayload()\n const [initialized, setInitialized] = useState(false)\n const [valid, setValid] = useState<boolean>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n if (payload && enabled) {\n await SchemaCache.instance.get(payload.schema)\n\n const possibleKnownSchema = payload.schema as keyof SchemaNameToValidatorMap\n\n if (SchemaCache.instance.validators[possibleKnownSchema]) {\n const validator = SchemaCache.instance.validators[possibleKnownSchema]\n setValid(validator?.(payload))\n }\n setInitialized(true)\n }\n },\n [payload, enabled],\n )\n\n return (\n <ValidatePayloadContext.Provider value={{ enabled, provided: true, schema: payload?.schema, validPayload: valid }}>\n {enabled ? <>{initialized ? children : <Chip label=\"Validating Payload...\" />}</> : children}\n </ValidatePayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadState } from './State'\n\nexport const ValidatePayloadContext = createContextEx<ValidatePayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadContext } from './Context'\n\nexport const useValidatePayload = () => useContextEx(ValidatePayloadContext, 'ValidateSchema', true)\n","import { MoreVert as MoreVertIcon } from '@mui/icons-material'\nimport { IconButton, IconButtonProps, Menu } from '@mui/material'\nimport { useState } from 'react'\n\nimport { JsonMenuItem } from './JsonMenuItem'\n\nexport const EmbedMenu: React.FC<IconButtonProps> = (props) => {\n // TODO - link to explore website\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return (\n <>\n <IconButton onClick={handleClick} {...props}>\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} PaperProps={{ variant: 'elevation' }} MenuListProps={{ dense: true }}>\n <JsonMenuItem />\n </Menu>\n </>\n )\n}\n","import { OpenInNew as OpenInNewIcon } from '@mui/icons-material'\nimport { ListItemIcon, ListItemText, MenuItem, MenuItemProps } from '@mui/material'\n\nimport { useResolvePayload } from '../../../contexts'\n\nexport const JsonMenuItem: React.FC<MenuItemProps> = (props) => {\n const { huri } = useResolvePayload()\n\n return (\n <>\n {huri ? (\n <MenuItem title=\"Source Payload JSON\" onClick={() => window.open(huri, '_blank')} {...props}>\n <ListItemText sx={{ mr: 1 }}>JSON</ListItemText>\n <ListItemIcon sx={{ justifyContent: 'end' }}>\n <OpenInNewIcon fontSize=\"small\" />\n </ListItemIcon>\n </MenuItem>\n ) : null}\n </>\n )\n}\n","import { CardContent } from '@mui/material'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { useListMode } from '@xyo-network/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedRenderSelect, ListModeSelectFormControl } from '../../controls'\nimport { BusyCard, BusyCardProps } from './BusyCard'\nimport { EmbedCardHeader } from './EmbedCardHeader'\n\nexport const EmbedPluginCard: React.FC<BusyCardProps> = ({ ...props }) => {\n const { payload } = useResolvePayload()\n const { activePlugin: ActivePlugin, plugins, hideElementsConfig } = useEmbedPluginState()\n const { listMode } = useListMode()\n const supportsListMode = ActivePlugin?.components?.box?.listModes?.length ?? 0 > 1\n\n return (\n <BusyCard {...props}>\n {hideElementsConfig?.hideCardHeader ? null : <EmbedCardHeader />}\n {/* Only show the row if the children are present */}\n {(plugins && plugins.length) || supportsListMode ? (\n <FlexGrowRow columnGap={2} rowGap={2} flexWrap=\"wrap\" pb={1}>\n {plugins && plugins.length > 1 ? <EmbedRenderSelect /> : null}\n {supportsListMode ? <ListModeSelectFormControl /> : null}\n </FlexGrowRow>\n ) : null}\n <CardContent sx={{ height: '100%' }}>\n {ActivePlugin ? <ActivePlugin.components.box.detailsBox payload={payload} {...(supportsListMode && { listMode })} /> : null}\n </CardContent>\n </BusyCard>\n )\n}\n","import { FormControl, FormControlProps, InputLabel } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedFormControlProps extends FormControlProps {\n formId?: string\n formLabel?: string\n}\n\nexport const EmbedFormControl: React.FC<WithChildren<EmbedFormControlProps>> = ({ formId, formLabel, children, ...props }) => {\n return (\n <FormControl {...props}>\n <InputLabel id={formId}>{formLabel}</InputLabel>\n {children}\n </FormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\nimport { ListMode, useListMode } from '@xyo-network/react-shared'\n\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst listModeSelectId = 'listmode-select-id'\nconst listModeSelectLabel = 'List Mode'\n\nexport const ListModeSelect: React.FC<SelectProps<ListMode>> = (props) => {\n const { listMode, setListMode } = useListMode()\n\n return (\n <Select<ListMode>\n value={(listMode ?? 'default') as ListMode}\n onChange={(event) => {\n setListMode?.(event.target.value as ListMode)\n }}\n {...props}\n >\n <MenuItem key=\"default\" value=\"default\">\n Default\n </MenuItem>\n <MenuItem key=\"table\" value=\"table\">\n Table\n </MenuItem>\n <MenuItem key=\"grid\" value=\"grid\">\n Grid\n </MenuItem>\n </Select>\n )\n}\n\nexport const ListModeSelectFormControl: React.FC<SelectProps<ListMode>> = (props) => {\n return (\n <EmbedFormControl formId={listModeSelectId} formLabel={listModeSelectLabel}>\n <ListModeSelect size=\"small\" label={listModeSelectLabel} labelId={listModeSelectId} {...props} />\n </EmbedFormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\n\nimport { useEmbedPluginState } from '../../contexts'\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst renderSelectId = 'render-select-id'\nconst renderSelectLabel = 'Renderer'\n\nexport const EmbedRenderSelect: React.FC<SelectProps> = (props) => {\n const { activePlugin, setActivePlugin, plugins } = useEmbedPluginState()\n return (\n <EmbedFormControl formId={renderSelectId} formLabel={renderSelectLabel}>\n <Select size=\"small\" value={activePlugin?.name} {...props}>\n {plugins?.map((plugin) => (\n <MenuItem value={plugin.name} key={plugin.name} onClick={() => setActivePlugin?.(plugin)}>\n {plugin.name}\n </MenuItem>\n ))}\n </Select>\n </EmbedFormControl>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useRefreshPayload, useResolvePayload } from '../../contexts'\nimport { EmbedPluginProps } from '../../types'\nimport { EmbedPluginInner } from '../EmbedPlugin'\nimport { BusyCardProps, EmbedPluginCard } from './card'\nimport { EmbedCardApiErrorRenderer } from './error-handling'\n\nexport interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {}\n\nexport const ApiEmbedPluginCard: React.FC<EmbedPluginCardProps> = ({ children, ...props }) => {\n const {\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n ...busyCardProps\n } = props\n\n return (\n <EmbedPluginInner\n {...{\n embedPluginConfig,\n hideElementsConfig,\n huriPayload,\n onRefresh,\n plugins,\n refreshTitle,\n timestampLabel,\n validateSchema,\n }}\n >\n <EmbedPluginCardInner {...busyCardProps} />\n {children}\n </EmbedPluginInner>\n )\n}\n\nexport const EmbedPluginCardInner: React.FC<BusyCardProps> = (props) => {\n const { payload, huriError } = useResolvePayload()\n const { refreshPayload } = useRefreshPayload()\n const theme = useTheme()\n\n return (\n <EmbedCardApiErrorRenderer xyoError={huriError}>\n <EmbedPluginCard\n elevation={3}\n variant=\"elevation\"\n busy={Boolean(!refreshPayload && payload)}\n busyVariantProps={{ style: { alignItems: 'start', paddingTop: theme.spacing(2), zIndex: 2 } }}\n sx={{ position: 'relative' }}\n {...props}\n />\n </EmbedCardApiErrorRenderer>\n )\n}\n\n/** @deprecated - use EmbedPluginCard and use CardProps instead of FlexBoxProps */\nexport const EmbedPlugin = EmbedPluginCard\n","import { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ErrorBoundary, ListModeProvider } from '@xyo-network/react-shared'\n\nimport { EmbedPluginProvider, RefreshPayloadProvider, ResolvePayloadProvider, ValidatePayloadProvider } from '../contexts'\nimport { EmbedPluginProps } from '../types'\nimport { EmbedResolver } from './EmbedResolver'\nimport { ValidatePayloadAlert, ValidatePluginsAlert } from './validation-alerts'\n\nexport const EmbedPluginInner: React.FC<WithChildren<EmbedPluginProps>> = ({\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n children,\n}) => {\n return (\n <ErrorBoundary>\n <EmbedPluginProvider\n refreshTitle={refreshTitle}\n timestampLabel={timestampLabel}\n hideElementsConfig={hideElementsConfig}\n plugins={plugins}\n embedPluginConfig={embedPluginConfig}\n >\n <WithResolvers onRefresh={onRefresh} huriPayload={huriPayload}>\n <WithValidators validateSchema={validateSchema}>\n <ListModeProvider defaultListMode={embedPluginConfig?.listMode}>{children}</ListModeProvider>\n </WithValidators>\n </WithResolvers>\n </EmbedPluginProvider>\n </ErrorBoundary>\n )\n}\n\ninterface WithResolversProps extends Pick<EmbedPluginProps, 'onRefresh' | 'huriPayload'>, FlexBoxProps {}\n\nconst WithResolvers: React.FC<WithChildren<WithResolversProps>> = ({ children, onRefresh, huriPayload }) => {\n return (\n <RefreshPayloadProvider onRefresh={onRefresh}>\n <ResolvePayloadProvider huriPayload={huriPayload}>\n <EmbedResolver>{children}</EmbedResolver>\n </ResolvePayloadProvider>\n </RefreshPayloadProvider>\n )\n}\n\nconst WithValidators: React.FC<WithChildren<{ validateSchema?: boolean }>> = ({ children, validateSchema }) => {\n return (\n <ValidatePayloadProvider enabled={validateSchema}>\n <ValidatePluginsAlert>\n <ValidatePayloadAlert>{children}</ValidatePayloadAlert>\n </ValidatePluginsAlert>\n </ValidatePayloadProvider>\n )\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { LoadResult } from '@xyo-network/react-shared'\n\nimport { useResolvePayload } from '../contexts'\n\nexport const EmbedResolver: React.FC<WithChildren> = ({ children }) => {\n const { payload, notFound, huriError } = useResolvePayload()\n\n return (\n <LoadResult searchResult={payload} notFound={!!notFound} error={!!huriError}>\n {children}\n </LoadResult>\n )\n}\n","import { Alert, AlertProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useValidatePayload } from '../../contexts'\n\nexport const ValidatePayloadAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { validPayload, enabled, schema } = useValidatePayload()\n\n if (enabled && validPayload === false) {\n return (\n <Alert severity=\"error\" title=\"Invalid Payload!\" {...props}>\n Payload schema claimed to be {schema} but failed to validate.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { Alert, AlertProps, AlertTitle } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../contexts'\n\nexport const ValidatePluginsAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { payload } = useResolvePayload()\n const { plugins } = useEmbedPluginState()\n\n if (payload && plugins?.length === 0) {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing plugins!</AlertTitle>Payload found but no plugins were present.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { CardProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ModuleError } from '@xyo-network/payload-model'\nimport { ErrorAlert, ErrorRender } from '@xyo-network/react-error'\n\nimport { EmbedErrorCard } from './EmbedErrorCard'\n\ninterface EmbedCardApiErrorRendererProps extends CardProps {\n xyoError?: ModuleError\n}\n\nexport const EmbedCardApiErrorRenderer: React.FC<WithChildren<EmbedCardApiErrorRendererProps>> = ({ xyoError, children, ...props }) => {\n return (\n <ErrorRender error={xyoError} noReAuth noErrorDisplay customError={<CustomApiErrorCard xyoError={xyoError} {...props} />}>\n {children}\n </ErrorRender>\n )\n}\n\nconst CustomApiErrorCard: React.FC<EmbedCardApiErrorRendererProps> = ({ xyoError, ...props }) => {\n return (\n <EmbedErrorCard {...props}>\n <ErrorAlert error={xyoError} />\n </EmbedErrorCard>\n )\n}\n","import { Alert, AlertProps, AlertTitle, Card, CardContent, CardProps, Typography } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedErrorCardBaseProps {\n alertProps?: AlertProps\n error?: Error\n hideErrorDetails?: boolean\n}\n\ninterface EmbedErrorCardProps extends EmbedErrorCardBaseProps, CardProps {\n alertProps?: AlertProps\n error?: Error\n}\n\nexport const EmbedErrorCard: React.FC<WithChildren<EmbedErrorCardProps>> = (props) => {\n const { alertProps, error, hideErrorDetails = true, children, ...cardProps } = props\n const errorProps = { alertProps, error, hideErrorDetails }\n return (\n <Card {...cardProps}>\n <CardContent>{children ?? <DefaultErrorAlert {...errorProps} />}</CardContent>\n </Card>\n )\n}\n\nconst DefaultErrorAlert: React.FC<EmbedErrorCardBaseProps> = ({ alertProps, hideErrorDetails, error }) => {\n return (\n <Alert severity=\"error\" {...alertProps}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {!hideErrorDetails && error ? (\n <>\n <Typography variant=\"caption\">Error: </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n </>\n ) : (\n <Typography variant=\"caption\" fontSize=\"small\">\n Error Loading Plugin\n </Typography>\n )}\n </Alert>\n )\n}\n"],"mappings":"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","names":["import_icons_material","import_material","import_react_flexbox","import_react_shared","import_jsx_runtime","import_react_shared","import_react","import_react_shared","import_jsx_runtime","import_react_shared","import_react_shared","import_react","import_jsx_runtime","import_react_shared","import_material","import_react_async_effect","import_react","import_react_shared","import_jsx_runtime","import_react_shared","import_icons_material","import_material","import_react","import_material","import_jsx_runtime","OpenInNewIcon","import_jsx_runtime","MoreVertIcon","import_jsx_runtime","RefreshIcon","import_material","import_react_flexbox","import_react_shared","import_material","import_jsx_runtime","import_material","import_react_shared","import_jsx_runtime","import_material","import_jsx_runtime","import_jsx_runtime","import_material","import_react_shared","import_react_shared","import_jsx_runtime","import_material","import_jsx_runtime","import_material","import_jsx_runtime","import_jsx_runtime","import_material","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime"]}
|
package/dist/index.mjs
CHANGED
|
@@ -23,7 +23,7 @@ var BusyCard = ({
|
|
|
23
23
|
};
|
|
24
24
|
|
|
25
25
|
// src/components/embed-card/card/EmbedCardHeader.tsx
|
|
26
|
-
import RefreshIcon from "@mui/icons-material
|
|
26
|
+
import { Refresh as RefreshIcon } from "@mui/icons-material";
|
|
27
27
|
import { Avatar, CardHeader, Chip as Chip2 } from "@mui/material";
|
|
28
28
|
import { FlexRow } from "@xylabs/react-flexbox";
|
|
29
29
|
|
|
@@ -182,12 +182,12 @@ import { useContextEx as useContextEx4 } from "@xyo-network/react-shared";
|
|
|
182
182
|
var useValidatePayload = () => useContextEx4(ValidatePayloadContext, "ValidateSchema", true);
|
|
183
183
|
|
|
184
184
|
// src/components/embed-card/menu/EmbedMenu.tsx
|
|
185
|
-
import MoreVertIcon from "@mui/icons-material
|
|
185
|
+
import { MoreVert as MoreVertIcon } from "@mui/icons-material";
|
|
186
186
|
import { IconButton, Menu } from "@mui/material";
|
|
187
187
|
import { useState as useState5 } from "react";
|
|
188
188
|
|
|
189
189
|
// src/components/embed-card/menu/JsonMenuItem.tsx
|
|
190
|
-
import OpenInNewIcon from "@mui/icons-material
|
|
190
|
+
import { OpenInNew as OpenInNewIcon } from "@mui/icons-material";
|
|
191
191
|
import { ListItemIcon, ListItemText, MenuItem } from "@mui/material";
|
|
192
192
|
import { Fragment as Fragment2, jsx as jsx6, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
193
193
|
var JsonMenuItem = (props) => {
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/embed-card/card/BusyCard.tsx","../src/components/embed-card/card/EmbedCardHeader.tsx","../src/contexts/EmbedPluginContext/Context.tsx","../src/contexts/EmbedPluginContext/Provider.tsx","../src/contexts/EmbedPluginContext/use.tsx","../src/contexts/RefreshPayloadContext/Provider.tsx","../src/contexts/RefreshPayloadContext/Context.tsx","../src/contexts/RefreshPayloadContext/use.tsx","../src/contexts/ResolvePayloadContext/Context.ts","../src/contexts/ResolvePayloadContext/Provider.tsx","../src/contexts/ResolvePayloadContext/use.tsx","../src/contexts/ValidatePayloadContext/Provider.tsx","../src/contexts/ValidatePayloadContext/Context.ts","../src/contexts/ValidatePayloadContext/use.tsx","../src/components/embed-card/menu/EmbedMenu.tsx","../src/components/embed-card/menu/JsonMenuItem.tsx","../src/components/embed-card/card/EmbedPluginCard.tsx","../src/components/controls/EmbedFormControl.tsx","../src/components/controls/ListModeSelect.tsx","../src/components/controls/RenderSelect.tsx","../src/components/embed-card/EmbedPluginCard.tsx","../src/components/EmbedPlugin.tsx","../src/components/EmbedResolver.tsx","../src/components/validation-alerts/ValidatePayload.tsx","../src/components/validation-alerts/ValidatePlugins.tsx","../src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx","../src/components/embed-card/error-handling/EmbedErrorCard.tsx"],"sourcesContent":["import { Card, CardProps } from '@mui/material'\nimport { useBusyTiming } from '@xylabs/react-flexbox'\nimport {\n BusyCircularProgress,\n BusyCircularProgressProps,\n BusyLinearProgress,\n BusyLinearProgressProps,\n BusyVariant,\n WithChildren,\n} from '@xylabs/react-shared'\n\nexport interface BusyCardProps extends CardProps {\n busy?: boolean\n busyMinimum?: number\n busyVariant?: BusyVariant\n busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps\n}\n\nexport const BusyCard: React.FC<WithChildren<BusyCardProps>> = ({\n busy,\n busyMinimum = 500,\n busyVariant = 'circular',\n busyVariantProps,\n children,\n ...props\n}) => {\n const internalBusy = useBusyTiming(busy, busyMinimum)\n return (\n <Card {...props}>\n {children}\n {busyVariant === 'circular' && internalBusy ? <BusyCircularProgress {...(busyVariantProps as BusyCircularProgressProps)} /> : null}\n {busyVariant === 'linear' && internalBusy ? <BusyLinearProgress {...(busyVariantProps as BusyLinearProgressProps)} /> : null}\n </Card>\n )\n}\n","import RefreshIcon from '@mui/icons-material/Refresh'\nimport { Avatar, CardHeader, CardHeaderProps, Chip, Theme } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedMenu } from '../menu'\n\nexport const EmbedCardHeader: React.FC<CardHeaderProps> = () => {\n const { refreshHuri, huri } = useResolvePayload()\n const { activePlugin, timestampLabel, hideElementsConfig } = useEmbedPluginState()\n const { hideAvatar, hideTitle, hideRefreshButton, hideTimestamp, hideCardActions } = hideElementsConfig ?? {}\n //this is temporary so that we can add the ability to get a timestamp via diviner later\n const timestamp = Date.now()\n return (\n <CardHeader\n sx={{ flexWrap: 'wrap', rowGap: 1 }}\n avatar={\n hideAvatar ? (\n <></>\n ) : (\n <Avatar sx={{ bgcolor: (theme: Theme) => theme.palette.primary.main }} aria-label={activePlugin?.name}>\n {activePlugin?.name?.charAt(0)}\n </Avatar>\n )\n }\n action={\n <FlexRow flexWrap=\"wrap\" columnGap={0.5}>\n {timestamp ? (\n hideTimestamp && hideRefreshButton ? (\n ''\n ) : (\n <Chip\n avatar={hideRefreshButton ? <></> : <RefreshIcon />}\n clickable={hideRefreshButton ? false : true}\n onClick={refreshHuri}\n label={hideTimestamp ? '' : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`}\n />\n )\n ) : null}\n {/* Huri case is valid as long as the only menu item is JSON */}\n {hideCardActions || huri === undefined ? null : <EmbedMenu />}\n </FlexRow>\n }\n title={hideTitle ? '' : activePlugin?.name}\n />\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginState } from './State'\n\nexport const EmbedPluginContext = createContextEx<EmbedPluginState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { useEffect, useState } from 'react'\n\nimport { EmbedPluginContext } from './Context'\nimport { EmbedPluginBase } from './State'\n\nexport type EmbedPluginProviderProps = EmbedPluginBase\n\n/** Expose passed embed plugin props via context */\nexport const EmbedPluginProvider: React.FC<WithChildren<EmbedPluginProviderProps>> = ({\n children,\n refreshTitle,\n timestampLabel,\n hideElementsConfig,\n plugins,\n embedPluginConfig,\n}) => {\n const [activePlugin, setActivePlugin] = useState<PayloadRenderPlugin | undefined>(plugins ? plugins[0] : undefined)\n\n useEffect(() => {\n setActivePlugin(plugins ? plugins[0] : undefined)\n }, [plugins])\n\n return (\n <EmbedPluginContext.Provider\n value={{\n activePlugin,\n embedPluginConfig,\n hideElementsConfig,\n provided: true,\n refreshTitle,\n setActivePlugin,\n timestampLabel,\n }}\n >\n {children}\n </EmbedPluginContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginContext } from './Context'\n\nexport const useEmbedPluginState = () => useContextEx(EmbedPluginContext, 'EmbedPlugin', true)\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport interface RefreshPayloadProps {\n onRefresh?: () => void\n refreshPayload?: boolean\n}\n\nexport const RefreshPayloadProvider: React.FC<WithChildren<RefreshPayloadProps>> = ({ children, onRefresh, refreshPayload }) => {\n const [localRefreshPayload, setRefreshPayload] = useState(refreshPayload)\n\n return (\n <RefreshPayloadContext.Provider value={{ onRefresh, provided: true, refreshPayload: localRefreshPayload, setRefreshPayload }}>\n {children}\n </RefreshPayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadState } from './State'\n\nexport const RefreshPayloadContext = createContextEx<RefreshPayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport const useRefreshPayload = () => useContextEx(RefreshPayloadContext, 'RefreshPayload', true)\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadState } from './State'\n\nexport const ResolvePayloadContext = createContextEx<ResolvePayloadState>()\n","import { delay } from '@xylabs/delay'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { Huri } from '@xyo-network/huri'\nimport { ModuleError, ModuleErrorSchema, Payload } from '@xyo-network/payload-model'\nimport { useEffect, useState } from 'react'\n\nimport { useRefreshPayload } from '../RefreshPayloadContext'\nimport { ResolvePayloadContext } from './Context'\nimport { ResolvePayloadState } from './State'\n\nexport type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>\n\nexport const ResolvePayloadProvider: React.FC<WithChildren<ResolvePayloadProviderProps>> = ({ children, huriPayload }) => {\n const [payload, setPayload] = useState<Payload>()\n const [huri, setHuri] = useState<string>()\n const { refreshPayload, setRefreshPayload, onRefresh } = useRefreshPayload()\n\n useEffect(() => {\n typeof huriPayload === 'string' ? setHuri(huriPayload) : undefined\n if (typeof huriPayload === 'object') {\n setPayload(huriPayload)\n setRefreshPayload?.(true)\n }\n }, [huriPayload, setRefreshPayload])\n\n const [notFound, setNotFound] = useState<boolean>()\n const [huriError, setHuriError] = useState<ModuleError>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (huri && !refreshPayload) {\n try {\n const huriInstance = new Huri(huri)\n const result = await huriInstance.fetch()\n // ensure the busy state can stay for a moment to avoid flashing too quickly\n await delay(500)\n\n if (mounted()) {\n setNotFound(result === null)\n setPayload(result)\n setRefreshPayload?.(true)\n }\n } catch (e) {\n const error = e as Error\n setHuriError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n },\n [huri, payload, refreshPayload, setRefreshPayload],\n )\n\n const refreshHuri = () => {\n onRefresh?.()\n if (huri) {\n setRefreshPayload?.(false)\n }\n }\n\n return (\n <ResolvePayloadContext.Provider value={{ huri, huriError, notFound, payload, provided: true, refreshHuri, setPayload }}>\n {children}\n </ResolvePayloadContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadContext } from './Context'\n\nexport const useResolvePayload = () => useContextEx(ResolvePayloadContext, 'ResolvePayload', true)\n","import { Chip } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { SchemaCache, SchemaNameToValidatorMap } from '@xyo-network/schema-cache'\nimport { useState } from 'react'\n\nimport { useResolvePayload } from '../ResolvePayloadContext'\nimport { ValidatePayloadContext } from './Context'\n\nexport interface ValidatePayloadProviderProps {\n // Opt-in flag to validate payloads for the plugin(s)\n enabled?: boolean\n}\n\nexport const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>> = ({ children, enabled = false }) => {\n const { payload } = useResolvePayload()\n const [initialized, setInitialized] = useState(false)\n const [valid, setValid] = useState<boolean>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n if (payload && enabled) {\n await SchemaCache.instance.get(payload.schema)\n\n const possibleKnownSchema = payload.schema as keyof SchemaNameToValidatorMap\n\n if (SchemaCache.instance.validators[possibleKnownSchema]) {\n const validator = SchemaCache.instance.validators[possibleKnownSchema]\n setValid(validator?.(payload))\n }\n setInitialized(true)\n }\n },\n [payload, enabled],\n )\n\n return (\n <ValidatePayloadContext.Provider value={{ enabled, provided: true, schema: payload?.schema, validPayload: valid }}>\n {enabled ? <>{initialized ? children : <Chip label=\"Validating Payload...\" />}</> : children}\n </ValidatePayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadState } from './State'\n\nexport const ValidatePayloadContext = createContextEx<ValidatePayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadContext } from './Context'\n\nexport const useValidatePayload = () => useContextEx(ValidatePayloadContext, 'ValidateSchema', true)\n","import MoreVertIcon from '@mui/icons-material/MoreVert'\nimport { IconButton, IconButtonProps, Menu } from '@mui/material'\nimport { useState } from 'react'\n\nimport { JsonMenuItem } from './JsonMenuItem'\n\nexport const EmbedMenu: React.FC<IconButtonProps> = (props) => {\n // TODO - link to explore website\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return (\n <>\n <IconButton onClick={handleClick} {...props}>\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} PaperProps={{ variant: 'elevation' }} MenuListProps={{ dense: true }}>\n <JsonMenuItem />\n </Menu>\n </>\n )\n}\n","import OpenInNewIcon from '@mui/icons-material/OpenInNew'\nimport { ListItemIcon, ListItemText, MenuItem, MenuItemProps } from '@mui/material'\n\nimport { useResolvePayload } from '../../../contexts'\n\nexport const JsonMenuItem: React.FC<MenuItemProps> = (props) => {\n const { huri } = useResolvePayload()\n\n return (\n <>\n {huri ? (\n <MenuItem title=\"Source Payload JSON\" onClick={() => window.open(huri, '_blank')} {...props}>\n <ListItemText sx={{ mr: 1 }}>JSON</ListItemText>\n <ListItemIcon sx={{ justifyContent: 'end' }}>\n <OpenInNewIcon fontSize=\"small\" />\n </ListItemIcon>\n </MenuItem>\n ) : null}\n </>\n )\n}\n","import { CardContent } from '@mui/material'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { useListMode } from '@xyo-network/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedRenderSelect, ListModeSelectFormControl } from '../../controls'\nimport { BusyCard, BusyCardProps } from './BusyCard'\nimport { EmbedCardHeader } from './EmbedCardHeader'\n\nexport const EmbedPluginCard: React.FC<BusyCardProps> = ({ ...props }) => {\n const { payload } = useResolvePayload()\n const { activePlugin: ActivePlugin, plugins, hideElementsConfig } = useEmbedPluginState()\n const { listMode } = useListMode()\n const supportsListMode = ActivePlugin?.components?.box?.listModes?.length ?? 0 > 1\n\n return (\n <BusyCard {...props}>\n {hideElementsConfig?.hideCardHeader ? null : <EmbedCardHeader />}\n {/* Only show the row if the children are present */}\n {(plugins && plugins.length) || supportsListMode ? (\n <FlexGrowRow columnGap={2} rowGap={2} flexWrap=\"wrap\" pb={1}>\n {plugins && plugins.length > 1 ? <EmbedRenderSelect /> : null}\n {supportsListMode ? <ListModeSelectFormControl /> : null}\n </FlexGrowRow>\n ) : null}\n <CardContent sx={{ height: '100%' }}>\n {ActivePlugin ? <ActivePlugin.components.box.detailsBox payload={payload} {...(supportsListMode && { listMode })} /> : null}\n </CardContent>\n </BusyCard>\n )\n}\n","import { FormControl, FormControlProps, InputLabel } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedFormControlProps extends FormControlProps {\n formId?: string\n formLabel?: string\n}\n\nexport const EmbedFormControl: React.FC<WithChildren<EmbedFormControlProps>> = ({ formId, formLabel, children, ...props }) => {\n return (\n <FormControl {...props}>\n <InputLabel id={formId}>{formLabel}</InputLabel>\n {children}\n </FormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\nimport { ListMode, useListMode } from '@xyo-network/react-shared'\n\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst listModeSelectId = 'listmode-select-id'\nconst listModeSelectLabel = 'List Mode'\n\nexport const ListModeSelect: React.FC<SelectProps<ListMode>> = (props) => {\n const { listMode, setListMode } = useListMode()\n\n return (\n <Select<ListMode>\n value={(listMode ?? 'default') as ListMode}\n onChange={(event) => {\n setListMode?.(event.target.value as ListMode)\n }}\n {...props}\n >\n <MenuItem key=\"default\" value=\"default\">\n Default\n </MenuItem>\n <MenuItem key=\"table\" value=\"table\">\n Table\n </MenuItem>\n <MenuItem key=\"grid\" value=\"grid\">\n Grid\n </MenuItem>\n </Select>\n )\n}\n\nexport const ListModeSelectFormControl: React.FC<SelectProps<ListMode>> = (props) => {\n return (\n <EmbedFormControl formId={listModeSelectId} formLabel={listModeSelectLabel}>\n <ListModeSelect size=\"small\" label={listModeSelectLabel} labelId={listModeSelectId} {...props} />\n </EmbedFormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\n\nimport { useEmbedPluginState } from '../../contexts'\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst renderSelectId = 'render-select-id'\nconst renderSelectLabel = 'Renderer'\n\nexport const EmbedRenderSelect: React.FC<SelectProps> = (props) => {\n const { activePlugin, setActivePlugin, plugins } = useEmbedPluginState()\n return (\n <EmbedFormControl formId={renderSelectId} formLabel={renderSelectLabel}>\n <Select size=\"small\" value={activePlugin?.name} {...props}>\n {plugins?.map((plugin) => (\n <MenuItem value={plugin.name} key={plugin.name} onClick={() => setActivePlugin?.(plugin)}>\n {plugin.name}\n </MenuItem>\n ))}\n </Select>\n </EmbedFormControl>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useRefreshPayload, useResolvePayload } from '../../contexts'\nimport { EmbedPluginProps } from '../../types'\nimport { EmbedPluginInner } from '../EmbedPlugin'\nimport { BusyCardProps, EmbedPluginCard } from './card'\nimport { EmbedCardApiErrorRenderer } from './error-handling'\n\nexport interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {}\n\nexport const ApiEmbedPluginCard: React.FC<EmbedPluginCardProps> = ({ children, ...props }) => {\n const {\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n ...busyCardProps\n } = props\n\n return (\n <EmbedPluginInner\n {...{\n embedPluginConfig,\n hideElementsConfig,\n huriPayload,\n onRefresh,\n plugins,\n refreshTitle,\n timestampLabel,\n validateSchema,\n }}\n >\n <EmbedPluginCardInner {...busyCardProps} />\n {children}\n </EmbedPluginInner>\n )\n}\n\nexport const EmbedPluginCardInner: React.FC<BusyCardProps> = (props) => {\n const { payload, huriError } = useResolvePayload()\n const { refreshPayload } = useRefreshPayload()\n const theme = useTheme()\n\n return (\n <EmbedCardApiErrorRenderer xyoError={huriError}>\n <EmbedPluginCard\n elevation={3}\n variant=\"elevation\"\n busy={Boolean(!refreshPayload && payload)}\n busyVariantProps={{ style: { alignItems: 'start', paddingTop: theme.spacing(2), zIndex: 2 } }}\n sx={{ position: 'relative' }}\n {...props}\n />\n </EmbedCardApiErrorRenderer>\n )\n}\n\n/** @deprecated - use EmbedPluginCard and use CardProps instead of FlexBoxProps */\nexport const EmbedPlugin = EmbedPluginCard\n","import { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ErrorBoundary, ListModeProvider } from '@xyo-network/react-shared'\n\nimport { EmbedPluginProvider, RefreshPayloadProvider, ResolvePayloadProvider, ValidatePayloadProvider } from '../contexts'\nimport { EmbedPluginProps } from '../types'\nimport { EmbedResolver } from './EmbedResolver'\nimport { ValidatePayloadAlert, ValidatePluginsAlert } from './validation-alerts'\n\nexport const EmbedPluginInner: React.FC<WithChildren<EmbedPluginProps>> = ({\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n children,\n}) => {\n return (\n <ErrorBoundary>\n <EmbedPluginProvider\n refreshTitle={refreshTitle}\n timestampLabel={timestampLabel}\n hideElementsConfig={hideElementsConfig}\n plugins={plugins}\n embedPluginConfig={embedPluginConfig}\n >\n <WithResolvers onRefresh={onRefresh} huriPayload={huriPayload}>\n <WithValidators validateSchema={validateSchema}>\n <ListModeProvider defaultListMode={embedPluginConfig?.listMode}>{children}</ListModeProvider>\n </WithValidators>\n </WithResolvers>\n </EmbedPluginProvider>\n </ErrorBoundary>\n )\n}\n\ninterface WithResolversProps extends Pick<EmbedPluginProps, 'onRefresh' | 'huriPayload'>, FlexBoxProps {}\n\nconst WithResolvers: React.FC<WithChildren<WithResolversProps>> = ({ children, onRefresh, huriPayload }) => {\n return (\n <RefreshPayloadProvider onRefresh={onRefresh}>\n <ResolvePayloadProvider huriPayload={huriPayload}>\n <EmbedResolver>{children}</EmbedResolver>\n </ResolvePayloadProvider>\n </RefreshPayloadProvider>\n )\n}\n\nconst WithValidators: React.FC<WithChildren<{ validateSchema?: boolean }>> = ({ children, validateSchema }) => {\n return (\n <ValidatePayloadProvider enabled={validateSchema}>\n <ValidatePluginsAlert>\n <ValidatePayloadAlert>{children}</ValidatePayloadAlert>\n </ValidatePluginsAlert>\n </ValidatePayloadProvider>\n )\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { LoadResult } from '@xyo-network/react-shared'\n\nimport { useResolvePayload } from '../contexts'\n\nexport const EmbedResolver: React.FC<WithChildren> = ({ children }) => {\n const { payload, notFound, huriError } = useResolvePayload()\n\n return (\n <LoadResult searchResult={payload} notFound={!!notFound} error={!!huriError}>\n {children}\n </LoadResult>\n )\n}\n","import { Alert, AlertProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useValidatePayload } from '../../contexts'\n\nexport const ValidatePayloadAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { validPayload, enabled, schema } = useValidatePayload()\n\n if (enabled && validPayload === false) {\n return (\n <Alert severity=\"error\" title=\"Invalid Payload!\" {...props}>\n Payload schema claimed to be {schema} but failed to validate.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { Alert, AlertProps, AlertTitle } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../contexts'\n\nexport const ValidatePluginsAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { payload } = useResolvePayload()\n const { plugins } = useEmbedPluginState()\n\n if (payload && plugins?.length === 0) {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing plugins!</AlertTitle>Payload found but no plugins were present.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { CardProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ModuleError } from '@xyo-network/payload-model'\nimport { ErrorAlert, ErrorRender } from '@xyo-network/react-error'\n\nimport { EmbedErrorCard } from './EmbedErrorCard'\n\ninterface EmbedCardApiErrorRendererProps extends CardProps {\n xyoError?: ModuleError\n}\n\nexport const EmbedCardApiErrorRenderer: React.FC<WithChildren<EmbedCardApiErrorRendererProps>> = ({ xyoError, children, ...props }) => {\n return (\n <ErrorRender error={xyoError} noReAuth noErrorDisplay customError={<CustomApiErrorCard xyoError={xyoError} {...props} />}>\n {children}\n </ErrorRender>\n )\n}\n\nconst CustomApiErrorCard: React.FC<EmbedCardApiErrorRendererProps> = ({ xyoError, ...props }) => {\n return (\n <EmbedErrorCard {...props}>\n <ErrorAlert error={xyoError} />\n </EmbedErrorCard>\n )\n}\n","import { Alert, AlertProps, AlertTitle, Card, CardContent, CardProps, Typography } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedErrorCardBaseProps {\n alertProps?: AlertProps\n error?: Error\n hideErrorDetails?: boolean\n}\n\ninterface EmbedErrorCardProps extends EmbedErrorCardBaseProps, CardProps {\n alertProps?: AlertProps\n error?: Error\n}\n\nexport const EmbedErrorCard: React.FC<WithChildren<EmbedErrorCardProps>> = (props) => {\n const { alertProps, error, hideErrorDetails = true, children, ...cardProps } = props\n const errorProps = { alertProps, error, hideErrorDetails }\n return (\n <Card {...cardProps}>\n <CardContent>{children ?? <DefaultErrorAlert {...errorProps} />}</CardContent>\n </Card>\n )\n}\n\nconst DefaultErrorAlert: React.FC<EmbedErrorCardBaseProps> = ({ alertProps, hideErrorDetails, error }) => {\n return (\n <Alert severity=\"error\" {...alertProps}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {!hideErrorDetails && error ? (\n <>\n <Typography variant=\"caption\">Error: </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n </>\n ) : (\n <Typography variant=\"caption\" fontSize=\"small\">\n Error Loading Plugin\n </Typography>\n )}\n </Alert>\n )\n}\n"],"mappings":"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","names":["Chip","jsx","useState","createContextEx","jsx","useState","useContextEx","useContextEx","createContextEx","useEffect","useState","jsx","useState","useEffect","useContextEx","useContextEx","useAsyncEffect","useState","createContextEx","jsx","useState","useAsyncEffect","useContextEx","useContextEx","useState","Fragment","jsx","jsxs","Fragment","jsx","jsxs","useState","Fragment","jsx","jsxs","Chip","useListMode","jsx","jsxs","MenuItem","jsx","jsxs","MenuItem","MenuItem","Select","jsx","Select","MenuItem","jsx","jsxs","useListMode","jsx","Fragment","jsx","jsxs","Alert","Fragment","jsx","jsxs","Alert","jsx","Alert","AlertTitle","Card","CardContent","Fragment","jsx","jsxs","jsx","jsx","jsxs"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/embed-card/card/BusyCard.tsx","../src/components/embed-card/card/EmbedCardHeader.tsx","../src/contexts/EmbedPluginContext/Context.tsx","../src/contexts/EmbedPluginContext/Provider.tsx","../src/contexts/EmbedPluginContext/use.tsx","../src/contexts/RefreshPayloadContext/Provider.tsx","../src/contexts/RefreshPayloadContext/Context.tsx","../src/contexts/RefreshPayloadContext/use.tsx","../src/contexts/ResolvePayloadContext/Context.ts","../src/contexts/ResolvePayloadContext/Provider.tsx","../src/contexts/ResolvePayloadContext/use.tsx","../src/contexts/ValidatePayloadContext/Provider.tsx","../src/contexts/ValidatePayloadContext/Context.ts","../src/contexts/ValidatePayloadContext/use.tsx","../src/components/embed-card/menu/EmbedMenu.tsx","../src/components/embed-card/menu/JsonMenuItem.tsx","../src/components/embed-card/card/EmbedPluginCard.tsx","../src/components/controls/EmbedFormControl.tsx","../src/components/controls/ListModeSelect.tsx","../src/components/controls/RenderSelect.tsx","../src/components/embed-card/EmbedPluginCard.tsx","../src/components/EmbedPlugin.tsx","../src/components/EmbedResolver.tsx","../src/components/validation-alerts/ValidatePayload.tsx","../src/components/validation-alerts/ValidatePlugins.tsx","../src/components/embed-card/error-handling/EmbedCardApiErrorRenderer.tsx","../src/components/embed-card/error-handling/EmbedErrorCard.tsx"],"sourcesContent":["import { Card, CardProps } from '@mui/material'\nimport { useBusyTiming } from '@xylabs/react-flexbox'\nimport {\n BusyCircularProgress,\n BusyCircularProgressProps,\n BusyLinearProgress,\n BusyLinearProgressProps,\n BusyVariant,\n WithChildren,\n} from '@xylabs/react-shared'\n\nexport interface BusyCardProps extends CardProps {\n busy?: boolean\n busyMinimum?: number\n busyVariant?: BusyVariant\n busyVariantProps?: BusyCircularProgressProps | BusyLinearProgressProps\n}\n\nexport const BusyCard: React.FC<WithChildren<BusyCardProps>> = ({\n busy,\n busyMinimum = 500,\n busyVariant = 'circular',\n busyVariantProps,\n children,\n ...props\n}) => {\n const internalBusy = useBusyTiming(busy, busyMinimum)\n return (\n <Card {...props}>\n {children}\n {busyVariant === 'circular' && internalBusy ? <BusyCircularProgress {...(busyVariantProps as BusyCircularProgressProps)} /> : null}\n {busyVariant === 'linear' && internalBusy ? <BusyLinearProgress {...(busyVariantProps as BusyLinearProgressProps)} /> : null}\n </Card>\n )\n}\n","import { Refresh as RefreshIcon } from '@mui/icons-material'\nimport { Avatar, CardHeader, CardHeaderProps, Chip, Theme } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedMenu } from '../menu'\n\nexport const EmbedCardHeader: React.FC<CardHeaderProps> = () => {\n const { refreshHuri, huri } = useResolvePayload()\n const { activePlugin, timestampLabel, hideElementsConfig } = useEmbedPluginState()\n const { hideAvatar, hideTitle, hideRefreshButton, hideTimestamp, hideCardActions } = hideElementsConfig ?? {}\n //this is temporary so that we can add the ability to get a timestamp via diviner later\n const timestamp = Date.now()\n return (\n <CardHeader\n sx={{ flexWrap: 'wrap', rowGap: 1 }}\n avatar={\n hideAvatar ? (\n <></>\n ) : (\n <Avatar sx={{ bgcolor: (theme: Theme) => theme.palette.primary.main }} aria-label={activePlugin?.name}>\n {activePlugin?.name?.charAt(0)}\n </Avatar>\n )\n }\n action={\n <FlexRow flexWrap=\"wrap\" columnGap={0.5}>\n {timestamp ? (\n hideTimestamp && hideRefreshButton ? (\n ''\n ) : (\n <Chip\n avatar={hideRefreshButton ? <></> : <RefreshIcon />}\n clickable={hideRefreshButton ? false : true}\n onClick={refreshHuri}\n label={hideTimestamp ? '' : `${timestampLabel} ${new Date(timestamp).toLocaleString()}`}\n />\n )\n ) : null}\n {/* Huri case is valid as long as the only menu item is JSON */}\n {hideCardActions || huri === undefined ? null : <EmbedMenu />}\n </FlexRow>\n }\n title={hideTitle ? '' : activePlugin?.name}\n />\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginState } from './State'\n\nexport const EmbedPluginContext = createContextEx<EmbedPluginState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { useEffect, useState } from 'react'\n\nimport { EmbedPluginContext } from './Context'\nimport { EmbedPluginBase } from './State'\n\nexport type EmbedPluginProviderProps = EmbedPluginBase\n\n/** Expose passed embed plugin props via context */\nexport const EmbedPluginProvider: React.FC<WithChildren<EmbedPluginProviderProps>> = ({\n children,\n refreshTitle,\n timestampLabel,\n hideElementsConfig,\n plugins,\n embedPluginConfig,\n}) => {\n const [activePlugin, setActivePlugin] = useState<PayloadRenderPlugin | undefined>(plugins ? plugins[0] : undefined)\n\n useEffect(() => {\n setActivePlugin(plugins ? plugins[0] : undefined)\n }, [plugins])\n\n return (\n <EmbedPluginContext.Provider\n value={{\n activePlugin,\n embedPluginConfig,\n hideElementsConfig,\n provided: true,\n refreshTitle,\n setActivePlugin,\n timestampLabel,\n }}\n >\n {children}\n </EmbedPluginContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { EmbedPluginContext } from './Context'\n\nexport const useEmbedPluginState = () => useContextEx(EmbedPluginContext, 'EmbedPlugin', true)\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport interface RefreshPayloadProps {\n onRefresh?: () => void\n refreshPayload?: boolean\n}\n\nexport const RefreshPayloadProvider: React.FC<WithChildren<RefreshPayloadProps>> = ({ children, onRefresh, refreshPayload }) => {\n const [localRefreshPayload, setRefreshPayload] = useState(refreshPayload)\n\n return (\n <RefreshPayloadContext.Provider value={{ onRefresh, provided: true, refreshPayload: localRefreshPayload, setRefreshPayload }}>\n {children}\n </RefreshPayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadState } from './State'\n\nexport const RefreshPayloadContext = createContextEx<RefreshPayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { RefreshPayloadContext } from './Context'\n\nexport const useRefreshPayload = () => useContextEx(RefreshPayloadContext, 'RefreshPayload', true)\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadState } from './State'\n\nexport const ResolvePayloadContext = createContextEx<ResolvePayloadState>()\n","import { delay } from '@xylabs/delay'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { Huri } from '@xyo-network/huri'\nimport { ModuleError, ModuleErrorSchema, Payload } from '@xyo-network/payload-model'\nimport { useEffect, useState } from 'react'\n\nimport { useRefreshPayload } from '../RefreshPayloadContext'\nimport { ResolvePayloadContext } from './Context'\nimport { ResolvePayloadState } from './State'\n\nexport type ResolvePayloadProviderProps = Omit<ResolvePayloadState, 'provided'>\n\nexport const ResolvePayloadProvider: React.FC<WithChildren<ResolvePayloadProviderProps>> = ({ children, huriPayload }) => {\n const [payload, setPayload] = useState<Payload>()\n const [huri, setHuri] = useState<string>()\n const { refreshPayload, setRefreshPayload, onRefresh } = useRefreshPayload()\n\n useEffect(() => {\n typeof huriPayload === 'string' ? setHuri(huriPayload) : undefined\n if (typeof huriPayload === 'object') {\n setPayload(huriPayload)\n setRefreshPayload?.(true)\n }\n }, [huriPayload, setRefreshPayload])\n\n const [notFound, setNotFound] = useState<boolean>()\n const [huriError, setHuriError] = useState<ModuleError>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (huri && !refreshPayload) {\n try {\n const huriInstance = new Huri(huri)\n const result = await huriInstance.fetch()\n // ensure the busy state can stay for a moment to avoid flashing too quickly\n await delay(500)\n\n if (mounted()) {\n setNotFound(result === null)\n setPayload(result)\n setRefreshPayload?.(true)\n }\n } catch (e) {\n const error = e as Error\n setHuriError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n },\n [huri, payload, refreshPayload, setRefreshPayload],\n )\n\n const refreshHuri = () => {\n onRefresh?.()\n if (huri) {\n setRefreshPayload?.(false)\n }\n }\n\n return (\n <ResolvePayloadContext.Provider value={{ huri, huriError, notFound, payload, provided: true, refreshHuri, setPayload }}>\n {children}\n </ResolvePayloadContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ResolvePayloadContext } from './Context'\n\nexport const useResolvePayload = () => useContextEx(ResolvePayloadContext, 'ResolvePayload', true)\n","import { Chip } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { SchemaCache, SchemaNameToValidatorMap } from '@xyo-network/schema-cache'\nimport { useState } from 'react'\n\nimport { useResolvePayload } from '../ResolvePayloadContext'\nimport { ValidatePayloadContext } from './Context'\n\nexport interface ValidatePayloadProviderProps {\n // Opt-in flag to validate payloads for the plugin(s)\n enabled?: boolean\n}\n\nexport const ValidatePayloadProvider: React.FC<WithChildren<ValidatePayloadProviderProps>> = ({ children, enabled = false }) => {\n const { payload } = useResolvePayload()\n const [initialized, setInitialized] = useState(false)\n const [valid, setValid] = useState<boolean>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async () => {\n if (payload && enabled) {\n await SchemaCache.instance.get(payload.schema)\n\n const possibleKnownSchema = payload.schema as keyof SchemaNameToValidatorMap\n\n if (SchemaCache.instance.validators[possibleKnownSchema]) {\n const validator = SchemaCache.instance.validators[possibleKnownSchema]\n setValid(validator?.(payload))\n }\n setInitialized(true)\n }\n },\n [payload, enabled],\n )\n\n return (\n <ValidatePayloadContext.Provider value={{ enabled, provided: true, schema: payload?.schema, validPayload: valid }}>\n {enabled ? <>{initialized ? children : <Chip label=\"Validating Payload...\" />}</> : children}\n </ValidatePayloadContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadState } from './State'\n\nexport const ValidatePayloadContext = createContextEx<ValidatePayloadState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { ValidatePayloadContext } from './Context'\n\nexport const useValidatePayload = () => useContextEx(ValidatePayloadContext, 'ValidateSchema', true)\n","import { MoreVert as MoreVertIcon } from '@mui/icons-material'\nimport { IconButton, IconButtonProps, Menu } from '@mui/material'\nimport { useState } from 'react'\n\nimport { JsonMenuItem } from './JsonMenuItem'\n\nexport const EmbedMenu: React.FC<IconButtonProps> = (props) => {\n // TODO - link to explore website\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return (\n <>\n <IconButton onClick={handleClick} {...props}>\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} PaperProps={{ variant: 'elevation' }} MenuListProps={{ dense: true }}>\n <JsonMenuItem />\n </Menu>\n </>\n )\n}\n","import { OpenInNew as OpenInNewIcon } from '@mui/icons-material'\nimport { ListItemIcon, ListItemText, MenuItem, MenuItemProps } from '@mui/material'\n\nimport { useResolvePayload } from '../../../contexts'\n\nexport const JsonMenuItem: React.FC<MenuItemProps> = (props) => {\n const { huri } = useResolvePayload()\n\n return (\n <>\n {huri ? (\n <MenuItem title=\"Source Payload JSON\" onClick={() => window.open(huri, '_blank')} {...props}>\n <ListItemText sx={{ mr: 1 }}>JSON</ListItemText>\n <ListItemIcon sx={{ justifyContent: 'end' }}>\n <OpenInNewIcon fontSize=\"small\" />\n </ListItemIcon>\n </MenuItem>\n ) : null}\n </>\n )\n}\n","import { CardContent } from '@mui/material'\nimport { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { useListMode } from '@xyo-network/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../../contexts'\nimport { EmbedRenderSelect, ListModeSelectFormControl } from '../../controls'\nimport { BusyCard, BusyCardProps } from './BusyCard'\nimport { EmbedCardHeader } from './EmbedCardHeader'\n\nexport const EmbedPluginCard: React.FC<BusyCardProps> = ({ ...props }) => {\n const { payload } = useResolvePayload()\n const { activePlugin: ActivePlugin, plugins, hideElementsConfig } = useEmbedPluginState()\n const { listMode } = useListMode()\n const supportsListMode = ActivePlugin?.components?.box?.listModes?.length ?? 0 > 1\n\n return (\n <BusyCard {...props}>\n {hideElementsConfig?.hideCardHeader ? null : <EmbedCardHeader />}\n {/* Only show the row if the children are present */}\n {(plugins && plugins.length) || supportsListMode ? (\n <FlexGrowRow columnGap={2} rowGap={2} flexWrap=\"wrap\" pb={1}>\n {plugins && plugins.length > 1 ? <EmbedRenderSelect /> : null}\n {supportsListMode ? <ListModeSelectFormControl /> : null}\n </FlexGrowRow>\n ) : null}\n <CardContent sx={{ height: '100%' }}>\n {ActivePlugin ? <ActivePlugin.components.box.detailsBox payload={payload} {...(supportsListMode && { listMode })} /> : null}\n </CardContent>\n </BusyCard>\n )\n}\n","import { FormControl, FormControlProps, InputLabel } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedFormControlProps extends FormControlProps {\n formId?: string\n formLabel?: string\n}\n\nexport const EmbedFormControl: React.FC<WithChildren<EmbedFormControlProps>> = ({ formId, formLabel, children, ...props }) => {\n return (\n <FormControl {...props}>\n <InputLabel id={formId}>{formLabel}</InputLabel>\n {children}\n </FormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\nimport { ListMode, useListMode } from '@xyo-network/react-shared'\n\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst listModeSelectId = 'listmode-select-id'\nconst listModeSelectLabel = 'List Mode'\n\nexport const ListModeSelect: React.FC<SelectProps<ListMode>> = (props) => {\n const { listMode, setListMode } = useListMode()\n\n return (\n <Select<ListMode>\n value={(listMode ?? 'default') as ListMode}\n onChange={(event) => {\n setListMode?.(event.target.value as ListMode)\n }}\n {...props}\n >\n <MenuItem key=\"default\" value=\"default\">\n Default\n </MenuItem>\n <MenuItem key=\"table\" value=\"table\">\n Table\n </MenuItem>\n <MenuItem key=\"grid\" value=\"grid\">\n Grid\n </MenuItem>\n </Select>\n )\n}\n\nexport const ListModeSelectFormControl: React.FC<SelectProps<ListMode>> = (props) => {\n return (\n <EmbedFormControl formId={listModeSelectId} formLabel={listModeSelectLabel}>\n <ListModeSelect size=\"small\" label={listModeSelectLabel} labelId={listModeSelectId} {...props} />\n </EmbedFormControl>\n )\n}\n","import { MenuItem, Select, SelectProps } from '@mui/material'\n\nimport { useEmbedPluginState } from '../../contexts'\nimport { EmbedFormControl } from './EmbedFormControl'\n\nconst renderSelectId = 'render-select-id'\nconst renderSelectLabel = 'Renderer'\n\nexport const EmbedRenderSelect: React.FC<SelectProps> = (props) => {\n const { activePlugin, setActivePlugin, plugins } = useEmbedPluginState()\n return (\n <EmbedFormControl formId={renderSelectId} formLabel={renderSelectLabel}>\n <Select size=\"small\" value={activePlugin?.name} {...props}>\n {plugins?.map((plugin) => (\n <MenuItem value={plugin.name} key={plugin.name} onClick={() => setActivePlugin?.(plugin)}>\n {plugin.name}\n </MenuItem>\n ))}\n </Select>\n </EmbedFormControl>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useRefreshPayload, useResolvePayload } from '../../contexts'\nimport { EmbedPluginProps } from '../../types'\nimport { EmbedPluginInner } from '../EmbedPlugin'\nimport { BusyCardProps, EmbedPluginCard } from './card'\nimport { EmbedCardApiErrorRenderer } from './error-handling'\n\nexport interface EmbedPluginCardProps extends WithChildren, EmbedPluginProps, BusyCardProps {}\n\nexport const ApiEmbedPluginCard: React.FC<EmbedPluginCardProps> = ({ children, ...props }) => {\n const {\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n ...busyCardProps\n } = props\n\n return (\n <EmbedPluginInner\n {...{\n embedPluginConfig,\n hideElementsConfig,\n huriPayload,\n onRefresh,\n plugins,\n refreshTitle,\n timestampLabel,\n validateSchema,\n }}\n >\n <EmbedPluginCardInner {...busyCardProps} />\n {children}\n </EmbedPluginInner>\n )\n}\n\nexport const EmbedPluginCardInner: React.FC<BusyCardProps> = (props) => {\n const { payload, huriError } = useResolvePayload()\n const { refreshPayload } = useRefreshPayload()\n const theme = useTheme()\n\n return (\n <EmbedCardApiErrorRenderer xyoError={huriError}>\n <EmbedPluginCard\n elevation={3}\n variant=\"elevation\"\n busy={Boolean(!refreshPayload && payload)}\n busyVariantProps={{ style: { alignItems: 'start', paddingTop: theme.spacing(2), zIndex: 2 } }}\n sx={{ position: 'relative' }}\n {...props}\n />\n </EmbedCardApiErrorRenderer>\n )\n}\n\n/** @deprecated - use EmbedPluginCard and use CardProps instead of FlexBoxProps */\nexport const EmbedPlugin = EmbedPluginCard\n","import { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ErrorBoundary, ListModeProvider } from '@xyo-network/react-shared'\n\nimport { EmbedPluginProvider, RefreshPayloadProvider, ResolvePayloadProvider, ValidatePayloadProvider } from '../contexts'\nimport { EmbedPluginProps } from '../types'\nimport { EmbedResolver } from './EmbedResolver'\nimport { ValidatePayloadAlert, ValidatePluginsAlert } from './validation-alerts'\n\nexport const EmbedPluginInner: React.FC<WithChildren<EmbedPluginProps>> = ({\n validateSchema,\n plugins = [],\n huriPayload,\n refreshTitle = '',\n timestampLabel = 'Data From',\n hideElementsConfig,\n embedPluginConfig,\n onRefresh,\n children,\n}) => {\n return (\n <ErrorBoundary>\n <EmbedPluginProvider\n refreshTitle={refreshTitle}\n timestampLabel={timestampLabel}\n hideElementsConfig={hideElementsConfig}\n plugins={plugins}\n embedPluginConfig={embedPluginConfig}\n >\n <WithResolvers onRefresh={onRefresh} huriPayload={huriPayload}>\n <WithValidators validateSchema={validateSchema}>\n <ListModeProvider defaultListMode={embedPluginConfig?.listMode}>{children}</ListModeProvider>\n </WithValidators>\n </WithResolvers>\n </EmbedPluginProvider>\n </ErrorBoundary>\n )\n}\n\ninterface WithResolversProps extends Pick<EmbedPluginProps, 'onRefresh' | 'huriPayload'>, FlexBoxProps {}\n\nconst WithResolvers: React.FC<WithChildren<WithResolversProps>> = ({ children, onRefresh, huriPayload }) => {\n return (\n <RefreshPayloadProvider onRefresh={onRefresh}>\n <ResolvePayloadProvider huriPayload={huriPayload}>\n <EmbedResolver>{children}</EmbedResolver>\n </ResolvePayloadProvider>\n </RefreshPayloadProvider>\n )\n}\n\nconst WithValidators: React.FC<WithChildren<{ validateSchema?: boolean }>> = ({ children, validateSchema }) => {\n return (\n <ValidatePayloadProvider enabled={validateSchema}>\n <ValidatePluginsAlert>\n <ValidatePayloadAlert>{children}</ValidatePayloadAlert>\n </ValidatePluginsAlert>\n </ValidatePayloadProvider>\n )\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { LoadResult } from '@xyo-network/react-shared'\n\nimport { useResolvePayload } from '../contexts'\n\nexport const EmbedResolver: React.FC<WithChildren> = ({ children }) => {\n const { payload, notFound, huriError } = useResolvePayload()\n\n return (\n <LoadResult searchResult={payload} notFound={!!notFound} error={!!huriError}>\n {children}\n </LoadResult>\n )\n}\n","import { Alert, AlertProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useValidatePayload } from '../../contexts'\n\nexport const ValidatePayloadAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { validPayload, enabled, schema } = useValidatePayload()\n\n if (enabled && validPayload === false) {\n return (\n <Alert severity=\"error\" title=\"Invalid Payload!\" {...props}>\n Payload schema claimed to be {schema} but failed to validate.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { Alert, AlertProps, AlertTitle } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { useEmbedPluginState, useResolvePayload } from '../../contexts'\n\nexport const ValidatePluginsAlert: React.FC<WithChildren<AlertProps>> = ({ children, ...props }) => {\n const { payload } = useResolvePayload()\n const { plugins } = useEmbedPluginState()\n\n if (payload && plugins?.length === 0) {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing plugins!</AlertTitle>Payload found but no plugins were present.\n </Alert>\n )\n }\n\n return <>{children}</>\n}\n","import { CardProps } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { ModuleError } from '@xyo-network/payload-model'\nimport { ErrorAlert, ErrorRender } from '@xyo-network/react-error'\n\nimport { EmbedErrorCard } from './EmbedErrorCard'\n\ninterface EmbedCardApiErrorRendererProps extends CardProps {\n xyoError?: ModuleError\n}\n\nexport const EmbedCardApiErrorRenderer: React.FC<WithChildren<EmbedCardApiErrorRendererProps>> = ({ xyoError, children, ...props }) => {\n return (\n <ErrorRender error={xyoError} noReAuth noErrorDisplay customError={<CustomApiErrorCard xyoError={xyoError} {...props} />}>\n {children}\n </ErrorRender>\n )\n}\n\nconst CustomApiErrorCard: React.FC<EmbedCardApiErrorRendererProps> = ({ xyoError, ...props }) => {\n return (\n <EmbedErrorCard {...props}>\n <ErrorAlert error={xyoError} />\n </EmbedErrorCard>\n )\n}\n","import { Alert, AlertProps, AlertTitle, Card, CardContent, CardProps, Typography } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\ninterface EmbedErrorCardBaseProps {\n alertProps?: AlertProps\n error?: Error\n hideErrorDetails?: boolean\n}\n\ninterface EmbedErrorCardProps extends EmbedErrorCardBaseProps, CardProps {\n alertProps?: AlertProps\n error?: Error\n}\n\nexport const EmbedErrorCard: React.FC<WithChildren<EmbedErrorCardProps>> = (props) => {\n const { alertProps, error, hideErrorDetails = true, children, ...cardProps } = props\n const errorProps = { alertProps, error, hideErrorDetails }\n return (\n <Card {...cardProps}>\n <CardContent>{children ?? <DefaultErrorAlert {...errorProps} />}</CardContent>\n </Card>\n )\n}\n\nconst DefaultErrorAlert: React.FC<EmbedErrorCardBaseProps> = ({ alertProps, hideErrorDetails, error }) => {\n return (\n <Alert severity=\"error\" {...alertProps}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {!hideErrorDetails && error ? (\n <>\n <Typography variant=\"caption\">Error: </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n </>\n ) : (\n <Typography variant=\"caption\" fontSize=\"small\">\n Error Loading Plugin\n </Typography>\n )}\n </Alert>\n )\n}\n"],"mappings":"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","names":["Chip","jsx","useState","createContextEx","jsx","useState","useContextEx","useContextEx","createContextEx","useEffect","useState","jsx","useState","useEffect","useContextEx","useContextEx","useAsyncEffect","useState","createContextEx","jsx","useState","useAsyncEffect","useContextEx","useContextEx","useState","Fragment","jsx","jsxs","Fragment","jsx","jsxs","useState","Fragment","jsx","jsxs","Chip","useListMode","jsx","jsxs","MenuItem","jsx","jsxs","MenuItem","MenuItem","Select","jsx","Select","MenuItem","jsx","jsxs","useListMode","jsx","Fragment","jsx","jsxs","Alert","Fragment","jsx","jsxs","Alert","jsx","Alert","AlertTitle","Card","CardContent","Fragment","jsx","jsxs","jsx","jsx","jsxs"]}
|
package/package.json
CHANGED
|
@@ -11,15 +11,15 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/delay": "^2.11.7",
|
|
14
|
-
"@xylabs/react-async-effect": "
|
|
15
|
-
"@xylabs/react-flexbox": "
|
|
16
|
-
"@xylabs/react-shared": "
|
|
17
|
-
"@xyo-network/huri": "^2.74.
|
|
18
|
-
"@xyo-network/payload-model": "^2.74.
|
|
19
|
-
"@xyo-network/react-error": "~2.
|
|
20
|
-
"@xyo-network/react-payload-plugin": "~2.
|
|
21
|
-
"@xyo-network/react-shared": "~2.
|
|
22
|
-
"@xyo-network/schema-cache": "^2.74.
|
|
14
|
+
"@xylabs/react-async-effect": "^3.1.0-rc.3",
|
|
15
|
+
"@xylabs/react-flexbox": "^3.1.0-rc.3",
|
|
16
|
+
"@xylabs/react-shared": "^3.1.0-rc.3",
|
|
17
|
+
"@xyo-network/huri": "^2.74.4",
|
|
18
|
+
"@xyo-network/payload-model": "^2.74.4",
|
|
19
|
+
"@xyo-network/react-error": "~2.64.0-rc.1",
|
|
20
|
+
"@xyo-network/react-payload-plugin": "~2.64.0-rc.1",
|
|
21
|
+
"@xyo-network/react-shared": "~2.64.0-rc.1",
|
|
22
|
+
"@xyo-network/schema-cache": "^2.74.4"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@storybook/react": "^7.4.3",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"@uniswap/v3-sdk": "^3.10.0",
|
|
29
29
|
"@xylabs/ts-scripts-yarn3": "^3.0.28",
|
|
30
30
|
"@xylabs/tsconfig-react": "^3.0.28",
|
|
31
|
-
"@xyo-network/react-aggregate-price-plugin": "~2.
|
|
32
|
-
"@xyo-network/react-crypto-market-uniswap-plugin": "~2.
|
|
31
|
+
"@xyo-network/react-aggregate-price-plugin": "~2.64.0-rc.1",
|
|
32
|
+
"@xyo-network/react-crypto-market-uniswap-plugin": "~2.64.0-rc.1",
|
|
33
33
|
"typescript": "^5.2.2"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
@@ -92,5 +92,6 @@
|
|
|
92
92
|
},
|
|
93
93
|
"sideEffects": false,
|
|
94
94
|
"types": "dist/index.d.ts",
|
|
95
|
-
"version": "2.
|
|
95
|
+
"version": "2.64.0-rc.1",
|
|
96
|
+
"stableVersion": "2.63.1"
|
|
96
97
|
}
|