@kizenapps/engine 0.0.1-b1f3597

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.
Files changed (74) hide show
  1. package/LICENSE.md +674 -0
  2. package/README.md +160 -0
  3. package/dist/ThirdPartyScript-DdrF7zh7.d.ts +459 -0
  4. package/dist/automation-C8hsM_Rc.d.ts +36 -0
  5. package/dist/chunk-2MW4AGSN.js +2415 -0
  6. package/dist/chunk-2MW4AGSN.js.map +1 -0
  7. package/dist/chunk-3LDUYA57.js +61 -0
  8. package/dist/chunk-3LDUYA57.js.map +1 -0
  9. package/dist/chunk-5WRI5ZAA.js +29 -0
  10. package/dist/chunk-5WRI5ZAA.js.map +1 -0
  11. package/dist/chunk-727AYMPR.js +120 -0
  12. package/dist/chunk-727AYMPR.js.map +1 -0
  13. package/dist/chunk-GGGXYD3K.js +40 -0
  14. package/dist/chunk-GGGXYD3K.js.map +1 -0
  15. package/dist/chunk-LGJYUPYZ.js +3 -0
  16. package/dist/chunk-LGJYUPYZ.js.map +1 -0
  17. package/dist/chunk-NXLAROEM.js +730 -0
  18. package/dist/chunk-NXLAROEM.js.map +1 -0
  19. package/dist/chunk-P7GQBCEH.js +172 -0
  20. package/dist/chunk-P7GQBCEH.js.map +1 -0
  21. package/dist/chunk-UOTNQL56.js +46 -0
  22. package/dist/chunk-UOTNQL56.js.map +1 -0
  23. package/dist/chunk-VYBEGZLN.js +319 -0
  24. package/dist/chunk-VYBEGZLN.js.map +1 -0
  25. package/dist/chunk-XKKZPZMB.js +121 -0
  26. package/dist/chunk-XKKZPZMB.js.map +1 -0
  27. package/dist/communication.d.ts +13 -0
  28. package/dist/communication.js +6 -0
  29. package/dist/communication.js.map +1 -0
  30. package/dist/contexts/base.d.ts +99 -0
  31. package/dist/contexts/base.js +7 -0
  32. package/dist/contexts/base.js.map +1 -0
  33. package/dist/contexts/floatingFrame.d.ts +18 -0
  34. package/dist/contexts/floatingFrame.js +8 -0
  35. package/dist/contexts/floatingFrame.js.map +1 -0
  36. package/dist/contexts/recordDetail.d.ts +32 -0
  37. package/dist/contexts/recordDetail.js +8 -0
  38. package/dist/contexts/recordDetail.js.map +1 -0
  39. package/dist/floatingFrames-BzaoL7cq.d.ts +8 -0
  40. package/dist/generic-RiEgdDAq.d.ts +19 -0
  41. package/dist/index.d.ts +19 -0
  42. package/dist/index.js +6 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/merge-translations.js +28 -0
  45. package/dist/react.d.ts +367 -0
  46. package/dist/react.js +2732 -0
  47. package/dist/react.js.map +1 -0
  48. package/dist/routeScript-kttY2YZh.d.ts +303 -0
  49. package/dist/translation.json +8 -0
  50. package/dist/types.d.ts +90 -0
  51. package/dist/types.js +3 -0
  52. package/dist/types.js.map +1 -0
  53. package/dist/util.d.ts +40 -0
  54. package/dist/util.js +87 -0
  55. package/dist/util.js.map +1 -0
  56. package/dist/vite.d.ts +11 -0
  57. package/dist/vite.js +19 -0
  58. package/dist/vite.js.map +1 -0
  59. package/dist/workers/calendarSource.worker.d.ts +2 -0
  60. package/dist/workers/calendarSource.worker.js +62 -0
  61. package/dist/workers/calendarSource.worker.js.map +1 -0
  62. package/dist/workers/expression.worker.d.ts +2 -0
  63. package/dist/workers/expression.worker.js +35 -0
  64. package/dist/workers/expression.worker.js.map +1 -0
  65. package/dist/workers/floatingFrame.worker.d.ts +2 -0
  66. package/dist/workers/floatingFrame.worker.js +57 -0
  67. package/dist/workers/floatingFrame.worker.js.map +1 -0
  68. package/dist/workers/generic.worker.d.ts +2 -0
  69. package/dist/workers/generic.worker.js +57 -0
  70. package/dist/workers/generic.worker.js.map +1 -0
  71. package/dist/workers/recordDetail.worker.d.ts +2 -0
  72. package/dist/workers/recordDetail.worker.js +59 -0
  73. package/dist/workers/recordDetail.worker.js.map +1 -0
  74. package/package.json +93 -0
@@ -0,0 +1,35 @@
1
+ // src/workers/expression.worker.ts
2
+ var interpolateValues = (expression, args) => {
3
+ const interpolated = expression.replace(/{{(.*?)}}/g, (_, key) => {
4
+ return getValue(key, args);
5
+ });
6
+ return interpolated;
7
+ };
8
+ var evaluateExpression = (expression, args, isDebug) => {
9
+ const fnBody = `return ${interpolateValues(expression, args)};`;
10
+ if (isDebug) {
11
+ console.log(`Initial expression:
12
+ ${expression}
13
+
14
+ Interpreted as:
15
+ ${fnBody}`);
16
+ }
17
+ const fn = new Function(fnBody);
18
+ return fn();
19
+ };
20
+ var getValue = (key, args) => {
21
+ const rawValue = args[key];
22
+ if (!rawValue) {
23
+ return "null";
24
+ }
25
+ const value = typeof rawValue.value !== "undefined" ? JSON.stringify(rawValue.value) : "null";
26
+ return value;
27
+ };
28
+ self.onmessage = (e) => {
29
+ const data = JSON.parse(e.data);
30
+ const { expression, args, isDebug = false } = data;
31
+ const result = evaluateExpression(expression, args, isDebug);
32
+ self.postMessage(JSON.stringify({ result }));
33
+ };
34
+ //# sourceMappingURL=expression.worker.js.map
35
+ //# sourceMappingURL=expression.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/workers/expression.worker.ts"],"names":[],"mappings":";AAGA,IAAM,iBAAA,GAAoB,CAAC,UAAA,EAAoB,IAAA,KAA8C;AAC3F,EAAA,MAAM,eAAe,UAAA,CAAW,OAAA,CAAQ,YAAA,EAAc,CAAC,GAAG,GAAA,KAAgB;AACxE,IAAA,OAAO,QAAA,CAAS,KAAK,IAAI,CAAA;AAAA,EAC3B,CAAC,CAAA;AAED,EAAA,OAAO,YAAA;AACT,CAAA;AAEA,IAAM,kBAAA,GAAqB,CACzB,UAAA,EACA,IAAA,EACA,OAAA,KACY;AACZ,EAAA,MAAM,MAAA,GAAS,CAAA,OAAA,EAAU,iBAAA,CAAkB,UAAA,EAAY,IAAI,CAAC,CAAA,CAAA,CAAA;AAE5D,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,OAAA,CAAQ,GAAA,CAAI,CAAA;AAAA,EAAwB,UAAU;;AAAA;AAAA,EAAwB,MAAM,CAAA,CAAE,CAAA;AAAA,EAChF;AAGA,EAAA,MAAM,EAAA,GAAK,IAAI,QAAA,CAAS,MAAM,CAAA;AAG9B,EAAA,OAAO,EAAA,EAAG;AACZ,CAAA;AAEA,IAAM,QAAA,GAAW,CAAC,GAAA,EAAa,IAAA,KAA8C;AAC3E,EAAA,MAAM,QAAA,GAAW,KAAK,GAAG,CAAA;AAEzB,EAAA,IAAI,CAAC,QAAA,EAAU;AACb,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAM,KAAA,GAAQ,OAAO,QAAA,CAAS,KAAA,KAAU,cAAc,IAAA,CAAK,SAAA,CAAU,QAAA,CAAS,KAAK,CAAA,GAAI,MAAA;AAEvF,EAAA,OAAO,KAAA;AACT,CAAA;AAEA,IAAA,CAAK,SAAA,GAAY,CAAC,CAAA,KAAkC;AAClD,EAAA,MAAM,IAAA,GAAO,IAAA,CAAK,KAAA,CAAM,CAAA,CAAE,IAAI,CAAA;AAE9B,EAAA,MAAM,EAAE,UAAA,EAAY,IAAA,EAAM,OAAA,GAAU,OAAM,GAAI,IAAA;AAE9C,EAAA,MAAM,MAAA,GAAS,kBAAA,CAAmB,UAAA,EAAY,IAAA,EAAM,OAAO,CAAA;AAE3D,EAAA,IAAA,CAAK,YAAY,IAAA,CAAK,SAAA,CAAU,EAAE,MAAA,EAAQ,CAAC,CAAA;AAC7C,CAAA","file":"expression.worker.js","sourcesContent":["import type { UnknownJSON } from '../types/common.js';\nimport type { ExpressionPayload } from '../types/workers.js';\n\nconst interpolateValues = (expression: string, args: Record<string, UnknownJSON>): string => {\n const interpolated = expression.replace(/{{(.*?)}}/g, (_, key: string) => {\n return getValue(key, args);\n });\n\n return interpolated;\n};\n\nconst evaluateExpression = (\n expression: string,\n args: Record<string, UnknownJSON>,\n isDebug: boolean,\n): unknown => {\n const fnBody = `return ${interpolateValues(expression, args)};`;\n\n if (isDebug) {\n console.log(`Initial expression:\\n${expression}\\n\\nInterpreted as:\\n${fnBody}`);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-implied-eval\n const fn = new Function(fnBody);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return fn();\n};\n\nconst getValue = (key: string, args: Record<string, UnknownJSON>): string => {\n const rawValue = args[key];\n\n if (!rawValue) {\n return 'null';\n }\n\n const value = typeof rawValue.value !== 'undefined' ? JSON.stringify(rawValue.value) : 'null';\n\n return value;\n};\n\nself.onmessage = (e: MessageEvent<string>): void => {\n const data = JSON.parse(e.data) as ExpressionPayload;\n\n const { expression, args, isDebug = false } = data;\n\n const result = evaluateExpression(expression, args, isDebug);\n\n self.postMessage(JSON.stringify({ result }));\n};\n"]}
@@ -0,0 +1,2 @@
1
+
2
+ export { }
@@ -0,0 +1,57 @@
1
+ import { FloatingFrameWorkerContext } from '../chunk-3LDUYA57.js';
2
+ import { WorkerPromise } from '../chunk-UOTNQL56.js';
3
+ import { getFn } from '../chunk-XKKZPZMB.js';
4
+ import '../chunk-NXLAROEM.js';
5
+ import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-VYBEGZLN.js';
6
+ import '../chunk-GGGXYD3K.js';
7
+ import { ACTIONS } from '../chunk-P7GQBCEH.js';
8
+ import '../chunk-5WRI5ZAA.js';
9
+
10
+ // src/workers/floatingFrame.worker.ts
11
+ var promises = new WorkerPromise({ isDebug: false });
12
+ self.onmessage = async (e) => {
13
+ const data = JSON.parse(e.data);
14
+ const {
15
+ action,
16
+ script,
17
+ setup,
18
+ args,
19
+ sessionData = {},
20
+ pluginComponentId,
21
+ pluginApiName,
22
+ location
23
+ } = data;
24
+ if (action === ACTIONS.RUN && setup && script) {
25
+ const { fn, functionBody } = getFn(script);
26
+ const runner = new FloatingFrameWorkerContext({
27
+ user: setup.user,
28
+ teamMember: setup.teamMember,
29
+ business: setup.business,
30
+ clientObject: setup.clientObject,
31
+ appPath: setup.appPath,
32
+ isDebug: setup.isDebug,
33
+ scriptBody: script,
34
+ functionBody,
35
+ instance: self,
36
+ kizenRequest: kizenRequestHandler(self, promises),
37
+ postFormData: postFormDataHandler(self, promises),
38
+ uploadFile: uploadFileHandler(self, promises),
39
+ installThirdPartyScript: installThirdPartyScriptHandler(self, promises),
40
+ args: args ?? "",
41
+ sessionData,
42
+ pluginComponentId,
43
+ prompt: promptHandler(self, promises),
44
+ dynamicPrompt: dynamicPromptHandler(self, promises),
45
+ refreshEntity: refreshEntityHandler(self, promises),
46
+ openCreateRecord: openCreateRecordHandler(self, promises),
47
+ openCreateRelatedRecord: openCreateRelatedRecordHandler(self, promises),
48
+ pluginApiName,
49
+ location
50
+ });
51
+ await fn.bind(runner)();
52
+ } else {
53
+ handleCommonResponse(action, e, promises);
54
+ }
55
+ };
56
+ //# sourceMappingURL=floatingFrame.worker.js.map
57
+ //# sourceMappingURL=floatingFrame.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/workers/floatingFrame.worker.ts"],"names":[],"mappings":";;;;;;;;;;AAkBA,IAAM,WAAW,IAAI,aAAA,CAAc,EAAE,OAAA,EAAS,OAAO,CAAA;AAErD,IAAA,CAAK,SAAA,GAAY,OAAO,CAAA,KAA4B;AAClD,EAAA,MAAM,IAAA,GAAO,IAAA,CAAK,KAAA,CAAM,CAAA,CAAE,IAAI,CAAA;AAE9B,EAAA,MAAM;AAAA,IACJ,MAAA;AAAA,IACA,MAAA;AAAA,IACA,KAAA;AAAA,IACA,IAAA;AAAA,IACA,cAAc,EAAC;AAAA,IACf,iBAAA;AAAA,IACA,aAAA;AAAA,IACA;AAAA,GACF,GAAI,IAAA;AAEJ,EAAA,IAAI,MAAA,KAAW,OAAA,CAAQ,GAAA,IAAO,KAAA,IAAS,MAAA,EAAQ;AAC7C,IAAA,MAAM,EAAE,EAAA,EAAI,YAAA,EAAa,GAAI,MAAM,MAAM,CAAA;AAEzC,IAAA,MAAM,MAAA,GAAS,IAAI,0BAAA,CAA2B;AAAA,MAC5C,MAAM,KAAA,CAAM,IAAA;AAAA,MACZ,YAAY,KAAA,CAAM,UAAA;AAAA,MAClB,UAAU,KAAA,CAAM,QAAA;AAAA,MAChB,cAAc,KAAA,CAAM,YAAA;AAAA,MACpB,SAAS,KAAA,CAAM,OAAA;AAAA,MACf,SAAS,KAAA,CAAM,OAAA;AAAA,MACf,UAAA,EAAY,MAAA;AAAA,MACZ,YAAA;AAAA,MACA,QAAA,EAAU,IAAA;AAAA,MACV,YAAA,EAAc,mBAAA,CAAoB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAChD,YAAA,EAAc,mBAAA,CAAoB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAChD,UAAA,EAAY,iBAAA,CAAkB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAC5C,uBAAA,EAAyB,8BAAA,CAA+B,IAAA,EAAM,QAAQ,CAAA;AAAA,MACtE,MAAM,IAAA,IAAQ,EAAA;AAAA,MACd,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,MAAA,EAAQ,aAAA,CAAc,IAAA,EAAM,QAAQ,CAAA;AAAA,MACpC,aAAA,EAAe,oBAAA,CAAqB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAClD,aAAA,EAAe,oBAAA,CAAqB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAClD,gBAAA,EAAkB,uBAAA,CAAwB,IAAA,EAAM,QAAQ,CAAA;AAAA,MACxD,uBAAA,EAAyB,8BAAA,CAA+B,IAAA,EAAM,QAAQ,CAAA;AAAA,MACtE,aAAA;AAAA,MACA;AAAA,KACD,CAAA;AAED,IAAA,MAAM,EAAA,CAAG,IAAA,CAAK,MAAM,CAAA,EAAE;AAAA,EACxB,CAAA,MAAO;AACL,IAAA,oBAAA,CAAqB,MAAA,EAAQ,GAAG,QAAQ,CAAA;AAAA,EAC1C;AACF,CAAA","file":"floatingFrame.worker.js","sourcesContent":["import { ACTIONS } from '../communication/constants.js';\nimport { FloatingFrameWorkerContext } from '../contexts/FloatingFrameWorkerContext.js';\nimport type { WorkerEvent } from '../types/workers.js';\nimport { getFn } from '../util/run.js';\nimport {\n dynamicPromptHandler,\n handleCommonResponse,\n installThirdPartyScriptHandler,\n kizenRequestHandler,\n openCreateRecordHandler,\n openCreateRelatedRecordHandler,\n postFormDataHandler,\n promptHandler,\n refreshEntityHandler,\n uploadFileHandler,\n} from './util.js';\nimport { WorkerPromise } from './WorkerPromise.js';\n\nconst promises = new WorkerPromise({ isDebug: false });\n\nself.onmessage = async (e: MessageEvent<string>) => {\n const data = JSON.parse(e.data) as WorkerEvent;\n\n const {\n action,\n script,\n setup,\n args,\n sessionData = {},\n pluginComponentId,\n pluginApiName,\n location,\n } = data;\n\n if (action === ACTIONS.RUN && setup && script) {\n const { fn, functionBody } = getFn(script);\n\n const runner = new FloatingFrameWorkerContext({\n user: setup.user,\n teamMember: setup.teamMember,\n business: setup.business,\n clientObject: setup.clientObject,\n appPath: setup.appPath,\n isDebug: setup.isDebug,\n scriptBody: script,\n functionBody,\n instance: self,\n kizenRequest: kizenRequestHandler(self, promises),\n postFormData: postFormDataHandler(self, promises),\n uploadFile: uploadFileHandler(self, promises),\n installThirdPartyScript: installThirdPartyScriptHandler(self, promises),\n args: args ?? '',\n sessionData,\n pluginComponentId,\n prompt: promptHandler(self, promises),\n dynamicPrompt: dynamicPromptHandler(self, promises),\n refreshEntity: refreshEntityHandler(self, promises),\n openCreateRecord: openCreateRecordHandler(self, promises),\n openCreateRelatedRecord: openCreateRelatedRecordHandler(self, promises),\n pluginApiName,\n location,\n });\n\n await fn.bind(runner)();\n } else {\n handleCommonResponse(action, e, promises);\n }\n};\n"]}
@@ -0,0 +1,2 @@
1
+
2
+ export { }
@@ -0,0 +1,57 @@
1
+ import { WorkerPromise } from '../chunk-UOTNQL56.js';
2
+ import { getFn } from '../chunk-XKKZPZMB.js';
3
+ import { BaseWorkerContext } from '../chunk-NXLAROEM.js';
4
+ import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-VYBEGZLN.js';
5
+ import '../chunk-GGGXYD3K.js';
6
+ import { ACTIONS } from '../chunk-P7GQBCEH.js';
7
+ import '../chunk-5WRI5ZAA.js';
8
+
9
+ // src/workers/generic.worker.ts
10
+ var promises = new WorkerPromise({ isDebug: false });
11
+ var runner = null;
12
+ self.onmessage = async (e) => {
13
+ const data = JSON.parse(e.data);
14
+ const {
15
+ action,
16
+ script,
17
+ setup,
18
+ args,
19
+ sessionData = {},
20
+ pluginComponentId,
21
+ pluginApiName,
22
+ location
23
+ } = data;
24
+ if (action === ACTIONS.RUN && setup && script) {
25
+ const { fn, functionBody } = getFn(script);
26
+ runner = new BaseWorkerContext({
27
+ user: setup.user,
28
+ teamMember: setup.teamMember,
29
+ business: setup.business,
30
+ clientObject: setup.clientObject,
31
+ isDebug: setup.isDebug,
32
+ appPath: setup.appPath,
33
+ scriptBody: script,
34
+ functionBody,
35
+ instance: self,
36
+ kizenRequest: kizenRequestHandler(self, promises),
37
+ postFormData: postFormDataHandler(self, promises),
38
+ uploadFile: uploadFileHandler(self, promises),
39
+ installThirdPartyScript: installThirdPartyScriptHandler(self, promises),
40
+ args: args ?? "",
41
+ sessionData,
42
+ pluginComponentId,
43
+ prompt: promptHandler(self, promises),
44
+ dynamicPrompt: dynamicPromptHandler(self, promises),
45
+ refreshEntity: refreshEntityHandler(self, promises),
46
+ openCreateRecord: openCreateRecordHandler(self, promises),
47
+ openCreateRelatedRecord: openCreateRelatedRecordHandler(self, promises),
48
+ pluginApiName,
49
+ location
50
+ });
51
+ await fn.bind(runner)();
52
+ } else {
53
+ handleCommonResponse(action, e, promises);
54
+ }
55
+ };
56
+ //# sourceMappingURL=generic.worker.js.map
57
+ //# sourceMappingURL=generic.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/workers/generic.worker.ts"],"names":[],"mappings":";;;;;;;;;AAkBA,IAAM,WAAW,IAAI,aAAA,CAAc,EAAE,OAAA,EAAS,OAAO,CAAA;AAErD,IAAI,MAAA,GAAmC,IAAA;AAEvC,IAAA,CAAK,SAAA,GAAY,OAAO,CAAA,KAA4B;AAClD,EAAA,MAAM,IAAA,GAAO,IAAA,CAAK,KAAA,CAAM,CAAA,CAAE,IAAI,CAAA;AAE9B,EAAA,MAAM;AAAA,IACJ,MAAA;AAAA,IACA,MAAA;AAAA,IACA,KAAA;AAAA,IACA,IAAA;AAAA,IACA,cAAc,EAAC;AAAA,IACf,iBAAA;AAAA,IACA,aAAA;AAAA,IACA;AAAA,GACF,GAAI,IAAA;AAEJ,EAAA,IAAI,MAAA,KAAW,OAAA,CAAQ,GAAA,IAAO,KAAA,IAAS,MAAA,EAAQ;AAC7C,IAAA,MAAM,EAAE,EAAA,EAAI,YAAA,EAAa,GAAI,MAAM,MAAM,CAAA;AAEzC,IAAA,MAAA,GAAS,IAAI,iBAAA,CAAkB;AAAA,MAC7B,MAAM,KAAA,CAAM,IAAA;AAAA,MACZ,YAAY,KAAA,CAAM,UAAA;AAAA,MAClB,UAAU,KAAA,CAAM,QAAA;AAAA,MAChB,cAAc,KAAA,CAAM,YAAA;AAAA,MACpB,SAAS,KAAA,CAAM,OAAA;AAAA,MACf,SAAS,KAAA,CAAM,OAAA;AAAA,MACf,UAAA,EAAY,MAAA;AAAA,MACZ,YAAA;AAAA,MACA,QAAA,EAAU,IAAA;AAAA,MACV,YAAA,EAAc,mBAAA,CAAoB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAChD,YAAA,EAAc,mBAAA,CAAoB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAChD,UAAA,EAAY,iBAAA,CAAkB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAC5C,uBAAA,EAAyB,8BAAA,CAA+B,IAAA,EAAM,QAAQ,CAAA;AAAA,MACtE,MAAM,IAAA,IAAQ,EAAA;AAAA,MACd,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,MAAA,EAAQ,aAAA,CAAc,IAAA,EAAM,QAAQ,CAAA;AAAA,MACpC,aAAA,EAAe,oBAAA,CAAqB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAClD,aAAA,EAAe,oBAAA,CAAqB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAClD,gBAAA,EAAkB,uBAAA,CAAwB,IAAA,EAAM,QAAQ,CAAA;AAAA,MACxD,uBAAA,EAAyB,8BAAA,CAA+B,IAAA,EAAM,QAAQ,CAAA;AAAA,MACtE,aAAA;AAAA,MACA;AAAA,KACD,CAAA;AAED,IAAA,MAAM,EAAA,CAAG,IAAA,CAAK,MAAM,CAAA,EAAE;AAAA,EACxB,CAAA,MAAO;AACL,IAAA,oBAAA,CAAqB,MAAA,EAAQ,GAAG,QAAQ,CAAA;AAAA,EAC1C;AACF,CAAA","file":"generic.worker.js","sourcesContent":["import { ACTIONS } from '../communication/constants.js';\nimport { BaseWorkerContext } from '../contexts/BaseWorkerContext.js';\nimport type { WorkerEvent } from '../types/workers.js';\nimport { getFn } from '../util/run.js';\nimport {\n dynamicPromptHandler,\n handleCommonResponse,\n installThirdPartyScriptHandler,\n kizenRequestHandler,\n openCreateRecordHandler,\n openCreateRelatedRecordHandler,\n postFormDataHandler,\n promptHandler,\n refreshEntityHandler,\n uploadFileHandler,\n} from './util.js';\nimport { WorkerPromise } from './WorkerPromise.js';\n\nconst promises = new WorkerPromise({ isDebug: false });\n\nlet runner: BaseWorkerContext | null = null;\n\nself.onmessage = async (e: MessageEvent<string>) => {\n const data = JSON.parse(e.data) as WorkerEvent;\n\n const {\n action,\n script,\n setup,\n args,\n sessionData = {},\n pluginComponentId,\n pluginApiName,\n location,\n } = data;\n\n if (action === ACTIONS.RUN && setup && script) {\n const { fn, functionBody } = getFn(script);\n\n runner = new BaseWorkerContext({\n user: setup.user,\n teamMember: setup.teamMember,\n business: setup.business,\n clientObject: setup.clientObject,\n isDebug: setup.isDebug,\n appPath: setup.appPath,\n scriptBody: script,\n functionBody,\n instance: self,\n kizenRequest: kizenRequestHandler(self, promises),\n postFormData: postFormDataHandler(self, promises),\n uploadFile: uploadFileHandler(self, promises),\n installThirdPartyScript: installThirdPartyScriptHandler(self, promises),\n args: args ?? '',\n sessionData,\n pluginComponentId,\n prompt: promptHandler(self, promises),\n dynamicPrompt: dynamicPromptHandler(self, promises),\n refreshEntity: refreshEntityHandler(self, promises),\n openCreateRecord: openCreateRecordHandler(self, promises),\n openCreateRelatedRecord: openCreateRelatedRecordHandler(self, promises),\n pluginApiName,\n location,\n });\n\n await fn.bind(runner)();\n } else {\n handleCommonResponse(action, e, promises);\n }\n};\n"]}
@@ -0,0 +1,2 @@
1
+
2
+ export { }
@@ -0,0 +1,59 @@
1
+ import { RecordDetailWorkerContext } from '../chunk-727AYMPR.js';
2
+ import { WorkerPromise } from '../chunk-UOTNQL56.js';
3
+ import { getFn } from '../chunk-XKKZPZMB.js';
4
+ import '../chunk-NXLAROEM.js';
5
+ import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-VYBEGZLN.js';
6
+ import '../chunk-GGGXYD3K.js';
7
+ import { ACTIONS } from '../chunk-P7GQBCEH.js';
8
+ import '../chunk-5WRI5ZAA.js';
9
+
10
+ // src/workers/recordDetail.worker.ts
11
+ var promises = new WorkerPromise({ isDebug: false });
12
+ self.onmessage = async (e) => {
13
+ const data = JSON.parse(e.data);
14
+ const {
15
+ action,
16
+ script,
17
+ setup,
18
+ args,
19
+ sessionData = {},
20
+ pluginComponentId,
21
+ pluginApiName,
22
+ location
23
+ } = data;
24
+ if (action === ACTIONS.RUN && setup && script) {
25
+ const { fn, functionBody } = getFn(script);
26
+ const runner = new RecordDetailWorkerContext({
27
+ user: setup.user,
28
+ teamMember: setup.teamMember,
29
+ business: setup.business,
30
+ entityId: setup.entityId ?? "",
31
+ objectId: setup.objectId ?? "",
32
+ clientObject: setup.clientObject,
33
+ appPath: setup.appPath,
34
+ isDebug: setup.isDebug,
35
+ scriptBody: script,
36
+ functionBody,
37
+ instance: self,
38
+ kizenRequest: kizenRequestHandler(self, promises),
39
+ postFormData: postFormDataHandler(self, promises),
40
+ uploadFile: uploadFileHandler(self, promises),
41
+ installThirdPartyScript: installThirdPartyScriptHandler(self, promises),
42
+ args: args ?? "",
43
+ sessionData,
44
+ pluginComponentId,
45
+ prompt: promptHandler(self, promises),
46
+ dynamicPrompt: dynamicPromptHandler(self, promises),
47
+ refreshEntity: refreshEntityHandler(self, promises),
48
+ openCreateRecord: openCreateRecordHandler(self, promises),
49
+ openCreateRelatedRecord: openCreateRelatedRecordHandler(self, promises),
50
+ pluginApiName,
51
+ location
52
+ });
53
+ await fn.bind(runner)();
54
+ } else {
55
+ handleCommonResponse(action, e, promises);
56
+ }
57
+ };
58
+ //# sourceMappingURL=recordDetail.worker.js.map
59
+ //# sourceMappingURL=recordDetail.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/workers/recordDetail.worker.ts"],"names":[],"mappings":";;;;;;;;;;AAkBA,IAAM,WAAW,IAAI,aAAA,CAAc,EAAE,OAAA,EAAS,OAAO,CAAA;AAErD,IAAA,CAAK,SAAA,GAAY,OAAO,CAAA,KAA4B;AAClD,EAAA,MAAM,IAAA,GAAO,IAAA,CAAK,KAAA,CAAM,CAAA,CAAE,IAAI,CAAA;AAE9B,EAAA,MAAM;AAAA,IACJ,MAAA;AAAA,IACA,MAAA;AAAA,IACA,KAAA;AAAA,IACA,IAAA;AAAA,IACA,cAAc,EAAC;AAAA,IACf,iBAAA;AAAA,IACA,aAAA;AAAA,IACA;AAAA,GACF,GAAI,IAAA;AAEJ,EAAA,IAAI,MAAA,KAAW,OAAA,CAAQ,GAAA,IAAO,KAAA,IAAS,MAAA,EAAQ;AAC7C,IAAA,MAAM,EAAE,EAAA,EAAI,YAAA,EAAa,GAAI,MAAM,MAAM,CAAA;AAEzC,IAAA,MAAM,MAAA,GAAS,IAAI,yBAAA,CAA0B;AAAA,MAC3C,MAAM,KAAA,CAAM,IAAA;AAAA,MACZ,YAAY,KAAA,CAAM,UAAA;AAAA,MAClB,UAAU,KAAA,CAAM,QAAA;AAAA,MAChB,QAAA,EAAU,MAAM,QAAA,IAAY,EAAA;AAAA,MAC5B,QAAA,EAAU,MAAM,QAAA,IAAY,EAAA;AAAA,MAC5B,cAAc,KAAA,CAAM,YAAA;AAAA,MACpB,SAAS,KAAA,CAAM,OAAA;AAAA,MACf,SAAS,KAAA,CAAM,OAAA;AAAA,MACf,UAAA,EAAY,MAAA;AAAA,MACZ,YAAA;AAAA,MACA,QAAA,EAAU,IAAA;AAAA,MACV,YAAA,EAAc,mBAAA,CAAoB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAChD,YAAA,EAAc,mBAAA,CAAoB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAChD,UAAA,EAAY,iBAAA,CAAkB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAC5C,uBAAA,EAAyB,8BAAA,CAA+B,IAAA,EAAM,QAAQ,CAAA;AAAA,MACtE,MAAM,IAAA,IAAQ,EAAA;AAAA,MACd,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,MAAA,EAAQ,aAAA,CAAc,IAAA,EAAM,QAAQ,CAAA;AAAA,MACpC,aAAA,EAAe,oBAAA,CAAqB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAClD,aAAA,EAAe,oBAAA,CAAqB,IAAA,EAAM,QAAQ,CAAA;AAAA,MAClD,gBAAA,EAAkB,uBAAA,CAAwB,IAAA,EAAM,QAAQ,CAAA;AAAA,MACxD,uBAAA,EAAyB,8BAAA,CAA+B,IAAA,EAAM,QAAQ,CAAA;AAAA,MACtE,aAAA;AAAA,MACA;AAAA,KACD,CAAA;AAED,IAAA,MAAM,EAAA,CAAG,IAAA,CAAK,MAAM,CAAA,EAAE;AAAA,EACxB,CAAA,MAAO;AACL,IAAA,oBAAA,CAAqB,MAAA,EAAQ,GAAG,QAAQ,CAAA;AAAA,EAC1C;AACF,CAAA","file":"recordDetail.worker.js","sourcesContent":["import { ACTIONS } from '../communication/constants.js';\nimport { RecordDetailWorkerContext } from '../contexts/RecordDetailWorkerContext.js';\nimport type { WorkerEvent } from '../types/workers.js';\nimport { getFn } from '../util/run.js';\nimport {\n dynamicPromptHandler,\n handleCommonResponse,\n installThirdPartyScriptHandler,\n kizenRequestHandler,\n openCreateRecordHandler,\n openCreateRelatedRecordHandler,\n postFormDataHandler,\n promptHandler,\n refreshEntityHandler,\n uploadFileHandler,\n} from './util.js';\nimport { WorkerPromise } from './WorkerPromise.js';\n\nconst promises = new WorkerPromise({ isDebug: false });\n\nself.onmessage = async (e: MessageEvent<string>) => {\n const data = JSON.parse(e.data) as WorkerEvent;\n\n const {\n action,\n script,\n setup,\n args,\n sessionData = {},\n pluginComponentId,\n pluginApiName,\n location,\n } = data;\n\n if (action === ACTIONS.RUN && setup && script) {\n const { fn, functionBody } = getFn(script);\n\n const runner = new RecordDetailWorkerContext({\n user: setup.user,\n teamMember: setup.teamMember,\n business: setup.business,\n entityId: setup.entityId ?? '',\n objectId: setup.objectId ?? '',\n clientObject: setup.clientObject,\n appPath: setup.appPath,\n isDebug: setup.isDebug,\n scriptBody: script,\n functionBody,\n instance: self,\n kizenRequest: kizenRequestHandler(self, promises),\n postFormData: postFormDataHandler(self, promises),\n uploadFile: uploadFileHandler(self, promises),\n installThirdPartyScript: installThirdPartyScriptHandler(self, promises),\n args: args ?? '',\n sessionData,\n pluginComponentId,\n prompt: promptHandler(self, promises),\n dynamicPrompt: dynamicPromptHandler(self, promises),\n refreshEntity: refreshEntityHandler(self, promises),\n openCreateRecord: openCreateRecordHandler(self, promises),\n openCreateRelatedRecord: openCreateRelatedRecordHandler(self, promises),\n pluginApiName,\n location,\n });\n\n await fn.bind(runner)();\n } else {\n handleCommonResponse(action, e, promises);\n }\n};\n"]}
package/package.json ADDED
@@ -0,0 +1,93 @@
1
+ {
2
+ "name": "@kizenapps/engine",
3
+ "version": "0.0.1-b1f3597",
4
+ "description": "Run JavaScript plugins inside Web Workers with host ↔ worker messaging",
5
+ "license": "GPL-3.0",
6
+ "type": "module",
7
+ "sideEffects": false,
8
+ "exports": {
9
+ ".": {
10
+ "import": {
11
+ "types": "./dist/index.d.ts",
12
+ "default": "./dist/index.js"
13
+ }
14
+ },
15
+ "./react": {
16
+ "import": {
17
+ "types": "./dist/react.d.ts",
18
+ "default": "./dist/react.js"
19
+ }
20
+ },
21
+ "./communication": {
22
+ "import": {
23
+ "types": "./dist/communication.d.ts",
24
+ "default": "./dist/communication.js"
25
+ }
26
+ },
27
+ "./util": {
28
+ "import": {
29
+ "types": "./dist/util.d.ts",
30
+ "default": "./dist/util.js"
31
+ }
32
+ },
33
+ "./vite": {
34
+ "import": {
35
+ "types": "./dist/vite.d.ts",
36
+ "default": "./dist/vite.js"
37
+ }
38
+ },
39
+ "./translation": "./dist/translation.json"
40
+ },
41
+ "bin": {
42
+ "merge-plugin-translations": "./dist/merge-translations.js"
43
+ },
44
+ "main": "./dist/index.js",
45
+ "module": "./dist/index.js",
46
+ "types": "./dist/index.d.ts",
47
+ "files": [
48
+ "dist",
49
+ "README.md",
50
+ "LICENSE.md"
51
+ ],
52
+ "peerDependencies": {
53
+ "@tanstack/react-query": ">=5",
54
+ "date-fns": ">=4",
55
+ "date-fns-tz": ">=3",
56
+ "dompurify": ">=3",
57
+ "react": ">=18",
58
+ "react-dom": ">=18"
59
+ },
60
+ "devDependencies": {
61
+ "@types/node": "^25.5.2",
62
+ "@types/react": "^18.0.0",
63
+ "@types/react-dom": "^18.0.0",
64
+ "date-fns": "^4.1.0",
65
+ "date-fns-tz": "^3.2.0",
66
+ "eslint": "^9.0.0",
67
+ "eslint-plugin-react-hooks": "^7.0.1",
68
+ "i18next-parser": "^9.4.0",
69
+ "json-stable-stringify": "^1.3.0",
70
+ "prettier": "^3.0.0",
71
+ "react": "^18.0.0",
72
+ "react-dom": "^18.0.0",
73
+ "tsup": "^8.0.0",
74
+ "typescript": "^6.0.2",
75
+ "typescript-eslint": "^8.0.0"
76
+ },
77
+ "publishConfig": {
78
+ "provenance": false
79
+ },
80
+ "scripts": {
81
+ "extract-translations": "i18next --config i18next-parser.config.cjs",
82
+ "build": "pnpm run extract-translations && tsup && cp locales/en/translation.json dist/translation.json && cp src/scripts/merge-translations.js dist/merge-translations.js",
83
+ "build:watch": "tsup --watch",
84
+ "typecheck": "tsc --noEmit",
85
+ "lint": "eslint src",
86
+ "lint:fix": "eslint src --fix",
87
+ "format": "prettier --write .",
88
+ "format:check": "prettier --check .",
89
+ "version:prerelease": "node scripts/version-prerelease.js",
90
+ "version:check": "node scripts/version-release.js",
91
+ "publish:prerelease": "pnpm run version:prerelease && pnpm publish --no-git-checks --access public --tag next"
92
+ }
93
+ }