@wix/cli-app 1.1.167 → 1.1.168

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 (64) hide show
  1. package/build/{AddPermissionCommand-R746BHR5.js → AddPermissionCommand-U7WLSX4K.js} +2 -2
  2. package/build/{DevCommand-CKCUIMQ7.js → DevCommand-HKLAZWVO.js} +12 -13
  3. package/build/DevCommand-HKLAZWVO.js.map +1 -0
  4. package/build/{GenerateCommand-4J3RKWIV.js → GenerateCommand-RIXAJ4TM.js} +7 -7
  5. package/build/{LogsCommand-6QLWARX7.js → LogsCommand-42DAHY6G.js} +3 -3
  6. package/build/PreviewCommand-B6R72CVG.js +19 -0
  7. package/build/ReleaseCommand-M2JVYLVJ.js +23 -0
  8. package/build/{ServeCommand-B3MMIWSX.js → ServeCommand-NFWPHZMW.js} +3 -3
  9. package/build/{build-Z4MTXLAQ.js → build-P73WLYJB.js} +6 -6
  10. package/build/{chunk-NSC3X7TO.js → chunk-2OTJK34O.js} +454 -48
  11. package/build/chunk-2OTJK34O.js.map +1 -0
  12. package/build/{chunk-XDB4OLY2.js → chunk-56EQ4QFU.js} +6 -6
  13. package/build/{chunk-JDFSGI5Y.js → chunk-B52566JC.js} +2 -2
  14. package/build/{chunk-YXBHRN4E.js → chunk-OQLZ6DHX.js} +2 -2
  15. package/build/{chunk-ISHV7FPE.js → chunk-QCUWX5L4.js} +3 -3
  16. package/build/{chunk-SARA3KL6.js → chunk-S23IP5IC.js} +2 -2
  17. package/build/{chunk-HUWTDLNU.js → chunk-SKJCY3HN.js} +2 -2
  18. package/build/{chunk-62F24QB5.js → chunk-TTFRWH6B.js} +14 -8
  19. package/build/chunk-TTFRWH6B.js.map +1 -0
  20. package/build/{chunk-GZMYMILB.js → chunk-UDZLFU7R.js} +2 -2
  21. package/build/{chunk-P4YNBBGD.js → chunk-UFMGDIV6.js} +3 -3
  22. package/build/{chunk-NV2YRHO2.js → chunk-UR7ZIHOO.js} +6 -6
  23. package/build/chunk-UR7ZIHOO.js.map +1 -0
  24. package/build/{chunk-Z2ABMO4N.js → chunk-WGFKFWHW.js} +2 -2
  25. package/build/{chunk-MS4HNHKA.js → chunk-X23LLJJE.js} +861 -983
  26. package/build/{chunk-MS4HNHKA.js.map → chunk-X23LLJJE.js.map} +1 -1
  27. package/build/{chunk-ZBARCRCN.js → chunk-XNHGCIZS.js} +2 -2
  28. package/build/{chunk-Z2U5TFST.js → chunk-Y2YU4FLR.js} +2 -2
  29. package/build/{chunk-TJYCXF3Y.js → chunk-ZGHWYTOU.js} +2 -2
  30. package/build/{chunk-SSVVBMIK.js → chunk-ZPTYHTPU.js} +6 -6
  31. package/build/index.js +23 -23
  32. package/build/{preview-VE24S6BC.js → preview-Y4AI2ZBW.js} +12 -12
  33. package/build/{release-XNPJ5PFC.js → release-MKAGU2B2.js} +14 -14
  34. package/build/{render-command-NWTZRACN.js → render-command-AMVWXP2I.js} +5 -5
  35. package/package.json +2 -2
  36. package/build/DevCommand-CKCUIMQ7.js.map +0 -1
  37. package/build/PreviewCommand-5FJEIIPR.js +0 -19
  38. package/build/ReleaseCommand-MFBXBLIH.js +0 -23
  39. package/build/chunk-62F24QB5.js.map +0 -1
  40. package/build/chunk-NSC3X7TO.js.map +0 -1
  41. package/build/chunk-NV2YRHO2.js.map +0 -1
  42. /package/build/{AddPermissionCommand-R746BHR5.js.map → AddPermissionCommand-U7WLSX4K.js.map} +0 -0
  43. /package/build/{GenerateCommand-4J3RKWIV.js.map → GenerateCommand-RIXAJ4TM.js.map} +0 -0
  44. /package/build/{LogsCommand-6QLWARX7.js.map → LogsCommand-42DAHY6G.js.map} +0 -0
  45. /package/build/{PreviewCommand-5FJEIIPR.js.map → PreviewCommand-B6R72CVG.js.map} +0 -0
  46. /package/build/{ReleaseCommand-MFBXBLIH.js.map → ReleaseCommand-M2JVYLVJ.js.map} +0 -0
  47. /package/build/{ServeCommand-B3MMIWSX.js.map → ServeCommand-NFWPHZMW.js.map} +0 -0
  48. /package/build/{build-Z4MTXLAQ.js.map → build-P73WLYJB.js.map} +0 -0
  49. /package/build/{chunk-XDB4OLY2.js.map → chunk-56EQ4QFU.js.map} +0 -0
  50. /package/build/{chunk-JDFSGI5Y.js.map → chunk-B52566JC.js.map} +0 -0
  51. /package/build/{chunk-YXBHRN4E.js.map → chunk-OQLZ6DHX.js.map} +0 -0
  52. /package/build/{chunk-ISHV7FPE.js.map → chunk-QCUWX5L4.js.map} +0 -0
  53. /package/build/{chunk-SARA3KL6.js.map → chunk-S23IP5IC.js.map} +0 -0
  54. /package/build/{chunk-HUWTDLNU.js.map → chunk-SKJCY3HN.js.map} +0 -0
  55. /package/build/{chunk-GZMYMILB.js.map → chunk-UDZLFU7R.js.map} +0 -0
  56. /package/build/{chunk-P4YNBBGD.js.map → chunk-UFMGDIV6.js.map} +0 -0
  57. /package/build/{chunk-Z2ABMO4N.js.map → chunk-WGFKFWHW.js.map} +0 -0
  58. /package/build/{chunk-ZBARCRCN.js.map → chunk-XNHGCIZS.js.map} +0 -0
  59. /package/build/{chunk-Z2U5TFST.js.map → chunk-Y2YU4FLR.js.map} +0 -0
  60. /package/build/{chunk-TJYCXF3Y.js.map → chunk-ZGHWYTOU.js.map} +0 -0
  61. /package/build/{chunk-SSVVBMIK.js.map → chunk-ZPTYHTPU.js.map} +0 -0
  62. /package/build/{preview-VE24S6BC.js.map → preview-Y4AI2ZBW.js.map} +0 -0
  63. /package/build/{release-XNPJ5PFC.js.map → release-MKAGU2B2.js.map} +0 -0
  64. /package/build/{render-command-NWTZRACN.js.map → render-command-AMVWXP2I.js.map} +0 -0
@@ -5,7 +5,7 @@ import {
5
5
  isCliSystemError,
6
6
  wixCliCliCommand,
7
7
  wixCliCliCommandStatus
8
- } from "./chunk-MS4HNHKA.js";
8
+ } from "./chunk-X23LLJJE.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-ZBARCRCN.js.map
597
+ //# sourceMappingURL=chunk-XNHGCIZS.js.map
@@ -15,7 +15,7 @@ import {
15
15
  toURLSearchParams,
16
16
  useHttpClient,
17
17
  usePanoramaMethodLogger
18
- } from "./chunk-MS4HNHKA.js";
18
+ } from "./chunk-X23LLJJE.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-Z2U5TFST.js.map
4809
+ //# sourceMappingURL=chunk-Y2YU4FLR.js.map
@@ -18,7 +18,7 @@ import {
18
18
  useHttpClient,
19
19
  usePanoramaMethodLogger,
20
20
  wixCliAppsFlowTunnelCreationStatusSrc11Evid5233
21
- } from "./chunk-MS4HNHKA.js";
21
+ } from "./chunk-X23LLJJE.js";
22
22
  import {
23
23
  __commonJS,
24
24
  __dirname,
@@ -906,4 +906,4 @@ init_esm_shims();
906
906
  export {
907
907
  useTunnel
908
908
  };
909
- //# sourceMappingURL=chunk-TJYCXF3Y.js.map
909
+ //# sourceMappingURL=chunk-ZGHWYTOU.js.map
@@ -2,7 +2,7 @@ import { createRequire as _createRequire } from 'node:module';
2
2
  const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  readAppManifestFile
5
- } from "./chunk-P4YNBBGD.js";
5
+ } from "./chunk-UFMGDIV6.js";
6
6
  import {
7
7
  ArmTagProvider,
8
8
  ExtensionDataProvider,
@@ -16,16 +16,16 @@ import {
16
16
  useResolvePlatformUrl,
17
17
  useSite,
18
18
  useSiteOverrideClient
19
- } from "./chunk-NSC3X7TO.js";
19
+ } from "./chunk-2OTJK34O.js";
20
20
  import {
21
21
  useBackendComponents
22
- } from "./chunk-YXBHRN4E.js";
22
+ } from "./chunk-OQLZ6DHX.js";
23
23
  import {
24
24
  getMonitoringProvider,
25
25
  updateAppManifestComponents,
26
26
  updateMonitoring,
27
27
  updateTopology
28
- } from "./chunk-ISHV7FPE.js";
28
+ } from "./chunk-QCUWX5L4.js";
29
29
  import {
30
30
  Alert,
31
31
  Box_default,
@@ -54,7 +54,7 @@ import {
54
54
  useHttpClient,
55
55
  useProjectModel,
56
56
  useTranslation
57
- } from "./chunk-MS4HNHKA.js";
57
+ } from "./chunk-X23LLJJE.js";
58
58
  import {
59
59
  __toESM,
60
60
  init_esm_shims
@@ -282,4 +282,4 @@ export {
282
282
  assertBuildOutputExists,
283
283
  PreviewCommand
284
284
  };
285
- //# sourceMappingURL=chunk-SSVVBMIK.js.map
285
+ //# sourceMappingURL=chunk-ZPTYHTPU.js.map
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-JDFSGI5Y.js";
6
+ } from "./chunk-B52566JC.js";
7
7
  import {
8
8
  runCommand
9
- } from "./chunk-62F24QB5.js";
10
- import "./chunk-ZBARCRCN.js";
9
+ } from "./chunk-TTFRWH6B.js";
10
+ import "./chunk-XNHGCIZS.js";
11
11
  import "./chunk-VJQHGLIW.js";
12
- import "./chunk-HUWTDLNU.js";
12
+ import "./chunk-SKJCY3HN.js";
13
13
  import {
14
14
  external_exports,
15
15
  package_default,
16
16
  require_react
17
- } from "./chunk-MS4HNHKA.js";
17
+ } from "./chunk-X23LLJJE.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-NWTZRACN.js");
3381
- const { build } = await import("./build-Z4MTXLAQ.js");
3380
+ const { runCommand: runCommand2 } = await import("./render-command-AMVWXP2I.js");
3381
+ const { build } = await import("./build-P73WLYJB.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-CKCUIMQ7.js");
3447
- const { renderCommand } = await import("./render-command-NWTZRACN.js");
3446
+ const { DevCommand } = await import("./DevCommand-HKLAZWVO.js");
3447
+ const { renderCommand } = await import("./render-command-AMVWXP2I.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-NWTZRACN.js");
3486
+ const { renderCommand, runCommand: runCommand2 } = await import("./render-command-AMVWXP2I.js");
3487
3487
  if (json) {
3488
3488
  return runCommand2(command, services, async (model) => {
3489
- const { nonInteractivePreview } = await import("./preview-VE24S6BC.js");
3489
+ const { nonInteractivePreview } = await import("./preview-Y4AI2ZBW.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-5FJEIIPR.js");
3496
+ const { PreviewCommand } = await import("./PreviewCommand-B6R72CVG.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-NWTZRACN.js");
3514
- const { AddPermissionCommand } = await import("./AddPermissionCommand-R746BHR5.js");
3513
+ const { renderCommand } = await import("./render-command-AMVWXP2I.js");
3514
+ const { AddPermissionCommand } = await import("./AddPermissionCommand-U7WLSX4K.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-NWTZRACN.js");
3531
- const { ServeCommandDeprecated } = await import("./ServeCommand-B3MMIWSX.js");
3530
+ const { renderCommand } = await import("./render-command-AMVWXP2I.js");
3531
+ const { ServeCommandDeprecated } = await import("./ServeCommand-NFWPHZMW.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-4J3RKWIV.js");
3547
- const { renderCommand } = await import("./render-command-NWTZRACN.js");
3546
+ const { GenerateCommand } = await import("./GenerateCommand-RIXAJ4TM.js");
3547
+ const { renderCommand } = await import("./render-command-AMVWXP2I.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-NWTZRACN.js");
3572
- const { LogsCommand } = await import("./LogsCommand-6QLWARX7.js");
3571
+ const { renderCommand } = await import("./render-command-AMVWXP2I.js");
3572
+ const { LogsCommand } = await import("./LogsCommand-42DAHY6G.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-NWTZRACN.js");
3606
- const { ReleaseCommand, ReleaseVersionType } = await import("./ReleaseCommand-MFBXBLIH.js");
3605
+ const { renderCommand } = await import("./render-command-AMVWXP2I.js");
3606
+ const { ReleaseCommand, ReleaseVersionType } = await import("./ReleaseCommand-M2JVYLVJ.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-XNPJ5PFC.js");
3620
+ const { nonInteractiveRelease } = await import("./release-MKAGU2B2.js");
3621
3621
  return nonInteractiveRelease(services, model, props);
3622
3622
  });
3623
3623
  }
@@ -3,25 +3,25 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  executeCommand,
5
5
  log
6
- } from "./chunk-NV2YRHO2.js";
6
+ } from "./chunk-UR7ZIHOO.js";
7
7
  import {
8
8
  PreviewCommand
9
- } from "./chunk-SSVVBMIK.js";
10
- import "./chunk-ZBARCRCN.js";
9
+ } from "./chunk-ZPTYHTPU.js";
10
+ import "./chunk-XNHGCIZS.js";
11
11
  import "./chunk-VJQHGLIW.js";
12
- import "./chunk-P4YNBBGD.js";
13
- import "./chunk-NSC3X7TO.js";
14
- import "./chunk-YXBHRN4E.js";
15
- import "./chunk-TJYCXF3Y.js";
12
+ import "./chunk-UFMGDIV6.js";
13
+ import "./chunk-2OTJK34O.js";
14
+ import "./chunk-OQLZ6DHX.js";
15
+ import "./chunk-ZGHWYTOU.js";
16
16
  import "./chunk-P7IRRCF7.js";
17
- import "./chunk-HUWTDLNU.js";
18
- import "./chunk-ISHV7FPE.js";
19
- import "./chunk-Z2U5TFST.js";
17
+ import "./chunk-SKJCY3HN.js";
18
+ import "./chunk-QCUWX5L4.js";
19
+ import "./chunk-Y2YU4FLR.js";
20
20
  import {
21
21
  CliError,
22
22
  CliErrorCode,
23
23
  require_react
24
- } from "./chunk-MS4HNHKA.js";
24
+ } from "./chunk-X23LLJJE.js";
25
25
  import {
26
26
  __toESM,
27
27
  init_esm_shims
@@ -51,4 +51,4 @@ async function nonInteractivePreview(services, model, options) {
51
51
  export {
52
52
  nonInteractivePreview
53
53
  };
54
- //# sourceMappingURL=preview-VE24S6BC.js.map
54
+ //# sourceMappingURL=preview-Y4AI2ZBW.js.map
@@ -3,28 +3,28 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  executeCommand,
5
5
  log
6
- } from "./chunk-NV2YRHO2.js";
6
+ } from "./chunk-UR7ZIHOO.js";
7
7
  import {
8
8
  ReleaseCommand
9
- } from "./chunk-XDB4OLY2.js";
10
- import "./chunk-SSVVBMIK.js";
11
- import "./chunk-ZBARCRCN.js";
9
+ } from "./chunk-56EQ4QFU.js";
10
+ import "./chunk-ZPTYHTPU.js";
11
+ import "./chunk-XNHGCIZS.js";
12
12
  import "./chunk-VJQHGLIW.js";
13
- import "./chunk-P4YNBBGD.js";
14
- import "./chunk-NSC3X7TO.js";
15
- import "./chunk-GZMYMILB.js";
16
- import "./chunk-YXBHRN4E.js";
17
- import "./chunk-TJYCXF3Y.js";
13
+ import "./chunk-UFMGDIV6.js";
14
+ import "./chunk-2OTJK34O.js";
15
+ import "./chunk-UDZLFU7R.js";
16
+ import "./chunk-OQLZ6DHX.js";
17
+ import "./chunk-ZGHWYTOU.js";
18
18
  import "./chunk-P7IRRCF7.js";
19
- import "./chunk-HUWTDLNU.js";
20
- import "./chunk-ISHV7FPE.js";
21
- import "./chunk-Z2U5TFST.js";
19
+ import "./chunk-SKJCY3HN.js";
20
+ import "./chunk-QCUWX5L4.js";
21
+ import "./chunk-Y2YU4FLR.js";
22
22
  import {
23
23
  CliError,
24
24
  CliErrorCode,
25
25
  require_react,
26
26
  toJsonString
27
- } from "./chunk-MS4HNHKA.js";
27
+ } from "./chunk-X23LLJJE.js";
28
28
  import {
29
29
  __toESM,
30
30
  init_esm_shims
@@ -56,4 +56,4 @@ async function nonInteractiveRelease(services, model, releaseProps) {
56
56
  export {
57
57
  nonInteractiveRelease
58
58
  };
59
- //# sourceMappingURL=release-XNPJ5PFC.js.map
59
+ //# sourceMappingURL=release-MKAGU2B2.js.map
@@ -3,14 +3,14 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  renderCommand,
5
5
  runCommand
6
- } from "./chunk-62F24QB5.js";
7
- import "./chunk-ZBARCRCN.js";
6
+ } from "./chunk-TTFRWH6B.js";
7
+ import "./chunk-XNHGCIZS.js";
8
8
  import "./chunk-VJQHGLIW.js";
9
- import "./chunk-HUWTDLNU.js";
10
- import "./chunk-MS4HNHKA.js";
9
+ import "./chunk-SKJCY3HN.js";
10
+ import "./chunk-X23LLJJE.js";
11
11
  import "./chunk-4EFJZ3GQ.js";
12
12
  export {
13
13
  renderCommand,
14
14
  runCommand
15
15
  };
16
- //# sourceMappingURL=render-command-NWTZRACN.js.map
16
+ //# sourceMappingURL=render-command-AMVWXP2I.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wix/cli-app",
3
3
  "description": "CLI tool for Wix apps",
4
- "version": "1.1.167",
4
+ "version": "1.1.168",
5
5
  "author": "Amit Dahan",
6
6
  "dependencies": {
7
7
  "esbuild": "^0.25.0",
@@ -155,5 +155,5 @@
155
155
  ]
156
156
  }
157
157
  },
158
- "falconPackageHash": "507f262658ee44d4f4de5b68454df497e8445470f432935d5dd26305"
158
+ "falconPackageHash": "0b43ebe8558cb19a0f5be08163b5ec78982ac6bf409c8cd3a2035981"
159
159
  }
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/DevCommand/index.ts","../src/components/DevCommand/DevCommand.tsx","../../cli-user-config/src/user-config.ts","../src/components/DevCommand/DevCommandScreens.tsx","../src/components/DevCommand/HomeScreen.tsx","../src/components/DevCommand/screen-state.ts","../src/components/Platform/PlatformSelector.tsx","../src/components/DevCommand/EditorInstallation.tsx","../src/components/DevCommand/AppComponentsMigrations.tsx","../src/components/DevCommand/useCustomElementsMigration.tsx","../src/components/DevCommand/useBlocksComponentsMigrations.tsx","../src/components/DevCommand/DashboardNumericViewer.tsx","../src/components/CloseScreen/CloseScreen.tsx","../src/components/DevCommand/DashboardScreen.tsx","../src/components/DevCommand/DashboardArrowViewer.tsx","../src/components/NumericViewer/NumericViewer.tsx","../src/components/DevCommand/SiteSelectorScreen.tsx","../src/components/CloseScreen/index.tsx","../src/components/DevCommand/BackendScreen.tsx","../src/components/DevCommand/BackendNumericViewer.tsx","../src/components/DevCommand/BackendArrowViewer.tsx","../src/components/DevCommand/TunnelingConsent.tsx","../src/components/DevCommand/RequiredAppsWarning.tsx","../src/components/DevCommand/DevScreenBorder.tsx"],"sourcesContent":["export { DevCommand } from './DevCommand.js';\n","import React, { useMemo } from 'react';\nimport type { FC } from 'react';\nimport { SiteProvider } from '../../site/SiteProvider.js';\nimport { DevEnvironmentProvider } from './DevEnvironment.js';\nimport { DevCommandScreens } from './DevCommandScreens.js';\nimport { TunnelingConsent } from './TunnelingConsent.js';\nimport { RequiredAppsWarning } from './RequiredAppsWarning.js';\nimport { DevScreenBorder } from './DevScreenBorder.js';\nimport { createLogger } from '../../vite/logger.js';\nimport { EditorInstallation } from './EditorInstallation.js';\nimport { AppComponentsMigrations } from './AppComponentsMigrations.js';\nimport { ExtensionDataProvider } from '../../context/extensionData.js';\n\nexport const DevCommand: FC<{\n https: boolean;\n origin?: string;\n port?: number;\n}> = ({ https, origin, port }) => {\n const logger = useMemo(() => createLogger({ timestamp: true }), []);\n\n return (\n <SiteProvider>\n <TunnelingConsent>\n <DevEnvironmentProvider\n logger={logger}\n https={https}\n origin={origin}\n port={port}\n >\n <AppComponentsMigrations>\n <EditorInstallation>\n <RequiredAppsWarning>\n <ExtensionDataProvider>\n <DevScreenBorder>\n <DevCommandScreens />\n </DevScreenBorder>\n </ExtensionDataProvider>\n </RequiredAppsWarning>\n </EditorInstallation>\n </AppComponentsMigrations>\n </DevEnvironmentProvider>\n </TunnelingConsent>\n </SiteProvider>\n );\n};\n","import { join } from 'node:path';\nimport { getDataDirPath } from '@wix/cli-data-dir';\nimport { pathExists, readJson, writeJson } from '@wix/cli-fs';\nimport {\n userConfigSchema,\n USER_CONFIG_FILENAME,\n} from '@wix/cli-core-definitions';\nimport type { UserConfig } from '@wix/cli-core-definitions';\n\nfunction getUserConfigPath() {\n return join(getDataDirPath(), USER_CONFIG_FILENAME);\n}\n\nexport async function readUserConfig() {\n const configPath = getUserConfigPath();\n const isConfigExist = await pathExists(configPath);\n const json = isConfigExist ? await readJson(configPath) : {};\n return userConfigSchema.parse(json);\n}\n\nexport async function updateUserConfig(config: Partial<UserConfig>) {\n const currentConfig = await readUserConfig();\n const newConfig = {\n ...currentConfig,\n ...config,\n };\n\n const configPath = getUserConfigPath();\n await writeJson(configPath, newConfig);\n}\n","import React, { useState } from 'react';\nimport type { FC } from 'react';\nimport { match } from 'variant';\nimport { HomeScreen } from './HomeScreen.js';\nimport { SiteSelectorScreen } from './SiteSelectorScreen.js';\nimport { ScreenState } from './screen-state.js';\nimport { DashboardScreen } from './DashboardScreen.js';\nimport { BackendScreen } from './BackendScreen.js';\n\nexport const DevCommandScreens: FC = () => {\n const [screen, setScreen] = useState<ScreenState>(ScreenState.Home());\n\n return match(screen, {\n Home: () => <HomeScreen onScreenChange={setScreen} />,\n SiteSelector: () => <SiteSelectorScreen onScreenChange={setScreen} />,\n DashboardScreen: ({ selectorType }) => (\n <DashboardScreen\n initialSelectorType={selectorType}\n onSelect={() => setScreen(ScreenState.Home())}\n onClose={() => setScreen(ScreenState.Home())}\n />\n ),\n BackendScreen: ({ selectorType }) => (\n <BackendScreen\n initialSelectorType={selectorType}\n onSelect={() => setScreen(ScreenState.Home())}\n onClose={() => setScreen(ScreenState.Home())}\n />\n ),\n });\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Box, Text, Link, useInput, Key } from '@wix/cli-ui-kit';\nimport { Trans, useTranslation } from '@wix/cli-i18n';\nimport { PlatformType } from '@wix/cli-app-definitions';\nimport { isType } from 'variant';\nimport { useSite } from '../../site/index.js';\nimport { ScreenState } from './screen-state.js';\nimport { PlatformSelector } from '../Platform/PlatformSelector.js';\nimport { useExtensions } from '../extensions/useExtensions.js';\nimport { DashboardNumericViewer } from './DashboardNumericViewer.js';\nimport { useWixCliAppBi } from '../../bi/index.js';\nimport { usePlatform } from '../Platform/usePlatform.js';\nimport { useBackendComponents } from '../../backend/useBackendComponents.js';\n\ninterface Props {\n onScreenChange: (screen: ScreenState) => void;\n}\n\nexport const HomeScreen: FC<Props> = ({ onScreenChange }) => {\n const { t } = useTranslation();\n const { site } = useSite();\n const bi = useWixCliAppBi();\n const { hasSinglePlatform } = usePlatform();\n const { hasExtensions, dashboardExtensions } = useExtensions();\n const { backendComponents } = useBackendComponents();\n\n useInput(async (input) => {\n if (input === 'c') {\n bi.cliAction({\n question: t('dev_command.dev_site.change'),\n questionKey: 'dev_command.dev_site.change',\n action: 'change_site',\n key: input,\n });\n onScreenChange(ScreenState.SiteSelector());\n }\n });\n\n return (\n <>\n <Box gap={1}>\n <Trans\n i18nKey=\"dev_command.dev_site.current\"\n values={{ siteName: site.displayName }}\n components={[<Text bold skin=\"info\" />]}\n />\n\n <Text skin=\"secondary\">\n <Trans\n i18nKey=\"dev_command.dev_site.change\"\n components={[<Key value=\"C\" skin=\"secondary\" />]}\n />\n </Text>\n </Box>\n\n <Box paddingTop={1} paddingBottom={1} flexDirection=\"column\">\n {!hasExtensions() ? (\n <Trans\n i18nKey=\"general.platform.none\"\n // Original link is:\n // https://dev.wix.com/docs/build-apps/developer-tools/cli/get-started/about-the-wix-cli-for-apps\n components={[<Link url=\"https://wix.to/b7o4Ml0\" />]}\n />\n ) : (\n <>\n {hasSinglePlatform(PlatformType.Dashboard()) &&\n backendComponents.length === 0 &&\n dashboardExtensions.some(\n (dashboardExtension) =>\n !isType(dashboardExtension, 'DashboardModal')\n ) ? (\n <DashboardNumericViewer\n onViewMore={(selectorType) =>\n onScreenChange(\n ScreenState.DashboardScreen({\n selectorType,\n })\n )\n }\n />\n ) : (\n <>\n <Trans\n i18nKey=\"general.view_changes\"\n components={[<Text skin=\"secondary\" />]}\n />\n <PlatformSelector\n onMultipleDashboardExtensionSelection={() =>\n onScreenChange(ScreenState.DashboardScreen())\n }\n onMultipleBackendComponentSelection={() =>\n onScreenChange(ScreenState.BackendScreen())\n }\n />\n </>\n )}\n </>\n )}\n </Box>\n </>\n );\n};\n","import { fields, variant } from 'variant';\nimport type { VariantOf } from 'variant';\nimport type { DashboardScreenSelector } from './DashboardScreen.js';\nimport type { BackendScreenSelector } from './BackendScreen.js';\n\nexport const ScreenState = variant({\n Home: {},\n SiteSelector: {},\n DashboardScreen: fields<{ selectorType?: DashboardScreenSelector }>(),\n BackendScreen: fields<{ selectorType?: BackendScreenSelector }>(),\n});\n\nexport type ScreenState = VariantOf<typeof ScreenState>;\n","import React, { useCallback, useMemo } from 'react';\nimport type { FC } from 'react';\nimport { useTranslation } from '@wix/cli-i18n';\nimport { PointerSmallIcon, Key, useInput, Text, Box } from '@wix/cli-ui-kit';\nimport { PlatformType } from '@wix/cli-app-definitions';\nimport { useExtensions } from '../extensions/useExtensions.js';\nimport {\n useOpenPage,\n useResolveBlocksEditorURL,\n useResolveDashboardExtensionDevUrl,\n useResolvePlatformDevUrl,\n} from '../extensions/utils.js';\nimport { useWixCliAppBi } from '../../bi/index.js';\nimport { usePlatform } from './usePlatform.js';\nimport { useSite } from '../../site/useSite.js';\nimport { useEditorInstallation } from '../DevCommand/EditorInstallation.js';\nimport { useBlocksCLIDevServerProvider } from '../DevCommand/BlocksCLIServerProvider.js';\nimport { useExtensionData } from '../../context/extensionData.js';\n\ninterface PlatformOptionProps {\n inputKey: string;\n label: string;\n suffix?: React.ReactNode;\n disabled?: boolean;\n}\n\nconst PlatformOption: FC<PlatformOptionProps> = ({\n label,\n inputKey,\n suffix,\n disabled,\n}) => {\n const getTextSkin = () => (disabled ? 'secondary' : 'standard');\n\n return (\n <Box>\n <Box marginRight={1}>\n <Box marginRight={1}>\n <Text skin={getTextSkin()}>\n <PointerSmallIcon /> <Key value={inputKey} /> -\n </Text>\n </Box>\n <Box gap={1}>\n <Text skin={getTextSkin()}>{label}</Text>\n </Box>\n </Box>\n <Text skin={getTextSkin()}>{suffix}</Text>\n </Box>\n );\n};\n\ninterface PlatformSelector {\n onMultipleDashboardExtensionSelection: () => void;\n onMultipleBackendComponentSelection: () => void;\n}\n\nexport const PlatformSelector: FC<PlatformSelector> = ({\n onMultipleDashboardExtensionSelection,\n}) => {\n const { t } = useTranslation();\n const bi = useWixCliAppBi();\n const { isPlatformExists } = usePlatform();\n const { openEditor } = useEditorInstallation();\n const { dashboardExtensions } = useExtensions();\n const resolvePlatformUrl = useResolvePlatformDevUrl();\n const resolveDashboardExtensionUrl = useResolveDashboardExtensionDevUrl();\n const resolveBlocksEditorUrl = useResolveBlocksEditorURL();\n const { enabled: isBlocksEnabled } = useBlocksCLIDevServerProvider();\n const { site } = useSite();\n const openPage = useOpenPage();\n const { getDashboardExtensionsRoute } = useExtensionData();\n\n const openPlatform = useCallback(\n async (platformType: PlatformType) => {\n await openPage({\n title: platformType.type,\n url: resolvePlatformUrl(platformType),\n });\n },\n [openPage, resolvePlatformUrl]\n );\n\n useInput(async (input) => {\n if (input === 'd' && isPlatformExists(PlatformType.Dashboard())) {\n bi.cliAction({\n question: t('general.view_changes'),\n questionKey: 'general.view_changes',\n action: t('general.platform.dashboard'),\n key: input,\n });\n if (dashboardExtensions.length === 1 && dashboardExtensions[0]) {\n await openPage({\n title: 'Dashboard',\n url: resolveDashboardExtensionUrl(dashboardExtensions[0]),\n });\n } else {\n onMultipleDashboardExtensionSelection();\n }\n }\n\n if (input === 'e' && isPlatformExists(PlatformType.Editor())) {\n bi.cliAction({\n question: t('general.view_changes'),\n questionKey: 'general.view_changes',\n action: t('general.platform.editor'),\n key: input,\n });\n\n await openEditor();\n }\n\n if (\n input === 's' &&\n site.viewUrl &&\n isPlatformExists(PlatformType.Site())\n ) {\n bi.cliAction({\n question: t('general.view_changes'),\n questionKey: 'general.view_changes',\n action: t('general.platform.site'),\n key: input,\n });\n await openPlatform(PlatformType.Site());\n }\n\n if (input === 'b' && isBlocksEnabled) {\n bi.cliAction({\n question: t('general.view_changes'),\n questionKey: 'general.view_changes',\n action: t('general.platform.blocks_editor'),\n key: input,\n });\n\n await openPage({\n title: t('general.platform.blocks_editor'),\n url: resolveBlocksEditorUrl(),\n });\n }\n // TODO: Uncomment once https://jira.wixpress.com/browse/FEDINF-12234 is done\n // if (input === 'b' && model.backendComponents.length > 0) {\n // bi.cliAction({\n // question: t('general.view_changes'),\n // questionKey: 'general.view_changes',\n // action: t('general.platform.backend'),\n // key: input,\n // });\n // onMultipleBackendComponentSelection();\n // }\n });\n\n const dashboardOptionSuffix = useMemo(() => {\n if (dashboardExtensions.length === 0) {\n return null;\n }\n if (dashboardExtensions.length === 1 && dashboardExtensions[0]) {\n const route = getDashboardExtensionsRoute(dashboardExtensions[0]);\n return <Text skin=\"secondary\"> - {route}</Text>;\n }\n return <Text>{String.fromCodePoint(0x25bc)}</Text>; // ▼\n }, [dashboardExtensions, getDashboardExtensionsRoute]);\n\n return (\n <Box paddingLeft={2} flexDirection=\"column\">\n {isPlatformExists(PlatformType.Site()) && (\n <PlatformOption\n inputKey=\"S\"\n label={\n site.viewUrl\n ? t('general.platform.site')\n : t('general.platform.unpublished_site')\n }\n disabled={!site.viewUrl}\n />\n )}\n {isPlatformExists(PlatformType.Editor()) && (\n <PlatformOption inputKey=\"E\" label={t('general.platform.editor')} />\n )}\n {isPlatformExists(PlatformType.Dashboard()) && (\n <PlatformOption\n inputKey=\"D\"\n label={t('general.platform.dashboard')}\n suffix={dashboardOptionSuffix}\n />\n )}\n {isBlocksEnabled && (\n <PlatformOption\n inputKey=\"B\"\n label={t('general.platform.blocks_editor')}\n />\n )}\n {/*\n // TODO: Uncomment once https://jira.wixpress.com/browse/FEDINF-12234 is done\n {(hasComponentByType('Event') || hasComponentByType('ServicePlugin')) && (\n <PlatformOption\n inputKey=\"B\"\n label={t('general.platform.backend')}\n suffix={<Text>{String.fromCodePoint(0x25bc)}</Text>} // ▼\n />\n )} */}\n </Box>\n );\n};\n","import React, {\n useCallback,\n useState,\n createContext,\n useContext,\n useEffect,\n useMemo,\n} from 'react';\nimport type { FC, ReactNode } from 'react';\nimport pWaitFor, { TimeoutError } from 'p-wait-for';\nimport { Spinner, useAsync, useAsyncCallback } from '@wix/cli-ui-kit';\nimport { useHttpClient } from '@wix/cli-http-client-react';\nimport { getTestOverrides } from '@wix/cli-test-overrides';\nimport { useDevCenterClient } from '@wix/dev-center-client';\nimport { useErrorReporter } from '@wix/cli-error-reporting';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { PlatformType } from '@wix/cli-app-definitions';\nimport { SiteAuthProvider } from '@wix/cli-auth';\nimport { useTranslation } from '@wix/cli-i18n';\nimport type { VariantOf } from 'variant';\nimport { fields, isType, match, partial, variant } from 'variant';\nimport { useProjectModel } from '../../model.js';\nimport {\n redirectWithCSMv2FTs,\n useOpenPage,\n useResolvePlatformDevUrl,\n} from '../extensions/utils.js';\nimport { useSite } from '../../site/useSite.js';\nimport { useArmTag } from '../../context/armTag.js';\nimport { usePlatform } from '../Platform/usePlatform.js';\nimport { useAppComponentsMigrationsContext } from './AppComponentsMigrations.js';\nimport { useExtensions } from '../extensions/useExtensions.js';\n\nfunction isAbortError(error: unknown) {\n return (\n error &&\n typeof error === 'object' &&\n 'name' in error &&\n error.name === 'AbortError'\n );\n}\n\ninterface EditorInstallationState {\n openEditor: () => Promise<void>;\n}\n\nconst EditorInstallationContext = createContext<EditorInstallationState | null>(\n null\n);\n\nexport function useEditorInstallation(): EditorInstallationState {\n const context = useContext(EditorInstallationContext);\n if (context == null) {\n throw new Error(\n 'useEditorInstallation() cannot be used without an <EditorInstallationProvider>'\n );\n }\n return context;\n}\n\nconst EditorInstallationStatus = variant({\n CheckInstallation: {},\n NotInstalled: fields<{\n installationUrl: string;\n checkInstalledState: CheckAppInstalledState;\n }>(),\n WaitForInstallation: fields<{ installationUrl: string }>(),\n Installed: {},\n});\n\ntype EditorInstallationStatus = VariantOf<typeof EditorInstallationStatus>;\n\ntype CheckAppInstalledState = (wait?: boolean) => Promise<boolean>;\n\nconst CheckEditorInstallation: FC<{\n onReady: (cb: CheckAppInstalledState) => void;\n}> = ({ onReady }) => {\n const { model } = useProjectModel();\n const { isAppInstalledInEditor } = useDevCenterClient();\n const { reportError } = useErrorReporter();\n const { site } = useSite();\n\n const checkAppInstalledState = useAsyncCallback(\n async ({ signal }, shouldWait = false): Promise<boolean> => {\n const { appId } = model.config;\n const { pollInterval } = getTestOverrides();\n\n try {\n if (shouldWait) {\n await pWaitFor(() => isAppInstalledInEditor(appId), {\n // Polling interval is set to 6.5 seconds to avoid rate limiting (429)\n interval: pollInterval ?? 6500,\n timeout: {\n milliseconds: 60 * 1000 * 2,\n signal,\n },\n });\n\n return true;\n }\n\n return await isAppInstalledInEditor(appId);\n } catch (error) {\n if (!isAbortError(error) && !(error instanceof TimeoutError)) {\n reportError(\n new CliError({\n cause: error,\n code: CliErrorCode.WaitForEditorInstallationStateFailure(),\n })\n );\n }\n\n return false;\n }\n }\n );\n\n useAsync(async () => {\n onReady(checkAppInstalledState.execute);\n }, [site.id]);\n\n return null;\n};\n\nexport const EditorInstallation: FC<{\n children: ReactNode;\n}> = ({ children }) => {\n const { t } = useTranslation();\n const { model } = useProjectModel();\n const httpClient = useHttpClient({ type: 'backoffice' });\n const { isPlatformExists } = usePlatform();\n const { getExtensions } = useExtensions();\n const { site } = useSite();\n const { armTag } = useArmTag();\n const openPage = useOpenPage();\n const { addedSitePresence } = useAppComponentsMigrationsContext();\n const resolvePlatformUrl = useResolvePlatformDevUrl();\n const [editorInstallationStatus, setEditorInstallationStatus] =\n useState<EditorInstallationStatus>(\n EditorInstallationStatus.CheckInstallation()\n );\n\n const openAddPanel = useMemo(\n () =>\n getExtensions('CustomElement').some(\n (element) =>\n !element.installation?.autoAddToSite &&\n (element.presets?.length ?? 0) > 0\n ),\n [getExtensions]\n );\n\n const openEditor = useCallback(async () => {\n const platformType = PlatformType.Editor();\n\n const installationUrl = match(\n editorInstallationStatus,\n partial({\n NotInstalled: ({ installationUrl }) => installationUrl,\n WaitForInstallation: ({ installationUrl }) => installationUrl,\n default: () => resolvePlatformUrl(platformType, openAddPanel),\n })\n );\n\n await openPage({ title: platformType.type, url: installationUrl });\n\n if (isType(editorInstallationStatus, 'NotInstalled')) {\n setEditorInstallationStatus(\n EditorInstallationStatus.WaitForInstallation({ installationUrl })\n );\n const isInstalled =\n await editorInstallationStatus.checkInstalledState(true);\n\n if (isInstalled) {\n setEditorInstallationStatus(EditorInstallationStatus.Installed());\n } else {\n setEditorInstallationStatus(editorInstallationStatus);\n }\n }\n }, [openPage, resolvePlatformUrl, editorInstallationStatus, openAddPanel]);\n\n const buildInstallationUrl = useCallback(async () => {\n const { data: signedAppMarketParams } = await httpClient\n .post<string>('/_serverless/app-market-json-web-token/json-web-token', {\n data: {\n data: JSON.stringify({\n appDefId: model.config.appId,\n version: 'latest',\n }),\n },\n })\n .catch((e: unknown) => {\n throw new CliError({\n code: CliErrorCode.FailedToGenerateAppMarketQueryParam(),\n cause: e,\n });\n });\n\n const url = new URL(`https://wix.com/editor/${site.id}`);\n url.searchParams.append('openPanel', 'appMarket');\n url.searchParams.append('preferAppManager', 'true');\n url.searchParams.append('appMarketParams', signedAppMarketParams);\n url.searchParams.append('apps-override', armTag);\n\n if (openAddPanel) {\n url.searchParams.append('deeplink', `addpanel!${model.config.appId}`);\n }\n\n return redirectWithCSMv2FTs(url, PlatformType.Editor()).toString();\n }, [httpClient, model.config.appId, site.id, armTag, openAddPanel]);\n\n const { status, execute } = useAsyncCallback(\n async (_, checkInstalledState: CheckAppInstalledState) => {\n if (isPlatformExists(PlatformType.Editor())) {\n const isInstalled = addedSitePresence\n ? false\n : await checkInstalledState();\n\n if (!isInstalled) {\n const installationUrl = await buildInstallationUrl();\n\n return setEditorInstallationStatus(\n EditorInstallationStatus.NotInstalled({\n installationUrl,\n checkInstalledState,\n })\n );\n }\n }\n\n return setEditorInstallationStatus(EditorInstallationStatus.Installed());\n }\n );\n\n useEffect(() => {\n setEditorInstallationStatus(EditorInstallationStatus.CheckInstallation());\n }, [site.id]);\n\n return (\n <EditorInstallationContext.Provider value={{ openEditor }}>\n {!isType(editorInstallationStatus, 'Installed') && (\n <SiteAuthProvider siteId={site.id}>\n <CheckEditorInstallation onReady={execute} />\n </SiteAuthProvider>\n )}\n {match(status, {\n NotRequested: () => null,\n Loading: () => <Spinner text={t('general.loading')} />,\n Error: () => null,\n Success: () => children,\n })}\n </EditorInstallationContext.Provider>\n );\n};\n","import React, { createContext, useContext } from 'react';\nimport type { FC, ReactNode } from 'react';\nimport { match } from 'variant';\nimport { Spinner, useAsync } from '@wix/cli-ui-kit';\nimport { useTranslation } from '@wix/cli-i18n';\nimport { useDevCenterClient } from '@wix/dev-center-client';\nimport { useARMClient } from '@wix/arm-client';\nimport { useCustomElementsMigration } from './useCustomElementsMigration.js';\nimport { useProjectModel } from '../../model.js';\nimport { useBlocksComponentsMigration } from './useBlocksComponentsMigrations.js';\n\ninterface AppMigrationsContextProps {\n addedSitePresence: boolean;\n}\n\nconst AppMigrationsContext = createContext<AppMigrationsContextProps | null>(\n null\n);\n\nexport const AppComponentsMigrations: FC<{\n children: ReactNode;\n}> = ({ children }) => {\n const { getAppByVersion } = useDevCenterClient();\n const { createComponents } = useARMClient();\n const getCustomElementMigrationComponents = useCustomElementsMigration();\n const getBlocksMigrationComponents = useBlocksComponentsMigration();\n const { t } = useTranslation();\n const { model } = useProjectModel();\n\n const appMigrationsContextData = useAsync(async () => {\n const {\n data: { components },\n } = await getAppByVersion({\n appId: model.config.appId,\n });\n\n const newBlocksComponents = getBlocksMigrationComponents(components) ?? [];\n const newCustomElementsComponents =\n getCustomElementMigrationComponents(components) ?? [];\n\n const componentsToCreate = [\n ...newCustomElementsComponents,\n ...newBlocksComponents,\n ];\n\n if (componentsToCreate.length) {\n await createComponents(\n model.config.appId,\n componentsToCreate,\n model.config.projectId\n );\n }\n\n return {\n addedSitePresence: !!newCustomElementsComponents.length,\n };\n }, [model.components]);\n\n return match(appMigrationsContextData.status, {\n Error: () => null,\n Loading: () => <Spinner text={t('general.loading')} />,\n Success: ({ result: { addedSitePresence } }) => {\n return (\n <AppMigrationsContext.Provider value={{ addedSitePresence }}>\n {children}\n </AppMigrationsContext.Provider>\n );\n },\n });\n};\n\nexport function useAppComponentsMigrationsContext(): AppMigrationsContextProps {\n const context = useContext(AppMigrationsContext);\n\n if (context == null) {\n throw new Error(\n 'useAppMigrationsContext() cannot be used without a <AppMigrationsProvider>'\n );\n }\n\n return context;\n}\n","import { useCallback } from 'react';\nimport { isType } from 'variant';\nimport { ComponentType } from '@wix/ambassador-devcenter-apps-v1-app-old/types';\nimport type { AppComponents } from '@wix/dev-center-client';\nimport type { CustomElement } from '@wix/cli-app-manifest';\nimport { useProjectModel } from '../../model.js';\nimport { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\nimport { createCustomElementConfig } from '../../app-manifest/create.js';\n\n// You can find dummy-custom-element codebase at https://github.com/wix-private/wix-cli-internal/tree/9b2a26e76375313eabb735df459944f67d7002d7/packages/wix-cli-dummy-custom-element\nconst DUMMY_CUSTOM_ELEMENT_TAG_NAME = 'wix-cli-dummy-custom-element';\nconst DUMMY_CUSTOM_ELEMENT_URL =\n 'https://www.unpkg.com/@wix/cli-dummy-custom-element';\nconst DUMMY_CUSTOM_ELEMENT_THUMBNAIL_URL =\n 'https://www.unpkg.com/@wix/cli-dummy-custom-element/dist/preset/thumbnail.png';\n\nexport function useCustomElementsMigration() {\n const { model } = useProjectModel();\n\n const getNewElements = useCallback(\n (newCustomElements: Array<DevCenterComponent<'CustomElement'>>) => {\n return newCustomElements.map<CustomElement>((customElement) => {\n const config = createCustomElementConfig(\n customElement,\n DUMMY_CUSTOM_ELEMENT_URL\n );\n\n return {\n ...config,\n compData: {\n customElementWidget: {\n ...config.compData.customElementWidget,\n widgetData: {\n ...config.compData.customElementWidget.widgetData,\n tagName: DUMMY_CUSTOM_ELEMENT_TAG_NAME,\n },\n presets: config.compData.customElementWidget.presets?.map(\n (preset) => ({\n ...preset,\n thumbnailUrl: DUMMY_CUSTOM_ELEMENT_THUMBNAIL_URL,\n })\n ),\n },\n },\n };\n });\n },\n []\n );\n\n return useCallback(\n (appComponents: AppComponents) => {\n const localCustomElements = model.components.filter((component) =>\n isType(component, DevCenterComponent.CustomElement)\n );\n\n if (!localCustomElements.length) {\n return;\n }\n\n const existingCustomElements = appComponents.filter(\n (component) =>\n component.compType === ComponentType.CUSTOM_ELEMENT_WIDGET\n );\n\n const newCustomElements = localCustomElements.filter(\n (localCustomElement) =>\n !existingCustomElements.some(\n (customElement) => customElement.compId === localCustomElement.id\n )\n );\n\n if (!newCustomElements.length) {\n return;\n }\n\n return getNewElements(newCustomElements);\n },\n [getNewElements, model.components]\n );\n}\n","import { useCallback } from 'react';\nimport { isType } from 'variant';\nimport { ComponentType } from '@wix/dev-center-client';\nimport type { AppComponents } from '@wix/dev-center-client';\nimport { useProjectModel } from '../../model.js';\nimport { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\n\nexport function useBlocksComponentsMigration() {\n const { model } = useProjectModel();\n\n const virtualStudioComponent = model.components.find(\n isType(DevCenterComponent.BlocksMainComponent)\n );\n\n return useCallback(\n (appComponents: AppComponents) => {\n const doesStudioComponentExists = appComponents.some(\n (component) => component.compType === ComponentType.STUDIO\n );\n\n if (!model.config.blocks || doesStudioComponentExists) {\n return;\n }\n\n const studioComponent = {\n compId: virtualStudioComponent?.id,\n compType: 'STUDIO',\n compData: {},\n compName: 'studio',\n };\n\n return [studioComponent];\n },\n [model, virtualStudioComponent]\n );\n}\n","import React, { useMemo, useCallback } from 'react';\nimport type { FC } from 'react';\nimport { Box, useInput } from '@wix/cli-ui-kit';\nimport { lookup, match } from 'variant';\nimport { useTranslation } from '@wix/cli-i18n';\nimport {\n useOpenPage,\n useResolveDashboardExtensionDevUrl,\n} from '../extensions/utils.js';\nimport type { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\nimport { CloseScreen } from '../CloseScreen/CloseScreen.js';\nimport { DashboardScreenSelector } from './DashboardScreen.js';\nimport type { DashboardExtension } from '../extensions/useExtensions.js';\nimport { useExtensions } from '../extensions/useExtensions.js';\nimport {\n NumericViewer,\n NumericOption,\n} from '../NumericViewer/NumericViewer.js';\nimport { useWixCliAppBi } from '../../bi/index.js';\nimport { useExtensionData } from '../../context/extensionData.js';\n\nconst MAX_EXTENSIONS = 9;\nconst MAX_DASHBOARD_PAGES = 3;\nconst MAX_PAGE_PLUGINS = 3;\nconst MAX_MENU_PLUGINS = 3;\n\ninterface Props {\n onViewMore: (dashboardScreenSelector: DashboardScreenSelector) => void;\n onSelect?: (page: DevCenterComponent<DashboardExtension>) => void;\n onClose?: () => void;\n}\n\nexport const DashboardNumericViewer: FC<Props> = ({\n onViewMore,\n onSelect,\n onClose,\n}) => {\n const { t } = useTranslation();\n const { getExtensions } = useExtensions();\n const { getDashboardExtensionsRoute } = useExtensionData();\n const bi = useWixCliAppBi();\n const resolveDashboardExtensionUrl = useResolveDashboardExtensionDevUrl();\n const openPage = useOpenPage();\n\n const dashboardExtensions = useMemo(\n () => ({\n dashboardPages: getExtensions('DashboardPage'),\n dashboardMenuPlugins: getExtensions('DashboardMenuPlugin'),\n dashboardPlugins: getExtensions('DashboardPlugin'),\n }),\n [getExtensions]\n );\n\n const dashboardPagesData = dashboardExtensions.dashboardPages.slice(\n 0,\n dashboardExtensions.dashboardPages.length > MAX_DASHBOARD_PAGES\n ? MAX_DASHBOARD_PAGES - 1\n : dashboardExtensions.dashboardPages.length\n );\n\n const dashboardPagesShowMoreIndex =\n dashboardExtensions.dashboardPages.length > dashboardPagesData.length\n ? dashboardPagesData.length + 1\n : undefined;\n\n const dashboardPagesCount = Math.max(\n dashboardPagesData.length,\n dashboardPagesShowMoreIndex ?? 0\n );\n\n const maxMenuPlugins = Math.min(\n MAX_MENU_PLUGINS,\n Math.floor((MAX_EXTENSIONS - dashboardPagesCount) / 2)\n );\n\n const dashboardMenuPluginsData =\n dashboardExtensions.dashboardMenuPlugins.slice(\n 0,\n dashboardExtensions.dashboardMenuPlugins.length > maxMenuPlugins\n ? maxMenuPlugins - 1\n : dashboardExtensions.dashboardMenuPlugins.length\n );\n\n const dashboardMenuPluginsShowMoreIndex =\n dashboardExtensions.dashboardMenuPlugins.length >\n dashboardMenuPluginsData.length\n ? dashboardMenuPluginsData.length + dashboardPagesCount + 1\n : undefined;\n\n const dashboardMenuPluginsCount = Math.max(\n dashboardMenuPluginsData.length + dashboardPagesCount,\n dashboardMenuPluginsShowMoreIndex ?? 0\n );\n\n const maxPagePlugins = Math.min(\n MAX_PAGE_PLUGINS,\n MAX_EXTENSIONS - dashboardMenuPluginsCount\n );\n\n const dashboardPluginsData = dashboardExtensions.dashboardPlugins.slice(\n 0,\n dashboardExtensions.dashboardPlugins.length > maxPagePlugins\n ? maxPagePlugins - 1\n : dashboardExtensions.dashboardPlugins.length\n );\n\n const dashboardPluginsShowMoreIndex =\n dashboardExtensions.dashboardPlugins.length > dashboardPluginsData.length\n ? dashboardPluginsData.length + dashboardMenuPluginsCount + 1\n : undefined;\n\n const visibleItems: Array<\n NumericOption<DevCenterComponent<DashboardExtension>, DashboardExtension>\n > = [\n ...dashboardPagesData.map((page) =>\n NumericOption.Item({\n title: page.title,\n description: page.route,\n value: page,\n })\n ),\n ...(dashboardPagesShowMoreIndex\n ? [NumericOption.ViewMore('DashboardPage' as DashboardExtension)]\n : []),\n ...dashboardMenuPluginsData.map((menuPlugin) =>\n NumericOption.Item({\n title: menuPlugin.title,\n description: getDashboardExtensionsRoute(menuPlugin),\n value: menuPlugin,\n })\n ),\n ...(dashboardMenuPluginsShowMoreIndex\n ? [NumericOption.ViewMore('DashboardMenuPlugin' as DashboardExtension)]\n : []),\n ...dashboardPluginsData.map((pagePlugin) =>\n NumericOption.Item({\n title: pagePlugin.title,\n description: getDashboardExtensionsRoute(pagePlugin),\n value: pagePlugin,\n })\n ),\n ...(dashboardPluginsShowMoreIndex\n ? [NumericOption.ViewMore('DashboardPlugin' as DashboardExtension)]\n : []),\n ];\n\n const getLabelKey = (\n dashboardExtension: DevCenterComponent<DashboardExtension>\n ) => {\n return match(\n dashboardExtension,\n lookup({\n DashboardPage: 'general.dashboard_pages_viewer.title',\n DashboardMenuPlugin: 'general.dashboard_menu_plugins_viewer.title',\n DashboardPlugin: 'general.dashboard_plugins_viewer.title',\n DashboardModal: '', // NOTE: No key for this type\n })\n );\n };\n\n useInput(async (input) => {\n const inputNumber = Number(input);\n if (inputNumber > 0 && inputNumber <= visibleItems.length) {\n const itemIndex = inputNumber - 1;\n const item = visibleItems.at(itemIndex);\n if (item) {\n await match(item, {\n Item: async (item) => {\n bi.cliAction({\n question: t(getLabelKey(item.value)),\n questionKey: getLabelKey(item.value),\n action: item.title,\n key: input,\n });\n await handleSelect(item.value);\n },\n ViewMore: (viewMore) => {\n bi.cliAction({\n question: t('general.numeric_viewer.show_more'),\n questionKey: 'general.numeric_viewer.show_more',\n action: 'view_more',\n key: input,\n });\n onViewMore(\n DashboardScreenSelector.Arrow({\n dashboardExtension: viewMore.payload,\n })\n );\n },\n });\n }\n }\n });\n\n const handleSelect = useCallback(\n async (dashboardExtension: DevCenterComponent<DashboardExtension>) => {\n const url = resolveDashboardExtensionUrl(dashboardExtension);\n\n await openPage({\n url,\n title: dashboardExtension.title,\n });\n onSelect?.(dashboardExtension);\n },\n [onSelect, openPage, resolveDashboardExtensionUrl]\n );\n\n const dashboardPages = visibleItems.slice(0, dashboardPagesCount);\n const dashboardMenuPlugins = visibleItems.slice(\n dashboardPagesCount,\n dashboardMenuPluginsCount\n );\n const dashboardPlugins = visibleItems.slice(dashboardMenuPluginsCount);\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n {dashboardPages.length > 0 && (\n <NumericViewer\n startIndex={0}\n titleKey=\"general.dashboard_pages_viewer.title\"\n items={dashboardPages}\n />\n )}\n {dashboardMenuPlugins.length > 0 && (\n <NumericViewer\n startIndex={dashboardPagesCount}\n titleKey=\"general.dashboard_menu_plugins_viewer.title\"\n items={dashboardMenuPlugins}\n />\n )}\n {dashboardPlugins.length > 0 && (\n <NumericViewer\n startIndex={dashboardMenuPluginsCount}\n titleKey=\"general.dashboard_plugins_viewer.title\"\n items={dashboardPlugins}\n />\n )}\n {onClose && <CloseScreen onClose={onClose} />}\n </Box>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Key, Text, useInput } from '@wix/cli-ui-kit';\nimport { Trans, useTranslation } from '@wix/cli-i18n';\nimport { useWixCliAppBi } from '../../bi/index.js';\n\ninterface Props {\n onClose: () => void;\n}\n\nexport const CloseScreen: FC<Props> = ({ onClose }) => {\n const { t } = useTranslation();\n const bi = useWixCliAppBi();\n\n useInput((_, key) => {\n if (key.escape) {\n bi.cliAction({\n question: t('general.close_screen'),\n questionKey: 'general.close_screen',\n action: 'close',\n key: 'esc',\n });\n onClose();\n }\n });\n\n return (\n <Text skin=\"secondary\">\n <Trans\n i18nKey=\"general.close_screen\"\n components={[<Key value=\"esc\" skin=\"secondary\" />]}\n />\n </Text>\n );\n};\n","import React, { useState } from 'react';\nimport type { FC } from 'react';\nimport { fields, match, variant } from 'variant';\nimport type { VariantOf } from 'variant';\nimport { DashboardArrowViewer } from './DashboardArrowViewer.js';\nimport { DashboardNumericViewer } from './DashboardNumericViewer.js';\nimport type { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\nimport type { DashboardExtension } from '../extensions/useExtensions.js';\n\nexport const DashboardScreenSelector = variant({\n Arrow: fields<{\n dashboardExtension: DashboardExtension;\n }>(),\n Numeric: {},\n});\n\nexport type DashboardScreenSelector = VariantOf<typeof DashboardScreenSelector>;\n\ninterface Props {\n onClose: () => void;\n onSelect?: (page: DevCenterComponent<DashboardExtension>) => void;\n initialSelectorType?: DashboardScreenSelector;\n}\n\nexport const DashboardScreen: FC<Props> = ({\n onClose,\n onSelect,\n initialSelectorType = DashboardScreenSelector.Numeric(),\n}) => {\n const [selectorType, setSelectorType] =\n useState<DashboardScreenSelector>(initialSelectorType);\n\n return (\n <>\n {match(selectorType, {\n Arrow: ({ dashboardExtension }) => (\n <DashboardArrowViewer\n dashboardExtension={dashboardExtension}\n onSelect={onSelect}\n onClose={onClose}\n />\n ),\n Numeric: () => (\n <DashboardNumericViewer\n onViewMore={setSelectorType}\n onSelect={onSelect}\n onClose={onClose}\n />\n ),\n })}\n </>\n );\n};\n","import React, { useCallback } from 'react';\nimport type { FC } from 'react';\nimport { Box, SelectInput } from '@wix/cli-ui-kit';\nimport { useTranslation } from '@wix/cli-i18n';\nimport { match, lookup } from 'variant';\nimport { CloseScreen } from '../CloseScreen/CloseScreen.js';\nimport type { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\nimport {\n useOpenPage,\n useResolveDashboardExtensionDevUrl,\n} from '../extensions/utils.js';\nimport { useExtensions } from '../extensions/useExtensions.js';\nimport type { DashboardExtension } from '../extensions/useExtensions.js';\nimport { useWixCliAppBi } from '../../bi/index.js';\nimport { useExtensionData } from '../../context/extensionData.js';\n\ninterface Props {\n dashboardExtension: DashboardExtension;\n onSelect?: (page: DevCenterComponent<DashboardExtension>) => void;\n onClose: () => void;\n}\n\nexport const DashboardArrowViewer: FC<Props> = ({\n dashboardExtension,\n onClose,\n onSelect,\n}) => {\n const { t } = useTranslation();\n const { getExtensions } = useExtensions();\n const bi = useWixCliAppBi();\n const resolveDashboardExtensionUrl = useResolveDashboardExtensionDevUrl();\n const { getDashboardExtensionsRoute } = useExtensionData();\n const openPage = useOpenPage();\n\n const getLabelKey = useCallback(\n () =>\n match(\n dashboardExtension,\n lookup({\n DashboardPlugin:\n 'dev_command.dashboard_page_plugin_screen.select_label',\n DashboardMenuPlugin:\n 'dev_command.dashboard_menu_plugin_screen.select_label',\n DashboardPage: 'dev_command.dashboard_pages_screen.select_label',\n DashboardModal: 'dev_command.dashboard_modal_screen.select_label',\n })\n ),\n [dashboardExtension]\n );\n\n const handleSubmit = useCallback(\n async (dashboardExtension: DevCenterComponent<DashboardExtension>) => {\n const url = resolveDashboardExtensionUrl(dashboardExtension);\n bi.cliAction({\n question: t(getLabelKey()),\n questionKey: getLabelKey(),\n action: dashboardExtension.title,\n key: 'enter',\n });\n await openPage({ url, title: dashboardExtension.title });\n onSelect?.(dashboardExtension);\n },\n [resolveDashboardExtensionUrl, bi, t, getLabelKey, openPage, onSelect]\n );\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n <Box flexDirection=\"column\">\n <SelectInput<DevCenterComponent<DashboardExtension>>\n label={t(getLabelKey())}\n options={getExtensions(dashboardExtension).map(\n (dashboardExtensionInstance) => ({\n key: dashboardExtensionInstance.id,\n title: dashboardExtensionInstance.title,\n description: getDashboardExtensionsRoute(\n dashboardExtensionInstance\n ),\n value: dashboardExtensionInstance,\n })\n )}\n onSubmit={({ value: dashboardExtensionInstance }) =>\n handleSubmit(dashboardExtensionInstance)\n }\n />\n </Box>\n <CloseScreen onClose={onClose} />\n </Box>\n );\n};\n","import React from 'react';\nimport type { FC, ReactNode } from 'react';\nimport { Box, Text, Key, PointerSmallIcon } from '@wix/cli-ui-kit';\nimport { Trans } from '@wix/cli-i18n';\nimport { variant, onTerms, fields, match, payload } from 'variant';\nimport type { TypeNames, GVariantOf } from 'variant';\n\nconst ListItem: FC<{\n itemNumber: number;\n children: ReactNode;\n}> = ({ itemNumber, children }) => {\n const keyValue = `${itemNumber}`;\n return (\n <Box flexDirection=\"row\" gap={1}>\n <Text>\n <PointerSmallIcon /> <Key value={keyValue} /> -\n </Text>\n {children}\n </Box>\n );\n};\n\nexport const NumericOption = variant(\n onTerms(({ I: _I, V }) => ({\n Item: fields<{ title: string; description?: string; value: typeof _I }>(),\n ViewMore: payload(V),\n }))\n);\n\nexport type NumericOption<\n I,\n V,\n TType extends TypeNames<typeof NumericOption> = undefined,\n> = GVariantOf<typeof NumericOption, TType, { I: I; V: V }>;\n\ninterface Props<I, V> {\n startIndex: number;\n titleKey: string;\n items: Array<NumericOption<I, V>>;\n}\n\nexport function NumericViewer<I, V>({\n startIndex,\n titleKey,\n items,\n}: Props<I, V>) {\n return (\n <Box flexDirection=\"column\">\n <Trans i18nKey={titleKey} />\n <Box paddingLeft={2} flexDirection=\"column\">\n {items.map((item, index) => (\n <ListItem\n key={startIndex + index + 1}\n itemNumber={startIndex + index + 1}\n >\n {match(item, {\n Item: ({ title, description }) => (\n <Box flexDirection=\"row\" gap={1}>\n <Text>{title}</Text>\n {description && <Text skin=\"secondary\">({description})</Text>}\n </Box>\n ),\n ViewMore: () => (\n <Trans i18nKey=\"general.numeric_viewer.show_more\" />\n ),\n })}\n </ListItem>\n ))}\n </Box>\n </Box>\n );\n}\n","import React, { useState, useCallback } from 'react';\nimport type { FC } from 'react';\nimport { Alert, Box, PointerIcon } from '@wix/cli-ui-kit';\nimport { ErrorViewer, useErrorReporter } from '@wix/cli-error-reporting';\nimport type { Site } from '@wix/site-list-client';\nimport { Trans, useTranslation } from '@wix/cli-i18n';\nimport { SiteSelector } from '@wix/cli-site-selector';\nimport { useBiLogger } from '@wix/cli-telemetry-react';\nimport { useProjectModel } from '../../model.js';\nimport { useSite } from '../../site/index.js';\nimport { CloseScreen } from '../CloseScreen/index.js';\nimport { ScreenState } from './screen-state.js';\n\ninterface Props {\n onScreenChange: (screen: ScreenState) => void;\n}\n\nexport const SiteSelectorScreen: FC<Props> = ({ onScreenChange }) => {\n const { t } = useTranslation();\n const { model } = useProjectModel();\n const biLogger = useBiLogger();\n const { site, setSite } = useSite();\n const { reportError } = useErrorReporter();\n const [error, setError] = useState<unknown>(null);\n\n const handleError = useCallback(\n (error: unknown) => {\n reportError(error);\n setError(error);\n },\n [reportError, setError]\n );\n\n const handleSubmit = useCallback(\n async (site: Site) => {\n try {\n await setSite(site);\n onScreenChange(ScreenState.Home());\n } catch (e) {\n handleError(e);\n }\n },\n [setSite, onScreenChange, handleError]\n );\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n <Box gap={1}>\n <PointerIcon />\n <Trans\n i18nKey=\"general.dev_site.current\"\n values={{ name: site.displayName }}\n />\n </Box>\n <Box flexDirection=\"column\">\n <SiteSelector\n appId={model.config.appId}\n biLogger={biLogger}\n onSubmit={handleSubmit}\n onError={handleError}\n />\n {error ? (\n <ErrorViewer\n error={error}\n systemErrorOverride={\n <Alert type=\"error\">{t('dev_command.site_selector.error')}</Alert>\n }\n />\n ) : null}\n </Box>\n <CloseScreen onClose={() => onScreenChange(ScreenState.Home())} />\n </Box>\n );\n};\n","export { CloseScreen } from './CloseScreen.js';\n","import React, { useState } from 'react';\nimport type { FC } from 'react';\nimport { fields, match, variant } from 'variant';\nimport type { VariantOf } from 'variant';\nimport { BackendNumericViewer } from './BackendNumericViewer.js';\nimport { BackendArrowViewer } from './BackendArrowViewer.js';\nimport type {\n BackendViewerComponent,\n BackendViewerComponentNames,\n} from './backend-viewer.js';\n\nexport const BackendScreenSelector = variant({\n Arrow: fields<{\n backendComponentName: BackendViewerComponentNames;\n }>(),\n Numeric: {},\n});\n\nexport type BackendScreenSelector = VariantOf<typeof BackendScreenSelector>;\n\ninterface Props {\n onClose: () => void;\n onSelect?: (backendComponent: BackendViewerComponent) => void;\n initialSelectorType?: BackendScreenSelector;\n}\n\nexport const BackendScreen: FC<Props> = ({\n onClose,\n onSelect,\n initialSelectorType = BackendScreenSelector.Numeric(),\n}) => {\n const [selectorType, setSelectorType] =\n useState<BackendScreenSelector>(initialSelectorType);\n\n return (\n <>\n {match(selectorType, {\n Arrow: ({ backendComponentName }) => (\n <BackendArrowViewer\n backendComponentName={backendComponentName}\n onSelect={onSelect}\n onClose={onClose}\n />\n ),\n Numeric: () => (\n <BackendNumericViewer\n onViewMore={setSelectorType}\n onClose={onClose}\n />\n ),\n })}\n </>\n );\n};\n","import React, { useCallback } from 'react';\nimport type { FC } from 'react';\nimport { Box, useInput } from '@wix/cli-ui-kit';\nimport { match, lookup } from 'variant';\nimport { useTranslation } from '@wix/cli-i18n';\nimport { CloseScreen } from '../CloseScreen/CloseScreen.js';\nimport { useBackendComponents } from '../../backend/useBackendComponents.js';\nimport {\n NumericOption,\n NumericViewer,\n} from '../NumericViewer/NumericViewer.js';\nimport { BackendScreenSelector } from './BackendScreen.js';\nimport { useWixCliAppBi } from '../../bi/index.js';\nimport type { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\nimport type {\n BackendViewerComponent,\n BackendViewerComponentNames,\n} from './backend-viewer.js';\n\nconst MAX_BACKEND_COMPONENT = 9;\nconst MAX_SERVICE_PLUGINS = 4;\nconst MAX_EVENTS = 5;\n\ninterface Props {\n onViewMore: (backendScreen: BackendScreenSelector) => void;\n onSelect?: (backendComponent: BackendViewerComponent) => void;\n onClose?: () => void;\n}\n\nexport const BackendNumericViewer: FC<Props> = ({\n onViewMore,\n onSelect,\n onClose,\n}) => {\n const { t } = useTranslation();\n const bi = useWixCliAppBi();\n const { backendComponentsByType } = useBackendComponents();\n\n const servicePluginsData = backendComponentsByType.ServicePlugin.slice(\n 0,\n backendComponentsByType.ServicePlugin.length > MAX_SERVICE_PLUGINS\n ? MAX_SERVICE_PLUGINS - 1\n : backendComponentsByType.ServicePlugin.length\n );\n\n const servicePluginsShowMoreIndex =\n backendComponentsByType.ServicePlugin.length > servicePluginsData.length\n ? servicePluginsData.length + 1\n : undefined;\n\n const servicePluginsCount = Math.max(\n servicePluginsData.length,\n servicePluginsShowMoreIndex ?? 0\n );\n\n const maxBackendEvents = Math.min(\n MAX_EVENTS,\n MAX_BACKEND_COMPONENT - servicePluginsCount\n );\n\n const backendEventsData = backendComponentsByType.Event.slice(\n 0,\n backendComponentsByType.Event.length > maxBackendEvents\n ? maxBackendEvents - 1\n : backendComponentsByType.Event.length\n );\n\n const backendEventsShowMoreIndex =\n backendComponentsByType.Event.length > backendEventsData.length\n ? backendEventsData.length + servicePluginsCount + 1\n : undefined;\n\n const visibleItems: Array<\n NumericOption<BackendViewerComponent, BackendViewerComponentNames>\n > = [\n ...servicePluginsData.map(\n (servicePlugin: DevCenterComponent<'ServicePlugin'>) =>\n NumericOption.Item({\n title: servicePlugin.servicePlugin.name,\n value: servicePlugin,\n })\n ),\n ...(servicePluginsShowMoreIndex\n ? [NumericOption.ViewMore('ServicePlugin' as BackendViewerComponentNames)]\n : []),\n ...backendEventsData.map((event: DevCenterComponent<'Event'>) =>\n NumericOption.Item({\n title: event.title,\n value: event,\n })\n ),\n ...(backendEventsShowMoreIndex\n ? [NumericOption.ViewMore('Event' as BackendViewerComponentNames)]\n : []),\n ];\n\n const getLabelKey = (backendComponent: BackendViewerComponent) => {\n return match(\n backendComponent,\n lookup({\n Api: 'general.backend_api_viewer.title',\n Event: 'general.backend_events_viewer.title',\n ServicePlugin: 'general.backend_plugin_viewer.title',\n })\n );\n };\n\n useInput((input) => {\n const inputNumber = Number(input);\n if (inputNumber > 0 && inputNumber <= visibleItems.length) {\n const item = visibleItems.at(inputNumber - 1);\n if (item) {\n match(item, {\n Item: (item) => {\n bi.cliAction({\n question: t(getLabelKey(item.value)),\n questionKey: getLabelKey(item.value),\n action: item.title,\n key: input,\n });\n handleSelect(item.value);\n },\n ViewMore: (viewMore) => {\n bi.cliAction({\n question: t('general.numeric_viewer.show_more'),\n questionKey: 'general.numeric_viewer.show_more',\n action: 'view_more',\n key: input,\n });\n onViewMore(\n BackendScreenSelector.Arrow({\n backendComponentName: viewMore.payload,\n })\n );\n },\n });\n }\n }\n });\n\n const handleSelect = useCallback(\n (backendComponent: BackendViewerComponent) => {\n onSelect?.(backendComponent);\n },\n [onSelect]\n );\n\n const backendPlugins = visibleItems.slice(0, servicePluginsCount);\n const backendEvents = visibleItems.slice(servicePluginsCount);\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n {backendPlugins.length > 0 && (\n <NumericViewer\n startIndex={0}\n titleKey=\"general.backend_plugin_viewer.title\"\n items={backendPlugins}\n />\n )}\n {backendEvents.length > 0 && (\n <NumericViewer\n startIndex={servicePluginsCount}\n titleKey=\"general.backend_events_viewer.title\"\n items={backendEvents}\n />\n )}\n {onClose && <CloseScreen onClose={onClose} />}\n </Box>\n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport type { FC } from 'react';\nimport { Box, SelectInput } from '@wix/cli-ui-kit';\nimport { useTranslation } from '@wix/cli-i18n';\nimport { isType, lookup, match } from 'variant';\nimport { CloseScreen } from '../CloseScreen/CloseScreen.js';\nimport { useBackendComponents } from '../../backend/useBackendComponents.js';\nimport { useWixCliAppBi } from '../../bi/index.js';\nimport type {\n BackendViewerComponent,\n BackendViewerComponentNames,\n} from './backend-viewer.js';\n\ninterface Props {\n backendComponentName: BackendViewerComponentNames;\n onSelect?: (backendComponent: BackendViewerComponent) => void;\n onClose: () => void;\n}\n\nexport const BackendArrowViewer: FC<Props> = ({\n backendComponentName,\n onClose,\n onSelect,\n}) => {\n const { t } = useTranslation();\n const bi = useWixCliAppBi();\n const { backendComponentsByType } = useBackendComponents();\n\n const getLabelKey = useCallback(\n () =>\n match(\n backendComponentName,\n lookup({\n Api: 'dev_command.backend_apis_screen.select_label',\n Event: 'dev_command.backend_events_screen.select_label',\n ServicePlugin: 'dev_command.backend_plugins_screen.select_label',\n })\n ),\n [backendComponentName]\n );\n\n const getBackendComponentName = (backendComponent: BackendViewerComponent) =>\n isType(backendComponent, 'ServicePlugin')\n ? backendComponent.servicePlugin.name\n : backendComponent.title;\n\n const handleSubmit = useCallback(\n (backendComponent: BackendViewerComponent) => {\n bi.cliAction({\n question: t(getLabelKey()),\n questionKey: getLabelKey(),\n action: getBackendComponentName(backendComponent),\n key: 'enter',\n });\n onSelect?.(backendComponent);\n },\n [bi, getLabelKey, onSelect, t]\n );\n\n const options = useMemo(() => {\n return backendComponentsByType[backendComponentName].map(\n (backendComponent, index) => ({\n key: index.toString(),\n title: getBackendComponentName(backendComponent),\n value: backendComponent,\n })\n );\n }, [backendComponentsByType, backendComponentName]);\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n <Box flexDirection=\"column\">\n <SelectInput<BackendViewerComponent>\n label={t(getLabelKey())}\n options={options}\n onSubmit={({ value: backendComponent }) =>\n handleSubmit(backendComponent)\n }\n />\n </Box>\n <CloseScreen onClose={onClose} />\n </Box>\n );\n};\n","import React, { useState } from 'react';\nimport type { FC, ReactNode } from 'react';\nimport { ConfirmInput, Text, useAsync, useExit } from '@wix/cli-ui-kit';\nimport { Trans, useTranslation } from '@wix/cli-i18n';\nimport { readUserConfig, updateUserConfig } from '@wix/cli-user-config';\nimport { match } from 'variant';\nimport { useBackendComponents } from '../../backend/useBackendComponents.js';\n\ninterface Props {\n children: ReactNode;\n}\n\nexport const TunnelingConsent: FC<Props> = ({ children }) => {\n const exit = useExit();\n const { t } = useTranslation();\n const { backendComponents } = useBackendComponents();\n const [approved, setApproved] = useState<boolean>();\n\n const { status } = useAsync(async () => {\n const config = await readUserConfig();\n\n if (config.tunneling) {\n setApproved(true);\n }\n\n return config;\n }, []);\n\n if (backendComponents.length === 0 || approved) {\n return children;\n }\n\n return (\n <>\n {match(status, {\n Success: () => (\n <ConfirmInput\n label={t('dev_command.tunneling.confirm')}\n initialValue={true}\n onSubmit={async (approved) => {\n setApproved(approved);\n await updateUserConfig({ tunneling: approved });\n if (!approved) {\n exit();\n }\n }}\n />\n ),\n Error: () => null,\n Loading: () => null,\n })}\n {approved === false && (\n <Text skin=\"error\">\n <Trans i18nKey=\"dev_command.tunneling.abort_dev\" />\n </Text>\n )}\n </>\n );\n};\n","import React from 'react';\nimport type { FC, ReactNode } from 'react';\nimport { useAsync, Spinner, Alert } from '@wix/cli-ui-kit';\nimport { match } from 'variant';\nimport { useDevCenterClient } from '@wix/dev-center-client';\nimport { useMetasiteManagerClient } from '@wix/metasite-manager-client';\nimport { useTranslation } from '@wix/cli-i18n';\nimport { useProjectModel } from '../../model.js';\nimport { useSite } from '../../site/useSite.js';\nimport { useDevEnvironment } from './DevEnvironment.js';\n\nexport const RequiredAppsWarning: FC<{\n children: ReactNode;\n}> = ({ children }) => {\n const { logger } = useDevEnvironment();\n const { site } = useSite();\n const { model } = useProjectModel();\n const { getRequiredApps } = useDevCenterClient();\n const { getSiteInstalledApps } = useMetasiteManagerClient();\n const { t } = useTranslation();\n\n const { status: requiredAppsStatus } = useAsync(async () => {\n const requiredApps = await getRequiredApps(model.config.appId);\n\n if (requiredApps.length === 0) {\n return;\n }\n\n const siteInstalledApps = await getSiteInstalledApps(site.id);\n\n const missingRequiredApps = requiredApps.filter(\n (requiredApp) => !siteInstalledApps.includes(requiredApp.id)\n );\n\n if (missingRequiredApps.length === 0) {\n return;\n }\n\n logger.warn(\n <Alert type=\"warning\">\n {t('dev_command.required_apps.warning', {\n requiredAppNames: missingRequiredApps\n .map((app) => app.name)\n .join(', '),\n })}\n </Alert>\n );\n }, []);\n\n return match(requiredAppsStatus, {\n Loading: () => <Spinner text={t('dev_command.required_apps.loading')} />,\n Error: () => null,\n Success: () => children,\n });\n};\n","import React from 'react';\nimport { Box } from '@wix/cli-ui-kit';\nimport type { FC, ReactNode } from 'react';\n\nexport const DevScreenBorder: FC<{ children: ReactNode }> = ({ children }) => {\n return (\n <Box\n flexDirection=\"column\"\n borderTop\n borderLeft={false}\n borderBottom={false}\n borderRight={false}\n borderStyle=\"round\"\n borderColor=\"blueBright\"\n >\n {children}\n </Box>\n );\n};\n"],"mappings":"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","names":["import_react","import_react","import_variant","import_react","import_variant","import_react","import_react","import_variant","import_react","import_variant","import_variant","import_react","import_variant","React","installationUrl","React","React","import_react","import_variant","import_react","React","import_react","import_variant","import_react","import_variant","dashboardExtension","React","React","import_react","import_variant","React","item","React","React","import_react","error","site","React","import_react","import_variant","import_react","import_variant","item","React","import_react","import_variant","React","React","React","import_react","import_variant","React","approved","import_react","import_variant","React","import_react","React","React"]}
@@ -1,19 +0,0 @@
1
- import { createRequire as _createRequire } from 'node:module';
2
- const require = _createRequire(import.meta.url);
3
- import {
4
- PreviewCommand
5
- } from "./chunk-SSVVBMIK.js";
6
- import "./chunk-P4YNBBGD.js";
7
- import "./chunk-NSC3X7TO.js";
8
- import "./chunk-YXBHRN4E.js";
9
- import "./chunk-TJYCXF3Y.js";
10
- import "./chunk-P7IRRCF7.js";
11
- import "./chunk-HUWTDLNU.js";
12
- import "./chunk-ISHV7FPE.js";
13
- import "./chunk-Z2U5TFST.js";
14
- import "./chunk-MS4HNHKA.js";
15
- import "./chunk-4EFJZ3GQ.js";
16
- export {
17
- PreviewCommand
18
- };
19
- //# sourceMappingURL=PreviewCommand-5FJEIIPR.js.map
@@ -1,23 +0,0 @@
1
- import { createRequire as _createRequire } from 'node:module';
2
- const require = _createRequire(import.meta.url);
3
- import {
4
- ReleaseCommand,
5
- ReleaseVersionType
6
- } from "./chunk-XDB4OLY2.js";
7
- import "./chunk-SSVVBMIK.js";
8
- import "./chunk-P4YNBBGD.js";
9
- import "./chunk-NSC3X7TO.js";
10
- import "./chunk-GZMYMILB.js";
11
- import "./chunk-YXBHRN4E.js";
12
- import "./chunk-TJYCXF3Y.js";
13
- import "./chunk-P7IRRCF7.js";
14
- import "./chunk-HUWTDLNU.js";
15
- import "./chunk-ISHV7FPE.js";
16
- import "./chunk-Z2U5TFST.js";
17
- import "./chunk-MS4HNHKA.js";
18
- import "./chunk-4EFJZ3GQ.js";
19
- export {
20
- ReleaseCommand,
21
- ReleaseVersionType
22
- };
23
- //# sourceMappingURL=ReleaseCommand-MFBXBLIH.js.map