@wix/cli-app 1.1.165 → 1.1.167

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 (84) hide show
  1. package/build/{AddPermissionCommand-KRCVUZZ5.js → AddPermissionCommand-R746BHR5.js} +2 -2
  2. package/build/{DevCommand-YARQOKVI.js → DevCommand-CKCUIMQ7.js} +10 -10
  3. package/build/{GenerateCommand-GLOKHPCF.js → GenerateCommand-4J3RKWIV.js} +10 -10
  4. package/build/{LogsCommand-3AIJRMAN.js → LogsCommand-6QLWARX7.js} +3 -3
  5. package/build/PreviewCommand-5FJEIIPR.js +19 -0
  6. package/build/ReleaseCommand-MFBXBLIH.js +23 -0
  7. package/build/{ServeCommand-EHMJRUC5.js → ServeCommand-B3MMIWSX.js} +3 -3
  8. package/build/{build-DEA3YVVK.js → build-Z4MTXLAQ.js} +6 -6
  9. package/build/{chunk-MBOJ5HRZ.js → chunk-62F24QB5.js} +8 -4
  10. package/build/chunk-62F24QB5.js.map +1 -0
  11. package/build/{chunk-NDZYQQPO.js → chunk-GZMYMILB.js} +2 -2
  12. package/build/{chunk-CAR6ONP6.js → chunk-HUWTDLNU.js} +2 -2
  13. package/build/{chunk-QBZST5PW.js → chunk-ISHV7FPE.js} +58 -40
  14. package/build/{chunk-QBZST5PW.js.map → chunk-ISHV7FPE.js.map} +1 -1
  15. package/build/{chunk-HAG55HNE.js → chunk-JDFSGI5Y.js} +2 -2
  16. package/build/{chunk-RIPBEV3P.js → chunk-MS4HNHKA.js} +588 -2771
  17. package/build/{chunk-RIPBEV3P.js.map → chunk-MS4HNHKA.js.map} +1 -1
  18. package/build/{chunk-T4W2R2ZB.js → chunk-NSC3X7TO.js} +142 -8
  19. package/build/chunk-NSC3X7TO.js.map +1 -0
  20. package/build/{chunk-SYV5LN52.js → chunk-NV2YRHO2.js} +4 -4
  21. package/build/{chunk-W2DRV54X.js → chunk-P4YNBBGD.js} +3 -3
  22. package/build/{chunk-GYPETJFQ.js → chunk-SARA3KL6.js} +2 -2
  23. package/build/{chunk-VYESBDTV.js → chunk-SSVVBMIK.js} +6 -6
  24. package/build/{chunk-PH3XKA52.js → chunk-TJYCXF3Y.js} +2 -2
  25. package/build/{chunk-G7LL5J24.js → chunk-XDB4OLY2.js} +6 -6
  26. package/build/{chunk-WLX3MGV7.js → chunk-YXBHRN4E.js} +2 -475
  27. package/build/chunk-YXBHRN4E.js.map +1 -0
  28. package/build/{chunk-MLILZFCW.js → chunk-Z2ABMO4N.js} +2 -2
  29. package/build/{chunk-425MARGE.js → chunk-Z2U5TFST.js} +2 -2
  30. package/build/{chunk-5XH557TM.js → chunk-ZBARCRCN.js} +2 -2
  31. package/build/cloudflare-runtime/entry.js +6 -6
  32. package/build/cloudflare-runtime/getRegisteredExtensions.js +6 -6
  33. package/build/index.js +23 -23
  34. package/build/platform-sdk/chunk-42Y3PAPA.js +2 -0
  35. package/build/platform-sdk/chunk-42Y3PAPA.js.map +1 -0
  36. package/build/platform-sdk/chunk-7JKHQSWI.js +2 -0
  37. package/build/platform-sdk/chunk-7JKHQSWI.js.map +1 -0
  38. package/build/platform-sdk/{chunk-UTEFPCPF.js → chunk-KXCY2KWZ.js} +2 -2
  39. package/build/platform-sdk/dashboard.js +1 -1
  40. package/build/platform-sdk/dashboard.js.map +1 -1
  41. package/build/platform-sdk/editor.js +1 -1
  42. package/build/platform-sdk/sdk-context.js +1 -1
  43. package/build/platform-sdk/sdk-context.js.map +1 -1
  44. package/build/platform-sdk/site.js +1 -1
  45. package/build/platform-sdk/site.js.map +1 -1
  46. package/build/platform-sdk/web-methods.js +1 -1
  47. package/build/{preview-ISYN4Y6D.js → preview-VE24S6BC.js} +12 -12
  48. package/build/{release-KCRYUIWG.js → release-XNPJ5PFC.js} +14 -14
  49. package/build/{render-command-MTNQJORI.js → render-command-NWTZRACN.js} +5 -5
  50. package/package.json +5 -5
  51. package/templates/dashboard-modal/dependencies.json +1 -1
  52. package/build/PreviewCommand-KY6KTRCJ.js +0 -19
  53. package/build/ReleaseCommand-NRCR2WWV.js +0 -23
  54. package/build/chunk-MBOJ5HRZ.js.map +0 -1
  55. package/build/chunk-T4W2R2ZB.js.map +0 -1
  56. package/build/chunk-WLX3MGV7.js.map +0 -1
  57. package/build/platform-sdk/chunk-QSTEFEOT.js +0 -2
  58. package/build/platform-sdk/chunk-QSTEFEOT.js.map +0 -1
  59. package/build/platform-sdk/chunk-RSZB4TBC.js +0 -2
  60. package/build/platform-sdk/chunk-RSZB4TBC.js.map +0 -1
  61. /package/build/{AddPermissionCommand-KRCVUZZ5.js.map → AddPermissionCommand-R746BHR5.js.map} +0 -0
  62. /package/build/{DevCommand-YARQOKVI.js.map → DevCommand-CKCUIMQ7.js.map} +0 -0
  63. /package/build/{GenerateCommand-GLOKHPCF.js.map → GenerateCommand-4J3RKWIV.js.map} +0 -0
  64. /package/build/{LogsCommand-3AIJRMAN.js.map → LogsCommand-6QLWARX7.js.map} +0 -0
  65. /package/build/{PreviewCommand-KY6KTRCJ.js.map → PreviewCommand-5FJEIIPR.js.map} +0 -0
  66. /package/build/{ReleaseCommand-NRCR2WWV.js.map → ReleaseCommand-MFBXBLIH.js.map} +0 -0
  67. /package/build/{ServeCommand-EHMJRUC5.js.map → ServeCommand-B3MMIWSX.js.map} +0 -0
  68. /package/build/{build-DEA3YVVK.js.map → build-Z4MTXLAQ.js.map} +0 -0
  69. /package/build/{chunk-NDZYQQPO.js.map → chunk-GZMYMILB.js.map} +0 -0
  70. /package/build/{chunk-CAR6ONP6.js.map → chunk-HUWTDLNU.js.map} +0 -0
  71. /package/build/{chunk-HAG55HNE.js.map → chunk-JDFSGI5Y.js.map} +0 -0
  72. /package/build/{chunk-SYV5LN52.js.map → chunk-NV2YRHO2.js.map} +0 -0
  73. /package/build/{chunk-W2DRV54X.js.map → chunk-P4YNBBGD.js.map} +0 -0
  74. /package/build/{chunk-GYPETJFQ.js.map → chunk-SARA3KL6.js.map} +0 -0
  75. /package/build/{chunk-VYESBDTV.js.map → chunk-SSVVBMIK.js.map} +0 -0
  76. /package/build/{chunk-PH3XKA52.js.map → chunk-TJYCXF3Y.js.map} +0 -0
  77. /package/build/{chunk-G7LL5J24.js.map → chunk-XDB4OLY2.js.map} +0 -0
  78. /package/build/{chunk-MLILZFCW.js.map → chunk-Z2ABMO4N.js.map} +0 -0
  79. /package/build/{chunk-425MARGE.js.map → chunk-Z2U5TFST.js.map} +0 -0
  80. /package/build/{chunk-5XH557TM.js.map → chunk-ZBARCRCN.js.map} +0 -0
  81. /package/build/platform-sdk/{chunk-UTEFPCPF.js.map → chunk-KXCY2KWZ.js.map} +0 -0
  82. /package/build/{preview-ISYN4Y6D.js.map → preview-VE24S6BC.js.map} +0 -0
  83. /package/build/{release-KCRYUIWG.js.map → release-XNPJ5PFC.js.map} +0 -0
  84. /package/build/{render-command-MTNQJORI.js.map → render-command-NWTZRACN.js.map} +0 -0
@@ -11,7 +11,7 @@ import {
11
11
  readJson,
12
12
  require_lib,
13
13
  writeJson
14
- } from "./chunk-RIPBEV3P.js";
14
+ } from "./chunk-MS4HNHKA.js";
15
15
  import {
16
16
  __toESM,
17
17
  init_esm_shims
@@ -351,4 +351,4 @@ export {
351
351
  getRepoType,
352
352
  createPackageManager
353
353
  };
354
- //# sourceMappingURL=chunk-MLILZFCW.js.map
354
+ //# sourceMappingURL=chunk-Z2ABMO4N.js.map
@@ -15,7 +15,7 @@ import {
15
15
  toURLSearchParams,
16
16
  useHttpClient,
17
17
  usePanoramaMethodLogger
18
- } from "./chunk-RIPBEV3P.js";
18
+ } from "./chunk-MS4HNHKA.js";
19
19
  import {
20
20
  __commonJS,
21
21
  __toESM,
@@ -4806,4 +4806,4 @@ export {
4806
4806
  getBackendEventSlug,
4807
4807
  useExtensionDataClient
4808
4808
  };
4809
- //# sourceMappingURL=chunk-425MARGE.js.map
4809
+ //# sourceMappingURL=chunk-Z2U5TFST.js.map
@@ -5,7 +5,7 @@ import {
5
5
  isCliSystemError,
6
6
  wixCliCliCommand,
7
7
  wixCliCliCommandStatus
8
- } from "./chunk-RIPBEV3P.js";
8
+ } from "./chunk-MS4HNHKA.js";
9
9
  import {
10
10
  __commonJS,
11
11
  __toESM,
@@ -594,4 +594,4 @@ export {
594
594
  addUserFields,
595
595
  reportCommandStartEvent
596
596
  };
597
- //# sourceMappingURL=chunk-5XH557TM.js.map
597
+ //# sourceMappingURL=chunk-ZBARCRCN.js.map
@@ -4435,7 +4435,7 @@ import { dirname, sep } from "node:path";
4435
4435
  // ../../node_modules/@wix/sdk-context/build/browser/index.mjs
4436
4436
  var wixContext = {};
4437
4437
 
4438
- // ../../node_modules/@wix/sdk-types/build/browser/index.mjs
4438
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-types/build/browser/index.mjs
4439
4439
  function EventDefinition(type, isDomainEvent = false, transformations = (x) => x) {
4440
4440
  return () => ({
4441
4441
  __type: "event-definition",
@@ -4604,7 +4604,7 @@ function objectToKeyValue(input) {
4604
4604
  return Object.entries(input).filter(([_, value]) => Boolean(value)).map(([key, value]) => `${key}=${value}`).join(",");
4605
4605
  }
4606
4606
 
4607
- // ../../node_modules/@wix/sdk-runtime/build/context.js
4607
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/context.js
4608
4608
  function runWithoutContext(fn) {
4609
4609
  const globalContext = globalThis.__wix_context__;
4610
4610
  const moduleContext = {
@@ -4636,14 +4636,14 @@ function runWithoutContext(fn) {
4636
4636
  }
4637
4637
  }
4638
4638
 
4639
- // ../../node_modules/@wix/sdk-runtime/build/constants.js
4639
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/constants.js
4640
4640
  var RESTResponseToSDKResponseRenameMap = {
4641
4641
  id: "_id",
4642
4642
  createdDate: "_createdDate",
4643
4643
  updatedDate: "_updatedDate"
4644
4644
  };
4645
4645
 
4646
- // ../../node_modules/@wix/sdk-runtime/build/utils.js
4646
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/utils.js
4647
4647
  function constantCase(input) {
4648
4648
  return split(input).map((part) => part.toLocaleUpperCase()).join("_");
4649
4649
  }
@@ -4669,7 +4669,7 @@ function split(value) {
4669
4669
  return result.slice(start, end).split(/\0/g);
4670
4670
  }
4671
4671
 
4672
- // ../../node_modules/@wix/sdk-runtime/build/transform-error.js
4672
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/transform-error.js
4673
4673
  var isValidationError = (httpClientError) => "validationError" in (httpClientError.response?.data?.details ?? {});
4674
4674
  var isApplicationError = (httpClientError) => "applicationError" in (httpClientError.response?.data?.details ?? {});
4675
4675
  var isClientError = (httpClientError) => (httpClientError.response?.status ?? -1) >= 400 && (httpClientError.response?.status ?? -1) < 500;
@@ -4929,7 +4929,7 @@ var errorBuilder2 = (code, description, details, data) => {
4929
4929
  });
4930
4930
  };
4931
4931
 
4932
- // ../../node_modules/@wix/sdk-runtime/build/rest-modules.js
4932
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/rest-modules.js
4933
4933
  var DOMAINS = ["wix.com", "editorx.com"];
4934
4934
  var REGEX_CAPTURE_DOMAINS = new RegExp(`\\.(${DOMAINS.join("|")})$`);
4935
4935
  var WIX_API_DOMAINS = ["42.wixprod.net", "uw2-edt-1.wixprod.net"];
@@ -4278,7 +4278,7 @@ var init_browser = __esm({
4278
4278
  // ../../node_modules/@wix/sdk-context/build/browser/index.mjs
4279
4279
  var wixContext = {};
4280
4280
 
4281
- // ../../node_modules/@wix/sdk-types/build/browser/index.mjs
4281
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-types/build/browser/index.mjs
4282
4282
  function EventDefinition(type, isDomainEvent = false, transformations = (x) => x) {
4283
4283
  return () => ({
4284
4284
  __type: "event-definition",
@@ -4447,7 +4447,7 @@ function objectToKeyValue(input) {
4447
4447
  return Object.entries(input).filter(([_, value]) => Boolean(value)).map(([key, value]) => `${key}=${value}`).join(",");
4448
4448
  }
4449
4449
 
4450
- // ../../node_modules/@wix/sdk-runtime/build/context.js
4450
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/context.js
4451
4451
  function runWithoutContext(fn) {
4452
4452
  const globalContext = globalThis.__wix_context__;
4453
4453
  const moduleContext = {
@@ -4479,14 +4479,14 @@ function runWithoutContext(fn) {
4479
4479
  }
4480
4480
  }
4481
4481
 
4482
- // ../../node_modules/@wix/sdk-runtime/build/constants.js
4482
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/constants.js
4483
4483
  var RESTResponseToSDKResponseRenameMap = {
4484
4484
  id: "_id",
4485
4485
  createdDate: "_createdDate",
4486
4486
  updatedDate: "_updatedDate"
4487
4487
  };
4488
4488
 
4489
- // ../../node_modules/@wix/sdk-runtime/build/utils.js
4489
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/utils.js
4490
4490
  function constantCase(input) {
4491
4491
  return split(input).map((part) => part.toLocaleUpperCase()).join("_");
4492
4492
  }
@@ -4512,7 +4512,7 @@ function split(value) {
4512
4512
  return result.slice(start, end).split(/\0/g);
4513
4513
  }
4514
4514
 
4515
- // ../../node_modules/@wix/sdk-runtime/build/transform-error.js
4515
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/transform-error.js
4516
4516
  var isValidationError = (httpClientError) => "validationError" in (httpClientError.response?.data?.details ?? {});
4517
4517
  var isApplicationError = (httpClientError) => "applicationError" in (httpClientError.response?.data?.details ?? {});
4518
4518
  var isClientError = (httpClientError) => (httpClientError.response?.status ?? -1) >= 400 && (httpClientError.response?.status ?? -1) < 500;
@@ -4772,7 +4772,7 @@ var errorBuilder2 = (code, description, details, data) => {
4772
4772
  });
4773
4773
  };
4774
4774
 
4775
- // ../../node_modules/@wix/sdk-runtime/build/rest-modules.js
4775
+ // ../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/rest-modules.js
4776
4776
  var DOMAINS = ["wix.com", "editorx.com"];
4777
4777
  var REGEX_CAPTURE_DOMAINS = new RegExp(`\\.(${DOMAINS.join("|")})$`);
4778
4778
  var WIX_API_DOMAINS = ["42.wixprod.net", "uw2-edt-1.wixprod.net"];
package/build/index.js CHANGED
@@ -3,18 +3,18 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  createI18nT,
5
5
  docsExtensionTypeSchema
6
- } from "./chunk-HAG55HNE.js";
6
+ } from "./chunk-JDFSGI5Y.js";
7
7
  import {
8
8
  runCommand
9
- } from "./chunk-MBOJ5HRZ.js";
10
- import "./chunk-5XH557TM.js";
9
+ } from "./chunk-62F24QB5.js";
10
+ import "./chunk-ZBARCRCN.js";
11
11
  import "./chunk-VJQHGLIW.js";
12
- import "./chunk-CAR6ONP6.js";
12
+ import "./chunk-HUWTDLNU.js";
13
13
  import {
14
14
  external_exports,
15
15
  package_default,
16
16
  require_react
17
- } from "./chunk-RIPBEV3P.js";
17
+ } from "./chunk-MS4HNHKA.js";
18
18
  import {
19
19
  __commonJS,
20
20
  __require,
@@ -3377,8 +3377,8 @@ var {
3377
3377
  // src/commands/build.ts
3378
3378
  init_esm_shims();
3379
3379
  var buildCommand = (services) => createCommand("build").action(async (_, command) => {
3380
- const { runCommand: runCommand2 } = await import("./render-command-MTNQJORI.js");
3381
- const { build } = await import("./build-DEA3YVVK.js");
3380
+ const { runCommand: runCommand2 } = await import("./render-command-NWTZRACN.js");
3381
+ const { build } = await import("./build-Z4MTXLAQ.js");
3382
3382
  await runCommand2(command, services, build);
3383
3383
  });
3384
3384
 
@@ -3443,8 +3443,8 @@ var devCommand = (services) => {
3443
3443
  return createCommand("dev").option("-s, --https", t("dev_command_def.option.https")).option("--port <port>", t("dev_command_def.option.port"), validatePort).addOption(
3444
3444
  new Option("--origin <url>", t("dev_command_def.option.origin")).argParser(validateBase).hideHelp()
3445
3445
  ).action(async (options, command) => {
3446
- const { DevCommand } = await import("./DevCommand-YARQOKVI.js");
3447
- const { renderCommand } = await import("./render-command-MTNQJORI.js");
3446
+ const { DevCommand } = await import("./DevCommand-CKCUIMQ7.js");
3447
+ const { renderCommand } = await import("./render-command-NWTZRACN.js");
3448
3448
  const { https = false, origin, port } = options;
3449
3449
  await renderCommand(
3450
3450
  command,
@@ -3483,17 +3483,17 @@ var previewCommand = (services) => {
3483
3483
  ).hideHelp()
3484
3484
  ).action(async (options, command) => {
3485
3485
  const { site, baseUrl, json } = options;
3486
- const { renderCommand, runCommand: runCommand2 } = await import("./render-command-MTNQJORI.js");
3486
+ const { renderCommand, runCommand: runCommand2 } = await import("./render-command-NWTZRACN.js");
3487
3487
  if (json) {
3488
3488
  return runCommand2(command, services, async (model) => {
3489
- const { nonInteractivePreview } = await import("./preview-ISYN4Y6D.js");
3489
+ const { nonInteractivePreview } = await import("./preview-VE24S6BC.js");
3490
3490
  return nonInteractivePreview(services, model, {
3491
3491
  baseUrl,
3492
3492
  siteId: site
3493
3493
  });
3494
3494
  });
3495
3495
  }
3496
- const { PreviewCommand } = await import("./PreviewCommand-KY6KTRCJ.js");
3496
+ const { PreviewCommand } = await import("./PreviewCommand-5FJEIIPR.js");
3497
3497
  await renderCommand(
3498
3498
  command,
3499
3499
  services,
@@ -3510,8 +3510,8 @@ var addPermissionCommand = (services) => {
3510
3510
  return createCommand("add-permission").description("adding a permission to the app").addOption(
3511
3511
  new Option("-p, --permission-id <id>", t("the permission id to add"))
3512
3512
  ).action(async (options, command) => {
3513
- const { renderCommand } = await import("./render-command-MTNQJORI.js");
3514
- const { AddPermissionCommand } = await import("./AddPermissionCommand-KRCVUZZ5.js");
3513
+ const { renderCommand } = await import("./render-command-NWTZRACN.js");
3514
+ const { AddPermissionCommand } = await import("./AddPermissionCommand-R746BHR5.js");
3515
3515
  const { permissionId = "" } = options;
3516
3516
  await renderCommand(
3517
3517
  command,
@@ -3527,8 +3527,8 @@ var import_react4 = __toESM(require_react(), 1);
3527
3527
  var serveCommand = (services) => {
3528
3528
  const t = createI18nT();
3529
3529
  return createCommand("serve").description(t("serve_command_def.description")).action(async (_, command) => {
3530
- const { renderCommand } = await import("./render-command-MTNQJORI.js");
3531
- const { ServeCommandDeprecated } = await import("./ServeCommand-EHMJRUC5.js");
3530
+ const { renderCommand } = await import("./render-command-NWTZRACN.js");
3531
+ const { ServeCommandDeprecated } = await import("./ServeCommand-B3MMIWSX.js");
3532
3532
  await renderCommand(command, services, /* @__PURE__ */ import_react4.default.createElement(ServeCommandDeprecated, null));
3533
3533
  });
3534
3534
  };
@@ -3543,8 +3543,8 @@ var generateCommand = (services) => {
3543
3543
  t("generate_command.type_flag"),
3544
3544
  validateDocsExtensionType
3545
3545
  ).description(t("generate_command.description")).action(async (options, command) => {
3546
- const { GenerateCommand } = await import("./GenerateCommand-GLOKHPCF.js");
3547
- const { renderCommand } = await import("./render-command-MTNQJORI.js");
3546
+ const { GenerateCommand } = await import("./GenerateCommand-4J3RKWIV.js");
3547
+ const { renderCommand } = await import("./render-command-NWTZRACN.js");
3548
3548
  const { type } = options;
3549
3549
  await renderCommand(
3550
3550
  command,
@@ -3568,8 +3568,8 @@ var logsCommand = (services) => {
3568
3568
  validateVersion
3569
3569
  ).action(async (options, command) => {
3570
3570
  const { version } = options;
3571
- const { renderCommand } = await import("./render-command-MTNQJORI.js");
3572
- const { LogsCommand } = await import("./LogsCommand-3AIJRMAN.js");
3571
+ const { renderCommand } = await import("./render-command-NWTZRACN.js");
3572
+ const { LogsCommand } = await import("./LogsCommand-6QLWARX7.js");
3573
3573
  await renderCommand(command, services, /* @__PURE__ */ import_react6.default.createElement(LogsCommand, { version }));
3574
3574
  });
3575
3575
  };
@@ -3602,8 +3602,8 @@ var releaseCommand = (services) => {
3602
3602
  t("app_preview_command_def.option.json")
3603
3603
  ).hideHelp()
3604
3604
  ).action(async (options, command) => {
3605
- const { renderCommand } = await import("./render-command-MTNQJORI.js");
3606
- const { ReleaseCommand, ReleaseVersionType } = await import("./ReleaseCommand-NRCR2WWV.js");
3605
+ const { renderCommand } = await import("./render-command-NWTZRACN.js");
3606
+ const { ReleaseCommand, ReleaseVersionType } = await import("./ReleaseCommand-MFBXBLIH.js");
3607
3607
  const { baseUrl, site, comment, json } = options;
3608
3608
  const versionType = options.versionType ? {
3609
3609
  major: ReleaseVersionType.MAJOR,
@@ -3617,7 +3617,7 @@ var releaseCommand = (services) => {
3617
3617
  };
3618
3618
  if (json) {
3619
3619
  return runCommand(command, services, async (model) => {
3620
- const { nonInteractiveRelease } = await import("./release-KCRYUIWG.js");
3620
+ const { nonInteractiveRelease } = await import("./release-XNPJ5PFC.js");
3621
3621
  return nonInteractiveRelease(services, model, props);
3622
3622
  });
3623
3623
  }
@@ -0,0 +1,2 @@
1
+ function p(n,e=!1,i=t=>t){return()=>({__type:"event-definition",type:n,isDomainEvent:e,transformations:i})}var h="wix_spi_error",u={ASC:"ASC",DESC:"DESC"},E={...u,BOTH:"BOTH",NONE:"NONE"};import{wixContext as o}from"@wix/sdk-context";function s(n,e){return(...i)=>{let t=l();return t?t.initWixModules(n,e).apply(void 0,i):n.apply(void 0,i)}}function l(){let n=typeof $wixContext<"u"&&$wixContext.initWixModules?$wixContext.initWixModules:typeof globalThis.__wix_context__<"u"&&globalThis.__wix_context__.initWixModules?globalThis.__wix_context__.initWixModules:void 0;if(n)return{initWixModules(t,r){return a(()=>n(t,r))},fetchWithAuth(){throw new Error("fetchWithAuth is not available in this context")},graphql(){throw new Error("graphql is not available in this context")}};let e=typeof $wixContext<"u"?$wixContext.client:typeof o.client<"u"?o.client:typeof globalThis.__wix_context__<"u"?globalThis.__wix_context__.client:void 0,i=typeof $wixContext<"u"?$wixContext.elevatedClient:typeof o.elevatedClient<"u"?o.elevatedClient:typeof globalThis.__wix_context__<"u"?globalThis.__wix_context__.elevatedClient:void 0;if(!(!e&&!i))return{initWixModules(t,r){if(r){if(!i)throw new Error("An elevated client is required to use elevated modules. Make sure to initialize the Wix context with an elevated client before using elevated SDK modules");return a(()=>i.use(t))}if(!e)throw new Error("Wix context is not available. Make sure to initialize the Wix context before using SDK modules");return a(()=>e.use(t))},fetchWithAuth:(t,r)=>{if(!e)throw new Error("Wix context is not available. Make sure to initialize the Wix context before using SDK modules");return e.fetchWithAuth(t,r)},getAuth(){if(!e)throw new Error("Wix context is not available. Make sure to initialize the Wix context before using SDK modules");return e.auth},async graphql(t,r,c){if(!e)throw new Error("Wix context is not available. Make sure to initialize the Wix context before using SDK modules");return e.graphql(t,r,c)}}}function a(n){let e=globalThis.__wix_context__,i={client:o.client,elevatedClient:o.elevatedClient},t;globalThis.__wix_context__=void 0,o.client=void 0,o.elevatedClient=void 0,typeof $wixContext<"u"&&(t={client:$wixContext?.client,elevatedClient:$wixContext?.elevatedClient},delete $wixContext.client,delete $wixContext.elevatedClient);try{return n()}finally{globalThis.__wix_context__=e,o.client=i.client,o.elevatedClient=i.elevatedClient,typeof $wixContext<"u"&&($wixContext.client=t.client,$wixContext.elevatedClient=t.elevatedClient)}}var x={id:"_id",createdDate:"_createdDate",updatedDate:"_updatedDate"};function R(n,e=!1){return s(n,e)}var d=["wix.com","editorx.com"];var g=new RegExp(`\\.(${d.join("|")})$`),f=["42.wixprod.net","uw2-edt-1.wixprod.net"],_="dev.wix-code.com";var T=new RegExp(`\\.(${f.join("|")})$`),W=new RegExp(`.*\\.${_}$`);export{p as a,h as b,a as c,x as d,R as e};
2
+ //# sourceMappingURL=chunk-42Y3PAPA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../node_modules/@wix/sdk/node_modules/@wix/sdk-types/build/browser/index.mjs","../../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/context.js","../../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/context-v2.js","../../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/constants.js","../../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/rest-modules.js"],"sourcesContent":["// src/event-handlers-modules.ts\nfunction EventDefinition(type, isDomainEvent = false, transformations = (x) => x) {\n return () => ({\n __type: \"event-definition\",\n type,\n isDomainEvent,\n transformations\n });\n}\n\n// src/service-plugins.ts\nfunction ServicePluginDefinition(componentType, methods) {\n return {\n __type: \"service-plugin-definition\",\n componentType,\n methods\n };\n}\nvar SERVICE_PLUGIN_ERROR_TYPE = \"wix_spi_error\";\n\n// src/common/sort.ts\nvar SORT_DIRECTIONS = {\n ASC: \"ASC\",\n DESC: \"DESC\"\n};\nvar SORT_CAPABILITIES = {\n ...SORT_DIRECTIONS,\n BOTH: \"BOTH\",\n NONE: \"NONE\"\n};\nexport {\n EventDefinition,\n SERVICE_PLUGIN_ERROR_TYPE,\n SORT_CAPABILITIES,\n SORT_DIRECTIONS,\n ServicePluginDefinition\n};\n","import { wixContext } from '@wix/sdk-context';\nexport function resolveContext() {\n const oldContext = typeof $wixContext !== 'undefined' && $wixContext.initWixModules\n ? $wixContext.initWixModules\n : typeof globalThis.__wix_context__ !== 'undefined' &&\n globalThis.__wix_context__.initWixModules\n ? globalThis.__wix_context__.initWixModules\n : undefined;\n if (oldContext) {\n return {\n // @ts-expect-error\n initWixModules(modules, elevated) {\n return runWithoutContext(() => oldContext(modules, elevated));\n },\n fetchWithAuth() {\n throw new Error('fetchWithAuth is not available in this context');\n },\n graphql() {\n throw new Error('graphql is not available in this context');\n },\n };\n }\n const contextualClient = typeof $wixContext !== 'undefined'\n ? $wixContext.client\n : typeof wixContext.client !== 'undefined'\n ? wixContext.client\n : typeof globalThis.__wix_context__ !== 'undefined'\n ? globalThis.__wix_context__.client\n : undefined;\n const elevatedClient = typeof $wixContext !== 'undefined'\n ? $wixContext.elevatedClient\n : typeof wixContext.elevatedClient !== 'undefined'\n ? wixContext.elevatedClient\n : typeof globalThis.__wix_context__ !== 'undefined'\n ? globalThis.__wix_context__.elevatedClient\n : undefined;\n if (!contextualClient && !elevatedClient) {\n return;\n }\n return {\n initWixModules(wixModules, elevated) {\n if (elevated) {\n if (!elevatedClient) {\n throw new Error('An elevated client is required to use elevated modules. Make sure to initialize the Wix context with an elevated client before using elevated SDK modules');\n }\n return runWithoutContext(() => elevatedClient.use(wixModules));\n }\n if (!contextualClient) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return runWithoutContext(() => contextualClient.use(wixModules));\n },\n fetchWithAuth: (urlOrRequest, requestInit) => {\n if (!contextualClient) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return contextualClient.fetchWithAuth(urlOrRequest, requestInit);\n },\n getAuth() {\n if (!contextualClient) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return contextualClient.auth;\n },\n async graphql(query, variables, opts) {\n if (!contextualClient) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return contextualClient.graphql(query, variables, opts);\n },\n };\n}\nexport function contextualizeHostModule(hostModule, prop) {\n return (...args) => {\n const context = resolveContext();\n if (!context) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return context.initWixModules(hostModule)[prop].apply(undefined, args);\n };\n}\nexport function getContextualAuth() {\n const context = resolveContext();\n if (!context) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return context.getAuth();\n}\nexport function contextualizeRESTModule(restModule, expectedArgsLength) {\n return ((...args) => {\n const context = resolveContext();\n if (!context) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return context\n .initWixModules(restModule, args[expectedArgsLength]?.suppressAuth ? true : false)\n .apply(undefined, args);\n });\n}\nexport function contextualizeEventDefinitionModule(eventDefinition) {\n return ((...args) => {\n const context = resolveContext();\n if (!context) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return context.initWixModules(eventDefinition).apply(undefined, args);\n });\n}\nexport function contextualizeSerivcePluginModule(servicePlugin) {\n return ((...args) => {\n const context = resolveContext();\n if (!context) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return context.initWixModules(servicePlugin).apply(undefined, args);\n });\n}\nexport * from './context-v2.js';\nexport function runWithoutContext(fn) {\n const globalContext = globalThis.__wix_context__;\n const moduleContext = {\n client: wixContext.client,\n elevatedClient: wixContext.elevatedClient,\n };\n let closureContext;\n globalThis.__wix_context__ = undefined;\n wixContext.client = undefined;\n wixContext.elevatedClient = undefined;\n if (typeof $wixContext !== 'undefined') {\n closureContext = {\n client: $wixContext?.client,\n elevatedClient: $wixContext?.elevatedClient,\n };\n delete $wixContext.client;\n delete $wixContext.elevatedClient;\n }\n try {\n return fn();\n }\n finally {\n globalThis.__wix_context__ = globalContext;\n wixContext.client = moduleContext.client;\n wixContext.elevatedClient = moduleContext.elevatedClient;\n if (typeof $wixContext !== 'undefined') {\n $wixContext.client = closureContext.client;\n $wixContext.elevatedClient = closureContext.elevatedClient;\n }\n }\n}\n","import { EventDefinition, ServicePluginDefinition, } from '@wix/sdk-types';\nimport { resolveContext } from './context.js';\nexport { EventDefinition, ServicePluginDefinition, };\nexport function contextualizeHostModuleV2(hostModule, props) {\n return {\n ...hostModule,\n ...Object.fromEntries(props.map((prop) => [\n prop,\n (...args) => {\n const context = resolveContext();\n if (!context) {\n throw new Error('Wix context is not available. Make sure to initialize the Wix context before using SDK modules');\n }\n return context\n .initWixModules(hostModule)[prop].apply(undefined, args);\n },\n ])),\n };\n}\nexport function contextualizeRESTModuleV2(restModule, elevated) {\n return ((...args) => {\n const context = resolveContext();\n if (!context) {\n // @ts-expect-error - if there is no context, we want to behave like the original module\n return restModule.apply(undefined, args);\n }\n return (context\n .initWixModules(restModule, elevated)\n // @ts-expect-error - we know the args here are meant to be passed to the initalized module\n .apply(undefined, args));\n });\n}\nexport function contextualizeEventDefinitionModuleV2(eventDefinition) {\n const contextualMethod = ((...args) => {\n const context = resolveContext();\n if (!context) {\n // this line should throw, but this would be a breaking change for older SDK versions\n // this is because in wixClient there's code that calls any function it detects and checks\n // if it's an ambassador module (see isAmbassadorModule)\n return () => {\n // used by the CLI for webhook registration on build time\n return {\n slug: eventDefinition.type,\n };\n };\n }\n return context.initWixModules(eventDefinition).apply(undefined, args);\n });\n contextualMethod.__type = eventDefinition.__type;\n contextualMethod.type = eventDefinition.type;\n contextualMethod.isDomainEvent = eventDefinition.isDomainEvent;\n contextualMethod.transformations = eventDefinition.transformations;\n return contextualMethod;\n}\nexport function contextualizeSerivcePluginModuleV2(servicePlugin) {\n const contextualMethod = ((...args) => {\n const context = resolveContext();\n if (!context) {\n // this line should throw, but this would be a breaking change for older SDK versions\n // this is because in wixClient there's code that calls any function it detects and checks\n // if it's an ambassador module (see isAmbassadorModule)\n return () => { };\n }\n return context.initWixModules(servicePlugin).apply(undefined, args);\n });\n contextualMethod.__type = servicePlugin.__type;\n contextualMethod.componentType = servicePlugin.componentType;\n contextualMethod.methods = servicePlugin.methods;\n return contextualMethod;\n}\n","export const WIX_PROTOCOL = 'wix:';\nexport const SDKRequestToRESTRequestRenameMap = {\n _id: 'id',\n _createdDate: 'createdDate',\n _updatedDate: 'updatedDate',\n};\nexport const RESTResponseToSDKResponseRenameMap = {\n id: '_id',\n createdDate: '_createdDate',\n updatedDate: '_updatedDate',\n};\nexport const ITEMS_RESULT_PROPERTY_NAME = 'items';\nexport const PAGING_METADATA_RESULT_PROPERTY_NAME = 'pagingMetadata';\nexport const DEFAULT_LIMIT = 50;\n","import { contextualizeRESTModuleV2 } from './context-v2.js';\nexport { RESTResponseToSDKResponseRenameMap } from './constants.js';\nexport function createRESTModule(descriptor, elevated = false) {\n return contextualizeRESTModuleV2(descriptor, elevated);\n}\nexport function toURLSearchParams(params, isComplexRequest) {\n const flatten = flattenParams(params);\n // payloads with deep arrays or complex arrays are not serializable as URLSearchParams\n const isPayloadNonSerializableAsUrlSearchParams = Object.entries(flatten).some(([key, value]) => key.includes('.') ||\n (Array.isArray(value) && value.some((v) => typeof v === 'object')));\n const shouldSerializeToRParam = isComplexRequest && isPayloadNonSerializableAsUrlSearchParams;\n if (shouldSerializeToRParam) {\n return new URLSearchParams({ '.r': base64Encode(JSON.stringify(params)) });\n }\n else {\n return Object.entries(flatten).reduce((urlSearchParams, [key, value]) => {\n // inorder to make `foo: [1,2]` turn into `foo=1&foo=2` and not `foo[]=1&foo[]=2`\n const keyParams = Array.isArray(value) ? value : [value];\n keyParams.forEach((param) => {\n if (param === undefined ||\n param === null ||\n (Array.isArray(value) && typeof param === 'object')) {\n return;\n }\n urlSearchParams.append(key, param);\n });\n return urlSearchParams;\n }, new URLSearchParams());\n }\n}\nexport function resolveUrl(opts) {\n const domain = resolveDomain(opts.host);\n const mappings = resolveMappingsByDomain(domain, opts.domainToMappings);\n const path = injectDataIntoProtoPath(opts.protoPath, opts.data || {});\n return resolvePathFromMappings(path, mappings);\n}\nfunction flattenParams(data, path = '') {\n const params = {};\n Object.entries(data).forEach(([key, value]) => {\n const isObject = value !== null && typeof value === 'object' && !Array.isArray(value);\n const fieldPath = resolvePath(path, key);\n if (isObject) {\n const serializedObject = flattenParams(value, fieldPath);\n Object.assign(params, serializedObject);\n }\n else {\n params[fieldPath] = value;\n }\n });\n return params;\n}\nfunction resolvePath(path, key) {\n return `${path}${path ? '.' : ''}${key}`;\n}\nconst base64Encode = (value) => {\n const base64 = typeof btoa !== 'undefined'\n ? btoa(value)\n : Buffer.from(value, 'utf-8').toString('base64');\n return base64.replace(/=/g, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n};\nconst DOMAINS = ['wix.com', 'editorx.com'];\nconst USER_DOMAIN = '_';\nconst REGEX_CAPTURE_DOMAINS = new RegExp(`\\\\.(${DOMAINS.join('|')})$`);\nconst WIX_API_DOMAINS = ['42.wixprod.net', 'uw2-edt-1.wixprod.net'];\nconst DEV_WIX_CODE_DOMAIN = 'dev.wix-code.com';\nconst REGEX_CAPTURE_PROTO_FIELD = /{(.*)}/;\nconst REGEX_CAPTURE_API_DOMAINS = new RegExp(`\\\\.(${WIX_API_DOMAINS.join('|')})$`);\nconst REGEX_CAPTURE_DEV_WIX_CODE_DOMAIN = new RegExp(`.*\\\\.${DEV_WIX_CODE_DOMAIN}$`);\nfunction resolveDomain(host) {\n const resolvedHost = fixHostExceptions(host);\n return resolvedHost\n .replace(REGEX_CAPTURE_DOMAINS, '._base_domain_')\n .replace(REGEX_CAPTURE_API_DOMAINS, '._api_base_domain_')\n .replace(REGEX_CAPTURE_DEV_WIX_CODE_DOMAIN, '*.dev.wix-code.com');\n}\n// hosts which standard string replacing doesn't apply to them, will be fixed here.\nfunction fixHostExceptions(host) {\n // https://system-kb.wixanswers.com/kb/en/article/editorx-domains-matching-to-wixcom\n return host.replace('create.editorx.com', 'editor.editorx.com');\n}\nfunction resolveMappingsByDomain(domain, domainToMappings) {\n const mappings = domainToMappings[domain] || domainToMappings[USER_DOMAIN];\n if (mappings) {\n return mappings;\n }\n const rootDomainMappings = resolveRootDomain(domain, domainToMappings);\n if (!rootDomainMappings) {\n if (isBaseDomain(domain)) {\n // fallback <lang>.wix.com sub domains to www.wix.com\n // since all of the languages subdomain are not mapped automatically in FP and we want to support those kind of calls\n // for example: fr.wix.com\n return domainToMappings[wwwBaseDomain];\n }\n }\n return rootDomainMappings ?? [];\n}\nfunction resolveRootDomain(domain, domainToMappings) {\n return Object.entries(domainToMappings).find(([entryDomain]) => {\n const [, ...rooDomainSegments] = domain.split('.');\n return rooDomainSegments.join('.') === entryDomain;\n })?.[1];\n}\nfunction isBaseDomain(domain) {\n return !!domain.match(/\\._base_domain_$/);\n}\nconst wwwBaseDomain = 'www._base_domain_';\nfunction injectDataIntoProtoPath(protoPath, data) {\n return protoPath\n .split('/')\n .map((path) => maybeProtoPathToData(path, data))\n .join('/');\n}\nfunction maybeProtoPathToData(protoPath, data) {\n const protoRegExpMatch = protoPath.match(REGEX_CAPTURE_PROTO_FIELD) || [];\n const field = protoRegExpMatch[1];\n if (field) {\n const suffix = protoPath.replace(protoRegExpMatch[0], '');\n return findByPath(data, field, protoPath, suffix);\n }\n return protoPath;\n}\nfunction findByPath(obj, path, defaultValue, suffix) {\n let result = obj;\n for (const field of path.split('.')) {\n if (!result) {\n return defaultValue;\n }\n result = result[field];\n }\n return `${result}${suffix}`;\n}\nfunction resolvePathFromMappings(protoPath, mappings) {\n const mapping = mappings?.find((m) => protoPath.startsWith(m.destPath));\n if (!mapping) {\n // todo: should we return the path? if no - what should we do in case of testings?\n return protoPath;\n }\n return mapping.srcPath + protoPath.slice(mapping.destPath.length);\n}\n"],"mappings":"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","names":["EventDefinition","type","isDomainEvent","transformations","x","SERVICE_PLUGIN_ERROR_TYPE","SORT_DIRECTIONS","SORT_CAPABILITIES","wixContext","contextualizeRESTModuleV2","restModule","elevated","args","context","resolveContext","resolveContext","oldContext","modules","elevated","runWithoutContext","contextualClient","wixContext","elevatedClient","wixModules","urlOrRequest","requestInit","query","variables","opts","runWithoutContext","fn","globalContext","moduleContext","wixContext","closureContext","RESTResponseToSDKResponseRenameMap","createRESTModule","descriptor","elevated","contextualizeRESTModuleV2","DOMAINS","REGEX_CAPTURE_DOMAINS","DOMAINS","WIX_API_DOMAINS","DEV_WIX_CODE_DOMAIN","REGEX_CAPTURE_API_DOMAINS","WIX_API_DOMAINS","REGEX_CAPTURE_DEV_WIX_CODE_DOMAIN","DEV_WIX_CODE_DOMAIN"]}
@@ -0,0 +1,2 @@
1
+ import{a as v,b as $,c as R,d as H}from"./chunk-42Y3PAPA.js";import{f as m}from"./chunk-SBZEOPXX.js";import{wixContext as ae}from"@wix/sdk-context";var ie=e=>{switch(e){case"get":case"GET":return"GET";case"post":case"POST":return"POST";case"put":case"PUT":return"PUT";case"delete":case"DELETE":return"DELETE";case"patch":case"PATCH":return"PATCH";case"head":case"HEAD":return"HEAD";case"options":case"OPTIONS":return"OPTIONS";default:throw new Error(`Unknown method: ${e}`)}},j=e=>t=>async r=>{let n,s=o=>{if(n=e(r)(o),n.url===void 0)throw new Error("Url was not successfully created for this request, please reach out to support channels for assistance.");let{method:a,url:i,params:c}=n;return{...n,method:ie(a),url:i,data:n.data,params:c}};try{let o=await t.request(s);if(n===void 0)throw new Error("Request options were not created for this request, please reach out to support channels for assistance.");let a=Array.isArray(n.transformResponse)?n.transformResponse:[n.transformResponse],i=o.data;return a.forEach(c=>{c&&(i=c(o.data,o.headers))}),i}catch(o){throw typeof o=="object"&&o!==null&&"response"in o&&typeof o.response=="object"&&o.response!==null&&"data"in o.response?o.response.data:o}},F=e=>e.__isAmbassador?!0:!!e().__isAmbassador;var q="__metadata",x="www.wixapis.com",W="edge.wixapis.com";var b=class extends Error{constructor(r,n){super(r);m(this,"message");m(this,"response");this.message=r,this.response=n}async details(){let r=await this.response.json();return ce(this.response.status,r?.message,r?.details,{requestId:this.response.headers.get("X-Wix-Request-Id"),details:r})}},ce=(e,t,r,n)=>({details:{...!r?.validationError&&{applicationError:{description:t,code:e,data:n}},...r},message:t,requestId:n?.requestId});var B=e=>e?.method&&["post","put","patch"].includes(e.method.toLocaleLowerCase())&&e.body?{"Content-Type":"application/json"}:{},K=e=>e&&typeof e=="object"&&!Array.isArray(e);var J=e=>e.__type==="host";function k(e,t){return e.create(t)}var de="x-wix-bi-gateway";function G(e,t,r){return{[de]:ue({environment:`js-sdk${r?`-${r}`:""}`,"package-name":e.packageName??t?.PACKAGE_NAME,"method-fqn":e.methodFqn,entity:e.entityFqdn})}}function ue(e){return Object.entries(e).filter(([t,r])=>!!r).map(([t,r])=>`${t}=${r}`).join(",")}function I(e){return he(e).map(t=>t.toLocaleUpperCase()).join("_")}var le=/([\p{Ll}\d])(\p{Lu})/gu,pe=/(\p{Lu})([\p{Lu}][\p{Ll}])/gu,X="$1\0$2",fe=/[^\p{L}\d]+/giu;function he(e){let t=e.trim();t=t.replace(le,X).replace(pe,X),t=t.replace(fe,"\0");let r=0,n=t.length;for(;t.charAt(r)==="\0";)r++;if(r===n)return[];for(;t.charAt(n-1)==="\0";)n--;return t.slice(r,n).split(/\0/g)}var me=e=>"validationError"in(e.response?.data?.details??{}),Ee=e=>"applicationError"in(e.response?.data?.details??{}),Te=e=>(e.response?.status??-1)>=400&&(e.response?.status??-1)<500;function z(e,t={explicitPathsToArguments:{},spreadPathsToArguments:{},singleArgumentUnchanged:!1},r=[]){if(typeof e!="object"||e===null)throw e;if(me(e))return ye(e,t,r);if(Ee(e))return _e(e);if(Te(e)){let n=e.response?.status,s=e.response?.statusText??"UNKNOWN",o=e.response?.data?.message??s,a={applicationError:{description:s,code:I(s),data:{}},requestId:e.requestId};return S(e,{message:JSON.stringify({message:o,details:a},null,2),extraProperties:{details:a,status:n}})}return ge(e)}var ye=(e,t,r)=>{let n=e.response?.data,s=e.requestId,{fieldViolations:o}=n.details.validationError,a=Ae(t,o,r)?.sort((l,p)=>l.field<p.field?-1:1),i=`INVALID_ARGUMENT: ${a?.map(({field:l,description:p})=>`"${l}" ${p}`)?.join(", ")}`,c={validationError:{fieldViolations:a},requestId:s};return S(e,{message:JSON.stringify({message:i,details:c},null,2),extraProperties:{details:c,status:e.response?.status,requestId:s}})},S=(e,{message:t,extraProperties:r})=>Object.assign(e,{...r,message:t}),_e=e=>{let t=e.response?.status,r=e.response?.statusText??"UNKNOWN",n=e.response?.data?.message??r,s=e.response?.data?.details?.applicationError?.description??r,o=e.response?.data?.details?.applicationError?.code??I(r),a=e.response?.data?.details?.applicationError?.data??{},i=n===s?n:`${n}: ${s}`,c={applicationError:{description:s,code:o,data:a},requestId:e.requestId};return S(e,{message:JSON.stringify({message:i,details:c},null,2),extraProperties:{details:c,status:t,requestId:e.requestId}})},ge=e=>{let t=e.requestId?`System error occurred, request-id: ${e.requestId}`:`System error occurred: ${JSON.stringify(e)}`;return S(e,{message:t,extraProperties:{requestId:e.requestId,status:e.response?.status,code:I(e.response?.statusText??"UNKNOWN"),...!e.response&&{runtimeError:e}}})},Ae=({spreadPathsToArguments:e,explicitPathsToArguments:t,singleArgumentUnchanged:r},n,s)=>{let o={...e,...t},a=Object.keys(o);return n?.filter(i=>!n.some(l=>l.field.length>i.field.length&&l.field.startsWith(i.field)&&a.includes(l.field))).map(i=>{let c=t[i.field];if(c)return{...i,field:Y(c,s)};let l=a?.sort((p,u)=>u.length-p.length)?.find(p=>i.field.startsWith(p));if(l){let p=o[l];if(p)return{...i,field:i.field.replace(l,Y(p,s))}}return r?{...i,field:`${s[0]}.${i.field}`}:i})},Y=(e,t)=>{let r=Pe(e);return r!==null&&typeof r<"u"?e.replace(`$[${r}]`,t[r]):e},Pe=e=>{let t=e.match(/\$\[(?<argIndex>\d+)\]/);return t&&t.groups&&Number(t.groups.argIndex)};function Q(e,t,r,n,s,o,a,i,c){return R(()=>e({request:async l=>{let p=l({host:a?.HTTPHost||x}),u=p;u.method==="GET"&&u.fallback?.length&&(u.params?.toString().length??0)>4e3&&(u=p.fallback[0]);let y=a?.HTTPHost??x,_=`https://${c?W:y}${u.url}`;u.params&&u.params.toString()&&(_+=`?${u.params.toString()}`);try{let A=G(p,t,i),d={method:u.method,...u.data&&{body:JSON.stringify(u.data)},headers:{...A}},f=await r(_,d);if(f.status!==200){let T=null;try{T=await f.json()}catch{}let h=we(f.status,T?.message,T?.details,{requestId:f.headers.get("X-Wix-Request-Id"),details:T}),P=z(h);throw n?.handleError(P,{requestOptions:{url:u.url,method:u.method,entityFqdn:p.entityFqdn,methodFqn:p.methodFqn}}),h}let E=await f.json();return{data:u.migrationOptions?.optInTransformResponse&&u.transformResponse?Array.isArray(u.transformResponse)?u.transformResponse[0](E):u.transformResponse(E):E,headers:f.headers,status:f.status,statusText:f.statusText}}catch(A){throw A.message?.includes("fetch is not defined")&&console.error("Node.js v18+ is required"),A}},fetchWithAuth:r,wixAPIFetch:s,getActiveToken:o}))}var C=class extends Error{constructor(r){super();m(this,"response");m(this,"requestId");this.response=r.response,this.requestId=r.requestId}},we=(e,t,r,n)=>new C({response:{data:{details:{...!r?.validationError&&{applicationError:{description:t,code:e,data:n}},...r},message:t},status:e},requestId:n?.requestId});var xe=".";function V(e,t,r){if(e==null)throw new Error("Cannot set value on null or undefined");let n=O(t),s=e;for(let o=0;o<n.length;o++){let a=n[o];if(o===n.length-1){s[a]=r;break}let i=n[o+1];!(a in s)||s[a]==null?s[a]=typeof i=="number"?[]:{}:(typeof s[a]!="object"||s[a]===null)&&(s[a]=typeof i=="number"?[]:{}),s=s[a]}return e}function O(e){return Array.isArray(e)?e:e.split(xe).map(t=>Re(t)?Number(t):t)}function Re(e){return/^\d+$/.test(e)}function Z(e){let t={};for(let[r,n]of Object.entries(e)){if(be(r))continue;let s=O(r);V(t,s,n)}return t}function be(e){return e==="__proto__"||e==="constructor"||e==="prototype"}var D=class{constructor(t){m(this,"BRACKET_PATTERN",/\[(\d+)\]/g);m(this,"NUMERIC_PATTERN",/^\d+$/);m(this,"ESCAPED_DOT_PATTERN",/\\\./g);m(this,"ESCAPED_LEFT_BRACKET_PATTERN",/\\\[/g);m(this,"ESCAPED_RIGHT_BRACKET_PATTERN",/\\\]/g);m(this,"SPLIT_PATTERN",/\.|\[(\d+)\]/g);m(this,"DOT_BEFORE_BRACKET_PATTERN",/\.\[/g);m(this,"ESCAPED_DOT_PLACEHOLDER","__DOT__");m(this,"ESCAPED_RIGHT_BRACKET_PLACEHOLDER","__RB__");m(this,"ESCAPED_LEFT_BRACKET_PLACEHOLDER","__LB__");m(this,"modifiedFields");m(this,"cleanedModifiedFields");this.modifiedFields=t}replaceEscapedCharacters(t){return t.replace(this.ESCAPED_DOT_PATTERN,this.ESCAPED_DOT_PLACEHOLDER).replace(this.ESCAPED_LEFT_BRACKET_PATTERN,this.ESCAPED_LEFT_BRACKET_PLACEHOLDER).replace(this.ESCAPED_RIGHT_BRACKET_PATTERN,this.ESCAPED_RIGHT_BRACKET_PLACEHOLDER)}restoreEscapedCharacters(t){return t.replace(this.ESCAPED_DOT_PLACEHOLDER,"\\.").replace(this.ESCAPED_RIGHT_BRACKET_PLACEHOLDER,"\\]").replace(this.ESCAPED_LEFT_BRACKET_PLACEHOLDER,"\\[")}unflatten(){return this.cleanedModifiedFields=Object.fromEntries(Object.entries(this.modifiedFields).map(([t,r])=>[this.replaceEscapedCharacters(this.bracketToDotNotation(t)),r])),Z(this.cleanedModifiedFields)}flatten(t){let r={};for(let n of Object.keys(this.cleanedModifiedFields)){let s=this.splitPath(n),o=this.navigatePath(t,s);r={...r,...o}}return Object.fromEntries(Object.entries(r).map(([n,s])=>[this.restoreEscapedCharacters(n),s]))}splitPath(t){let r=[],n=0,s=Array.from(t.matchAll(this.SPLIT_PATTERN));for(let o of s)o.index>n&&r.push(t.substring(n,o.index)),o[1]&&r.push(o[1]),n=o.index+o[0].length;return n<t.length&&r.push(t.substring(n)),r}navigatePath(t,r){let n=t,s=[],o=c=>{if(!Array.isArray(n))throw new Error(`Expected array at path ${this.buildPathString(s)}, but got ${typeof n}`);s.push(`[${c}]`),n=n[parseInt(c,10)]},a=(c,l)=>{let p=c in H?H[c]:void 0;if(p&&p in l){s.push(p),n=l[p];return}let u=Le(c);if(u&&u in l){s.push(u),n=l[u];return}throw new Error(`Cannot find key '${c}' or its transformations at path ${this.buildPathString(s)}`)},i=(c,l)=>{s.push(c),n=l[c]};for(let c of r){if(this.NUMERIC_PATTERN.test(c)){o(c);continue}if(n===null||typeof n!="object")throw new Error(`Cannot access property '${c}' on ${typeof n} at path ${this.buildPathString(s)}`);let l=n;if(c in n){i(c,l);continue}a(c,l)}return{[this.buildPathString(s)]:n}}buildPathString(t){return t.join(".").replace(this.DOT_BEFORE_BRACKET_PATTERN,"[")}bracketToDotNotation(t){return t.replace(this.BRACKET_PATTERN,(r,n,s)=>s>0&&t[s-1]==="\\"?r:"."+n)}};function ee(e,t){let r=e?.modifiedFields;if(!r)return null;let n=Ie(r);if(!n)return null;let{unflattenedModifiedFields:s,modifiedFieldsManipulator:o}=n;e={...e,modifiedFields:s};let a=t(e),i=a?.modifiedFields;if(!i)return null;let c=Se(i,o);return c!==null?(a.modifiedFields=c,a):null}function Ie(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))try{let t=new D(e);return{unflattenedModifiedFields:t.unflatten(),modifiedFieldsManipulator:t}}catch{return null}return null}function Se(e,t){if(typeof e=="object"&&e!==null&&!Array.isArray(e))try{return t.flatten(e)}catch{return null}return null}function Le(e){return e.replace(/[-_\s]+(.)?/g,(t,r)=>r?r.toUpperCase():"").replace(/^./,t=>t.toLowerCase())}function L(){return{emit(e,...t){for(let r=0,n=this.events[e]||[],s=n.length;r<s;r++)n[r](...t)},events:{},on(e,t){return(this.events[e]||=[]).push(t),()=>{this.events[e]=this.events[e]?.filter(r=>t!==r)}}}}var se=e=>e.__type==="event-definition";function te(e,t,r,n){let s;if(e.isDomainEvent){let c=r,{deletedEvent:l,actionEvent:p,createdEvent:u,updatedEvent:y,..._}=c,A={...n,..._};l?l?.deletedEntity?s={entity:l?.deletedEntity,metadata:A}:s={metadata:A}:p?s={data:p.body,metadata:A}:y?s={entity:y.currentEntity,metadata:A,...y.modifiedFields?{modifiedFields:y.modifiedFields}:{}}:s={entity:u?.entity,metadata:A}}else s={data:r,metadata:n};let o=e.transformations??(c=>c),a=s,i=s;if(i.modifiedFields){let c=i.modifiedFields;if(typeof c=="object"&&c!==null&&!Array.isArray(c)){a=structuredClone(s);let l=ee(i,o);if(l)return t(l)}}return t(o(a))}function re(e){let t=new Map,r=L(),n={...r,getRegisteredEvents:()=>t,async process(s,o={expectedEvents:[]}){let{eventType:a,identity:i,instanceId:c,payload:l,accountInfo:p}=await this.parseJWT(s),u=[...o.expectedEvents,...Array.from(t.keys()).map(_=>({type:_}))];if(u.length>0&&!u.some(({type:_})=>_===a))throw new Error(`Unexpected event type: ${a}. Expected one of: ${u.map(_=>_.type).join(", ")}`);let y=t.get(a)??[];return await Promise.all(y.map(({eventDefinition:_,handler:A})=>te(_,A,l,{instanceId:c,identity:i,accountInfo:p}))),{instanceId:c,eventType:a,payload:l,identity:i,accountInfo:p}},async processRequest(s,o){let a=await s.text();return this.process(a,o)},async parseJWT(s){let o=e();if(!o.decodeJWT)throw new Error("decodeJWT is not supported by the authentication strategy");let{decoded:a,valid:i}=await o.decodeJWT(s);if(!i)throw new Error("JWT is not valid");if(typeof a.data!="string")throw new Error(`Unexpected type of JWT data: expected string, got ${typeof a.data}`);let c=JSON.parse(a.data),l=c.eventType,p=c.accountInfo,u=c.instanceId,y=c.identity?JSON.parse(c.identity):void 0,_=JSON.parse(c.data);return{instanceId:u,eventType:l,payload:_,identity:y,accountInfo:p}},async parseRequest(s){let o=await s.text();return this.parseJWT(o)},async executeHandlers(s){let o=Array.from(t.keys()).map(i=>({type:i}));if(o.length>0&&!o.some(({type:i})=>i===s.eventType))throw new Error(`Unexpected event type: ${s.eventType}. Expected one of: ${o.map(i=>i.type).join(", ")}`);let a=t.get(s.eventType)??[];await Promise.all(a.map(({eventDefinition:i,handler:c})=>te(i,c,s.payload,{instanceId:s.instanceId,identity:s.identity})))},apps:{AppInstalled:v("AppInstalled")(),AppRemoved:v("AppRemoved")()}};return{initModule(s){return o=>{let a=t.get(s.type)??[];a.push({eventDefinition:s,handler:o}),t.set(s.type,a),r.emit("registered",s)}},client:n}}var ne=e=>e.__type==="service-plugin-definition";function oe(e){let t=new Map,r=L(),n={...r,getRegisteredServicePlugins:()=>t,async parseJWT(s){let o=e();if(!o.decodeJWT)throw new Error("decodeJWT is not supported by the authentication strategy");let{decoded:a,valid:i}=await o.decodeJWT(s,!0);if(!i)throw new Error("JWT is not valid");if(typeof a.data!="object"||a.data===null||!("metadata"in a.data)||typeof a.data.metadata!="object"||a.data.metadata===null||!("appExtensionType"in a.data.metadata)||typeof a.data.metadata.appExtensionType!="string")throw new Error("Unexpected JWT data: expected object with metadata.appExtensionType string");return a.data},async process(s){let o=await this.parseJWT(s.body);return this.executeHandler(o,s.url)},async parseRequest(s){let o=await s.text();return this.parseJWT(o)},async processRequest(s){let o=s.url,a=await s.text();try{let i=await this.process({url:o,body:a});return Response.json(i)}catch(i){if(i.errorType==="SPI"&&i.applicationCode&&i.httpCode)return Response.json({applicationError:{code:i.applicationCode,data:i.data}},{status:i.httpCode});throw i}},async executeHandler(s,o){let a=s.metadata.appExtensionType.toLowerCase(),i=t.get(a)??[];if(i.length===0)throw new Error(`No service plugin implementations found for component type ${a}`);if(i.length>1)throw new Error(`Multiple service plugin implementations found for component type ${a}. This is currently not supported`);let{implementation:c,servicePluginDefinition:l}=i[0],p=l.methods.find(y=>o.endsWith(y.primaryHttpMappingPath));if(!p)throw new Error("Unexpect request: request url did not match any method: "+o);let u=c[p.name];if(!u)throw new Error(`Got request for service plugin method ${p.name} but no implementation was provided. Available methods: ${Object.keys(c).join(", ")}`);return p.transformations.toREST(await u(p.transformations.fromREST(s)))}};return{initModule(s){return o=>{let a=t.get(s.componentType.toLowerCase())??[];a.push({servicePluginDefinition:s,implementation:o}),t.set(s.componentType.toLowerCase(),a),r.emit("registered",s)}},client:n}}var w="X-Wix-Consistent";function Tt(e){let t=e.headers||{Authorization:""},r={getAuthHeaders:d=>Promise.resolve({headers:{}})},n=e.auth,s=typeof n=="function"?n:()=>n??r,o=()=>s().getAuthHeaders(e.host),a=async(d,f)=>{let E=await o(),g={...f?.headers??{},...E.headers,...e.host?.essentials?.passThroughHeaders,...t[w]?{[w]:t[w]}:{}},T=e.host?.getErrorHandler?.();try{if(typeof d=="string"||d instanceof URL){let h=await fetch(d,{...f,headers:g});T?.handleError(h,{requestOptions:{url:d.toString(),method:f?.method}});let P=N(h);return P&&(t[w]=P),h}else{for(let[U,M]of Object.entries(g))typeof M=="string"&&d.headers.set(U,M);let h=await fetch(d,f);T?.handleError(h,{requestOptions:{url:d.url,method:f?.method}});let P=N(h);return P&&(t[w]=P),h}}catch(h){throw T?.handleError(h,{requestOptions:{url:typeof d=="string"||d instanceof URL?d.toString():d.url,method:f?.method}}),h}},{client:i,initModule:c}=oe(s),{client:l,initModule:p}=re(s),u=async(d,f)=>{let E=await o(),g=B(f),T=await fetch(d,{...f,headers:{...g,...t,...E?.headers,...f?.headers,...e.host?.essentials?.passThroughHeaders,...t[w]?{[w]:t[w]}:{}}}),h=N(T);return h&&(t[w]=h),T},y=(d,f)=>{if(se(d))return p(d);if(ne(d))return c(d);if(J(d)&&e.host)return k(d,e.host);if(typeof d=="function"){if("__type"in d&&d.__type===$)return d;let E=e.host?.apiBaseUrl??x,g=e.useCDN===void 0?s().shouldUseCDN:e.useCDN;return Q(R(()=>F(d))?j(d):d,f??{},u,e.host?.getErrorHandler?.(),(T,h)=>{let P=new URL(T,`https://${E}`);return P.host=E,P.protocol="https",u(P.toString(),h)},s().getActiveToken,{HTTPHost:E},e.host?.name,g)}else return K(d)?Object.fromEntries(Object.entries(d).map(([E,g])=>[E,y(g,d[q])])):d},_=d=>{for(let f in d)t[f]=d[f]};return{...e.modules?y(e.modules):{},get auth(){let d=s(),f=d.getAuthHeaders;return d.getAuthHeaders=f.bind(void 0,e.host),d},setHeaders:_,use:y,enableContext(d,f={elevated:!1}){d==="global"?globalThis.__wix_context__!=null?f.elevated?globalThis.__wix_context__.elevatedClient=this:globalThis.__wix_context__.client=this:f.elevated?globalThis.__wix_context__={elevatedClient:this}:globalThis.__wix_context__={client:this}:f.elevated?ae.elevatedClient=this:ae.client=this},fetch:(d,f)=>{let E=e.host?.apiBaseUrl??x,g=new URL(d,`https://${E}`);return g.host=E,g.protocol="https",u(g.toString(),f)},fetchWithAuth:a,async graphql(d,f,E={apiVersion:"alpha"}){let g=e?.host?.apiBaseUrl??x,T=await u(`https://${g}/graphql/${E.apiVersion}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:d,variables:f})});if(T.status!==200)throw new b(`GraphQL request failed with status ${T.status}`,T);let{data:h,errors:P}=await T.json();return{data:h??{},errors:P}},webhooks:l,servicePlugins:i}}function N(e){return e.headers?.get(w)??e.headers?.get(w.toLowerCase())}export{Tt as a};
2
+ //# sourceMappingURL=chunk-7JKHQSWI.js.map
@@ -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/node_modules/@wix/sdk-runtime/build/utils.js","../../../node_modules/@wix/sdk/node_modules/@wix/sdk-runtime/build/transform-error.js","../../../node_modules/@wix/sdk/build/rest-modules.js","../../../node_modules/@wix/sdk/build/object-utils.js","../../../node_modules/@wix/sdk/build/flat-utils.js","../../../node_modules/@wix/sdk/build/modified-fields-manipulator.js","../../../node_modules/@wix/sdk/build/nanoevents.js","../../../node_modules/@wix/sdk/build/event-handlers-modules.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 defaultStrategy = {\n getAuthHeaders: (_) => Promise.resolve({ headers: {} }),\n };\n const auth = config.auth;\n const getAuthStrategy = typeof auth === 'function' ? auth : () => auth ?? defaultStrategy;\n const boundGetAuthHeaders = () => {\n return getAuthStrategy().getAuthHeaders(config.host);\n };\n const fetchWithAuth = async (urlOrRequest, requestInit) => {\n const authHeaders = await boundGetAuthHeaders();\n const headers = {\n ...(requestInit?.headers ?? {}),\n ...authHeaders.headers,\n ...config.host?.essentials?.passThroughHeaders,\n ...(_headers[X_WIX_CONSISTENT_HEADER]\n ? { [X_WIX_CONSISTENT_HEADER]: _headers[X_WIX_CONSISTENT_HEADER] }\n : {}),\n };\n const errorHandler = config.host?.getErrorHandler?.();\n try {\n if (typeof urlOrRequest === 'string' || urlOrRequest instanceof URL) {\n const response = await fetch(urlOrRequest, {\n ...requestInit,\n headers,\n });\n errorHandler?.handleError(response, {\n requestOptions: {\n url: urlOrRequest.toString(),\n method: requestInit?.method,\n },\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 errorHandler?.handleError(response, {\n requestOptions: {\n url: urlOrRequest.url,\n method: requestInit?.method,\n },\n });\n const consistentHeader = findConsistentHeader(response);\n if (consistentHeader) {\n _headers[X_WIX_CONSISTENT_HEADER] = consistentHeader;\n }\n return response;\n }\n }\n catch (e) {\n errorHandler?.handleError(e, {\n requestOptions: {\n url: typeof urlOrRequest === 'string' || urlOrRequest instanceof URL\n ? urlOrRequest.toString()\n : urlOrRequest.url,\n method: requestInit?.method,\n },\n });\n throw e;\n }\n };\n const { client: servicePluginsClient, initModule: initServicePluginModule } = servicePluginsModules(getAuthStrategy);\n const { client: eventHandlersClient, initModule: initEventHandlerModule } = eventHandlersModules(getAuthStrategy);\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 // Ensure consistent header always takes precedence\n ...(_headers[X_WIX_CONSISTENT_HEADER]\n ? { [X_WIX_CONSISTENT_HEADER]: _headers[X_WIX_CONSISTENT_HEADER] }\n : {}),\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\n ? getAuthStrategy().shouldUseCDN\n : config.useCDN;\n return buildRESTDescriptor(runWithoutContext(() => isAmbassadorModule(modules))\n ? toHTTPModule(modules)\n : modules, metadata ?? {}, boundFetch, config.host?.getErrorHandler?.(), (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 }, getAuthStrategy().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 get auth() {\n const authStrategy = getAuthStrategy();\n const originalGetAuthHeaders = authStrategy.getAuthHeaders;\n authStrategy.getAuthHeaders = originalGetAuthHeaders.bind(undefined, config.host);\n return authStrategy;\n },\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 { WIX_PROTOCOL } from './constants.js';\nexport function alignIfLegacy(url, type) {\n const { protocol } = new URL(url);\n return protocol === `${type}:` ? `${WIX_PROTOCOL}${url}` : url;\n}\nexport function removeUndefinedKeys(obj) {\n return Object.fromEntries(Object.entries(obj).filter(([, value]) => value !== undefined));\n}\nexport function constantCase(input) {\n return split(input)\n .map((part) => part.toLocaleUpperCase())\n .join('_');\n}\nconst SPLIT_LOWER_UPPER_RE = /([\\p{Ll}\\d])(\\p{Lu})/gu;\nconst SPLIT_UPPER_UPPER_RE = /(\\p{Lu})([\\p{Lu}][\\p{Ll}])/gu;\nconst SPLIT_REPLACE_VALUE = '$1\\0$2';\nconst DEFAULT_STRIP_REGEXP = /[^\\p{L}\\d]+/giu;\nexport function split(value) {\n let result = value.trim();\n result = result\n .replace(SPLIT_LOWER_UPPER_RE, SPLIT_REPLACE_VALUE)\n .replace(SPLIT_UPPER_UPPER_RE, SPLIT_REPLACE_VALUE);\n result = result.replace(DEFAULT_STRIP_REGEXP, '\\0');\n let start = 0;\n let end = result.length;\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === '\\0') {\n start++;\n }\n if (start === end) {\n return [];\n }\n while (result.charAt(end - 1) === '\\0') {\n end--;\n }\n return result.slice(start, end).split(/\\0/g);\n}\n","import { constantCase } from './utils.js';\nconst isValidationError = (httpClientError) => 'validationError' in (httpClientError.response?.data?.details ?? {});\nconst isApplicationError = (httpClientError) => 'applicationError' in\n (httpClientError.response?.data?.details ?? {});\nconst isClientError = (httpClientError) => (httpClientError.response?.status ?? -1) >= 400 &&\n (httpClientError.response?.status ?? -1) < 500;\nexport function transformError(httpClientError, pathsToArguments = {\n explicitPathsToArguments: {},\n spreadPathsToArguments: {},\n singleArgumentUnchanged: false,\n}, argumentNames = []) {\n if (typeof httpClientError !== 'object' || httpClientError === null) {\n throw httpClientError;\n }\n if (isValidationError(httpClientError)) {\n return buildValidationError(httpClientError, pathsToArguments, argumentNames);\n }\n if (isApplicationError(httpClientError)) {\n return buildApplicationError(httpClientError);\n }\n if (isClientError(httpClientError)) {\n const status = httpClientError.response?.status;\n const statusText = httpClientError.response?.statusText ?? 'UNKNOWN';\n const message = httpClientError.response?.data?.message ?? statusText;\n const details = {\n applicationError: {\n description: statusText,\n code: constantCase(statusText),\n data: {},\n },\n requestId: httpClientError.requestId,\n };\n return wrapError(httpClientError, {\n message: JSON.stringify({\n message,\n details,\n }, null, 2),\n extraProperties: {\n details,\n status,\n },\n });\n }\n return buildSystemError(httpClientError);\n}\nconst buildValidationError = (httpClientError, pathsToArguments, argumentNames) => {\n const validationErrorResponse = httpClientError.response\n ?.data;\n const requestId = httpClientError.requestId;\n const { fieldViolations } = validationErrorResponse.details.validationError;\n const transformedFieldViolations = violationsWithRenamedFields(pathsToArguments, fieldViolations, argumentNames)?.sort((a, b) => (a.field < b.field ? -1 : 1));\n const message = `INVALID_ARGUMENT: ${transformedFieldViolations\n ?.map(({ field, description }) => `\"${field}\" ${description}`)\n ?.join(', ')}`;\n const details = {\n validationError: { fieldViolations: transformedFieldViolations },\n requestId,\n };\n return wrapError(httpClientError, {\n message: JSON.stringify({ message, details }, null, 2),\n extraProperties: {\n details,\n status: httpClientError.response?.status,\n requestId,\n },\n });\n};\nconst wrapError = (baseError, { message, extraProperties, }) => {\n return Object.assign(baseError, {\n ...extraProperties,\n message,\n });\n};\nconst buildApplicationError = (httpClientError) => {\n const status = httpClientError.response?.status;\n const statusText = httpClientError.response?.statusText ?? 'UNKNOWN';\n const message = httpClientError.response?.data?.message ?? statusText;\n const description = httpClientError.response?.data?.details?.applicationError?.description ??\n statusText;\n const code = httpClientError.response?.data?.details?.applicationError?.code ??\n constantCase(statusText);\n const data = httpClientError.response?.data?.details?.applicationError?.data ?? {};\n const combinedMessage = message === description ? message : `${message}: ${description}`;\n const details = {\n applicationError: {\n description,\n code,\n data,\n },\n requestId: httpClientError.requestId,\n };\n return wrapError(httpClientError, {\n message: JSON.stringify({ message: combinedMessage, details }, null, 2),\n extraProperties: {\n details,\n status,\n requestId: httpClientError.requestId,\n },\n });\n};\nconst buildSystemError = (httpClientError) => {\n const message = httpClientError.requestId\n ? `System error occurred, request-id: ${httpClientError.requestId}`\n : `System error occurred: ${JSON.stringify(httpClientError)}`;\n return wrapError(httpClientError, {\n message,\n extraProperties: {\n requestId: httpClientError.requestId,\n status: httpClientError.response?.status,\n code: constantCase(httpClientError.response?.statusText ?? 'UNKNOWN'),\n ...(!httpClientError.response && {\n runtimeError: httpClientError,\n }),\n },\n });\n};\nconst violationsWithRenamedFields = ({ spreadPathsToArguments, explicitPathsToArguments, singleArgumentUnchanged, }, fieldViolations, argumentNames) => {\n const allPathsToArguments = {\n ...spreadPathsToArguments,\n ...explicitPathsToArguments,\n };\n const allPathsToArgumentsKeys = Object.keys(allPathsToArguments);\n return fieldViolations\n ?.filter((fieldViolation) => {\n // In some cases, the violations error will include both some.nested and some.nested.path,\n // so we'll pick the more specific one if it's covered by the paths in the transformation.\n const containedInAMoreSpecificViolationField = fieldViolations.some((anotherViolation) => anotherViolation.field.length > fieldViolation.field.length &&\n anotherViolation.field.startsWith(fieldViolation.field) &&\n allPathsToArgumentsKeys.includes(anotherViolation.field));\n return !containedInAMoreSpecificViolationField;\n })\n .map((fieldViolation) => {\n // This means we've got some.nested.field in the violation,\n // matched against { some: { nested: { field: $[0].a.b.c } } } in the transformation.\n // some.nested.field is replaced entirely with $[0].a.b.c, with $[0] replaced with the name of argument 0\n const exactMatchArgumentExpression = explicitPathsToArguments[fieldViolation.field];\n if (exactMatchArgumentExpression) {\n return {\n ...fieldViolation,\n field: withRenamedArgument(exactMatchArgumentExpression, argumentNames),\n };\n }\n const longestPartialPathMatch = allPathsToArgumentsKeys\n ?.sort((a, b) => b.length - a.length)\n ?.find((path) => fieldViolation.field.startsWith(path));\n if (longestPartialPathMatch) {\n // This means we've got some.nested.field in the violation,\n // matched against { some: { nested: { *: $[0].a.b.c } } } in the transformation.\n // Only the prefix some.nested is replaced with $[0].a.b.c, with $[0] replaced with the name of argument 0\n // This can also happen in the case where the #wrap function is used.\n const partialMatchArgumentExpression = allPathsToArguments[longestPartialPathMatch];\n if (partialMatchArgumentExpression) {\n return {\n ...fieldViolation,\n field: fieldViolation.field.replace(longestPartialPathMatch, withRenamedArgument(partialMatchArgumentExpression, argumentNames)),\n };\n }\n }\n if (singleArgumentUnchanged) {\n return {\n ...fieldViolation,\n field: `${argumentNames[0]}.${fieldViolation.field}`,\n };\n }\n return fieldViolation;\n });\n};\nconst withRenamedArgument = (fieldValue, argumentNames) => {\n const argIndex = getArgumentIndex(fieldValue);\n if (argIndex !== null && typeof argIndex !== 'undefined') {\n return fieldValue.replace(`$[${argIndex}]`, argumentNames[argIndex]);\n }\n return fieldValue;\n};\nconst getArgumentIndex = (s) => {\n const match = s.match(/\\$\\[(?<argIndex>\\d+)\\]/);\n return match && match.groups && Number(match.groups.argIndex);\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';\nimport { transformError } from '@wix/sdk-runtime/transform-error';\nexport function buildRESTDescriptor(origFunc, publicMetadata, boundFetch, errorHandler, 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 ?? 0) > 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 requestOptionsInit = {\n method: request.method,\n ...(request.data && {\n body: JSON.stringify(request.data),\n }),\n headers: {\n ...biHeader,\n },\n };\n const res = await boundFetch(url, requestOptionsInit);\n if (res.status !== 200) {\n let dataError = null;\n try {\n dataError = await res.json();\n }\n catch (e) {\n //\n }\n const error = errorBuilder(res.status, dataError?.message, dataError?.details, {\n requestId: res.headers.get('X-Wix-Request-Id'),\n details: dataError,\n });\n const transformedError = transformError(error);\n errorHandler?.handleError(transformedError, {\n requestOptions: {\n url: request.url,\n method: request.method,\n entityFqdn: requestOptions.entityFqdn,\n methodFqn: requestOptions.methodFqn,\n },\n });\n throw error;\n }\n const rawData = await res.json();\n const data = \n // we only transform the response if the optInTransformResponse flag is set\n // this is for backwards compatibility as some users might rely on not transforming the response\n // in older modules. In that case the modules would not have the optInTransformResponse flag set\n request.migrationOptions?.optInTransformResponse &&\n request.transformResponse\n ? Array.isArray(request.transformResponse)\n ? request.transformResponse[0](rawData)\n : request.transformResponse(rawData)\n : rawData;\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}\nclass SDKError extends Error {\n response;\n requestId;\n constructor(params) {\n super();\n this.response = params.response;\n this.requestId = params.requestId;\n }\n}\nconst errorBuilder = (code, description, details, data) => {\n return new SDKError({\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","const DELIMITER = '.';\nexport function set(obj, path, value) {\n if (obj == null) {\n throw new Error('Cannot set value on null or undefined');\n }\n const keys = toPathObject(path);\n let current = obj;\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n // Last key → assign value\n if (i === keys.length - 1) {\n current[key] = value;\n break;\n }\n // Create object or array if missing\n const nextKey = keys[i + 1];\n if (!(key in current) || current[key] == null) {\n current[key] = typeof nextKey === 'number' ? [] : {};\n }\n else if (typeof current[key] !== 'object' || current[key] === null) {\n // Overwrite non-object values\n current[key] = typeof nextKey === 'number' ? [] : {};\n }\n current = current[key];\n }\n return obj;\n}\nexport function toPathObject(path) {\n if (Array.isArray(path)) {\n return path;\n }\n return path\n .split(DELIMITER)\n .map((segment) => (isNumericSegment(segment) ? Number(segment) : segment));\n}\nfunction isNumericSegment(segment) {\n return /^\\d+$/.test(segment);\n}\n","import { set, toPathObject } from './object-utils.js';\nexport function unflatten(flatObject) {\n const result = {};\n for (const [flatKey, value] of Object.entries(flatObject)) {\n // Skip prototype pollution keys\n if (isPrototypePollutionKey(flatKey)) {\n continue;\n }\n const path = toPathObject(flatKey);\n set(result, path, value);\n }\n return result;\n}\nfunction isPrototypePollutionKey(key) {\n return key === '__proto__' || key === 'constructor' || key === 'prototype';\n}\n","import { RESTResponseToSDKResponseRenameMap } from '@wix/sdk-runtime/rest-modules';\nimport { unflatten } from './flat-utils.js';\nexport class ModifiedFieldsManipulator {\n BRACKET_PATTERN = /\\[(\\d+)\\]/g;\n NUMERIC_PATTERN = /^\\d+$/;\n ESCAPED_DOT_PATTERN = /\\\\\\./g;\n ESCAPED_LEFT_BRACKET_PATTERN = /\\\\\\[/g;\n ESCAPED_RIGHT_BRACKET_PATTERN = /\\\\\\]/g;\n SPLIT_PATTERN = /\\.|\\[(\\d+)\\]/g;\n DOT_BEFORE_BRACKET_PATTERN = /\\.\\[/g;\n ESCAPED_DOT_PLACEHOLDER = '__DOT__';\n ESCAPED_RIGHT_BRACKET_PLACEHOLDER = '__RB__';\n ESCAPED_LEFT_BRACKET_PLACEHOLDER = '__LB__';\n modifiedFields;\n cleanedModifiedFields;\n constructor(modifiedFields) {\n this.modifiedFields = modifiedFields;\n }\n replaceEscapedCharacters(key) {\n return key\n .replace(this.ESCAPED_DOT_PATTERN, this.ESCAPED_DOT_PLACEHOLDER)\n .replace(this.ESCAPED_LEFT_BRACKET_PATTERN, this.ESCAPED_LEFT_BRACKET_PLACEHOLDER)\n .replace(this.ESCAPED_RIGHT_BRACKET_PATTERN, this.ESCAPED_RIGHT_BRACKET_PLACEHOLDER);\n }\n restoreEscapedCharacters(key) {\n return key\n .replace(this.ESCAPED_DOT_PLACEHOLDER, '\\\\.')\n .replace(this.ESCAPED_RIGHT_BRACKET_PLACEHOLDER, '\\\\]')\n .replace(this.ESCAPED_LEFT_BRACKET_PLACEHOLDER, '\\\\[');\n }\n unflatten() {\n this.cleanedModifiedFields = Object.fromEntries(Object.entries(this.modifiedFields).map(([key, value]) => [\n this.replaceEscapedCharacters(this.bracketToDotNotation(key)),\n value,\n ]));\n return unflatten(this.cleanedModifiedFields);\n }\n flatten(transformedModifiedFields) {\n let result = {};\n for (const originalKey of Object.keys(this.cleanedModifiedFields)) {\n const pathParts = this.splitPath(originalKey);\n const value = this.navigatePath(transformedModifiedFields, pathParts);\n result = { ...result, ...value };\n }\n return Object.fromEntries(Object.entries(result).map(([key, value]) => [\n this.restoreEscapedCharacters(key),\n value,\n ]));\n }\n splitPath(path) {\n const parts = [];\n let lastIndex = 0;\n const matches = Array.from(path.matchAll(this.SPLIT_PATTERN));\n for (const match of matches) {\n if (match.index > lastIndex) {\n parts.push(path.substring(lastIndex, match.index));\n }\n if (match[1]) {\n parts.push(match[1]);\n }\n lastIndex = match.index + match[0].length;\n }\n if (lastIndex < path.length) {\n parts.push(path.substring(lastIndex));\n }\n return parts;\n }\n navigatePath(obj, pathParts) {\n let current = obj;\n const transformedPath = [];\n const handleArray = (part) => {\n if (!Array.isArray(current)) {\n throw new Error(`Expected array at path ${this.buildPathString(transformedPath)}, but got ${typeof current}`);\n }\n transformedPath.push(`[${part}]`);\n current = current[parseInt(part, 10)];\n };\n const handleTransformedKeyName = (part, currentObj) => {\n const transformedKey = part in RESTResponseToSDKResponseRenameMap\n ? RESTResponseToSDKResponseRenameMap[part]\n : undefined;\n if (transformedKey && transformedKey in currentObj) {\n transformedPath.push(transformedKey);\n current = currentObj[transformedKey];\n return;\n }\n const camelCaseKey = camelCase(part);\n if (camelCaseKey && camelCaseKey in currentObj) {\n transformedPath.push(camelCaseKey);\n current = currentObj[camelCaseKey];\n return;\n }\n throw new Error(`Cannot find key '${part}' or its transformations at path ${this.buildPathString(transformedPath)}`);\n };\n const handleObject = (part, currentObj) => {\n transformedPath.push(part);\n current = currentObj[part];\n return;\n };\n for (const part of pathParts) {\n if (this.NUMERIC_PATTERN.test(part)) {\n handleArray(part);\n continue;\n }\n if (current === null || typeof current !== 'object') {\n throw new Error(`Cannot access property '${part}' on ${typeof current} at path ${this.buildPathString(transformedPath)}`);\n }\n const currentObj = current;\n if (part in current) {\n handleObject(part, currentObj);\n continue;\n }\n handleTransformedKeyName(part, currentObj);\n }\n return { [this.buildPathString(transformedPath)]: current };\n }\n buildPathString(pathParts) {\n return pathParts.join('.').replace(this.DOT_BEFORE_BRACKET_PATTERN, '[');\n }\n bracketToDotNotation(key) {\n return key.replace(this.BRACKET_PATTERN, (match, number, offset) => {\n if (offset > 0 && key[offset - 1] === '\\\\') {\n return match;\n }\n return '.' + number;\n });\n }\n}\n/**\n * Transforms an envelope while preserving the structure of modifiedFields.\n *\n * Modified fields come as flattened objects, while transformations are applied to the nested object (e.g. \"a.b.c\" -> { a: { b: { c: 'value' } } }).\n * This function handles the transformation of envelopes that contain flattened modifiedFields.\n * It unflattens the modifiedFields, applies the transformation function, and then flattens\n * the modifiedFields back to their original format while preserving the transformation.\n * @param envelope - The envelope object containing flattened modifiedFields\n * @param transformFromRESTFn - Function to transform the envelope from REST format to SDK format\n * @returns The transformed envelope with flattened modifiedFields, or null if transformation fails\n */\nexport function attemptTransformationWithModifiedFields(envelope, transformFromRESTFn) {\n const modifiedFields = envelope?.modifiedFields;\n if (!modifiedFields) {\n return null;\n }\n const unflattenedResult = attemptUnflatten(modifiedFields);\n if (!unflattenedResult) {\n return null;\n }\n const { unflattenedModifiedFields, modifiedFieldsManipulator } = unflattenedResult;\n envelope = {\n ...envelope,\n modifiedFields: unflattenedModifiedFields,\n };\n const transformedEnvelope = transformFromRESTFn(envelope);\n const transformedModifiedFields = transformedEnvelope\n ?.modifiedFields;\n if (!transformedModifiedFields) {\n return null;\n }\n const flattened = attemptFlatten(transformedModifiedFields, modifiedFieldsManipulator);\n if (flattened !== null) {\n transformedEnvelope.modifiedFields = flattened;\n return transformedEnvelope;\n }\n return null;\n}\nfunction attemptUnflatten(modifiedFields) {\n if (typeof modifiedFields === 'object' &&\n modifiedFields !== null &&\n !Array.isArray(modifiedFields)) {\n try {\n const modifiedFieldsManipulator = new ModifiedFieldsManipulator(modifiedFields);\n const unflattened = modifiedFieldsManipulator.unflatten();\n return {\n unflattenedModifiedFields: unflattened,\n modifiedFieldsManipulator,\n };\n }\n catch (error) {\n return null;\n }\n }\n return null;\n}\nfunction attemptFlatten(transformedModifiedFields, modifiedFieldsManipulator) {\n if (typeof transformedModifiedFields === 'object' &&\n transformedModifiedFields !== null &&\n !Array.isArray(transformedModifiedFields)) {\n try {\n const flattened = modifiedFieldsManipulator.flatten(transformedModifiedFields);\n return flattened;\n }\n catch (error) {\n return null;\n }\n }\n return null;\n}\n// Simple camelCase implementation to avoid lodash (which uses `new Function()` internally\n// and breaks Cloudflare Workers/Edge runtimes)\nfunction camelCase(str) {\n return str\n .replace(/[-_\\s]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''))\n .replace(/^./, (c) => c.toLowerCase());\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 { EventDefinition, } from '@wix/sdk-types';\nimport { attemptTransformationWithModifiedFields } from './modified-fields-manipulator.js';\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 if (updatedEvent) {\n envelope = {\n entity: updatedEvent.currentEntity,\n metadata,\n ...(updatedEvent.modifiedFields\n ? { modifiedFields: updatedEvent.modifiedFields }\n : {}),\n };\n }\n else {\n // createdEvent\n envelope = {\n entity: createdEvent?.entity,\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 let originalEnvelope = envelope;\n const envelopeAny = envelope;\n if (envelopeAny.modifiedFields) {\n const modifiedFieldsValue = envelopeAny.modifiedFields;\n if (typeof modifiedFieldsValue === 'object' &&\n modifiedFieldsValue !== null &&\n !Array.isArray(modifiedFieldsValue)) {\n originalEnvelope = structuredClone(envelope);\n const transformedEnvelope = attemptTransformationWithModifiedFields(envelopeAny, transformFromRESTFn);\n if (transformedEnvelope) {\n return handler(transformedEnvelope);\n }\n }\n }\n return handler(transformFromRESTFn(originalEnvelope));\n}\nexport function eventHandlersModules(getAuthStrategy) {\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, accountInfo } = 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 accountInfo,\n })));\n return {\n instanceId,\n eventType,\n payload,\n identity,\n accountInfo,\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 const authStrategy = getAuthStrategy();\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 accountInfo = parsedDecoded.accountInfo;\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 accountInfo,\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","import { createNanoEvents } from './nanoevents.js';\nexport const isServicePluginModule = (val) => val.__type === 'service-plugin-definition';\nexport function servicePluginsModules(getAuthStrategy) {\n const servicePluginsImplementations = new Map();\n const servicePluginsEmitter = createNanoEvents();\n const client = {\n ...servicePluginsEmitter,\n getRegisteredServicePlugins: () => servicePluginsImplementations,\n async parseJWT(jwt) {\n const authStrategy = getAuthStrategy();\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":["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","constantCase","input","split","part","SPLIT_LOWER_UPPER_RE","SPLIT_UPPER_UPPER_RE","SPLIT_REPLACE_VALUE","DEFAULT_STRIP_REGEXP","value","result","start","end","isValidationError","httpClientError","isApplicationError","isClientError","transformError","pathsToArguments","argumentNames","buildValidationError","buildApplicationError","status","statusText","message","details","constantCase","wrapError","buildSystemError","validationErrorResponse","requestId","fieldViolations","transformedFieldViolations","violationsWithRenamedFields","a","b","field","description","baseError","extraProperties","code","data","combinedMessage","spreadPathsToArguments","explicitPathsToArguments","singleArgumentUnchanged","allPathsToArguments","allPathsToArgumentsKeys","fieldViolation","anotherViolation","exactMatchArgumentExpression","withRenamedArgument","longestPartialPathMatch","path","partialMatchArgumentExpression","fieldValue","argIndex","getArgumentIndex","s","match","buildRESTDescriptor","origFunc","publicMetadata","boundFetch","errorHandler","wixAPIFetch","getActiveToken","options","hostName","useCDN","runWithoutContext","factory","requestOptions","DEFAULT_API_URL","request","domain","url","DEFAULT_EDGE_API_URL","biHeader","biHeaderGenerator","requestOptionsInit","res","dataError","error","errorBuilder","transformedError","transformError","rawData","e","SDKError","params","__publicField","code","description","details","data","DELIMITER","set","obj","path","value","keys","toPathObject","current","i","key","nextKey","segment","isNumericSegment","unflatten","flatObject","result","flatKey","value","isPrototypePollutionKey","path","toPathObject","set","key","ModifiedFieldsManipulator","modifiedFields","__publicField","key","value","unflatten","transformedModifiedFields","result","originalKey","pathParts","path","parts","lastIndex","matches","match","obj","current","transformedPath","handleArray","part","handleTransformedKeyName","currentObj","transformedKey","RESTResponseToSDKResponseRenameMap","camelCaseKey","camelCase","handleObject","number","offset","attemptTransformationWithModifiedFields","envelope","transformFromRESTFn","unflattenedResult","attemptUnflatten","unflattenedModifiedFields","modifiedFieldsManipulator","transformedEnvelope","flattened","attemptFlatten","str","_","c","createNanoEvents","event","args","i","callbacks","length","cb","isEventHandlerModule","val","runHandler","eventDefinition","handler","payload","baseEventMetadata","envelope","domainEventPayload","deletedEvent","actionEvent","createdEvent","updatedEvent","domainEventMetadata","metadata","transformFromRESTFn","x","originalEnvelope","envelopeAny","modifiedFieldsValue","transformedEnvelope","attemptTransformationWithModifiedFields","eventHandlersModules","getAuthStrategy","eventHandlers","webhooksEmitter","createNanoEvents","client","jwt","opts","eventType","identity","instanceId","accountInfo","allExpectedEvents","type","handlers","request","body","authStrategy","decoded","valid","parsedDecoded","event","EventDefinition","isServicePluginModule","val","servicePluginsModules","getAuthStrategy","servicePluginsImplementations","servicePluginsEmitter","createNanoEvents","client","jwt","authStrategy","decoded","valid","request","servicePluginRequest","body","url","implMethodResult","err","componentType","implementations","impl","servicePluginDefinition","method","m","implMethod","implementation","X_WIX_CONSISTENT_HEADER","createClient","config","_headers","defaultStrategy","_","auth","getAuthStrategy","boundGetAuthHeaders","fetchWithAuth","urlOrRequest","requestInit","authHeaders","headers","errorHandler","response","consistentHeader","findConsistentHeader","k","v","e","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","authStrategy","originalGetAuthHeaders","contextType","opts","wixContext","query","variables","res","FetchErrorResponse","data","errors"]}
@@ -1,2 +1,2 @@
1
- import{a as E,c as _}from"./chunk-SBZEOPXX.js";var v={};_(v,{EventDefinition:()=>S,SERVICE_PLUGIN_ERROR_TYPE:()=>O,SORT_CAPABILITIES:()=>f,SORT_DIRECTIONS:()=>n,ServicePluginDefinition:()=>o});function S(i,e=!1,r=t=>t){return()=>({__type:"event-definition",type:i,isDomainEvent:e,transformations:r})}function o(i,e){return{__type:"service-plugin-definition",componentType:i,methods:e}}var O,n,f,C=E(()=>{"use strict";O="wix_spi_error",n={ASC:"ASC",DESC:"DESC"},f={...n,BOTH:"BOTH",NONE:"NONE"}});export{S as a,O as b,v as c,C as d};
2
- //# sourceMappingURL=chunk-UTEFPCPF.js.map
1
+ import{a as E,c as _}from"./chunk-SBZEOPXX.js";var v={};_(v,{EventDefinition:()=>S,SERVICE_PLUGIN_ERROR_TYPE:()=>O,SORT_CAPABILITIES:()=>f,SORT_DIRECTIONS:()=>n,ServicePluginDefinition:()=>o});function S(i,e=!1,r=t=>t){return()=>({__type:"event-definition",type:i,isDomainEvent:e,transformations:r})}function o(i,e){return{__type:"service-plugin-definition",componentType:i,methods:e}}var O,n,f,C=E(()=>{"use strict";O="wix_spi_error",n={ASC:"ASC",DESC:"DESC"},f={...n,BOTH:"BOTH",NONE:"NONE"}});export{v as a,C as b};
2
+ //# sourceMappingURL=chunk-KXCY2KWZ.js.map