@kizenapps/engine 0.3.1-74473de → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +4 -0
  2. package/dist/{chunk-2ZQ2HVFQ.js → chunk-4EHWLXCM.js} +3 -3
  3. package/dist/{chunk-2ZQ2HVFQ.js.map → chunk-4EHWLXCM.js.map} +1 -1
  4. package/dist/{chunk-L2I2WYHI.js → chunk-DKSZ7DIH.js} +3 -3
  5. package/dist/{chunk-L2I2WYHI.js.map → chunk-DKSZ7DIH.js.map} +1 -1
  6. package/dist/{chunk-LV5CNWWI.js → chunk-FUC56WIJ.js} +3 -3
  7. package/dist/{chunk-LV5CNWWI.js.map → chunk-FUC56WIJ.js.map} +1 -1
  8. package/dist/{chunk-4OLYJ5HJ.js → chunk-H5W5KCCH.js} +4 -4
  9. package/dist/{chunk-4OLYJ5HJ.js.map → chunk-H5W5KCCH.js.map} +1 -1
  10. package/dist/{chunk-24CEDEZP.js → chunk-JTIWM7Y4.js} +5 -5
  11. package/dist/{chunk-24CEDEZP.js.map → chunk-JTIWM7Y4.js.map} +1 -1
  12. package/dist/{chunk-F3VWCP3U.js → chunk-KWGL6H2I.js} +3 -3
  13. package/dist/{chunk-F3VWCP3U.js.map → chunk-KWGL6H2I.js.map} +1 -1
  14. package/dist/{chunk-KUEBHUXC.js → chunk-YJDV3VMM.js} +3 -3
  15. package/dist/{chunk-KUEBHUXC.js.map → chunk-YJDV3VMM.js.map} +1 -1
  16. package/dist/{chunk-T2ZYSH4M.js → chunk-YM3P5WHM.js} +5 -5
  17. package/dist/{chunk-T2ZYSH4M.js.map → chunk-YM3P5WHM.js.map} +1 -1
  18. package/dist/{chunk-RB7IZA57.js → chunk-ZSM4V5CP.js} +3 -3
  19. package/dist/{chunk-RB7IZA57.js.map → chunk-ZSM4V5CP.js.map} +1 -1
  20. package/dist/communication.js +2 -2
  21. package/dist/contexts/base.js +4 -4
  22. package/dist/contexts/floatingFrame.js +5 -5
  23. package/dist/contexts/recordDetail.js +5 -5
  24. package/dist/index.js +3 -3
  25. package/dist/react.js +40 -26
  26. package/dist/react.js.map +1 -1
  27. package/dist/util.js +6 -6
  28. package/dist/workers/calendarSource.worker.js +6 -6
  29. package/dist/workers/floatingFrame.worker.js +7 -7
  30. package/dist/workers/generic.worker.js +6 -6
  31. package/dist/workers/recordDetail.worker.js +7 -7
  32. package/package.json +7 -4
@@ -59,7 +59,7 @@ var INDICATOR_TYPE = /* @__PURE__ */ ((INDICATOR_TYPE2) => {
59
59
  var ROUTE_CHANGE_INTERNAL_EVENT = "integration:route-change";
60
60
  var ROUTE_CHANGE_IFRAME_EVENT = "kizen-route-change";
61
61
  var IFRAME_PREFIX = "kzn-integration-frame";
62
- var PKG_VERSION = "0.3.1-74473de";
62
+ var PKG_VERSION = "0.3.1";
63
63
  var BASE_QUERY_KEY = ["__plugin_engine", PKG_VERSION];
64
64
  var QUERY_KEYS = {
65
65
  CALENDAR_SOURCE_CALENDAR_LIST: (pluginApiName, sourceApiName) => [...BASE_QUERY_KEY, "calendar-source", "calendar-list", pluginApiName, sourceApiName],
@@ -168,5 +168,5 @@ var ThirdPartyScript = class {
168
168
  };
169
169
 
170
170
  export { ACTIONS, COMMUNICATIONS, IFRAME_PREFIX, INDICATOR_TYPE, QUERY_KEYS, RESPONSES, ROUTE_CHANGE_IFRAME_EVENT, ROUTE_CHANGE_INTERNAL_EVENT, ThirdPartyScript, getScriptIntegrationType, thirdPartyGlobalNames, thirdPartyReadyPredicates, thirdPartySetupScripts };
171
- //# sourceMappingURL=chunk-RB7IZA57.js.map
172
- //# sourceMappingURL=chunk-RB7IZA57.js.map
171
+ //# sourceMappingURL=chunk-ZSM4V5CP.js.map
172
+ //# sourceMappingURL=chunk-ZSM4V5CP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/communication/constants.ts","../src/communication/ThirdPartyScript.ts"],"names":["INDICATOR_TYPE"],"mappings":"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","file":"chunk-RB7IZA57.js","sourcesContent":["export const ACTIONS = {\n QUERY_REQUEST: 'query:request',\n UI_OUTPUT: 'outputui',\n IFRAME_OUTPUT: 'iframeoutput',\n POSTFORMDATA_REQUEST: 'postformdata:request',\n SETSTATE: 'setstate',\n DONE: 'done',\n RUN: 'run',\n OPEN_WINDOW: 'openwindow',\n COMMUNICATE: 'communicate',\n HIDE: 'hide',\n SHOW: 'show',\n EXPAND: 'expand',\n COLLAPSE: 'collapse',\n HIDE_HEADER: 'hideheader',\n SHOW_HEADER: 'showheader',\n OPEN_CREATE_RECORD_MODAL_REQUEST: 'opencreaterecordmodal:request',\n OPEN_CREATE_RELATED_RECORD_MODAL_REQUEST: 'opencreaterelatedrecordmodal:request',\n SHOW_TOAST: 'showtoast',\n CLEAR_TOASTS: 'cleartoasts',\n REFRESH_TIMELINE: 'refreshtimeline',\n REFRESH_ENTITY: 'refreshentity',\n UPLOADFILE_REQUEST: 'uploadfile:request',\n UPDATE_SESSION_DATA: 'updatesessiondata',\n INSTALL_THIRD_PARTY_SCRIPT_REQUEST: 'installthirdpartyscript:request',\n PROMPT_REQUEST: 'prompt:request',\n // Note: We have a special request for dynamic prompts, but the regular response is sufficient\n // and no special dynamic one is needed\n DYNAMIC_PROMPT_REQUEST: 'dynamicprompt:request',\n RELEASE_BLOCKING_SCRIPT: 'releaseblockingscript',\n AUTHORIZE: 'authorize',\n COPY_TO_CLIPBOARD: 'copytoclipboard',\n};\n\nexport const RESPONSES = {\n QUERY_RESPONSE: 'query:response',\n POSTFORMDATA_RESPONSE: 'postformdata:response',\n ERROR: 'error',\n UPLOADFILE_RESPONSE: 'uploadfile:response',\n UPLOADFILE_PROGRESS: 'uploadfile:progress',\n INSTALL_THIRD_PARTY_SCRIPT_RESPONSE: 'installthirdpartyscript:response',\n PROMPT_RESPONSE: 'prompt:response',\n REFRESH_ENTITY_RESPONSE: 'refreshentity:response',\n CREATE_RECORD_RESPONSE: 'createrecord:response',\n CREATE_RELATED_RECORD_RESPONSE: 'createrelatedrecord:response',\n};\n\nexport const COMMUNICATIONS = {\n RUN_FRAME_SCRIPT: 'runframescript',\n SEND_MESSAGE_TO_FRAME: 'sendmessagetoframe',\n CALL_THIRD_PARTY_SCRIPT: 'callthirdpartyscript',\n};\n\nexport enum INDICATOR_TYPE {\n NONE = 'none',\n BLOCK = 'block',\n BUTTON = 'button',\n SPINNER = 'spinner',\n}\n\nexport const ROUTE_CHANGE_INTERNAL_EVENT = 'integration:route-change';\nexport const ROUTE_CHANGE_IFRAME_EVENT = 'kizen-route-change';\nexport const IFRAME_PREFIX = 'kzn-integration-frame';\n\nconst PKG_VERSION = __PKG_VERSION__;\n\nconst BASE_QUERY_KEY = ['__plugin_engine', PKG_VERSION] as const;\n\nexport const QUERY_KEYS = {\n CALENDAR_SOURCE_CALENDAR_LIST: (pluginApiName: string, sourceApiName: string) =>\n [...BASE_QUERY_KEY, 'calendar-source', 'calendar-list', pluginApiName, sourceApiName] as const,\n CALENDAR_SOURCE_EVENTS: (\n pluginApiName: string,\n sourceApiName: string,\n calendarId: string,\n params: unknown,\n ) =>\n [\n ...BASE_QUERY_KEY,\n 'calendar-source',\n 'events',\n pluginApiName,\n sourceApiName,\n calendarId,\n params,\n ] as const,\n};\n","import type { Instance } from '../types/contexts.js';\nimport { ACTIONS, COMMUNICATIONS } from './constants.js';\n\nconst freshWorksPattern = /https:\\/\\/.*widget\\.freshworks\\.com\\/.*\\.js/;\nconst intercomPattern = /https:\\/\\/widget\\.intercom\\.io\\/widget\\/[a-z0-9]+/;\n\nexport const ALLOWED_INTEGRATIONS = {\n FRESHWORKS: 'freshworks',\n INTERCOM: 'intercom',\n} as const;\n\n/*\n Third party scripts must match an approved regex, and arbitrary scripts cannot be\n loaded by a plugin if they do not.\n*/\nexport const getScriptIntegrationType = (\n scriptUrl: string,\n): (typeof ALLOWED_INTEGRATIONS)[keyof typeof ALLOWED_INTEGRATIONS] | undefined => {\n if (freshWorksPattern.test(scriptUrl)) {\n return ALLOWED_INTEGRATIONS.FRESHWORKS;\n }\n\n if (intercomPattern.test(scriptUrl)) {\n return ALLOWED_INTEGRATIONS.INTERCOM;\n }\n};\n\n/* \n The global name of the third-party integration. This is the variable where the\n integration code can be called from. For example, if the third-party integration\n is 'Freshworks', function calls will be made like window.FreshworksWidget(...args).\n*/\nexport const thirdPartyGlobalNames = {\n [ALLOWED_INTEGRATIONS.FRESHWORKS]: 'FreshworksWidget',\n [ALLOWED_INTEGRATIONS.INTERCOM]: 'Intercom',\n};\n\n/*\n For a predefined third-party integration, the setup script will be run\n BEFORE the third party javascript has been loaded.\n*/\nexport const thirdPartySetupScripts = {\n [ALLOWED_INTEGRATIONS.FRESHWORKS]: (args: Record<string, unknown>) => {\n (window as unknown as Record<string, unknown>).fwSettings = {\n widget_id: args.widgetId,\n };\n\n // Function adapted from https://developers.freshdesk.com/widget-api/#introduction\n (function (...rest) {\n if (\n 'function' !=\n typeof (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.FRESHWORKS]\n ]\n ) {\n const n: { q: unknown[]; __kizen_pending?: boolean } = function () {\n n.q.push(...rest);\n };\n\n n.__kizen_pending = true;\n\n // eslint-disable-next-line\n ((n.q = []), ((window as any)[thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.FRESHWORKS]] = n));\n }\n })();\n },\n // Function adapted from https://developers.intercom.com/installing-intercom/web/installation\n [ALLOWED_INTEGRATIONS.INTERCOM]: () => {\n (function () {\n if (\n 'function' !=\n typeof (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.INTERCOM]\n ]\n ) {\n const w = window as unknown as Record<string, unknown>;\n const i: { c: (args: unknown) => void; q: unknown[]; __kizen_pending?: boolean } =\n function () {\n // eslint-disable-next-line prefer-rest-params\n i.c(arguments);\n };\n\n i.q = [];\n i.c = function (args: unknown) {\n i.q.push(args);\n };\n\n i.__kizen_pending = true;\n\n w[thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.INTERCOM]] = i;\n }\n })();\n },\n};\n\n/*\n For a predefined third-party integration, the ready predicate will be run\n AFTER the third party javascript has been loaded, but before the worker has been\n notified that it is ready. This is optional, but gives a chance to wait for an arbitrary\n condition to be met before considering the third-party code initialized successfully.\n*/\nexport const thirdPartyReadyPredicates = {\n [ALLOWED_INTEGRATIONS.FRESHWORKS]: () => {\n return (\n (\n (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.FRESHWORKS]\n ] as { __kizen_pending?: boolean } | undefined\n )?.__kizen_pending !== true\n );\n },\n [ALLOWED_INTEGRATIONS.INTERCOM]: () => {\n return (\n (\n (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.INTERCOM]\n ] as { __kizen_pending?: boolean } | undefined\n )?.__kizen_pending !== true\n );\n },\n};\n\nexport class ThirdPartyScript {\n private instance: Instance;\n private scriptUrl: string;\n private integration: (typeof ALLOWED_INTEGRATIONS)[keyof typeof ALLOWED_INTEGRATIONS];\n\n constructor(instance: Instance, scriptUrl: string) {\n this.instance = instance;\n this.scriptUrl = scriptUrl;\n const type = getScriptIntegrationType(scriptUrl);\n\n if (type) {\n this.integration = type;\n } else {\n throw new Error(`Error: Disallowed script url: ${scriptUrl}`);\n }\n }\n\n get type(): (typeof ALLOWED_INTEGRATIONS)[keyof typeof ALLOWED_INTEGRATIONS] {\n return this.integration;\n }\n\n public call(...params: unknown[]): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.COMMUNICATE,\n type: COMMUNICATIONS.CALL_THIRD_PARTY_SCRIPT,\n eventName: `thirdParty:${COMMUNICATIONS.CALL_THIRD_PARTY_SCRIPT}`,\n recipient: {\n script: this.scriptUrl,\n type: this.type,\n },\n params,\n }),\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/communication/constants.ts","../src/communication/ThirdPartyScript.ts"],"names":["INDICATOR_TYPE"],"mappings":"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","file":"chunk-ZSM4V5CP.js","sourcesContent":["export const ACTIONS = {\n QUERY_REQUEST: 'query:request',\n UI_OUTPUT: 'outputui',\n IFRAME_OUTPUT: 'iframeoutput',\n POSTFORMDATA_REQUEST: 'postformdata:request',\n SETSTATE: 'setstate',\n DONE: 'done',\n RUN: 'run',\n OPEN_WINDOW: 'openwindow',\n COMMUNICATE: 'communicate',\n HIDE: 'hide',\n SHOW: 'show',\n EXPAND: 'expand',\n COLLAPSE: 'collapse',\n HIDE_HEADER: 'hideheader',\n SHOW_HEADER: 'showheader',\n OPEN_CREATE_RECORD_MODAL_REQUEST: 'opencreaterecordmodal:request',\n OPEN_CREATE_RELATED_RECORD_MODAL_REQUEST: 'opencreaterelatedrecordmodal:request',\n SHOW_TOAST: 'showtoast',\n CLEAR_TOASTS: 'cleartoasts',\n REFRESH_TIMELINE: 'refreshtimeline',\n REFRESH_ENTITY: 'refreshentity',\n UPLOADFILE_REQUEST: 'uploadfile:request',\n UPDATE_SESSION_DATA: 'updatesessiondata',\n INSTALL_THIRD_PARTY_SCRIPT_REQUEST: 'installthirdpartyscript:request',\n PROMPT_REQUEST: 'prompt:request',\n // Note: We have a special request for dynamic prompts, but the regular response is sufficient\n // and no special dynamic one is needed\n DYNAMIC_PROMPT_REQUEST: 'dynamicprompt:request',\n RELEASE_BLOCKING_SCRIPT: 'releaseblockingscript',\n AUTHORIZE: 'authorize',\n COPY_TO_CLIPBOARD: 'copytoclipboard',\n};\n\nexport const RESPONSES = {\n QUERY_RESPONSE: 'query:response',\n POSTFORMDATA_RESPONSE: 'postformdata:response',\n ERROR: 'error',\n UPLOADFILE_RESPONSE: 'uploadfile:response',\n UPLOADFILE_PROGRESS: 'uploadfile:progress',\n INSTALL_THIRD_PARTY_SCRIPT_RESPONSE: 'installthirdpartyscript:response',\n PROMPT_RESPONSE: 'prompt:response',\n REFRESH_ENTITY_RESPONSE: 'refreshentity:response',\n CREATE_RECORD_RESPONSE: 'createrecord:response',\n CREATE_RELATED_RECORD_RESPONSE: 'createrelatedrecord:response',\n};\n\nexport const COMMUNICATIONS = {\n RUN_FRAME_SCRIPT: 'runframescript',\n SEND_MESSAGE_TO_FRAME: 'sendmessagetoframe',\n CALL_THIRD_PARTY_SCRIPT: 'callthirdpartyscript',\n};\n\nexport enum INDICATOR_TYPE {\n NONE = 'none',\n BLOCK = 'block',\n BUTTON = 'button',\n SPINNER = 'spinner',\n}\n\nexport const ROUTE_CHANGE_INTERNAL_EVENT = 'integration:route-change';\nexport const ROUTE_CHANGE_IFRAME_EVENT = 'kizen-route-change';\nexport const IFRAME_PREFIX = 'kzn-integration-frame';\n\nconst PKG_VERSION = __PKG_VERSION__;\n\nconst BASE_QUERY_KEY = ['__plugin_engine', PKG_VERSION] as const;\n\nexport const QUERY_KEYS = {\n CALENDAR_SOURCE_CALENDAR_LIST: (pluginApiName: string, sourceApiName: string) =>\n [...BASE_QUERY_KEY, 'calendar-source', 'calendar-list', pluginApiName, sourceApiName] as const,\n CALENDAR_SOURCE_EVENTS: (\n pluginApiName: string,\n sourceApiName: string,\n calendarId: string,\n params: unknown,\n ) =>\n [\n ...BASE_QUERY_KEY,\n 'calendar-source',\n 'events',\n pluginApiName,\n sourceApiName,\n calendarId,\n params,\n ] as const,\n};\n","import type { Instance } from '../types/contexts.js';\nimport { ACTIONS, COMMUNICATIONS } from './constants.js';\n\nconst freshWorksPattern = /https:\\/\\/.*widget\\.freshworks\\.com\\/.*\\.js/;\nconst intercomPattern = /https:\\/\\/widget\\.intercom\\.io\\/widget\\/[a-z0-9]+/;\n\nexport const ALLOWED_INTEGRATIONS = {\n FRESHWORKS: 'freshworks',\n INTERCOM: 'intercom',\n} as const;\n\n/*\n Third party scripts must match an approved regex, and arbitrary scripts cannot be\n loaded by a plugin if they do not.\n*/\nexport const getScriptIntegrationType = (\n scriptUrl: string,\n): (typeof ALLOWED_INTEGRATIONS)[keyof typeof ALLOWED_INTEGRATIONS] | undefined => {\n if (freshWorksPattern.test(scriptUrl)) {\n return ALLOWED_INTEGRATIONS.FRESHWORKS;\n }\n\n if (intercomPattern.test(scriptUrl)) {\n return ALLOWED_INTEGRATIONS.INTERCOM;\n }\n};\n\n/* \n The global name of the third-party integration. This is the variable where the\n integration code can be called from. For example, if the third-party integration\n is 'Freshworks', function calls will be made like window.FreshworksWidget(...args).\n*/\nexport const thirdPartyGlobalNames = {\n [ALLOWED_INTEGRATIONS.FRESHWORKS]: 'FreshworksWidget',\n [ALLOWED_INTEGRATIONS.INTERCOM]: 'Intercom',\n};\n\n/*\n For a predefined third-party integration, the setup script will be run\n BEFORE the third party javascript has been loaded.\n*/\nexport const thirdPartySetupScripts = {\n [ALLOWED_INTEGRATIONS.FRESHWORKS]: (args: Record<string, unknown>) => {\n (window as unknown as Record<string, unknown>).fwSettings = {\n widget_id: args.widgetId,\n };\n\n // Function adapted from https://developers.freshdesk.com/widget-api/#introduction\n (function (...rest) {\n if (\n 'function' !=\n typeof (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.FRESHWORKS]\n ]\n ) {\n const n: { q: unknown[]; __kizen_pending?: boolean } = function () {\n n.q.push(...rest);\n };\n\n n.__kizen_pending = true;\n\n // eslint-disable-next-line\n ((n.q = []), ((window as any)[thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.FRESHWORKS]] = n));\n }\n })();\n },\n // Function adapted from https://developers.intercom.com/installing-intercom/web/installation\n [ALLOWED_INTEGRATIONS.INTERCOM]: () => {\n (function () {\n if (\n 'function' !=\n typeof (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.INTERCOM]\n ]\n ) {\n const w = window as unknown as Record<string, unknown>;\n const i: { c: (args: unknown) => void; q: unknown[]; __kizen_pending?: boolean } =\n function () {\n // eslint-disable-next-line prefer-rest-params\n i.c(arguments);\n };\n\n i.q = [];\n i.c = function (args: unknown) {\n i.q.push(args);\n };\n\n i.__kizen_pending = true;\n\n w[thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.INTERCOM]] = i;\n }\n })();\n },\n};\n\n/*\n For a predefined third-party integration, the ready predicate will be run\n AFTER the third party javascript has been loaded, but before the worker has been\n notified that it is ready. This is optional, but gives a chance to wait for an arbitrary\n condition to be met before considering the third-party code initialized successfully.\n*/\nexport const thirdPartyReadyPredicates = {\n [ALLOWED_INTEGRATIONS.FRESHWORKS]: () => {\n return (\n (\n (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.FRESHWORKS]\n ] as { __kizen_pending?: boolean } | undefined\n )?.__kizen_pending !== true\n );\n },\n [ALLOWED_INTEGRATIONS.INTERCOM]: () => {\n return (\n (\n (window as unknown as Record<string, unknown>)[\n thirdPartyGlobalNames[ALLOWED_INTEGRATIONS.INTERCOM]\n ] as { __kizen_pending?: boolean } | undefined\n )?.__kizen_pending !== true\n );\n },\n};\n\nexport class ThirdPartyScript {\n private instance: Instance;\n private scriptUrl: string;\n private integration: (typeof ALLOWED_INTEGRATIONS)[keyof typeof ALLOWED_INTEGRATIONS];\n\n constructor(instance: Instance, scriptUrl: string) {\n this.instance = instance;\n this.scriptUrl = scriptUrl;\n const type = getScriptIntegrationType(scriptUrl);\n\n if (type) {\n this.integration = type;\n } else {\n throw new Error(`Error: Disallowed script url: ${scriptUrl}`);\n }\n }\n\n get type(): (typeof ALLOWED_INTEGRATIONS)[keyof typeof ALLOWED_INTEGRATIONS] {\n return this.integration;\n }\n\n public call(...params: unknown[]): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.COMMUNICATE,\n type: COMMUNICATIONS.CALL_THIRD_PARTY_SCRIPT,\n eventName: `thirdParty:${COMMUNICATIONS.CALL_THIRD_PARTY_SCRIPT}`,\n recipient: {\n script: this.scriptUrl,\n type: this.type,\n },\n params,\n }),\n );\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import './chunk-LGJYUPYZ.js';
2
- export { Communicate, runFrameScriptEventName } from './chunk-L2I2WYHI.js';
3
- export { IFRAME_PREFIX, INDICATOR_TYPE, ThirdPartyScript } from './chunk-RB7IZA57.js';
2
+ export { Communicate, runFrameScriptEventName } from './chunk-DKSZ7DIH.js';
3
+ export { IFRAME_PREFIX, INDICATOR_TYPE, ThirdPartyScript } from './chunk-ZSM4V5CP.js';
4
4
  import './chunk-5WRI5ZAA.js';
5
5
  //# sourceMappingURL=communication.js.map
6
6
  //# sourceMappingURL=communication.js.map
@@ -1,7 +1,7 @@
1
- export { BaseWorkerContext } from '../chunk-24CEDEZP.js';
2
- import '../chunk-F3VWCP3U.js';
3
- import '../chunk-L2I2WYHI.js';
4
- import '../chunk-RB7IZA57.js';
1
+ export { BaseWorkerContext } from '../chunk-JTIWM7Y4.js';
2
+ import '../chunk-KWGL6H2I.js';
3
+ import '../chunk-DKSZ7DIH.js';
4
+ import '../chunk-ZSM4V5CP.js';
5
5
  import '../chunk-5WRI5ZAA.js';
6
6
  //# sourceMappingURL=base.js.map
7
7
  //# sourceMappingURL=base.js.map
@@ -1,8 +1,8 @@
1
- export { FloatingFrameWorkerContext } from '../chunk-4OLYJ5HJ.js';
2
- import '../chunk-24CEDEZP.js';
3
- import '../chunk-F3VWCP3U.js';
4
- import '../chunk-L2I2WYHI.js';
5
- import '../chunk-RB7IZA57.js';
1
+ export { FloatingFrameWorkerContext } from '../chunk-H5W5KCCH.js';
2
+ import '../chunk-JTIWM7Y4.js';
3
+ import '../chunk-KWGL6H2I.js';
4
+ import '../chunk-DKSZ7DIH.js';
5
+ import '../chunk-ZSM4V5CP.js';
6
6
  import '../chunk-5WRI5ZAA.js';
7
7
  //# sourceMappingURL=floatingFrame.js.map
8
8
  //# sourceMappingURL=floatingFrame.js.map
@@ -1,8 +1,8 @@
1
- export { RecordDetailWorkerContext } from '../chunk-LV5CNWWI.js';
2
- import '../chunk-24CEDEZP.js';
3
- import '../chunk-F3VWCP3U.js';
4
- import '../chunk-L2I2WYHI.js';
5
- import '../chunk-RB7IZA57.js';
1
+ export { RecordDetailWorkerContext } from '../chunk-FUC56WIJ.js';
2
+ import '../chunk-JTIWM7Y4.js';
3
+ import '../chunk-KWGL6H2I.js';
4
+ import '../chunk-DKSZ7DIH.js';
5
+ import '../chunk-ZSM4V5CP.js';
6
6
  import '../chunk-5WRI5ZAA.js';
7
7
  //# sourceMappingURL=recordDetail.js.map
8
8
  //# sourceMappingURL=recordDetail.js.map
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { runExpression, runObjectExpression, runOptionExpression, runScript, runStringExpression, version } from './chunk-T2ZYSH4M.js';
2
- import './chunk-KUEBHUXC.js';
3
- import './chunk-RB7IZA57.js';
1
+ export { runExpression, runObjectExpression, runOptionExpression, runScript, runStringExpression, version } from './chunk-YM3P5WHM.js';
2
+ import './chunk-YJDV3VMM.js';
3
+ import './chunk-ZSM4V5CP.js';
4
4
  import './chunk-5WRI5ZAA.js';
5
5
  //# sourceMappingURL=index.js.map
6
6
  //# sourceMappingURL=index.js.map
package/dist/react.js CHANGED
@@ -1,13 +1,13 @@
1
- import { runScript, runExpression, getStableHash, isFlagEnabled } from './chunk-T2ZYSH4M.js';
1
+ import { runScript, runExpression, getStableHash, isFlagEnabled } from './chunk-YM3P5WHM.js';
2
2
  import './chunk-LGJYUPYZ.js';
3
- import { generateExecutionKey } from './chunk-KUEBHUXC.js';
4
- import { getAllNestedInputsFromConfig, getFieldFromAction } from './chunk-F3VWCP3U.js';
5
- import { runFrameScriptEventName } from './chunk-L2I2WYHI.js';
6
- import { QUERY_KEYS, ROUTE_CHANGE_INTERNAL_EVENT, IFRAME_PREFIX, ROUTE_CHANGE_IFRAME_EVENT } from './chunk-RB7IZA57.js';
3
+ import { generateExecutionKey } from './chunk-YJDV3VMM.js';
4
+ import { getAllNestedInputsFromConfig, getFieldFromAction } from './chunk-KWGL6H2I.js';
5
+ import { runFrameScriptEventName } from './chunk-DKSZ7DIH.js';
6
+ import { QUERY_KEYS, ROUTE_CHANGE_INTERNAL_EVENT, IFRAME_PREFIX, ROUTE_CHANGE_IFRAME_EVENT } from './chunk-ZSM4V5CP.js';
7
7
  import './chunk-5WRI5ZAA.js';
8
- import { useQueries, useQueryClient } from '@tanstack/react-query';
8
+ import { QueryClient, useQueries, useQueryClient, QueryClientContext, QueryClientProvider } from '@tanstack/react-query';
9
9
  import { createContext, useContext, useState, useCallback, useMemo, useRef, useEffect } from 'react';
10
- import { jsx } from 'react/jsx-runtime';
10
+ import { jsx, Fragment } from 'react/jsx-runtime';
11
11
  import { formatInTimeZone } from 'date-fns-tz';
12
12
  import { startOfDay, endOfDay } from 'date-fns';
13
13
  import { flushSync } from 'react-dom';
@@ -2022,6 +2022,14 @@ var useLocationChange = () => {
2022
2022
  };
2023
2023
  }, []);
2024
2024
  };
2025
+ var defaultQueryClient = new QueryClient();
2026
+ var MaybeQueryClientProvider = ({ children }) => {
2027
+ const existing = useContext(QueryClientContext);
2028
+ if (existing) {
2029
+ return /* @__PURE__ */ jsx(Fragment, { children });
2030
+ }
2031
+ return /* @__PURE__ */ jsx(QueryClientProvider, { client: defaultQueryClient, children });
2032
+ };
2025
2033
  var AppEngineProvider = (props) => {
2026
2034
  const {
2027
2035
  children,
@@ -2044,7 +2052,7 @@ var AppEngineProvider = (props) => {
2044
2052
  t
2045
2053
  } = props;
2046
2054
  useLocationChange();
2047
- return /* @__PURE__ */ jsx(
2055
+ return /* @__PURE__ */ jsx(MaybeQueryClientProvider, { children: /* @__PURE__ */ jsx(
2048
2056
  AppStateWrapper,
2049
2057
  {
2050
2058
  bootstrapPlugins,
@@ -2057,28 +2065,34 @@ var AppEngineProvider = (props) => {
2057
2065
  children: ({ hasFinishedBootstrapping, waitingOnRouteScript }) => {
2058
2066
  return /* @__PURE__ */ jsx(TranslationWrapper, { t, children: /* @__PURE__ */ jsx(RunnerStateWrapper, { children: (showLoadingIndicator) => {
2059
2067
  return /* @__PURE__ */ jsx(HistoryWrapper, { onNavigate, children: /* @__PURE__ */ jsx(ModalsWrapper, { ...modal, children: (modals) => {
2060
- return /* @__PURE__ */ jsx(MonitoringWrapper, { monitoringExceptionHelper, children: /* @__PURE__ */ jsx(SessionDataWrapper, { children: /* @__PURE__ */ jsx(TerminatorsWrapper, { children: /* @__PURE__ */ jsx(ToastWrapper, { showToast, clearToasts, children: /* @__PURE__ */ jsx(FloatingFrameWrapper, { children: (hiddenByModal) => {
2061
- return /* @__PURE__ */ jsx(
2062
- NetworkWrapper,
2063
- {
2064
- performRequest,
2065
- createFileId,
2066
- performFileUpload,
2067
- children: children({
2068
- ...modals,
2069
- showLoadingIndicator,
2070
- hasFinishedBootstrapping,
2071
- waitingOnRouteScript,
2072
- hiddenByModal: hideFramesOnModal ? hiddenByModal : false
2073
- })
2074
- }
2075
- );
2076
- } }) }) }) }) });
2068
+ return /* @__PURE__ */ jsx(
2069
+ MonitoringWrapper,
2070
+ {
2071
+ monitoringExceptionHelper,
2072
+ children: /* @__PURE__ */ jsx(SessionDataWrapper, { children: /* @__PURE__ */ jsx(TerminatorsWrapper, { children: /* @__PURE__ */ jsx(ToastWrapper, { showToast, clearToasts, children: /* @__PURE__ */ jsx(FloatingFrameWrapper, { children: (hiddenByModal) => {
2073
+ return /* @__PURE__ */ jsx(
2074
+ NetworkWrapper,
2075
+ {
2076
+ performRequest,
2077
+ createFileId,
2078
+ performFileUpload,
2079
+ children: children({
2080
+ ...modals,
2081
+ showLoadingIndicator,
2082
+ hasFinishedBootstrapping,
2083
+ waitingOnRouteScript,
2084
+ hiddenByModal: hideFramesOnModal ? hiddenByModal : false
2085
+ })
2086
+ }
2087
+ );
2088
+ } }) }) }) })
2089
+ }
2090
+ );
2077
2091
  } }) });
2078
2092
  } }) });
2079
2093
  }
2080
2094
  }
2081
- );
2095
+ ) });
2082
2096
  };
2083
2097
  var AppBootstrapSuccess = () => {
2084
2098
  const { onInitialBootstrap } = useAppState();