@xyo-network/react-payload-plugin-resolver 2.67.6 → 2.67.7
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/PayloadRenderPluginResolver.d.cts.map +1 -1
- package/dist/browser/PayloadRenderPluginResolver.d.mts.map +1 -1
- package/dist/browser/PayloadRenderPluginResolver.d.ts.map +1 -1
- package/dist/browser/index.cjs +5 -4
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +5 -4
- package/dist/browser/index.js.map +1 -1
- package/dist/node/PayloadRenderPluginResolver.d.cts.map +1 -1
- package/dist/node/PayloadRenderPluginResolver.d.mts.map +1 -1
- package/dist/node/PayloadRenderPluginResolver.d.ts.map +1 -1
- package/dist/node/index.cjs +5 -4
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +5 -4
- package/dist/node/index.js.map +1 -1
- package/package.json +7 -7
- package/src/PayloadRenderPluginResolver.ts +5 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;IAUjE,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;IAUjE,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;IAUjE,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzB"}
|
package/dist/browser/index.cjs
CHANGED
|
@@ -152,10 +152,11 @@ var PayloadRenderPluginResolver = class {
|
|
|
152
152
|
}
|
|
153
153
|
register(plugin, defaultForSchema) {
|
|
154
154
|
this.plugins.push(plugin);
|
|
155
|
-
defaultForSchema
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
155
|
+
if (defaultForSchema)
|
|
156
|
+
for (const schema of defaultForSchema) {
|
|
157
|
+
(0, import_assert.assertEx)(plugin.canRender({ schema }), "Default renderer must be able to render schema");
|
|
158
|
+
this.schemaDefaultPlugin.set(schema, plugin);
|
|
159
|
+
}
|
|
159
160
|
return this;
|
|
160
161
|
}
|
|
161
162
|
resolve(payload) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["export * from './contexts'\nexport * from './PayloadRenderPluginResolver'\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n defaultForSchema
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["export * from './contexts'\nexport * from './PayloadRenderPluginResolver'\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n if (defaultForSchema)\n for (const schema of defaultForSchema) {\n assertEx(plugin.canRender({ schema }), 'Default renderer must be able to render schema')\n this.schemaDefaultPlugin.set(schema, plugin)\n }\n return this\n }\n\n resolve(payload: Payload) {\n return this.schemaDefaultPlugin.get(payload.schema) ?? [...this.plugins.values()].find((plugin) => plugin.canRender(payload))\n }\n}\n"],"mappings":"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","names":["import_react_shared","import_react_shared","import_react","import_jsx_runtime","import_react_shared","import_react_shared","import_react","import_jsx_runtime","import_react_shared"]}
|
package/dist/browser/index.js
CHANGED
|
@@ -117,10 +117,11 @@ var PayloadRenderPluginResolver = class {
|
|
|
117
117
|
}
|
|
118
118
|
register(plugin, defaultForSchema) {
|
|
119
119
|
this.plugins.push(plugin);
|
|
120
|
-
defaultForSchema
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
120
|
+
if (defaultForSchema)
|
|
121
|
+
for (const schema of defaultForSchema) {
|
|
122
|
+
assertEx(plugin.canRender({ schema }), "Default renderer must be able to render schema");
|
|
123
|
+
this.schemaDefaultPlugin.set(schema, plugin);
|
|
124
|
+
}
|
|
124
125
|
return this;
|
|
125
126
|
}
|
|
126
127
|
resolve(payload) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n defaultForSchema
|
|
1
|
+
{"version":3,"sources":["../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n if (defaultForSchema)\n for (const schema of defaultForSchema) {\n assertEx(plugin.canRender({ schema }), 'Default renderer must be able to render schema')\n this.schemaDefaultPlugin.set(schema, plugin)\n }\n return this\n }\n\n resolve(payload: Payload) {\n return this.schemaDefaultPlugin.get(payload.schema) ?? [...this.plugins.values()].find((plugin) => plugin.canRender(payload))\n }\n}\n"],"mappings":"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","names":["createContextEx","useState","jsx","useState","useContextEx","useContextEx","createContextEx","useState","jsx","useState","useContextEx","useContextEx"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;IAUjE,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;IAUjE,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"PayloadRenderPluginResolver.d.ts","sourceRoot":"","sources":["../../src/PayloadRenderPluginResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAEvE,qBAAa,2BAA2B;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAK;IAC7C,SAAS,CAAC,mBAAmB,mCAAyC;IAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IActB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE;IAUjE,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzB"}
|
package/dist/node/index.cjs
CHANGED
|
@@ -152,10 +152,11 @@ var PayloadRenderPluginResolver = class {
|
|
|
152
152
|
}
|
|
153
153
|
register(plugin, defaultForSchema) {
|
|
154
154
|
this.plugins.push(plugin);
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
155
|
+
if (defaultForSchema)
|
|
156
|
+
for (const schema of defaultForSchema) {
|
|
157
|
+
(0, import_assert.assertEx)(plugin.canRender({ schema }), "Default renderer must be able to render schema");
|
|
158
|
+
this.schemaDefaultPlugin.set(schema, plugin);
|
|
159
|
+
}
|
|
159
160
|
return this;
|
|
160
161
|
}
|
|
161
162
|
resolve(payload) {
|
package/dist/node/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["export * from './contexts'\nexport * from './PayloadRenderPluginResolver'\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n defaultForSchema
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["export * from './contexts'\nexport * from './PayloadRenderPluginResolver'\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n if (defaultForSchema)\n for (const schema of defaultForSchema) {\n assertEx(plugin.canRender({ schema }), 'Default renderer must be able to render schema')\n this.schemaDefaultPlugin.set(schema, plugin)\n }\n return this\n }\n\n resolve(payload: Payload) {\n return this.schemaDefaultPlugin.get(payload.schema) ?? [...this.plugins.values()].find((plugin) => plugin.canRender(payload))\n }\n}\n"],"mappings":"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","names":["import_react_shared","import_react_shared","import_react","import_jsx_runtime","import_react_shared","import_react_shared","import_react","import_jsx_runtime","import_react_shared"]}
|
package/dist/node/index.js
CHANGED
|
@@ -117,10 +117,11 @@ var PayloadRenderPluginResolver = class {
|
|
|
117
117
|
}
|
|
118
118
|
register(plugin, defaultForSchema) {
|
|
119
119
|
this.plugins.push(plugin);
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
120
|
+
if (defaultForSchema)
|
|
121
|
+
for (const schema of defaultForSchema) {
|
|
122
|
+
assertEx(plugin.canRender({ schema }), "Default renderer must be able to render schema");
|
|
123
|
+
this.schemaDefaultPlugin.set(schema, plugin);
|
|
124
|
+
}
|
|
124
125
|
return this;
|
|
125
126
|
}
|
|
126
127
|
resolve(payload) {
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n defaultForSchema
|
|
1
|
+
{"version":3,"sources":["../../src/contexts/PayloadPluginResolver/Context.ts","../../src/contexts/PayloadPluginResolver/Provider.tsx","../../src/contexts/PayloadPluginResolver/use.ts","../../src/contexts/PayloadRenderPluginResolver/Context.ts","../../src/contexts/PayloadRenderPluginResolver/Provider.tsx","../../src/contexts/PayloadRenderPluginResolver/use.ts","../../src/contexts/PayloadSetPluginResolver/Context.ts","../../src/contexts/PayloadSetPluginResolver/Provider.tsx","../../src/contexts/PayloadSetPluginResolver/use.ts","../../src/PayloadRenderPluginResolver.ts"],"sourcesContent":["import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverState } from './State'\n\nconst PayloadPluginResolverContext = createContextEx<PayloadPluginResolverState>()\n\nexport { PayloadPluginResolverContext }\n","import { PayloadPluginResolver } from '@xyo-network/payload-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport type PayloadPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadPluginResolver\n}>\n\nexport const PayloadPluginResolverProvider: React.FC<PayloadPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadPluginResolver>(resolverProp)\n\n return (\n <PayloadPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadPluginResolverContext } from './Context'\n\nexport const usePayloadPluginResolver = (required = false) => {\n return useContextEx(PayloadPluginResolverContext, 'PayloadPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverState } from './State'\n\nconst PayloadRenderPluginResolverContext = createContextEx<PayloadRenderPluginResolverState>()\n\nexport { PayloadRenderPluginResolverContext }\n","import { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useState } from 'react'\n\nimport { PayloadRenderPluginResolver } from '../../PayloadRenderPluginResolver'\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport type PayloadRenderPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadRenderPluginResolver\n}>\n\nexport const PayloadRenderPluginResolverProvider: React.FC<PayloadRenderPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadRenderPluginResolver>(resolverProp)\n\n return (\n <PayloadRenderPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadRenderPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadRenderPluginResolverContext } from './Context'\n\nexport const usePayloadRenderPluginResolver = (required = false) => {\n return useContextEx(PayloadRenderPluginResolverContext, 'PayloadRenderPluginResolver', required)\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverState } from './State'\n\nconst PayloadSetPluginResolverContext = createContextEx<PayloadSetPluginResolverState>()\n\nexport { PayloadSetPluginResolverContext }\n","import { PayloadSetPluginResolver } from '@xyo-network/payloadset-plugin'\nimport { ContextExProviderProps } from '@xyo-network/react-shared'\nimport { useEffect, useState } from 'react'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport type PayloadSetPluginResolverProviderProps = ContextExProviderProps<{\n resolver: PayloadSetPluginResolver\n}>\n\nexport const PayloadSetPluginResolverProvider: React.FC<PayloadSetPluginResolverProviderProps> = ({\n resolver: resolverProp,\n required = false,\n children,\n}) => {\n const [resolver, setResolver] = useState<PayloadSetPluginResolver>(resolverProp)\n\n useEffect(() => {\n setResolver(resolverProp)\n }, [resolverProp])\n\n return (\n <PayloadSetPluginResolverContext.Provider\n value={{\n provided: true,\n resolver,\n setResolver,\n }}\n >\n {resolver ? children : required ? null : children}\n </PayloadSetPluginResolverContext.Provider>\n )\n}\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { PayloadSetPluginResolverContext } from './Context'\n\nexport const usePayloadSetPluginResolver = (required = false) => {\n return useContextEx(PayloadSetPluginResolverContext, 'PayloadSetPluginResolver', required)\n}\n","import { assertEx } from '@xylabs/assert'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nexport class PayloadRenderPluginResolver {\n protected plugins: PayloadRenderPlugin[] = []\n protected schemaDefaultPlugin = new Map<string, PayloadRenderPlugin>()\n\n list(payload?: Payload) {\n if (!payload) {\n return this.plugins\n }\n const defaultPlugin = this.schemaDefaultPlugin.get(payload.schema)\n const result = defaultPlugin ? [defaultPlugin] : []\n this.plugins.some((plugin) => {\n if (defaultPlugin !== plugin && plugin.canRender(payload)) {\n result.push(plugin)\n }\n })\n return result\n }\n\n register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {\n this.plugins.push(plugin)\n if (defaultForSchema)\n for (const schema of defaultForSchema) {\n assertEx(plugin.canRender({ schema }), 'Default renderer must be able to render schema')\n this.schemaDefaultPlugin.set(schema, plugin)\n }\n return this\n }\n\n resolve(payload: Payload) {\n return this.schemaDefaultPlugin.get(payload.schema) ?? [...this.plugins.values()].find((plugin) => plugin.canRender(payload))\n }\n}\n"],"mappings":"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","names":["createContextEx","useState","jsx","useState","useContextEx","useContextEx","createContextEx","useState","jsx","useState","useContextEx","useContextEx"]}
|
package/package.json
CHANGED
|
@@ -10,12 +10,12 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xylabs/assert": "^2.13.
|
|
14
|
-
"@xyo-network/payload-model": "^2.
|
|
15
|
-
"@xyo-network/payload-plugin": "^2.
|
|
16
|
-
"@xyo-network/payloadset-plugin": "^2.
|
|
17
|
-
"@xyo-network/react-payload-plugin": "~2.67.
|
|
18
|
-
"@xyo-network/react-shared": "~2.67.
|
|
13
|
+
"@xylabs/assert": "^2.13.22",
|
|
14
|
+
"@xyo-network/payload-model": "^2.85.4",
|
|
15
|
+
"@xyo-network/payload-plugin": "^2.85.4",
|
|
16
|
+
"@xyo-network/payloadset-plugin": "^2.85.4",
|
|
17
|
+
"@xyo-network/react-payload-plugin": "~2.67.7",
|
|
18
|
+
"@xyo-network/react-shared": "~2.67.7"
|
|
19
19
|
},
|
|
20
20
|
"peerDependencies": {
|
|
21
21
|
"@mui/icons-material": "^5",
|
|
@@ -79,6 +79,6 @@
|
|
|
79
79
|
},
|
|
80
80
|
"sideEffects": false,
|
|
81
81
|
"types": "dist/browser/index.d.ts",
|
|
82
|
-
"version": "2.67.
|
|
82
|
+
"version": "2.67.7",
|
|
83
83
|
"type": "module"
|
|
84
84
|
}
|
|
@@ -22,10 +22,11 @@ export class PayloadRenderPluginResolver {
|
|
|
22
22
|
|
|
23
23
|
register(plugin: PayloadRenderPlugin, defaultForSchema?: string[]) {
|
|
24
24
|
this.plugins.push(plugin)
|
|
25
|
-
defaultForSchema
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
if (defaultForSchema)
|
|
26
|
+
for (const schema of defaultForSchema) {
|
|
27
|
+
assertEx(plugin.canRender({ schema }), 'Default renderer must be able to render schema')
|
|
28
|
+
this.schemaDefaultPlugin.set(schema, plugin)
|
|
29
|
+
}
|
|
29
30
|
return this
|
|
30
31
|
}
|
|
31
32
|
|