@kizenapps/engine 1.3.1 → 1.4.0

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/dist/{ThirdPartyScript-Bg-ZNlC4.d.ts → ThirdPartyScript-CoMDaLsq.d.ts} +1 -1
  2. package/dist/{routeScript-BExlCmGg.d.ts → automation-CWET9vfs.d.ts} +35 -2
  3. package/dist/{chunk-MQ2JWOOH.js → chunk-3B5P6QRP.js} +21 -5
  4. package/dist/chunk-3B5P6QRP.js.map +1 -0
  5. package/dist/{chunk-BOVB5YL3.js → chunk-6Q22X2IU.js} +4 -4
  6. package/dist/{chunk-BOVB5YL3.js.map → chunk-6Q22X2IU.js.map} +1 -1
  7. package/dist/{chunk-TYOXPK37.js → chunk-6V2UT4RS.js} +3 -3
  8. package/dist/{chunk-TYOXPK37.js.map → chunk-6V2UT4RS.js.map} +1 -1
  9. package/dist/{chunk-ZYR6AFEC.js → chunk-GOD2MD2O.js} +157 -8
  10. package/dist/chunk-GOD2MD2O.js.map +1 -0
  11. package/dist/{chunk-J3C7J6QZ.js → chunk-L2Z7F5W6.js} +5 -5
  12. package/dist/{chunk-J3C7J6QZ.js.map → chunk-L2Z7F5W6.js.map} +1 -1
  13. package/dist/{chunk-2CMHHDVB.js → chunk-LTOTDWXB.js} +3 -3
  14. package/dist/{chunk-2CMHHDVB.js.map → chunk-LTOTDWXB.js.map} +1 -1
  15. package/dist/{chunk-E6PKEJRU.js → chunk-LXBIPXUE.js} +3 -3
  16. package/dist/{chunk-E6PKEJRU.js.map → chunk-LXBIPXUE.js.map} +1 -1
  17. package/dist/{chunk-XCXET4AM.js → chunk-S2GWVVYT.js} +3 -3
  18. package/dist/{chunk-XCXET4AM.js.map → chunk-S2GWVVYT.js.map} +1 -1
  19. package/dist/{chunk-5PYHFCFW.js → chunk-TLWBUPHD.js} +3 -3
  20. package/dist/{chunk-5PYHFCFW.js.map → chunk-TLWBUPHD.js.map} +1 -1
  21. package/dist/communication.d.ts +2 -2
  22. package/dist/communication.js +2 -2
  23. package/dist/contexts/base.d.ts +1 -1
  24. package/dist/contexts/base.js +4 -5
  25. package/dist/contexts/floatingFrame.d.ts +1 -1
  26. package/dist/contexts/floatingFrame.js +5 -6
  27. package/dist/contexts/recordDetail.d.ts +1 -1
  28. package/dist/contexts/recordDetail.js +5 -6
  29. package/dist/{generic-B_BmEHix.d.ts → generic-CQyBACwP.d.ts} +1 -1
  30. package/dist/index.d.ts +5 -6
  31. package/dist/index.js +4 -4
  32. package/dist/react.d.ts +12 -4
  33. package/dist/react.js +12 -12
  34. package/dist/react.js.map +1 -1
  35. package/dist/types.d.ts +5 -6
  36. package/dist/util.d.ts +5 -24
  37. package/dist/util.js +6 -133
  38. package/dist/util.js.map +1 -1
  39. package/dist/values-BwAd85Ee.d.ts +31 -0
  40. package/dist/workers/calendarSource.worker.js +6 -7
  41. package/dist/workers/calendarSource.worker.js.map +1 -1
  42. package/dist/workers/floatingFrame.worker.js +7 -8
  43. package/dist/workers/floatingFrame.worker.js.map +1 -1
  44. package/dist/workers/generic.worker.js +6 -7
  45. package/dist/workers/generic.worker.js.map +1 -1
  46. package/dist/workers/recordDetail.worker.js +7 -8
  47. package/dist/workers/recordDetail.worker.js.map +1 -1
  48. package/package.json +1 -1
  49. package/dist/automation-nAOwIFAV.d.ts +0 -36
  50. package/dist/chunk-7ALAP3YN.js +0 -20
  51. package/dist/chunk-7ALAP3YN.js.map +0 -1
  52. package/dist/chunk-MQ2JWOOH.js.map +0 -1
  53. package/dist/chunk-ZYR6AFEC.js.map +0 -1
package/dist/types.d.ts CHANGED
@@ -1,10 +1,9 @@
1
- import { U as UnknownJSON, b as PartialUser, c as PartialTeamMember, d as PartialBusiness, e as PartialClientObject, i as PartialLocation } from './ThirdPartyScript-Bg-ZNlC4.js';
2
- export { n as AppPlugin, o as AppPlugins, A as Args, p as AssistantConfigAction, q as AssistantField, r as AssistantLink, B as BaseAPI, s as BooleanCleanValue, t as BooleanValueStore, u as ButtonConfig, v as CleanValueStore, w as CleanValueStoreType, x as ConfigService, y as CreateRecordModalQueue, z as CreateRelatedRecordModalQueue, C as CurrentUser, E as CurriedDynamicPromptFn, F as CurriedInstallThirdPartyScriptFn, H as CurriedKizenRequestFn, J as CurriedOpenCreateRecordFn, K as CurriedOpenCreateRelatedRecordFn, L as CurriedPostFormDataFn, N as CurriedPromptFn, O as CurriedRefreshEntityFn, Q as CurriedUploadFileFn, V as CustomObjectCleanValue, X as CustomObjectValueStore, D as DataCache, Y as DataCacheEntry, Z as DeleteReturnValue, l as DynamicPromptConfig, _ as DynamicPromptFn, $ as EmployeeConfig, a0 as ErrorHandler, a1 as ErrorResponse, a2 as FieldCleanValue, a3 as FieldValueStore, G as GetOptions, a4 as GetReturnValue, a5 as IncludeOption, a6 as InstallThirdPartyScriptFn, I as Instance, h as InternalSessionData, a7 as JSONArray, a8 as JSONObject, a9 as JSONPrimitive, aa as JSONValue, ab as KizenConfig, ac as KizenNetworkResponse, ad as KizenProxySuccessResponse, ae as KizenRequestFn, af as KizenRequestFnHandler, ag as KnownArgs, ah as MatchSetupAssistantField, ai as MaybeMessageError, aj as ModalBlock, ak as ModalCancelEventSource, M as ModalConfig, al as ModalContainer, am as ModalQueue, an as NumberCleanValue, ao as NumberValueStore, ap as OnNetworkErrorFn, aq as OnShowCreateRecordModalFn, ar as OnShowCreateRelatedRecordModalFn, as as OnShowModalFn, at as OpenCreateRecordFn, au as OpenCreateRelatedRecordFn, a as PartialCustomObject, P as PartialEntity, av as PartialRelatedObject, aw as PatchReturnValue, f as PostFormDataFn, ax as PostFormDataPayload, ay as PostReturnValue, az as Profile, aA as PromiseMap, aB as PromiseReject, aC as PromiseResolve, aD as PromiseState, aE as PromptFn, g as PromptState, aF as PutReturnValue, aG as RefreshEntityFn, aH as ReleaseBlockingScriptHandler, j as RequestOptions, R as RequestWithErrorsResponse, aI as SelectCleanValue, m as SelectOption, aJ as SelectValueStore, aK as SetInternalSessionDataFn, aL as SetupAssistantConfig, aM as SetupAssistantField, k as ShowToastOptions, S as StateChangePayload, aN as TextValueStore, aO as UnknownFunction, aP as UploadFileData, aQ as UploadFileFn, aR as UserConfig, aS as ValueStore, W as WorkerContextArgs } from './ThirdPartyScript-Bg-ZNlC4.js';
3
- import { a as CommonPluginDefinition } from './routeScript-BExlCmGg.js';
4
- export { A as AuthorizeEvent, B as BaseEvent, b as CalendarDefinition, c as CalendarScriptReturnData, d as CalendarSourceConfig, e as CalendarSourceMap, f as CalendarSources, C as CommonExecutionPlugin, g as CommunicateEvent, h as CopyToClipboardEvent, i as CreateFileIdFn, D as DoneEvent, j as DynamicPromptRequestEvent, E as ErrorEvent, k as ExecuteCalendarSourceScript, l as ExecuteFloatingFrameScript, F as FloatingFrameConfig, m as FloatingFrameEmployeeConfig, n as FrameQuadrant, G as GetPendingCacheCountFn, H as HideEvent, I as IframeOutputEvent, o as InstallThirdPartyScriptRequestEvent, p as InvalidateCacheFn, K as KizenFile, M as MessageEventData, q as MinimizedConfig, O as OnClearToastsFn, r as OnNetworkRequestFn, s as OnShowToastFn, t as OpenCreateRecordModalRequestEvent, u as OpenCreateRelatedRecordModalRequestEvent, v as OpenWindowEvent, P as PerformKizenFileUploadFn, w as PostFormDataRequestEvent, x as PromptRequestEvent, Q as QueryRequestEvent, y as RecipientConfig, z as RefreshEntityEvent, J as RefreshTimelineEvent, L as RequestableQueryMethods, N as RoutablePageConfig, S as RouteScriptConfig, R as RunScriptOptions, T as SchemaValidation, U as SetStateEvent, V as ShowEvent, W as ShowToastEvent, X as TerminatorContent, Y as Terminators, Z as UIOutputEvent, _ as UpdateSessionDataEvent, $ as UploadFilePayload, a0 as UploadFileRequestEvent, a1 as WindowPosition } from './routeScript-BExlCmGg.js';
1
+ import { U as UnknownJSON, b as PartialUser, c as PartialTeamMember, d as PartialBusiness, e as PartialClientObject, i as PartialLocation } from './ThirdPartyScript-CoMDaLsq.js';
2
+ export { o as AppPlugin, q as AppPlugins, A as Args, r as AssistantConfigAction, s as AssistantField, t as AssistantLink, B as BaseAPI, u as BooleanCleanValue, v as BooleanValueStore, w as ButtonConfig, x as CleanValueStore, y as CleanValueStoreType, z as ConfigService, E as CreateRecordModalQueue, F as CreateRelatedRecordModalQueue, C as CurrentUser, H as CurriedDynamicPromptFn, J as CurriedInstallThirdPartyScriptFn, K as CurriedKizenRequestFn, L as CurriedOpenCreateRecordFn, N as CurriedOpenCreateRelatedRecordFn, O as CurriedPostFormDataFn, Q as CurriedPromptFn, V as CurriedRefreshEntityFn, X as CurriedUploadFileFn, Y as CustomObjectCleanValue, Z as CustomObjectValueStore, D as DataCache, _ as DataCacheEntry, $ as DeleteReturnValue, l as DynamicPromptConfig, a0 as DynamicPromptFn, a1 as EmployeeConfig, a2 as ErrorHandler, a3 as ErrorResponse, a4 as FieldCleanValue, a5 as FieldValueStore, G as GetOptions, a6 as GetReturnValue, m as IncludeOption, a7 as InstallThirdPartyScriptFn, I as Instance, h as InternalSessionData, a8 as JSONArray, a9 as JSONObject, aa as JSONPrimitive, ab as JSONValue, ac as KizenConfig, ad as KizenNetworkResponse, ae as KizenProxySuccessResponse, af as KizenRequestFn, ag as KizenRequestFnHandler, ah as KnownArgs, ai as MatchSetupAssistantField, aj as MaybeMessageError, ak as ModalBlock, al as ModalCancelEventSource, M as ModalConfig, am as ModalContainer, an as ModalQueue, ao as NumberCleanValue, ap as NumberValueStore, aq as OnNetworkErrorFn, ar as OnShowCreateRecordModalFn, as as OnShowCreateRelatedRecordModalFn, at as OnShowModalFn, au as OpenCreateRecordFn, av as OpenCreateRelatedRecordFn, a as PartialCustomObject, P as PartialEntity, aw as PartialRelatedObject, ax as PatchReturnValue, f as PostFormDataFn, ay as PostFormDataPayload, az as PostReturnValue, aA as Profile, aB as PromiseMap, aC as PromiseReject, aD as PromiseResolve, aE as PromiseState, aF as PromptFn, g as PromptState, aG as PutReturnValue, aH as RefreshEntityFn, aI as ReleaseBlockingScriptHandler, j as RequestOptions, R as RequestWithErrorsResponse, aJ as SelectCleanValue, p as SelectOption, aK as SelectValueStore, aL as SetInternalSessionDataFn, aM as SetupAssistantConfig, n as SetupAssistantField, k as ShowToastOptions, S as StateChangePayload, aN as TextValueStore, aO as UnknownFunction, aP as UploadFileData, aQ as UploadFileFn, aR as UserConfig, aS as ValueStore, W as WorkerContextArgs } from './ThirdPartyScript-CoMDaLsq.js';
3
+ import { a as CommonPluginDefinition } from './automation-CWET9vfs.js';
4
+ export { e as AuthorizeEvent, A as AutomationStepConfig, B as BaseEvent, f as CalendarDefinition, g as CalendarScriptReturnData, c as CalendarSourceConfig, h as CalendarSourceMap, i as CalendarSources, C as CommonExecutionPlugin, j as CommunicateEvent, k as CopyToClipboardEvent, l as CreateFileIdFn, D as DataAdornmentConfig, m as DoneEvent, n as DynamicPromptRequestEvent, E as ErrorEvent, o as ExecuteCalendarSourceScript, p as ExecuteFloatingFrameScript, F as FloatingFrameConfig, q as FloatingFrameEmployeeConfig, r as FrameQuadrant, G as GetPendingCacheCountFn, H as HideEvent, I as IframeOutputEvent, s as InstallThirdPartyScriptRequestEvent, t as InvalidateCacheFn, K as KizenFile, M as MessageEventData, u as MinimizedConfig, O as OnClearToastsFn, v as OnNetworkRequestFn, w as OnShowToastFn, x as OpenCreateRecordModalRequestEvent, y as OpenCreateRelatedRecordModalRequestEvent, z as OpenWindowEvent, P as PerformKizenFileUploadFn, J as PostFormDataRequestEvent, L as PromptRequestEvent, Q as QueryRequestEvent, N as RecipientConfig, S as RefreshEntityEvent, U as RefreshTimelineEvent, V as RequestableQueryMethods, R as RoutablePageConfig, b as RouteScriptConfig, d as RunScriptOptions, W as SchemaValidation, X as SetStateEvent, Y as ShowEvent, Z as ShowToastEvent, _ as TerminatorContent, $ as Terminators, T as ToolbarItemConfig, a0 as UIOutputEvent, a1 as UpdateSessionDataEvent, a2 as UploadFilePayload, a3 as UploadFileRequestEvent, a4 as WindowPosition } from './automation-CWET9vfs.js';
5
5
  export { H as HideConfig, S as ShowConfig } from './floatingFrames-BzaoL7cq.js';
6
- export { E as ExecuteGenericScript, G as GenericPluginConfig } from './generic-B_BmEHix.js';
7
- export { A as AutomationStepConfig, D as DataAdornmentConfig, T as ToolbarItemConfig } from './automation-nAOwIFAV.js';
6
+ export { E as ExecuteGenericScript, G as GenericPluginConfig } from './generic-CQyBACwP.js';
8
7
  import 'react';
9
8
 
10
9
  interface ExpressionPayload {
package/dist/util.d.ts CHANGED
@@ -1,8 +1,9 @@
1
- import { i as PartialLocation, a5 as IncludeOption, U as UnknownJSON, aM as SetupAssistantField, n as AppPlugin, aL as SetupAssistantConfig, aS as ValueStore, v as CleanValueStore, p as AssistantConfigAction, q as AssistantField, aV as KizenRequestError, ac as KizenNetworkResponse, ad as KizenProxySuccessResponse } from './ThirdPartyScript-Bg-ZNlC4.js';
2
- import { F as FloatingFrameConfig, N as RoutablePageConfig, S as RouteScriptConfig, d as CalendarSourceConfig } from './routeScript-BExlCmGg.js';
3
- import { D as DataAdornmentConfig, T as ToolbarItemConfig, A as AutomationStepConfig } from './automation-nAOwIFAV.js';
1
+ import { i as PartialLocation, aM as SetupAssistantConfig, aS as ValueStore, x as CleanValueStore, r as AssistantConfigAction, s as AssistantField, aT as KizenRequestError, U as UnknownJSON, ad as KizenNetworkResponse, ae as KizenProxySuccessResponse } from './ThirdPartyScript-CoMDaLsq.js';
2
+ export { G as GetParamFunction, R as RemovedHTML, f as forceQualifiedUrl, g as getDisabledValue, a as getEnabledState, b as getLinkValue, c as getPluginSafeHTML, d as getQrCodeValue, m as mergeConfig, p as pluginMapper, r as reduceEnabledResults, e as replaceConfigValues } from './values-BwAd85Ee.js';
4
3
  import 'react';
4
+ import './automation-CWET9vfs.js';
5
5
  import './floatingFrames-BzaoL7cq.js';
6
+ import 'dompurify';
6
7
 
7
8
  declare const getPartialLocation: () => PartialLocation;
8
9
  declare const emitRouteChange: () => void;
@@ -13,26 +14,6 @@ declare const findMatchingAction: (availableActions: {
13
14
  apiName: string;
14
15
  }[], apiName?: string) => unknown;
15
16
 
16
- type AllowedConfig = FloatingFrameConfig | RoutablePageConfig | DataAdornmentConfig | ToolbarItemConfig | RouteScriptConfig | CalendarSourceConfig | AutomationStepConfig;
17
- declare const pluginMapper: <T extends AllowedConfig>(config: T, apiName: string, plugin: AppPlugin) => T & {
18
- plugin_api_name: string;
19
- plugin_name: string;
20
- employee_config: unknown;
21
- args: unknown;
22
- };
23
- declare const getDisabledValue: (type?: string) => false | undefined;
24
- declare const mergeConfig: (cleanConfig: Record<string, UnknownJSON>, disabledFieldKeys: string[], rawConfig: Record<string, UnknownJSON>, setupAssistantFields?: SetupAssistantField[]) => Record<string, UnknownJSON>;
25
- declare const replaceConfigValues: (when?: string) => string;
26
- declare const getEnabledState: (when: string | undefined, state: Record<string, UnknownJSON>) => Promise<boolean>;
27
- declare const reduceEnabledResults: (results: {
28
- api_name?: string;
29
- enabled: boolean;
30
- }[]) => Record<string, boolean>;
31
- declare const forceQualifiedUrl: (url: string) => string;
32
- type GetParamFunction = (key: IncludeOption) => string;
33
- declare const getQrCodeValue: (value?: string, include?: IncludeOption[], getParam?: GetParamFunction) => string;
34
- declare const getLinkValue: (value?: string, include?: IncludeOption[], getParam?: GetParamFunction) => string;
35
-
36
17
  declare const getFieldFromAction: (action: AssistantConfigAction) => AssistantField;
37
18
  declare const cleanConfig: (setupAssistantConfig: SetupAssistantConfig, configValues: Record<string, ValueStore>) => CleanValueStore;
38
19
 
@@ -50,4 +31,4 @@ declare const createKizenRequestError: (proxyStatus: number, upstreamStatus?: nu
50
31
  declare const createKizenProxyError: (proxyStatus?: number, proxyError?: string) => KizenRequestError;
51
32
  declare const handleKizenNetworkResponse: (originalResponse: KizenNetworkResponse<KizenProxySuccessResponse>) => KizenNetworkResponse<UnknownJSON>;
52
33
 
53
- export { type GetParamFunction, KizenRequestError, cleanConfig, createKizenProxyError, createKizenRequestError, emitRouteChange, findMatchingAction, forceQualifiedUrl, getDisabledValue, getEnabledState, getFieldFromAction, getHash, getLinkValue, getModifiedResponse, getPartialLocation, getQrCodeValue, getStableHash, handleKizenNetworkResponse, isFlagEnabled, mergeConfig, pluginMapper, reduceEnabledResults, replaceConfigValues };
34
+ export { KizenRequestError, cleanConfig, createKizenProxyError, createKizenRequestError, emitRouteChange, findMatchingAction, getFieldFromAction, getHash, getModifiedResponse, getPartialLocation, getStableHash, handleKizenNetworkResponse, isFlagEnabled };
package/dist/util.js CHANGED
@@ -1,137 +1,10 @@
1
- import { runExpression } from './chunk-ZYR6AFEC.js';
2
- export { getHash, getStableHash, isFlagEnabled } from './chunk-ZYR6AFEC.js';
3
- import { getPartialLocation } from './chunk-5PYHFCFW.js';
4
- export { emitRouteChange, findMatchingAction, getPartialLocation } from './chunk-5PYHFCFW.js';
5
- import { getAllNestedInputsFromConfig } from './chunk-MQ2JWOOH.js';
6
- export { cleanConfig, getFieldFromAction } from './chunk-MQ2JWOOH.js';
7
- import { KizenRequestError } from './chunk-7ALAP3YN.js';
8
- export { KizenRequestError } from './chunk-7ALAP3YN.js';
9
- import './chunk-2CMHHDVB.js';
1
+ export { forceQualifiedUrl, getDisabledValue, getEnabledState, getHash, getLinkValue, getPluginSafeHTML, getQrCodeValue, getStableHash, isFlagEnabled, mergeConfig, pluginMapper, reduceEnabledResults, replaceConfigValues } from './chunk-GOD2MD2O.js';
2
+ export { emitRouteChange, findMatchingAction, getPartialLocation } from './chunk-TLWBUPHD.js';
3
+ import { KizenRequestError } from './chunk-3B5P6QRP.js';
4
+ export { KizenRequestError, cleanConfig, getFieldFromAction } from './chunk-3B5P6QRP.js';
5
+ import './chunk-LTOTDWXB.js';
10
6
  import './chunk-5WRI5ZAA.js';
11
7
 
12
- // src/util/values.ts
13
- var pluginMapper = (config, apiName, plugin) => {
14
- return {
15
- ...config,
16
- plugin_api_name: apiName,
17
- plugin_name: plugin.name,
18
- employee_config: plugin.employee_config,
19
- args: plugin.business_config
20
- };
21
- };
22
- var getDisabledValue = (type) => {
23
- if (type === "boolean") {
24
- return false;
25
- }
26
- return void 0;
27
- };
28
- var mergeConfig = (cleanConfig2, disabledFieldKeys, rawConfig, setupAssistantFields) => {
29
- const keys = Object.keys(cleanConfig2);
30
- const mergedConfig = {};
31
- keys.forEach((key) => {
32
- if (disabledFieldKeys.includes(key)) {
33
- mergedConfig[key] = {
34
- value: getDisabledValue(rawConfig[key]?.type),
35
- type: rawConfig[key]?.type
36
- };
37
- } else {
38
- mergedConfig[key] = {
39
- value: cleanConfig2[key],
40
- type: rawConfig[key]?.type
41
- };
42
- }
43
- });
44
- const flattenedFields = getAllNestedInputsFromConfig({
45
- fields: setupAssistantFields ?? []
46
- });
47
- flattenedFields.forEach((field) => {
48
- if (typeof mergedConfig[field.key] === "undefined") {
49
- if (disabledFieldKeys.includes(field.key)) {
50
- mergedConfig[field.key] = {
51
- value: getDisabledValue(field.type),
52
- type: field.type
53
- };
54
- } else {
55
- mergedConfig[field.key] = {
56
- value: field.default,
57
- type: field.type
58
- };
59
- }
60
- }
61
- });
62
- return mergedConfig;
63
- };
64
- var replaceConfigValues = (when) => {
65
- if (!when) {
66
- return "";
67
- }
68
- const replaced = when.replaceAll("{{config.", "{{config__").replaceAll("{{userConfig.", "{{userConfig__");
69
- return replaced;
70
- };
71
- var getEnabledState = async (when, state) => {
72
- const replaced = replaceConfigValues(when);
73
- const enabled = await runExpression(replaced, state);
74
- return enabled;
75
- };
76
- var reduceEnabledResults = (results) => {
77
- return results.reduce((acc, curr) => {
78
- if (!curr.api_name) {
79
- return acc;
80
- }
81
- return {
82
- ...acc,
83
- [curr.api_name]: curr.enabled
84
- };
85
- }, {});
86
- };
87
- var forceQualifiedUrl = (url) => {
88
- let qualifiedUrl = url;
89
- if (/^(http|https):\/\//.test(url)) {
90
- qualifiedUrl = url;
91
- } else if (url.startsWith("/")) {
92
- qualifiedUrl = `${getPartialLocation().origin}${qualifiedUrl}`;
93
- } else {
94
- qualifiedUrl = `${getPartialLocation().origin}/${qualifiedUrl}`;
95
- }
96
- return qualifiedUrl;
97
- };
98
- var getParams = (include, getParam) => {
99
- const urlParams = new URLSearchParams();
100
- if (include) {
101
- include.forEach((field) => {
102
- if (field === "base_url") {
103
- urlParams.append(field, getPartialLocation().origin);
104
- } else if (getParam) {
105
- urlParams.append(field, getParam(field));
106
- }
107
- });
108
- }
109
- return urlParams;
110
- };
111
- var appendParams = (url, urlParams) => {
112
- const params = urlParams.toString();
113
- if (!params) {
114
- return url;
115
- }
116
- const hashIndex = url.indexOf("#");
117
- const pathAndQuery = hashIndex === -1 ? url : url.slice(0, hashIndex);
118
- const fragment = hashIndex === -1 ? "" : url.slice(hashIndex);
119
- return `${pathAndQuery}${pathAndQuery.includes("?") ? "&" : "?"}${params}${fragment}`;
120
- };
121
- var getQrCodeValue = (value, include, getParam) => {
122
- const baseValue = value ?? "";
123
- const qualifiedUrl = forceQualifiedUrl(baseValue);
124
- const params = getParams(include, getParam);
125
- const result = appendParams(qualifiedUrl, params);
126
- return result;
127
- };
128
- var getLinkValue = (value, include, getParam) => {
129
- const baseValue = value ?? "";
130
- const params = getParams(include, getParam);
131
- const result = appendParams(baseValue, params);
132
- return result;
133
- };
134
-
135
8
  // src/util/network.ts
136
9
  var getModifiedResponse = (response) => {
137
10
  const modifiedResponse = {
@@ -165,6 +38,6 @@ var handleKizenNetworkResponse = (originalResponse) => {
165
38
  return response;
166
39
  };
167
40
 
168
- export { createKizenProxyError, createKizenRequestError, forceQualifiedUrl, getDisabledValue, getEnabledState, getLinkValue, getModifiedResponse, getQrCodeValue, handleKizenNetworkResponse, mergeConfig, pluginMapper, reduceEnabledResults, replaceConfigValues };
41
+ export { createKizenProxyError, createKizenRequestError, getModifiedResponse, handleKizenNetworkResponse };
169
42
  //# sourceMappingURL=util.js.map
170
43
  //# sourceMappingURL=util.js.map
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/util/values.ts","../src/util/network.ts"],"names":["cleanConfig"],"mappings":"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","file":"util.js","sourcesContent":["import {\n runExpression,\n type AutomationStepConfig,\n type CalendarSourceConfig,\n type FloatingFrameConfig,\n type ToolbarItemConfig,\n} from '../index.js';\nimport type { DataAdornmentConfig } from '../types/artifacts/dataAdornment.js';\nimport type { RoutablePageConfig } from '../types/artifacts/routablePage.js';\nimport type { RouteScriptConfig } from '../types/artifacts/routeScript.js';\nimport type { AppPlugin, UnknownJSON } from '../types/common.js';\nimport type { IncludeOption, SetupAssistantField } from '../types/modals.js';\nimport { getAllNestedInputsFromConfig } from '../workers/util.js';\nimport { getPartialLocation } from './run.js';\n\ntype AllowedConfig =\n | FloatingFrameConfig\n | RoutablePageConfig\n | DataAdornmentConfig\n | ToolbarItemConfig\n | RouteScriptConfig\n | CalendarSourceConfig\n | AutomationStepConfig;\n\nexport const pluginMapper = <T extends AllowedConfig>(\n config: T,\n apiName: string,\n plugin: AppPlugin,\n): T & {\n plugin_api_name: string;\n plugin_name: string;\n employee_config: unknown;\n args: unknown;\n} => {\n return {\n ...config,\n plugin_api_name: apiName,\n plugin_name: plugin.name,\n employee_config: plugin.employee_config,\n args: plugin.business_config,\n };\n};\n\nexport const getDisabledValue = (type?: string): false | undefined => {\n if (type === 'boolean') {\n return false;\n }\n\n return undefined;\n};\n\nexport const mergeConfig = (\n cleanConfig: Record<string, UnknownJSON>,\n disabledFieldKeys: string[],\n rawConfig: Record<string, UnknownJSON>,\n setupAssistantFields?: SetupAssistantField[],\n): Record<string, UnknownJSON> => {\n const keys = Object.keys(cleanConfig);\n const mergedConfig: Record<string, UnknownJSON> = {};\n\n keys.forEach((key) => {\n if (disabledFieldKeys.includes(key)) {\n mergedConfig[key] = {\n value: getDisabledValue(rawConfig[key]?.type as string),\n type: rawConfig[key]?.type,\n };\n } else {\n mergedConfig[key] = {\n value: cleanConfig[key],\n type: rawConfig[key]?.type,\n };\n }\n });\n\n const flattenedFields = getAllNestedInputsFromConfig({\n fields: setupAssistantFields ?? [],\n });\n\n flattenedFields.forEach((field) => {\n if (typeof mergedConfig[field.key] === 'undefined') {\n if (disabledFieldKeys.includes(field.key)) {\n mergedConfig[field.key] = {\n value: getDisabledValue(field.type),\n type: field.type,\n };\n } else {\n mergedConfig[field.key] = {\n value: field.default,\n type: field.type,\n };\n }\n }\n });\n\n return mergedConfig;\n};\n\nexport const replaceConfigValues = (when?: string): string => {\n if (!when) {\n return '';\n }\n\n const replaced = when\n .replaceAll('{{config.', '{{config__')\n .replaceAll('{{userConfig.', '{{userConfig__');\n\n return replaced;\n};\n\nexport const getEnabledState = async (\n when: string | undefined,\n state: Record<string, UnknownJSON>,\n): Promise<boolean> => {\n const replaced = replaceConfigValues(when);\n\n const enabled = await runExpression(replaced, state);\n\n return enabled;\n};\n\nexport const reduceEnabledResults = (\n results: { api_name?: string; enabled: boolean }[],\n): Record<string, boolean> => {\n return results.reduce((acc, curr) => {\n if (!curr.api_name) {\n return acc;\n }\n\n return {\n ...acc,\n [curr.api_name]: curr.enabled,\n };\n }, {});\n};\n\nexport const forceQualifiedUrl = (url: string): string => {\n let qualifiedUrl = url;\n\n if (/^(http|https):\\/\\//.test(url)) {\n qualifiedUrl = url;\n } else if (url.startsWith('/')) {\n qualifiedUrl = `${getPartialLocation().origin}${qualifiedUrl}`;\n } else {\n qualifiedUrl = `${getPartialLocation().origin}/${qualifiedUrl}`;\n }\n\n return qualifiedUrl;\n};\n\nexport type GetParamFunction = (key: IncludeOption) => string;\n\nconst getParams = (include?: IncludeOption[], getParam?: GetParamFunction): URLSearchParams => {\n const urlParams = new URLSearchParams();\n\n if (include) {\n include.forEach((field) => {\n if (field === 'base_url') {\n urlParams.append(field, getPartialLocation().origin);\n } else if (getParam) {\n urlParams.append(field, getParam(field));\n }\n });\n }\n\n return urlParams;\n};\n\nconst appendParams = (url: string, urlParams: URLSearchParams): string => {\n const params = urlParams.toString();\n\n if (!params) {\n return url;\n }\n\n const hashIndex = url.indexOf('#');\n const pathAndQuery = hashIndex === -1 ? url : url.slice(0, hashIndex);\n const fragment = hashIndex === -1 ? '' : url.slice(hashIndex);\n\n return `${pathAndQuery}${pathAndQuery.includes('?') ? '&' : '?'}${params}${fragment}`;\n};\n\nexport const getQrCodeValue = (\n value?: string,\n include?: IncludeOption[],\n getParam?: GetParamFunction,\n): string => {\n const baseValue = value ?? '';\n\n // Force qualified on QR codes since these will generally be scanned by another device\n const qualifiedUrl = forceQualifiedUrl(baseValue);\n\n const params = getParams(include, getParam);\n\n const result = appendParams(qualifiedUrl, params);\n\n return result;\n};\n\nexport const getLinkValue = (\n value?: string,\n include?: IncludeOption[],\n getParam?: GetParamFunction,\n): string => {\n const baseValue = value ?? '';\n\n // Don't force a qualified URL on links since these will generally be clicked on the same device,\n // so we should support relative\n\n const params = getParams(include, getParam);\n\n const result = appendParams(baseValue, params);\n\n return result;\n};\n","import type { KizenNetworkResponse, KizenProxySuccessResponse } from '../types/request.js';\nimport type { UnknownJSON } from '../types/common.js';\nimport { KizenRequestError } from './errors.js';\n\nexport const getModifiedResponse = (\n response: KizenNetworkResponse<KizenProxySuccessResponse>,\n): {\n response: KizenNetworkResponse;\n upstreamStatus: number;\n upstreamResponse: unknown;\n} => {\n const modifiedResponse = {\n ...response,\n data: response.data.body ?? response.data,\n status: response.data.status_code ?? response.status,\n };\n\n return {\n response: modifiedResponse,\n upstreamStatus: modifiedResponse.status,\n upstreamResponse: response.data.body,\n };\n};\n\nexport const createKizenRequestError = (\n proxyStatus: number,\n upstreamStatus?: number,\n upstreamResponse?: UnknownJSON,\n): KizenRequestError => {\n return new KizenRequestError(proxyStatus, upstreamStatus, upstreamResponse);\n};\n\nexport const createKizenProxyError = (\n proxyStatus?: number,\n proxyError?: string,\n): KizenRequestError => {\n return new KizenRequestError(\n proxyStatus ?? 500,\n undefined,\n undefined,\n proxyError ?? 'An unknown error occurred in the proxy',\n );\n};\n\nexport const handleKizenNetworkResponse = (\n originalResponse: KizenNetworkResponse<KizenProxySuccessResponse>,\n): KizenNetworkResponse<UnknownJSON> => {\n const { response, upstreamStatus, upstreamResponse } = getModifiedResponse(originalResponse);\n\n const isErrorCode = upstreamStatus >= 400;\n\n if (isErrorCode) {\n // If we manually throw an error, it means the proxy request succeeded but the upstream request failed.\n // In this case, always indicate a 200 status for the proxy.\n throw createKizenRequestError(200, upstreamStatus, upstreamResponse as UnknownJSON);\n }\n\n return response as KizenNetworkResponse<UnknownJSON>;\n};\n"]}
1
+ {"version":3,"sources":["../src/util/network.ts"],"names":[],"mappings":";;;;;;;;AAIO,IAAM,mBAAA,GAAsB,CACjC,QAAA,KAKG;AACH,EAAA,MAAM,gBAAA,GAAmB;AAAA,IACvB,GAAG,QAAA;AAAA,IACH,IAAA,EAAM,QAAA,CAAS,IAAA,CAAK,IAAA,IAAQ,QAAA,CAAS,IAAA;AAAA,IACrC,MAAA,EAAQ,QAAA,CAAS,IAAA,CAAK,WAAA,IAAe,QAAA,CAAS;AAAA,GAChD;AAEA,EAAA,OAAO;AAAA,IACL,QAAA,EAAU,gBAAA;AAAA,IACV,gBAAgB,gBAAA,CAAiB,MAAA;AAAA,IACjC,gBAAA,EAAkB,SAAS,IAAA,CAAK;AAAA,GAClC;AACF;AAEO,IAAM,uBAAA,GAA0B,CACrC,WAAA,EACA,cAAA,EACA,gBAAA,KACsB;AACtB,EAAA,OAAO,IAAI,iBAAA,CAAkB,WAAA,EAAa,cAAA,EAAgB,gBAAgB,CAAA;AAC5E;AAEO,IAAM,qBAAA,GAAwB,CACnC,WAAA,EACA,UAAA,KACsB;AACtB,EAAA,OAAO,IAAI,iBAAA;AAAA,IACT,WAAA,IAAe,GAAA;AAAA,IACf,MAAA;AAAA,IACA,MAAA;AAAA,IACA,UAAA,IAAc;AAAA,GAChB;AACF;AAEO,IAAM,0BAAA,GAA6B,CACxC,gBAAA,KACsC;AACtC,EAAA,MAAM,EAAE,QAAA,EAAU,cAAA,EAAgB,gBAAA,EAAiB,GAAI,oBAAoB,gBAAgB,CAAA;AAE3F,EAAA,MAAM,cAAc,cAAA,IAAkB,GAAA;AAEtC,EAAA,IAAI,WAAA,EAAa;AAGf,IAAA,MAAM,uBAAA,CAAwB,GAAA,EAAK,cAAA,EAAgB,gBAA+B,CAAA;AAAA,EACpF;AAEA,EAAA,OAAO,QAAA;AACT","file":"util.js","sourcesContent":["import type { KizenNetworkResponse, KizenProxySuccessResponse } from '../types/request.js';\nimport type { UnknownJSON } from '../types/common.js';\nimport { KizenRequestError } from './errors.js';\n\nexport const getModifiedResponse = (\n response: KizenNetworkResponse<KizenProxySuccessResponse>,\n): {\n response: KizenNetworkResponse;\n upstreamStatus: number;\n upstreamResponse: unknown;\n} => {\n const modifiedResponse = {\n ...response,\n data: response.data.body ?? response.data,\n status: response.data.status_code ?? response.status,\n };\n\n return {\n response: modifiedResponse,\n upstreamStatus: modifiedResponse.status,\n upstreamResponse: response.data.body,\n };\n};\n\nexport const createKizenRequestError = (\n proxyStatus: number,\n upstreamStatus?: number,\n upstreamResponse?: UnknownJSON,\n): KizenRequestError => {\n return new KizenRequestError(proxyStatus, upstreamStatus, upstreamResponse);\n};\n\nexport const createKizenProxyError = (\n proxyStatus?: number,\n proxyError?: string,\n): KizenRequestError => {\n return new KizenRequestError(\n proxyStatus ?? 500,\n undefined,\n undefined,\n proxyError ?? 'An unknown error occurred in the proxy',\n );\n};\n\nexport const handleKizenNetworkResponse = (\n originalResponse: KizenNetworkResponse<KizenProxySuccessResponse>,\n): KizenNetworkResponse<UnknownJSON> => {\n const { response, upstreamStatus, upstreamResponse } = getModifiedResponse(originalResponse);\n\n const isErrorCode = upstreamStatus >= 400;\n\n if (isErrorCode) {\n // If we manually throw an error, it means the proxy request succeeded but the upstream request failed.\n // In this case, always indicate a 200 status for the proxy.\n throw createKizenRequestError(200, upstreamStatus, upstreamResponse as UnknownJSON);\n }\n\n return response as KizenNetworkResponse<UnknownJSON>;\n};\n"]}
@@ -0,0 +1,31 @@
1
+ import { m as IncludeOption, U as UnknownJSON, n as SetupAssistantField, o as AppPlugin } from './ThirdPartyScript-CoMDaLsq.js';
2
+ import { F as FloatingFrameConfig, R as RoutablePageConfig, D as DataAdornmentConfig, T as ToolbarItemConfig, b as RouteScriptConfig, c as CalendarSourceConfig, A as AutomationStepConfig } from './automation-CWET9vfs.js';
3
+ import { RemovedAttribute, RemovedElement } from 'dompurify';
4
+
5
+ type AllowedConfig = FloatingFrameConfig | RoutablePageConfig | DataAdornmentConfig | ToolbarItemConfig | RouteScriptConfig | CalendarSourceConfig | AutomationStepConfig;
6
+ declare const pluginMapper: <T extends AllowedConfig>(config: T, apiName: string, plugin: AppPlugin) => T & {
7
+ plugin_api_name: string;
8
+ plugin_name: string;
9
+ employee_config: unknown;
10
+ args: unknown;
11
+ };
12
+ declare const getDisabledValue: (type?: string) => false | undefined;
13
+ declare const mergeConfig: (cleanConfig: Record<string, UnknownJSON>, disabledFieldKeys: string[], rawConfig: Record<string, UnknownJSON>, setupAssistantFields?: SetupAssistantField[]) => Record<string, UnknownJSON>;
14
+ declare const replaceConfigValues: (when?: string) => string;
15
+ declare const getEnabledState: (when: string | undefined, state: Record<string, UnknownJSON>) => Promise<boolean>;
16
+ declare const reduceEnabledResults: (results: {
17
+ api_name?: string;
18
+ enabled: boolean;
19
+ }[]) => Record<string, boolean>;
20
+ declare const forceQualifiedUrl: (url: string) => string;
21
+ type GetParamFunction = (key: IncludeOption) => string;
22
+ declare const getQrCodeValue: (value?: string, include?: IncludeOption[], getParam?: GetParamFunction) => string;
23
+ declare const getLinkValue: (value?: string, include?: IncludeOption[], getParam?: GetParamFunction) => string;
24
+ type RemovedHTML = RemovedAttribute | RemovedElement;
25
+ declare const getPluginSafeHTML: (html?: string) => {
26
+ html: string;
27
+ error: Error | null;
28
+ removed: RemovedHTML[];
29
+ };
30
+
31
+ export { type GetParamFunction as G, type RemovedHTML as R, getEnabledState as a, getLinkValue as b, getPluginSafeHTML as c, getQrCodeValue as d, replaceConfigValues as e, forceQualifiedUrl as f, getDisabledValue as g, mergeConfig as m, pluginMapper as p, reduceEnabledResults as r };
@@ -1,10 +1,9 @@
1
- import { WorkerPromise } from '../chunk-E6PKEJRU.js';
2
- import { getFnWithReturn } from '../chunk-5PYHFCFW.js';
3
- import { BaseWorkerContext } from '../chunk-J3C7J6QZ.js';
4
- import { dynamicPromptHandler, promptHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-MQ2JWOOH.js';
5
- import '../chunk-7ALAP3YN.js';
6
- import '../chunk-TYOXPK37.js';
7
- import { ACTIONS } from '../chunk-2CMHHDVB.js';
1
+ import { WorkerPromise } from '../chunk-LXBIPXUE.js';
2
+ import { getFnWithReturn } from '../chunk-TLWBUPHD.js';
3
+ import { BaseWorkerContext } from '../chunk-L2Z7F5W6.js';
4
+ import { dynamicPromptHandler, promptHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-3B5P6QRP.js';
5
+ import '../chunk-6V2UT4RS.js';
6
+ import { ACTIONS } from '../chunk-LTOTDWXB.js';
8
7
  import '../chunk-5WRI5ZAA.js';
9
8
 
10
9
  // src/workers/calendarSource.worker.ts
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/workers/calendarSource.worker.ts"],"names":[],"mappings":";;;;;;;;;;AAaA,IAAM,WAAW,IAAI,aAAA,CAAc,EAAE,OAAA,EAAS,OAAO,CAAA;AAErD,IAAI,MAAA,GAAmC,IAAA;AAEvC,IAAM,UAAA,GAAa,CAAC,MAAA,KAAmB,MAAsB;AAC3D,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,CAAA,EAAG,MAAA,KAAW;AAChC,IAAA,MAAA,CAAO,IAAI,KAAA,CAAM,CAAA,EAAG,MAAM,8CAA8C,CAAC,CAAA;AAAA,EAC3E,CAAC,CAAA;AACH,CAAA;AAEA,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,gBAAgB,MAAM,CAAA;AAEnD,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,WAAW,YAAY,CAAA;AAAA,MACnC,uBAAA,EAAyB,WAAW,yBAAyB,CAAA;AAAA,MAC7D,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,WAAW,eAAe,CAAA;AAAA,MACzC,gBAAA,EAAkB,WAAW,kBAAkB,CAAA;AAAA,MAC/C,uBAAA,EAAyB,WAAW,yBAAyB,CAAA;AAAA,MAC7D,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":"calendarSource.worker.js","sourcesContent":["import { ACTIONS } from '../communication/constants.js';\nimport { BaseWorkerContext } from '../contexts/BaseWorkerContext.js';\nimport type { WorkerEvent } from '../types/workers.js';\nimport { getFnWithReturn } from '../util/run.js';\nimport {\n dynamicPromptHandler,\n handleCommonResponse,\n kizenRequestHandler,\n postFormDataHandler,\n promptHandler,\n} from './util.js';\nimport { WorkerPromise } from './WorkerPromise.js';\n\nconst promises = new WorkerPromise({ isDebug: false });\n\nlet runner: BaseWorkerContext | null = null;\n\nconst notAllowed = (fnName: string) => (): Promise<never> => {\n return new Promise((_, reject) => {\n reject(new Error(`${fnName} is not supported in calendar source scripts`));\n });\n};\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 } = getFnWithReturn(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: notAllowed('uploadFile'),\n installThirdPartyScript: notAllowed('installThirdPartyScript'),\n args: args ?? '',\n sessionData,\n pluginComponentId,\n prompt: promptHandler(self, promises),\n dynamicPrompt: dynamicPromptHandler(self, promises),\n refreshEntity: notAllowed('refreshEntity'),\n openCreateRecord: notAllowed('openCreateRecord'),\n openCreateRelatedRecord: notAllowed('openCreateRelatedRecord'),\n pluginApiName,\n location,\n });\n\n await fn.bind(runner)();\n } else {\n handleCommonResponse(action, e, promises);\n }\n};\n"]}
1
+ {"version":3,"sources":["../../src/workers/calendarSource.worker.ts"],"names":[],"mappings":";;;;;;;;;AAaA,IAAM,WAAW,IAAI,aAAA,CAAc,EAAE,OAAA,EAAS,OAAO,CAAA;AAErD,IAAI,MAAA,GAAmC,IAAA;AAEvC,IAAM,UAAA,GAAa,CAAC,MAAA,KAAmB,MAAsB;AAC3D,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,CAAA,EAAG,MAAA,KAAW;AAChC,IAAA,MAAA,CAAO,IAAI,KAAA,CAAM,CAAA,EAAG,MAAM,8CAA8C,CAAC,CAAA;AAAA,EAC3E,CAAC,CAAA;AACH,CAAA;AAEA,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,gBAAgB,MAAM,CAAA;AAEnD,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,WAAW,YAAY,CAAA;AAAA,MACnC,uBAAA,EAAyB,WAAW,yBAAyB,CAAA;AAAA,MAC7D,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,WAAW,eAAe,CAAA;AAAA,MACzC,gBAAA,EAAkB,WAAW,kBAAkB,CAAA;AAAA,MAC/C,uBAAA,EAAyB,WAAW,yBAAyB,CAAA;AAAA,MAC7D,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":"calendarSource.worker.js","sourcesContent":["import { ACTIONS } from '../communication/constants.js';\nimport { BaseWorkerContext } from '../contexts/BaseWorkerContext.js';\nimport type { WorkerEvent } from '../types/workers.js';\nimport { getFnWithReturn } from '../util/run.js';\nimport {\n dynamicPromptHandler,\n handleCommonResponse,\n kizenRequestHandler,\n postFormDataHandler,\n promptHandler,\n} from './util.js';\nimport { WorkerPromise } from './WorkerPromise.js';\n\nconst promises = new WorkerPromise({ isDebug: false });\n\nlet runner: BaseWorkerContext | null = null;\n\nconst notAllowed = (fnName: string) => (): Promise<never> => {\n return new Promise((_, reject) => {\n reject(new Error(`${fnName} is not supported in calendar source scripts`));\n });\n};\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 } = getFnWithReturn(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: notAllowed('uploadFile'),\n installThirdPartyScript: notAllowed('installThirdPartyScript'),\n args: args ?? '',\n sessionData,\n pluginComponentId,\n prompt: promptHandler(self, promises),\n dynamicPrompt: dynamicPromptHandler(self, promises),\n refreshEntity: notAllowed('refreshEntity'),\n openCreateRecord: notAllowed('openCreateRecord'),\n openCreateRelatedRecord: notAllowed('openCreateRelatedRecord'),\n pluginApiName,\n location,\n });\n\n await fn.bind(runner)();\n } else {\n handleCommonResponse(action, e, promises);\n }\n};\n"]}
@@ -1,11 +1,10 @@
1
- import { FloatingFrameWorkerContext } from '../chunk-BOVB5YL3.js';
2
- import { WorkerPromise } from '../chunk-E6PKEJRU.js';
3
- import { getFn } from '../chunk-5PYHFCFW.js';
4
- import '../chunk-J3C7J6QZ.js';
5
- import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-MQ2JWOOH.js';
6
- import '../chunk-7ALAP3YN.js';
7
- import '../chunk-TYOXPK37.js';
8
- import { ACTIONS } from '../chunk-2CMHHDVB.js';
1
+ import { FloatingFrameWorkerContext } from '../chunk-6Q22X2IU.js';
2
+ import { WorkerPromise } from '../chunk-LXBIPXUE.js';
3
+ import { getFn } from '../chunk-TLWBUPHD.js';
4
+ import '../chunk-L2Z7F5W6.js';
5
+ import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-3B5P6QRP.js';
6
+ import '../chunk-6V2UT4RS.js';
7
+ import { ACTIONS } from '../chunk-LTOTDWXB.js';
9
8
  import '../chunk-5WRI5ZAA.js';
10
9
 
11
10
  // src/workers/floatingFrame.worker.ts
@@ -1 +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"]}
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"]}
@@ -1,10 +1,9 @@
1
- import { WorkerPromise } from '../chunk-E6PKEJRU.js';
2
- import { getFn } from '../chunk-5PYHFCFW.js';
3
- import { BaseWorkerContext } from '../chunk-J3C7J6QZ.js';
4
- import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-MQ2JWOOH.js';
5
- import '../chunk-7ALAP3YN.js';
6
- import '../chunk-TYOXPK37.js';
7
- import { ACTIONS } from '../chunk-2CMHHDVB.js';
1
+ import { WorkerPromise } from '../chunk-LXBIPXUE.js';
2
+ import { getFn } from '../chunk-TLWBUPHD.js';
3
+ import { BaseWorkerContext } from '../chunk-L2Z7F5W6.js';
4
+ import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-3B5P6QRP.js';
5
+ import '../chunk-6V2UT4RS.js';
6
+ import { ACTIONS } from '../chunk-LTOTDWXB.js';
8
7
  import '../chunk-5WRI5ZAA.js';
9
8
 
10
9
  // src/workers/generic.worker.ts
@@ -1 +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"]}
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"]}
@@ -1,11 +1,10 @@
1
- import { RecordDetailWorkerContext } from '../chunk-XCXET4AM.js';
2
- import { WorkerPromise } from '../chunk-E6PKEJRU.js';
3
- import { getFn } from '../chunk-5PYHFCFW.js';
4
- import '../chunk-J3C7J6QZ.js';
5
- import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-MQ2JWOOH.js';
6
- import '../chunk-7ALAP3YN.js';
7
- import '../chunk-TYOXPK37.js';
8
- import { ACTIONS } from '../chunk-2CMHHDVB.js';
1
+ import { RecordDetailWorkerContext } from '../chunk-S2GWVVYT.js';
2
+ import { WorkerPromise } from '../chunk-LXBIPXUE.js';
3
+ import { getFn } from '../chunk-TLWBUPHD.js';
4
+ import '../chunk-L2Z7F5W6.js';
5
+ import { openCreateRelatedRecordHandler, openCreateRecordHandler, refreshEntityHandler, dynamicPromptHandler, promptHandler, installThirdPartyScriptHandler, uploadFileHandler, postFormDataHandler, kizenRequestHandler, handleCommonResponse } from '../chunk-3B5P6QRP.js';
6
+ import '../chunk-6V2UT4RS.js';
7
+ import { ACTIONS } from '../chunk-LTOTDWXB.js';
9
8
  import '../chunk-5WRI5ZAA.js';
10
9
 
11
10
  // src/workers/recordDetail.worker.ts
@@ -1 +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,cAAA,EAAgB,MAAM,cAAA,IAAkB,EAAA;AAAA,MACxC,cAAA,EAAgB,MAAM,cAAA,IAAkB,EAAA;AAAA,MACxC,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 actionObjectId: setup.actionObjectId ?? '',\n actionEntityId: setup.actionEntityId ?? '',\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"]}
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,cAAA,EAAgB,MAAM,cAAA,IAAkB,EAAA;AAAA,MACxC,cAAA,EAAgB,MAAM,cAAA,IAAkB,EAAA;AAAA,MACxC,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 actionObjectId: setup.actionObjectId ?? '',\n actionEntityId: setup.actionEntityId ?? '',\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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kizenapps/engine",
3
- "version": "1.3.1",
3
+ "version": "1.4.0",
4
4
  "description": "Run JavaScript plugin apps inside Web Workers with host ↔ worker messaging",
5
5
  "license": "GPL-3.0",
6
6
  "type": "module",
@@ -1,36 +0,0 @@
1
- import { a as CommonPluginDefinition } from './routeScript-BExlCmGg.js';
2
-
3
- interface DataAdornmentConfig extends CommonPluginDefinition {
4
- id?: string;
5
- field_type: 'phonenumber' | 'date' | 'datetime';
6
- script: string;
7
- config: {
8
- icon: string;
9
- color: string;
10
- tooltip: string;
11
- customIcon?: string;
12
- };
13
- when?: string;
14
- plugin_name?: string;
15
- }
16
-
17
- interface ToolbarItemConfig extends CommonPluginDefinition {
18
- api_name: string;
19
- color?: string;
20
- icon?: string;
21
- label: string;
22
- script: string;
23
- when?: string;
24
- }
25
-
26
- interface AutomationStepConfig<T = unknown> {
27
- name: string;
28
- overallDescription: string;
29
- actions: Record<string, T>;
30
- thumbnail?: string;
31
- when?: string;
32
- action_step_api_name?: string;
33
- plugin_api_name?: string;
34
- }
35
-
36
- export type { AutomationStepConfig as A, DataAdornmentConfig as D, ToolbarItemConfig as T };
@@ -1,20 +0,0 @@
1
- // src/util/errors.ts
2
- var KizenRequestError = class _KizenRequestError extends Error {
3
- proxyStatus;
4
- upstreamStatus;
5
- upstreamResponse;
6
- constructor(proxyStatus, upstreamStatus, upstreamResponse, overrideMessage) {
7
- super(
8
- overrideMessage ?? upstreamResponse?.error?.message ?? (upstreamStatus ? `Request failed with status code ${String(upstreamStatus)}` : `Request failed with proxy status code ${String(proxyStatus)}`)
9
- );
10
- this.name = "KizenRequestError";
11
- this.proxyStatus = proxyStatus;
12
- this.upstreamStatus = upstreamStatus;
13
- this.upstreamResponse = upstreamResponse;
14
- Object.setPrototypeOf(this, _KizenRequestError.prototype);
15
- }
16
- };
17
-
18
- export { KizenRequestError };
19
- //# sourceMappingURL=chunk-7ALAP3YN.js.map
20
- //# sourceMappingURL=chunk-7ALAP3YN.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/util/errors.ts"],"names":[],"mappings":";AAEO,IAAM,iBAAA,GAAN,MAAM,kBAAA,SAA0B,KAAA,CAAM;AAAA,EACpC,WAAA;AAAA,EACA,cAAA;AAAA,EACA,gBAAA;AAAA,EAEP,WAAA,CACE,WAAA,EACA,cAAA,EACA,gBAAA,EACA,eAAA,EACA;AACA,IAAA,KAAA;AAAA,MACE,eAAA,IACG,gBAAA,EAAkB,KAAA,EAA4C,OAAA,KAC9D,cAAA,GACG,CAAA,gCAAA,EAAmC,MAAA,CAAO,cAAc,CAAC,CAAA,CAAA,GACzD,CAAA,sCAAA,EAAyC,MAAA,CAAO,WAAW,CAAC,CAAA,CAAA;AAAA,KACpE;AAEA,IAAA,IAAA,CAAK,IAAA,GAAO,mBAAA;AACZ,IAAA,IAAA,CAAK,WAAA,GAAc,WAAA;AACnB,IAAA,IAAA,CAAK,cAAA,GAAiB,cAAA;AACtB,IAAA,IAAA,CAAK,gBAAA,GAAmB,gBAAA;AAExB,IAAA,MAAA,CAAO,cAAA,CAAe,IAAA,EAAM,kBAAA,CAAkB,SAAS,CAAA;AAAA,EACzD;AACF","file":"chunk-7ALAP3YN.js","sourcesContent":["import type { UnknownJSON } from '../types/common.js';\n\nexport class KizenRequestError extends Error {\n public proxyStatus: number;\n public upstreamStatus?: number | undefined;\n public upstreamResponse?: UnknownJSON | undefined;\n\n constructor(\n proxyStatus: number,\n upstreamStatus?: number,\n upstreamResponse?: UnknownJSON,\n overrideMessage?: string,\n ) {\n super(\n overrideMessage ??\n (upstreamResponse?.error as { message?: string } | undefined)?.message ??\n (upstreamStatus\n ? `Request failed with status code ${String(upstreamStatus)}`\n : `Request failed with proxy status code ${String(proxyStatus)}`),\n );\n\n this.name = 'KizenRequestError';\n this.proxyStatus = proxyStatus;\n this.upstreamStatus = upstreamStatus;\n this.upstreamResponse = upstreamResponse;\n\n Object.setPrototypeOf(this, KizenRequestError.prototype);\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/workers/util.ts"],"names":["cleanConfig","consideredValue"],"mappings":";;;;AAyDO,IAAM,kBAAA,GAAqB,CAAC,MAAA,KAAkD;AACnF,EAAA,OAAO;AAAA,IACL,GAAA,EAAK,CAAA,QAAA,EAAW,MAAA,CAAO,QAAQ,CAAA,CAAA;AAAA,IAC/B,IAAA,EAAM,eAAA;AAAA,IACN,OAAO,MAAA,CAAO,IAAA;AAAA,IACd,cAAA,EAAgB;AAAA,GAClB;AACF;AAEO,IAAM,wBAAwB,CAAC,aAAA,EAAe,WAAA,EAAa,IAAA,EAAM,SAAS,MAAM,CAAA;AAEhF,IAAM,4BAAA,GAA+B,CAC1C,MAAA,EACA,UAAA,KACqB;AACrB,EAAA,MAAM,WAAW,MAAA,CAAO,MAAA,IAAU,EAAC,EAChC,OAAO,CAAC,KAAA,KAAU,CAAC,qBAAA,CAAsB,SAAS,KAAA,CAAM,IAAI,CAAC,CAAA,CAC7D,GAAA,CAAI,CAAC,CAAA,KAAM;AACV,IAAA,OAAO;AAAA,MACL,GAAG,CAAA;AAAA,MACH,IAAA,EAAM,aAAa,CAAA,CAAA,EAAI,UAAU,SAAS,CAAA,CAAE,IAAA,IAAQ,MAAM,CAAA,CAAA,CAAA,GAAM,CAAA,CAAE;AAAA,KACpE;AAAA,EACF,CAAC,CAAA;AAEH,EAAA,MAAM,UAAA,GAAA,CAAc,MAAA,CAAO,MAAA,IAAU,EAAC,EAAG,OAAO,CAAC,KAAA,KAAU,KAAA,CAAM,IAAA,KAAS,WAAW,CAAA;AAErF,EAAA,MAAM,oBAAoB,UAAA,CAAW,OAAA;AAAA,IAAQ,CAAC,SAAA,KAC5C,4BAAA,CAA6B,SAAA,EAA6B,UAAU,IAAI;AAAA,GAC1E;AAEA,EAAA,MAAM,aAAA,GAAgB,OAAO,OAAA,EAAS,MAAA,CAAO,CAAC,MAAA,KAAW,MAAA,CAAO,gBAAgB,CAAA,IAAK,EAAC;AAEtF,EAAA,OAAO;AAAA,IACL,GAAG,OAAA;AAAA,IACH,GAAG,iBAAA;AAAA,IACH,GAAG,aAAA,CAAc,GAAA,CAAI,CAAC,MAAA,KAAW;AAC/B,MAAA,OAAO;AAAA,QACL,GAAG,mBAAmB,MAAM,CAAA;AAAA,QAC5B,UAAA,EAAY,OAAO,gBAAA,IAAoB;AAAA,OACzC;AAAA,IACF,CAAC;AAAA,GACH;AACF;AAEO,IAAM,WAAA,GAAc,CACzB,oBAAA,EACA,YAAA,KACoB;AACpB,EAAA,MAAM,SAAA,GAAY,6BAA6B,oBAAoB,CAAA;AAEnE,EAAA,MAAM,eAAA,GAAkD,SAAA,CAAU,MAAA,CAAO,CAAC,KAAK,IAAA,KAAS;AACtF,IAAA,OAAO;AAAA,MACL,GAAG,GAAA;AAAA,MACH,CAAC,IAAA,CAAK,GAAG,GAAG;AAAA,KACd;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,iBAAA,GAAoB,MAAA,CAAO,IAAA,CAAK,YAAY,CAAA;AAElD,EAAA,MAAMA,eAA+B,EAAC;AAEtC,EAAA,iBAAA,CAAkB,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACjC,IAAA,MAAM,KAAA,GAAQ,aAAa,GAAG,CAAA;AAC9B,IAAA,MAAM,oBAAA,GAAuB,gBAAgB,GAAG,CAAA;AAEhD,IAAA,IAAI,CAAC,sBAAsB,IAAA,EAAM;AAC/B,MAAA;AAAA,IACF;AAEA,IAAA,QAAQ,qBAAqB,IAAA;AAAM,MACjC,KAAK,SAAA;AACH,QAAA,MAAM,eAAA,GAAkB,KAAA;AAExB,QAAA,IAAI,CAAC,eAAA,EAAiB;AACpB,UAAA;AAAA,QACF;AAEA,QAAAA,YAAAA,CAAY,GAAG,CAAA,GAAI,eAAA,CAAgB,KAAA;AAEnC,QAAA;AAAA,MACF,KAAK,eAAA,EAAiB;AACpB,QAAA,MAAMC,gBAAAA,GAAkB,KAAA;AAExB,QAAA,IAAI,CAACA,gBAAAA,EAAiB;AACpB,UAAA;AAAA,QACF;AAEA,QAAAD,YAAAA,CAAY,GAAG,CAAA,GAAI;AAAA,UACjB,QAAA,EAAUC,iBAAgB,KAAA,EAAO,EAAA;AAAA,UACjC,UAAA,EAAYA,iBAAgB,KAAA,EAAO;AAAA,SACrC;AAEA,QAAA;AAAA,MACF;AAAA,MACA,KAAK,OAAA,EAAS;AACZ,QAAA,MAAMA,gBAAAA,GAAkB,KAAA;AAExB,QAAA,IAAI,CAACA,kBAAiB,KAAA,EAAO;AAC3B,UAAA;AAAA,QACF;AAEA,QAAA,IAAI,KAAA,CAAM,OAAA,CAAQA,gBAAAA,CAAgB,KAAK,CAAA,EAAG;AACxC,UAAAD,aAAY,GAAG,CAAA,GAAIC,iBAAgB,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,MAAU;AAAA,YACtD,SAAS,IAAA,CAAK,KAAA;AAAA,YACd,WAAW,IAAA,CAAK,KAAA;AAAA,YAChB,QAAA,EAAUA,iBAAgB,gBAAA,EAAkB,EAAA;AAAA,YAC5C,UAAA,EAAYA,iBAAgB,gBAAA,EAAkB;AAAA,WAChD,CAAE,CAAA;AAAA,QACJ,CAAA,MAAA,IACE,OAAOA,gBAAAA,CAAgB,KAAA,KAAU,YACjC,OAAOA,gBAAAA,CAAgB,qBAAqB,QAAA,EAC5C;AACA,UAAAD,YAAAA,CAAY,GAAG,CAAA,GAAI;AAAA,YACjB,OAAA,EAASC,iBAAgB,KAAA,CAAM,KAAA;AAAA,YAC/B,SAAA,EAAWA,iBAAgB,KAAA,CAAM,KAAA;AAAA,YACjC,QAAA,EAAUA,iBAAgB,gBAAA,CAAiB,EAAA;AAAA,YAC3C,UAAA,EAAYA,iBAAgB,gBAAA,CAAiB;AAAA,WAC/C;AAAA,QACF;AACA,QAAA;AAAA,MACF;AAAA,MACA,KAAK,QAAA,EAAU;AACb,QAAA,MAAMA,gBAAAA,GAAkB,KAAA;AAExB,QAAA,IAAI,CAACA,gBAAAA,EAAiB;AACpB,UAAA;AAAA,QACF;AAEA,QAAA,IAAI;AACF,UAAA,MAAM,MAAA,GAAS,MAAA,CAAOA,gBAAAA,CAAgB,KAAK,CAAA;AAE3C,UAAA,IAAI,CAAC,MAAA,IAAU,MAAA,KAAW,CAAA,EAAG;AAC3B,YAAA;AAAA,UACF;AAEA,UAAAD,YAAAA,CAAY,GAAG,CAAA,GAAI,MAAA;AAAA,QACrB,CAAA,CAAA,MAAQ;AACN,UAAAA,YAAAA,CAAY,GAAG,CAAA,GAAI,GAAA;AAAA,QACrB;AAEA,QAAA;AAAA,MACF;AAAA,MACA,KAAK,QAAA,EAAU;AACb,QAAA,MAAMC,gBAAAA,GAAkB,KAAA;AAExB,QAAA,IAAI,CAACA,gBAAAA,EAAiB;AACpB,UAAA;AAAA,QACF;AAEA,QAAAD,YAAAA,CAAY,GAAG,CAAA,GAAIC,gBAAAA,CAAgB,KAAA;AACnC,QAAA;AAAA,MACF;AAAA,MACA,KAAK,MAAA,EAAQ;AACX,QAAA,MAAMA,gBAAAA,GAAkB,KAAA;AAExB,QAAA,MAAM,YAAYA,gBAAAA,EAAiB,KAAA;AAEnC,QAAA,IAAI,SAAA,EAAW;AACb,UAAAD,YAAAA,CAAY,GAAG,CAAA,GAAI,SAAA;AACnB,UAAA;AAAA,QACF;AAEA,QAAA,MAAM,eAAe,oBAAA,CAAqB,OAAA;AAE1C,QAAA,IAAI,YAAA,EAAc;AAChB,UAAAA,YAAAA,CAAY,GAAG,CAAA,GAAI,YAAA;AAAA,QACrB;AAEA,QAAA;AAAA,MACF;AAAA,MACA,KAAK,aAAA;AAAA,MACL,KAAK,WAAA;AAAA,MACL,KAAK,IAAA;AAAA,MACL,KAAK,OAAA;AAAA,MACL,KAAK,MAAA;AACH,QAAA;AAAA;AAGJ,IAAA,OAAO,KAAA,EAAO,KAAA;AAAA,EAChB,CAAC,CAAA;AAED,EAAA,OAAOA,YAAAA;AACT;AAEO,IAAM,mBAAA,GACX,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,MAAA,KAAW,OAAO,GAAA,EAAK,OAAA,EAAS,OAAA,KAAY;AACnE,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAA2B,MAAM,CAAA;AAE9D,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,aAAA;AAAA,QAChB,EAAA;AAAA,QACA,MAAA;AAAA,QACA,GAAA;AAAA,QACA,OAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEK,IAAM,mBAAA,GACX,CAAC,QAAA,EAAU,QAAA,KACX,CAAC,GAAA,EAAK,OAAA,EAAS,eAAe,IAAA,KAAS;AACrC,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAAS,MAAM,CAAA;AAE5C,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,oBAAA;AAAA,QAChB,GAAA;AAAA,QACA,EAAA;AAAA,QACA,OAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEK,IAAM,aAAA,GAAiC,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,MAAA,KAAW;AAChF,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAAS,MAAM,CAAA;AAC5C,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,cAAA;AAAA,QAChB,EAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEO,IAAM,oBAAA,GAA+C,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,MAAA,KAAW;AAC9F,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAA2B,MAAM,CAAA;AAC9D,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,sBAAA;AAAA,QAChB,EAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEO,IAAM,iBAAA,GAAyC,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,OAAA,KAAY;AACzF,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAAS,MAAM,CAAA;AAC5C,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,kBAAA;AAAA,QAChB,EAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEO,IAAM,iCACX,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,KAAK,IAAA,KAAS;AACrC,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAA2B,MAAM,CAAA;AAC9D,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,kCAAA;AAAA,QAChB,GAAA;AAAA,QACA,EAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEK,IAAM,oBAAA,GACX,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,QAAA,KAAqB;AAC5C,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAAS,MAAM,CAAA;AAC5C,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,cAAA;AAAA,QAChB,EAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEK,IAAM,uBAAA,GACX,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,QAAA,KAAqB;AAC5C,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAAS,MAAM,CAAA;AAC5C,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,gCAAA;AAAA,QAChB,EAAA;AAAA,QACA,QAAA,EAAU;AAAA,OACX;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEK,IAAM,iCACX,CAAC,QAAA,EAAU,QAAA,KAAa,CAAC,UAAkB,eAAA,KAA4B;AACrE,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACtC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,QAAA,CAAS,OAAA,EAAS,MAAM,CAAA;AAC5C,IAAA,QAAA,CAAS,WAAA;AAAA,MACP,KAAK,SAAA,CAAU;AAAA,QACb,QAAQ,OAAA,CAAQ,wCAAA;AAAA,QAChB,EAAA;AAAA,QACA,QAAA;AAAA,QACA;AAAA,OACD;AAAA,KACH;AAAA,EACF,CAAC,CAAA;AACH;AAEK,IAAM,oBAAA,GAAuB,CAClC,MAAA,EACA,CAAA,EACA,QAAA,KACS;AACT,EAAA,QAAQ,MAAA;AAAQ,IACd,KAAK,UAAU,cAAA,EAAgB;AAC7B,MAAA,MAAM,EAAE,IAAI,IAAA,EAAM,KAAA,KAAU,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AAC7C,MAAA,IAAI,KAAA,EAAO;AACT,QAAA,MAAM,gBACJ,OAAO,KAAA,KAAU,QAAA,IAAY,cAAA,IAAkB,QAC3C,IAAI,iBAAA;AAAA,UACD,KAAA,CAA4B,WAAA;AAAA,UAC5B,KAAA,CAA4B,cAAA;AAAA,UAC5B,KAAA,CAA4B,gBAAA;AAAA,UAC5B,KAAA,CAA4B;AAAA,SAC/B,GACA,KAAA;AAEN,QAAA,QAAA,CAAS,MAAA,CAAO,IAAI,aAAa,CAAA;AAAA,MACnC,CAAA,MAAO;AACL,QAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MAC3B;AAEA,MAAA;AAAA,IACF;AAAA,IACA,KAAK,UAAU,qBAAA,EAAuB;AACpC,MAAA,MAAM,EAAE,EAAA,EAAI,OAAA,KAAY,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AACzC,MAAA,IAAI,OAAA,EAAS;AACX,QAAA,QAAA,CAAS,QAAQ,EAAE,CAAA;AAAA,MACrB,CAAA,MAAO;AACL,QAAA,QAAA,CAAS,OAAO,EAAE,CAAA;AAAA,MACpB;AAEA,MAAA;AAAA,IACF;AAAA,IAEA,KAAK,UAAU,mBAAA,EAAqB;AAClC,MAAA,MAAM,EAAE,IAAI,IAAA,EAAM,KAAA,KAAU,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AAC7C,MAAA,IAAI,IAAA,EAAM;AACR,QAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MAC3B,CAAA,MAAO;AACL,QAAA,QAAA,CAAS,MAAA,CAAO,IAAI,KAAK,CAAA;AAAA,MAC3B;AAEA,MAAA;AAAA,IACF;AAAA,IAEA,KAAK,UAAU,mCAAA,EAAqC;AAClD,MAAA,MAAM,EAAE,EAAA,EAAI,IAAA,KAAS,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AACtC,MAAA,IAAI,KAAK,OAAA,EAAS;AAChB,QAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MAC3B,CAAA,MAAO;AACL,QAAA,QAAA,CAAS,OAAO,EAAE,CAAA;AAAA,MACpB;AAEA,MAAA;AAAA,IACF;AAAA,IAEA,KAAK,UAAU,eAAA,EAAiB;AAC9B,MAAA,MAAM,EAAE,EAAA,EAAI,IAAA,KAAS,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AACtC,MAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAEzB,MAAA;AAAA,IACF;AAAA,IAEA,KAAK,UAAU,sBAAA,EAAwB;AACrC,MAAA,MAAM,EAAE,EAAA,EAAI,IAAA,KAAS,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AACtC,MAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAEzB,MAAA;AAAA,IACF;AAAA,IAEA,KAAK,UAAU,8BAAA,EAAgC;AAC7C,MAAA,MAAM,EAAE,EAAA,EAAI,IAAA,KAAS,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AACtC,MAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAEzB,MAAA;AAAA,IACF;AAAA,IAEA,KAAK,UAAU,uBAAA,EAAyB;AACtC,MAAA,MAAM,EAAE,EAAA,EAAI,IAAA,KAAS,IAAA,CAAK,KAAA,CAAM,EAAE,IAAI,CAAA;AACtC,MAAA,IAAI,KAAK,OAAA,EAAS;AAChB,QAAA,QAAA,CAAS,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MAC3B,CAAA,MAAO;AACL,QAAA,QAAA,CAAS,OAAO,EAAE,CAAA;AAAA,MACpB;AAEA,MAAA;AAAA,IACF;AAAA;AAEJ","file":"chunk-MQ2JWOOH.js","sourcesContent":["/*\n * Note - this file contains utility functions used in the worker threads for the plugin engine.\n * These functions must be self-contained and cannot rely on imports that would inadvertently\n * include React, which would break local development and bloat the worker in production.\n */\n\nimport { ACTIONS, RESPONSES } from '../communication/constants.js';\nimport type {\n AssistantConfigAction,\n AssistantField,\n BooleanValueStore,\n CleanValueStore,\n CurriedDynamicPromptFn,\n CustomObjectCleanValue,\n CustomObjectValueStore,\n FieldCleanValue,\n FieldValueStore,\n ModalContainer,\n NumberValueStore,\n SelectValueStore,\n SetupAssistantConfig,\n TextValueStore,\n ValueStore,\n} from '../types/modals.js';\nimport type { CurriedKizenRequestFn } from '../types/request.js';\nimport type { PromiseResolve } from '../types/promise.js';\nimport type {\n CurriedInstallThirdPartyScriptFn,\n CurriedOpenCreateRecordFn,\n CurriedOpenCreateRelatedRecordFn,\n CurriedPostFormDataFn,\n CurriedPromptFn,\n CurriedRefreshEntityFn,\n CurriedUploadFileFn,\n} from '../types/contexts.js';\nimport type {\n CreateRecordResponsePayload,\n CreateRelatedRecordResponsePayload,\n InstallThirdPartyScriptResponsePayload,\n PostFormDataResponsePayload,\n PromptResponsePayload,\n QueryResponsePayload,\n RefreshEntityResponsePayload,\n UploadFileResponsePayload,\n} from '../types/workers.js';\nimport type { WorkerPromise } from './WorkerPromise.js';\nimport { KizenRequestError } from '../util/errors.js';\nimport type { UnknownJSON } from '../types/common.js';\n\ninterface KizenErrorPayload {\n __kizenError: true;\n proxyStatus: number;\n upstreamStatus?: number;\n upstreamResponse?: UnknownJSON;\n message: string;\n}\n\nexport const getFieldFromAction = (action: AssistantConfigAction): AssistantField => {\n return {\n key: `action__${action.api_name}`,\n type: 'custom_object',\n label: action.name,\n allow_multiple: true,\n };\n};\n\nexport const NON_INPUT_FIELD_TYPES = ['description', 'container', 'qr', 'image', 'link'];\n\nexport const getAllNestedInputsFromConfig = (\n config: SetupAssistantConfig,\n parentWhen?: string,\n): AssistantField[] => {\n const regular = (config.fields ?? [])\n .filter((entry) => !NON_INPUT_FIELD_TYPES.includes(entry.type))\n .map((r) => {\n return {\n ...r,\n when: parentWhen ? `(${parentWhen}) && (${r.when ?? 'true'})` : r.when,\n };\n }) as AssistantField[];\n\n const containers = (config.fields ?? []).filter((entry) => entry.type === 'container');\n\n const recursiveRegulars = containers.flatMap((container) =>\n getAllNestedInputsFromConfig(container as ModalContainer, container.when),\n );\n\n const actionObjects = config.actions?.filter((action) => action.hint_object_name) ?? [];\n\n return [\n ...regular,\n ...recursiveRegulars,\n ...actionObjects.map((action) => {\n return {\n ...getFieldFromAction(action),\n match_hint: action.hint_object_name ?? '',\n };\n }),\n ];\n};\n\nexport const cleanConfig = (\n setupAssistantConfig: SetupAssistantConfig,\n configValues: Record<string, ValueStore>,\n): CleanValueStore => {\n const flattened = getAllNestedInputsFromConfig(setupAssistantConfig);\n\n const configReference: Record<string, AssistantField> = flattened.reduce((acc, curr) => {\n return {\n ...acc,\n [curr.key]: curr,\n };\n }, {});\n\n const configKeysToClean = Object.keys(configValues);\n\n const cleanConfig: CleanValueStore = {};\n\n configKeysToClean.forEach((key) => {\n const value = configValues[key];\n const configReferenceValue = configReference[key];\n\n if (!configReferenceValue?.type) {\n return;\n }\n\n switch (configReferenceValue.type) {\n case 'boolean':\n const consideredValue = value as BooleanValueStore | undefined;\n\n if (!consideredValue) {\n return;\n }\n\n cleanConfig[key] = consideredValue.value;\n\n return;\n case 'custom_object': {\n const consideredValue = value as CustomObjectValueStore | undefined;\n\n if (!consideredValue) {\n return;\n }\n\n cleanConfig[key] = {\n objectId: consideredValue.value?.id,\n objectName: consideredValue.value?.objectName,\n } as CustomObjectCleanValue;\n\n return;\n }\n case 'field': {\n const consideredValue = value as FieldValueStore | undefined;\n\n if (!consideredValue?.value) {\n return;\n }\n\n if (Array.isArray(consideredValue.value)) {\n cleanConfig[key] = consideredValue.value.map((item) => ({\n fieldId: item.value,\n fieldName: item.label,\n objectId: consideredValue.associatedObject?.id,\n objectName: consideredValue.associatedObject?.name,\n })) as FieldCleanValue;\n } else if (\n typeof consideredValue.value === 'object' &&\n typeof consideredValue.associatedObject === 'object'\n ) {\n cleanConfig[key] = {\n fieldId: consideredValue.value.value,\n fieldName: consideredValue.value.label,\n objectId: consideredValue.associatedObject.id,\n objectName: consideredValue.associatedObject.name,\n } as FieldCleanValue;\n }\n return;\n }\n case 'number': {\n const consideredValue = value as NumberValueStore | undefined;\n\n if (!consideredValue) {\n return;\n }\n\n try {\n const parsed = Number(consideredValue.value);\n\n if (!parsed && parsed !== 0) {\n return;\n }\n\n cleanConfig[key] = parsed;\n } catch {\n cleanConfig[key] = NaN;\n }\n\n return;\n }\n case 'select': {\n const consideredValue = value as SelectValueStore | undefined;\n\n if (!consideredValue) {\n return;\n }\n\n cleanConfig[key] = consideredValue.value;\n return;\n }\n case 'text': {\n const consideredValue = value as TextValueStore | undefined;\n\n const textValue = consideredValue?.value;\n\n if (textValue) {\n cleanConfig[key] = textValue;\n return;\n }\n\n const defaultValue = configReferenceValue.default;\n\n if (defaultValue) {\n cleanConfig[key] = defaultValue;\n }\n\n return;\n }\n case 'description':\n case 'container':\n case 'qr':\n case 'image':\n case 'link':\n return;\n }\n\n return value?.value;\n });\n\n return cleanConfig;\n};\n\nexport const kizenRequestHandler: CurriedKizenRequestFn =\n (instance, promises) => (method) => async (url, payload, options) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve as PromiseResolve, reject);\n\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.QUERY_REQUEST,\n id,\n method,\n url,\n payload,\n options,\n }),\n );\n });\n };\n\nexport const postFormDataHandler: CurriedPostFormDataFn =\n (instance, promises) =>\n (url, payload, createNewTab = true) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve, reject);\n\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.POSTFORMDATA_REQUEST,\n url,\n id,\n payload,\n createNewTab,\n }),\n );\n });\n };\n\nexport const promptHandler: CurriedPromptFn = (instance, promises) => (config) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.PROMPT_REQUEST,\n id,\n config,\n }),\n );\n });\n};\n\nexport const dynamicPromptHandler: CurriedDynamicPromptFn = (instance, promises) => (config) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve as PromiseResolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.DYNAMIC_PROMPT_REQUEST,\n id,\n config,\n }),\n );\n });\n};\n\nexport const uploadFileHandler: CurriedUploadFileFn = (instance, promises) => (payload) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.UPLOADFILE_REQUEST,\n id,\n payload,\n }),\n );\n });\n};\n\nexport const installThirdPartyScriptHandler: CurriedInstallThirdPartyScriptFn =\n (instance, promises) => (url, args) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve as PromiseResolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.INSTALL_THIRD_PARTY_SCRIPT_REQUEST,\n url,\n id,\n args,\n }),\n );\n });\n };\n\nexport const refreshEntityHandler: CurriedRefreshEntityFn =\n (instance, promises) => (entityId: string) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.REFRESH_ENTITY,\n id,\n entityId,\n }),\n );\n });\n };\n\nexport const openCreateRecordHandler: CurriedOpenCreateRecordFn =\n (instance, promises) => (objectId: string) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.OPEN_CREATE_RECORD_MODAL_REQUEST,\n id,\n entityId: objectId,\n }),\n );\n });\n };\n\nexport const openCreateRelatedRecordHandler: CurriedOpenCreateRelatedRecordFn =\n (instance, promises) => (objectId: string, relatedEntityId: string) => {\n return new Promise((resolve, reject) => {\n const id = promises.register(resolve, reject);\n instance.postMessage(\n JSON.stringify({\n action: ACTIONS.OPEN_CREATE_RELATED_RECORD_MODAL_REQUEST,\n id,\n objectId,\n relatedEntityId,\n }),\n );\n });\n };\n\nexport const handleCommonResponse = (\n action: string,\n e: MessageEvent<string>,\n promises: WorkerPromise,\n): void => {\n switch (action) {\n case RESPONSES.QUERY_RESPONSE: {\n const { id, data, error } = JSON.parse(e.data) as QueryResponsePayload;\n if (error) {\n const reconstructed =\n typeof error === 'object' && '__kizenError' in error\n ? new KizenRequestError(\n (error as KizenErrorPayload).proxyStatus,\n (error as KizenErrorPayload).upstreamStatus,\n (error as KizenErrorPayload).upstreamResponse,\n (error as KizenErrorPayload).message,\n )\n : error;\n\n promises.reject(id, reconstructed);\n } else {\n promises.resolve(id, data);\n }\n\n break;\n }\n case RESPONSES.POSTFORMDATA_RESPONSE: {\n const { id, success } = JSON.parse(e.data) as PostFormDataResponsePayload;\n if (success) {\n promises.resolve(id);\n } else {\n promises.reject(id);\n }\n\n break;\n }\n\n case RESPONSES.UPLOADFILE_RESPONSE: {\n const { id, data, error } = JSON.parse(e.data) as UploadFileResponsePayload;\n if (data) {\n promises.resolve(id, data);\n } else {\n promises.reject(id, error);\n }\n\n break;\n }\n\n case RESPONSES.INSTALL_THIRD_PARTY_SCRIPT_RESPONSE: {\n const { id, data } = JSON.parse(e.data) as InstallThirdPartyScriptResponsePayload;\n if (data.success) {\n promises.resolve(id, data);\n } else {\n promises.reject(id);\n }\n\n break;\n }\n\n case RESPONSES.PROMPT_RESPONSE: {\n const { id, data } = JSON.parse(e.data) as PromptResponsePayload;\n promises.resolve(id, data);\n\n break;\n }\n\n case RESPONSES.CREATE_RECORD_RESPONSE: {\n const { id, data } = JSON.parse(e.data) as CreateRecordResponsePayload;\n promises.resolve(id, data);\n\n break;\n }\n\n case RESPONSES.CREATE_RELATED_RECORD_RESPONSE: {\n const { id, data } = JSON.parse(e.data) as CreateRelatedRecordResponsePayload;\n promises.resolve(id, data);\n\n break;\n }\n\n case RESPONSES.REFRESH_ENTITY_RESPONSE: {\n const { id, data } = JSON.parse(e.data) as RefreshEntityResponsePayload;\n if (data.success) {\n promises.resolve(id, true);\n } else {\n promises.reject(id);\n }\n\n break;\n }\n }\n};\n"]}