@kizenapps/engine 1.4.0-01344a3 → 1.5.0-53bcfe4

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 (53) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/{ThirdPartyScript-CoMDaLsq.d.ts → ThirdPartyScript-cM_3Ut1L.d.ts} +31 -3
  3. package/dist/{automation-CWET9vfs.d.ts → automation-DdbPK8-Z.d.ts} +20 -3
  4. package/dist/{chunk-AY5OQ5KM.js → chunk-36G3L5ZV.js} +184 -4
  5. package/dist/chunk-36G3L5ZV.js.map +1 -0
  6. package/dist/{chunk-GVATLHW3.js → chunk-4MQ4E7D6.js} +3 -3
  7. package/dist/{chunk-GVATLHW3.js.map → chunk-4MQ4E7D6.js.map} +1 -1
  8. package/dist/{chunk-MRN746YD.js → chunk-6EG3BV5X.js} +52 -6
  9. package/dist/chunk-6EG3BV5X.js.map +1 -0
  10. package/dist/{chunk-PPRZFBZZ.js → chunk-ANAHYJTV.js} +5 -3
  11. package/dist/chunk-ANAHYJTV.js.map +1 -0
  12. package/dist/{chunk-ZMIF22NR.js → chunk-D54DBKHM.js} +78 -8
  13. package/dist/chunk-D54DBKHM.js.map +1 -0
  14. package/dist/{chunk-IGHBWLIS.js → chunk-DQECJSHA.js} +7 -4
  15. package/dist/chunk-DQECJSHA.js.map +1 -0
  16. package/dist/{chunk-5ZVIHUN4.js → chunk-ETFBGH26.js} +3 -3
  17. package/dist/{chunk-5ZVIHUN4.js.map → chunk-ETFBGH26.js.map} +1 -1
  18. package/dist/{chunk-YBCIIIAP.js → chunk-MQCYS74W.js} +4 -4
  19. package/dist/{chunk-YBCIIIAP.js.map → chunk-MQCYS74W.js.map} +1 -1
  20. package/dist/{chunk-V6JXKTHL.js → chunk-Q7UJXNJH.js} +3 -3
  21. package/dist/{chunk-V6JXKTHL.js.map → chunk-Q7UJXNJH.js.map} +1 -1
  22. package/dist/communication.d.ts +2 -2
  23. package/dist/communication.js +2 -2
  24. package/dist/contexts/base.d.ts +10 -3
  25. package/dist/contexts/base.js +4 -4
  26. package/dist/contexts/floatingFrame.d.ts +1 -1
  27. package/dist/contexts/floatingFrame.js +5 -5
  28. package/dist/contexts/recordDetail.d.ts +1 -1
  29. package/dist/contexts/recordDetail.js +5 -5
  30. package/dist/{generic-CQyBACwP.d.ts → generic-CCLPwofS.d.ts} +1 -1
  31. package/dist/index.d.ts +6 -6
  32. package/dist/index.js +4 -4
  33. package/dist/react.d.ts +19 -6
  34. package/dist/react.js +118 -74
  35. package/dist/react.js.map +1 -1
  36. package/dist/types.d.ts +5 -5
  37. package/dist/util.d.ts +3 -3
  38. package/dist/util.js +5 -5
  39. package/dist/{values-BwAd85Ee.d.ts → values-BA8dwWnM.d.ts} +2 -2
  40. package/dist/workers/calendarSource.worker.js +11 -6
  41. package/dist/workers/calendarSource.worker.js.map +1 -1
  42. package/dist/workers/floatingFrame.worker.js +9 -7
  43. package/dist/workers/floatingFrame.worker.js.map +1 -1
  44. package/dist/workers/generic.worker.js +8 -6
  45. package/dist/workers/generic.worker.js.map +1 -1
  46. package/dist/workers/recordDetail.worker.js +9 -7
  47. package/dist/workers/recordDetail.worker.js.map +1 -1
  48. package/package.json +1 -1
  49. package/dist/chunk-AY5OQ5KM.js.map +0 -1
  50. package/dist/chunk-IGHBWLIS.js.map +0 -1
  51. package/dist/chunk-MRN746YD.js.map +0 -1
  52. package/dist/chunk-PPRZFBZZ.js.map +0 -1
  53. package/dist/chunk-ZMIF22NR.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/contexts/BaseWorkerContext.ts"],"names":[],"mappings":"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","file":"chunk-6EG3BV5X.js","sourcesContent":["/* eslint-disable @typescript-eslint/only-throw-error */\nimport { Communicate } from '../communication/Communicate.js';\nimport { ACTIONS, INDICATOR_TYPE, RESPONSES } from '../communication/constants.js';\nimport { ThirdPartyScript } from '../communication/ThirdPartyScript.js';\nimport type {\n ConsoleBridge,\n CurrentUser,\n PartialBusiness,\n PartialClientObject,\n PartialLocation,\n PartialTeamMember,\n PartialUser,\n UnknownJSON,\n} from '../types/common.js';\nimport type {\n Args,\n BaseAPI,\n DataCache,\n ErrorResponse,\n InstallThirdPartyScriptFn,\n Instance,\n InternalSessionData,\n OpenCreateRecordFn,\n OpenCreateRelatedRecordFn,\n PostFormDataFn,\n PromptFn,\n RefreshEntityFn,\n ShowToastOptions,\n StateChangePayload,\n UploadFileFn,\n UserConfig,\n WorkerContextArgs,\n} from '../types/contexts.js';\nimport type {\n DynamicPromptConfig,\n CloseModalFn,\n DynamicPromptFn,\n ModalConfig,\n ShowViewInModalFn,\n ShowViewInModalOptions,\n PromptState,\n UnknownFunction,\n} from '../types/modals.js';\nimport type {\n GetOptions,\n GetReturnValue,\n RequestOptions,\n RequestWithErrorsResponse,\n} from '../types/request.js';\nimport { serializeConsoleArg } from '../util/console.js';\nimport { cleanConfig } from '../workers/util.js';\n\nconst buildErrorResponse = async (result: Response): Promise<ErrorResponse> => {\n let errorJSON: unknown = null;\n\n try {\n errorJSON = await result.json();\n } catch {\n // If the response is not JSON, we just return the text\n }\n\n const error = {\n status: result.status,\n statusText: result.statusText,\n body: errorJSON,\n };\n\n return error;\n};\n\nconst convertToSelfInvokingFunction = (\n fn: UnknownFunction,\n variable: string,\n args: UnknownJSON = {},\n prepend = '',\n): string => {\n const functionString = fn.toString();\n // Create a self-invoking function that takes in the replacement variable, and additional args as the arguments\n const innner = `(${functionString})({ state: {{${variable}}}, args: ${JSON.stringify(args)}, utils: __kizen_utils })`;\n\n // Wrap the function in a closure that includes any prepended code (like registered utils) and returns the result of the function\n const full = `(function() { ${prepend}\\nreturn ${innner}; })()`;\n\n return full;\n};\n\n/*\n * This is the primary class that exposes the public methods available\n * to our custom scripts. It should only be used in the context of a worker\n * script.\n */\nexport class BaseWorkerContext {\n protected user?: PartialUser;\n protected teamMember?: PartialTeamMember;\n protected business?: PartialBusiness;\n protected clientObject?: PartialClientObject | undefined;\n protected appPath?: string;\n protected dataCache: DataCache<unknown> = new Map();\n protected queryOptions = {};\n private api: BaseAPI;\n public postFormData: PostFormDataFn;\n private executionTimer = 0;\n private setupExecutions = 0;\n private cleanupExecutions = 0;\n protected isDebug = false;\n protected scriptBody: string;\n protected internalState: StateChangePayload = { indicator: INDICATOR_TYPE.NONE };\n protected instance: Instance;\n private breakOnException = false;\n public args: Args;\n public communicate: Communicate;\n private shouldPreserve = false;\n private uploadFileHandler: UploadFileFn;\n private internalSessionData: InternalSessionData;\n private pluginComponentId: string | undefined;\n private installThirdPartyScriptHandler: InstallThirdPartyScriptFn;\n private promptHandler: PromptFn;\n private dynamicPromptHandler: DynamicPromptFn;\n private showViewInModalHandler: ShowViewInModalFn;\n private closeModalHandler: CloseModalFn;\n private refreshEntityHandler: RefreshEntityFn;\n private openCreateRecordHandler: OpenCreateRecordFn;\n private openCreateRelatedRecordHandler: OpenCreateRelatedRecordFn;\n protected runnerType: 'base' | 'floatingFrame' | 'recordDetail';\n public pluginApiName: string;\n public tempPromptState: PromptState = {};\n private partialLocation: PartialLocation;\n\n constructor({\n user,\n teamMember,\n business,\n clientObject,\n appPath,\n isDebug,\n kizenRequest,\n postFormData,\n scriptBody,\n instance,\n args,\n uploadFile,\n sessionData,\n pluginComponentId,\n installThirdPartyScript,\n prompt,\n refreshEntity,\n openCreateRecord,\n openCreateRelatedRecord,\n pluginApiName,\n dynamicPrompt,\n showViewInModal,\n closeModal,\n location,\n }: WorkerContextArgs) {\n this.user = user;\n this.teamMember = teamMember;\n this.business = business;\n this.clientObject = clientObject;\n this.partialLocation = location;\n this.appPath = appPath;\n this.isDebug = isDebug ?? false;\n this.api = {\n get: kizenRequest('get'),\n post: kizenRequest('post'),\n put: kizenRequest('put'),\n delete: kizenRequest('delete'),\n patch: kizenRequest('patch'),\n };\n\n this.postFormData = postFormData;\n this.scriptBody = scriptBody;\n this.instance = instance;\n this.communicate = new Communicate(instance);\n this.uploadFileHandler = uploadFile;\n this.internalSessionData = sessionData ?? {};\n this.pluginComponentId = pluginComponentId;\n this.installThirdPartyScriptHandler = installThirdPartyScript;\n this.promptHandler = prompt;\n this.refreshEntityHandler = refreshEntity;\n this.openCreateRecordHandler = openCreateRecord;\n this.openCreateRelatedRecordHandler = openCreateRelatedRecord;\n this.runnerType = 'base';\n this.pluginApiName = pluginApiName;\n this.dynamicPromptHandler = dynamicPrompt;\n this.showViewInModalHandler = showViewInModal;\n this.closeModalHandler = closeModal;\n\n try {\n this.args = JSON.parse(args ?? '{}') as Args;\n } catch {\n this.args = {} as Args;\n }\n }\n\n public onError(error?: UnknownJSON | Error): void {\n if (this.breakOnException) {\n debugger;\n }\n\n this.instance.postMessage(\n JSON.stringify({\n action: RESPONSES.ERROR,\n error: error?.message,\n }),\n );\n }\n\n set debug(value: boolean) {\n this.isDebug = value;\n this.breakOnException = value;\n }\n\n set preserve(value: boolean) {\n this.shouldPreserve = value;\n }\n\n get preserve(): boolean {\n return this.shouldPreserve;\n }\n\n parseDate(date: string): string[] {\n return date.split('-');\n }\n\n parsePhone(phone: string): string {\n return phone.replace(/\\+/g, '');\n }\n\n openWindow(url: string, target = '_blank'): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.OPEN_WINDOW,\n url,\n target,\n features: 'noopener noreferrer',\n }),\n );\n }\n\n authorize(\n serviceName?: string,\n config: { successRedirectPath?: string; errorRedirectPath?: string } = {},\n ): void {\n if (!serviceName) {\n throw new Error('Service name is required to authorize');\n }\n\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.AUTHORIZE,\n serviceName,\n config: {\n successRedirectPath:\n config.successRedirectPath ?? `/marketplace/${this.pluginApiName}/auth`,\n errorRedirectPath: config.errorRedirectPath ?? `/marketplace/${this.pluginApiName}/auth`,\n },\n }),\n );\n }\n\n getServiceUrl(serviceName: string, path: string): string {\n if (!serviceName) {\n throw new Error('Service name is required to get a service url');\n }\n\n const base = `/external-integrations/proxy/${this.pluginApiName}/${serviceName}`;\n\n if (path.startsWith('/')) {\n return `${base}${path}`;\n }\n\n return `${base}/${path}`;\n }\n\n get currentBusiness(): PartialBusiness | undefined {\n return this.business;\n }\n\n get applicationPath(): string | undefined {\n return this.appPath;\n }\n\n get currentUser(): CurrentUser {\n return {\n profile: {\n id: this.teamMember?.id ?? '',\n full_name: this.teamMember?.full_name ?? '',\n first_name: this.teamMember?.first_name ?? '',\n last_name: this.teamMember?.last_name ?? '',\n email: this.teamMember?.email ?? '',\n phone: this.teamMember?.phone ?? '',\n created: this.teamMember?.created ?? '',\n crm_client_id: this.user?.crm_client_id ?? '',\n },\n };\n }\n\n get sessionData(): InternalSessionData {\n return this.internalSessionData;\n }\n\n get config(): unknown {\n const hasCustomConfig = Boolean(this.args.__kizen_clean_config);\n\n if (!hasCustomConfig) {\n return {};\n }\n\n const manager = new Proxy(this.args.__kizen_clean_config ?? {}, {\n get: (target, name) => {\n if (Reflect.has(target, name)) {\n return Reflect.get(target, name) as unknown;\n }\n\n return undefined;\n },\n });\n\n return manager;\n }\n\n get location(): PartialLocation {\n return new Proxy(this.partialLocation, {\n get: (target, name) => {\n if (name === 'toJSON') {\n return () => {\n return this.partialLocation;\n };\n }\n\n if (Reflect.has(target, name)) {\n return Reflect.get(target, name) as string;\n }\n\n throw new Error(\n `Property ${String(name)} is not available on location object for plugin apps`,\n );\n },\n });\n }\n\n get userConfig(): unknown {\n const customConfig = this.args.__kizen_user_config?.__kizen_clean_config;\n\n if (!customConfig) {\n return {};\n }\n\n const manager = new Proxy(customConfig, {\n get: (target, name) => {\n if (Reflect.has(target, name)) {\n return Reflect.get(target, name) as unknown;\n }\n\n return undefined;\n },\n });\n\n return manager;\n }\n\n setSessionData(update: UnknownJSON): void {\n if (typeof update !== 'object') {\n throw new Error(`Invalid session update with type ${typeof update}`);\n }\n\n if (Array.isArray(update)) {\n throw new Error(`Invalid session update with type array`);\n }\n\n this.internalSessionData = {\n ...this.internalSessionData,\n ...update,\n };\n\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.UPDATE_SESSION_DATA,\n update,\n }),\n );\n }\n\n async get(url: string, options?: GetOptions): Promise<unknown> {\n try {\n if (this.isRelativeUrl(url)) {\n const cachedResult = this.dataCache.get(url) as GetReturnValue | undefined;\n\n if (cachedResult && !options?.ignoreCache) {\n if (options?.returnErrors) {\n return [cachedResult.data, null];\n }\n\n return cachedResult.data;\n }\n\n const { data } = await this.api.get(url, {\n ...this.queryOptions,\n headers: this.buildHeaders(options?.headers),\n });\n\n this.dataCache.set(url, { ts: Date.now(), data });\n\n if (options?.returnErrors) {\n return [data, null];\n }\n\n return data;\n } else {\n const res = await fetch(url, {\n method: 'GET',\n headers: new Headers(options?.headers),\n credentials: options?.credentials ?? 'same-origin',\n });\n\n if (!res.ok) {\n const err = await buildErrorResponse(res);\n\n throw err;\n }\n\n const json = (await res.json()) as UnknownJSON;\n\n if (options?.returnErrors) {\n return [json, null];\n }\n\n return json;\n }\n } catch (ex) {\n if (options?.returnErrors) {\n return [null, ex];\n } else {\n this.onError(ex as UnknownJSON);\n }\n }\n }\n\n async getWithErrors(\n url: string,\n options?: Omit<GetOptions, 'returnErrors'>,\n ): Promise<RequestWithErrorsResponse> {\n return this.get(url, {\n ...options,\n returnErrors: true,\n }) as Promise<RequestWithErrorsResponse>;\n }\n\n async getUserConfig(): Promise<UnknownJSON> {\n if (!this.args.pluginId || !this.pluginComponentId) {\n throw new Error(\n 'User config is not available for scripts not associated to a plugin or plugin component',\n );\n }\n\n const configResult = (await this.get(`/employee/mine/configs/plugins/${this.args.pluginId}`, {\n ignoreCache: true,\n })) as UserConfig;\n\n return configResult.config?.[this.pluginComponentId] ?? {};\n }\n\n async setUserConfig(config: UnknownJSON): Promise<unknown> {\n if (!this.args.pluginId || !this.pluginComponentId) {\n throw new Error(\n 'User config is not available for scripts not associated to a plugin or plugin component',\n );\n }\n\n const oldConfig = (await this.get(`/employee/mine/configs/plugins/${this.args.pluginId}`, {\n ignoreCache: true,\n })) as UserConfig | undefined;\n\n const mutationResult = await this.post(`/employee/mine/configs/plugins/${this.args.pluginId}`, {\n config: {\n ...oldConfig?.config,\n [this.pluginComponentId]: {\n ...oldConfig?.config?.[this.pluginComponentId],\n ...config,\n },\n },\n });\n\n return mutationResult;\n }\n\n async patch(url: string, body?: UnknownJSON, options?: RequestOptions): Promise<unknown> {\n try {\n if (this.isRelativeUrl(url)) {\n const { data } = await this.api.patch(url, body, {\n ...this.queryOptions,\n headers: options?.headers,\n });\n\n if (options?.returnErrors) {\n return [data, null];\n }\n\n return data;\n } else {\n const res = await fetch(url, {\n method: 'PATCH',\n body: body ? JSON.stringify(body) : null,\n headers: new Headers(options?.headers),\n credentials: options?.credentials ?? 'same-origin',\n });\n\n if (!res.ok) {\n const err = await buildErrorResponse(res);\n throw err;\n }\n\n const json = (await res.json()) as UnknownJSON;\n\n if (options?.returnErrors) {\n return [json, null];\n }\n\n return json;\n }\n } catch (ex) {\n if (options?.returnErrors) {\n return [null, ex];\n } else {\n this.onError(ex as UnknownJSON);\n }\n }\n }\n\n async patchWithErrors(\n url: string,\n body: UnknownJSON,\n options?: Omit<RequestOptions, 'returnErrors'>,\n ): Promise<RequestWithErrorsResponse> {\n return this.patch(url, body, {\n ...options,\n returnErrors: true,\n }) as Promise<RequestWithErrorsResponse>;\n }\n\n async post(url: string, body?: UnknownJSON, options?: RequestOptions): Promise<unknown> {\n try {\n if (this.isRelativeUrl(url)) {\n const { data } = await this.api.post(url, body, {\n ...this.queryOptions,\n headers: this.buildHeaders(options?.headers),\n });\n\n if (options?.returnErrors) {\n return [data, null];\n }\n\n return data;\n } else {\n const res = await fetch(url, {\n method: 'POST',\n body: body ? JSON.stringify(body) : null,\n headers: new Headers(options?.headers),\n credentials: options?.credentials ?? 'same-origin',\n });\n\n if (!res.ok) {\n const err = await buildErrorResponse(res);\n throw err;\n }\n\n const json = (await res.json()) as UnknownJSON;\n\n if (options?.returnErrors) {\n return [json, null];\n }\n\n return json;\n }\n } catch (ex) {\n if (options?.returnErrors) {\n return [null, ex];\n } else {\n this.onError(ex as UnknownJSON);\n }\n }\n }\n\n async postWithErrors(\n url: string,\n body: UnknownJSON,\n options?: Omit<RequestOptions, 'returnErrors'>,\n ): Promise<RequestWithErrorsResponse> {\n return this.post(url, body, {\n ...options,\n returnErrors: true,\n }) as Promise<RequestWithErrorsResponse>;\n }\n\n async delete(url: string, options?: RequestOptions): Promise<unknown> {\n try {\n if (this.isRelativeUrl(url)) {\n const { data } = await this.api.delete(url, {\n ...this.queryOptions,\n headers: this.buildHeaders(options?.headers),\n });\n\n if (options?.returnErrors) {\n return [data, null];\n }\n\n return data;\n } else {\n const res = await fetch(url, {\n method: 'DELETE',\n headers: new Headers(options?.headers),\n credentials: options?.credentials ?? 'same-origin',\n });\n\n if (!res.ok) {\n const err = await buildErrorResponse(res);\n throw err;\n }\n\n let json: UnknownJSON | null = null;\n\n if (res.status !== 204) {\n json = (await res.json()) as UnknownJSON;\n }\n\n if (options?.returnErrors) {\n return [json, null];\n }\n\n return json;\n }\n } catch (ex) {\n if (options?.returnErrors) {\n return [null, ex];\n } else {\n this.onError(ex as UnknownJSON);\n }\n }\n }\n\n async deleteWithErrors(\n url: string,\n options?: Omit<RequestOptions, 'returnErrors'>,\n ): Promise<RequestWithErrorsResponse> {\n return this.delete(url, {\n ...options,\n returnErrors: true,\n }) as Promise<RequestWithErrorsResponse>;\n }\n\n public async openCreateRecordModal(objectId: string): Promise<unknown> {\n return this.openCreateRecordHandler(objectId);\n }\n\n public async openCreateRelatedRecordModal(\n objectId: string,\n relatedEntityId: string,\n ): Promise<unknown> {\n return this.openCreateRelatedRecordHandler(objectId, relatedEntityId);\n }\n\n public showToast(message: string, toastOptions: ShowToastOptions): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.SHOW_TOAST,\n message,\n toastOptions,\n }),\n );\n }\n\n public clearToasts(): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.CLEAR_TOASTS,\n }),\n );\n }\n\n public outputUI(markup: string): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.UI_OUTPUT,\n markup,\n }),\n );\n }\n\n public prompt(config: ModalConfig): Promise<unknown> {\n return this.promptHandler(config);\n }\n\n public async showViewInModal(\n id: string,\n config?: { args?: UnknownJSON; options?: ShowViewInModalOptions },\n ): Promise<unknown> {\n return this.showViewInModalHandler(id, config);\n }\n\n public closeModal(values?: UnknownJSON, canceled?: boolean): void {\n this.closeModalHandler(values, canceled);\n }\n\n public async dynamicPrompt(_config: DynamicPromptConfig): Promise<unknown> {\n const replacementVar = '__kizen_state';\n\n let prepend = 'const __kizen_utils = {};\\n';\n\n if (_config.registerUtils) {\n const utils = Object.keys(_config.registerUtils);\n prepend += utils\n .map((u) => {\n const body = _config.registerUtils?.[u];\n\n if (typeof body !== 'function') {\n throw new Error(`Registered util ${u} is not a function, got ${typeof body}`);\n }\n\n return `__kizen_utils[\"${u}\"] = (${body.toString()});`;\n })\n .join('\\n');\n }\n\n const configContentResult = _config.content?.map((f) => {\n let optionMapper = '';\n if ('optionMapper' in f) {\n optionMapper = convertToSelfInvokingFunction(\n f.optionMapper,\n replacementVar,\n f.args,\n prepend,\n );\n }\n\n let getFetchUrl = '';\n if ('getFetchUrl' in f) {\n getFetchUrl = convertToSelfInvokingFunction(f.getFetchUrl, replacementVar, f.args, prepend);\n }\n\n let getHeaders = '';\n if ('getHeaders' in f) {\n getHeaders = convertToSelfInvokingFunction(f.getHeaders, replacementVar, f.args, prepend);\n }\n\n let getBody = '';\n if ('getBody' in f) {\n getBody = convertToSelfInvokingFunction(f.getBody, replacementVar, f.args, prepend);\n }\n\n return {\n ...f,\n optionMapper,\n getFetchUrl,\n getHeaders,\n getBody,\n };\n });\n\n const config = {\n ..._config,\n content: configContentResult,\n } as DynamicPromptConfig;\n\n const setupAssistantConfig = {\n fields: config.content,\n };\n\n const result = await this.dynamicPromptHandler(config);\n\n const cleanConfigValue = cleanConfig(setupAssistantConfig, result.values);\n\n return {\n ...result,\n values: cleanConfigValue,\n };\n }\n\n public outputIframe(url: string, allow?: string[], sandbox?: string): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.IFRAME_OUTPUT,\n url,\n allow,\n sandbox,\n preserve: this.preserve,\n }),\n );\n }\n\n private getBase64EncodedBlob(data: Blob): Promise<string> {\n return new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n\n reader.readAsDataURL(data);\n\n reader.onload = () => {\n resolve(reader.result as string);\n };\n\n reader.onerror = (error) => {\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\n reject(error);\n };\n });\n }\n\n public async uploadFile(data: Blob, fileName?: string, isPublic = false): Promise<unknown> {\n const encoded = await this.getBase64EncodedBlob(data);\n const res = await this.uploadFileHandler({\n file: encoded,\n fileName: fileName ?? 'file_' + String(Date.now()),\n isPublic,\n });\n\n return res;\n }\n\n protected afterSetup(): void {\n /* empty */\n }\n\n protected __setup(): void {\n if (this.setupExecutions !== 0) {\n throw new Error(\n 'Setup must be called exactly once, and should never be called by a script directly.',\n );\n }\n\n if (this.cleanupExecutions !== 0) {\n throw new Error('Setup was called after cleanup');\n }\n\n if (this.isDebug) {\n this.console.log(`Running script:\\n\\n${this.scriptBody}`);\n }\n\n this.setupExecutions++;\n this.executionTimer = performance.now();\n\n this.afterSetup();\n }\n\n protected __cleanup(result?: unknown): void {\n if (this.cleanupExecutions !== 0) {\n throw new Error(\n 'Cleanup must be called exactly once, and should never be called by a script directly.',\n );\n }\n\n if (this.setupExecutions !== 1) {\n throw new Error('Cleanup was called before setup');\n }\n\n this.cleanupExecutions++;\n this.setIndicator(INDICATOR_TYPE.NONE);\n const end = performance.now();\n if (this.isDebug) {\n this.console.log(`Script execution took ${String(end - this.executionTimer)}ms`);\n }\n\n this.done(this.preserve, result);\n }\n\n setIndicator(indicator: StateChangePayload['indicator'] = INDICATOR_TYPE.NONE): void {\n this.internalState.indicator = indicator;\n\n this.setState({ indicator });\n }\n\n wait(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n }\n\n private done(preserve: boolean, result?: unknown): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.DONE,\n result,\n preserve,\n }),\n );\n }\n\n private setState(state: unknown): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.SETSTATE,\n state,\n }),\n );\n }\n\n protected isRelativeUrl(url: string): boolean {\n return url.startsWith('/');\n }\n\n private buildHeaders(headers: Record<string, string> = {}): Record<string, string> {\n return {\n ...headers,\n 'X-Request-Type': 'kizen-ui-scripting-api',\n };\n }\n\n public refreshTimelineForId(id?: string): void {\n if (id) {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.REFRESH_TIMELINE,\n entityId: id,\n }),\n );\n }\n }\n\n public refreshEntityForId(id?: string): unknown {\n if (id) {\n return this.refreshEntityHandler(id);\n }\n }\n\n public async installThirdPartyScript(scriptUrl: string): Promise<ThirdPartyScript | undefined> {\n try {\n const result = await this.installThirdPartyScriptHandler(scriptUrl, this.args);\n const manager = new ThirdPartyScript(this.instance, result.url);\n\n return manager;\n } catch {\n this.onError(new Error(`Third party script ${scriptUrl} could not be installed.`));\n }\n }\n\n public releaseBlockingScript(): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.RELEASE_BLOCKING_SCRIPT,\n }),\n );\n }\n\n public copyToClipboard(text: string): void {\n this.instance.postMessage(\n JSON.stringify({\n action: ACTIONS.COPY_TO_CLIPBOARD,\n text,\n }),\n );\n }\n\n public createDateObject(dateString: string): Date {\n if (typeof dateString !== 'string') {\n throw new Error(`Invalid date string ${String(dateString)}`);\n }\n\n if (!/^\\d{4}-\\d{2}-\\d{2}$/.test(dateString)) {\n throw new Error(`Date string ${dateString} is not in the format YYYY-MM-DD`);\n }\n\n const parts = dateString.split('-').map((part) => parseInt(part, 10));\n\n if (parts.length < 3) {\n throw new Error(`Date string ${dateString} could not be parsed into valid date parts`);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const dateObj = new Date(parts[0]!, parts[1]! - 1, parts[2]);\n\n return dateObj;\n }\n\n public formatDateForResponse(date: Date): number {\n return date.getTime();\n }\n\n get console(): ConsoleBridge {\n const supported = new Set(['log', 'warn', 'error', 'info', 'debug']);\n return new Proxy({} as ConsoleBridge, {\n get: (_, prop) => {\n const level = supported.has(String(prop)) ? String(prop) : 'log';\n return (...args: unknown[]) => {\n try {\n const serializedArgs = args.map((arg) => {\n try {\n return serializeConsoleArg(arg);\n } catch {\n return null;\n }\n });\n let payload: string;\n try {\n payload = JSON.stringify({\n action: ACTIONS.CONSOLE_LOG,\n level,\n args: serializedArgs,\n });\n } catch {\n payload = JSON.stringify({\n action: ACTIONS.CONSOLE_LOG,\n level,\n args: ['[unserializable log payload]'],\n });\n }\n this.instance.postMessage(payload);\n } catch {\n /* never crash plugin code from logging */\n }\n };\n },\n });\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ROUTE_CHANGE_INTERNAL_EVENT } from './chunk-IGHBWLIS.js';
1
+ import { ROUTE_CHANGE_INTERNAL_EVENT } from './chunk-DQECJSHA.js';
2
2
 
3
3
  // src/util/run.ts
4
4
  var getPartialLocation = () => {
@@ -30,6 +30,7 @@ var getFnWithReturn = (script) => {
30
30
  const functionBody = `
31
31
  const __cleanup = this.__cleanup.bind(this);
32
32
  const __error = this.onError.bind(this);
33
+ const console = this.console;
33
34
  let __kizen_internal_result;
34
35
  {
35
36
  this.__setup();
@@ -59,6 +60,7 @@ var getFn = (script) => {
59
60
  const functionBody = `
60
61
  const __cleanup = this.__cleanup.bind(this);
61
62
  const __error = this.onError.bind(this);
63
+ const console = this.console;
62
64
  {
63
65
  this.__setup();
64
66
  }
@@ -117,5 +119,5 @@ var findMatchingAction = (availableActions, apiName) => {
117
119
  };
118
120
 
119
121
  export { emitRouteChange, findMatchingAction, generateExecutionKey, generateUUIDV4, getFn, getFnWithReturn, getPartialLocation };
120
- //# sourceMappingURL=chunk-PPRZFBZZ.js.map
121
- //# sourceMappingURL=chunk-PPRZFBZZ.js.map
122
+ //# sourceMappingURL=chunk-ANAHYJTV.js.map
123
+ //# sourceMappingURL=chunk-ANAHYJTV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/util/run.ts"],"names":["action"],"mappings":"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","file":"chunk-ANAHYJTV.js","sourcesContent":["import { ROUTE_CHANGE_INTERNAL_EVENT } from '../communication/constants.js';\nimport type { PartialLocation } from '../types/common.js';\nimport type { CommonExecutionPlugin, CommonPluginDefinition } from '../types/run.js';\nimport type { AsyncFunctionConstructor, BuiltAsyncFn } from '../types/workers.js';\n\nexport const getPartialLocation = (): PartialLocation => {\n return {\n host: window.location.host,\n hash: window.location.hash,\n href: window.location.href,\n origin: window.location.origin,\n pathname: window.location.pathname,\n search: window.location.search,\n port: window.location.port,\n protocol: window.location.protocol,\n };\n};\n\nexport const generateUUIDV4 = (): string => {\n let d = new Date().getTime();\n\n if (typeof performance !== 'undefined' && typeof performance.now === 'function') {\n d += performance.now();\n }\n\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = ((d + Math.random() * 16) % 16) | 0;\n d = Math.floor(d / 16);\n return (c === 'x' ? r : (r & 0x3) | 0x8).toString(16);\n });\n};\n\nconst AsyncFunction = (\n Object.getPrototypeOf(async function () {\n /* empty */\n }) as { constructor: AsyncFunctionConstructor }\n).constructor;\n\nexport const getFnWithReturn = (script: string): BuiltAsyncFn => {\n const functionBody = `\n const __cleanup = this.__cleanup.bind(this);\n const __error = this.onError.bind(this);\n const console = this.console;\n let __kizen_internal_result;\n {\n this.__setup();\n }\n try {\n __kizen_internal_result = await (async () => { ${script} })();\n } catch (ex) {\n __error(ex);\n } finally {\n __cleanup(__kizen_internal_result);\n }\n `;\n\n try {\n const fn = new AsyncFunction(functionBody);\n\n return { fn, functionBody };\n } catch {\n const errorFnBody = `\n this.__setup();\n this.onError({ message: \"The script has a syntax error and could not be parsed\" });\n this.__cleanup();\n `;\n\n const fn = new AsyncFunction(errorFnBody);\n\n return { fn, functionBody: errorFnBody };\n }\n};\n\nexport const getFn = (script: string): BuiltAsyncFn => {\n const functionBody = `\n const __cleanup = this.__cleanup.bind(this);\n const __error = this.onError.bind(this);\n const console = this.console;\n {\n this.__setup();\n }\n try {\n ${script}\n } catch (ex) {\n __error(ex);\n } finally {\n __cleanup();\n }\n `;\n\n try {\n const fn = new AsyncFunction(functionBody);\n\n return { fn, functionBody };\n } catch {\n const errorFnBody = `\n this.__setup();\n this.onError({ message: \"The script has a syntax error and could not be parsed\" });\n this.__cleanup();\n `;\n\n const fn = new AsyncFunction(errorFnBody);\n\n return { fn, functionBody: errorFnBody };\n }\n};\n\nexport const generateExecutionKey = (\n pluginConfig?: CommonPluginDefinition | CommonExecutionPlugin,\n): string => {\n return `${pluginConfig?.plugin_api_name ?? ''}-${pluginConfig?.id ?? ''}-${pluginConfig?.api_name ?? ''}-${pluginConfig?.script_id ?? ''}`;\n};\n\nexport const emitRouteChange = (): void => {\n const event = new CustomEvent(ROUTE_CHANGE_INTERNAL_EVENT, {\n detail: {\n location: getPartialLocation(),\n },\n });\n\n window.dispatchEvent(event);\n};\n\nconst splitScriptApiName = (\n scriptApiName: string,\n): { pluginApiName: string | undefined; actionApiName: string | undefined } => {\n const [pluginApiName, actionApiName] = scriptApiName.split('.');\n\n return {\n pluginApiName,\n actionApiName,\n };\n};\n\nexport const findMatchingAction = (\n availableActions: {\n pluginApp?: {\n apiName: string;\n };\n apiName: string;\n }[],\n apiName?: string,\n): unknown => {\n if (!apiName) {\n return null;\n }\n\n const { pluginApiName, actionApiName } = splitScriptApiName(apiName);\n\n if (!pluginApiName) {\n const action = availableActions.find((act) => !act.pluginApp && act.apiName === actionApiName);\n\n return action;\n }\n\n const action = availableActions.find(\n (act) => act.apiName === actionApiName && act.pluginApp?.apiName === pluginApiName,\n );\n\n return action;\n};\n"]}
@@ -1,6 +1,6 @@
1
- import { getPartialLocation, generateUUIDV4 } from './chunk-PPRZFBZZ.js';
2
- import { getAllNestedInputsFromConfig, KizenRequestError } from './chunk-AY5OQ5KM.js';
3
- import { IFRAME_PREFIX, ACTIONS, RESPONSES, COMMUNICATIONS, thirdPartyGlobalNames, getScriptIntegrationType, thirdPartySetupScripts, thirdPartyReadyPredicates } from './chunk-IGHBWLIS.js';
1
+ import { getPartialLocation, generateUUIDV4 } from './chunk-ANAHYJTV.js';
2
+ import { getAllNestedInputsFromConfig, deserializeConsoleArg, KizenRequestError } from './chunk-36G3L5ZV.js';
3
+ import { IFRAME_PREFIX, ACTIONS, RESPONSES, COMMUNICATIONS, thirdPartyGlobalNames, getScriptIntegrationType, thirdPartySetupScripts, thirdPartyReadyPredicates } from './chunk-DQECJSHA.js';
4
4
  import { __commonJS, __toESM } from './chunk-5WRI5ZAA.js';
5
5
  import DOMPurify from 'dompurify';
6
6
 
@@ -1813,6 +1813,7 @@ var WorkerManager = class {
1813
1813
  setSessionData;
1814
1814
  pluginComponentId;
1815
1815
  onShowModal;
1816
+ onCloseModal;
1816
1817
  onShowCreateRecordModal;
1817
1818
  onShowCreateRelatedRecordModal;
1818
1819
  onReleaseBlockingScript;
@@ -1827,6 +1828,7 @@ var WorkerManager = class {
1827
1828
  performFileUpload;
1828
1829
  pushHistory;
1829
1830
  appPath;
1831
+ onConsoleLog;
1830
1832
  constructor(args) {
1831
1833
  this.scriptUIRef = args.scriptUIRef;
1832
1834
  this.onStateChange = args.onStateChange;
@@ -1841,6 +1843,7 @@ var WorkerManager = class {
1841
1843
  this.onClearToasts = args.onClearToasts;
1842
1844
  this.pluginComponentId = args.pluginComponentId;
1843
1845
  this.onShowModal = args.onShowModal;
1846
+ this.onCloseModal = args.onCloseModal;
1844
1847
  this.onShowCreateRecordModal = args.onShowCreateRecordModal;
1845
1848
  this.onShowCreateRelatedRecordModal = args.onShowCreateRelatedRecordModal;
1846
1849
  this.onNetworkError = args.onNetworkError;
@@ -1851,6 +1854,7 @@ var WorkerManager = class {
1851
1854
  this.performFileUpload = args.performFileUpload;
1852
1855
  this.pushHistory = args.pushHistory;
1853
1856
  this.appPath = args.appPath;
1857
+ this.onConsoleLog = args.onConsoleLog;
1854
1858
  if (this.plugin) {
1855
1859
  this.frameId = `${IFRAME_PREFIX}-${this.plugin.plugin_api_name}-${this.plugin.api_name}`;
1856
1860
  }
@@ -2045,6 +2049,21 @@ var WorkerManager = class {
2045
2049
  this.handlePromptRequest(consideredEvent.id, consideredEvent.config, true);
2046
2050
  return;
2047
2051
  }
2052
+ case ACTIONS.SHOW_VIEW_IN_MODAL_REQUEST: {
2053
+ const consideredEvent = event;
2054
+ this.handleShowViewInModalRequest(
2055
+ consideredEvent.id,
2056
+ consideredEvent.viewId,
2057
+ consideredEvent.args,
2058
+ consideredEvent.options
2059
+ );
2060
+ return;
2061
+ }
2062
+ case ACTIONS.CLOSE_MODAL_REQUEST: {
2063
+ const consideredEvent = event;
2064
+ this.onCloseModal?.(consideredEvent.values, consideredEvent.canceled);
2065
+ return;
2066
+ }
2048
2067
  case ACTIONS.RELEASE_BLOCKING_SCRIPT: {
2049
2068
  this.handleReleaseBlockingScript();
2050
2069
  return;
@@ -2054,6 +2073,24 @@ var WorkerManager = class {
2054
2073
  this.handleAuthorize(consideredEvent.serviceName, consideredEvent.config);
2055
2074
  return;
2056
2075
  }
2076
+ case ACTIONS.CONSOLE_LOG: {
2077
+ const consideredEvent = event;
2078
+ let deserializedArgs = [];
2079
+ try {
2080
+ deserializedArgs = consideredEvent.args.map(deserializeConsoleArg);
2081
+ } catch {
2082
+ deserializedArgs = ["[unparseable plugin log]"];
2083
+ }
2084
+ try {
2085
+ console[consideredEvent.level](...deserializedArgs);
2086
+ } catch {
2087
+ }
2088
+ try {
2089
+ this.onConsoleLog?.(consideredEvent.level, deserializedArgs);
2090
+ } catch {
2091
+ }
2092
+ return;
2093
+ }
2057
2094
  default:
2058
2095
  return;
2059
2096
  }
@@ -2329,6 +2366,35 @@ var WorkerManager = class {
2329
2366
  });
2330
2367
  }
2331
2368
  };
2369
+ handleShowViewInModalRequest = (id, viewId, args, options) => {
2370
+ if (this.onShowModal) {
2371
+ this.onShowModal(
2372
+ {
2373
+ viewId,
2374
+ ...args !== void 0 && { args },
2375
+ pluginApiName: this.pluginApiName ?? "",
2376
+ ...options?.frameless ? { frameless: true } : {
2377
+ ...options?.title !== void 0 && { title: options.title },
2378
+ ...options?.confirmButton !== void 0 && {
2379
+ confirmButton: options.confirmButton
2380
+ },
2381
+ ...options?.cancelButton !== void 0 && { cancelButton: options.cancelButton }
2382
+ }
2383
+ },
2384
+ (result = {}) => {
2385
+ this.postMessage(RESPONSES.PROMPT_RESPONSE, {
2386
+ id,
2387
+ data: result
2388
+ });
2389
+ }
2390
+ );
2391
+ } else {
2392
+ this.postMessage(RESPONSES.PROMPT_RESPONSE, {
2393
+ id,
2394
+ data: { canceled: true }
2395
+ });
2396
+ }
2397
+ };
2332
2398
  handleInstallThirdPartyScriptRequest = (id, url, args = {}) => {
2333
2399
  const type = getScriptIntegrationType(url);
2334
2400
  if (!type) {
@@ -2442,6 +2508,7 @@ var runScript = async ({
2442
2508
  sessionData,
2443
2509
  setSessionData,
2444
2510
  onShowModal,
2511
+ onCloseModal,
2445
2512
  onShowCreateRecordModal,
2446
2513
  onShowCreateRelatedRecordModal,
2447
2514
  onNetworkError,
@@ -2451,7 +2518,8 @@ var runScript = async ({
2451
2518
  createFileId,
2452
2519
  performFileUpload,
2453
2520
  getPendingCacheCount,
2454
- invalidateCache
2521
+ invalidateCache,
2522
+ onConsoleLog
2455
2523
  }) => {
2456
2524
  const isDebug = isFlagEnabled("script-runner-logging");
2457
2525
  let worker;
@@ -2518,6 +2586,7 @@ var runScript = async ({
2518
2586
  setSessionData,
2519
2587
  pluginComponentId: componentId,
2520
2588
  onShowModal,
2589
+ onCloseModal,
2521
2590
  onShowCreateRecordModal,
2522
2591
  onShowCreateRelatedRecordModal,
2523
2592
  onNetworkError,
@@ -2527,7 +2596,8 @@ var runScript = async ({
2527
2596
  createFileId,
2528
2597
  performFileUpload,
2529
2598
  getPendingCacheCount,
2530
- invalidateCache
2599
+ invalidateCache,
2600
+ onConsoleLog
2531
2601
  });
2532
2602
  setLoadingState(true);
2533
2603
  instance.run(
@@ -2577,8 +2647,8 @@ var runObjectExpression = async (expression, values) => {
2577
2647
  };
2578
2648
 
2579
2649
  // src/index.ts
2580
- var version = "1.4.0-01344a3";
2650
+ var version = "1.5.0-53bcfe4";
2581
2651
 
2582
2652
  export { forceQualifiedUrl, getDisabledValue, getEnabledState, getHash, getLinkValue, getPluginSafeHTML, getQrCodeValue, getStableHash, isFlagEnabled, mergeConfig, pluginMapper, reduceEnabledResults, replaceConfigValues, runExpression, runObjectExpression, runOptionExpression, runScript, runStringExpression, version };
2583
- //# sourceMappingURL=chunk-ZMIF22NR.js.map
2584
- //# sourceMappingURL=chunk-ZMIF22NR.js.map
2653
+ //# sourceMappingURL=chunk-D54DBKHM.js.map
2654
+ //# sourceMappingURL=chunk-D54DBKHM.js.map