@xyo-network/react-schema 2.64.7 → 2.64.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/contexts/Schema/Provider/Route.cjs +2 -2
- package/dist/browser/contexts/Schema/Provider/Route.cjs.map +1 -1
- package/dist/browser/contexts/Schema/Provider/Route.js +1 -1
- package/dist/browser/contexts/Schema/Provider/Route.js.map +1 -1
- package/dist/browser/contexts/Schema/Provider/index.cjs +2 -2
- package/dist/browser/contexts/Schema/Provider/index.cjs.map +1 -1
- package/dist/browser/contexts/Schema/Provider/index.js +1 -1
- package/dist/browser/contexts/Schema/Provider/index.js.map +1 -1
- package/dist/browser/contexts/Schema/index.cjs +2 -2
- package/dist/browser/contexts/Schema/index.cjs.map +1 -1
- package/dist/browser/contexts/Schema/index.js +1 -1
- package/dist/browser/contexts/Schema/index.js.map +1 -1
- package/dist/browser/contexts/index.cjs +2 -2
- package/dist/browser/contexts/index.cjs.map +1 -1
- package/dist/browser/contexts/index.js +1 -1
- package/dist/browser/contexts/index.js.map +1 -1
- package/dist/browser/index.cjs +2 -2
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +1 -1
- package/dist/browser/index.js.map +1 -1
- package/dist/docs.json +38 -38
- package/dist/node/contexts/Schema/Provider/Route.cjs +2 -2
- package/dist/node/contexts/Schema/Provider/Route.cjs.map +1 -1
- package/dist/node/contexts/Schema/Provider/Route.js +1 -1
- package/dist/node/contexts/Schema/Provider/Route.js.map +1 -1
- package/dist/node/contexts/Schema/Provider/index.cjs +2 -2
- package/dist/node/contexts/Schema/Provider/index.cjs.map +1 -1
- package/dist/node/contexts/Schema/Provider/index.js +1 -1
- package/dist/node/contexts/Schema/Provider/index.js.map +1 -1
- package/dist/node/contexts/Schema/index.cjs +2 -2
- package/dist/node/contexts/Schema/index.cjs.map +1 -1
- package/dist/node/contexts/Schema/index.js +1 -1
- package/dist/node/contexts/Schema/index.js.map +1 -1
- package/dist/node/contexts/index.cjs +2 -2
- package/dist/node/contexts/index.cjs.map +1 -1
- package/dist/node/contexts/index.js +1 -1
- package/dist/node/contexts/index.js.map +1 -1
- package/dist/node/index.cjs +2 -2
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/index.js.map +1 -1
- package/package.json +24 -24
- package/src/contexts/Schema/Provider/Route.tsx +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/components/Property/SchemaProperty.tsx","../../src/components/SelectEx/SchemaSelectEx.tsx","../../src/contexts/Schema/Context.ts","../../src/contexts/Schema/Provider/Memory.tsx","../../src/hooks/useGetSchema.tsx","../../src/hooks/useSchemaDefinitions.tsx","../../src/hooks/useSchemaList.tsx","../../src/hooks/useSchemaStats.tsx","../../src/contexts/Schema/Provider/Route.tsx","../../src/contexts/Schema/use.ts"],"sourcesContent":["export * from './components'\nexport * from './contexts'\nexport * from './hooks'\n","import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n","import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { compact } from '@xylabs/lodash'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { useSchemaStats } from '../../../hooks'\nimport { SchemaContext } from '../Context'\nimport { SchemaProviderProps } from './Props'\n\nexport const SchemaMemoryProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ defaultSchema, knownSchemaList = [], ...props }) => {\n const [schema, setSchema] = useState(defaultSchema)\n const [schemaList, setSchemaList] = useState<string[] | undefined>(knownSchemaList)\n const [fetchedSchemaStats] = useSchemaStats()\n\n useEffect(() => {\n if (fetchedSchemaStats) {\n const schemaList = compact(fetchedSchemaStats.map(({ name }) => name))\n setSchemaList(schemaList)\n }\n }, [fetchedSchemaStats])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList: knownSchemaList ?? schemaList, setSchema, setSchemaList }} {...props} />\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { ModuleError, ModuleErrorSchema } from '@xyo-network/payload-model'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\n/**\n * Gets a Huri and schema payload from a schema string\n */\nconst useGetSchemaPayload = (schema?: string) => {\n const [notFound, setNotFound] = useState(false)\n const [xyoError, setError] = useState<ModuleError>()\n const [schemaCacheEntry, setSchemaCacheEntry] = useState<SchemaCacheEntry | null | undefined>()\n const [schemaLocal, setSchemaLocal] = useState<string>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const firstRequest = !notFound && !schemaCacheEntry && !xyoError\n const schemaChanged = schema !== schemaLocal\n\n if ((schema && firstRequest) || (schema && schemaChanged)) {\n try {\n const schemaCacheEntry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setSchemaCacheEntry(schemaCacheEntry)\n setNotFound(schemaCacheEntry === null || schemaCacheEntry === undefined)\n }\n } catch (e) {\n const error = e as Error\n console.error(e)\n if (mounted()) {\n setError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n }\n if (schemaChanged) {\n setSchemaLocal(schema)\n }\n },\n [xyoError, notFound, schema, schemaLocal, schemaCacheEntry],\n )\n\n return {\n notFound,\n schemaHuri: schemaCacheEntry?.huri,\n schemaPayload: schemaCacheEntry\n ? new PayloadBuilder<SchemaPayload>(schemaCacheEntry?.payload).fields(schemaCacheEntry.payload).build()\n : schemaCacheEntry,\n xyoError,\n }\n}\n\nexport { useGetSchemaPayload }\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\nexport type SchemaList = { name: string }\n\nexport const useSchemaDefinitions = (schemaList?: SchemaList[]): SchemaPayload[] | undefined => {\n const [schemaPayloads, setSchemaPayloads] = useState<SchemaPayload[]>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schemaList) {\n const promiseResults = await Promise.allSettled(schemaList?.map(({ name }) => SchemaCache.instance.get(name)))\n if (mounted()) {\n setSchemaPayloads(\n promiseResults\n .map((result) => (result.status === 'fulfilled' ? result.value?.payload : undefined))\n .filter((item) => item !== undefined && item !== null) as SchemaPayload[],\n )\n }\n }\n },\n [schemaList],\n )\n return schemaPayloads\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaListPayload, SchemaListQueryPayload, SchemaListQuerySchema } from '@xyo-network/diviner-schema-list-model'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { useEffect, useMemo, useState } from 'react'\n\nexport const useSchemaList = (address?: string, nameOrAddress = 'SchemaListDiviner'): [SchemaListPayload | null | undefined, Error | undefined] => {\n const [schemaList, setSchemaList] = useState<SchemaListPayload | null>()\n const [error, setError] = useState<Error>()\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n\n const query: SchemaListQueryPayload[] | undefined = useMemo(\n () =>\n address\n ? [\n {\n address,\n schema: SchemaListQuerySchema,\n },\n ]\n : undefined,\n [address],\n )\n\n useEffect(() => {\n if (diviner === null) {\n setSchemaList(null)\n setError(undefined)\n }\n }, [diviner])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps, require-await\n async (mounted) => {\n if (diviner) {\n try {\n const response = (await diviner.divine(query)) as SchemaListPayload[]\n if (mounted()) {\n setSchemaList(response?.[0])\n setError(undefined)\n }\n } catch (e) {\n setError(e as Error)\n setSchemaList(undefined)\n }\n }\n },\n [diviner, divinerError, query],\n )\n return [schemaList, error]\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { isSchemaStatsPayload, SchemaStatsPayload, SchemaStatsQueryPayload, SchemaStatsQuerySchema } from '@xyo-network/diviner-schema-stats-model'\nimport { TYPES } from '@xyo-network/node-core-types'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { Dispatch, SetStateAction, useMemo, useState } from 'react'\n\nexport const useSchemaStats = (\n statsAddress?: string,\n nameOrAddress = TYPES.SchemaStatsDiviner.description,\n): [SchemaStatsPayload[] | undefined, Error | undefined, Dispatch<SetStateAction<number>>] => {\n const [refresh, setRefresh] = useState(1)\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n const [error, setError] = useState<Error>()\n const refreshHistory = () => setRefresh((previous) => previous + 1)\n\n const [schemaList, setSchemaList] = useState<SchemaStatsPayload[]>()\n\n const query: SchemaStatsQueryPayload = useMemo(\n () => ({\n address: statsAddress,\n schema: SchemaStatsQuerySchema,\n }),\n [statsAddress],\n )\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (diviner) {\n if (divinerError) {\n if (mounted()) {\n setError(divinerError)\n setSchemaList(undefined)\n }\n } else {\n try {\n const schemas = (await diviner.divine([query])).filter(isSchemaStatsPayload)\n if (mounted()) {\n setSchemaList(schemas)\n setError(undefined)\n }\n } catch (ex) {\n setError(ex as Error)\n setSchemaList(undefined)\n }\n }\n }\n },\n [diviner, refresh, divinerError, query],\n )\n\n return [schemaList, error, refreshHistory]\n}\n","import type { WithChildren } from '@xylabs/react-shared'\nimport { useCallback, useEffect } from 'react'\nimport { useSearchParams } from 'react-router-dom-6'\n\nimport { SchemaContext } from '../Context'\nimport { useSchema } from '../use'\nimport { SchemaMemoryProvider } from './Memory'\nimport { SchemaProviderProps } from './Props'\n\nconst SchemaRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const { schema, setSchema, schemaList } = useSchema()\n\n const [params, setParams] = useSearchParams()\n\n const routeSchema = params.get('schema')\n\n //update the network stored in the route\n const setSchemaParam = useCallback(\n (schema?: string) => {\n if (schema) {\n params.set('schema', schema)\n setParams(params, { replace: true })\n setSchema?.(schema)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setSchema],\n )\n\n //if the network is actively changed, update both memory and route\n const setSchemaLocal = useCallback(\n (schema: string) => {\n setSchemaParam(schema)\n setSchema?.(schema)\n },\n [setSchemaParam, setSchema],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeSchema !== schema) {\n if (routeSchema === undefined && schema !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setSchemaLocal(schema)\n } else if (routeSchema) {\n //if the route has a selection and it is different from memory, update memory\n setSchema?.(routeSchema)\n }\n }\n }, [routeSchema, schema, setSchemaParam, setSchema, setSchemaLocal])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList, setSchema: setSchemaLocal }}>{children}</SchemaContext.Provider>\n}\n\nexport const SchemaRouteProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ knownSchemaList, defaultSchema, ...props }) => {\n return (\n <SchemaMemoryProvider knownSchemaList={knownSchemaList} defaultSchema={defaultSchema}>\n <SchemaRouteProviderInner {...props} />\n </SchemaMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":"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","names":["entry","NewReleasesIcon","VerifiedIcon","OpenInNewIcon","import_material","import_react","import_react_async_effect","import_schema_cache","import_react","schemaCacheEntry","import_react_async_effect","import_schema_cache","import_react","import_react_async_effect","import_react","import_react_async_effect","import_react_diviner","import_react","import_jsx_runtime","schemaList","import_react","import_react_shared","import_jsx_runtime","schema","import_jsx_runtime","schema"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/components/Property/SchemaProperty.tsx","../../src/components/SelectEx/SchemaSelectEx.tsx","../../src/contexts/Schema/Context.ts","../../src/contexts/Schema/Provider/Memory.tsx","../../src/hooks/useGetSchema.tsx","../../src/hooks/useSchemaDefinitions.tsx","../../src/hooks/useSchemaList.tsx","../../src/hooks/useSchemaStats.tsx","../../src/contexts/Schema/Provider/Route.tsx","../../src/contexts/Schema/use.ts"],"sourcesContent":["export * from './components'\nexport * from './contexts'\nexport * from './hooks'\n","import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n","import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { compact } from '@xylabs/lodash'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { useSchemaStats } from '../../../hooks'\nimport { SchemaContext } from '../Context'\nimport { SchemaProviderProps } from './Props'\n\nexport const SchemaMemoryProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ defaultSchema, knownSchemaList = [], ...props }) => {\n const [schema, setSchema] = useState(defaultSchema)\n const [schemaList, setSchemaList] = useState<string[] | undefined>(knownSchemaList)\n const [fetchedSchemaStats] = useSchemaStats()\n\n useEffect(() => {\n if (fetchedSchemaStats) {\n const schemaList = compact(fetchedSchemaStats.map(({ name }) => name))\n setSchemaList(schemaList)\n }\n }, [fetchedSchemaStats])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList: knownSchemaList ?? schemaList, setSchema, setSchemaList }} {...props} />\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { ModuleError, ModuleErrorSchema } from '@xyo-network/payload-model'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\n/**\n * Gets a Huri and schema payload from a schema string\n */\nconst useGetSchemaPayload = (schema?: string) => {\n const [notFound, setNotFound] = useState(false)\n const [xyoError, setError] = useState<ModuleError>()\n const [schemaCacheEntry, setSchemaCacheEntry] = useState<SchemaCacheEntry | null | undefined>()\n const [schemaLocal, setSchemaLocal] = useState<string>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const firstRequest = !notFound && !schemaCacheEntry && !xyoError\n const schemaChanged = schema !== schemaLocal\n\n if ((schema && firstRequest) || (schema && schemaChanged)) {\n try {\n const schemaCacheEntry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setSchemaCacheEntry(schemaCacheEntry)\n setNotFound(schemaCacheEntry === null || schemaCacheEntry === undefined)\n }\n } catch (e) {\n const error = e as Error\n console.error(e)\n if (mounted()) {\n setError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n }\n if (schemaChanged) {\n setSchemaLocal(schema)\n }\n },\n [xyoError, notFound, schema, schemaLocal, schemaCacheEntry],\n )\n\n return {\n notFound,\n schemaHuri: schemaCacheEntry?.huri,\n schemaPayload: schemaCacheEntry\n ? new PayloadBuilder<SchemaPayload>(schemaCacheEntry?.payload).fields(schemaCacheEntry.payload).build()\n : schemaCacheEntry,\n xyoError,\n }\n}\n\nexport { useGetSchemaPayload }\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\nexport type SchemaList = { name: string }\n\nexport const useSchemaDefinitions = (schemaList?: SchemaList[]): SchemaPayload[] | undefined => {\n const [schemaPayloads, setSchemaPayloads] = useState<SchemaPayload[]>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schemaList) {\n const promiseResults = await Promise.allSettled(schemaList?.map(({ name }) => SchemaCache.instance.get(name)))\n if (mounted()) {\n setSchemaPayloads(\n promiseResults\n .map((result) => (result.status === 'fulfilled' ? result.value?.payload : undefined))\n .filter((item) => item !== undefined && item !== null) as SchemaPayload[],\n )\n }\n }\n },\n [schemaList],\n )\n return schemaPayloads\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaListPayload, SchemaListQueryPayload, SchemaListQuerySchema } from '@xyo-network/diviner-schema-list-model'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { useEffect, useMemo, useState } from 'react'\n\nexport const useSchemaList = (address?: string, nameOrAddress = 'SchemaListDiviner'): [SchemaListPayload | null | undefined, Error | undefined] => {\n const [schemaList, setSchemaList] = useState<SchemaListPayload | null>()\n const [error, setError] = useState<Error>()\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n\n const query: SchemaListQueryPayload[] | undefined = useMemo(\n () =>\n address\n ? [\n {\n address,\n schema: SchemaListQuerySchema,\n },\n ]\n : undefined,\n [address],\n )\n\n useEffect(() => {\n if (diviner === null) {\n setSchemaList(null)\n setError(undefined)\n }\n }, [diviner])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps, require-await\n async (mounted) => {\n if (diviner) {\n try {\n const response = (await diviner.divine(query)) as SchemaListPayload[]\n if (mounted()) {\n setSchemaList(response?.[0])\n setError(undefined)\n }\n } catch (e) {\n setError(e as Error)\n setSchemaList(undefined)\n }\n }\n },\n [diviner, divinerError, query],\n )\n return [schemaList, error]\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { isSchemaStatsPayload, SchemaStatsPayload, SchemaStatsQueryPayload, SchemaStatsQuerySchema } from '@xyo-network/diviner-schema-stats-model'\nimport { TYPES } from '@xyo-network/node-core-types'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { Dispatch, SetStateAction, useMemo, useState } from 'react'\n\nexport const useSchemaStats = (\n statsAddress?: string,\n nameOrAddress = TYPES.SchemaStatsDiviner.description,\n): [SchemaStatsPayload[] | undefined, Error | undefined, Dispatch<SetStateAction<number>>] => {\n const [refresh, setRefresh] = useState(1)\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n const [error, setError] = useState<Error>()\n const refreshHistory = () => setRefresh((previous) => previous + 1)\n\n const [schemaList, setSchemaList] = useState<SchemaStatsPayload[]>()\n\n const query: SchemaStatsQueryPayload = useMemo(\n () => ({\n address: statsAddress,\n schema: SchemaStatsQuerySchema,\n }),\n [statsAddress],\n )\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (diviner) {\n if (divinerError) {\n if (mounted()) {\n setError(divinerError)\n setSchemaList(undefined)\n }\n } else {\n try {\n const schemas = (await diviner.divine([query])).filter(isSchemaStatsPayload)\n if (mounted()) {\n setSchemaList(schemas)\n setError(undefined)\n }\n } catch (ex) {\n setError(ex as Error)\n setSchemaList(undefined)\n }\n }\n }\n },\n [diviner, refresh, divinerError, query],\n )\n\n return [schemaList, error, refreshHistory]\n}\n","import type { WithChildren } from '@xylabs/react-shared'\nimport { useCallback, useEffect } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { SchemaContext } from '../Context'\nimport { useSchema } from '../use'\nimport { SchemaMemoryProvider } from './Memory'\nimport { SchemaProviderProps } from './Props'\n\nconst SchemaRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const { schema, setSchema, schemaList } = useSchema()\n\n const [params, setParams] = useSearchParams()\n\n const routeSchema = params.get('schema')\n\n //update the network stored in the route\n const setSchemaParam = useCallback(\n (schema?: string) => {\n if (schema) {\n params.set('schema', schema)\n setParams(params, { replace: true })\n setSchema?.(schema)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setSchema],\n )\n\n //if the network is actively changed, update both memory and route\n const setSchemaLocal = useCallback(\n (schema: string) => {\n setSchemaParam(schema)\n setSchema?.(schema)\n },\n [setSchemaParam, setSchema],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeSchema !== schema) {\n if (routeSchema === undefined && schema !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setSchemaLocal(schema)\n } else if (routeSchema) {\n //if the route has a selection and it is different from memory, update memory\n setSchema?.(routeSchema)\n }\n }\n }, [routeSchema, schema, setSchemaParam, setSchema, setSchemaLocal])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList, setSchema: setSchemaLocal }}>{children}</SchemaContext.Provider>\n}\n\nexport const SchemaRouteProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ knownSchemaList, defaultSchema, ...props }) => {\n return (\n <SchemaMemoryProvider knownSchemaList={knownSchemaList} defaultSchema={defaultSchema}>\n <SchemaRouteProviderInner {...props} />\n </SchemaMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":"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","names":["entry","NewReleasesIcon","VerifiedIcon","OpenInNewIcon","import_material","import_react","import_react_async_effect","import_schema_cache","import_react","schemaCacheEntry","import_react_async_effect","import_schema_cache","import_react","import_react_async_effect","import_react","import_react_async_effect","import_react_diviner","import_react","import_jsx_runtime","schemaList","import_react","import_react_shared","import_jsx_runtime","schema","import_jsx_runtime","schema"]}
|
package/dist/browser/index.js
CHANGED
|
@@ -239,7 +239,7 @@ var SchemaMemoryProvider = ({ defaultSchema, knownSchemaList = [], ...props }) =
|
|
|
239
239
|
|
|
240
240
|
// src/contexts/Schema/Provider/Route.tsx
|
|
241
241
|
import { useCallback, useEffect as useEffect3 } from "react";
|
|
242
|
-
import { useSearchParams } from "react-router-dom
|
|
242
|
+
import { useSearchParams } from "react-router-dom";
|
|
243
243
|
|
|
244
244
|
// src/contexts/Schema/use.ts
|
|
245
245
|
import { useContextEx } from "@xyo-network/react-shared";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Property/SchemaProperty.tsx","../../src/components/SelectEx/SchemaSelectEx.tsx","../../src/contexts/Schema/Context.ts","../../src/contexts/Schema/Provider/Memory.tsx","../../src/hooks/useGetSchema.tsx","../../src/hooks/useSchemaDefinitions.tsx","../../src/hooks/useSchemaList.tsx","../../src/hooks/useSchemaStats.tsx","../../src/contexts/Schema/Provider/Route.tsx","../../src/contexts/Schema/use.ts"],"sourcesContent":["import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n","import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { compact } from '@xylabs/lodash'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { useSchemaStats } from '../../../hooks'\nimport { SchemaContext } from '../Context'\nimport { SchemaProviderProps } from './Props'\n\nexport const SchemaMemoryProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ defaultSchema, knownSchemaList = [], ...props }) => {\n const [schema, setSchema] = useState(defaultSchema)\n const [schemaList, setSchemaList] = useState<string[] | undefined>(knownSchemaList)\n const [fetchedSchemaStats] = useSchemaStats()\n\n useEffect(() => {\n if (fetchedSchemaStats) {\n const schemaList = compact(fetchedSchemaStats.map(({ name }) => name))\n setSchemaList(schemaList)\n }\n }, [fetchedSchemaStats])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList: knownSchemaList ?? schemaList, setSchema, setSchemaList }} {...props} />\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { ModuleError, ModuleErrorSchema } from '@xyo-network/payload-model'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\n/**\n * Gets a Huri and schema payload from a schema string\n */\nconst useGetSchemaPayload = (schema?: string) => {\n const [notFound, setNotFound] = useState(false)\n const [xyoError, setError] = useState<ModuleError>()\n const [schemaCacheEntry, setSchemaCacheEntry] = useState<SchemaCacheEntry | null | undefined>()\n const [schemaLocal, setSchemaLocal] = useState<string>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const firstRequest = !notFound && !schemaCacheEntry && !xyoError\n const schemaChanged = schema !== schemaLocal\n\n if ((schema && firstRequest) || (schema && schemaChanged)) {\n try {\n const schemaCacheEntry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setSchemaCacheEntry(schemaCacheEntry)\n setNotFound(schemaCacheEntry === null || schemaCacheEntry === undefined)\n }\n } catch (e) {\n const error = e as Error\n console.error(e)\n if (mounted()) {\n setError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n }\n if (schemaChanged) {\n setSchemaLocal(schema)\n }\n },\n [xyoError, notFound, schema, schemaLocal, schemaCacheEntry],\n )\n\n return {\n notFound,\n schemaHuri: schemaCacheEntry?.huri,\n schemaPayload: schemaCacheEntry\n ? new PayloadBuilder<SchemaPayload>(schemaCacheEntry?.payload).fields(schemaCacheEntry.payload).build()\n : schemaCacheEntry,\n xyoError,\n }\n}\n\nexport { useGetSchemaPayload }\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\nexport type SchemaList = { name: string }\n\nexport const useSchemaDefinitions = (schemaList?: SchemaList[]): SchemaPayload[] | undefined => {\n const [schemaPayloads, setSchemaPayloads] = useState<SchemaPayload[]>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schemaList) {\n const promiseResults = await Promise.allSettled(schemaList?.map(({ name }) => SchemaCache.instance.get(name)))\n if (mounted()) {\n setSchemaPayloads(\n promiseResults\n .map((result) => (result.status === 'fulfilled' ? result.value?.payload : undefined))\n .filter((item) => item !== undefined && item !== null) as SchemaPayload[],\n )\n }\n }\n },\n [schemaList],\n )\n return schemaPayloads\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaListPayload, SchemaListQueryPayload, SchemaListQuerySchema } from '@xyo-network/diviner-schema-list-model'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { useEffect, useMemo, useState } from 'react'\n\nexport const useSchemaList = (address?: string, nameOrAddress = 'SchemaListDiviner'): [SchemaListPayload | null | undefined, Error | undefined] => {\n const [schemaList, setSchemaList] = useState<SchemaListPayload | null>()\n const [error, setError] = useState<Error>()\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n\n const query: SchemaListQueryPayload[] | undefined = useMemo(\n () =>\n address\n ? [\n {\n address,\n schema: SchemaListQuerySchema,\n },\n ]\n : undefined,\n [address],\n )\n\n useEffect(() => {\n if (diviner === null) {\n setSchemaList(null)\n setError(undefined)\n }\n }, [diviner])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps, require-await\n async (mounted) => {\n if (diviner) {\n try {\n const response = (await diviner.divine(query)) as SchemaListPayload[]\n if (mounted()) {\n setSchemaList(response?.[0])\n setError(undefined)\n }\n } catch (e) {\n setError(e as Error)\n setSchemaList(undefined)\n }\n }\n },\n [diviner, divinerError, query],\n )\n return [schemaList, error]\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { isSchemaStatsPayload, SchemaStatsPayload, SchemaStatsQueryPayload, SchemaStatsQuerySchema } from '@xyo-network/diviner-schema-stats-model'\nimport { TYPES } from '@xyo-network/node-core-types'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { Dispatch, SetStateAction, useMemo, useState } from 'react'\n\nexport const useSchemaStats = (\n statsAddress?: string,\n nameOrAddress = TYPES.SchemaStatsDiviner.description,\n): [SchemaStatsPayload[] | undefined, Error | undefined, Dispatch<SetStateAction<number>>] => {\n const [refresh, setRefresh] = useState(1)\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n const [error, setError] = useState<Error>()\n const refreshHistory = () => setRefresh((previous) => previous + 1)\n\n const [schemaList, setSchemaList] = useState<SchemaStatsPayload[]>()\n\n const query: SchemaStatsQueryPayload = useMemo(\n () => ({\n address: statsAddress,\n schema: SchemaStatsQuerySchema,\n }),\n [statsAddress],\n )\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (diviner) {\n if (divinerError) {\n if (mounted()) {\n setError(divinerError)\n setSchemaList(undefined)\n }\n } else {\n try {\n const schemas = (await diviner.divine([query])).filter(isSchemaStatsPayload)\n if (mounted()) {\n setSchemaList(schemas)\n setError(undefined)\n }\n } catch (ex) {\n setError(ex as Error)\n setSchemaList(undefined)\n }\n }\n }\n },\n [diviner, refresh, divinerError, query],\n )\n\n return [schemaList, error, refreshHistory]\n}\n","import type { WithChildren } from '@xylabs/react-shared'\nimport { useCallback, useEffect } from 'react'\nimport { useSearchParams } from 'react-router-dom-6'\n\nimport { SchemaContext } from '../Context'\nimport { useSchema } from '../use'\nimport { SchemaMemoryProvider } from './Memory'\nimport { SchemaProviderProps } from './Props'\n\nconst SchemaRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const { schema, setSchema, schemaList } = useSchema()\n\n const [params, setParams] = useSearchParams()\n\n const routeSchema = params.get('schema')\n\n //update the network stored in the route\n const setSchemaParam = useCallback(\n (schema?: string) => {\n if (schema) {\n params.set('schema', schema)\n setParams(params, { replace: true })\n setSchema?.(schema)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setSchema],\n )\n\n //if the network is actively changed, update both memory and route\n const setSchemaLocal = useCallback(\n (schema: string) => {\n setSchemaParam(schema)\n setSchema?.(schema)\n },\n [setSchemaParam, setSchema],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeSchema !== schema) {\n if (routeSchema === undefined && schema !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setSchemaLocal(schema)\n } else if (routeSchema) {\n //if the route has a selection and it is different from memory, update memory\n setSchema?.(routeSchema)\n }\n }\n }, [routeSchema, schema, setSchemaParam, setSchema, setSchemaLocal])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList, setSchema: setSchemaLocal }}>{children}</SchemaContext.Provider>\n}\n\nexport const SchemaRouteProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ knownSchemaList, defaultSchema, ...props }) => {\n return (\n <SchemaMemoryProvider knownSchemaList={knownSchemaList} defaultSchema={defaultSchema}>\n <SchemaRouteProviderInner {...props} />\n </SchemaMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":"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","names":["entry","useEffect","useState","useAsyncEffect","SchemaCache","useState","schemaCacheEntry","useAsyncEffect","SchemaCache","useState","useAsyncEffect","useState","useAsyncEffect","useDivinerFromNode","useMemo","useState","jsx","useState","useEffect","schemaList","useEffect","jsx","schema","useEffect","jsx","jsxs","schema"]}
|
|
1
|
+
{"version":3,"sources":["../../src/components/Property/SchemaProperty.tsx","../../src/components/SelectEx/SchemaSelectEx.tsx","../../src/contexts/Schema/Context.ts","../../src/contexts/Schema/Provider/Memory.tsx","../../src/hooks/useGetSchema.tsx","../../src/hooks/useSchemaDefinitions.tsx","../../src/hooks/useSchemaList.tsx","../../src/hooks/useSchemaStats.tsx","../../src/contexts/Schema/Provider/Route.tsx","../../src/contexts/Schema/use.ts"],"sourcesContent":["import { NewReleases as NewReleasesIcon, OpenInNew as OpenInNewIcon, Verified as VerifiedIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { LinkEx } from '@xylabs/react-link'\nimport { EventDispatch, EventNoun, useEvent } from '@xyo-network/react-event'\nimport { Property, PropertyProps, PropertyValue } from '@xyo-network/react-property'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { forwardRef, useState } from 'react'\n\nexport type SchemaPropertyProps = PropertyProps & {\n showLinkNames?: boolean\n showOpenNewWindowLink?: boolean\n showStatusIcon?: boolean\n value?: string\n}\n\nconst useResolveSchema = (schema?: string) => {\n const [entry, setEntry] = useState<SchemaCacheEntry | null>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schema) {\n const entry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setEntry(entry)\n }\n }\n },\n [schema],\n )\n return entry\n}\n\nexport const SchemaProperty = forwardRef<HTMLDivElement, SchemaPropertyProps>(\n ({ showLinkNames = true, showOpenNewWindowLink = true, showStatusIcon = true, titleProps, value, ...props }, forwardedRef) => {\n const resolvedSchema = useResolveSchema(value)\n const [buttonRef, buttonDispatch] = useEvent<HTMLButtonElement>(undefined)\n const [divRef, divDispatch] = useEvent<HTMLDivElement>(undefined)\n\n const onClick = (dispatch?: EventDispatch<EventNoun, 'click', string>, openNewWindow = false) => {\n dispatch?.(\n 'schema',\n 'click',\n JSON.stringify({\n openNewWindow,\n schema: value,\n }),\n )\n }\n\n return (\n <Property ref={forwardedRef} title=\"Schema\" value={value} tip=\"Schema sent with the payload\" titleProps={titleProps} {...props}>\n {value && showStatusIcon ? (\n resolvedSchema === null ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"warning\" fontSize=\"inherit\" />\n </IconButton>\n ) : resolvedSchema === undefined ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch)}>\n <NewReleasesIcon color=\"disabled\" fontSize=\"inherit\" />\n </IconButton>\n ) : (\n <IconButton rel=\"noopener noreferrer\" size=\"small\" target=\"_blank\" href={resolvedSchema?.huri?.href ?? ''}>\n <VerifiedIcon color=\"success\" fontSize=\"inherit\" />\n </IconButton>\n )\n ) : null}\n {value ? (\n <>\n {showLinkNames ? (\n <LinkEx display=\"block\" width=\"100%\" sx={{ cursor: 'pointer' }}>\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n </LinkEx>\n ) : (\n <PropertyValue ref={divRef} value={value} title=\"view schema\" onClick={() => onClick(divDispatch)} />\n )}\n {showOpenNewWindowLink ? (\n <IconButton ref={buttonRef} size=\"small\" onClick={() => onClick(buttonDispatch, true)}>\n <OpenInNewIcon fontSize=\"inherit\" />\n </IconButton>\n ) : null}\n </>\n ) : null}\n </Property>\n )\n },\n)\n\nSchemaProperty.displayName = 'SchemaProperty'\n","import { MenuItem, Typography } from '@mui/material'\nimport { SelectEx, SelectExProps } from '@xylabs/react-select'\n\nimport { useSchema } from '../../contexts'\n\nexport type SchemaSelectExProps = SelectExProps<string>\n\nexport const SchemaSelectEx: React.FC<SchemaSelectExProps> = ({ onChange, ...props }) => {\n const { schema, setSchema, schemaList } = useSchema(false)\n\n return (\n <SelectEx\n variant=\"outlined\"\n size=\"small\"\n value={schema ?? 'none'}\n onChange={(event, child) => {\n if (event.target.value !== schema) {\n onChange?.(event, child)\n setSchema?.(event.target.value)\n }\n }}\n renderValue={(value) => {\n return <Typography>{value === 'none' ? '- None -' : value}</Typography>\n }}\n {...props}\n >\n {schemaList?.map((schema, index) => {\n return (\n <MenuItem key={index} value={schema}>\n {schema}\n </MenuItem>\n )\n })}\n <MenuItem key=\"none\" value=\"none\">\n - None -\n </MenuItem>\n </SelectEx>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContextState } from './State'\n\nexport const SchemaContext = createContextEx<SchemaContextState>()\n","import { compact } from '@xylabs/lodash'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { useSchemaStats } from '../../../hooks'\nimport { SchemaContext } from '../Context'\nimport { SchemaProviderProps } from './Props'\n\nexport const SchemaMemoryProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ defaultSchema, knownSchemaList = [], ...props }) => {\n const [schema, setSchema] = useState(defaultSchema)\n const [schemaList, setSchemaList] = useState<string[] | undefined>(knownSchemaList)\n const [fetchedSchemaStats] = useSchemaStats()\n\n useEffect(() => {\n if (fetchedSchemaStats) {\n const schemaList = compact(fetchedSchemaStats.map(({ name }) => name))\n setSchemaList(schemaList)\n }\n }, [fetchedSchemaStats])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList: knownSchemaList ?? schemaList, setSchema, setSchemaList }} {...props} />\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { ModuleError, ModuleErrorSchema } from '@xyo-network/payload-model'\nimport { SchemaCache, SchemaCacheEntry } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\n/**\n * Gets a Huri and schema payload from a schema string\n */\nconst useGetSchemaPayload = (schema?: string) => {\n const [notFound, setNotFound] = useState(false)\n const [xyoError, setError] = useState<ModuleError>()\n const [schemaCacheEntry, setSchemaCacheEntry] = useState<SchemaCacheEntry | null | undefined>()\n const [schemaLocal, setSchemaLocal] = useState<string>()\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n const firstRequest = !notFound && !schemaCacheEntry && !xyoError\n const schemaChanged = schema !== schemaLocal\n\n if ((schema && firstRequest) || (schema && schemaChanged)) {\n try {\n const schemaCacheEntry = await SchemaCache.instance.get(schema)\n if (mounted()) {\n setSchemaCacheEntry(schemaCacheEntry)\n setNotFound(schemaCacheEntry === null || schemaCacheEntry === undefined)\n }\n } catch (e) {\n const error = e as Error\n console.error(e)\n if (mounted()) {\n setError({ message: error.message, schema: ModuleErrorSchema, sources: [] })\n }\n }\n }\n if (schemaChanged) {\n setSchemaLocal(schema)\n }\n },\n [xyoError, notFound, schema, schemaLocal, schemaCacheEntry],\n )\n\n return {\n notFound,\n schemaHuri: schemaCacheEntry?.huri,\n schemaPayload: schemaCacheEntry\n ? new PayloadBuilder<SchemaPayload>(schemaCacheEntry?.payload).fields(schemaCacheEntry.payload).build()\n : schemaCacheEntry,\n xyoError,\n }\n}\n\nexport { useGetSchemaPayload }\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaCache } from '@xyo-network/schema-cache'\nimport { SchemaPayload } from '@xyo-network/schema-payload-plugin'\nimport { useState } from 'react'\n\nexport type SchemaList = { name: string }\n\nexport const useSchemaDefinitions = (schemaList?: SchemaList[]): SchemaPayload[] | undefined => {\n const [schemaPayloads, setSchemaPayloads] = useState<SchemaPayload[]>()\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (schemaList) {\n const promiseResults = await Promise.allSettled(schemaList?.map(({ name }) => SchemaCache.instance.get(name)))\n if (mounted()) {\n setSchemaPayloads(\n promiseResults\n .map((result) => (result.status === 'fulfilled' ? result.value?.payload : undefined))\n .filter((item) => item !== undefined && item !== null) as SchemaPayload[],\n )\n }\n }\n },\n [schemaList],\n )\n return schemaPayloads\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { SchemaListPayload, SchemaListQueryPayload, SchemaListQuerySchema } from '@xyo-network/diviner-schema-list-model'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { useEffect, useMemo, useState } from 'react'\n\nexport const useSchemaList = (address?: string, nameOrAddress = 'SchemaListDiviner'): [SchemaListPayload | null | undefined, Error | undefined] => {\n const [schemaList, setSchemaList] = useState<SchemaListPayload | null>()\n const [error, setError] = useState<Error>()\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n\n const query: SchemaListQueryPayload[] | undefined = useMemo(\n () =>\n address\n ? [\n {\n address,\n schema: SchemaListQuerySchema,\n },\n ]\n : undefined,\n [address],\n )\n\n useEffect(() => {\n if (diviner === null) {\n setSchemaList(null)\n setError(undefined)\n }\n }, [diviner])\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps, require-await\n async (mounted) => {\n if (diviner) {\n try {\n const response = (await diviner.divine(query)) as SchemaListPayload[]\n if (mounted()) {\n setSchemaList(response?.[0])\n setError(undefined)\n }\n } catch (e) {\n setError(e as Error)\n setSchemaList(undefined)\n }\n }\n },\n [diviner, divinerError, query],\n )\n return [schemaList, error]\n}\n","import { useAsyncEffect } from '@xylabs/react-async-effect'\nimport { isSchemaStatsPayload, SchemaStatsPayload, SchemaStatsQueryPayload, SchemaStatsQuerySchema } from '@xyo-network/diviner-schema-stats-model'\nimport { TYPES } from '@xyo-network/node-core-types'\nimport { useDivinerFromNode } from '@xyo-network/react-diviner'\nimport { Dispatch, SetStateAction, useMemo, useState } from 'react'\n\nexport const useSchemaStats = (\n statsAddress?: string,\n nameOrAddress = TYPES.SchemaStatsDiviner.description,\n): [SchemaStatsPayload[] | undefined, Error | undefined, Dispatch<SetStateAction<number>>] => {\n const [refresh, setRefresh] = useState(1)\n const [diviner, divinerError] = useDivinerFromNode(nameOrAddress)\n const [error, setError] = useState<Error>()\n const refreshHistory = () => setRefresh((previous) => previous + 1)\n\n const [schemaList, setSchemaList] = useState<SchemaStatsPayload[]>()\n\n const query: SchemaStatsQueryPayload = useMemo(\n () => ({\n address: statsAddress,\n schema: SchemaStatsQuerySchema,\n }),\n [statsAddress],\n )\n\n useAsyncEffect(\n // eslint-disable-next-line react-hooks/exhaustive-deps\n async (mounted) => {\n if (diviner) {\n if (divinerError) {\n if (mounted()) {\n setError(divinerError)\n setSchemaList(undefined)\n }\n } else {\n try {\n const schemas = (await diviner.divine([query])).filter(isSchemaStatsPayload)\n if (mounted()) {\n setSchemaList(schemas)\n setError(undefined)\n }\n } catch (ex) {\n setError(ex as Error)\n setSchemaList(undefined)\n }\n }\n }\n },\n [diviner, refresh, divinerError, query],\n )\n\n return [schemaList, error, refreshHistory]\n}\n","import type { WithChildren } from '@xylabs/react-shared'\nimport { useCallback, useEffect } from 'react'\nimport { useSearchParams } from 'react-router-dom'\n\nimport { SchemaContext } from '../Context'\nimport { useSchema } from '../use'\nimport { SchemaMemoryProvider } from './Memory'\nimport { SchemaProviderProps } from './Props'\n\nconst SchemaRouteProviderInner: React.FC<WithChildren> = ({ children }) => {\n const { schema, setSchema, schemaList } = useSchema()\n\n const [params, setParams] = useSearchParams()\n\n const routeSchema = params.get('schema')\n\n //update the network stored in the route\n const setSchemaParam = useCallback(\n (schema?: string) => {\n if (schema) {\n params.set('schema', schema)\n setParams(params, { replace: true })\n setSchema?.(schema)\n } else {\n params.delete('network')\n }\n },\n [params, setParams, setSchema],\n )\n\n //if the network is actively changed, update both memory and route\n const setSchemaLocal = useCallback(\n (schema: string) => {\n setSchemaParam(schema)\n setSchema?.(schema)\n },\n [setSchemaParam, setSchema],\n )\n\n //sync memory and route storage of network\n useEffect(() => {\n if (routeSchema !== schema) {\n if (routeSchema === undefined && schema !== undefined) {\n //if the route does not have a network selected, use what is in the memory context\n setSchemaLocal(schema)\n } else if (routeSchema) {\n //if the route has a selection and it is different from memory, update memory\n setSchema?.(routeSchema)\n }\n }\n }, [routeSchema, schema, setSchemaParam, setSchema, setSchemaLocal])\n\n return <SchemaContext.Provider value={{ provided: true, schema, schemaList, setSchema: setSchemaLocal }}>{children}</SchemaContext.Provider>\n}\n\nexport const SchemaRouteProvider: React.FC<WithChildren<SchemaProviderProps>> = ({ knownSchemaList, defaultSchema, ...props }) => {\n return (\n <SchemaMemoryProvider knownSchemaList={knownSchemaList} defaultSchema={defaultSchema}>\n <SchemaRouteProviderInner {...props} />\n </SchemaMemoryProvider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { SchemaContext } from './Context'\nimport { SchemaContextState } from './State'\n\nexport const useSchema = (required = false) => {\n return useContextEx<SchemaContextState>(SchemaContext, 'Schema', required)\n}\n"],"mappings":"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","names":["entry","useEffect","useState","useAsyncEffect","SchemaCache","useState","schemaCacheEntry","useAsyncEffect","SchemaCache","useState","useAsyncEffect","useState","useAsyncEffect","useDivinerFromNode","useMemo","useState","jsx","useState","useEffect","schemaList","useEffect","jsx","schema","useEffect","jsx","jsxs","schema"]}
|
package/dist/docs.json
CHANGED
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/State.ts",
|
|
63
63
|
"line": 6,
|
|
64
64
|
"character": 2,
|
|
65
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
65
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/State.ts#L6"
|
|
66
66
|
}
|
|
67
67
|
],
|
|
68
68
|
"type": {
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/State.ts",
|
|
98
98
|
"line": 8,
|
|
99
99
|
"character": 2,
|
|
100
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
100
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/State.ts#L8"
|
|
101
101
|
}
|
|
102
102
|
],
|
|
103
103
|
"type": {
|
|
@@ -135,7 +135,7 @@
|
|
|
135
135
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/State.ts",
|
|
136
136
|
"line": 10,
|
|
137
137
|
"character": 2,
|
|
138
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
138
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/State.ts#L10"
|
|
139
139
|
}
|
|
140
140
|
],
|
|
141
141
|
"type": {
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/State.ts",
|
|
183
183
|
"line": 12,
|
|
184
184
|
"character": 2,
|
|
185
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
185
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/State.ts#L12"
|
|
186
186
|
}
|
|
187
187
|
],
|
|
188
188
|
"type": {
|
|
@@ -223,7 +223,7 @@
|
|
|
223
223
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/State.ts",
|
|
224
224
|
"line": 4,
|
|
225
225
|
"character": 17,
|
|
226
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
226
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/State.ts#L4"
|
|
227
227
|
}
|
|
228
228
|
],
|
|
229
229
|
"extendedTypes": [
|
|
@@ -258,7 +258,7 @@
|
|
|
258
258
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/Provider/Props.tsx",
|
|
259
259
|
"line": 2,
|
|
260
260
|
"character": 2,
|
|
261
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
261
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/Provider/Props.tsx#L2"
|
|
262
262
|
}
|
|
263
263
|
],
|
|
264
264
|
"type": {
|
|
@@ -279,7 +279,7 @@
|
|
|
279
279
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/Provider/Props.tsx",
|
|
280
280
|
"line": 3,
|
|
281
281
|
"character": 2,
|
|
282
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
282
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/Provider/Props.tsx#L3"
|
|
283
283
|
}
|
|
284
284
|
],
|
|
285
285
|
"type": {
|
|
@@ -305,7 +305,7 @@
|
|
|
305
305
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/Provider/Props.tsx",
|
|
306
306
|
"line": 1,
|
|
307
307
|
"character": 17,
|
|
308
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
308
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/Provider/Props.tsx#L1"
|
|
309
309
|
}
|
|
310
310
|
]
|
|
311
311
|
},
|
|
@@ -320,7 +320,7 @@
|
|
|
320
320
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx",
|
|
321
321
|
"line": 6,
|
|
322
322
|
"character": 12,
|
|
323
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
323
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx#L6"
|
|
324
324
|
}
|
|
325
325
|
],
|
|
326
326
|
"type": {
|
|
@@ -343,7 +343,7 @@
|
|
|
343
343
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx",
|
|
344
344
|
"line": 6,
|
|
345
345
|
"character": 27,
|
|
346
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
346
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx#L6"
|
|
347
347
|
}
|
|
348
348
|
],
|
|
349
349
|
"type": {
|
|
@@ -365,7 +365,7 @@
|
|
|
365
365
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx",
|
|
366
366
|
"line": 6,
|
|
367
367
|
"character": 25,
|
|
368
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
368
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx#L6"
|
|
369
369
|
}
|
|
370
370
|
]
|
|
371
371
|
}
|
|
@@ -382,7 +382,7 @@
|
|
|
382
382
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
383
383
|
"line": 10,
|
|
384
384
|
"character": 12,
|
|
385
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
385
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L10"
|
|
386
386
|
}
|
|
387
387
|
],
|
|
388
388
|
"type": {
|
|
@@ -419,7 +419,7 @@
|
|
|
419
419
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
420
420
|
"line": 11,
|
|
421
421
|
"character": 2,
|
|
422
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
422
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L11"
|
|
423
423
|
}
|
|
424
424
|
],
|
|
425
425
|
"type": {
|
|
@@ -440,7 +440,7 @@
|
|
|
440
440
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
441
441
|
"line": 12,
|
|
442
442
|
"character": 2,
|
|
443
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
443
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L12"
|
|
444
444
|
}
|
|
445
445
|
],
|
|
446
446
|
"type": {
|
|
@@ -461,7 +461,7 @@
|
|
|
461
461
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
462
462
|
"line": 13,
|
|
463
463
|
"character": 2,
|
|
464
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
464
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L13"
|
|
465
465
|
}
|
|
466
466
|
],
|
|
467
467
|
"type": {
|
|
@@ -482,7 +482,7 @@
|
|
|
482
482
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
483
483
|
"line": 14,
|
|
484
484
|
"character": 2,
|
|
485
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
485
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L14"
|
|
486
486
|
}
|
|
487
487
|
],
|
|
488
488
|
"type": {
|
|
@@ -507,7 +507,7 @@
|
|
|
507
507
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
508
508
|
"line": 10,
|
|
509
509
|
"character": 50,
|
|
510
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
510
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L10"
|
|
511
511
|
}
|
|
512
512
|
]
|
|
513
513
|
}
|
|
@@ -526,7 +526,7 @@
|
|
|
526
526
|
"fileName": "packages/sdk/packages/schema/src/components/SelectEx/SchemaSelectEx.tsx",
|
|
527
527
|
"line": 6,
|
|
528
528
|
"character": 12,
|
|
529
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
529
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/SelectEx/SchemaSelectEx.tsx#L6"
|
|
530
530
|
}
|
|
531
531
|
],
|
|
532
532
|
"type": {
|
|
@@ -558,7 +558,7 @@
|
|
|
558
558
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/Context.ts",
|
|
559
559
|
"line": 5,
|
|
560
560
|
"character": 13,
|
|
561
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
561
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/Context.ts#L5"
|
|
562
562
|
}
|
|
563
563
|
],
|
|
564
564
|
"type": {
|
|
@@ -606,7 +606,7 @@
|
|
|
606
606
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/Provider/Memory.tsx",
|
|
607
607
|
"line": 9,
|
|
608
608
|
"character": 13,
|
|
609
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
609
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/Provider/Memory.tsx#L9"
|
|
610
610
|
}
|
|
611
611
|
],
|
|
612
612
|
"signatures": [
|
|
@@ -705,7 +705,7 @@
|
|
|
705
705
|
"fileName": "packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx",
|
|
706
706
|
"line": 34,
|
|
707
707
|
"character": 13,
|
|
708
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
708
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/Property/SchemaProperty.tsx#L34"
|
|
709
709
|
}
|
|
710
710
|
],
|
|
711
711
|
"signatures": [
|
|
@@ -807,7 +807,7 @@
|
|
|
807
807
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/Provider/Route.tsx",
|
|
808
808
|
"line": 56,
|
|
809
809
|
"character": 13,
|
|
810
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
810
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/Provider/Route.tsx#L56"
|
|
811
811
|
}
|
|
812
812
|
],
|
|
813
813
|
"signatures": [
|
|
@@ -906,7 +906,7 @@
|
|
|
906
906
|
"fileName": "packages/sdk/packages/schema/src/components/SelectEx/SchemaSelectEx.tsx",
|
|
907
907
|
"line": 8,
|
|
908
908
|
"character": 13,
|
|
909
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
909
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/components/SelectEx/SchemaSelectEx.tsx#L8"
|
|
910
910
|
}
|
|
911
911
|
],
|
|
912
912
|
"signatures": [
|
|
@@ -994,7 +994,7 @@
|
|
|
994
994
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
995
995
|
"line": 11,
|
|
996
996
|
"character": 6,
|
|
997
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
997
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L11"
|
|
998
998
|
}
|
|
999
999
|
],
|
|
1000
1000
|
"signatures": [
|
|
@@ -1017,7 +1017,7 @@
|
|
|
1017
1017
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
1018
1018
|
"line": 11,
|
|
1019
1019
|
"character": 28,
|
|
1020
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1020
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L11"
|
|
1021
1021
|
}
|
|
1022
1022
|
],
|
|
1023
1023
|
"parameters": [
|
|
@@ -1055,7 +1055,7 @@
|
|
|
1055
1055
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
1056
1056
|
"line": 46,
|
|
1057
1057
|
"character": 4,
|
|
1058
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1058
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L46"
|
|
1059
1059
|
}
|
|
1060
1060
|
],
|
|
1061
1061
|
"type": {
|
|
@@ -1074,7 +1074,7 @@
|
|
|
1074
1074
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
1075
1075
|
"line": 47,
|
|
1076
1076
|
"character": 4,
|
|
1077
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1077
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L47"
|
|
1078
1078
|
}
|
|
1079
1079
|
],
|
|
1080
1080
|
"type": {
|
|
@@ -1141,7 +1141,7 @@
|
|
|
1141
1141
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
1142
1142
|
"line": 48,
|
|
1143
1143
|
"character": 4,
|
|
1144
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1144
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L48"
|
|
1145
1145
|
}
|
|
1146
1146
|
],
|
|
1147
1147
|
"type": {
|
|
@@ -1210,7 +1210,7 @@
|
|
|
1210
1210
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
1211
1211
|
"line": 51,
|
|
1212
1212
|
"character": 4,
|
|
1213
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1213
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L51"
|
|
1214
1214
|
}
|
|
1215
1215
|
],
|
|
1216
1216
|
"type": {
|
|
@@ -1280,7 +1280,7 @@
|
|
|
1280
1280
|
"fileName": "packages/sdk/packages/schema/src/hooks/useGetSchema.tsx",
|
|
1281
1281
|
"line": 45,
|
|
1282
1282
|
"character": 9,
|
|
1283
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1283
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useGetSchema.tsx#L45"
|
|
1284
1284
|
}
|
|
1285
1285
|
]
|
|
1286
1286
|
}
|
|
@@ -1299,7 +1299,7 @@
|
|
|
1299
1299
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/use.ts",
|
|
1300
1300
|
"line": 6,
|
|
1301
1301
|
"character": 13,
|
|
1302
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1302
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/use.ts#L6"
|
|
1303
1303
|
}
|
|
1304
1304
|
],
|
|
1305
1305
|
"signatures": [
|
|
@@ -1314,7 +1314,7 @@
|
|
|
1314
1314
|
"fileName": "packages/sdk/packages/schema/src/contexts/Schema/use.ts",
|
|
1315
1315
|
"line": 6,
|
|
1316
1316
|
"character": 25,
|
|
1317
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1317
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/contexts/Schema/use.ts#L6"
|
|
1318
1318
|
}
|
|
1319
1319
|
],
|
|
1320
1320
|
"parameters": [
|
|
@@ -1366,7 +1366,7 @@
|
|
|
1366
1366
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx",
|
|
1367
1367
|
"line": 8,
|
|
1368
1368
|
"character": 13,
|
|
1369
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1369
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx#L8"
|
|
1370
1370
|
}
|
|
1371
1371
|
],
|
|
1372
1372
|
"signatures": [
|
|
@@ -1381,7 +1381,7 @@
|
|
|
1381
1381
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx",
|
|
1382
1382
|
"line": 8,
|
|
1383
1383
|
"character": 36,
|
|
1384
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1384
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaDefinitions.tsx#L8"
|
|
1385
1385
|
}
|
|
1386
1386
|
],
|
|
1387
1387
|
"parameters": [
|
|
@@ -1470,7 +1470,7 @@
|
|
|
1470
1470
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaList.tsx",
|
|
1471
1471
|
"line": 6,
|
|
1472
1472
|
"character": 13,
|
|
1473
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1473
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaList.tsx#L6"
|
|
1474
1474
|
}
|
|
1475
1475
|
],
|
|
1476
1476
|
"signatures": [
|
|
@@ -1485,7 +1485,7 @@
|
|
|
1485
1485
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaList.tsx",
|
|
1486
1486
|
"line": 6,
|
|
1487
1487
|
"character": 29,
|
|
1488
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1488
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaList.tsx#L6"
|
|
1489
1489
|
}
|
|
1490
1490
|
],
|
|
1491
1491
|
"parameters": [
|
|
@@ -1605,7 +1605,7 @@
|
|
|
1605
1605
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaStats.tsx",
|
|
1606
1606
|
"line": 7,
|
|
1607
1607
|
"character": 13,
|
|
1608
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1608
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaStats.tsx#L7"
|
|
1609
1609
|
}
|
|
1610
1610
|
],
|
|
1611
1611
|
"signatures": [
|
|
@@ -1620,7 +1620,7 @@
|
|
|
1620
1620
|
"fileName": "packages/sdk/packages/schema/src/hooks/useSchemaStats.tsx",
|
|
1621
1621
|
"line": 7,
|
|
1622
1622
|
"character": 30,
|
|
1623
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/
|
|
1623
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/798614ebd/packages/sdk/packages/schema/src/hooks/useSchemaStats.tsx#L7"
|
|
1624
1624
|
}
|
|
1625
1625
|
],
|
|
1626
1626
|
"parameters": [
|
|
@@ -24,7 +24,7 @@ __export(Route_exports, {
|
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(Route_exports);
|
|
26
26
|
var import_react3 = require("react");
|
|
27
|
-
var
|
|
27
|
+
var import_react_router_dom = require("react-router-dom");
|
|
28
28
|
|
|
29
29
|
// src/contexts/Schema/Context.ts
|
|
30
30
|
var import_react_shared = require("@xyo-network/react-shared");
|
|
@@ -106,7 +106,7 @@ var SchemaMemoryProvider = ({ defaultSchema, knownSchemaList = [], ...props }) =
|
|
|
106
106
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
107
107
|
var SchemaRouteProviderInner = ({ children }) => {
|
|
108
108
|
const { schema, setSchema, schemaList } = useSchema();
|
|
109
|
-
const [params, setParams] = (0,
|
|
109
|
+
const [params, setParams] = (0, import_react_router_dom.useSearchParams)();
|
|
110
110
|
const routeSchema = params.get("schema");
|
|
111
111
|
const setSchemaParam = (0, import_react3.useCallback)(
|
|
112
112
|
(schema2) => {
|