@apia/execution-react 4.0.26 → 4.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -130,7 +130,7 @@ declare abstract class AbstractCustomComponent {
|
|
|
130
130
|
protected confirmValue(attName: string, value: any, index: number): Promise<void>;
|
|
131
131
|
protected abstract Component: FC;
|
|
132
132
|
protected abstract init(): unknown;
|
|
133
|
-
Renderer: () => react.JSX.Element;
|
|
133
|
+
Renderer: () => react.JSX.Element | null;
|
|
134
134
|
/**
|
|
135
135
|
* Custom component methods
|
|
136
136
|
*/
|
package/dist/index.js
CHANGED
|
@@ -65,6 +65,8 @@ class AbstractCustomComponent {
|
|
|
65
65
|
__publicField(this, "intermediateStrings", {});
|
|
66
66
|
__publicField(this, "intermediatesIndexed", {});
|
|
67
67
|
__publicField(this, "Renderer", () => {
|
|
68
|
+
if (!this.handler)
|
|
69
|
+
return null;
|
|
68
70
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
69
71
|
/* @__PURE__ */ jsx(this.Component, {}),
|
|
70
72
|
/* @__PURE__ */ jsx(
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/plugins/PluginLoader.ts","../src/plugins/Plugin.ts","../src/customComponents/AbstractCustomComponent.tsx"],"sourcesContent":["import { Mutex, StatefulEmitter } from '@apia/util';\r\nimport { AbstractCustomComponent } from '../customComponents/AbstractCustomComponent';\r\n\r\nfunction loadComponent(cmpName: string) {\r\n const newScript = document.createElement('script');\r\n newScript.src = `${(window as any).CONTEXT}/react/customComponents/${cmpName}/index.js`;\r\n newScript.defer = true;\r\n\r\n document.head.append(newScript);\r\n}\r\n\r\nconst m = new Mutex();\r\n\r\nexport type CusCmpConstructor = { new (): AbstractCustomComponent };\r\n\r\nexport class PluginLoader {\r\n private requested = new Set<string>();\r\n private emitter = new StatefulEmitter<{\r\n [key: string]: CusCmpConstructor;\r\n }>();\r\n\r\n public static async getInstance() {\r\n await m.runExclusive(async () => {\r\n if (!(window as any).loader) {\r\n (window as any).loader = new PluginLoader();\r\n }\r\n });\r\n\r\n return (window as any).loader as PluginLoader;\r\n }\r\n\r\n public dispatchCustomComponent(name: string, component: CusCmpConstructor) {\r\n this.emitter.emit(name, component);\r\n }\r\n\r\n public getCustomComponent(name: string) {\r\n m.runExclusive(async () => {\r\n if (!this.requested.has(name)) {\r\n this.requested.add(name);\r\n loadComponent(name);\r\n }\r\n });\r\n\r\n return () =>\r\n new Promise<CusCmpConstructor>((resolve) => {\r\n this.emitter.once(name, (component) => {\r\n resolve(component);\r\n });\r\n });\r\n }\r\n}\r\n","import { CusCmpConstructor, PluginLoader } from './PluginLoader';\r\n\r\nexport class Plugin {\r\n constructor(name: string, fc: CusCmpConstructor) {\r\n PluginLoader.getInstance().then((c) => c.dispatchCustomComponent(name, fc));\r\n }\r\n}\r\n","import { CustomComponent } from '@apia/execution';\r\nimport { Box } from '@apia/theme';\r\nimport { makeObservable, observable } from 'mobx';\r\nimport { FC } from 'react';\r\n\r\nexport abstract class AbstractCustomComponent {\r\n protected handler: CustomComponent = {} as any;\r\n private intermediateStrings: Record<string, any> = {};\r\n private intermediatesIndexed: Record<string, Record<number, any>> = {};\r\n\r\n constructor() {\r\n makeObservable<\r\n AbstractCustomComponent,\r\n 'intermediateStrings' | 'intermediatesIndexed'\r\n >(this, {\r\n intermediatesIndexed: observable,\r\n intermediateStrings: observable,\r\n });\r\n }\r\n\r\n public setCustomComponent(cc: CustomComponent) {\r\n this.handler = cc;\r\n this.init();\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected getIntermediateString(attName: string) {\r\n return (\r\n this.intermediateStrings[attName] ?? this.handler?.getStringValue(attName)\r\n );\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected getIntermediate(attName: string, index: number) {\r\n return (\r\n this.intermediatesIndexed[attName]?.[index] ??\r\n this.handler?.getValue(attName, index)\r\n );\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected setIntermediateStringValue(attName: string, value: string) {\r\n delete this.intermediatesIndexed[attName];\r\n this.intermediateStrings[attName] = value;\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected setIntermediateValue(attName: string, value: any, index: number) {\r\n delete this.intermediateStrings[attName];\r\n if (!this.intermediatesIndexed[attName]) {\r\n this.intermediatesIndexed[attName] = {};\r\n }\r\n this.intermediatesIndexed[attName][index] = value;\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected async confirmIntermediateString(attName: string, value: string) {\r\n await this.handler!.setStringValue(attName, value);\r\n delete this.intermediateStrings[attName];\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected async confirmValue(attName: string, value: any, index: number) {\r\n await this.handler?.setValue(attName, value, index);\r\n delete this.intermediatesIndexed[attName];\r\n }\r\n\r\n protected abstract Component: FC;\r\n\r\n protected abstract init(): unknown;\r\n\r\n public Renderer = () => {\r\n return (\r\n <>\r\n <this.Component />\r\n <Box\r\n ref={(el: any) => {\r\n if (el) {\r\n this.handler!.form.markFieldAsRendered(\r\n this.handler!.definition.id,\r\n );\r\n }\r\n }}\r\n />\r\n </>\r\n );\r\n };\r\n\r\n /**\r\n * Custom component methods\r\n */\r\n\r\n protected get isLoading() {\r\n return this.handler!.state.isLoading;\r\n }\r\n}\r\n"],"names":["__publicField"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/plugins/PluginLoader.ts","../src/plugins/Plugin.ts","../src/customComponents/AbstractCustomComponent.tsx"],"sourcesContent":["import { Mutex, StatefulEmitter } from '@apia/util';\r\nimport { AbstractCustomComponent } from '../customComponents/AbstractCustomComponent';\r\n\r\nfunction loadComponent(cmpName: string) {\r\n const newScript = document.createElement('script');\r\n newScript.src = `${(window as any).CONTEXT}/react/customComponents/${cmpName}/index.js`;\r\n newScript.defer = true;\r\n\r\n document.head.append(newScript);\r\n}\r\n\r\nconst m = new Mutex();\r\n\r\nexport type CusCmpConstructor = { new (): AbstractCustomComponent };\r\n\r\nexport class PluginLoader {\r\n private requested = new Set<string>();\r\n private emitter = new StatefulEmitter<{\r\n [key: string]: CusCmpConstructor;\r\n }>();\r\n\r\n public static async getInstance() {\r\n await m.runExclusive(async () => {\r\n if (!(window as any).loader) {\r\n (window as any).loader = new PluginLoader();\r\n }\r\n });\r\n\r\n return (window as any).loader as PluginLoader;\r\n }\r\n\r\n public dispatchCustomComponent(name: string, component: CusCmpConstructor) {\r\n this.emitter.emit(name, component);\r\n }\r\n\r\n public getCustomComponent(name: string) {\r\n m.runExclusive(async () => {\r\n if (!this.requested.has(name)) {\r\n this.requested.add(name);\r\n loadComponent(name);\r\n }\r\n });\r\n\r\n return () =>\r\n new Promise<CusCmpConstructor>((resolve) => {\r\n this.emitter.once(name, (component) => {\r\n resolve(component);\r\n });\r\n });\r\n }\r\n}\r\n","import { CusCmpConstructor, PluginLoader } from './PluginLoader';\r\n\r\nexport class Plugin {\r\n constructor(name: string, fc: CusCmpConstructor) {\r\n PluginLoader.getInstance().then((c) => c.dispatchCustomComponent(name, fc));\r\n }\r\n}\r\n","import { CustomComponent } from '@apia/execution';\r\nimport { Box } from '@apia/theme';\r\nimport { makeObservable, observable } from 'mobx';\r\nimport { FC } from 'react';\r\n\r\nexport abstract class AbstractCustomComponent {\r\n protected handler: CustomComponent = {} as any;\r\n private intermediateStrings: Record<string, any> = {};\r\n private intermediatesIndexed: Record<string, Record<number, any>> = {};\r\n\r\n constructor() {\r\n makeObservable<\r\n AbstractCustomComponent,\r\n 'intermediateStrings' | 'intermediatesIndexed'\r\n >(this, {\r\n intermediatesIndexed: observable,\r\n intermediateStrings: observable,\r\n });\r\n }\r\n\r\n public setCustomComponent(cc: CustomComponent) {\r\n this.handler = cc;\r\n this.init();\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected getIntermediateString(attName: string) {\r\n return (\r\n this.intermediateStrings[attName] ?? this.handler?.getStringValue(attName)\r\n );\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected getIntermediate(attName: string, index: number) {\r\n return (\r\n this.intermediatesIndexed[attName]?.[index] ??\r\n this.handler?.getValue(attName, index)\r\n );\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected setIntermediateStringValue(attName: string, value: string) {\r\n delete this.intermediatesIndexed[attName];\r\n this.intermediateStrings[attName] = value;\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected setIntermediateValue(attName: string, value: any, index: number) {\r\n delete this.intermediateStrings[attName];\r\n if (!this.intermediatesIndexed[attName]) {\r\n this.intermediatesIndexed[attName] = {};\r\n }\r\n this.intermediatesIndexed[attName][index] = value;\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected async confirmIntermediateString(attName: string, value: string) {\r\n await this.handler!.setStringValue(attName, value);\r\n delete this.intermediateStrings[attName];\r\n }\r\n\r\n /**\r\n * The intermediate values are used to hold attribute values while they are being edited.\r\n *\r\n * The setIntermediate... methods hold the values in local variables until the confirmIntermediate...\r\n * methods are called.\r\n * \r\n * @example\r\n * \r\n * <Input\r\n value={this.getIntermediateString('name')}\r\n disabled={cc.state.isLoading}\r\n onChange={(ev) => {\r\n this.setIntermediateStringValue('name', ev.target.value);\r\n }}\r\n onBlur={(ev) => {\r\n this.confirmIntermediateString('name', ev.target.value);\r\n }}\r\n />\r\n */\r\n protected async confirmValue(attName: string, value: any, index: number) {\r\n await this.handler?.setValue(attName, value, index);\r\n delete this.intermediatesIndexed[attName];\r\n }\r\n\r\n protected abstract Component: FC;\r\n\r\n protected abstract init(): unknown;\r\n\r\n public Renderer = () => {\r\n if (!this.handler) return null;\r\n\r\n return (\r\n <>\r\n <this.Component />\r\n <Box\r\n ref={(el: any) => {\r\n if (el) {\r\n this.handler!.form.markFieldAsRendered(\r\n this.handler!.definition.id,\r\n );\r\n }\r\n }}\r\n />\r\n </>\r\n );\r\n };\r\n\r\n /**\r\n * Custom component methods\r\n */\r\n\r\n protected get isLoading() {\r\n return this.handler!.state.isLoading;\r\n }\r\n}\r\n"],"names":["__publicField"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apia/execution-react",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.28",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"author": "Alexis Leite <alexisleite@live.com>",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -29,10 +29,10 @@
|
|
|
29
29
|
"access": "public",
|
|
30
30
|
"registry": "https://registry.npmjs.org/"
|
|
31
31
|
},
|
|
32
|
-
"gitHead": "
|
|
32
|
+
"gitHead": "f382e288940eb98a55c01081f33f0d0cacaaaadb",
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@apia/execution": "^4.0.
|
|
35
|
-
"@apia/theme": "^4.0.
|
|
36
|
-
"@apia/util": "^4.0.
|
|
34
|
+
"@apia/execution": "^4.0.28",
|
|
35
|
+
"@apia/theme": "^4.0.28",
|
|
36
|
+
"@apia/util": "^4.0.28"
|
|
37
37
|
}
|
|
38
38
|
}
|