@wix/cli-app 1.1.90 → 1.1.92

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 (75) hide show
  1. package/build/{AddPermissionCommand-XY4GGAKI.js → AddPermissionCommand-UGME2QWS.js} +2 -2
  2. package/build/{CreateVersionCommand-AFO6QZ3K.js → CreateVersionCommand-6NNLCV4G.js} +3 -3
  3. package/build/{DevCommand-LMH2ZEYS.js → DevCommand-T2CCTVH5.js} +10 -10
  4. package/build/{GenerateCommand-3CK2O4L6.js → GenerateCommand-BQWKR77V.js} +15 -7
  5. package/build/GenerateCommand-BQWKR77V.js.map +1 -0
  6. package/build/{LogsCommand-T2OR2ZNI.js → LogsCommand-FAMABFXV.js} +3 -3
  7. package/build/PreviewCommand-U4FLX7BV.js +19 -0
  8. package/build/ReleaseCommand-ZVGT3DJ4.js +28 -0
  9. package/build/{ServeCommand-RPXEURIC.js → ServeCommand-ENJQ7W3M.js} +3 -3
  10. package/build/{build-R24UOFVB.js → build-5TJBO2Z6.js} +6 -6
  11. package/build/{chunk-G2EJCOG4.js → chunk-326IZ7ZX.js} +2 -2
  12. package/build/{chunk-EYJO2C25.js → chunk-42YZEZRJ.js} +4 -4
  13. package/build/{chunk-M7GDC5QO.js → chunk-6GIUS5EN.js} +117 -3
  14. package/build/{chunk-M7GDC5QO.js.map → chunk-6GIUS5EN.js.map} +1 -1
  15. package/build/{chunk-YBZ4LUI2.js → chunk-74LWGNWZ.js} +13 -9
  16. package/build/{chunk-YBZ4LUI2.js.map → chunk-74LWGNWZ.js.map} +1 -1
  17. package/build/{chunk-3C7IDKDV.js → chunk-CJN3OVTP.js} +2 -2
  18. package/build/{chunk-BFYHGTJS.js → chunk-CU537PKO.js} +3 -3
  19. package/build/{chunk-DT5SDTRI.js → chunk-GJD3WPIB.js} +4 -4
  20. package/build/{chunk-ZZSRD3XC.js → chunk-IALJBOMX.js} +2 -2
  21. package/build/{chunk-S3RIMPQQ.js → chunk-MJCYVUFE.js} +4667 -162
  22. package/build/{chunk-S3RIMPQQ.js.map → chunk-MJCYVUFE.js.map} +1 -1
  23. package/build/{chunk-AGCEJPNC.js → chunk-NNPPCKE7.js} +2 -2
  24. package/build/{chunk-AWOS3TAC.js → chunk-PWAKLRIM.js} +174 -65
  25. package/build/chunk-PWAKLRIM.js.map +1 -0
  26. package/build/{chunk-YB5ZT6ZJ.js → chunk-UALJ6Q7E.js} +2 -2
  27. package/build/{chunk-K3B5VWLJ.js → chunk-UDU2TW4J.js} +2 -2
  28. package/build/{chunk-MAYXQQ44.js → chunk-WH2Z3XYZ.js} +14 -21
  29. package/build/chunk-WH2Z3XYZ.js.map +1 -0
  30. package/build/{chunk-CNLLDB7V.js → chunk-WZXEMPD4.js} +6 -6
  31. package/build/{chunk-CNLLDB7V.js.map → chunk-WZXEMPD4.js.map} +1 -1
  32. package/build/{chunk-UUZAWTTZ.js → chunk-XT37ORXG.js} +2 -2
  33. package/build/{chunk-HUQZJ7BP.js → chunk-YBKG7R66.js} +2 -2
  34. package/build/cloudflare-runtime/entry.js +6 -4
  35. package/build/cloudflare-runtime/getRegisteredExtensions.js +6 -4
  36. package/build/index.js +25 -25
  37. package/build/platform-sdk/chunk-25LMXVNI.js +2 -0
  38. package/build/platform-sdk/chunk-25LMXVNI.js.map +1 -0
  39. package/build/platform-sdk/dashboard.js +1 -1
  40. package/build/platform-sdk/editor.js +2 -2
  41. package/build/platform-sdk/editor.js.map +1 -1
  42. package/build/platform-sdk/site.js +1 -1
  43. package/build/{preview-MQRVT6F3.js → preview-4WAJE5MZ.js} +12 -12
  44. package/build/{release-BVT34U5G.js → release-UNNP3L64.js} +14 -14
  45. package/build/{render-command-I7TJW3BF.js → render-command-7M54GGXG.js} +5 -5
  46. package/package.json +9 -9
  47. package/build/GenerateCommand-3CK2O4L6.js.map +0 -1
  48. package/build/PreviewCommand-GKWGXWGO.js +0 -19
  49. package/build/ReleaseCommand-VRSGVCA5.js +0 -28
  50. package/build/chunk-AWOS3TAC.js.map +0 -1
  51. package/build/chunk-MAYXQQ44.js.map +0 -1
  52. package/build/platform-sdk/chunk-MM2KVUBI.js +0 -2
  53. package/build/platform-sdk/chunk-MM2KVUBI.js.map +0 -1
  54. /package/build/{AddPermissionCommand-XY4GGAKI.js.map → AddPermissionCommand-UGME2QWS.js.map} +0 -0
  55. /package/build/{CreateVersionCommand-AFO6QZ3K.js.map → CreateVersionCommand-6NNLCV4G.js.map} +0 -0
  56. /package/build/{DevCommand-LMH2ZEYS.js.map → DevCommand-T2CCTVH5.js.map} +0 -0
  57. /package/build/{LogsCommand-T2OR2ZNI.js.map → LogsCommand-FAMABFXV.js.map} +0 -0
  58. /package/build/{PreviewCommand-GKWGXWGO.js.map → PreviewCommand-U4FLX7BV.js.map} +0 -0
  59. /package/build/{ReleaseCommand-VRSGVCA5.js.map → ReleaseCommand-ZVGT3DJ4.js.map} +0 -0
  60. /package/build/{ServeCommand-RPXEURIC.js.map → ServeCommand-ENJQ7W3M.js.map} +0 -0
  61. /package/build/{build-R24UOFVB.js.map → build-5TJBO2Z6.js.map} +0 -0
  62. /package/build/{chunk-G2EJCOG4.js.map → chunk-326IZ7ZX.js.map} +0 -0
  63. /package/build/{chunk-EYJO2C25.js.map → chunk-42YZEZRJ.js.map} +0 -0
  64. /package/build/{chunk-3C7IDKDV.js.map → chunk-CJN3OVTP.js.map} +0 -0
  65. /package/build/{chunk-BFYHGTJS.js.map → chunk-CU537PKO.js.map} +0 -0
  66. /package/build/{chunk-DT5SDTRI.js.map → chunk-GJD3WPIB.js.map} +0 -0
  67. /package/build/{chunk-ZZSRD3XC.js.map → chunk-IALJBOMX.js.map} +0 -0
  68. /package/build/{chunk-AGCEJPNC.js.map → chunk-NNPPCKE7.js.map} +0 -0
  69. /package/build/{chunk-YB5ZT6ZJ.js.map → chunk-UALJ6Q7E.js.map} +0 -0
  70. /package/build/{chunk-K3B5VWLJ.js.map → chunk-UDU2TW4J.js.map} +0 -0
  71. /package/build/{chunk-UUZAWTTZ.js.map → chunk-XT37ORXG.js.map} +0 -0
  72. /package/build/{chunk-HUQZJ7BP.js.map → chunk-YBKG7R66.js.map} +0 -0
  73. /package/build/{preview-MQRVT6F3.js.map → preview-4WAJE5MZ.js.map} +0 -0
  74. /package/build/{release-BVT34U5G.js.map → release-UNNP3L64.js.map} +0 -0
  75. /package/build/{render-command-I7TJW3BF.js.map → render-command-7M54GGXG.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../node_modules/@wix/sdk/build/wixClient.js","../../../node_modules/@wix/sdk/build/ambassador-modules.js","../../../node_modules/@wix/sdk/build/common.js","../../../node_modules/@wix/sdk/build/fetch-error.js","../../../node_modules/@wix/sdk/build/helpers.js","../../../node_modules/@wix/sdk/build/host-modules.js","../../../node_modules/@wix/sdk/build/bi/biHeaderGenerator.js","../../../node_modules/@wix/sdk/build/rest-modules.js","../../../node_modules/@wix/sdk/build/event-handlers-modules.js","../../../node_modules/@wix/sdk/build/nanoevents.js","../../../node_modules/@wix/sdk/build/service-plugin-modules.js"],"sourcesContent":["import { wixContext } from '@wix/sdk-context';\nimport { SERVICE_PLUGIN_ERROR_TYPE, } from '@wix/sdk-types';\nimport { isAmbassadorModule, toHTTPModule } from './ambassador-modules.js';\nimport { DEFAULT_API_URL, PUBLIC_METADATA_KEY } from './common.js';\nimport { FetchErrorResponse } from './fetch-error.js';\nimport { getDefaultContentHeader, isObject } from './helpers.js';\nimport { buildHostModule, isHostModule } from './host-modules.js';\nimport { buildRESTDescriptor } from './rest-modules.js';\nimport { eventHandlersModules, isEventHandlerModule, } from './event-handlers-modules.js';\nimport { isServicePluginModule, servicePluginsModules, } from './service-plugin-modules.js';\nimport { runWithoutContext } from '@wix/sdk-runtime/context';\nexport const X_WIX_CONSISTENT_HEADER = 'X-Wix-Consistent';\nexport function createClient(config) {\n const _headers = config.headers || { Authorization: '' };\n const authStrategy = config.auth ||\n {\n getAuthHeaders: (_) => Promise.resolve({ headers: {} }),\n };\n const boundGetAuthHeaders = authStrategy.getAuthHeaders.bind(undefined, config.host);\n authStrategy.getAuthHeaders = boundGetAuthHeaders;\n const fetchWithAuth = async (urlOrRequest, requestInit) => {\n const authHeaders = await boundGetAuthHeaders();\n const headers = {\n ...(requestInit?.headers ?? {}),\n ...authHeaders.headers,\n ...(_headers[X_WIX_CONSISTENT_HEADER]\n ? { [X_WIX_CONSISTENT_HEADER]: _headers[X_WIX_CONSISTENT_HEADER] }\n : {}),\n };\n if (typeof urlOrRequest === 'string' || urlOrRequest instanceof URL) {\n const response = await fetch(urlOrRequest, {\n ...requestInit,\n headers,\n });\n const consistentHeader = findConsistentHeader(response);\n if (consistentHeader) {\n _headers[X_WIX_CONSISTENT_HEADER] = consistentHeader;\n }\n return response;\n }\n else {\n for (const [k, v] of Object.entries(headers)) {\n if (typeof v === 'string') {\n urlOrRequest.headers.set(k, v);\n }\n }\n const response = await fetch(urlOrRequest, requestInit);\n const consistentHeader = findConsistentHeader(response);\n if (consistentHeader) {\n _headers[X_WIX_CONSISTENT_HEADER] = consistentHeader;\n }\n return response;\n }\n };\n const { client: servicePluginsClient, initModule: initServicePluginModule } = servicePluginsModules(authStrategy);\n const { client: eventHandlersClient, initModule: initEventHandlerModule } = eventHandlersModules(authStrategy);\n const boundFetch = async (url, options) => {\n const authHeaders = await boundGetAuthHeaders();\n const defaultContentTypeHeader = getDefaultContentHeader(options);\n const response = await fetch(url, {\n ...options,\n headers: {\n ...defaultContentTypeHeader,\n ..._headers,\n ...authHeaders?.headers,\n ...options?.headers,\n ...config.host?.essentials?.passThroughHeaders,\n },\n });\n const consistentHeader = findConsistentHeader(response);\n if (consistentHeader) {\n _headers[X_WIX_CONSISTENT_HEADER] = consistentHeader;\n }\n return response;\n };\n // This is typed as `any` because when trying to properly type it as defined\n // on the WixClient, typescript starts failing with `Type instantiation is\n // excessively deep and possibly infinite.`\n const use = (modules, metadata) => {\n if (isEventHandlerModule(modules)) {\n return initEventHandlerModule(modules);\n }\n else if (isServicePluginModule(modules)) {\n return initServicePluginModule(modules);\n }\n else if (isHostModule(modules) && config.host) {\n return buildHostModule(modules, config.host);\n }\n else if (typeof modules === 'function') {\n // The generated namespaces all have the error classes on them and\n // a class is also a function, so we need to explicitly ignore these\n // error classes using a static field that exists on them.\n if ('__type' in modules && modules.__type === SERVICE_PLUGIN_ERROR_TYPE) {\n return modules;\n }\n const apiBaseUrl = config.host?.apiBaseUrl ?? DEFAULT_API_URL;\n const shouldUseCDN = config.useCDN === undefined ? config.auth?.shouldUseCDN : config.useCDN;\n return buildRESTDescriptor(runWithoutContext(() => isAmbassadorModule(modules))\n ? toHTTPModule(modules)\n : modules, metadata ?? {}, boundFetch, (relativeUrl, fetchOptions) => {\n const finalUrl = new URL(relativeUrl, `https://${apiBaseUrl}`);\n finalUrl.host = apiBaseUrl;\n finalUrl.protocol = 'https';\n return boundFetch(finalUrl.toString(), fetchOptions);\n }, authStrategy.getActiveToken, { HTTPHost: apiBaseUrl }, config.host?.name, shouldUseCDN);\n }\n else if (isObject(modules)) {\n return Object.fromEntries(Object.entries(modules).map(([key, value]) => {\n return [key, use(value, modules[PUBLIC_METADATA_KEY])];\n }));\n }\n else {\n return modules;\n }\n };\n const setHeaders = (headers) => {\n for (const k in headers) {\n _headers[k] = headers[k];\n }\n };\n const wrappedModules = config.modules\n ? use(config.modules)\n : {};\n return {\n ...wrappedModules,\n auth: authStrategy,\n setHeaders,\n use,\n enableContext(contextType, opts = { elevated: false }) {\n if (contextType === 'global') {\n if (globalThis.__wix_context__ != null) {\n if (opts.elevated) {\n globalThis.__wix_context__.elevatedClient = this;\n }\n else {\n globalThis.__wix_context__.client = this;\n }\n }\n else {\n if (opts.elevated) {\n globalThis.__wix_context__ = { elevatedClient: this };\n }\n else {\n globalThis.__wix_context__ = { client: this };\n }\n }\n }\n else {\n if (opts.elevated) {\n wixContext.elevatedClient = this;\n }\n else {\n wixContext.client = this;\n }\n }\n },\n /**\n * @param relativeUrl The URL to fetch relative to the API base URL\n * @param options The fetch options\n * @returns The fetch Response object\n * @deprecated Use `fetchWithAuth` instead\n */\n fetch: (relativeUrl, options) => {\n const apiBaseUrl = config.host?.apiBaseUrl ?? DEFAULT_API_URL;\n const finalUrl = new URL(relativeUrl, `https://${apiBaseUrl}`);\n finalUrl.host = apiBaseUrl;\n finalUrl.protocol = 'https';\n return boundFetch(finalUrl.toString(), options);\n },\n fetchWithAuth,\n async graphql(query, variables, opts = {\n apiVersion: 'alpha',\n }) {\n const apiBaseUrl = config?.host?.apiBaseUrl ?? DEFAULT_API_URL;\n const res = await boundFetch(`https://${apiBaseUrl}/graphql/${opts.apiVersion}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ query, variables }),\n });\n if (res.status !== 200) {\n throw new FetchErrorResponse(`GraphQL request failed with status ${res.status}`, res);\n }\n const { data, errors } = await res.json();\n return { data: data ?? {}, errors };\n },\n webhooks: eventHandlersClient,\n servicePlugins: servicePluginsClient,\n };\n}\nfunction findConsistentHeader(response) {\n return (response.headers?.get(X_WIX_CONSISTENT_HEADER) ??\n response.headers?.get(X_WIX_CONSISTENT_HEADER.toLowerCase()));\n}\n","const parseMethod = (method) => {\n switch (method) {\n case 'get':\n case 'GET':\n return 'GET';\n case 'post':\n case 'POST':\n return 'POST';\n case 'put':\n case 'PUT':\n return 'PUT';\n case 'delete':\n case 'DELETE':\n return 'DELETE';\n case 'patch':\n case 'PATCH':\n return 'PATCH';\n case 'head':\n case 'HEAD':\n return 'HEAD';\n case 'options':\n case 'OPTIONS':\n return 'OPTIONS';\n default:\n throw new Error(`Unknown method: ${method}`);\n }\n};\nexport const toHTTPModule = (factory) => (httpClient) => async (payload) => {\n let requestOptions;\n const HTTPFactory = (context) => {\n requestOptions = factory(payload)(context);\n if (requestOptions.url === undefined) {\n throw new Error('Url was not successfully created for this request, please reach out to support channels for assistance.');\n }\n const { method, url, params } = requestOptions;\n return {\n ...requestOptions,\n method: parseMethod(method),\n url,\n data: requestOptions.data,\n params,\n };\n };\n try {\n const response = await httpClient.request(HTTPFactory);\n if (requestOptions === undefined) {\n throw new Error('Request options were not created for this request, please reach out to support channels for assistance.');\n }\n const transformations = Array.isArray(requestOptions.transformResponse)\n ? requestOptions.transformResponse\n : [requestOptions.transformResponse];\n /**\n * Based on Axios implementation:\n * https://github.com/axios/axios/blob/3f53eb6960f05a1f88409c4b731a40de595cb825/lib/core/transformData.js#L22\n */\n let data = response.data;\n transformations.forEach((transform) => {\n if (transform) {\n data = transform(response.data, response.headers);\n }\n });\n return data;\n }\n catch (e) {\n if (typeof e === 'object' &&\n e !== null &&\n 'response' in e &&\n typeof e.response === 'object' &&\n e.response !== null &&\n 'data' in e.response) {\n throw e.response.data;\n }\n throw e;\n }\n};\n/*\n * Because of issues with tree-shaking, we cant really put static parameter on module.\n * We still have check for __isAmbassador for backward compatibility\n */\nexport const isAmbassadorModule = (module) => {\n if (module.__isAmbassador) {\n return true;\n }\n const fn = module();\n return Boolean(fn.__isAmbassador);\n};\n","export const PUBLIC_METADATA_KEY = '__metadata';\nexport const DEFAULT_API_URL = 'www.wixapis.com';\nexport const DEFAULT_EDGE_API_URL = 'edge.wixapis.com';\nexport const FORCE_WRITE_API_URLS = ['/ecom/v1/carts/current'];\n","export class FetchErrorResponse extends Error {\n message;\n response;\n constructor(message, response) {\n super(message);\n this.message = message;\n this.response = response;\n }\n async details() {\n const dataError = await this.response.json();\n return errorBuilder(this.response.status, dataError?.message, dataError?.details, {\n requestId: this.response.headers.get('X-Wix-Request-Id'),\n details: dataError,\n });\n }\n}\nconst errorBuilder = (code, description, details, data) => {\n return {\n details: {\n ...(!details?.validationError && {\n applicationError: {\n description,\n code,\n data,\n },\n }),\n ...details,\n },\n message: description,\n requestId: data?.requestId,\n };\n};\n","// we follow a simplified version of the axios convention\n// https://github.com/axios/axios/blob/649d739288c8e2c55829ac60e2345a0f3439c730/lib/defaults/index.js#L65\nexport const getDefaultContentHeader = (options) => {\n if (options?.method &&\n ['post', 'put', 'patch'].includes(options.method.toLocaleLowerCase()) &&\n options.body) {\n return { 'Content-Type': 'application/json' };\n }\n return {};\n};\nexport const isObject = (val) => val && typeof val === 'object' && !Array.isArray(val);\nexport function parsePublicKeyIfEncoded(publicKey) {\n if (publicKey.includes('\\n') || publicKey.includes('\\r')) {\n // publicKey is multi-line string, can be used as is\n return publicKey.trim();\n }\n else {\n // publicKey is base64 encoded\n return typeof atob !== 'undefined'\n ? atob(publicKey)\n : Buffer.from(publicKey, 'base64').toString('utf-8');\n }\n}\n","export const isHostModule = (val) => val.__type === 'host';\nexport function buildHostModule(val, host) {\n return val.create(host);\n}\n","export const WixBIHeaderName = 'x-wix-bi-gateway';\nexport function biHeaderGenerator(apiMetadata, publicMetadata, environment) {\n return {\n [WixBIHeaderName]: objectToKeyValue({\n environment: `js-sdk${environment ? `-${environment}` : ``}`,\n 'package-name': apiMetadata.packageName ?? publicMetadata?.PACKAGE_NAME,\n 'method-fqn': apiMetadata.methodFqn,\n entity: apiMetadata.entityFqdn,\n }),\n };\n}\nfunction objectToKeyValue(input) {\n return Object.entries(input)\n .filter(([_, value]) => Boolean(value))\n .map(([key, value]) => `${key}=${value}`)\n .join(',');\n}\n","import { biHeaderGenerator } from './bi/biHeaderGenerator.js';\nimport { DEFAULT_API_URL, DEFAULT_EDGE_API_URL } from './common.js';\nimport { runWithoutContext } from '@wix/sdk-runtime/context';\nexport function buildRESTDescriptor(origFunc, publicMetadata, boundFetch, wixAPIFetch, getActiveToken, options, hostName, useCDN) {\n return runWithoutContext(() => origFunc({\n request: async (factory) => {\n const requestOptions = factory({\n host: options?.HTTPHost || DEFAULT_API_URL,\n });\n let request = requestOptions;\n if (request.method === 'GET' &&\n request.fallback?.length &&\n request.params.toString().length > 4000) {\n request = requestOptions.fallback[0];\n }\n const domain = options?.HTTPHost ?? DEFAULT_API_URL;\n let url = `https://${useCDN ? DEFAULT_EDGE_API_URL : domain}${request.url}`;\n if (request.params && request.params.toString()) {\n url += `?${request.params.toString()}`;\n }\n try {\n const biHeader = biHeaderGenerator(requestOptions, publicMetadata, hostName);\n const res = await boundFetch(url, {\n method: request.method,\n ...(request.data && {\n body: JSON.stringify(request.data),\n }),\n headers: {\n ...biHeader,\n },\n });\n if (res.status !== 200) {\n let dataError = null;\n try {\n dataError = await res.json();\n }\n catch (e) {\n //\n }\n throw errorBuilder(res.status, dataError?.message, dataError?.details, {\n requestId: res.headers.get('X-Wix-Request-Id'),\n details: dataError,\n });\n }\n const data = await res.json();\n return {\n data,\n headers: res.headers,\n status: res.status,\n statusText: res.statusText,\n };\n }\n catch (e) {\n if (e.message?.includes('fetch is not defined')) {\n console.error('Node.js v18+ is required');\n }\n throw e;\n }\n },\n fetchWithAuth: boundFetch,\n wixAPIFetch,\n getActiveToken,\n }));\n}\nconst errorBuilder = (code, description, details, data) => {\n return {\n response: {\n data: {\n details: {\n ...(!details?.validationError && {\n applicationError: {\n description,\n code,\n data,\n },\n }),\n ...details,\n },\n message: description,\n },\n status: code,\n },\n requestId: data?.requestId,\n };\n};\n","import { EventDefinition, } from '@wix/sdk-types';\nimport { createNanoEvents } from './nanoevents.js';\nexport const isEventHandlerModule = (val) => val.__type === 'event-definition';\nexport function buildEventDefinition(eventDefinition, registerHandler) {\n return (handler) => {\n registerHandler(eventDefinition, handler);\n };\n}\nfunction runHandler(eventDefinition, handler, payload, baseEventMetadata) {\n let envelope;\n if (eventDefinition.isDomainEvent) {\n const domainEventPayload = payload;\n const { deletedEvent, actionEvent, createdEvent, updatedEvent, ...domainEventMetadata } = domainEventPayload;\n const metadata = {\n ...baseEventMetadata,\n ...domainEventMetadata,\n };\n if (deletedEvent) {\n if (deletedEvent?.deletedEntity) {\n envelope = {\n entity: deletedEvent?.deletedEntity,\n metadata,\n };\n }\n else {\n envelope = { metadata };\n }\n }\n else if (actionEvent) {\n envelope = {\n data: actionEvent.body,\n metadata,\n };\n }\n else {\n envelope = {\n entity: createdEvent?.entity ?? updatedEvent?.currentEntity,\n metadata,\n };\n }\n }\n else {\n envelope = {\n data: payload,\n metadata: baseEventMetadata,\n };\n }\n const transformFromRESTFn = eventDefinition.transformations ?? ((x) => x);\n return handler(transformFromRESTFn(envelope));\n}\nexport function eventHandlersModules(authStrategy) {\n const eventHandlers = new Map();\n const webhooksEmitter = createNanoEvents();\n const client = {\n ...webhooksEmitter,\n getRegisteredEvents: () => eventHandlers,\n async process(jwt, opts = {\n expectedEvents: [],\n }) {\n const { eventType, identity, instanceId, payload } = await this.parseJWT(jwt);\n const allExpectedEvents = [\n ...opts.expectedEvents,\n ...Array.from(eventHandlers.keys()).map((type) => ({ type })),\n ];\n if (allExpectedEvents.length > 0 &&\n !allExpectedEvents.some(({ type }) => type === eventType)) {\n throw new Error(`Unexpected event type: ${eventType}. Expected one of: ${allExpectedEvents\n .map((x) => x.type)\n .join(', ')}`);\n }\n const handlers = eventHandlers.get(eventType) ?? [];\n await Promise.all(handlers.map(({ eventDefinition, handler }) => runHandler(eventDefinition, handler, payload, {\n instanceId,\n identity,\n })));\n return {\n instanceId,\n eventType,\n payload,\n identity,\n };\n },\n async processRequest(request, opts) {\n const body = await request.text();\n return this.process(body, opts);\n },\n async parseJWT(jwt) {\n if (!authStrategy.decodeJWT) {\n throw new Error('decodeJWT is not supported by the authentication strategy');\n }\n const { decoded, valid } = await authStrategy.decodeJWT(jwt);\n if (!valid) {\n throw new Error('JWT is not valid');\n }\n if (typeof decoded.data !== 'string') {\n throw new Error(`Unexpected type of JWT data: expected string, got ${typeof decoded.data}`);\n }\n const parsedDecoded = JSON.parse(decoded.data);\n const eventType = parsedDecoded.eventType;\n const instanceId = parsedDecoded.instanceId;\n const identity = parsedDecoded.identity\n ? JSON.parse(parsedDecoded.identity)\n : undefined;\n const payload = JSON.parse(parsedDecoded.data);\n return {\n instanceId,\n eventType,\n payload,\n identity,\n };\n },\n async parseRequest(request) {\n const jwt = await request.text();\n return this.parseJWT(jwt);\n },\n async executeHandlers(event) {\n const allExpectedEvents = Array.from(eventHandlers.keys()).map((type) => ({ type }));\n if (allExpectedEvents.length > 0 &&\n !allExpectedEvents.some(({ type }) => type === event.eventType)) {\n throw new Error(`Unexpected event type: ${event.eventType}. Expected one of: ${allExpectedEvents\n .map((x) => x.type)\n .join(', ')}`);\n }\n const handlers = eventHandlers.get(event.eventType) ?? [];\n await Promise.all(handlers.map(({ eventDefinition, handler }) => runHandler(eventDefinition, handler, event.payload, {\n instanceId: event.instanceId,\n identity: event.identity,\n })));\n },\n apps: {\n AppInstalled: EventDefinition('AppInstalled')(),\n AppRemoved: EventDefinition('AppRemoved')(),\n },\n };\n return {\n initModule(eventDefinition) {\n return (handler) => {\n const handlers = eventHandlers.get(eventDefinition.type) ?? [];\n handlers.push({ eventDefinition, handler });\n eventHandlers.set(eventDefinition.type, handlers);\n webhooksEmitter.emit('registered', eventDefinition);\n };\n },\n client,\n };\n}\n","// Inlined from https://github.com/ai/nanoevents/blob/main/index.js\n/**\n * Create event emitter.\n *\n * ```js\n * import { createNanoEvents } from 'nanoevents'\n *\n * class Ticker {\n * constructor() {\n * this.emitter = createNanoEvents()\n * }\n * on(...args) {\n * return this.emitter.on(...args)\n * }\n * tick() {\n * this.emitter.emit('tick')\n * }\n * }\n * ```\n * @returns Event emitter.\n */\nexport function createNanoEvents() {\n return {\n emit(event, ...args) {\n for (let i = 0, callbacks = this.events[event] || [], length = callbacks.length; i < length; i++) {\n callbacks[i](...args);\n }\n },\n events: {},\n on(event, cb) {\n (this.events[event] ||= []).push(cb);\n return () => {\n this.events[event] = this.events[event]?.filter((i) => cb !== i);\n };\n },\n };\n}\n","import { createNanoEvents } from './nanoevents.js';\nexport const isServicePluginModule = (val) => val.__type === 'service-plugin-definition';\nexport function servicePluginsModules(authStrategy) {\n const servicePluginsImplementations = new Map();\n const servicePluginsEmitter = createNanoEvents();\n const client = {\n ...servicePluginsEmitter,\n getRegisteredServicePlugins: () => servicePluginsImplementations,\n async parseJWT(jwt) {\n if (!authStrategy.decodeJWT) {\n throw new Error('decodeJWT is not supported by the authentication strategy');\n }\n const { decoded, valid } = await authStrategy.decodeJWT(jwt, true);\n if (!valid) {\n throw new Error('JWT is not valid');\n }\n if (typeof decoded.data !== 'object' ||\n decoded.data === null ||\n !('metadata' in decoded.data) ||\n typeof decoded.data.metadata !== 'object' ||\n decoded.data.metadata === null ||\n !('appExtensionType' in decoded.data.metadata) ||\n typeof decoded.data.metadata.appExtensionType !== 'string') {\n throw new Error('Unexpected JWT data: expected object with metadata.appExtensionType string');\n }\n return decoded.data;\n },\n async process(request) {\n const servicePluginRequest = await this.parseJWT(request.body);\n return this.executeHandler(servicePluginRequest, request.url);\n },\n async parseRequest(request) {\n const body = await request.text();\n return this.parseJWT(body);\n },\n async processRequest(request) {\n const url = request.url;\n const body = await request.text();\n try {\n const implMethodResult = await this.process({ url, body });\n return Response.json(implMethodResult);\n }\n catch (err) {\n if (err.errorType === 'SPI' && err.applicationCode && err.httpCode) {\n return Response.json({ applicationError: { code: err.applicationCode, data: err.data } }, { status: err.httpCode });\n }\n throw err;\n }\n },\n async executeHandler(servicePluginRequest, url) {\n const componentType = servicePluginRequest.metadata.appExtensionType.toLowerCase();\n const implementations = servicePluginsImplementations.get(componentType) ?? [];\n if (implementations.length === 0) {\n throw new Error(`No service plugin implementations found for component type ${componentType}`);\n }\n else if (implementations.length > 1) {\n throw new Error(`Multiple service plugin implementations found for component type ${componentType}. This is currently not supported`);\n }\n const { implementation: impl, servicePluginDefinition } = implementations[0];\n const method = servicePluginDefinition.methods.find((m) => url.endsWith(m.primaryHttpMappingPath));\n if (!method) {\n throw new Error('Unexpect request: request url did not match any method: ' + url);\n }\n const implMethod = impl[method.name];\n if (!implMethod) {\n throw new Error(`Got request for service plugin method ${method.name} but no implementation was provided. Available methods: ${Object.keys(impl).join(', ')}`);\n }\n return method.transformations.toREST(await implMethod(method.transformations.fromREST(servicePluginRequest)));\n },\n };\n return {\n initModule(servicePluginDefinition) {\n return (implementation) => {\n const implementations = servicePluginsImplementations.get(servicePluginDefinition.componentType.toLowerCase()) ?? [];\n implementations.push({ servicePluginDefinition, implementation });\n servicePluginsImplementations.set(servicePluginDefinition.componentType.toLowerCase(), implementations);\n servicePluginsEmitter.emit('registered', servicePluginDefinition);\n };\n },\n client,\n };\n}\n"],"mappings":"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","names":["init_browser","wixContext","parseMethod","method","toHTTPModule","factory","httpClient","payload","requestOptions","HTTPFactory","context","url","params","response","transformations","data","transform","e","isAmbassadorModule","module","PUBLIC_METADATA_KEY","DEFAULT_API_URL","DEFAULT_EDGE_API_URL","FetchErrorResponse","message","response","__publicField","dataError","errorBuilder","code","description","details","data","getDefaultContentHeader","options","isObject","val","isHostModule","val","buildHostModule","host","WixBIHeaderName","biHeaderGenerator","apiMetadata","publicMetadata","environment","objectToKeyValue","input","_","value","key","buildRESTDescriptor","origFunc","publicMetadata","boundFetch","wixAPIFetch","getActiveToken","options","hostName","useCDN","runWithoutContext","factory","requestOptions","DEFAULT_API_URL","request","domain","url","DEFAULT_EDGE_API_URL","biHeader","biHeaderGenerator","res","dataError","errorBuilder","e","code","description","details","data","init_browser","createNanoEvents","event","args","i","callbacks","length","cb","isEventHandlerModule","val","runHandler","eventDefinition","handler","payload","baseEventMetadata","envelope","domainEventPayload","deletedEvent","actionEvent","createdEvent","updatedEvent","domainEventMetadata","metadata","transformFromRESTFn","x","eventHandlersModules","authStrategy","eventHandlers","webhooksEmitter","createNanoEvents","client","jwt","opts","eventType","identity","instanceId","allExpectedEvents","type","handlers","request","body","decoded","valid","parsedDecoded","event","EventDefinition","isServicePluginModule","val","servicePluginsModules","authStrategy","servicePluginsImplementations","servicePluginsEmitter","createNanoEvents","client","jwt","decoded","valid","request","servicePluginRequest","body","url","implMethodResult","err","componentType","implementations","impl","servicePluginDefinition","method","m","implMethod","implementation","X_WIX_CONSISTENT_HEADER","createClient","config","_headers","authStrategy","_","boundGetAuthHeaders","fetchWithAuth","urlOrRequest","requestInit","authHeaders","headers","response","consistentHeader","findConsistentHeader","k","v","servicePluginsClient","initServicePluginModule","servicePluginsModules","eventHandlersClient","initEventHandlerModule","eventHandlersModules","boundFetch","url","options","defaultContentTypeHeader","getDefaultContentHeader","use","modules","metadata","isEventHandlerModule","isServicePluginModule","isHostModule","buildHostModule","SERVICE_PLUGIN_ERROR_TYPE","apiBaseUrl","DEFAULT_API_URL","shouldUseCDN","buildRESTDescriptor","runWithoutContext","isAmbassadorModule","toHTTPModule","relativeUrl","fetchOptions","finalUrl","isObject","key","value","PUBLIC_METADATA_KEY","setHeaders","contextType","opts","wixContext","query","variables","res","FetchErrorResponse","data","errors"]}
@@ -1,2 +1,2 @@
1
- import{a as N,b as q}from"./chunk-LPGY6RYR.js";import{a as K}from"./chunk-MM2KVUBI.js";import"./chunk-BGTZ3RNN.js";import"./chunk-7EYXEF6M.js";import"./chunk-SBZEOPXX.js";function U(){return U=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},U.apply(null,arguments)}import He,{useEffect as Le,useState as ge}from"react";function w(e){"@babel/helpers - typeof";return w=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},w(e)}function J(e,t){if(w(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(w(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function G(e){var t=J(e,"string");return w(t)=="symbol"?t:t+""}function Q(e,t,n){return(t=G(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var S=class extends Error{constructor(t){let{message:n,code:r}=t;super(n),Q(this,"code",void 0),this.message=n,this.code=r}};var $=()=>{let e=u=>{let{channel:o}=u;return function(){let f=o.showToast(...arguments);return{remove:()=>Promise.resolve(f).then(h=>h.remove())}}},t=u=>{let{channel:o}=u;return function(){let f=o.observeState(...arguments);return{disconnect:()=>Promise.resolve(f).then(h=>h.disconnect())}}};return{showToast:e,observeState:t,navigate:u=>{let{channel:o}=u;return function(){return o.navigate(...arguments)}},navigateBack:u=>{let{channel:o}=u;return()=>o.navigateBack()},openModal:u=>{let{channel:o}=u;return(f,g)=>{let[h,A]=typeof f=="string"?[f,g]:[f.modalId,f.params],E=o.openModal(h,A);return{modalClosed:Promise.resolve(E).then(y=>y.modalClosed)}}},closeModal:u=>{let{channel:o}=u;return f=>{if(f===void 0)return o.closeModal();let g=JSON.parse(JSON.stringify(f));return o.closeModal(g)}},getAccessToken:u=>{let{channel:o}=u;return()=>o.getAccessToken()},getPageUrl:u=>{let{channel:o}=u;return function(){return o.getPageUrl(...arguments)}},openMediaManager:u=>{let{channel:o}=u;return function(){return o.openMediaManager(...arguments)}},addSitePlugin:u=>{let{channel:o}=u;return(f,g)=>{let h="802c76e4-b381-4bb3-9152-96acabbf3194",A=g?.placement||{},E=o.openModal(h,{...A,pluginId:f,action:"populate"});return Promise.resolve(E).then(y=>y.modalClosed).then(y=>{if(y?.type===void 0)throw new S({message:"Aborted by user",code:3006});if(y?.type==="ERROR")throw new S(y.data.error)})}},onBeforeUnload:u=>{let{channel:o}=u;return function(){return o.onBeforeUnload(...arguments)}},setPageTitle:u=>{let{channel:o}=u;return f=>o.setPageTitle(f)},getLanguage:u=>{let o=null;return async()=>{var f;if(o)return o;let g=null;return o=await new Promise(h=>{g=t(u)((A,E)=>{h(E.language)})}),(f=g)==null||f.disconnect(),o}},requestFeedback:u=>{let{channel:o}=u;return function(){return o.requestFeedback(...arguments)}},onLayerStateChange:u=>{let{channel:o}=u;return function(){let f=o.onLayerStateChange(...arguments);return{remove:()=>Promise.resolve(f).then(h=>h.remove())}}},installApp:u=>{let{channel:o}=u;return o.installApp},getWidget:u=>{let{channel:o}=u;return function(){if("getWidget"in o)return o.getWidget(...arguments);throw new Error("Unsupported")}},getDashboardPlugins:u=>{let{channel:o}=u;return function(){if("getDashboardPlugins"in o)return o.getDashboardPlugins(...arguments);throw new Error("Unsupported")}},getDashboardMenuPlugins:u=>{let{channel:o}=u;return function(){if("getDashboardMenuPlugins"in o)return o.getDashboardMenuPlugins(...arguments);throw new Error("Unsupported")}}}};var X=e=>{let{createHost:t}=e,n=$();return{...N(n),host:t,auth:()=>({getAuthHeaders:async r=>({headers:{Authorization:await n.getAccessToken(r)()}})})}};var Z=Symbol("Comlink.proxy"),ye=Symbol("Comlink.endpoint"),D=Symbol("Comlink.releaseProxy"),L=Symbol("Comlink.thrown"),ee=e=>typeof e=="object"&&e!==null||typeof e=="function",be={canHandle:e=>ee(e)&&e[Z],serialize(e){let{port1:t,port2:n}=new MessageChannel;return _(e,t),[n,[n]]},deserialize(e){return e.start(),B(e)}},we={canHandle:e=>ee(e)&&L in e,serialize({value:e}){let t;return e instanceof Error?t={isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:t={isError:!1,value:e},[t,[]]},deserialize(e){throw e.isError?Object.assign(new Error(e.value.message),e.value):e.value}},te=new Map([["proxy",be],["throw",we]]);function _(e,t=self){t.addEventListener("message",function n(r){if(!r||!r.data)return;let{id:s,type:a,path:c}=Object.assign({path:[]},r.data),i=(r.data.argumentList||[]).map(P),l;try{let d=c.slice(0,-1).reduce((m,b)=>m[b],e),p=c.reduce((m,b)=>m[b],e);switch(a){case 0:l=p;break;case 1:d[c.slice(-1)[0]]=P(r.data.value),l=!0;break;case 2:l=p.apply(d,i);break;case 3:{let m=new p(...i);l=k(m)}break;case 4:{let{port1:m,port2:b}=new MessageChannel;_(e,b),l=ve(m,[m])}break;case 5:l=void 0;break}}catch(d){l={value:d,[L]:0}}Promise.resolve(l).catch(d=>({value:d,[L]:0})).then(d=>{let[p,m]=W(d);t.postMessage(Object.assign(Object.assign({},p),{id:s}),m),a===5&&(t.removeEventListener("message",n),ne(t))})}),t.start&&t.start()}function Pe(e){return e.constructor.name==="MessagePort"}function ne(e){Pe(e)&&e.close()}function B(e,t){return R(e,[],t)}function C(e){if(e)throw new Error("Proxy has been released and is not useable")}function R(e,t=[],n=function(){}){let r=!1,s=new Proxy(n,{get(a,c){if(C(r),c===D)return()=>v(e,{type:5,path:t.map(i=>i.toString())}).then(()=>{ne(e),r=!0});if(c==="then"){if(t.length===0)return{then:()=>s};let i=v(e,{type:0,path:t.map(l=>l.toString())}).then(P);return i.then.bind(i)}return R(e,[...t,c])},set(a,c,i){C(r);let[l,d]=W(i);return v(e,{type:1,path:[...t,c].map(p=>p.toString()),value:l},d).then(P)},apply(a,c,i){C(r);let l=t[t.length-1];if(l===ye)return v(e,{type:4}).then(P);if(l==="bind")return R(e,t.slice(0,-1));let[d,p]=Y(i);return v(e,{type:2,path:t.map(m=>m.toString()),argumentList:d},p).then(P)},construct(a,c){C(r);let[i,l]=Y(c);return v(e,{type:3,path:t.map(d=>d.toString()),argumentList:i},l).then(P)}});return s}function xe(e){return Array.prototype.concat.apply([],e)}function Y(e){let t=e.map(W);return[t.map(n=>n[0]),xe(t.map(n=>n[1]))]}var re=new WeakMap;function ve(e,t){return re.set(e,t),e}function k(e){return Object.assign(e,{[Z]:!0})}function W(e){for(let[t,n]of te)if(n.canHandle(e)){let[r,s]=n.serialize(e);return[{type:3,name:t,value:r},s]}return[{type:0,value:e},re.get(e)||[]]}function P(e){switch(e.type){case 3:return te.get(e.name).deserialize(e.value);case 0:return e.value}}function v(e,t,n){return new Promise(r=>{let s=Me();e.addEventListener("message",function a(c){!c.data||!c.data.id||c.data.id!==s||(e.removeEventListener("message",a),r(c.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:s},t),n)})}function Me(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}var T="__proxyCallbackId__wixSDK__",I="__proxyPromiseId__wixSDK__",se=e=>Se(e,t=>async function(){for(var n=arguments.length,r=new Array(n),s=0;s<n;s++)r[s]=arguments[s];let[a,c]=j(r),i=await t(k(a),c);return ae(i)});var Ee=async e=>{let[t,n]=j(await e);return k({proxies:t,clonables:n})},ae=async e=>H(e?.proxies,await e?.clonables),j=e=>{let t=(s,a)=>{if(ie(a)){let c=oe();return s.promises[c]=a,{[I]:c}}if(ke(a)){let c=oe();return s.callbacks[c]=(i,l)=>{let d=H(i,l),p=a(...d);return Ee(p)},{[T]:c}}return Array.isArray(a)?a.map(c=>t(s,c)):O(a)?ce(a,c=>t(s,c)):a},n={promises:{},callbacks:{}},r=t(n,e);return[n,r]},H=(e,t)=>{if(Array.isArray(t))return t.map(n=>H(e,n));if(O(t)&&t.hasOwnProperty(I)){let n=t[I];return e.promises[n]}if(O(t)&&t.hasOwnProperty(T)){let n=t[T];return async function(){for(var r=arguments.length,s=new Array(r),a=0;a<r;a++)s[a]=arguments[a];let[c,i]=j(s),l=await e.callbacks[n](k(c),i);return ae(l)}}return O(t)?ce(t,n=>H(e,n)):t},Se=(e,t)=>new Proxy(e,{get(n,r){return n[r]?t(n[r]):()=>{throw new Error(`Serialization error occurred while accessing ${r} property of ${n}`)}}}),ie=e=>e instanceof Promise,O=e=>e&&typeof e=="object"&&!ie(e),ke=e=>typeof e=="function",ce=(e,t)=>{let n=r=>{let[s,a]=r;return[s,t(a)]};return Object.fromEntries(Object.entries(e).map(n))},oe=(()=>{let e=0;return()=>++e})();var Ae="wix-sdk-bo-hello-handshake",ue=e=>{let{postMessage:t,origin:n}=e,{port1:r,port2:s}=new MessageChannel;t({code:Ae,version:"1.0.0",port:s},n,[s]);let i=se(B(r));return{channel:i,close:()=>i[D]()}};var le=(e,t)=>{let n=()=>e.updateHeight(t.offsetHeight),r=new ResizeObserver(n);return r.observe(t),()=>r.disconnect()};var Ue=["https://manage.wix.com","https://manage.editorx.com"],Ce=new Set(Ue),de=e=>Ce.has(e);var fe=e=>{let t=new EventTarget,n=typeof window>"u",r=i=>{t.dispatchEvent(new CustomEvent("beforeunload",{cancelable:!0}))||(i.preventDefault(),i.returnValue=!0)},s=e.onBeforeUnload(r),a=()=>{n||window.removeEventListener("beforeunload",r),s.then(i=>{let{remove:l}=i;return l()})};return n||(window.addEventListener("beforeunload",r),window.addEventListener("unload",a)),{onBeforeUnload:i=>(t.addEventListener("beforeunload",i),{remove:()=>{t.removeEventListener("beforeunload",i)}}),clearBeforeUnloadHandler:a}};function Oe(e){if(e)try{return JSON.parse(decodeURIComponent(e))}catch(t){console.warn('Failed to parse "essentials" query parameter. Make sure to run the code inside a supported Wix App extension.',t);return}}function me(e){return e.has("essentials")?Oe(e.get("essentials")):void 0}var pe=function(e){e===void 0&&(e={});let t=e.fullUrl&&new URL(e.fullUrl).search||typeof window<"u"&&window.location.search||"",n=new URLSearchParams(t),r=e.origin||n.get("origin")||"",s=e.postMessage||window.parent.postMessage.bind(window.parent);if(!de(r))throw new Error("Wix Dashboard SDK: Unable to establish a connection with the Wix dashboard. Please ensure that you are running your app within the Wix dashboard.");let{channel:a,close:c}=ue({postMessage:s,origin:r}),i=[c];if(e.autoHeightUpdate===void 0||e.autoHeightUpdate){let x=e.autoHeightElement||document.documentElement,M=le(a,x);i.push(()=>M())}let{onBeforeUnload:l,clearBeforeUnloadHandler:d}=fe(a);i.push(d);let p=new Proxy(a,{get(x,M,F){return M==="onBeforeUnload"?l:Reflect.get(x,M,F)}}),{monitoring:m,...b}=me(n)||{},V=q({hostContext:m?.context,monitoringConfig:m?.config,sentrySDK:typeof window<"u"?window.Sentry:void 0});return{channel:p,close:()=>i.forEach(x=>x()),getMonitoringClient:V,essentials:b}};var z=X({createHost:pe});var he=(e,t)=>{let[n,r]=ge(()=>e());return t(n)&&r(e()),n},Re=e=>t=>{let{host:n,compProps:r}=De(t);return he(()=>(K({auth:z.auth(),host:n}).enableContext("module"),n),s=>s!==n),r?He.createElement(e,U({host:n},r)):null},De=e=>{let{host:t,...n}=e,{host:r,hostType:s}=he(()=>t?{host:t,hostType:"local"}:{host:z.host(),hostType:"remote"},i=>!!t&&t!==i.host),[a,c]=ge(void 0);return Le(()=>{if(s==="local")return;let i=r.channel.observeState(d=>{c(d||{})}),l=async()=>{(await i).disconnect(),r.close()};return()=>{l()}},[r,s]),s==="local"?{host:r,compProps:n}:{host:r,compProps:a?{...a,...n}:void 0}};export{Re as withContextualWixClient};
1
+ import{a as N,b as q}from"./chunk-LPGY6RYR.js";import{a as K}from"./chunk-25LMXVNI.js";import"./chunk-BGTZ3RNN.js";import"./chunk-7EYXEF6M.js";import"./chunk-SBZEOPXX.js";function U(){return U=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},U.apply(null,arguments)}import He,{useEffect as Le,useState as ge}from"react";function w(e){"@babel/helpers - typeof";return w=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},w(e)}function J(e,t){if(w(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(w(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function G(e){var t=J(e,"string");return w(t)=="symbol"?t:t+""}function Q(e,t,n){return(t=G(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var S=class extends Error{constructor(t){let{message:n,code:r}=t;super(n),Q(this,"code",void 0),this.message=n,this.code=r}};var $=()=>{let e=u=>{let{channel:o}=u;return function(){let f=o.showToast(...arguments);return{remove:()=>Promise.resolve(f).then(h=>h.remove())}}},t=u=>{let{channel:o}=u;return function(){let f=o.observeState(...arguments);return{disconnect:()=>Promise.resolve(f).then(h=>h.disconnect())}}};return{showToast:e,observeState:t,navigate:u=>{let{channel:o}=u;return function(){return o.navigate(...arguments)}},navigateBack:u=>{let{channel:o}=u;return()=>o.navigateBack()},openModal:u=>{let{channel:o}=u;return(f,g)=>{let[h,A]=typeof f=="string"?[f,g]:[f.modalId,f.params],E=o.openModal(h,A);return{modalClosed:Promise.resolve(E).then(y=>y.modalClosed)}}},closeModal:u=>{let{channel:o}=u;return f=>{if(f===void 0)return o.closeModal();let g=JSON.parse(JSON.stringify(f));return o.closeModal(g)}},getAccessToken:u=>{let{channel:o}=u;return()=>o.getAccessToken()},getPageUrl:u=>{let{channel:o}=u;return function(){return o.getPageUrl(...arguments)}},openMediaManager:u=>{let{channel:o}=u;return function(){return o.openMediaManager(...arguments)}},addSitePlugin:u=>{let{channel:o}=u;return(f,g)=>{let h="802c76e4-b381-4bb3-9152-96acabbf3194",A=g?.placement||{},E=o.openModal(h,{...A,pluginId:f,action:"populate"});return Promise.resolve(E).then(y=>y.modalClosed).then(y=>{if(y?.type===void 0)throw new S({message:"Aborted by user",code:3006});if(y?.type==="ERROR")throw new S(y.data.error)})}},onBeforeUnload:u=>{let{channel:o}=u;return function(){return o.onBeforeUnload(...arguments)}},setPageTitle:u=>{let{channel:o}=u;return f=>o.setPageTitle(f)},getLanguage:u=>{let o=null;return async()=>{var f;if(o)return o;let g=null;return o=await new Promise(h=>{g=t(u)((A,E)=>{h(E.language)})}),(f=g)==null||f.disconnect(),o}},requestFeedback:u=>{let{channel:o}=u;return function(){return o.requestFeedback(...arguments)}},onLayerStateChange:u=>{let{channel:o}=u;return function(){let f=o.onLayerStateChange(...arguments);return{remove:()=>Promise.resolve(f).then(h=>h.remove())}}},installApp:u=>{let{channel:o}=u;return o.installApp},getWidget:u=>{let{channel:o}=u;return function(){if("getWidget"in o)return o.getWidget(...arguments);throw new Error("Unsupported")}},getDashboardPlugins:u=>{let{channel:o}=u;return function(){if("getDashboardPlugins"in o)return o.getDashboardPlugins(...arguments);throw new Error("Unsupported")}},getDashboardMenuPlugins:u=>{let{channel:o}=u;return function(){if("getDashboardMenuPlugins"in o)return o.getDashboardMenuPlugins(...arguments);throw new Error("Unsupported")}}}};var X=e=>{let{createHost:t}=e,n=$();return{...N(n),host:t,auth:()=>({getAuthHeaders:async r=>({headers:{Authorization:await n.getAccessToken(r)()}})})}};var Z=Symbol("Comlink.proxy"),ye=Symbol("Comlink.endpoint"),D=Symbol("Comlink.releaseProxy"),L=Symbol("Comlink.thrown"),ee=e=>typeof e=="object"&&e!==null||typeof e=="function",be={canHandle:e=>ee(e)&&e[Z],serialize(e){let{port1:t,port2:n}=new MessageChannel;return _(e,t),[n,[n]]},deserialize(e){return e.start(),B(e)}},we={canHandle:e=>ee(e)&&L in e,serialize({value:e}){let t;return e instanceof Error?t={isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:t={isError:!1,value:e},[t,[]]},deserialize(e){throw e.isError?Object.assign(new Error(e.value.message),e.value):e.value}},te=new Map([["proxy",be],["throw",we]]);function _(e,t=self){t.addEventListener("message",function n(r){if(!r||!r.data)return;let{id:s,type:a,path:c}=Object.assign({path:[]},r.data),i=(r.data.argumentList||[]).map(P),l;try{let d=c.slice(0,-1).reduce((m,b)=>m[b],e),p=c.reduce((m,b)=>m[b],e);switch(a){case 0:l=p;break;case 1:d[c.slice(-1)[0]]=P(r.data.value),l=!0;break;case 2:l=p.apply(d,i);break;case 3:{let m=new p(...i);l=k(m)}break;case 4:{let{port1:m,port2:b}=new MessageChannel;_(e,b),l=ve(m,[m])}break;case 5:l=void 0;break}}catch(d){l={value:d,[L]:0}}Promise.resolve(l).catch(d=>({value:d,[L]:0})).then(d=>{let[p,m]=W(d);t.postMessage(Object.assign(Object.assign({},p),{id:s}),m),a===5&&(t.removeEventListener("message",n),ne(t))})}),t.start&&t.start()}function Pe(e){return e.constructor.name==="MessagePort"}function ne(e){Pe(e)&&e.close()}function B(e,t){return R(e,[],t)}function C(e){if(e)throw new Error("Proxy has been released and is not useable")}function R(e,t=[],n=function(){}){let r=!1,s=new Proxy(n,{get(a,c){if(C(r),c===D)return()=>v(e,{type:5,path:t.map(i=>i.toString())}).then(()=>{ne(e),r=!0});if(c==="then"){if(t.length===0)return{then:()=>s};let i=v(e,{type:0,path:t.map(l=>l.toString())}).then(P);return i.then.bind(i)}return R(e,[...t,c])},set(a,c,i){C(r);let[l,d]=W(i);return v(e,{type:1,path:[...t,c].map(p=>p.toString()),value:l},d).then(P)},apply(a,c,i){C(r);let l=t[t.length-1];if(l===ye)return v(e,{type:4}).then(P);if(l==="bind")return R(e,t.slice(0,-1));let[d,p]=Y(i);return v(e,{type:2,path:t.map(m=>m.toString()),argumentList:d},p).then(P)},construct(a,c){C(r);let[i,l]=Y(c);return v(e,{type:3,path:t.map(d=>d.toString()),argumentList:i},l).then(P)}});return s}function xe(e){return Array.prototype.concat.apply([],e)}function Y(e){let t=e.map(W);return[t.map(n=>n[0]),xe(t.map(n=>n[1]))]}var re=new WeakMap;function ve(e,t){return re.set(e,t),e}function k(e){return Object.assign(e,{[Z]:!0})}function W(e){for(let[t,n]of te)if(n.canHandle(e)){let[r,s]=n.serialize(e);return[{type:3,name:t,value:r},s]}return[{type:0,value:e},re.get(e)||[]]}function P(e){switch(e.type){case 3:return te.get(e.name).deserialize(e.value);case 0:return e.value}}function v(e,t,n){return new Promise(r=>{let s=Me();e.addEventListener("message",function a(c){!c.data||!c.data.id||c.data.id!==s||(e.removeEventListener("message",a),r(c.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:s},t),n)})}function Me(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}var T="__proxyCallbackId__wixSDK__",I="__proxyPromiseId__wixSDK__",se=e=>Se(e,t=>async function(){for(var n=arguments.length,r=new Array(n),s=0;s<n;s++)r[s]=arguments[s];let[a,c]=j(r),i=await t(k(a),c);return ae(i)});var Ee=async e=>{let[t,n]=j(await e);return k({proxies:t,clonables:n})},ae=async e=>H(e?.proxies,await e?.clonables),j=e=>{let t=(s,a)=>{if(ie(a)){let c=oe();return s.promises[c]=a,{[I]:c}}if(ke(a)){let c=oe();return s.callbacks[c]=(i,l)=>{let d=H(i,l),p=a(...d);return Ee(p)},{[T]:c}}return Array.isArray(a)?a.map(c=>t(s,c)):O(a)?ce(a,c=>t(s,c)):a},n={promises:{},callbacks:{}},r=t(n,e);return[n,r]},H=(e,t)=>{if(Array.isArray(t))return t.map(n=>H(e,n));if(O(t)&&t.hasOwnProperty(I)){let n=t[I];return e.promises[n]}if(O(t)&&t.hasOwnProperty(T)){let n=t[T];return async function(){for(var r=arguments.length,s=new Array(r),a=0;a<r;a++)s[a]=arguments[a];let[c,i]=j(s),l=await e.callbacks[n](k(c),i);return ae(l)}}return O(t)?ce(t,n=>H(e,n)):t},Se=(e,t)=>new Proxy(e,{get(n,r){return n[r]?t(n[r]):()=>{throw new Error(`Serialization error occurred while accessing ${r} property of ${n}`)}}}),ie=e=>e instanceof Promise,O=e=>e&&typeof e=="object"&&!ie(e),ke=e=>typeof e=="function",ce=(e,t)=>{let n=r=>{let[s,a]=r;return[s,t(a)]};return Object.fromEntries(Object.entries(e).map(n))},oe=(()=>{let e=0;return()=>++e})();var Ae="wix-sdk-bo-hello-handshake",ue=e=>{let{postMessage:t,origin:n}=e,{port1:r,port2:s}=new MessageChannel;t({code:Ae,version:"1.0.0",port:s},n,[s]);let i=se(B(r));return{channel:i,close:()=>i[D]()}};var le=(e,t)=>{let n=()=>e.updateHeight(t.offsetHeight),r=new ResizeObserver(n);return r.observe(t),()=>r.disconnect()};var Ue=["https://manage.wix.com","https://manage.editorx.com"],Ce=new Set(Ue),de=e=>Ce.has(e);var fe=e=>{let t=new EventTarget,n=typeof window>"u",r=i=>{t.dispatchEvent(new CustomEvent("beforeunload",{cancelable:!0}))||(i.preventDefault(),i.returnValue=!0)},s=e.onBeforeUnload(r),a=()=>{n||window.removeEventListener("beforeunload",r),s.then(i=>{let{remove:l}=i;return l()})};return n||(window.addEventListener("beforeunload",r),window.addEventListener("unload",a)),{onBeforeUnload:i=>(t.addEventListener("beforeunload",i),{remove:()=>{t.removeEventListener("beforeunload",i)}}),clearBeforeUnloadHandler:a}};function Oe(e){if(e)try{return JSON.parse(decodeURIComponent(e))}catch(t){console.warn('Failed to parse "essentials" query parameter. Make sure to run the code inside a supported Wix App extension.',t);return}}function me(e){return e.has("essentials")?Oe(e.get("essentials")):void 0}var pe=function(e){e===void 0&&(e={});let t=e.fullUrl&&new URL(e.fullUrl).search||typeof window<"u"&&window.location.search||"",n=new URLSearchParams(t),r=e.origin||n.get("origin")||"",s=e.postMessage||window.parent.postMessage.bind(window.parent);if(!de(r))throw new Error("Wix Dashboard SDK: Unable to establish a connection with the Wix dashboard. Please ensure that you are running your app within the Wix dashboard.");let{channel:a,close:c}=ue({postMessage:s,origin:r}),i=[c];if(e.autoHeightUpdate===void 0||e.autoHeightUpdate){let x=e.autoHeightElement||document.documentElement,M=le(a,x);i.push(()=>M())}let{onBeforeUnload:l,clearBeforeUnloadHandler:d}=fe(a);i.push(d);let p=new Proxy(a,{get(x,M,F){return M==="onBeforeUnload"?l:Reflect.get(x,M,F)}}),{monitoring:m,...b}=me(n)||{},V=q({hostContext:m?.context,monitoringConfig:m?.config,sentrySDK:typeof window<"u"?window.Sentry:void 0});return{channel:p,close:()=>i.forEach(x=>x()),getMonitoringClient:V,essentials:b}};var z=X({createHost:pe});var he=(e,t)=>{let[n,r]=ge(()=>e());return t(n)&&r(e()),n},Re=e=>t=>{let{host:n,compProps:r}=De(t);return he(()=>(K({auth:z.auth(),host:n}).enableContext("module"),n),s=>s!==n),r?He.createElement(e,U({host:n},r)):null},De=e=>{let{host:t,...n}=e,{host:r,hostType:s}=he(()=>t?{host:t,hostType:"local"}:{host:z.host(),hostType:"remote"},i=>!!t&&t!==i.host),[a,c]=ge(void 0);return Le(()=>{if(s==="local")return;let i=r.channel.observeState(d=>{c(d||{})}),l=async()=>{(await i).disconnect(),r.close()};return()=>{l()}},[r,s]),s==="local"?{host:r,compProps:n}:{host:r,compProps:a?{...a,...n}:void 0}};export{Re as withContextualWixClient};
2
2
  //# sourceMappingURL=dashboard.js.map
@@ -1,8 +1,8 @@
1
- import{a as we,b as ve}from"./chunk-LPGY6RYR.js";import{a as Ie}from"./chunk-MM2KVUBI.js";import"./chunk-BGTZ3RNN.js";import{c as He,d as Xe}from"./chunk-7EYXEF6M.js";import{b as ge,d as ye,e as Je,f as p,g as a,h,i as w,j as u}from"./chunk-SBZEOPXX.js";var be=ge(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.EventType=void 0;var Ee;(function(n){n.removeAppCompleted="removeAppCompleted",n.componentSelectionChanged="componentSelectionChanged",n.appInstalled="appInstalled",n.appUpdateCompleted="appUpdateCompleted"})(Ee||(pt.EventType=Ee={}))});var St=ge(m=>{"use strict";var Qe=m&&m.__createBinding||(Object.create?function(n,t,e,i){i===void 0&&(i=e);var s=Object.getOwnPropertyDescriptor(t,e);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[e]}}),Object.defineProperty(n,i,s)}:function(n,t,e,i){i===void 0&&(i=e),n[i]=t[e]}),Ze=m&&m.__setModuleDefault||(Object.create?function(n,t){Object.defineProperty(n,"default",{enumerable:!0,value:t})}:function(n,t){n.default=t}),tn=m&&m.__importStar||function(){var n=function(t){return n=Object.getOwnPropertyNames||function(e){var i=[];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(i[i.length]=s);return i},n(t)};return function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var i=n(t),s=0;s<i.length;s++)i[s]!=="default"&&Qe(e,t,i[s]);return Ze(e,t),e}}();Object.defineProperty(m,"__esModule",{value:!0});m.EventType=m.WixSDKTypes=void 0;var en=tn((Xe(),Je(He)));m.WixSDKTypes=en;var nn=be();Object.defineProperty(m,"EventType",{enumerable:!0,get:function(){return nn.EventType}})});var G=ye(St(),1);var N=class N{constructor(){p(this,"uid",0);p(this,"callbacks",new Map);p(this,"inTransaction",!1);p(this,"isSilent",!1);p(this,"queue",[])}silent(t=!0){this.isSilent=t}startTransaction(){this.inTransaction=!0}commit(){this.inTransaction=!1;let t=this.queue;this.queue=[],this.isSilent||t.forEach(e=>{this.notify(e)})}notify(t){this.isSilent||(this.inTransaction?this.queue.push(t):this.callbacks.forEach(e=>{e(t)}))}subscribe(t){let e=this.uid++;return this.callbacks.set(e,t),()=>{this.callbacks.delete(e)}}notifyWithStep(t,e){this.notify({...t,meta:{...t.meta,step:e}})}async withEvent(t,e){let i=e();if(i&&i.hasOwnProperty("then"))try{return this.notifyWithStep(t,N.EventSteps.Start),i=await i,this.notifyWithStep(t,N.EventSteps.End),i}catch(s){throw this.notifyWithStep({...t,meta:{...t.meta,error:s}},N.EventSteps.Error),s}else return this.notify(t),i}};p(N,"biEvents",{PLATFORM_WORKER_SPAWN:123,PLATFORM_APP_RUNNER_INIT_APP_API:124,PLATFORM_APP_RUNNER_RUN_APP:125,PLATFORM_APP_RUNNER_REMOVE_APP:126,PLATFORM_WORKER_APP_BUNDLE_LOAD:127,PLATFORM_WORKER_APP_BUNDLE_EXECUTE:128,PLATFORM_IFRAME_INIT:129,PLATFORM_APP_API_INIT:130,PLATFORM_APP_API_GET:131}),p(N,"EventSteps",{Start:"start",End:"end",Error:"error"});var kt=N,ht=(n=>(n.WorkerSpawn="WorkerSpawn",n.HostEvent="HostEvent",n.ApplicationsSpecsReceived="ApplicationsSpecsReceived",n.InitApplicationApi="InitApplicationApi",n.RunApplication="RunApplication",n.getApplicationApi="getApplicationApi",n.IframeInit="IframeInit",n))(ht||{}),Ut=(n=>(n.EditorReady="EditorReady",n))(Ut||{});var v=(n=>(n.ApplicationInit="ApplicationInit",n.ApplicationExecute="ApplicationExecute",n.ApplicationRemoved="ApplicationRemoved",n.ApplicationLoad="ApplicationLoad",n.ApplicationApiInit="ApplicationApiInit",n.CustomEvent="CustomEvent",n.HostEvent="HostEvent",n.EditorReady="EditorReady",n))(v||{}),Lt=class{createApplicationRemovedEvent(t){return{type:"ApplicationRemoved",payload:{appDefinitionId:t},meta:{bi:{evid:E.biEvents.PLATFORM_WORKER_SPAWN,appDefId:t}}}}createApplicationLoadEvent(t,e){return{type:"ApplicationLoad",payload:{appDefinitionId:t.appDefinitionId,url:e},meta:{bi:{evid:E.biEvents.PLATFORM_WORKER_APP_BUNDLE_LOAD,appDefId:t.appDefinitionId,appType:t.appType,bundleUrl:e}}}}createApplicationExecuteEvent(t,e){return{type:"ApplicationExecute",payload:{appDefinitionId:t.appDefinitionId,url:e},meta:{bi:{evid:E.biEvents.PLATFORM_WORKER_APP_BUNDLE_EXECUTE,appDefId:t.appDefinitionId,appType:t.appType,bundleUrl:e}}}}createApplicationApiInitEvent(t,e){return{type:"ApplicationApiInit",payload:{appDefinitionId:t},meta:{bi:{evid:E.biEvents.PLATFORM_APP_API_INIT,appDefId:t,scope:e}}}}},E=class extends kt{constructor(){super(...arguments);p(this,"factories",new Lt)}},lt=class lt{constructor(t){this.events=t}mapToPlatformHostEvent(t){if(typeof t=="string")try{t=JSON.parse(t)}catch{}return{type:ht.HostEvent,payload:{type:t.args.eventType,...t.args.eventPayload},meta:{appDefinitionId:t.appDefinitionId??null,intent:t.intent}}}notify(t){let e=this.mapToPlatformHostEvent(t);lt.allowedEvents.includes(e.payload.type)&&this.events.notify(e)}};p(lt,"allowedEvents",[G.EventType.componentSelectionChanged,G.EventType.appInstalled,G.EventType.appUpdateCompleted,G.EventType.removeAppCompleted]);var Te=lt;var y=class n extends Error{constructor(e,i,s){let r=e?` ${e}`:"",o=`[${s}]#${i}`;super(`${o}.${r}`);p(this,"state",{});p(this,"displayName");p(this,"prefix");p(this,"errorMessage");p(this,"parent");p(this,"messages",[]);p(this,"code");this.displayName=o,this.errorMessage=e,this.prefix=s,this.code=i,this.name=o,Object.defineProperty(this,"message",{get:()=>this.getDisplayMessage()}),Error.captureStackTrace&&Error.captureStackTrace(this,n)}get parentError(){let e=this.parent;if(!e)return null;if(this.parent instanceof n)return this.parent;let i=e.name??"[Unknown Error]";return{getBreadcrumbs(){return[i]},getMessage(){return[i,e.message??"unknown error message"].join(`
1
+ import{a as Ee,b as be}from"./chunk-LPGY6RYR.js";import{a as ve}from"./chunk-25LMXVNI.js";import"./chunk-BGTZ3RNN.js";import{c as Qe,d as Ze}from"./chunk-7EYXEF6M.js";import{b as ye,d as we,e as Xe,f as p,g as a,h,i as w,j as u}from"./chunk-SBZEOPXX.js";var Ce=ye(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.EventType=void 0;var xe;(function(n){n.removeAppCompleted="removeAppCompleted",n.componentSelectionChanged="componentSelectionChanged",n.appInstalled="appInstalled",n.appUpdateCompleted="appUpdateCompleted"})(xe||(pt.EventType=xe={}))});var Ot=ye(A=>{"use strict";var tn=A&&A.__createBinding||(Object.create?function(n,t,e,i){i===void 0&&(i=e);var s=Object.getOwnPropertyDescriptor(t,e);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[e]}}),Object.defineProperty(n,i,s)}:function(n,t,e,i){i===void 0&&(i=e),n[i]=t[e]}),en=A&&A.__setModuleDefault||(Object.create?function(n,t){Object.defineProperty(n,"default",{enumerable:!0,value:t})}:function(n,t){n.default=t}),nn=A&&A.__importStar||function(){var n=function(t){return n=Object.getOwnPropertyNames||function(e){var i=[];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(i[i.length]=s);return i},n(t)};return function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var i=n(t),s=0;s<i.length;s++)i[s]!=="default"&&tn(e,t,i[s]);return en(e,t),e}}();Object.defineProperty(A,"__esModule",{value:!0});A.EventType=A.WixSDKTypes=void 0;var sn=nn((Ze(),Xe(Qe)));A.WixSDKTypes=sn;var rn=Ce();Object.defineProperty(A,"EventType",{enumerable:!0,get:function(){return rn.EventType}})});var G=we(Ot(),1);var S=class S{constructor(){p(this,"uid",0);p(this,"callbacks",new Map);p(this,"inTransaction",!1);p(this,"isSilent",!1);p(this,"queue",[])}silent(t=!0){this.isSilent=t}startTransaction(){this.inTransaction=!0}commit(){this.inTransaction=!1;let t=this.queue;this.queue=[],this.isSilent||t.forEach(e=>{this.notify(e)})}notify(t){this.isSilent||(this.inTransaction?this.queue.push(t):this.callbacks.forEach(e=>{e(t)}))}subscribe(t){let e=this.uid++;return this.callbacks.set(e,t),()=>{this.callbacks.delete(e)}}notifyWithStep(t,e){this.notify({...t,meta:{...t.meta,step:e}})}async withEvent(t,e){let i=e();if(i&&i.hasOwnProperty("then"))try{return this.notifyWithStep(t,S.EventSteps.Start),i=await i,this.notifyWithStep(t,S.EventSteps.End),i}catch(s){throw this.notifyWithStep({...t,meta:{...t.meta,error:s}},S.EventSteps.Error),s}else return this.notify(t),i}};p(S,"biEvents",{PLATFORM_WORKER_SPAWN:123,PLATFORM_APP_RUNNER_INIT_APP_API:124,PLATFORM_APP_RUNNER_RUN_APP:125,PLATFORM_APP_RUNNER_REMOVE_APP:126,PLATFORM_WORKER_APP_BUNDLE_LOAD:127,PLATFORM_WORKER_APP_BUNDLE_EXECUTE:128,PLATFORM_IFRAME_INIT:129,PLATFORM_APP_API_INIT:130,PLATFORM_APP_API_GET:131}),p(S,"EventSteps",{Start:"start",End:"end",Error:"error"});var kt=S,ht=(n=>(n.WorkerSpawn="WorkerSpawn",n.HostEvent="HostEvent",n.ApplicationsSpecsReceived="ApplicationsSpecsReceived",n.InitApplicationApi="InitApplicationApi",n.RunApplication="RunApplication",n.getApplicationApi="getApplicationApi",n.IframeInit="IframeInit",n))(ht||{}),Ut=(n=>(n.EditorReady="EditorReady",n))(Ut||{});var v=(n=>(n.ApplicationInit="ApplicationInit",n.ApplicationExecute="ApplicationExecute",n.ApplicationRemoved="ApplicationRemoved",n.ApplicationLoad="ApplicationLoad",n.ApplicationApiInit="ApplicationApiInit",n.CustomEvent="CustomEvent",n.HostEvent="HostEvent",n.EditorReady="EditorReady",n))(v||{}),Lt=class{createApplicationRemovedEvent(t){return{type:"ApplicationRemoved",payload:{appDefinitionId:t},meta:{bi:{evid:b.biEvents.PLATFORM_WORKER_SPAWN,appDefId:t}}}}createApplicationLoadEvent(t,e){return{type:"ApplicationLoad",payload:{appDefinitionId:t.appDefinitionId,url:e},meta:{bi:{evid:b.biEvents.PLATFORM_WORKER_APP_BUNDLE_LOAD,appDefId:t.appDefinitionId,appType:t.appType,bundleUrl:e}}}}createApplicationExecuteEvent(t,e){return{type:"ApplicationExecute",payload:{appDefinitionId:t.appDefinitionId,url:e},meta:{bi:{evid:b.biEvents.PLATFORM_WORKER_APP_BUNDLE_EXECUTE,appDefId:t.appDefinitionId,appType:t.appType,bundleUrl:e}}}}createApplicationApiInitEvent(t,e){return{type:"ApplicationApiInit",payload:{appDefinitionId:t},meta:{bi:{evid:b.biEvents.PLATFORM_APP_API_INIT,appDefId:t,scope:e}}}}},b=class extends kt{constructor(){super(...arguments);p(this,"factories",new Lt)}},lt=class lt{constructor(t){this.events=t}mapToPlatformHostEvent(t){if(typeof t=="string")try{t=JSON.parse(t)}catch{}return{type:ht.HostEvent,payload:{type:t.args.eventType,...t.args.eventPayload},meta:{appDefinitionId:t.appDefinitionId??null,intent:t.intent}}}notify(t){let e=this.mapToPlatformHostEvent(t);lt.allowedEvents.includes(e.payload.type)&&this.events.notify(e)}};p(lt,"allowedEvents",[G.EventType.componentSelectionChanged,G.EventType.appInstalled,G.EventType.appUpdateCompleted,G.EventType.removeAppCompleted]);var Te=lt;var I=class n extends Error{constructor(e,i,s){let r=e?` ${e}`:"",o=`[${s}]#${i}`;super(`${o}.${r}`);p(this,"state",{});p(this,"displayName");p(this,"prefix");p(this,"errorMessage");p(this,"parent");p(this,"messages",[]);p(this,"code");this.displayName=o,this.errorMessage=e,this.prefix=s,this.code=i,this.name=o,Object.defineProperty(this,"message",{get:()=>this.getDisplayMessage()}),Error.captureStackTrace&&Error.captureStackTrace(this,n)}get parentError(){let e=this.parent;if(!e)return null;if(this.parent instanceof n)return this.parent;let i=e.name??"[Unknown Error]";return{getBreadcrumbs(){return[i]},getMessage(){return[i,e.message??"unknown error message"].join(`
2
2
  `)}}}getDisplayMessage(){return[(this.parentError?this.getBreadcrumbs():[]).join(" -> "),this.getMessage()].filter(i=>i.trim().length).join(`
3
3
  `)}getMessage(){let e=Object.entries(this.state).reduce((c,[l,d])=>(d&&c.push(` \u2013 ${l}: ${d}`),c),[]).join(`
4
4
  `),i=this.messages.reduce((c,l)=>(c.push(` - ${l.join(" ")}`),c),[]).join(`
5
5
  `),s=this.parentError,r=s?["",s.getMessage(),""].join(`
6
6
  `):"",o=this.errorMessage?`${this.displayName}: ${this.errorMessage}`:this.displayName;return[r,o,e,i].filter(c=>c.trim().length).join(`
7
- `)}getBreadcrumbs(){let e=this.parentError;return e?[...e.getBreadcrumbs(),this.displayName]:[this.displayName]}withParentError(e){return this.parent=e,this}withMessage(...e){return this.messages.push(e),this}};function b(n){return function t(e,i=""){let s=new n(i,e);return Error.captureStackTrace&&Error.captureStackTrace(s,t),s}}var jt=class extends y{constructor(e,i){super(e,i,"Editor Platform Internal Error");p(this,"state",{})}withHost(e){return this.state={...this.state,host:e},this}},sn=b(jt);var $=(n=>(n.IncorrectEnvironment="IncorrectEnvironment",n))($||{}),$t=class extends y{constructor(e,i){super(e,i,"EP Context Error");p(this,"state",{})}withUrl(e){return this.state={...this.state,url:e},this}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}},J=b($t);async function rn(n,t){if(!n?.type)return n;switch(n.type){case"componentSelectionChanged":let e=n.componentRefs||[],i=await Promise.all(e.map(s=>t.components.getComponent(s)));return{type:n.type,components:i};default:return n}}var Wt=class{constructor(t,e,i){p(this,"events");p(this,"subscribe");p(this,"commit");p(this,"startTransaction");p(this,"silent");this.appDefinitionId=t,this.privateAPI=i,this.events=e,this.subscribe=e.subscribe.bind(e),this.commit=e.commit.bind(e),this.startTransaction=e.startTransaction.bind(e),this.silent=e.silent.bind(e)}notify(t){this.events.notify({type:t.type,payload:t.payload,meta:{appDefinitionId:this.appDefinitionId}})}notifyCustomEvent(t,e){this.notify({type:v.CustomEvent,payload:{...e,type:t}})}addEventListener(t,e){return this.events.subscribe(async i=>{let s=i.meta?.appDefinitionId===this.appDefinitionId||i.meta?.appDefinitionId===null,r=()=>rn(i.payload,this.privateAPI);t==="*"?e(await r()):i.type===v.CustomEvent?t===i.payload?.type&&!s&&e(await r()):i.type===v.HostEvent&&t===i.payload?.type&&s&&e(await r())})}},on=200,an=50,S,Kt,xe,ut=class{constructor(t){h(this,S);p(this,"injectionUUID");p(this,"injectionUUID_Deprecated");this.injectionUUID_Deprecated=`__${t}_CONTEXT_INJECTION_STATUS_KEY`,this.injectionUUID=`__${t}_CONTEXT_INJECTION_STATUS_KEY#0.1`,u(this,S,Kt).call(this)||u(this,S,xe).call(this)}resolveInjected(){globalThis[this.injectionUUID]?.resolve()}waitInjected(){return new Promise((t,e)=>{let i=!1,s,r=0,o=()=>{i||(s=setTimeout(()=>{if(r++,r<an){r%10===0&&console.log(J($.IncorrectEnvironment,"contexts are not resolved, still re-trying").withMessage(`try number ${r}`).message),o();return}if(!i){let c=J($.IncorrectEnvironment,"contexts are not resolved, threw by timeout");e(c)}},on))};o(),u(this,S,Kt).call(this)?.then(()=>{i=!0,clearTimeout(s),t()})})}};S=new WeakSet,Kt=function(){return globalThis[this.injectionUUID]?.promise},xe=function(){let t,e=new Promise(i=>{t=i});globalThis[this.injectionUUID]={promise:e,resolve:t},globalThis[this.injectionUUID_Deprecated]=new Promise(i=>{e.then(i)})};var Ft="__ENVIRONMENT_CONTEXT_KEY",Pt=(n=>(n.Worker="Worker",n.Frame="Frame",n.ComponentPanel="ComponentPanel",n))(Pt||{}),dt=class dt{constructor(t){this.environmentContext=t}static async inject(t){if(globalThis[Ft])throw J($.IncorrectEnvironment,"Environment context already exists and should not be overridden");globalThis[Ft]=new dt(t),this.status.resolveInjected()}static async getInstance(){return await this.status.waitInjected(),globalThis[Ft]}getPrivateAPI(){return this.environmentContext.privateApi}getEvents(){return this.environmentContext.events}getApplicationAPIs(){return this.environmentContext.applicationAPIs??{}}getEnvironment(){return this.environmentContext.environment}};p(dt,"status",new ut("environment"));var O=dt,Y="__APPLICATION_CONTEXT_KEY",ft=class ft{constructor(t,e){p(this,"events");this.applicationContext=t,this.environment=e,this.events=new Wt(this.applicationContext.appDefinitionId,this.environment.getEvents(),this.environment.getPrivateAPI())}static async inject(t){if(globalThis[Y])throw J($.IncorrectEnvironment,"Application context already exists and should not be overridden");globalThis[Y]=new ft(t,await O.getInstance()),this.status.resolveInjected()}static async getInstance(){return typeof __APPLICATION_CONTEXT_KEY<"u"?__APPLICATION_CONTEXT_KEY:(await this.status.waitInjected(),globalThis[Y])}getAppDefinitionId(){return this.applicationContext.appDefinitionId}getBindings(){return this.applicationContext}getEvents(){return this.events}getEnvironmentContext(){return this.environment}getPrivateAPI(){return this.environment.getPrivateAPI()}getPrivateApplicationAPI(){let t=this.getAppDefinitionId();if(!t)throw J($.IncorrectEnvironment,"appDefinitionId is not available");return this.environment.getApplicationAPIs()[t]}};p(ft,"status",new ut("application"));var I=ft;var We=ye(St());var tt=n=>`"editor-platform-transport": ${n}`,_e=n=>tt(`[Internal Error] ${n}`),Me="\u0192",De="\u2202",Ne="_get_",Oe="_set_",mt="+",Ce="-",Ht="\xB7",Xt="\xD7",Qt="\xB0",Se=n=>n[0]===Xt?"":n,Re=n=>n===null||typeof n>"u"||typeof n=="symbol"||typeof n=="number"||typeof n=="boolean"||typeof n=="function"||typeof n=="string",cn=n=>!!n&&typeof n=="object"&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof Set)&&!(n instanceof Map),pn=n=>W(n.split(Ht)),W=n=>n.map(Se).filter(Boolean).join(".");function xt(n,t){return{marker:n,...t}}var ln=xt("A",{shouldUse:n=>Array.isArray(n),serialize:(n,t)=>{n.length?n.forEach((e,i)=>{t(`${i}`,e)}):t("",Qt)},deserialize:{create:()=>[],has:(n,t)=>!(typeof n[t]>"u"),append:(n,t,e)=>{n.push(e)}}}),hn=xt("M",{shouldUse:n=>n instanceof Map,serialize:(n,t)=>{n.forEach((e,i)=>{t(i,e)})},deserialize:{create:()=>new Map,has:(n,t)=>n.has(t),append:(n,t,e)=>{n.set(t,e)}}}),un=xt("S",{shouldUse:n=>n instanceof Set,serialize:(n,t)=>{let e=0;n.forEach(i=>{t(`${e++}`,i)})},deserialize:{create:()=>new Set,has:(n,t)=>n.has(t),append:(n,t,e)=>{n.add(e)}}}),zt=xt("O",{shouldUse:n=>typeof n=="object",serialize:(n,t)=>{let e=i=>{let r=Reflect.ownKeys(i).filter(c=>c!=="constructor").filter(c=>typeof c!="symbol");r.length?r.filter(c=>c!=="constructor").filter(c=>typeof c!="symbol").forEach(c=>{let l=Reflect.get(n,c);t(c,l)}):t("",Qt);let o=Reflect.getPrototypeOf(i);!o||o?.hasOwnProperty("__proto__")||e(o)};e(n)},deserialize:{create:()=>({}),has:(n,t)=>!!n[t],append:(n,t,e)=>{n[t]=e}}}),ke=[ln,un,hn];function dn(n,t){let e=n;for(;e;){let i=Object.getOwnPropertyDescriptor(e,t);if(i)return i;e=Reflect.getPrototypeOf(e)}return null}function fn(n,t){let e=new WeakMap,i=r=>{let o=r.slice(1).map(Se).filter(Boolean);return o.slice(1).reduce((c,l)=>({context:c.context[c.pointer],pointer:l}),{context:n,pointer:o[0]})},s=(r,o=[])=>{if(e.has(r)&&e.get(r)?.some(d=>o.join(".").startsWith(d))){t(o,{...i(o),value:"[Circular]"});return}if(r&&!Re(r)&&(e.has(r)&&e.set(r,[]),e.set(r,[...e.get(r)??[],o.join(".")])),Re(r)){t(o,{...i(o),value:r});return}let c=ke.find(l=>l.shouldUse(r))??zt;if(c){c.serialize(r,(l,d)=>{s(d,[...o,`${Xt}${c.marker}`,l])});return}};return s(n)}var Pn=(n,t)=>{if(!cn(n))throw new Error(tt("only objects are serializable at the root level"));let e={data:[]},i=(r,o)=>{e.data.push([r,o])},s=(r,o)=>{t(pn(r),(...c)=>o.context[o.pointer](...c)),i(r,Me)};return fn(n,(r,{value:o,context:c,pointer:l})=>{let d=r.slice(1).join(Ht),f=dn(c,l);if(f?.get||f?.set){f?.get&&t(W([...r,Ne]),()=>c[l]),f?.set&&t(W([...r,Oe]),V=>{c[l]=V});let D=[f?.get?mt:Ce,f?.set?mt:Ce];i(d,`${De}${D.join("")}`)}else typeof o=="function"?s(d,{context:c,pointer:l}):i(d,o)}),e},mn=(n,t)=>typeof n!="object"||n===null?n:n.data.reduce((e,[i,s])=>{let r=e,o=i.split(Ht),c=zt,l=null;for(let d=0;d<o.length;d++){let f=o[d];if(f[0]===Xt){let D=c.deserialize.has(r,l);if(c=[zt,...ke].find(V=>V.marker===f[1]),!c)throw new Error(tt(`unknown marker "${f[1]}"`));D||(r[l]=c.deserialize.create()),r=r[l]}else l=f}if(s?.toString()===Qt)return e;if(s?.toString()===Me)c.deserialize.append(r,l,t(W(o)));else if(s?.toString()[0]===De){let d=s?.toString()[1]===mt,f=s?.toString()[2]===mt,D={};if(d){let V=t(W([...o,Ne]));D.get=()=>V()}f&&(D.set=t(W([...o,Oe]))),Object.defineProperty(r,l,D)}else c.deserialize.append(r,l,s);return e},{[Symbol("transferred object")]:`${(JSON.stringify(n.data).length/1024).toFixed(2)}Kb`});function Le(){let n=globalThis.performance;if(n&&n.now)return n.now();let t="",e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=e.length,s=0,r=10;for(;s<r;)t+=e.charAt(Math.floor(Math.random()*i)),s+=1;return t}var X=(n=>(n.ExposeAPI="ExposeAPI",n.Call="Call",n.Response="Response",n.Cleanup="Cleanup",n))(X||{}),R=class n{constructor(t,e){p(this,"correlationId",`M-${Le()}`);p(this,"parentCorrelationId");this.type=t,this.payload=e}withParentCorrelationId(t){return this.parentCorrelationId=t,this}serialize(t){return JSON.stringify({parentCorrelationId:this.parentCorrelationId,correlationId:this.correlationId,type:this.type,payload:Pn(this.payload,(e,i)=>{t(this.correlationId,e,i)})})}static fromEvent(t,e){let i=JSON.parse(t);return new n(i.type,mn(i.payload,s=>e(i.correlationId,s))).withParentCorrelationId(i.correlationId)}},qt=class extends R{constructor(t){super("Cleanup",t)}},Vt=class extends R{constructor(t){super("Response",t)}},At=class extends R{constructor(t){super("Response",t)}},Gt=class extends R{constructor(t){super("Call",t)}},Bt=(n,t)=>`${n}_${t}`,Et,bt,K,T,Yt=class{constructor(t){h(this,Et,new FinalizationRegistry(t=>{this.postMessage(new qt(t))}));h(this,bt,{[X.Cleanup]:t=>{let e=t.payload.functionMarkerKey,i=t.payload.callId;delete a(this,K)[e],i&&delete a(this,T)[i]},[X.Response]:async t=>{let e=t.payload.callId,i=t.payload.errorMessage;if(i)if(t.payload.errorStack){let r=new Error(i);r.stack=t.payload.errorStack,a(this,T)[e]?.reject(r)}else a(this,T)[e]?.reject(i);else{let s=t.payload.response;a(this,T)[e]?.resolve(s)}delete a(this,T)[e]},[X.Call]:async t=>{let e=t.payload.functionMarkerKey,i=a(this,K)[e];if(!i){this.postMessage(new At({callId:t.payload.callId,errorMessage:tt("function is not available")}));return}try{let s=await i.value(...t.payload.props??[]);this.postMessage(new Vt({callId:t.payload.callId,response:s}))}catch(s){this.postMessage(new At({callId:t.payload.callId,errorMessage:s.message,errorStack:s.stack}))}}});h(this,K,{});h(this,T,{});p(this,"queue",[]);this.port=t,this.port.onmessage=e=>{this.onMessage(e)}}onMessage(t){let e=R.fromEvent(t.data,(i,s)=>{let r=this.replaceTransferredFunction(i,s);return a(this,Et).register(r,{functionMarkerKey:Bt(i,s)}),r});a(this,bt)[e.type]?.(e),this.messageEvents[e.type]?.(e)}postMessage(t){this.port.postMessage(t.serialize(this.registerTransferredFunction.bind(this)))}registerTransferredFunction(t,e,i){let s=Bt(t,e);a(this,K)[s]={path:e,value:i}}replaceTransferredFunction(t,e){return(...i)=>{let s=`CALL-${crypto.randomUUID()}`;return this.postMessage(new Gt({callId:s,functionMarkerKey:Bt(t,e),props:i})),new Promise((r,o)=>{a(this,T)[s]={resolve:r,reject:o}})}}flush(){this.queue.forEach(t=>{this.postMessage(t)}),this.queue=[]}};Et=new WeakMap,bt=new WeakMap,K=new WeakMap,T=new WeakMap;var gt=class extends Yt{constructor(){super(...arguments);p(this,"messageEvents",{})}expose(e){if(!e.type)throw new Error(tt('wrong exposed API instance, "type" property is required'));this.queue.push(new R(X.ExposeAPI,e)),this.flush()}};var H=(n=>(n.Ping="EDITOR_PLATFORM_TRANSPORT_EVENT:__Ping",n.RequestPort="EDITOR_PLATFORM_TRANSPORT_EVENT:__RequestPort",n.Pong="EDITOR_PLATFORM_TRANSPORT_EVENT:__Pong",n.Port="EDITOR_PLATFORM_TRANSPORT_EVENT:__Port",n))(H||{});var B,C,Tt,Ue,Jt=class{constructor(t,e){h(this,Tt);h(this,B,new Set);h(this,C);this.postMessage=t,this.onMessage=e}setActivePort(t){this.dispose(),w(this,C,t),u(this,Tt,Ue).call(this)}dispose(){a(this,C)&&(a(this,C).close(),a(this,C).onmessage=null)}onHandshake(t){return a(this,B).add(t),()=>{a(this,B).delete(t)}}};B=new WeakMap,C=new WeakMap,Tt=new WeakSet,Ue=function(){let t=a(this,C);if(!t){console.warn(_e("port is required no notify onHandshake listeners"));return}a(this,B).forEach(e=>e(t))};var Q,Z,_,je,Fe,$e,yt=class extends Jt{constructor(e,i){super(e,i);h(this,_);h(this,Q,!1);h(this,Z,`consumer-${Le()}`);u(this,_,je).call(this);let s={type:H.Ping};e(JSON.stringify(s))}};Q=new WeakMap,Z=new WeakMap,_=new WeakSet,je=function(){this.onMessage(e=>{try{let i=JSON.parse(e.data);switch(i.type){case H.Pong:{u(this,_,Fe).call(this);break}case H.Port:{u(this,_,$e).call(this,i.targetMemberId,e.ports?.[0]);break}}}catch{}})},Fe=function(){if(a(this,Q))return;w(this,Q,!0);let e={type:H.RequestPort,memberId:a(this,Z)};this.postMessage(JSON.stringify(e))},$e=function(e,i){if(e===a(this,Z)){if(!i)throw new Error(_e("no port at consumer handshake"));this.setActivePort(i)}};var It=class{get onConnect(){return this.handshake.onHandshake.bind(this.handshake)}},wt=class n extends It{constructor(){super(...arguments);p(this,"handshake",new yt(e=>{globalThis.parent.postMessage(e,"*")},e=>{globalThis.addEventListener("message",e)}))}static exposeAPI(e){new n().onConnect(s=>{new gt(s).expose(e)})}};var vt=class n extends It{constructor(){super(...arguments);p(this,"handshake",new yt(e=>{globalThis.postMessage(e)},e=>{globalThis.addEventListener("message",e)}))}static exposeAPI(e){new n().onConnect(s=>{new gt(s).expose(e)})}};var Ct=class{constructor(t){this.platformAppEvents=t}notify(t){switch(t.type){case Ut.EditorReady:this.platformAppEvents.notify({...t,type:v.EditorReady});break;case ht.HostEvent:this.platformAppEvents.notify({...t,type:v.HostEvent});break}}subscribe(t){this.platformAppEvents.subscribe(e=>{t(e)})}},re=(n=>(n.Frame="PLATFORM_FRAME_API",n.Worker="PLATFORM_WORKER_API",n))(re||{}),Rt=class{constructor(t,e){this.type=t,this.envType=e}async injectEnvironmentContext({events:t,privateApi:e}){await O.inject({environment:this.envType,events:t,privateApi:e,applicationAPIs:{}})}async injectApplicationContext({appDefinitionId:t}){await I.inject({appDefinitionId:t,appDefinitionName:""})}},An={classic:"https://www.unpkg.com/@wix/design-system/dist/statics/tokens-default.global.css",studio:"https://www.unpkg.com/@wix/design-system/dist/statics/tokens-studio.global.css"},et,nt,Mt,it,Dt,Ke,te=class extends Rt{constructor(){super(re.Frame,Pt.Frame);h(this,Dt);h(this,et,new E);h(this,nt,new Ct(a(this,et)));h(this,Mt);h(this,it);u(this,Dt,Ke).call(this)}async initEnvironment(e){let{applicationPrivateAPI:i,privateAPI:s,appDefinitionId:r}=e;w(this,it,i),w(this,Mt,s),await this.injectEnvironmentContext({privateApi:s,events:a(this,et),applicationAPIs:{[r]:a(this,it)}}),await this.injectApplicationContext({appDefinitionId:r})}notify(e){a(this,nt).notify(e)}subscribe(e){a(this,nt).subscribe(e)}};et=new WeakMap,nt=new WeakMap,Mt=new WeakMap,it=new WeakMap,Dt=new WeakSet,Ke=function(){if(typeof globalThis?.document?.head?.prepend=="function"){let i=new URL(globalThis.location.href).searchParams.get("editorType")==="CLASSIC"?"classic":"studio",s=An[i],r=s&&!!document.querySelectorAll(`link[type="text/css"][href="${s}"]`)?.length;if(s&&!r){let o=document.createElement("link");o.setAttribute("rel","stylesheet"),o.setAttribute("type","text/css"),o.setAttribute("href",s),globalThis.document.head.prepend(o)}}};var M=(n=>(n.ApplicationLoadError="ApplicationLoadError",n.ApplicationFetchError="ApplicationFetchError",n.ApplicationExecuteError="ApplicationExecuteError",n))(M||{}),ee=class extends y{constructor(e,i){super(e,i,"EP Application Container Error");p(this,"state",{})}withUrl(e){return this.state={...this.state,url:e},this}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}withApiMethod(e){return this.state={...this.state,apiMethod:e},this}withApiType(e){return this.state={...this.state,apiType:e},this}},k=b(ee),gn="__APPLICATION_REGISTRY_KEY";async function yn(n,t,e){let i=new Function(Y,gn,e),s,r=o=>{if(s)throw k(M.ApplicationExecuteError,"Application registry called more than once").withAppDefinitionId(t.appDefinitionId);if(o.type!==t.type)throw k(M.ApplicationExecuteError,"Application has different type").withMessage("expected type",t.type).withMessage("received type",o.type);s=o};try{let o={...t};i.call(null,new I(o,await O.getInstance()),r)}catch(o){throw k(M.ApplicationExecuteError,o.message).withAppDefinitionId(t.appDefinitionId).withParentError(o)}return new Promise((o,c)=>{let l=n.subscribe(d=>{let f=setTimeout(()=>{clearTimeout(f),l(),s||c(k(M.ApplicationExecuteError,"Application registry was not called, threw by timeout").withAppDefinitionId(t.appDefinitionId))},5e3);d.type===v.ApplicationInit&&d.meta.appDefinitionId===t.appDefinitionId&&(clearTimeout(f),l(),s||c(k(M.ApplicationExecuteError,"Application registry was not called").withAppDefinitionId(t.appDefinitionId)),o({instance:s}))})})}var L,st,P,ne=class{constructor(t,e){h(this,L,{});h(this,st);h(this,P);w(this,st,t),w(this,P,e),a(this,P).subscribe(i=>{switch(i.type){case v.HostEvent:{i.payload.type===We.EventType.removeAppCompleted&&a(this,P).withEvent(a(this,P).factories.createApplicationRemovedEvent(i.payload.appDefinitionId),()=>this.removeApplication(i.payload.appDefinitionId));break}}})}async runApplication(t){let e=await this.loadApplication(t),i=await this.executeApplication(t,e);return this.setApplication(t.appDefinitionId,i),i}setApplication(t,e){a(this,L)[t]=e,a(this,P).withEvent(a(this,P).factories.createApplicationApiInitEvent(t,e?.api?.private?"private":"public"),()=>{a(this,st).applicationManager.setApplication(e)})}getApplication(t){return a(this,L)[t]}getAppDefinitionIds(){return Object.keys(a(this,L))}removeApplication(t){delete a(this,L)[t]}async loadApplication(t){let e=t.url;return a(this,P).withEvent(a(this,P).factories.createApplicationLoadEvent(t,e),async()=>{try{return await this.loadApplicationBundle(e)}catch(i){throw k(M.ApplicationLoadError).withUrl(e).withAppDefinitionId(t.appDefinitionId).withParentError(i)}})}async loadApplicationBundle(t){let e=await fetch(t,{method:"GET"});if(!(e.status>=200&&e.status<=299))throw k(M.ApplicationFetchError).withUrl(t);return e.text()}async executeApplication(t,e){return a(this,P).withEvent(a(this,P).factories.createApplicationExecuteEvent(t,t.url),async()=>{let{instance:i}=await yn(a(this,P),t,e);return i})}};L=new WeakMap,st=new WeakMap,P=new WeakMap;var z,rt,ot,U,at,ie=class extends Rt{constructor(){super(re.Worker,Pt.Worker);h(this,z,new E);h(this,rt,new Ct(a(this,z)));h(this,ot,null);h(this,U);h(this,at,[])}create(){}async initEnvironment(e){let{buildPrivateAPI:i}=e;w(this,U,await i({type:"EDITOR_ADDON"})),await this.injectEnvironmentContext({events:a(this,z),privateApi:a(this,U),applicationAPIs:{}}),w(this,ot,new ne(a(this,U),a(this,z))),a(this,at).forEach(s=>s(this))}async notify(e){await this.waitReady(),a(this,rt).notify(e)}subscribe(e){a(this,rt).subscribe(e)}async runApplication(e){await this.waitReady(),await a(this,ot).runApplication(e)}waitReady(){return new Promise(e=>{if(a(this,U))return e(this);a(this,at).push(e)})}};z=new WeakMap,rt=new WeakMap,ot=new WeakMap,U=new WeakMap,at=new WeakMap;var Zt="$_EP_TRANSPORT_ENV_CONTEXT_GUARD",q,Be,ze,_t=class{constructor(){h(this,q)}isEnvironmentApiExposed(){return!!globalThis[Zt]}async getContexts(){let[t,e]=await Promise.all([O.getInstance(),I.getInstance()]);return{environmentContext:t,applicationContext:e}}expose(){if(this.isEnvironmentApiExposed())return;let t=typeof importScripts=="function",e=globalThis.self&&globalThis.top&&globalThis.self!==globalThis.top;t?(u(this,q,Be).call(this),globalThis[Zt]=!0):e&&(u(this,q,ze).call(this),globalThis[Zt]=!0)}};q=new WeakSet,Be=function(){vt.exposeAPI(new ie)},ze=function(){wt.exposeAPI(new te)};var se=class extends y{constructor(e,i){super(e,i,"EP EnvironmentAPI Error");p(this,"state",{})}withUrl(e){return this.state={...this.state,url:e},this}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}},Jn=b(se);new _t().expose();var oe=class extends y{constructor(e,i){super(e,i,"Auth Strategy Error");p(this,"state",{})}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}},qe=b(oe);function In(n,t){let e=Date.now(),i=n?new Date(n).getTime():null;return i&&i-e>t}var wn=30*60*1e3,vn=()=>{let n;return{getAuthHeaders:async()=>{let t=await I.getInstance(),e=t.getBindings(),i=t.getPrivateAPI();if(!e.appDefinitionId)throw qe("EmptyAppDefinitionId");return(!n||In(n.expires,wn))&&(n=await i.auth.getAccessToken(e.appDefinitionId,await i.info.getMetaSiteId())),n?.token?{headers:{Authorization:n.token}}:(console.error(qe("EmptyAppAuthInstance").withAppDefinitionId(e.appDefinitionId)),{headers:{Authorization:""}})}}},A=class n{constructor(t,e=[]){this.ShapeConstructor=t,this.selectedMethods=e}withPublicMethod(t){return new n(this.ShapeConstructor,[...this.selectedMethods,t])}build(){if(!this.selectedMethods.length)throw new Error("methods are not defined for the SDK shape");let t=this.selectedMethods.reduce((e,i)=>({...e,[i]:s=>{let r=new this.ShapeConstructor(s?.applicationContext);return r[i]?r[i].bind(r):()=>{console.error(`"${i}" is not defined in the SDK shape`)}}}),{});return we(t)}},g=class{constructor(t=null){this.overrideApplicationContext=t}getApplicationContext(){return this.overrideApplicationContext?this.overrideApplicationContext:I.getInstance()}async getAppDefinitionId(){return(await this.getApplicationContext()).getAppDefinitionId()}async getEnvironmentContext(){return(await this.getApplicationContext()).getEnvironmentContext()}async getPlatformPrivateAPI(){return(await this.getApplicationContext()).getPrivateAPI()}async getContextBindings(){return(await this.getApplicationContext()).getBindings()}},ae=class extends g{async getPrivateAPI(){return(await this.getApplicationContext()).getPrivateApplicationAPI()}async getPublicAPI(t){return(await this.getPlatformPrivateAPI()).applicationManager.getPublicApplicationAPI(t)}async getAppInstance(){let t=await this.getPlatformPrivateAPI(),e=await this.getContextBindings();return t.info.getAppInstance(e.appDefinitionId)}},ii=new A(ae).withPublicMethod("getPrivateAPI").withPublicMethod("getPublicAPI").withPublicMethod("getAppInstance").build(),Ot=class extends g{async addEventListener(t,e){return(await this.getApplicationContext()).getEvents().addEventListener(t,e)}},si=new A(Ot).withPublicMethod("addEventListener").build(),ce=class extends g{async getSelection(){let t=await this.getPlatformPrivateAPI(),e=await t.components.getSelectedComponents();return Promise.all(e.map(i=>t.components.getComponent(i)))}async onSelectionChange(t){new Ot(this.getApplicationContext()).addEventListener("componentSelectionChanged",i=>{t(i.components)})}},ri=new A(ce).withPublicMethod("onSelectionChange").withPublicMethod("getSelection").build(),pe=class extends g{async getViewMode(){return(await this.getPlatformPrivateAPI()).info.getViewMode()}async getLanguageCode(){return(await this.getPlatformPrivateAPI()).info.getLanguageCode()}},oi=new A(pe).withPublicMethod("getViewMode").withPublicMethod("getLanguageCode").build(),ct=(n=>(n.UndefinedCompRef="UndefinedCompRef",n.NotAvailableMethod="NotAvailableMethod",n))(ct||{}),le=class extends y{constructor(t,e){super(t,e,"Widget Error")}},Nt=b(le),Ge="underline";function En(n){return n.map(t=>Ye({font:t}).family).filter(Boolean)}function Ye(n){let t={family:void 0,size:void 0};if(n?.font){let{variableName:e,fallbackValue:i}=bn(n.font);t.cssVariableName=e;let s=i.match(/(?:(["']).*?\1|\S)+/g)||[];for(let r=0;r<s.length;r++){let o=s[r];switch(o){case"bold":t.bold=!0;break;case"italic":t.italic=!0;break;default:o?.endsWith("px")?t.size=parseInt(o,10):r===s.length-1?t.family=o:t.family=(t.family||"")+" "+o}}}return n?.textDecoration&&(t.underline=n.textDecoration===Ge),t.family=t.family?.trim().replace(/['"]+/g,""),t}function bn(n){let t=n.trim(),e=t.match(/var\((--[\w-]+),\s*(.+)\)/);return e?{variableName:e[1],fallbackValue:e[2]?.trim()??""}:{variableName:void 0,fallbackValue:t}}var F=class n{constructor(t,e){this.compRef=t,this.privateAPI=e}async getProp(t){return(await this.privateAPI.refComponents.getProps(this.compRef))?.[t]}async setProp(t,e){await this.privateAPI.refComponents.setProps(this.compRef,{[t]:e})}async getDesignPreset(){return this.privateAPI.designPresets.getDesignPresetName(this.compRef)}async setDesignPreset(t){await this.privateAPI.designPresets.setDesignPresetByName(this.compRef,t)}async getNestedWidget(t){let e=await this.privateAPI.refComponents.findComponentBySelector(this.compRef,t);return e?new n(e,this.privateAPI):null}},x,j,he=class extends g{constructor(){super(...arguments);h(this,x)}async setPreloadFonts(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,x,j).call(this);if(await i.refComponents.isRefComponent(s))throw Nt(ct.NotAvailableMethod,"not available for the current component type");let r=En(e);await i.customElement.setPreloadFonts(s,r)}async getProp(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,x,j).call(this);return await i.refComponents.isRefComponent(s)?new F(s,i).getProp(e):i.customElement.getAttribute(s,e)}async setProp(e,i){let s=await this.getPlatformPrivateAPI(),r=await u(this,x,j).call(this);if(await s.refComponents.isRefComponent(r))return new F(r,s).setProp(e,i);await s.customElement.setAttribute(r,e,i)}async getDesignPreset(){let e=await this.getPlatformPrivateAPI(),i=await u(this,x,j).call(this);if(!await e.refComponents.isRefComponent(i))throw Nt(ct.NotAvailableMethod,"not available for the current component type");return new F(i,e).getDesignPreset()}async setDesignPreset(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,x,j).call(this);if(!await i.refComponents.isRefComponent(s))throw Nt(ct.NotAvailableMethod,"not available for the current component type");return new F(s,i).setDesignPreset(e)}async getNestedWidget(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,x,j).call(this);return new F(s,i).getNestedWidget(e)}};x=new WeakSet,j=async function(){let s=(await(await this.getPlatformPrivateAPI()).components.getSelectedComponents())[0];if(!s)throw Nt(ct.UndefinedCompRef);return s};var Tn=new A(he).withPublicMethod("getNestedWidget").withPublicMethod("setDesignPreset").withPublicMethod("getDesignPreset").withPublicMethod("setProp").withPublicMethod("getProp").withPublicMethod("setPreloadFonts"),ai=Tn.build();function xn(n){return`${n.cssVariableName?`var(${n.cssVariableName}, `:""}${n.italic?"italic ":""}${n.bold?"bold ":""}${n.size||16}px ${n.family?.split(",").map(t=>`"${t.replace(/['"]+/g,"")}"`).join(",")||"serif"}${n.cssVariableName?")":""}`}function Cn(n){if(!n)return null;let t=n,e=t.match(/var\((--[\w-]+),\s*(.+)\)/);return e?{cssVariableName:e[1],color:e[2]}:{color:t}}function Ve(n){return n?n.cssVariableName?`var(${n.cssVariableName}, ${n.color})`:n.color:""}var Rn={transformFontInternalValue:n=>{if(n){let{theme:t,cssVariableName:e,bold:i,italic:s,underline:r,...o}=n;return{...o,style:{bold:i,italic:s,underline:r},editorKey:e||t||""}}else return{editorKey:"font_7",family:"helvetica-w01-roman",size:16,style:{}}}},ue=class extends g{async selectColor(t,e){let i=await this.getPlatformPrivateAPI(),s=Cn(t),r=Ve(s);return await i.inputs.openColorPicker({color:s?.cssVariableName||s?.theme||s?.color},({color:o,theme:c,cssVariableTheme:l})=>{s={color:o,theme:c,cssVariableName:l},r=Ve(s),e?.onChange?.(r)}),r}async selectFont(t,e){let i=await this.getPlatformPrivateAPI(),s=Ye(t),r=t;return await i.inputs.openFontPickerV2({...e,panelSectionsDefinition:{htmlTag:"hidden"},componentStyle:Rn.transformFontInternalValue(s)},(o,c)=>{r={font:xn(o),textDecoration:o.underline?Ge:void 0},e?.onChange?.(r)}),r}},ci=new A(ue).withPublicMethod("selectColor").withPublicMethod("selectFont").build(),de=class extends g{async openLanguageSupportPanel(){return(await this.getPlatformPrivateAPI()).panels.openLanguageSupportPanel()}async openFontsUploadPanel(){return(await this.getPlatformPrivateAPI()).panels.openFontsUploadPanel()}},pi=new A(de).withPublicMethod("openLanguageSupportPanel").withPublicMethod("openFontsUploadPanel").build(),fe=class extends g{async openDashboardModal(t){return(await this.getPlatformPrivateAPI()).panels.openDashboardPanel(await this.getAppDefinitionId(),t)}},li=new A(fe).withPublicMethod("openDashboardModal").build(),Pe=class extends g{async get(t){return(await this.getPlatformPrivateAPI()).userPreferences.get(await this.getAppDefinitionId(),t)}async set(t){return(await this.getPlatformPrivateAPI()).userPreferences.set(await this.getAppDefinitionId(),t)}},hi=new A(Pe).withPublicMethod("set").withPublicMethod("get").build(),me=class extends g{async getData(){return(await this.getPlatformPrivateAPI()).externalPanels.getData()}async setData(t){return(await this.getPlatformPrivateAPI()).externalPanels.setData(t)}async getStyle(){return(await this.getPlatformPrivateAPI()).externalPanels.getStyle()}async setStyle(t){return(await this.getPlatformPrivateAPI()).externalPanels.setStyle(t)}async getTheme(){return(await this.getPlatformPrivateAPI()).externalPanels.getTheme()}async selectMedia(){return(await this.getPlatformPrivateAPI()).externalPanels.selectMedia()}async selectLink(...t){return(await this.getPlatformPrivateAPI()).externalPanels.selectLink(...t)}async selectColor(...t){return async()=>(await this.getPlatformPrivateAPI()).externalPanels.selectColor(...t)}async translate(t,e){return(await this.getPlatformPrivateAPI()).externalPanels.translate(t,e)}},ui=new A(me).withPublicMethod("getTheme").withPublicMethod("getData").withPublicMethod("getStyle").withPublicMethod("selectColor").withPublicMethod("selectLink").withPublicMethod("selectMedia").withPublicMethod("setData").withPublicMethod("setStyle").withPublicMethod("translate").build(),_n=()=>{let n=new URLSearchParams(window.location.search),t=n.has("essentials")?JSON.parse(n.get("essentials")):void 0,{monitoring:e,...i}=t||{},s=n.get("appDefinitionId"),{context:r,config:o}=e||{},c=ve({hostContext:{appId:s,...r},monitoringConfig:o,sentrySDK:typeof window<"u"?window.Sentry:void 0});return{environment:{},applicationContext:I.getInstance(),channel:{observeState:async()=>({disconnect(){}})},getMonitoringClient:c,essentials:i}},Mn=()=>({environment:{},applicationContext:I.getInstance(),channel:{observeState:async()=>({disconnect(){}})}}),Ae={host:()=>typeof importScripts=="function"?Mn():_n(),auth:vn};var Ai=()=>{let n=Ae.host(),t=Ae.auth();Ie({auth:t,host:n}).enableContext("module")};export{Ai as enableClient};
7
+ `)}getBreadcrumbs(){let e=this.parentError;return e?[...e.getBreadcrumbs(),this.displayName]:[this.displayName]}withParentError(e){return this.parent=e,this}withMessage(...e){return this.messages.push(e),this}};function E(n){return function t(e,i=""){let s=new n(i,e);return Error.captureStackTrace&&Error.captureStackTrace(s,t),s}}var jt=class extends I{constructor(e,i){super(e,i,"Editor Platform Internal Error");p(this,"state",{})}withHost(e){return this.state={...this.state,host:e},this}},on=E(jt);var $=(n=>(n.IncorrectEnvironment="IncorrectEnvironment",n))($||{}),$t=class extends I{constructor(e,i){super(e,i,"EP Context Error");p(this,"state",{})}withUrl(e){return this.state={...this.state,url:e},this}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}},J=E($t);async function an(n,t){if(!n?.type)return n;switch(n.type){case"componentSelectionChanged":let e=n.componentRefs||[],i=await Promise.all(e.map(s=>t.components.getComponent(s)));return{type:n.type,components:i};default:return n}}var Wt=class{constructor(t,e,i){p(this,"events");p(this,"subscribe");p(this,"commit");p(this,"startTransaction");p(this,"silent");this.appDefinitionId=t,this.privateAPI=i,this.events=e,this.subscribe=e.subscribe.bind(e),this.commit=e.commit.bind(e),this.startTransaction=e.startTransaction.bind(e),this.silent=e.silent.bind(e)}notify(t){this.events.notify({type:t.type,payload:t.payload,meta:{appDefinitionId:this.appDefinitionId}})}notifyCustomEvent(t,e){this.notify({type:v.CustomEvent,payload:{...e,type:t}})}addEventListener(t,e){return this.events.subscribe(async i=>{let s=i.meta?.appDefinitionId===this.appDefinitionId||i.meta?.appDefinitionId===null,r=()=>an(i.payload,this.privateAPI);t==="*"?e(await r()):i.type===v.CustomEvent?t===i.payload?.type&&!s&&e(await r()):i.type===v.HostEvent&&t===i.payload?.type&&s&&e(await r())})}},cn=200,pn=50,O,qt,Re,ut=class{constructor(t){h(this,O);p(this,"injectionUUID");p(this,"injectionUUID_Deprecated");this.injectionUUID_Deprecated=`__${t}_CONTEXT_INJECTION_STATUS_KEY`,this.injectionUUID=`__${t}_CONTEXT_INJECTION_STATUS_KEY#0.1`,u(this,O,qt).call(this)||u(this,O,Re).call(this)}resolveInjected(){globalThis[this.injectionUUID]?.resolve()}waitInjected(){return new Promise((t,e)=>{let i=!1,s,r=0,o=()=>{i||(s=setTimeout(()=>{if(r++,r<pn){r%10===0&&console.log(J($.IncorrectEnvironment,"contexts are not resolved, still re-trying").withMessage(`try number ${r}`).message),o();return}if(!i){let c=J($.IncorrectEnvironment,"contexts are not resolved, threw by timeout");e(c)}},cn))};o(),u(this,O,qt).call(this)?.then(()=>{i=!0,clearTimeout(s),t()})})}};O=new WeakSet,qt=function(){return globalThis[this.injectionUUID]?.promise},Re=function(){let t,e=new Promise(i=>{t=i});globalThis[this.injectionUUID]={promise:e,resolve:t},globalThis[this.injectionUUID_Deprecated]=new Promise(i=>{e.then(i)})};var Ft="__ENVIRONMENT_CONTEXT_KEY",Pt=(n=>(n.Worker="Worker",n.Frame="Frame",n.ComponentPanel="ComponentPanel",n))(Pt||{}),dt=class dt{constructor(t){this.environmentContext=t}static async inject(t){if(globalThis[Ft])throw J($.IncorrectEnvironment,"Environment context already exists and should not be overridden");globalThis[Ft]=new dt(t),this.status.resolveInjected()}static async getInstance(){return await this.status.waitInjected(),globalThis[Ft]}getPrivateAPI(){return this.environmentContext.privateApi}getEvents(){return this.environmentContext.events}getApplicationAPIs(){return this.environmentContext.applicationAPIs??{}}getEnvironment(){return this.environmentContext.environment}};p(dt,"status",new ut("environment"));var N=dt,Y="__APPLICATION_CONTEXT_KEY",ft=class ft{constructor(t,e){p(this,"events");this.context=t,this.environment=e,this.events=new Wt(t.appDefinitionId?t.appDefinitionId:null,this.environment.getEvents(),this.environment.getPrivateAPI())}static async inject(t){if(globalThis[Y])throw J($.IncorrectEnvironment,"Application context already exists and should not be overridden");globalThis[Y]=new ft(t,await N.getInstance()),this.status.resolveInjected()}static async getInstance(){return typeof __APPLICATION_CONTEXT_KEY<"u"?__APPLICATION_CONTEXT_KEY:(await this.status.waitInjected(),globalThis[Y])}getContext(){return this.context}getAppDefinitionId(){return this.context.appDefinitionId}getManifestContextId(){return this.context.manifestContextId}getEvents(){return this.events}getEnvironmentContext(){return this.environment}getPrivateAPI(){return this.environment.getPrivateAPI()}getPrivateApplicationAPI(){let t=this.getAppDefinitionId();if(!t)throw J($.IncorrectEnvironment,"appDefinitionId is not available");return this.environment.getApplicationAPIs()[t]}};p(ft,"status",new ut("application"));var y=ft;var Ke=we(Ot());var tt=n=>`"editor-platform-transport": ${n}`,De=n=>tt(`[Internal Error] ${n}`),Se="\u0192",Ne="\u2202",Oe="_get_",ke="_set_",gt="+",Me="-",Ht="\xB7",Xt="\xD7",Qt="\xB0",Le=n=>n[0]===Xt?"":n,_e=n=>n===null||typeof n>"u"||typeof n=="symbol"||typeof n=="number"||typeof n=="boolean"||typeof n=="function"||typeof n=="string",ln=n=>!!n&&typeof n=="object"&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof Set)&&!(n instanceof Map),hn=n=>W(n.split(Ht)),W=n=>n.map(Le).filter(Boolean).join(".");function Ct(n,t){return{marker:n,...t}}var un=Ct("A",{shouldUse:n=>Array.isArray(n),serialize:(n,t)=>{n.length?n.forEach((e,i)=>{t(`${i}`,e)}):t("",Qt)},deserialize:{create:()=>[],has:(n,t)=>!(typeof n[t]>"u"),append:(n,t,e)=>{n.push(e)}}}),dn=Ct("M",{shouldUse:n=>n instanceof Map,serialize:(n,t)=>{n.forEach((e,i)=>{t(i,e)})},deserialize:{create:()=>new Map,has:(n,t)=>n.has(t),append:(n,t,e)=>{n.set(t,e)}}}),fn=Ct("S",{shouldUse:n=>n instanceof Set,serialize:(n,t)=>{let e=0;n.forEach(i=>{t(`${e++}`,i)})},deserialize:{create:()=>new Set,has:(n,t)=>n.has(t),append:(n,t,e)=>{n.add(e)}}}),zt=Ct("O",{shouldUse:n=>typeof n=="object",serialize:(n,t)=>{let e=i=>{let r=Reflect.ownKeys(i).filter(c=>c!=="constructor").filter(c=>typeof c!="symbol");r.length?r.filter(c=>c!=="constructor").filter(c=>typeof c!="symbol").forEach(c=>{let l=Reflect.get(n,c);t(c,l)}):t("",Qt);let o=Reflect.getPrototypeOf(i);!o||o?.hasOwnProperty("__proto__")||e(o)};e(n)},deserialize:{create:()=>({}),has:(n,t)=>!!n[t],append:(n,t,e)=>{n[t]=e}}}),Ue=[un,fn,dn];function Pn(n,t){let e=n;for(;e;){let i=Object.getOwnPropertyDescriptor(e,t);if(i)return i;e=Reflect.getPrototypeOf(e)}return null}function gn(n,t){let e=new WeakMap,i=r=>{let o=r.slice(1).map(Le).filter(Boolean);return o.slice(1).reduce((c,l)=>({context:c.context[c.pointer],pointer:l}),{context:n,pointer:o[0]})},s=(r,o=[])=>{if(e.has(r)&&e.get(r)?.some(d=>o.join(".").startsWith(d))){t(o,{...i(o),value:"[Circular]"});return}if(r&&!_e(r)&&(e.has(r)&&e.set(r,[]),e.set(r,[...e.get(r)??[],o.join(".")])),_e(r)){t(o,{...i(o),value:r});return}let c=Ue.find(l=>l.shouldUse(r))??zt;if(c){c.serialize(r,(l,d)=>{s(d,[...o,`${Xt}${c.marker}`,l])});return}};return s(n)}var mn=(n,t)=>{if(!ln(n))throw new Error(tt("only objects are serializable at the root level"));let e={data:[]},i=(r,o)=>{e.data.push([r,o])},s=(r,o)=>{t(hn(r),(...c)=>o.context[o.pointer](...c)),i(r,Se)};return gn(n,(r,{value:o,context:c,pointer:l})=>{let d=r.slice(1).join(Ht),f=Pn(c,l);if(f?.get||f?.set){f?.get&&t(W([...r,Oe]),()=>c[l]),f?.set&&t(W([...r,ke]),V=>{c[l]=V});let D=[f?.get?gt:Me,f?.set?gt:Me];i(d,`${Ne}${D.join("")}`)}else typeof o=="function"?s(d,{context:c,pointer:l}):i(d,o)}),e},An=(n,t)=>typeof n!="object"||n===null?n:n.data.reduce((e,[i,s])=>{let r=e,o=i.split(Ht),c=zt,l=null;for(let d=0;d<o.length;d++){let f=o[d];if(f[0]===Xt){let D=c.deserialize.has(r,l);if(c=[zt,...Ue].find(V=>V.marker===f[1]),!c)throw new Error(tt(`unknown marker "${f[1]}"`));D||(r[l]=c.deserialize.create()),r=r[l]}else l=f}if(s?.toString()===Qt)return e;if(s?.toString()===Se)c.deserialize.append(r,l,t(W(o)));else if(s?.toString()[0]===Ne){let d=s?.toString()[1]===gt,f=s?.toString()[2]===gt,D={};if(d){let V=t(W([...o,Oe]));D.get=()=>V()}f&&(D.set=t(W([...o,ke]))),Object.defineProperty(r,l,D)}else c.deserialize.append(r,l,s);return e},{[Symbol("transferred object")]:`${(JSON.stringify(n.data).length/1024).toFixed(2)}Kb`});function je(){let n=globalThis.performance;if(n&&n.now)return n.now();let t="",e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=e.length,s=0,r=10;for(;s<r;)t+=e.charAt(Math.floor(Math.random()*i)),s+=1;return t}var X=(n=>(n.ExposeAPI="ExposeAPI",n.Call="Call",n.Response="Response",n.Cleanup="Cleanup",n))(X||{}),R=class n{constructor(t,e){p(this,"correlationId",`M-${je()}`);p(this,"parentCorrelationId");this.type=t,this.payload=e}withParentCorrelationId(t){return this.parentCorrelationId=t,this}serialize(t){return JSON.stringify({parentCorrelationId:this.parentCorrelationId,correlationId:this.correlationId,type:this.type,payload:mn(this.payload,(e,i)=>{t(this.correlationId,e,i)})})}static fromEvent(t,e){let i=JSON.parse(t);return new n(i.type,An(i.payload,s=>e(i.correlationId,s))).withParentCorrelationId(i.correlationId)}},Bt=class extends R{constructor(t){super("Cleanup",t)}},Vt=class extends R{constructor(t){super("Response",t)}},mt=class extends R{constructor(t){super("Response",t)}},Gt=class extends R{constructor(t){super("Call",t)}},Kt=(n,t)=>`${n}_${t}`,Et,bt,q,x,Yt=class{constructor(t){h(this,Et,new FinalizationRegistry(t=>{this.postMessage(new Bt(t))}));h(this,bt,{[X.Cleanup]:t=>{let e=t.payload.functionMarkerKey,i=t.payload.callId;delete a(this,q)[e],i&&delete a(this,x)[i]},[X.Response]:async t=>{let e=t.payload.callId,i=t.payload.errorMessage;if(i)if(t.payload.errorStack){let r=new Error(i);r.stack=t.payload.errorStack,a(this,x)[e]?.reject(r)}else a(this,x)[e]?.reject(i);else{let s=t.payload.response;a(this,x)[e]?.resolve(s)}delete a(this,x)[e]},[X.Call]:async t=>{let e=t.payload.functionMarkerKey,i=a(this,q)[e];if(!i){this.postMessage(new mt({callId:t.payload.callId,errorMessage:tt("function is not available")}));return}try{let s=await i.value(...t.payload.props??[]);this.postMessage(new Vt({callId:t.payload.callId,response:s}))}catch(s){this.postMessage(new mt({callId:t.payload.callId,errorMessage:s.message,errorStack:s.stack}))}}});h(this,q,{});h(this,x,{});p(this,"queue",[]);this.port=t,this.port.onmessage=e=>{this.onMessage(e)}}onMessage(t){let e=R.fromEvent(t.data,(i,s)=>{let r=this.replaceTransferredFunction(i,s);return a(this,Et).register(r,{functionMarkerKey:Kt(i,s)}),r});a(this,bt)[e.type]?.(e),this.messageEvents[e.type]?.(e)}postMessage(t){this.port.postMessage(t.serialize(this.registerTransferredFunction.bind(this)))}registerTransferredFunction(t,e,i){let s=Kt(t,e);a(this,q)[s]={path:e,value:i}}replaceTransferredFunction(t,e){return(...i)=>{let s=`CALL-${crypto.randomUUID()}`;return this.postMessage(new Gt({callId:s,functionMarkerKey:Kt(t,e),props:i})),new Promise((r,o)=>{a(this,x)[s]={resolve:r,reject:o}})}}flush(){this.queue.forEach(t=>{this.postMessage(t)}),this.queue=[]}};Et=new WeakMap,bt=new WeakMap,q=new WeakMap,x=new WeakMap;var At=class extends Yt{constructor(){super(...arguments);p(this,"messageEvents",{})}expose(e){if(!e.type)throw new Error(tt('wrong exposed API instance, "type" property is required'));this.queue.push(new R(X.ExposeAPI,e)),this.flush()}};var H=(n=>(n.Ping="EDITOR_PLATFORM_TRANSPORT_EVENT:__Ping",n.RequestPort="EDITOR_PLATFORM_TRANSPORT_EVENT:__RequestPort",n.Pong="EDITOR_PLATFORM_TRANSPORT_EVENT:__Pong",n.Port="EDITOR_PLATFORM_TRANSPORT_EVENT:__Port",n))(H||{});var K,T,xt,Fe,Jt=class{constructor(t,e){h(this,xt);h(this,K,new Set);h(this,T);this.postMessage=t,this.onMessage=e}setActivePort(t){this.dispose(),w(this,T,t),u(this,xt,Fe).call(this)}dispose(){a(this,T)&&(a(this,T).close(),a(this,T).onmessage=null)}onHandshake(t){return a(this,K).add(t),()=>{a(this,K).delete(t)}}};K=new WeakMap,T=new WeakMap,xt=new WeakSet,Fe=function(){let t=a(this,T);if(!t){console.warn(De("port is required no notify onHandshake listeners"));return}a(this,K).forEach(e=>e(t))};var Q,Z,M,$e,We,qe,It=class extends Jt{constructor(e,i){super(e,i);h(this,M);h(this,Q,!1);h(this,Z,`consumer-${je()}`);u(this,M,$e).call(this);let s={type:H.Ping};e(JSON.stringify(s))}};Q=new WeakMap,Z=new WeakMap,M=new WeakSet,$e=function(){this.onMessage(e=>{try{let i=JSON.parse(e.data);switch(i.type){case H.Pong:{u(this,M,We).call(this);break}case H.Port:{u(this,M,qe).call(this,i.targetMemberId,e.ports?.[0]);break}}}catch{}})},We=function(){if(a(this,Q))return;w(this,Q,!0);let e={type:H.RequestPort,memberId:a(this,Z)};this.postMessage(JSON.stringify(e))},qe=function(e,i){if(e===a(this,Z)){if(!i)throw new Error(De("no port at consumer handshake"));this.setActivePort(i)}};var yt=class{get onConnect(){return this.handshake.onHandshake.bind(this.handshake)}},wt=class n extends yt{constructor(){super(...arguments);p(this,"handshake",new It(e=>{globalThis.parent.postMessage(e,"*")},e=>{globalThis.addEventListener("message",e)}))}static exposeAPI(e){new n().onConnect(s=>{new At(s).expose(e)})}};var vt=class n extends yt{constructor(){super(...arguments);p(this,"handshake",new It(e=>{globalThis.postMessage(e)},e=>{globalThis.addEventListener("message",e)}))}static exposeAPI(e){new n().onConnect(s=>{new At(s).expose(e)})}};var Tt=class{constructor(t){this.platformAppEvents=t}notify(t){switch(t.type){case Ut.EditorReady:this.platformAppEvents.notify({...t,type:v.EditorReady});break;case ht.HostEvent:this.platformAppEvents.notify({...t,type:v.HostEvent});break}}subscribe(t){this.platformAppEvents.subscribe(e=>{t(e)})}},re=(n=>(n.Frame="PLATFORM_FRAME_API",n.Worker="PLATFORM_WORKER_API",n))(re||{}),Rt=class{constructor(t,e){this.type=t,this.envType=e}async injectEnvironmentContext({events:t,privateApi:e}){await N.inject({environment:this.envType,events:t,privateApi:e,applicationAPIs:{}})}async injectApplicationContext(t){await y.inject(t)}},In={classic:"https://www.unpkg.com/@wix/design-system/dist/statics/tokens-default.global.css",studio:"https://www.unpkg.com/@wix/design-system/dist/statics/tokens-studio.global.css"},et,nt,_t,it,Dt,ze,te=class extends Rt{constructor(){super(re.Frame,Pt.Frame);h(this,Dt);h(this,et,new b);h(this,nt,new Tt(a(this,et)));h(this,_t);h(this,it);u(this,Dt,ze).call(this)}async initEnvironment(e){let{applicationPrivateAPI:i,privateAPI:s,context:r}=e,o=e.context?.appDefinitionId??e.appDefinitionId,c=e.context?e.context:{appDefinitionId:o};w(this,it,i),w(this,_t,s),await this.injectEnvironmentContext({privateApi:s,events:a(this,et),applicationAPIs:o?{[o]:a(this,it)}:{}}),await this.injectApplicationContext(c)}notify(e){a(this,nt).notify(e)}subscribe(e){a(this,nt).subscribe(e)}};et=new WeakMap,nt=new WeakMap,_t=new WeakMap,it=new WeakMap,Dt=new WeakSet,ze=function(){if(typeof globalThis?.document?.head?.prepend=="function"){let i=new URL(globalThis.location.href).searchParams.get("editorType")==="CLASSIC"?"classic":"studio",s=In[i],r=s&&!!document.querySelectorAll(`link[type="text/css"][href="${s}"]`)?.length;if(s&&!r){let o=document.createElement("link");o.setAttribute("rel","stylesheet"),o.setAttribute("type","text/css"),o.setAttribute("href",s),globalThis.document.head.prepend(o)}}};var _=(n=>(n.ApplicationLoadError="ApplicationLoadError",n.ApplicationFetchError="ApplicationFetchError",n.ApplicationExecuteError="ApplicationExecuteError",n))(_||{}),ee=class extends I{constructor(e,i){super(e,i,"EP Application Container Error");p(this,"state",{})}withUrl(e){return this.state={...this.state,url:e},this}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}withApiMethod(e){return this.state={...this.state,apiMethod:e},this}withApiType(e){return this.state={...this.state,apiType:e},this}},k=E(ee),yn="__APPLICATION_REGISTRY_KEY";async function wn(n,t,e){let i=new Function(Y,yn,e),s,r=o=>{if(s)throw k(_.ApplicationExecuteError,"Application registry called more than once").withAppDefinitionId(t.appDefinitionId);if(o.type!==t.type)throw k(_.ApplicationExecuteError,"Application has different type").withMessage("expected type",t.type).withMessage("received type",o.type);s=o};try{let o={...t};i.call(null,new y(o,await N.getInstance()),r)}catch(o){throw k(_.ApplicationExecuteError,o.message).withAppDefinitionId(t.appDefinitionId).withParentError(o)}return new Promise((o,c)=>{let l=n.subscribe(d=>{let f=setTimeout(()=>{clearTimeout(f),l(),s||c(k(_.ApplicationExecuteError,"Application registry was not called, threw by timeout").withAppDefinitionId(t.appDefinitionId))},5e3);d.type===v.ApplicationInit&&d.meta.appDefinitionId===t.appDefinitionId&&(clearTimeout(f),l(),s||c(k(_.ApplicationExecuteError,"Application registry was not called").withAppDefinitionId(t.appDefinitionId)),o({instance:s}))})})}var L,st,P,ne=class{constructor(t,e){h(this,L,{});h(this,st);h(this,P);w(this,st,t),w(this,P,e),a(this,P).subscribe(i=>{switch(i.type){case v.HostEvent:{i.payload.type===Ke.EventType.removeAppCompleted&&a(this,P).withEvent(a(this,P).factories.createApplicationRemovedEvent(i.payload.appDefinitionId),()=>this.removeApplication(i.payload.appDefinitionId));break}}})}async runApplication(t){let e=await this.loadApplication(t),i=await this.executeApplication(t,e);return this.setApplication(t.appDefinitionId,i),i}setApplication(t,e){a(this,L)[t]=e,a(this,P).withEvent(a(this,P).factories.createApplicationApiInitEvent(t,e?.api?.private?"private":"public"),()=>{a(this,st).applicationManager.setApplication(e)})}getApplication(t){return a(this,L)[t]}getAppDefinitionIds(){return Object.keys(a(this,L))}removeApplication(t){delete a(this,L)[t]}async loadApplication(t){let e=t.url;return a(this,P).withEvent(a(this,P).factories.createApplicationLoadEvent(t,e),async()=>{try{return await this.loadApplicationBundle(e)}catch(i){throw k(_.ApplicationLoadError).withUrl(e).withAppDefinitionId(t.appDefinitionId).withParentError(i)}})}async loadApplicationBundle(t){let e=await fetch(t,{method:"GET"});if(!(e.status>=200&&e.status<=299))throw k(_.ApplicationFetchError).withUrl(t);return e.text()}async executeApplication(t,e){return a(this,P).withEvent(a(this,P).factories.createApplicationExecuteEvent(t,t.url),async()=>{let{instance:i}=await wn(a(this,P),t,e);return i})}};L=new WeakMap,st=new WeakMap,P=new WeakMap;var z,rt,ot,U,at,ie=class extends Rt{constructor(){super(re.Worker,Pt.Worker);h(this,z,new b);h(this,rt,new Tt(a(this,z)));h(this,ot,null);h(this,U);h(this,at,[])}create(){}async initEnvironment(e){let{buildPrivateAPI:i}=e;w(this,U,await i({type:"EDITOR_ADDON"})),await this.injectEnvironmentContext({events:a(this,z),privateApi:a(this,U),applicationAPIs:{}}),w(this,ot,new ne(a(this,U),a(this,z))),a(this,at).forEach(s=>s(this))}async notify(e){await this.waitReady(),a(this,rt).notify(e)}subscribe(e){a(this,rt).subscribe(e)}async runApplication(e){await this.waitReady(),await a(this,ot).runApplication(e)}waitReady(){return new Promise(e=>{if(a(this,U))return e(this);a(this,at).push(e)})}};z=new WeakMap,rt=new WeakMap,ot=new WeakMap,U=new WeakMap,at=new WeakMap;var Zt="$_EP_TRANSPORT_ENV_CONTEXT_GUARD",B,Be,Ve,Mt=class{constructor(){h(this,B)}isEnvironmentApiExposed(){return!!globalThis[Zt]}async getContexts(){let[t,e]=await Promise.all([N.getInstance(),y.getInstance()]);return{environmentContext:t,applicationContext:e}}expose(){if(this.isEnvironmentApiExposed())return;let t=typeof importScripts=="function",e=globalThis.self&&globalThis.top&&globalThis.self!==globalThis.top;t?(u(this,B,Be).call(this),globalThis[Zt]=!0):e&&(u(this,B,Ve).call(this),globalThis[Zt]=!0)}};B=new WeakSet,Be=function(){vt.exposeAPI(new ie)},Ve=function(){wt.exposeAPI(new te)};var se=class extends I{constructor(e,i){super(e,i,"EP EnvironmentAPI Error");p(this,"state",{})}withUrl(e){return this.state={...this.state,url:e},this}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}},Qn=E(se);new Mt().expose();var oe=class extends I{constructor(e,i){super(e,i,"Auth Strategy Error");p(this,"state",{})}withAppDefinitionId(e){return this.state={...this.state,appDefinitionId:e},this}},Ge=E(oe);function vn(n,t){let e=Date.now(),i=n?new Date(n).getTime():null;return i&&i-e>t}var En=30*60*1e3,bn=()=>{let n;return{getAuthHeaders:async()=>{let t=await y.getInstance(),e=t.getAppDefinitionId(),i=t.getPrivateAPI();if(!e)throw Ge("EmptyAppDefinitionId");return(!n||vn(n.expires,En))&&(n=await i.auth.getAccessToken(e,await i.info.getMetaSiteId())),n?.token?{headers:{Authorization:n.token}}:(console.error(Ge("EmptyAppAuthInstance").withAppDefinitionId(e)),{headers:{Authorization:""}})}}},g=class n{constructor(t,e=[]){this.ShapeConstructor=t,this.selectedMethods=e}withPublicMethod(t){return new n(this.ShapeConstructor,[...this.selectedMethods,t])}build(){if(!this.selectedMethods.length)throw new Error("methods are not defined for the SDK shape");let t=this.selectedMethods.reduce((e,i)=>({...e,[i]:s=>{let r=new this.ShapeConstructor(s?.applicationContext);return r[i]?r[i].bind(r):()=>{console.error(`"${i}" is not defined in the SDK shape`)}}}),{});return Ee(t)}},ae=class extends I{constructor(t,e){super(t,e,"Base SDK Error")}},xn=E(ae),m=class{constructor(t=null){this.overriddenApplicationContext=t}getApplicationContext(){return this.overriddenApplicationContext?this.overriddenApplicationContext:y.getInstance()}async getAppDefinitionId(){return(await this.getApplicationContext()).getAppDefinitionId()}async getManifestContextId(){return(await this.getApplicationContext()).getManifestContextId()}async getRequiredManifestContextId(){let t=await this.getManifestContextId();if(!t)throw xn("ManifestContextIdRequired");return t}async getEnvironmentContext(){return(await this.getApplicationContext()).getEnvironmentContext()}async getPlatformPrivateAPI(){return(await this.getApplicationContext()).getPrivateAPI()}},ce=class extends m{async getPrivateAPI(){return(await this.getApplicationContext()).getPrivateApplicationAPI()}async getPublicAPI(t){return(await this.getPlatformPrivateAPI()).applicationManager.getPublicApplicationAPI(t)}async getAppInstance(){return(await this.getPlatformPrivateAPI()).info.getAppInstance(await this.getAppDefinitionId())}},oi=new g(ce).withPublicMethod("getPrivateAPI").withPublicMethod("getPublicAPI").withPublicMethod("getAppInstance").build(),Nt=class extends m{async addEventListener(t,e){return(await this.getApplicationContext()).getEvents().addEventListener(t,e)}},ai=new g(Nt).withPublicMethod("addEventListener").build(),pe=class extends m{async getSelection(){let t=await this.getPlatformPrivateAPI(),e=await t.components.getSelectedComponents();return Promise.all(e.map(i=>t.components.getComponent(i)))}async onSelectionChange(t){new Nt(this.getApplicationContext()).addEventListener("componentSelectionChanged",i=>{t(i.components)})}},ci=new g(pe).withPublicMethod("onSelectionChange").withPublicMethod("getSelection").build(),le=class extends m{async getViewMode(){return(await this.getPlatformPrivateAPI()).info.getViewMode()}async getLanguageCode(){return(await this.getPlatformPrivateAPI()).info.getLanguageCode()}},pi=new g(le).withPublicMethod("getViewMode").withPublicMethod("getLanguageCode").build(),ct=(n=>(n.UndefinedCompRef="UndefinedCompRef",n.NotAvailableMethod="NotAvailableMethod",n))(ct||{}),he=class extends I{constructor(t,e){super(t,e,"Widget Error")}},St=E(he),Je="underline";function Cn(n){return n.map(t=>He({font:t}).family).filter(Boolean)}function He(n){let t={family:void 0,size:void 0};if(n?.font){let{variableName:e,fallbackValue:i}=Tn(n.font);t.cssVariableName=e;let s=i.match(/(?:(["']).*?\1|\S)+/g)||[];for(let r=0;r<s.length;r++){let o=s[r];switch(o){case"bold":t.bold=!0;break;case"italic":t.italic=!0;break;default:o?.endsWith("px")?t.size=parseInt(o,10):r===s.length-1?t.family=o:t.family=(t.family||"")+" "+o}}}return n?.textDecoration&&(t.underline=n.textDecoration===Je),t.family=t.family?.trim().replace(/['"]+/g,""),t}function Tn(n){let t=n.trim(),e=t.match(/var\((--[\w-]+),\s*(.+)\)/);return e?{variableName:e[1],fallbackValue:e[2]?.trim()??""}:{variableName:void 0,fallbackValue:t}}var F=class n{constructor(t,e){this.compRef=t,this.privateAPI=e}async getProp(t){return(await this.privateAPI.refComponents.getProps(this.compRef))?.[t]}async setProp(t,e){await this.privateAPI.refComponents.setProps(this.compRef,{[t]:e})}async getDesignPreset(){return this.privateAPI.designPresets.getDesignPresetName(this.compRef)}async setDesignPreset(t){await this.privateAPI.designPresets.setDesignPresetByName(this.compRef,t)}async getNestedWidget(t){let e=await this.privateAPI.refComponents.findComponentBySelector(this.compRef,t);return e?new n(e,this.privateAPI):null}},C,j,ue=class extends m{constructor(){super(...arguments);h(this,C)}async setPreloadFonts(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,C,j).call(this);if(await i.refComponents.isRefComponent(s))throw St(ct.NotAvailableMethod,"not available for the current component type");let r=Cn(e);await i.customElement.setPreloadFonts(s,r)}async getProp(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,C,j).call(this);return await i.refComponents.isRefComponent(s)?new F(s,i).getProp(e):i.customElement.getAttribute(s,e)}async setProp(e,i){let s=await this.getPlatformPrivateAPI(),r=await u(this,C,j).call(this);if(await s.refComponents.isRefComponent(r))return new F(r,s).setProp(e,i);await s.customElement.setAttribute(r,e,i)}async getDesignPreset(){let e=await this.getPlatformPrivateAPI(),i=await u(this,C,j).call(this);if(!await e.refComponents.isRefComponent(i))throw St(ct.NotAvailableMethod,"not available for the current component type");return new F(i,e).getDesignPreset()}async setDesignPreset(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,C,j).call(this);if(!await i.refComponents.isRefComponent(s))throw St(ct.NotAvailableMethod,"not available for the current component type");return new F(s,i).setDesignPreset(e)}async getNestedWidget(e){let i=await this.getPlatformPrivateAPI(),s=await u(this,C,j).call(this);return new F(s,i).getNestedWidget(e)}};C=new WeakSet,j=async function(){let s=(await(await this.getPlatformPrivateAPI()).components.getSelectedComponents())[0];if(!s)throw St(ct.UndefinedCompRef);return s};var Rn=new g(ue).withPublicMethod("getNestedWidget").withPublicMethod("setDesignPreset").withPublicMethod("getDesignPreset").withPublicMethod("setProp").withPublicMethod("getProp").withPublicMethod("setPreloadFonts"),li=Rn.build();function Mn(n){return`${n.cssVariableName?`var(${n.cssVariableName}, `:""}${n.italic?"italic ":""}${n.bold?"bold ":""}${n.size||16}px ${n.family?.split(",").map(t=>`"${t.replace(/['"]+/g,"")}"`).join(",")||"serif"}${n.cssVariableName?")":""}`}function _n(n){if(!n)return null;let t=n,e=t.match(/var\((--[\w-]+),\s*(.+)\)/);return e?{cssVariableName:e[1],color:e[2]}:{color:t}}function Ye(n){return n?n.cssVariableName?`var(${n.cssVariableName}, ${n.color})`:n.color:""}var Dn={transformFontInternalValue:n=>{if(n){let{theme:t,cssVariableName:e,bold:i,italic:s,underline:r,...o}=n;return{...o,style:{bold:i,italic:s,underline:r},editorKey:e||t||""}}else return{editorKey:"font_7",family:"helvetica-w01-roman",size:16,style:{}}}},de=class extends m{async selectColor(t,e){let i=await this.getPlatformPrivateAPI(),s=_n(t),r=Ye(s);return await i.inputs.openColorPicker({color:s?.cssVariableName||s?.theme||s?.color},({color:o,theme:c,cssVariableTheme:l})=>{s={color:o,theme:c,cssVariableName:l},r=Ye(s),e?.onChange?.(r)}),r}async selectFont(t,e){let i=await this.getPlatformPrivateAPI(),s=He(t),r=t;return await i.inputs.openFontPickerV2({...e,panelSectionsDefinition:{htmlTag:"hidden"},componentStyle:Dn.transformFontInternalValue(s)},(o,c)=>{r={font:Mn(o),textDecoration:o.underline?Je:void 0},e?.onChange?.(r)}),r}},hi=new g(de).withPublicMethod("selectColor").withPublicMethod("selectFont").build(),fe=class extends m{async openLanguageSupportPanel(){return(await this.getPlatformPrivateAPI()).panels.openLanguageSupportPanel()}async openFontsUploadPanel(){return(await this.getPlatformPrivateAPI()).panels.openFontsUploadPanel()}},ui=new g(fe).withPublicMethod("openLanguageSupportPanel").withPublicMethod("openFontsUploadPanel").build(),Pe=class extends m{async openDashboardModal(t){return(await this.getPlatformPrivateAPI()).panels.openDashboardPanel(await this.getAppDefinitionId(),t)}},di=new g(Pe).withPublicMethod("openDashboardModal").build(),ge=class extends m{async getStyleDefinitions(){let t=await this.getPlatformPrivateAPI(),e=await this.getRequiredManifestContextId();return t.builderComponent.getStyleDefinitions(e)}async getStyles(){let t=await this.getPlatformPrivateAPI(),e=await this.getRequiredManifestContextId();return t.builderComponent.getStyles(e)}async setStyles(t){let e=await this.getPlatformPrivateAPI(),i=await this.getRequiredManifestContextId();return e.builderComponent.setStyles(i,t)}async getDataDefinitions(){let t=await this.getPlatformPrivateAPI(),e=await this.getRequiredManifestContextId();return t.builderComponent.getDataDefinitions(e)}async getData(){let t=await this.getPlatformPrivateAPI(),e=await this.getRequiredManifestContextId();return t.builderComponent.getData(e)}async setData(t){let e=await this.getPlatformPrivateAPI(),i=await this.getRequiredManifestContextId();return e.builderComponent.setData(i,t)}async getState(){return null}async setState(){return null}async getStateDefinitions(){return null}async onChange(t){let e=await this.getPlatformPrivateAPI(),i=await this.getRequiredManifestContextId();return e.builderComponent.onChange(i,t)}},fi=new g(ge).withPublicMethod("getDataDefinitions").withPublicMethod("getData").withPublicMethod("setData").withPublicMethod("getStyleDefinitions").withPublicMethod("getStyles").withPublicMethod("setStyles").withPublicMethod("getState").withPublicMethod("setState").withPublicMethod("onChange").withPublicMethod("getStateDefinitions").build(),me=class extends m{async get(t){return(await this.getPlatformPrivateAPI()).userPreferences.get(await this.getAppDefinitionId(),t)}async set(t){return(await this.getPlatformPrivateAPI()).userPreferences.set(await this.getAppDefinitionId(),t)}},Pi=new g(me).withPublicMethod("set").withPublicMethod("get").build(),Ae=class extends m{async getData(){return(await this.getPlatformPrivateAPI()).externalPanels.getData()}async setData(t){return(await this.getPlatformPrivateAPI()).externalPanels.setData(t)}async getStyle(){return(await this.getPlatformPrivateAPI()).externalPanels.getStyle()}async setStyle(t){return(await this.getPlatformPrivateAPI()).externalPanels.setStyle(t)}async getTheme(){return(await this.getPlatformPrivateAPI()).externalPanels.getTheme()}async selectMedia(){return(await this.getPlatformPrivateAPI()).externalPanels.selectMedia()}async selectLink(...t){return(await this.getPlatformPrivateAPI()).externalPanels.selectLink(...t)}async selectColor(...t){return async()=>(await this.getPlatformPrivateAPI()).externalPanels.selectColor(...t)}async translate(t,e){return(await this.getPlatformPrivateAPI()).externalPanels.translate(t,e)}},gi=new g(Ae).withPublicMethod("getTheme").withPublicMethod("getData").withPublicMethod("getStyle").withPublicMethod("selectColor").withPublicMethod("selectLink").withPublicMethod("selectMedia").withPublicMethod("setData").withPublicMethod("setStyle").withPublicMethod("translate").build(),Sn=()=>{let n=new URLSearchParams(window.location.search),t=n.has("essentials")?JSON.parse(n.get("essentials")):void 0,{monitoring:e,...i}=t||{},s=n.get("appDefinitionId"),{context:r,config:o}=e||{},c=be({hostContext:{appId:s,...r},monitoringConfig:o,sentrySDK:typeof window<"u"?window.Sentry:void 0});return{environment:{},applicationContext:y.getInstance(),channel:{observeState:async()=>({disconnect(){}})},getMonitoringClient:c,essentials:i}},Nn=()=>({environment:{},applicationContext:y.getInstance(),channel:{observeState:async()=>({disconnect(){}})}}),Ie={host:()=>typeof importScripts=="function"?Nn():Sn(),auth:bn};var wi=()=>{let n=Ie.host(),t=Ie.auth();ve({auth:t,host:n}).enableContext("module")};export{wi as enableClient};
8
8
  //# sourceMappingURL=editor.js.map