@wix/cli-app 1.1.60 → 1.1.61

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 (92) hide show
  1. package/build/{CreateVersionCommand-Z6F5IKH5.js → CreateVersionCommand-27X5XRUT.js} +14 -14
  2. package/build/{DevCommand-YFEZ4QV5.js → DevCommand-6HTMGZ2M.js} +12 -12
  3. package/build/{GenerateCommand-KCV4YDNN.js → GenerateCommand-7IAUS6BH.js} +105 -41
  4. package/build/{GenerateCommand-KCV4YDNN.js.map → GenerateCommand-7IAUS6BH.js.map} +1 -1
  5. package/build/{LogsCommand-VBMGVYNU.js → LogsCommand-WPUUN3JU.js} +4 -4
  6. package/build/PreviewCommand-CU46IAJE.js +23 -0
  7. package/build/{ReleaseCommand-5F3FPBXT.js → ReleaseCommand-KTVVW67B.js} +14 -14
  8. package/build/{ServeCommand-G4FF4PT3.js → ServeCommand-LXJK73IU.js} +13 -13
  9. package/build/{build-XZI3USNB.js → build-KOJIDD4M.js} +38 -9
  10. package/build/build-KOJIDD4M.js.map +1 -0
  11. package/build/{chunk-HUWYF2ET.js → chunk-2GCKBITG.js} +8 -8
  12. package/build/{chunk-O42QDBJU.js → chunk-63EMUDZG.js} +3 -3
  13. package/build/{chunk-5QZS3HT7.js → chunk-A3UPTTKJ.js} +3 -3
  14. package/build/{chunk-WRWNJYKZ.js → chunk-EL6CIFIN.js} +3 -3
  15. package/build/{chunk-QVGYU6D4.js → chunk-ELYFHAX6.js} +5 -2
  16. package/build/chunk-ELYFHAX6.js.map +1 -0
  17. package/build/{chunk-4VTDNX5T.js → chunk-IL6O6OIL.js} +2 -2
  18. package/build/{chunk-VXE3IWKR.js → chunk-KJF6LWGQ.js} +2 -2
  19. package/build/{chunk-WRPV7SLY.js → chunk-KJRYBTZB.js} +192 -19
  20. package/build/chunk-KJRYBTZB.js.map +1 -0
  21. package/build/{chunk-PKSGXFYA.js → chunk-LOLULZLU.js} +3 -3
  22. package/build/{chunk-IG6IV6VM.js → chunk-MEDHLZDL.js} +3 -3
  23. package/build/{chunk-DGTJGIY2.js → chunk-MKPZBVQD.js} +213 -27
  24. package/build/{chunk-DGTJGIY2.js.map → chunk-MKPZBVQD.js.map} +1 -1
  25. package/build/{chunk-2PTCXTKF.js → chunk-OHF42SKC.js} +5 -5
  26. package/build/{chunk-CNZ3Q5PF.js → chunk-PBUNWOQL.js} +7 -7
  27. package/build/chunk-PBUNWOQL.js.map +1 -0
  28. package/build/{chunk-7CGRTCDC.js → chunk-S7UPYDTK.js} +3 -3
  29. package/build/chunk-SJY44CC7.js +19161 -0
  30. package/build/chunk-SJY44CC7.js.map +1 -0
  31. package/build/{chunk-VZJZSWRE.js → chunk-XBBIROHO.js} +3 -3
  32. package/build/{chunk-36W5H7IG.js → chunk-XCKLCHGL.js} +188 -174
  33. package/build/chunk-XCKLCHGL.js.map +1 -0
  34. package/build/{chunk-USAOCISL.js → chunk-Z7MEHVBF.js} +3 -3
  35. package/build/cloudflare-runtime/entry.js +7158 -53
  36. package/build/cloudflare-runtime/getRegisteredExtensions.js +7096 -16
  37. package/build/index.js +20 -20
  38. package/build/platform-sdk/chunk-BGTZ3RNN.js +2 -0
  39. package/build/platform-sdk/chunk-BGTZ3RNN.js.map +1 -0
  40. package/build/platform-sdk/{chunk-QV4VBCJB.js → chunk-FWUYJ3UR.js} +2 -2
  41. package/build/platform-sdk/chunk-NAPHVUFM.js +2 -0
  42. package/build/platform-sdk/{chunk-42XIZ4MH.js.map → chunk-NAPHVUFM.js.map} +1 -1
  43. package/build/platform-sdk/{chunk-EERHWVVD.js → chunk-XYIDODIB.js} +2 -2
  44. package/build/platform-sdk/dashboard.js +1 -1
  45. package/build/platform-sdk/dashboard.js.map +1 -1
  46. package/build/platform-sdk/editor.js +2 -2
  47. package/build/platform-sdk/editor.js.map +1 -1
  48. package/build/platform-sdk/sdk-context.js +1 -1
  49. package/build/platform-sdk/sdk-context.js.map +1 -1
  50. package/build/platform-sdk/site.js +1 -1
  51. package/build/platform-sdk/site.js.map +1 -1
  52. package/build/platform-sdk/web-methods.js +1 -1
  53. package/build/platform-sdk/web-methods.js.map +1 -1
  54. package/build/{preview-VAHHFTRZ.js → preview-YEREVN42.js} +12 -12
  55. package/build/{render-command-3AYSQXHN.js → render-command-H5DHMFOD.js} +6 -6
  56. package/package.json +7 -5
  57. package/schemas/custom-element.json +1 -1
  58. package/templates/custom-element/files/element.module.css.ejs +18 -5
  59. package/templates/custom-element/files/element.tsx.ejs +8 -5
  60. package/templates/custom-element/files/panel.tsx.ejs +25 -12
  61. package/templates/web-method/files/placeholder.ts.ejs +1 -1
  62. package/build/PreviewCommand-3OMHWDW6.js +0 -23
  63. package/build/build-XZI3USNB.js.map +0 -1
  64. package/build/chunk-36W5H7IG.js.map +0 -1
  65. package/build/chunk-CNZ3Q5PF.js.map +0 -1
  66. package/build/chunk-FTC5AK3Y.js +0 -1367
  67. package/build/chunk-FTC5AK3Y.js.map +0 -1
  68. package/build/chunk-QVGYU6D4.js.map +0 -1
  69. package/build/chunk-WRPV7SLY.js.map +0 -1
  70. package/build/platform-sdk/chunk-42XIZ4MH.js +0 -2
  71. /package/build/{CreateVersionCommand-Z6F5IKH5.js.map → CreateVersionCommand-27X5XRUT.js.map} +0 -0
  72. /package/build/{DevCommand-YFEZ4QV5.js.map → DevCommand-6HTMGZ2M.js.map} +0 -0
  73. /package/build/{LogsCommand-VBMGVYNU.js.map → LogsCommand-WPUUN3JU.js.map} +0 -0
  74. /package/build/{PreviewCommand-3OMHWDW6.js.map → PreviewCommand-CU46IAJE.js.map} +0 -0
  75. /package/build/{ReleaseCommand-5F3FPBXT.js.map → ReleaseCommand-KTVVW67B.js.map} +0 -0
  76. /package/build/{ServeCommand-G4FF4PT3.js.map → ServeCommand-LXJK73IU.js.map} +0 -0
  77. /package/build/{chunk-HUWYF2ET.js.map → chunk-2GCKBITG.js.map} +0 -0
  78. /package/build/{chunk-O42QDBJU.js.map → chunk-63EMUDZG.js.map} +0 -0
  79. /package/build/{chunk-5QZS3HT7.js.map → chunk-A3UPTTKJ.js.map} +0 -0
  80. /package/build/{chunk-WRWNJYKZ.js.map → chunk-EL6CIFIN.js.map} +0 -0
  81. /package/build/{chunk-4VTDNX5T.js.map → chunk-IL6O6OIL.js.map} +0 -0
  82. /package/build/{chunk-VXE3IWKR.js.map → chunk-KJF6LWGQ.js.map} +0 -0
  83. /package/build/{chunk-PKSGXFYA.js.map → chunk-LOLULZLU.js.map} +0 -0
  84. /package/build/{chunk-IG6IV6VM.js.map → chunk-MEDHLZDL.js.map} +0 -0
  85. /package/build/{chunk-2PTCXTKF.js.map → chunk-OHF42SKC.js.map} +0 -0
  86. /package/build/{chunk-7CGRTCDC.js.map → chunk-S7UPYDTK.js.map} +0 -0
  87. /package/build/{chunk-VZJZSWRE.js.map → chunk-XBBIROHO.js.map} +0 -0
  88. /package/build/{chunk-USAOCISL.js.map → chunk-Z7MEHVBF.js.map} +0 -0
  89. /package/build/platform-sdk/{chunk-QV4VBCJB.js.map → chunk-FWUYJ3UR.js.map} +0 -0
  90. /package/build/platform-sdk/{chunk-EERHWVVD.js.map → chunk-XYIDODIB.js.map} +0 -0
  91. /package/build/{preview-VAHHFTRZ.js.map → preview-YEREVN42.js.map} +0 -0
  92. /package/build/{render-command-3AYSQXHN.js.map → render-command-H5DHMFOD.js.map} +0 -0
@@ -2,7 +2,7 @@ import { createRequire as _createRequire } from 'node:module';
2
2
  const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  require_baseUniq
5
- } from "./chunk-VXE3IWKR.js";
5
+ } from "./chunk-KJF6LWGQ.js";
6
6
  import {
7
7
  BLOCKS_WIDGETS_PANELS_PATTERN,
8
8
  BLOCKS_WIDGETS_PATTERN,
@@ -39,9 +39,12 @@ import {
39
39
  getBackendEventSlug,
40
40
  getBackendOptimizedDir,
41
41
  getDataDirPath,
42
+ pRetry,
42
43
  readFile,
43
44
  replaceExtension,
44
45
  require_picomatch,
46
+ resolveUrl,
47
+ serializer,
45
48
  virtualBlocksWidgetPanelScriptAssets,
46
49
  virtualBlocksWidgetScriptAssets,
47
50
  virtualCustomElementPanelHTMLAssets,
@@ -55,14 +58,14 @@ import {
55
58
  virtualModuleIdForScriptAsset,
56
59
  virtualPathForCustomElementPanelHTMLAsset,
57
60
  virtualPathForHTMLAsset
58
- } from "./chunk-DGTJGIY2.js";
61
+ } from "./chunk-MKPZBVQD.js";
59
62
  import {
60
63
  CliError,
61
64
  CliErrorCode,
62
65
  getTestOverrides,
63
66
  require_lib,
64
67
  z
65
- } from "./chunk-36W5H7IG.js";
68
+ } from "./chunk-XCKLCHGL.js";
66
69
  import {
67
70
  __commonJS,
68
71
  __esm,
@@ -37573,6 +37576,10 @@ async function getViteConfig(model, options, { baseBackendUrl } = {}) {
37573
37576
  }
37574
37577
  },
37575
37578
  define: {
37579
+ "import.meta.env.APP_ID": JSON.stringify(model.config.appId),
37580
+ "import.meta.env.SENTRY_DSN": JSON.stringify(
37581
+ model.config.monitoring?.sentry.dsn
37582
+ ),
37576
37583
  ...baseBackendUrl ? {
37577
37584
  "import.meta.env.BASE_API_URL": JSON.stringify(
37578
37585
  `${baseBackendUrl.replace(/\/$/, "")}/functions`
@@ -38270,7 +38277,10 @@ async function getViteConfig2(model, options, { appSecret, webhookPublicKey }) {
38270
38277
  define: {
38271
38278
  "import.meta.env.APP_ID": JSON.stringify(model.config.appId),
38272
38279
  "import.meta.env.APP_SECRET": JSON.stringify(appSecret),
38273
- "import.meta.env.PUBLIC_KEY": JSON.stringify(webhookPublicKey)
38280
+ "import.meta.env.PUBLIC_KEY": JSON.stringify(webhookPublicKey),
38281
+ "import.meta.env.SENTRY_DSN": JSON.stringify(
38282
+ model.config.monitoring?.sentry.dsn
38283
+ )
38274
38284
  },
38275
38285
  plugins: [
38276
38286
  optimizeBackendExtensions({
@@ -38443,7 +38453,8 @@ var createCustomElementConfig = (component, scriptUrl, settingsUrl) => {
38443
38453
  defaultHeight: 400,
38444
38454
  heightMode: HeightMode.FIXED
38445
38455
  }
38446
- }
38456
+ },
38457
+ behaviors: {}
38447
38458
  }),
38448
38459
  CustomElement: (customElement) => ({
38449
38460
  id: customElement.id,
@@ -38463,7 +38474,8 @@ var createCustomElementConfig = (component, scriptUrl, settingsUrl) => {
38463
38474
  defaultHeight: customElement.height.defaultHeight,
38464
38475
  heightMode: HeightMode.FIXED
38465
38476
  }
38466
- }
38477
+ },
38478
+ behaviors: customElement.behaviors
38467
38479
  })
38468
38480
  });
38469
38481
  return {
@@ -38485,7 +38497,10 @@ var createCustomElementConfig = (component, scriptUrl, settingsUrl) => {
38485
38497
  base: customElementData.base,
38486
38498
  widget: { region: RegionType.BODY }
38487
38499
  },
38488
- behaviors: component.relativePanelPath && settingsUrl ? { settings: { settingsUrl } } : {},
38500
+ behaviors: {
38501
+ ...customElementData.behaviors,
38502
+ settings: component.relativePanelPath && settingsUrl ? { settingsUrl } : void 0
38503
+ },
38489
38504
  dependencies: component.dependencies
38490
38505
  }
38491
38506
  }
@@ -38876,7 +38891,17 @@ async function getEventDevSlugs(component, backendDevServerUrl) {
38876
38891
  const url = new URL(`__get-registered-events`, backendDevServerUrl).href;
38877
38892
  const response = await fetch(url);
38878
38893
  if (!response.ok) {
38879
- return [];
38894
+ const errData = await response.json().catch(() => null);
38895
+ if (errData?.type === "BACKEND_EVAL_ERROR") {
38896
+ throw new CliError({
38897
+ code: CliErrorCode.FailedToEvalBackendExtension({
38898
+ filename: errData.filename,
38899
+ errorMessage: errData.error
38900
+ }),
38901
+ cause: void 0
38902
+ });
38903
+ }
38904
+ return null;
38880
38905
  }
38881
38906
  const eventTypes = await response.json();
38882
38907
  const devSlugs = eventTypes[`/${component.relativePath}`] ?? [];
@@ -38892,13 +38917,32 @@ async function getRegisteredExtensions(model) {
38892
38917
  }
38893
38918
  async function getEventProdSlugs(component, model) {
38894
38919
  const { getRegisteredEvents } = await getRegisteredExtensions(model);
38895
- const eventsMap = await getRegisteredEvents();
38896
- return eventsMap[`/${component.relativePath}`];
38920
+ const { events, evaluationError } = await getRegisteredEvents();
38921
+ if (evaluationError) {
38922
+ throw new CliError({
38923
+ code: CliErrorCode.FailedToEvalBackendExtension({
38924
+ filename: evaluationError.filename,
38925
+ errorMessage: evaluationError.error
38926
+ }),
38927
+ cause: void 0
38928
+ });
38929
+ }
38930
+ return events[`/${component.relativePath}`];
38897
38931
  }
38898
38932
  async function getServicePluginDevType(component, backendDevServerUrl) {
38899
38933
  const url = new URL(`__get-registered-service-plugins`, backendDevServerUrl).href;
38900
38934
  const response = await fetch(url);
38901
38935
  if (!response.ok) {
38936
+ const errData = await response.json().catch(() => null);
38937
+ if (errData?.type === "BACKEND_EVAL_ERROR") {
38938
+ throw new CliError({
38939
+ code: CliErrorCode.FailedToEvalBackendExtension({
38940
+ filename: errData.filename,
38941
+ errorMessage: errData.error
38942
+ }),
38943
+ cause: void 0
38944
+ });
38945
+ }
38902
38946
  return null;
38903
38947
  }
38904
38948
  const servicePluginTypes = await response.json();
@@ -38907,8 +38951,17 @@ async function getServicePluginDevType(component, backendDevServerUrl) {
38907
38951
  }
38908
38952
  async function getServicePluginProdType(component, model) {
38909
38953
  const { getRegisteredServicePlugins } = await getRegisteredExtensions(model);
38910
- const servicePluginsMap = await getRegisteredServicePlugins();
38911
- return servicePluginsMap[`/${component.relativePath}`];
38954
+ const { servicePlugins, evaluationError } = await getRegisteredServicePlugins();
38955
+ if (evaluationError) {
38956
+ throw new CliError({
38957
+ code: CliErrorCode.FailedToEvalBackendExtension({
38958
+ filename: evaluationError.filename,
38959
+ errorMessage: evaluationError.error
38960
+ }),
38961
+ cause: void 0
38962
+ });
38963
+ }
38964
+ return servicePlugins[`/${component.relativePath}`];
38912
38965
  }
38913
38966
  var dashboardSourceBuilder = (component, model, clientSource) => {
38914
38967
  if (!model.config.trusted) {
@@ -38962,13 +39015,13 @@ var customElementBuilder = (component, clientSource) => {
38962
39015
  var blocksComponentBuilder = (component, clientSource, blocksSource) => {
38963
39016
  const moduleId = virtualModuleIdForBlocksComponentScriptAsset(component.id);
38964
39017
  const componentUrl = clientSource.clientBuildOutput ? extractModuleBundleName(clientSource.clientBuildOutput, moduleId) : `/@id/${moduleId}?import`;
38965
- const sourceFromBlocks = blocksSource.find(
38966
- (dcComponent) => dcComponent.compId === component.id
39018
+ const sourceFromBlocks = (blocksSource ?? []).find(
39019
+ (blocksComponent) => blocksComponent.id === component.id
38967
39020
  );
38968
39021
  return {
38969
39022
  componentUrl,
38970
39023
  panelComponentData: sourceFromBlocks?.compData?.panel,
38971
- studioWidgetComponentData: sourceFromBlocks?.compData?.studioWidgetComponentData ?? {}
39024
+ studioWidgetComponentData: sourceFromBlocks?.data?.studioWidgetComponentData ?? {}
38972
39025
  };
38973
39026
  };
38974
39027
  function getComponentSourceBuilder(model, clientSource, backendSource, blocksSource) {
@@ -39309,14 +39362,14 @@ var sitePluginSchema = z.object({
39309
39362
  })
39310
39363
  }).passthrough();
39311
39364
  var blocksWidgetComponentData = z.object({
39312
- widgetBundleUrl: z.string().url()
39365
+ widgetBundleUrl: z.string()
39313
39366
  });
39314
39367
  var blocksWidgetSchema = z.object({
39315
39368
  compId: z.string(),
39316
39369
  compType: z.literal(ComponentType.STUDIO_WIDGET),
39317
39370
  compName: z.string().optional(),
39318
39371
  compData: z.object({
39319
- studioWidgetComponentData: blocksWidgetComponentData
39372
+ studioWidgetComponentData: z.record(z.string(), z.any()).and(blocksWidgetComponentData)
39320
39373
  })
39321
39374
  }).passthrough();
39322
39375
  var blocksWidgetPanelComponentData = z.object({
@@ -39711,6 +39764,125 @@ var updateTopology = (appManifest, topologyData) => {
39711
39764
  return clonedManifest;
39712
39765
  };
39713
39766
 
39767
+ // src/blocks/blocks-client.ts
39768
+ init_esm_shims();
39769
+
39770
+ // ../../node_modules/@wix/ambassador-blocks-v1-blocks-app/build/es/http.impl.js
39771
+ init_esm_shims();
39772
+ var _prepareExtensionsForRevisionRequest = {};
39773
+ var _prepareExtensionsForRevisionResponse = {};
39774
+ function resolveWixBlocksV1WixBlocksServiceUrl(opts) {
39775
+ var domainToMappings = {
39776
+ "editor._base_domain_": [
39777
+ {
39778
+ srcPath: "/_api/wix-blocks-service",
39779
+ destPath: ""
39780
+ }
39781
+ ],
39782
+ "blocks._base_domain_": [
39783
+ {
39784
+ srcPath: "/_api/wix-blocks-service",
39785
+ destPath: ""
39786
+ }
39787
+ ],
39788
+ "create.editorx": [
39789
+ {
39790
+ srcPath: "/_api/wix-blocks-service",
39791
+ destPath: ""
39792
+ }
39793
+ ],
39794
+ "manage._base_domain_": [
39795
+ {
39796
+ srcPath: "/_api/wix-blocks-service",
39797
+ destPath: ""
39798
+ }
39799
+ ],
39800
+ "apps.wixapps.net": [
39801
+ {
39802
+ srcPath: "/wix-blocks-service",
39803
+ destPath: ""
39804
+ }
39805
+ ],
39806
+ "dev._base_domain_": [
39807
+ {
39808
+ srcPath: "/_api/wix-blocks-service",
39809
+ destPath: ""
39810
+ }
39811
+ ],
39812
+ "bo._base_domain_": [
39813
+ {
39814
+ srcPath: "/wix-blocks-service",
39815
+ destPath: ""
39816
+ }
39817
+ ],
39818
+ "wixbo.ai": [
39819
+ {
39820
+ srcPath: "/wix-blocks-service",
39821
+ destPath: ""
39822
+ }
39823
+ ],
39824
+ "wix-bo.com": [
39825
+ {
39826
+ srcPath: "/wix-blocks-service",
39827
+ destPath: ""
39828
+ }
39829
+ ]
39830
+ };
39831
+ return resolveUrl(Object.assign(opts, { domainToMappings }));
39832
+ }
39833
+ function prepareExtensionsForRevision(payload) {
39834
+ var _a = serializer(_prepareExtensionsForRevisionRequest, {}), toReq = _a.toJSON, fromReq = _a.fromJSON;
39835
+ var fromRes = serializer(_prepareExtensionsForRevisionResponse, {}).fromJSON;
39836
+ function __prepareExtensionsForRevision(_a2) {
39837
+ var host = _a2.host;
39838
+ var serializedData = toReq(payload);
39839
+ var metadata = {
39840
+ entityFqdn: "wix.blocks.v1.blocks_app",
39841
+ method: "POST",
39842
+ methodFqn: "wix.blocks.v1.WixBlocksService.PrepareExtensionsForRevision",
39843
+ url: resolveWixBlocksV1WixBlocksServiceUrl({
39844
+ protoPath: "/api/v1/apps/{appDefId}/prepare-extensions-for-revision",
39845
+ data: serializedData,
39846
+ host
39847
+ }),
39848
+ data: serializedData,
39849
+ transformResponse: fromRes
39850
+ };
39851
+ return metadata;
39852
+ }
39853
+ __prepareExtensionsForRevision.fromReq = fromReq;
39854
+ __prepareExtensionsForRevision.__isAmbassador = true;
39855
+ return __prepareExtensionsForRevision;
39856
+ }
39857
+
39858
+ // src/blocks/blocks-client.ts
39859
+ var BlocksClient = class {
39860
+ constructor(httpClient) {
39861
+ this.httpClient = httpClient;
39862
+ const { minRetryTimeout } = getTestOverrides();
39863
+ this.retryOptions = {
39864
+ retries: 3,
39865
+ minTimeout: minRetryTimeout,
39866
+ maxTimeout: 3 * 1e3
39867
+ };
39868
+ }
39869
+ retryOptions;
39870
+ prepareExtensionsForRevision = async (payload) => {
39871
+ try {
39872
+ const { data: data2 } = await pRetry(
39873
+ () => this.httpClient.request(prepareExtensionsForRevision(payload)),
39874
+ this.retryOptions
39875
+ );
39876
+ return data2.extensionsForRevision ?? [];
39877
+ } catch (e) {
39878
+ throw new CliError({
39879
+ code: CliErrorCode.FailedToGetBlocksExtensionsData(),
39880
+ cause: e
39881
+ });
39882
+ }
39883
+ };
39884
+ };
39885
+
39714
39886
  export {
39715
39887
  getViteServerUrl,
39716
39888
  getViteConfig,
@@ -39722,11 +39894,12 @@ export {
39722
39894
  validateComponents,
39723
39895
  createCustomElementConfig,
39724
39896
  createAppManifest,
39725
- getComponentSourceBuilder
39897
+ getComponentSourceBuilder,
39898
+ BlocksClient
39726
39899
  };
39727
39900
  /*! Bundled license information:
39728
39901
 
39729
39902
  he/he.js:
39730
39903
  (*! https://mths.be/he v1.2.0 by @mathias | MIT license *)
39731
39904
  */
39732
- //# sourceMappingURL=chunk-WRPV7SLY.js.map
39905
+ //# sourceMappingURL=chunk-KJRYBTZB.js.map