@wix/cli 1.1.148 → 1.1.150

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/agents/instructions.md +84 -0
  2. package/build/{DevCommand-QSEX33CH.js → DevCommand-BEEUZFP6.js} +50 -38
  3. package/build/DevCommand-BEEUZFP6.js.map +1 -0
  4. package/build/{EnvPullCommand-6FOYVETB.js → EnvPullCommand-22WYBFTO.js} +3 -3
  5. package/build/{EnvRemoveCommand-BDX7BG4C.js → EnvRemoveCommand-H6VFMJLM.js} +2 -2
  6. package/build/{EnvSetCommand-YV7KQDTG.js → EnvSetCommand-TDY5NJDM.js} +2 -2
  7. package/build/{GenerateCommand-SARUYR3M.js → GenerateCommand-WJB2UILL.js} +3 -3
  8. package/build/{LoginCommand-ULOYAGDX.js → LoginCommand-JV2P5FVD.js} +2 -2
  9. package/build/{PreviewCommand-D6P52RJP.js → PreviewCommand-4KGWWAOZ.js} +5 -5
  10. package/build/{PromoteCommand-CJUQIMD7.js → PromoteCommand-GG36WPXX.js} +5 -5
  11. package/build/{ReleaseCommand-FAHUZJYF.js → ReleaseCommand-5ADFVNOT.js} +12 -15
  12. package/build/ReleaseCommand-5ADFVNOT.js.map +1 -0
  13. package/build/{chunk-CGXS2RLO.js → chunk-6B3FQNMV.js} +2 -2
  14. package/build/{chunk-VGSKNKR5.js → chunk-72CAXPDG.js} +128 -51
  15. package/build/chunk-72CAXPDG.js.map +1 -0
  16. package/build/{chunk-WUQ34TQE.js → chunk-EVV3LZAI.js} +2 -2
  17. package/build/{chunk-2OAP2LLX.js → chunk-VT3OGC5F.js} +2 -2
  18. package/build/{chunk-DLDELYVB.js → chunk-W34JWURA.js} +1 -2
  19. package/build/{chunk-4GSO6VQT.js → chunk-WBI2P4YN.js} +2 -2
  20. package/build/{chunk-DUJVHVKZ.js → chunk-X37NAAXG.js} +4 -3
  21. package/build/chunk-X37NAAXG.js.map +1 -0
  22. package/build/{chunk-WOLJ45IG.js → chunk-YYY4GDEZ.js} +137 -359
  23. package/build/chunk-YYY4GDEZ.js.map +1 -0
  24. package/build/{env-pull-MXPEH223.js → env-pull-ENQPMILC.js} +4 -4
  25. package/build/index.js +6 -6
  26. package/build/{preview-GCYV2BWG.js → preview-M4QT6YMK.js} +6 -6
  27. package/build/{render-command-QYBNOZ2B.js → render-command-H3NMLDRT.js} +2 -2
  28. package/build/{render-command-CMTVNSQY.js → render-command-TH5F34LX.js} +3 -3
  29. package/build/{src-WCTCENDD.js → src-FZRIREVI.js} +20 -20
  30. package/build/src-FZRIREVI.js.map +1 -0
  31. package/package.json +4 -3
  32. package/build/DevCommand-QSEX33CH.js.map +0 -1
  33. package/build/ReleaseCommand-FAHUZJYF.js.map +0 -1
  34. package/build/chunk-DUJVHVKZ.js.map +0 -1
  35. package/build/chunk-VGSKNKR5.js.map +0 -1
  36. package/build/chunk-WOLJ45IG.js.map +0 -1
  37. package/build/src-WCTCENDD.js.map +0 -1
  38. /package/build/{EnvPullCommand-6FOYVETB.js.map → EnvPullCommand-22WYBFTO.js.map} +0 -0
  39. /package/build/{EnvRemoveCommand-BDX7BG4C.js.map → EnvRemoveCommand-H6VFMJLM.js.map} +0 -0
  40. /package/build/{EnvSetCommand-YV7KQDTG.js.map → EnvSetCommand-TDY5NJDM.js.map} +0 -0
  41. /package/build/{GenerateCommand-SARUYR3M.js.map → GenerateCommand-WJB2UILL.js.map} +0 -0
  42. /package/build/{LoginCommand-ULOYAGDX.js.map → LoginCommand-JV2P5FVD.js.map} +0 -0
  43. /package/build/{PreviewCommand-D6P52RJP.js.map → PreviewCommand-4KGWWAOZ.js.map} +0 -0
  44. /package/build/{PromoteCommand-CJUQIMD7.js.map → PromoteCommand-GG36WPXX.js.map} +0 -0
  45. /package/build/{chunk-CGXS2RLO.js.map → chunk-6B3FQNMV.js.map} +0 -0
  46. /package/build/{chunk-WUQ34TQE.js.map → chunk-EVV3LZAI.js.map} +0 -0
  47. /package/build/{chunk-2OAP2LLX.js.map → chunk-VT3OGC5F.js.map} +0 -0
  48. /package/build/{chunk-DLDELYVB.js.map → chunk-W34JWURA.js.map} +0 -0
  49. /package/build/{chunk-4GSO6VQT.js.map → chunk-WBI2P4YN.js.map} +0 -0
  50. /package/build/{env-pull-MXPEH223.js.map → env-pull-ENQPMILC.js.map} +0 -0
  51. /package/build/{preview-GCYV2BWG.js.map → preview-M4QT6YMK.js.map} +0 -0
  52. /package/build/{render-command-QYBNOZ2B.js.map → render-command-H3NMLDRT.js.map} +0 -0
  53. /package/build/{render-command-CMTVNSQY.js.map → render-command-TH5F34LX.js.map} +0 -0
@@ -3,13 +3,13 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  executeCommand,
5
5
  log
6
- } from "./chunk-4GSO6VQT.js";
6
+ } from "./chunk-WBI2P4YN.js";
7
7
  import {
8
8
  EnvPullCommand
9
- } from "./chunk-CGXS2RLO.js";
9
+ } from "./chunk-6B3FQNMV.js";
10
10
  import "./chunk-4HUDTFI7.js";
11
11
  import "./chunk-PLRVWQKC.js";
12
- import "./chunk-DLDELYVB.js";
12
+ import "./chunk-W34JWURA.js";
13
13
  import "./chunk-EYV3FS5W.js";
14
14
  import "./chunk-FRGULVBF.js";
15
15
  import "./chunk-4QK4HF3C.js";
@@ -45,4 +45,4 @@ async function nonInteractiveEnvPull(services, model) {
45
45
  export {
46
46
  nonInteractiveEnvPull
47
47
  };
48
- //# sourceMappingURL=env-pull-MXPEH223.js.map
48
+ //# sourceMappingURL=env-pull-ENQPMILC.js.map
package/build/index.js CHANGED
@@ -18,7 +18,7 @@ import {
18
18
  import {
19
19
  createBiLogger,
20
20
  package_default
21
- } from "./chunk-DUJVHVKZ.js";
21
+ } from "./chunk-X37NAAXG.js";
22
22
  import "./chunk-4QK4HF3C.js";
23
23
  import {
24
24
  OutdatedVersionMessage,
@@ -4217,8 +4217,8 @@ var login = (services) => {
4217
4217
  ).action(async (options, command) => {
4218
4218
  const { apiKey } = options;
4219
4219
  const { getUserInfo: getUserInfo2 } = await import("./src-WPBTUR7E.js");
4220
- const { LoginCommand } = await import("./LoginCommand-ULOYAGDX.js");
4221
- const { renderCommand } = await import("./render-command-QYBNOZ2B.js");
4220
+ const { LoginCommand } = await import("./LoginCommand-JV2P5FVD.js");
4221
+ const { renderCommand } = await import("./render-command-H3NMLDRT.js");
4222
4222
  const userInfo = await getUserInfo2();
4223
4223
  await renderCommand(
4224
4224
  command,
@@ -4235,7 +4235,7 @@ var logout = (services) => {
4235
4235
  return createCommand("logout").description("Log out of your Wix account").action(async (_, command) => {
4236
4236
  const { getUserInfo: getUserInfo2 } = await import("./src-WPBTUR7E.js");
4237
4237
  const { LogoutCommand } = await import("./LogoutCommand-GSW34JPS.js");
4238
- const { renderCommand } = await import("./render-command-QYBNOZ2B.js");
4238
+ const { renderCommand } = await import("./render-command-H3NMLDRT.js");
4239
4239
  const userInfo = await getUserInfo2();
4240
4240
  await renderCommand(
4241
4241
  command,
@@ -4275,7 +4275,7 @@ var whoami = (services) => {
4275
4275
  return createCommand("whoami").description("Display the email of the logged in Wix user").action(async (_, command) => {
4276
4276
  const { getUserInfo: getUserInfo2 } = await import("./src-WPBTUR7E.js");
4277
4277
  const { WhoamiCommand } = await import("./WhoamiCommand-5IXJ5COV.js");
4278
- const { renderCommand } = await import("./render-command-QYBNOZ2B.js");
4278
+ const { renderCommand } = await import("./render-command-H3NMLDRT.js");
4279
4279
  const userInfo = await getUserInfo2();
4280
4280
  await renderCommand(
4281
4281
  command,
@@ -4416,7 +4416,7 @@ async function importCliAstro(config, projectFolder2) {
4416
4416
  if (Object.hasOwn(config, "appId")) {
4417
4417
  const astroExists = await hasAstroConfigurationFile(projectFolder2);
4418
4418
  if (astroExists) {
4419
- return import("./src-WCTCENDD.js");
4419
+ return import("./src-FZRIREVI.js");
4420
4420
  }
4421
4421
  }
4422
4422
  return null;
@@ -3,12 +3,12 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  executeCommand,
5
5
  log
6
- } from "./chunk-4GSO6VQT.js";
6
+ } from "./chunk-WBI2P4YN.js";
7
7
  import {
8
8
  PreviewCommand
9
- } from "./chunk-VGSKNKR5.js";
10
- import "./chunk-WOLJ45IG.js";
11
- import "./chunk-WUQ34TQE.js";
9
+ } from "./chunk-72CAXPDG.js";
10
+ import "./chunk-YYY4GDEZ.js";
11
+ import "./chunk-EVV3LZAI.js";
12
12
  import "./chunk-SC2W3WT3.js";
13
13
  import "./chunk-C6E2XICB.js";
14
14
  import "./chunk-2R5BII2J.js";
@@ -16,7 +16,7 @@ import "./chunk-W54PG6O5.js";
16
16
  import "./chunk-YLWTNITT.js";
17
17
  import "./chunk-4HUDTFI7.js";
18
18
  import "./chunk-PLRVWQKC.js";
19
- import "./chunk-DLDELYVB.js";
19
+ import "./chunk-W34JWURA.js";
20
20
  import "./chunk-EYV3FS5W.js";
21
21
  import "./chunk-PIXNEJ52.js";
22
22
  import "./chunk-HWVLWVTF.js";
@@ -63,4 +63,4 @@ async function nonInteractivePreview(services, model, options) {
63
63
  export {
64
64
  nonInteractivePreview
65
65
  };
66
- //# sourceMappingURL=preview-GCYV2BWG.js.map
66
+ //# sourceMappingURL=preview-M4QT6YMK.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  package_default,
12
12
  reportCommandStartEvent
13
- } from "./chunk-DUJVHVKZ.js";
13
+ } from "./chunk-X37NAAXG.js";
14
14
  import "./chunk-4QK4HF3C.js";
15
15
  import {
16
16
  BiProvider,
@@ -67,4 +67,4 @@ async function runCommand(command, services, commandFn) {
67
67
  export {
68
68
  renderCommand
69
69
  };
70
- //# sourceMappingURL=render-command-QYBNOZ2B.js.map
70
+ //# sourceMappingURL=render-command-H3NMLDRT.js.map
@@ -3,8 +3,8 @@ const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  renderCommand,
5
5
  runCommand
6
- } from "./chunk-2OAP2LLX.js";
7
- import "./chunk-DLDELYVB.js";
6
+ } from "./chunk-VT3OGC5F.js";
7
+ import "./chunk-W34JWURA.js";
8
8
  import "./chunk-EYV3FS5W.js";
9
9
  import "./chunk-FRGULVBF.js";
10
10
  import "./chunk-4QK4HF3C.js";
@@ -28,4 +28,4 @@ export {
28
28
  renderCommand,
29
29
  runCommand
30
30
  };
31
- //# sourceMappingURL=render-command-CMTVNSQY.js.map
31
+ //# sourceMappingURL=render-command-TH5F34LX.js.map
@@ -6,8 +6,8 @@ import {
6
6
  import {
7
7
  renderCommand,
8
8
  runCommand
9
- } from "./chunk-2OAP2LLX.js";
10
- import "./chunk-DLDELYVB.js";
9
+ } from "./chunk-VT3OGC5F.js";
10
+ import "./chunk-W34JWURA.js";
11
11
  import "./chunk-EYV3FS5W.js";
12
12
  import {
13
13
  NO_TTY_JSON_OUTPUT_OPTION
@@ -56,7 +56,7 @@ var buildCommand = (services, cliVersion) => createCommand("build").description(
56
56
  ).allowExcessArguments(true).allowUnknownOption(true).passThroughOptions(true).action(async (_, command) => {
57
57
  const { execa } = await import("./execa-MR2E3266.js");
58
58
  const { getRepoType, createPackageManager } = await import("./src-SUNRRUCG.js");
59
- const { runCommand: runCommand2 } = await import("./render-command-CMTVNSQY.js");
59
+ const { runCommand: runCommand2 } = await import("./render-command-TH5F34LX.js");
60
60
  await runCommand2(command, services, cliVersion, async (model) => {
61
61
  const repoType = await getRepoType(model.projectFolder);
62
62
  const packageManager = await createPackageManager(repoType);
@@ -84,11 +84,11 @@ var envPullCommand = (services, cliVersion) => {
84
84
  ).action(async (opts, command) => {
85
85
  if (opts.json) {
86
86
  return runCommand(command, services, cliVersion, async (model) => {
87
- const { nonInteractiveEnvPull } = await import("./env-pull-MXPEH223.js");
87
+ const { nonInteractiveEnvPull } = await import("./env-pull-ENQPMILC.js");
88
88
  return nonInteractiveEnvPull(services, model);
89
89
  });
90
90
  }
91
- const { EnvPullCommand } = await import("./EnvPullCommand-6FOYVETB.js");
91
+ const { EnvPullCommand } = await import("./EnvPullCommand-22WYBFTO.js");
92
92
  await renderCommand(command, services, cliVersion, /* @__PURE__ */ import_react.default.createElement(EnvPullCommand, null));
93
93
  });
94
94
  };
@@ -98,7 +98,7 @@ init_esm_shims();
98
98
  var import_react2 = __toESM(require_react(), 1);
99
99
  var envSetCommand = (services, cliVersion) => {
100
100
  return createCommand("set").description("Sets environment variable").requiredOption("--key <key>", "Name of the variable").requiredOption("--value <value>", "Value of the variable").action(async (opts, command) => {
101
- const { EnvSetCommand } = await import("./EnvSetCommand-YV7KQDTG.js");
101
+ const { EnvSetCommand } = await import("./EnvSetCommand-TDY5NJDM.js");
102
102
  const variable = { key: opts.key, value: opts.value };
103
103
  await renderCommand(
104
104
  command,
@@ -114,7 +114,7 @@ init_esm_shims();
114
114
  var import_react3 = __toESM(require_react(), 1);
115
115
  var envRemoveCommand = (services, cliVersion) => {
116
116
  return createCommand("remove").description("Removes an environment variable").requiredOption("--key <key>", "Name of the variable").action(async (opts, command) => {
117
- const { EnvRemoveCommand } = await import("./EnvRemoveCommand-BDX7BG4C.js");
117
+ const { EnvRemoveCommand } = await import("./EnvRemoveCommand-H6VFMJLM.js");
118
118
  await renderCommand(
119
119
  command,
120
120
  services,
@@ -171,18 +171,18 @@ var previewCommand = (services, cliVersion) => {
171
171
  ).argParser(validateBase).hideHelp()
172
172
  ).addOption(
173
173
  new Option("-l, --label <label>", "A custom label for this preview").argParser(validateLabel).hideHelp()
174
- ).addOption(
174
+ ).addOption(new Option("--site <site>", "(deprecated)").hideHelp()).addOption(
175
175
  new Option(NO_TTY_JSON_OUTPUT_OPTION, "Output in JSON format").hideHelp()
176
176
  ).action(async (options, command) => {
177
177
  const { baseUrl, json, label } = options;
178
- const { renderCommand: renderCommand2, runCommand: runCommand2 } = await import("./render-command-CMTVNSQY.js");
178
+ const { renderCommand: renderCommand2, runCommand: runCommand2 } = await import("./render-command-TH5F34LX.js");
179
179
  if (json) {
180
180
  return runCommand2(command, services, cliVersion, async (model) => {
181
- const { nonInteractivePreview } = await import("./preview-GCYV2BWG.js");
181
+ const { nonInteractivePreview } = await import("./preview-M4QT6YMK.js");
182
182
  return nonInteractivePreview(services, model, { baseUrl, label });
183
183
  });
184
184
  }
185
- const { PreviewCommand } = await import("./PreviewCommand-D6P52RJP.js");
185
+ const { PreviewCommand } = await import("./PreviewCommand-4KGWWAOZ.js");
186
186
  await renderCommand2(
187
187
  command,
188
188
  services,
@@ -205,8 +205,8 @@ var promoteCommand = (services, cliVersion) => {
205
205
  new Option("-l, --label <label>", "A custom label for this preview").argParser(validateLabel).hideHelp()
206
206
  ).action(async (options, command) => {
207
207
  const { baseUrl, label } = options;
208
- const { renderCommand: renderCommand2 } = await import("./render-command-CMTVNSQY.js");
209
- const { PromoteCommand } = await import("./PromoteCommand-CJUQIMD7.js");
208
+ const { renderCommand: renderCommand2 } = await import("./render-command-TH5F34LX.js");
209
+ const { PromoteCommand } = await import("./PromoteCommand-GG36WPXX.js");
210
210
  await renderCommand2(
211
211
  command,
212
212
  services,
@@ -237,8 +237,8 @@ var releaseCommand = (services, cliVersion) => {
237
237
  "The type of version you would like to create"
238
238
  ).choices(["major", "minor"])
239
239
  ).action(async (options, command) => {
240
- const { renderCommand: renderCommand2 } = await import("./render-command-CMTVNSQY.js");
241
- const { ReleaseCommand } = await import("./ReleaseCommand-FAHUZJYF.js");
240
+ const { renderCommand: renderCommand2 } = await import("./render-command-TH5F34LX.js");
241
+ const { ReleaseCommand } = await import("./ReleaseCommand-5ADFVNOT.js");
242
242
  const { baseUrl, label, comment } = options;
243
243
  const versionType = options.versionType ? {
244
244
  major: ReleaseVersionType.MAJOR,
@@ -280,8 +280,8 @@ var devCommand = (services, cliVersion) => {
280
280
  "The base url for when static files have been uploaded to an external cdn"
281
281
  ).argParser(validateBase).hideHelp()
282
282
  ).action(async (options, command) => {
283
- const { DevCommand } = await import("./DevCommand-QSEX33CH.js");
284
- const { renderCommand: renderCommand2 } = await import("./render-command-CMTVNSQY.js");
283
+ const { DevCommand } = await import("./DevCommand-BEEUZFP6.js");
284
+ const { renderCommand: renderCommand2 } = await import("./render-command-TH5F34LX.js");
285
285
  await renderCommand2(
286
286
  command,
287
287
  services,
@@ -303,8 +303,8 @@ init_esm_shims();
303
303
  var import_react8 = __toESM(require_react(), 1);
304
304
  var generateCommand = (services, cliVersion) => {
305
305
  return createCommand("generate").description("Generate a new extension for your project").action(async (options, command) => {
306
- const { GenerateCommand } = await import("./GenerateCommand-SARUYR3M.js");
307
- const { renderCommand: renderCommand2 } = await import("./render-command-CMTVNSQY.js");
306
+ const { GenerateCommand } = await import("./GenerateCommand-WJB2UILL.js");
307
+ const { renderCommand: renderCommand2 } = await import("./render-command-TH5F34LX.js");
308
308
  await renderCommand2(command, services, cliVersion, /* @__PURE__ */ import_react8.default.createElement(GenerateCommand, null));
309
309
  });
310
310
  };
@@ -316,4 +316,4 @@ var getRootCommand = async (services, cliVersion) => {
316
316
  export {
317
317
  getRootCommand
318
318
  };
319
- //# sourceMappingURL=src-WCTCENDD.js.map
319
+ //# sourceMappingURL=src-FZRIREVI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../cli-astro-commands/src/index.ts","../../cli-astro-commands/src/commands/root-command.ts","../../cli-astro-commands/src/commands/build.ts","../../cli-astro-commands/src/commands/env.ts","../../cli-astro-commands/src/commands/env-pull.tsx","../../cli-astro-commands/src/commands/env-set.tsx","../../cli-astro-commands/src/commands/env-remove.tsx","../../cli-astro-commands/src/commands/preview.tsx","../../cli-astro-commands/src/commands/validations.ts","../../cli-astro-commands/src/commands/promote.tsx","../../cli-astro-commands/src/commands/release.tsx","../../cli-astro-commands/src/commands/dev.tsx","../../cli-astro-commands/src/commands/generate.tsx"],"sourcesContent":["export { getRootCommand } from './commands/root-command.js';\n","import { createCommand } from '@commander-js/extra-typings';\nimport type {\n CommandServices,\n GetRootCommandFn,\n} from '@wix/cli-command-contract';\n\nimport { buildCommand } from './build.js';\nimport { envCommand } from './env.js';\nimport { previewCommand } from './preview.js';\nimport { promoteCommand } from './promote.js';\nimport { releaseCommand } from './release.js';\nimport { devCommand } from './dev.js';\nimport { generateCommand } from './generate.js';\n\nexport const getRootCommand: GetRootCommandFn = async (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('astro')\n .enablePositionalOptions(true)\n .addCommand(buildCommand(services, cliVersion))\n .addCommand(envCommand(services, cliVersion))\n .addCommand(previewCommand(services, cliVersion))\n .addCommand(promoteCommand(services, cliVersion), { hidden: true })\n .addCommand(releaseCommand(services, cliVersion))\n .addCommand(devCommand(services, cliVersion))\n .addCommand(generateCommand(services, cliVersion));\n};\n","import { createCommand } from '@commander-js/extra-typings';\nimport type { CommandServices } from '@wix/cli-command-contract';\n\nexport const buildCommand = (services: CommandServices, cliVersion: string) =>\n createCommand('build')\n .description(\n 'Invoke the astro build process, forwarding all command-line arguments.'\n )\n .allowExcessArguments(true)\n .allowUnknownOption(true)\n .passThroughOptions(true)\n .action(async (_, command) => {\n const { execa } = await import('execa');\n\n const { getRepoType, createPackageManager } = await import(\n '@wix/package-manager'\n );\n\n const { runCommand } = await import('./render-command.js');\n\n await runCommand(command, services, cliVersion, async (model) => {\n const repoType = await getRepoType(model.projectFolder);\n const packageManager = await createPackageManager(repoType);\n\n const { file, args } = packageManager.getRunBinaryCmd(\n ['astro', 'build'].concat(command.args)\n );\n\n await execa(file, args, {\n cwd: model.projectFolder,\n stdio: 'inherit',\n });\n });\n });\n","import { createCommand } from '@commander-js/extra-typings';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { envPullCommand } from './env-pull.js';\nimport { envSetCommand } from './env-set.js';\nimport { envRemoveCommand } from './env-remove.js';\n\nexport const envCommand = (services: CommandServices, cliVersion: string) => {\n return createCommand('env')\n .description('Work with environment variables')\n .addCommand(envPullCommand(services, cliVersion))\n .addCommand(envSetCommand(services, cliVersion))\n .addCommand(envRemoveCommand(services, cliVersion));\n};\n","import React from 'react';\nimport { createCommand, Option } from '@commander-js/extra-typings';\nimport { NO_TTY_JSON_OUTPUT_OPTION } from '@wix/cli-command-contract';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { renderCommand, runCommand } from './render-command.js';\n\nexport const envPullCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('pull')\n .description(\n 'Pulls environment variables and merge them into .env.local file'\n )\n .addOption(\n new Option(NO_TTY_JSON_OUTPUT_OPTION, 'Output in JSON format').hideHelp()\n )\n .action(async (opts, command) => {\n if (opts.json) {\n return runCommand(command, services, cliVersion, async (model) => {\n const { nonInteractiveEnvPull } = await import(\n '../non-interactive/env-pull.js'\n );\n return nonInteractiveEnvPull(services, model);\n });\n }\n\n const { EnvPullCommand } = await import(\n '../components/EnvPullCommand/index.js'\n );\n\n await renderCommand(command, services, cliVersion, <EnvPullCommand />);\n });\n};\n","import React from 'react';\nimport { createCommand } from '@commander-js/extra-typings';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { renderCommand } from './render-command.js';\n\nexport const envSetCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('set')\n .description('Sets environment variable')\n .requiredOption('--key <key>', 'Name of the variable')\n .requiredOption('--value <value>', 'Value of the variable')\n .action(async (opts, command) => {\n const { EnvSetCommand } = await import(\n '../components/EnvSetCommand/index.js'\n );\n\n const variable = { key: opts.key, value: opts.value };\n\n await renderCommand(\n command,\n services,\n cliVersion,\n <EnvSetCommand variable={variable} />\n );\n });\n};\n","import React from 'react';\nimport { createCommand } from '@commander-js/extra-typings';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { renderCommand } from './render-command.js';\n\nexport const envRemoveCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('remove')\n .description('Removes an environment variable')\n .requiredOption('--key <key>', 'Name of the variable')\n .action(async (opts, command) => {\n const { EnvRemoveCommand } = await import(\n '../components/EnvRemoveCommand/index.js'\n );\n\n await renderCommand(\n command,\n services,\n cliVersion,\n <EnvRemoveCommand variableKey={opts.key} />\n );\n });\n};\n","import React from 'react';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { NO_TTY_JSON_OUTPUT_OPTION } from '@wix/cli-command-contract';\nimport { createCommand, Option } from '@commander-js/extra-typings';\nimport { validateBase, validateLabel } from './validations.js';\n\nexport const previewCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('preview')\n .addOption(\n new Option(\n '--base-url <url>',\n 'The base url for when static files have been uploaded to an external cdn'\n )\n .argParser(validateBase)\n .hideHelp()\n )\n .addOption(\n new Option('-l, --label <label>', 'A custom label for this preview')\n .argParser(validateLabel)\n .hideHelp()\n )\n .addOption(new Option('--site <site>', '(deprecated)').hideHelp())\n .addOption(\n new Option(NO_TTY_JSON_OUTPUT_OPTION, 'Output in JSON format').hideHelp()\n )\n .action(async (options, command) => {\n const { baseUrl, json, label } = options;\n\n const { renderCommand, runCommand } = await import('./render-command.js');\n\n if (json) {\n return runCommand(command, services, cliVersion, async (model) => {\n const { nonInteractivePreview } = await import(\n '../non-interactive/preview.js'\n );\n return nonInteractivePreview(services, model, { baseUrl, label });\n });\n }\n\n const { PreviewCommand } = await import(\n '../components/PreviewCommand/index.js'\n );\n\n await renderCommand(\n command,\n services,\n cliVersion,\n <PreviewCommand baseUrl={baseUrl} label={label} environment=\"preview\" />\n );\n });\n};\n","import { z } from 'zod';\nimport { InvalidArgumentError } from '@commander-js/extra-typings';\n\nexport function validateBase(value: string) {\n const parsed = z.string().url().safeParse(value);\n\n if (parsed.success) {\n return parsed.data;\n }\n\n throw new InvalidArgumentError('Value must be a valid URL');\n}\n\nconst LABEL_MAX_LENGTH = 200;\n\nexport function validateLabel(value: string) {\n const parsed = z.string().max(LABEL_MAX_LENGTH).safeParse(value);\n\n if (parsed.success) {\n return parsed.data;\n }\n\n throw new InvalidArgumentError(\n `Value must be up to ${LABEL_MAX_LENGTH} characters`\n );\n}\n\nexport function validateReleaseComment(value: string) {\n const parsed = z.string().max(250).safeParse(value);\n\n if (parsed.success) {\n return parsed.data;\n }\n\n throw new InvalidArgumentError(\n 'The comment is limited to a maximum of 250 characters'\n );\n}\n","import React from 'react';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { createCommand, Option } from '@commander-js/extra-typings';\nimport { validateBase, validateLabel } from './validations.js';\n\nexport const promoteCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('promote')\n .addOption(\n new Option(\n '--base-url <url>',\n 'The base url for when static files have been uploaded to an external cdn'\n )\n .argParser(validateBase)\n .hideHelp()\n )\n .addOption(\n new Option('-l, --label <label>', 'A custom label for this preview')\n .argParser(validateLabel)\n .hideHelp()\n )\n .action(async (options, command) => {\n const { baseUrl, label } = options;\n\n const { renderCommand } = await import('./render-command.js');\n\n const { PromoteCommand } = await import(\n '../components/PromoteCommand/index.js'\n );\n\n await renderCommand(\n command,\n services,\n cliVersion,\n <PromoteCommand baseUrl={baseUrl} label={label} />\n );\n });\n};\n","import React from 'react';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { createCommand, Option } from '@commander-js/extra-typings';\nimport {\n validateBase,\n validateLabel,\n validateReleaseComment,\n} from './validations.js';\nimport { ReleaseVersionType } from '../components/ReleaseCommand/app-flow/types.js';\n\nexport const releaseCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('release')\n .description('Release a new version of your application')\n .addOption(\n new Option(\n '--base-url <url>',\n 'The base url for when static files have been uploaded to an external cdn'\n )\n .argParser(validateBase)\n .hideHelp()\n )\n .addOption(\n new Option('-l, --label <label>', 'A custom label for this preview')\n .argParser(validateLabel)\n .hideHelp()\n )\n .option(\n '-c, --comment <comment>',\n 'The comment for your release version, not visible by users',\n validateReleaseComment\n )\n .addOption(\n new Option(\n '-t, --version-type <type>',\n 'The type of version you would like to create'\n ).choices(['major', 'minor'])\n )\n .action(async (options, command) => {\n const { renderCommand } = await import('./render-command.js');\n const { ReleaseCommand } = await import(\n '../components/ReleaseCommand/index.js'\n );\n\n const { baseUrl, label, comment } = options;\n\n const versionType = options.versionType\n ? {\n major: ReleaseVersionType.MAJOR,\n minor: ReleaseVersionType.MINOR,\n }[options.versionType]\n : undefined;\n\n await renderCommand(\n command,\n services,\n cliVersion,\n <ReleaseCommand\n baseUrl={baseUrl}\n label={label}\n comment={comment}\n versionType={versionType}\n />\n );\n });\n};\n","import React from 'react';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { createCommand, Option } from '@commander-js/extra-typings';\nimport { validateBase } from './validations.js';\n\nexport const devCommand = (services: CommandServices, cliVersion: string) => {\n return createCommand('dev')\n .option(\n '--port <port>',\n 'Specify which port to run on. Defaults to 4321.',\n (value) => {\n return parseInt(value, 10);\n }\n )\n .option(\n '--allowed-hosts <allowedHosts>',\n 'Specify a comma-separated list of allowed hosts or allow any hostname.'\n )\n .addOption(\n new Option(\n '--base-url <url>',\n 'The base url for when static files have been uploaded to an external cdn'\n )\n .argParser(validateBase)\n .hideHelp()\n )\n .action(async (options, command) => {\n const { DevCommand } = await import('../components/DevCommand/index.js');\n const { renderCommand } = await import('./render-command.js');\n\n await renderCommand(\n command,\n services,\n cliVersion,\n <DevCommand\n port={options.port}\n allowedHosts={options.allowedHosts}\n serverExposedUrl={options.baseUrl}\n />\n );\n });\n};\n","import { createCommand } from '@commander-js/extra-typings';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport React from 'react';\n\nexport const generateCommand = (\n services: CommandServices,\n cliVersion: string\n) => {\n return createCommand('generate')\n .description('Generate a new extension for your project')\n .action(async (options, command) => {\n const { GenerateCommand } = await import(\n '../components/GenerateCommand/index.js'\n );\n const { renderCommand } = await import('./render-command.js');\n await renderCommand(command, services, cliVersion, <GenerateCommand />);\n });\n};\n"],"mappings":"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","names":["runCommand","React","import_react","React","import_react","React","import_react","renderCommand","runCommand","React","import_react","renderCommand","React","import_react","renderCommand","React","import_react","renderCommand","React","import_react","renderCommand","React"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wix/cli",
3
3
  "description": "CLI tool for building Wix sites and applications",
4
- "version": "1.1.148",
4
+ "version": "1.1.150",
5
5
  "bin": {
6
6
  "wix": "bin/wix.cjs"
7
7
  },
@@ -50,7 +50,8 @@
50
50
  "files": [
51
51
  "bin",
52
52
  "build",
53
- "templates"
53
+ "templates",
54
+ "agents"
54
55
  ],
55
56
  "keywords": [
56
57
  "wix",
@@ -92,5 +93,5 @@
92
93
  ]
93
94
  }
94
95
  },
95
- "falconPackageHash": "a2ffe4cd6ff6d027ee8b5e13b628976482a99a62026082bc5065659d"
96
+ "falconPackageHash": "1005667f13bfea3ae93ed64068ee9b85460d3d893ebb93855c13ad3b"
96
97
  }
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../cli-astro-commands/src/components/DevCommand/index.ts","../../cli-astro-commands/src/components/DevCommand/DevCommand.tsx","../../cli-astro-commands/src/components/DevCommand/utils/runAstroDev.ts","../../cli-astro-commands/src/components/DevCommand/utils/createAstroLogger.tsx","../../cli-astro-commands/src/components/DevCommand/hooks/useFetchDevMetadata.ts","../../cli-astro-commands/src/components/DevCommand/SiteDevFlow.tsx","../../cli-astro-commands/src/components/DevCommand/DevScreenBorder.tsx","../../cli-astro-commands/src/components/DevCommand/SiteDev.tsx","../../cli-astro-commands/src/components/DevCommand/hooks/useDevCenterUpdater.ts","../../metasite-manager-client/src/index.ts","../../metasite-manager-client/src/useMetasiteManagerClient.ts","../../metasite-manager-client/src/metasite-manager-client.ts","../../../node_modules/@wix/ambassador-metasite-api-v1-meta-site/http.impl.ts","../../../node_modules/@wix/ambassador-document-management-document-store-v1-transaction/http.impl.ts","../../metasite-manager-client/src/schemas.ts","../../cli-astro-commands/src/components/DevCommand/hooks/useFetchAppManifest.ts","../../cli-astro-commands/src/components/DevCommand/utils/isTunnelRequired.ts","../../cli-astro-commands/src/components/DevCommand/TunnelingConsent.tsx","../../cli-astro-commands/src/components/DevCommand/AppDevFlow.tsx","../../cli-astro-commands/src/components/DevCommand/app-flow/AppDev.tsx","../../cli-astro-commands/src/components/DevCommand/app-flow/screen-state.ts","../../cli-astro-commands/src/components/DevCommand/app-flow/SiteSelectorScreen.tsx","../../cli-astro-commands/src/components/CloseScreen/index.tsx","../../cli-astro-commands/src/components/CloseScreen/CloseScreen.tsx","../../cli-astro-commands/src/components/DevCommand/app-flow/HomeScreen.tsx","../../cli-astro-commands/src/components/DevCommand/app-flow/SwitchSite.tsx"],"sourcesContent":["export { DevCommand } from './DevCommand.js';\n","import React, { useEffect, useMemo, useRef } from 'react';\nimport type { FC } from 'react';\nimport { useAsync, useExit } from '@wix/cli-ui-kit';\nimport { createPackageManager, getRepoType } from '@wix/package-manager';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { useProjectModel } from '../../model.js';\nimport {\n runAstroDev,\n EVENT_LINE,\n EVENT_SERVER_ADDRESS,\n} from './utils/runAstroDev.js';\nimport { createAstroLogger } from './utils/createAstroLogger.js';\nimport { useFetchDevMetadata } from './hooks/useFetchDevMetadata.js';\nimport { SiteDevFlow } from './SiteDevFlow.js';\nimport { AppDevFlow } from './AppDevFlow.js';\nimport { SiteProvider } from '../../site/index.js';\n\ninterface DevCommandProps {\n port?: number;\n allowedHosts?: string;\n serverExposedUrl?: string;\n}\n\nexport const DevCommand: FC<DevCommandProps> = ({\n port,\n allowedHosts,\n serverExposedUrl,\n}) => {\n const {\n model: { config, projectFolder },\n } = useProjectModel();\n\n const exit = useExit();\n const logger = useMemo(() => createAstroLogger(false), []);\n\n const astroProcess = useRef<ReturnType<typeof runAstroDev>>();\n\n const fetchDevMetadataAction = useFetchDevMetadata();\n\n useAsync(async () => {\n const repoType = await getRepoType(projectFolder);\n const packageManager = await createPackageManager(repoType);\n\n const astro = runAstroDev({\n packageManager,\n projectFolder,\n port,\n allowedHosts,\n });\n\n astroProcess.current = astro;\n\n astro.stdout?.once(EVENT_SERVER_ADDRESS, (address: string) => {\n void fetchDevMetadataAction.execute(address);\n });\n\n astro.stdout?.on(EVENT_LINE, (line: string) => logger.log(line));\n astro.stderr?.on(EVENT_LINE, (line: string) => logger.log(line));\n\n void astro.on('exit', () => {\n // If a child process is killed externally and you don’t wire Execa correctly,\n // stdio + signal handling can leave active handles open, preventing Node from exiting.\n astroProcess.current?.stdout?.destroy();\n astroProcess.current?.stderr?.destroy();\n astroProcess.current?.stdin?.end();\n astroProcess.current = undefined;\n\n exit(\n new CliError({\n cause: undefined,\n code: CliErrorCode.DevCommandFailed(),\n })\n );\n });\n }, []);\n\n useEffect(() => {\n return () => {\n if (astroProcess.current?.pid) {\n try {\n astroProcess.current.kill('SIGTERM');\n } catch {\n // Sometimes child process might exit or be killed from outside.\n // We don't want to report an error in case we fail to kill the child process.\n }\n }\n };\n }, []);\n\n return (\n <SiteProvider>\n {config.projectType === 'Site' ? (\n <SiteDevFlow\n devMetadataStatus={fetchDevMetadataAction.status}\n serverExposedUrl={serverExposedUrl}\n />\n ) : (\n <AppDevFlow\n devMetadataStatus={fetchDevMetadataAction.status}\n serverExposedUrl={serverExposedUrl}\n />\n )}\n </SiteProvider>\n );\n};\n","import { execa } from 'execa';\nimport type { IPackageManager } from '@wix/package-manager';\nimport stripAnsi from 'strip-ansi';\n\nexport const EVENT_LINE = 'line';\nexport const EVENT_SERVER_ADDRESS = 'server_address';\n\nexport function runAstroDev({\n packageManager,\n projectFolder,\n port,\n allowedHosts,\n}: {\n packageManager: IPackageManager;\n projectFolder: string;\n port?: number;\n allowedHosts?: string;\n}) {\n const binaryArgs = ['astro', 'dev'];\n\n if (port) {\n binaryArgs.push('--port', `${port}`);\n }\n\n if (allowedHosts) {\n binaryArgs.push('--allowed-hosts', allowedHosts);\n }\n\n const { file, args } = packageManager.getRunBinaryCmd(binaryArgs);\n\n const result = execa(file, args, {\n cwd: projectFolder,\n stdio: 'pipe',\n env: { FORCE_COLOR: '1' },\n cleanup: true,\n windowsHide: false,\n });\n\n let stdoutBuffer = '';\n\n result.stdout?.on('data', (chunk) => {\n stdoutBuffer += chunk.toString();\n const lines = stdoutBuffer.split('\\n');\n\n stdoutBuffer = lines.pop() ?? '';\n for (const line of lines) {\n result.stdout?.emit(EVENT_LINE, line);\n if (line.includes('http://')) {\n const match = /(http:\\/\\/[^\\s]+)/.exec(line);\n if (match?.[1]) {\n const address = stripAnsi(match[1]).trim();\n result.stdout?.emit(EVENT_SERVER_ADDRESS, address);\n }\n }\n }\n });\n\n let stdErrBuffer = '';\n\n result.stderr?.on('data', (chunk) => {\n stdErrBuffer += chunk.toString();\n const lines = stdErrBuffer.split('\\n');\n\n stdErrBuffer = lines.pop() ?? '';\n for (const line of lines) {\n result.stderr?.emit(EVENT_LINE, line);\n }\n });\n\n return result;\n}\n","import React from 'react';\nimport type { ReactElement } from 'react';\nimport { createRendererToString, Text } from '@wix/cli-ui-kit';\n\ninterface Logger {\n log: (msg: string | ReactElement) => void;\n}\n\nconst dateTimeFormat = new Intl.DateTimeFormat([], {\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false,\n});\n\nexport function createAstroLogger(isPrefixed = true): Logger {\n const renderer = createRendererToString({ stripAnsi: false });\n const log = (msg: string | ReactElement) => {\n if (typeof msg === 'string') {\n // eslint-disable-next-line no-console\n setTimeout(() => console.log(msg), 0);\n } else {\n // eslint-disable-next-line no-console\n setTimeout(() => console.log(renderer.render(msg)), 0);\n }\n };\n\n const prefixedLog = (msg: string | ReactElement) => {\n const timestamp = dateTimeFormat.format(new Date());\n const log = (\n <Text>\n <Text>{timestamp} </Text>\n <Text skin=\"info\">[wix] </Text>\n <Text>{msg}</Text>\n </Text>\n );\n\n // eslint-disable-next-line no-console\n console.log(renderer.render(log));\n };\n\n return isPrefixed ? { log: prefixedLog } : { log };\n}\n","import { useHttpClient } from '@wix/cli-http-client-react';\nimport { devMetadataSchema } from '@wix/cli-astro-definitions';\nimport { useAsyncCallback } from '@wix/cli-ui-kit';\n\nexport function useFetchDevMetadata() {\n const http = useHttpClient({ type: 'standalone' });\n\n return useAsyncCallback(async (_, serverLocalUrl: string) => {\n const url = new URL('/_wix/dev-metadata.json', serverLocalUrl);\n try {\n const { data } = await http.get(url.toString());\n return {\n devMetadata: devMetadataSchema.parse(data),\n serverLocalUrl,\n };\n } catch {\n return {\n devMetadata: null,\n serverLocalUrl,\n };\n }\n });\n}\n","import React from 'react';\nimport type { FC } from 'react';\nimport type { AsyncCallbackStatus } from '@wix/cli-ui-kit';\nimport { Spinner } from '@wix/cli-ui-kit';\nimport type { DevMetadata } from '@wix/cli-astro-definitions';\nimport { SiteAuthProvider } from '@wix/cli-auth';\nimport { match } from 'variant';\nimport { DevScreenBorder } from './DevScreenBorder.js';\nimport { useSite } from '../../site/index.js';\nimport { SiteDev } from './SiteDev.js';\n\ninterface SiteDevScreenProps {\n devMetadataStatus: AsyncCallbackStatus<{\n devMetadata: DevMetadata | null;\n serverLocalUrl: string;\n }>;\n serverExposedUrl?: string;\n}\n\nexport const SiteDevFlow: FC<SiteDevScreenProps> = ({\n devMetadataStatus,\n serverExposedUrl,\n}) => {\n const { site } = useSite();\n return (\n <SiteAuthProvider siteId={site.id}>\n {match(devMetadataStatus, {\n NotRequested: () => <Spinner text=\"Starting dev environment...\" />,\n Error: () => null,\n Loading: () => <Spinner text=\"Checking dev environment settings...\" />,\n Success: ({ result: { devMetadata, serverLocalUrl } }) => (\n <DevScreenBorder>\n <SiteDev\n devMetadata={devMetadata}\n serverLocalUrl={serverLocalUrl}\n serverExposedUrl={serverExposedUrl}\n />\n </DevScreenBorder>\n ),\n })}\n </SiteAuthProvider>\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 width=\"95%\"\n >\n {children}\n </Box>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport type { DevMetadata } from '@wix/cli-astro-definitions';\nimport { Box, Spinner, Text } from '@wix/cli-ui-kit';\nimport { useSite } from '../../site/useSite.js';\nimport { PlatformLink } from '../PlatformLink/PlatformLink.js';\nimport { useDevCenterUpdater } from './hooks/useDevCenterUpdater.js';\nimport { TunnelingConsent } from './TunnelingConsent.js';\n\ninterface SiteDevProps {\n serverLocalUrl: string;\n serverExposedUrl?: string;\n devMetadata: DevMetadata | null;\n}\n\nexport const SiteDev: FC<SiteDevProps> = ({\n serverLocalUrl,\n serverExposedUrl,\n devMetadata,\n}) => {\n const { site } = useSite();\n const { tunnelRequired, devArmTag } = useDevCenterUpdater({\n serverLocalUrl,\n serverExposedUrl,\n devMetadata,\n });\n\n return (\n <>\n <Text>Development environment ready</Text>\n <Box rowGap={1} marginY={1} flexDirection=\"column\">\n <TunnelingConsent required={tunnelRequired}>\n <Text>Open the preview on:</Text>\n <Box paddingLeft={2} flexDirection=\"column\">\n <PlatformLink url={serverLocalUrl} label={'Site'} />\n {devArmTag ? (\n <PlatformLink\n url={`https://manage.wix.com/dashboard/${site.id}?apps-override=${devArmTag}`}\n label={'Dashboard'}\n />\n ) : (\n <Spinner text={'Preparing your dashboard...'} />\n )}\n </Box>\n </TunnelingConsent>\n </Box>\n </>\n );\n};\n","import { isDeepStrictEqual } from 'node:util';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { fields, isType, variant } from 'variant';\nimport type { LooseAppManifest } from '@wix/cli-app-manifest';\nimport { useDebugLog } from '@wix/cli-debug-log';\nimport { useARMClient } from '@wix/arm-client';\nimport { useTunnel } from '@wix/cli-tunnel';\nimport { readUserConfig } from '@wix/cli-user-config';\nimport { PlatformType } from '@wix/cli-astro-definitions';\nimport type { DevMetadata } from '@wix/cli-astro-definitions';\nimport { useMetasiteManagerClient } from '@wix/metasite-manager-client';\nimport { ComponentType } from '@wix/dev-center-client';\nimport { readAppConfig, saveAppConfig } from '../../../files/app.config.js';\nimport { useProjectModel } from '../../../model.js';\nimport { createAstroLogger } from '../utils/createAstroLogger.js';\nimport { useUpdateManifest } from '../../PreviewCommand/hooks/useUpdateManifest.js';\nimport { useFetchAppManifest } from './useFetchAppManifest.js';\nimport { useUpdateDeploymentTopology } from '../../../hooks/useUpdateDeploymentTopology.js';\nimport { useResolvePlatformUrl } from '../../PreviewCommand/app-flow/useResolvePlatformUrl.js';\n\nconst ManifestUpdateResult = variant({\n Changed: fields<{ shouldDistributeClientUpdate: boolean }>(),\n Unchanged: {},\n});\n\nexport const useDevCenterUpdater = ({\n serverLocalUrl,\n serverExposedUrl,\n devMetadata,\n}: {\n serverLocalUrl: string;\n serverExposedUrl?: string;\n devMetadata: DevMetadata | null;\n}) => {\n const [devArmTag, setDevArmTag] = useState<string | undefined>();\n const [manifest, setManifest] = useState<LooseAppManifest | null>(null);\n const writeToDebugLog = useDebugLog();\n const resolvePlatformUrl = useResolvePlatformUrl();\n const { distributeClientUpdate } = useMetasiteManagerClient();\n\n const manifestUpdateCheck = useCallback(\n (latestManifest: LooseAppManifest) => {\n if (manifest == null) {\n return ManifestUpdateResult.Changed({\n shouldDistributeClientUpdate: false,\n });\n }\n\n const oldComponentsMap = new Map(\n manifest.components.map((comp) => [comp.compId, comp])\n );\n\n const changedComponents = latestManifest.components.filter((newComp) => {\n const oldComp = oldComponentsMap.get(newComp.compId);\n return !isDeepStrictEqual(newComp, oldComp);\n });\n\n if (changedComponents.length === 0) {\n return ManifestUpdateResult.Unchanged();\n }\n\n const editorComponentsChanged = changedComponents.filter(\n (comp) =>\n comp.compType === ComponentType.PANEL ||\n comp.compType === ComponentType.EDITOR_REACT_COMPONENT\n );\n\n return ManifestUpdateResult.Changed({\n shouldDistributeClientUpdate: editorComponentsChanged.length > 0,\n });\n },\n [manifest]\n );\n\n const {\n model: {\n config: { appId, projectType },\n projectFolder,\n },\n } = useProjectModel();\n\n const logger = useMemo(() => createAstroLogger(), []);\n const { updateManifest } = useUpdateManifest();\n const arm = useARMClient();\n const updateDeploymentTopology = useUpdateDeploymentTopology();\n\n const openTunnel = useTunnel();\n const tunnelUrl = useRef<string>();\n const [tunnelRequired, setTunnelRequired] = useState(false);\n\n const fetchAppManifest = useFetchAppManifest();\n\n const updateDevCenter = useCallback(async () => {\n const baseUrl = serverExposedUrl ?? serverLocalUrl;\n\n const { manifest: latestManifest, isTunnelRequired } =\n await fetchAppManifest(\n serverLocalUrl,\n devMetadata,\n baseUrl,\n tunnelUrl.current ?? baseUrl\n );\n\n const manifestUpdateResult = manifestUpdateCheck(latestManifest);\n\n if (isType(manifestUpdateResult, 'Unchanged')) {\n return manifestUpdateResult;\n }\n\n if (!serverExposedUrl && !tunnelUrl.current && isTunnelRequired) {\n const config = await readUserConfig();\n if (!config.tunneling) {\n setTunnelRequired(true);\n return ManifestUpdateResult.Unchanged();\n }\n\n const serverLocalPort = parseInt(new URL(serverLocalUrl).port, 10);\n const tunnel = await openTunnel(serverLocalPort);\n tunnelUrl.current = tunnel.url;\n\n return ManifestUpdateResult.Unchanged();\n }\n\n const appConfig = await readAppConfig(projectFolder);\n\n let updatedDevArmTag = appConfig?.devArmTag;\n if (!updatedDevArmTag) {\n updatedDevArmTag = await arm.createLooseAppRelease(\n updateManifest(latestManifest, baseUrl, tunnelUrl.current),\n appId\n );\n } else {\n const updateState = await arm.updateLooseAppRelease(\n updateManifest(latestManifest, baseUrl, tunnelUrl.current),\n updatedDevArmTag\n );\n if (!isType(updateState, 'TagUpdated')) {\n updatedDevArmTag = await arm.createLooseAppRelease(\n updateManifest(latestManifest, baseUrl, tunnelUrl.current),\n appId\n );\n }\n }\n\n if (updatedDevArmTag !== appConfig?.devArmTag) {\n await saveAppConfig(projectFolder, { devArmTag: updatedDevArmTag });\n }\n\n if (\n isType(manifestUpdateResult, 'Changed') &&\n manifestUpdateResult.shouldDistributeClientUpdate\n ) {\n await distributeClientUpdate(appId);\n }\n\n setManifest(latestManifest);\n setDevArmTag(updatedDevArmTag);\n\n await updateDeploymentTopology.execute({\n siteUrl:\n projectType === 'Site'\n ? baseUrl\n : resolvePlatformUrl({\n platformType: PlatformType.Site(),\n armTag: updatedDevArmTag,\n }),\n armTag: updatedDevArmTag,\n environment: 'development',\n });\n\n return manifestUpdateResult;\n }, [\n manifestUpdateCheck,\n distributeClientUpdate,\n fetchAppManifest,\n updateManifest,\n serverLocalUrl,\n serverExposedUrl,\n arm,\n projectFolder,\n appId,\n updateDeploymentTopology,\n openTunnel,\n devMetadata,\n projectType,\n resolvePlatformUrl,\n ]);\n\n const [timer, setTimer] = useState(Date.now());\n\n useEffect(() => {\n let disposed = false;\n\n void updateDevCenter()\n .then((result) => {\n if (isType(result, 'Changed')) {\n logger.log(\n 'App Manifest updated. Refresh existing browser tabs to view the latest changes.'\n );\n }\n })\n .catch((error: unknown) => {\n // TODO: need product decision on how to format/color the output\n logger.log('Failed to update App Manifest');\n logger.log(`${error}`);\n\n writeToDebugLog(error);\n })\n .then(() => {\n if (!disposed) {\n setTimeout(() => setTimer(Date.now()), 1_000);\n }\n });\n return () => {\n disposed = true;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [timer]);\n\n return { tunnelRequired, devArmTag };\n};\n","export { useMetasiteManagerClient } from './useMetasiteManagerClient.js';\nexport { MetasiteManagerClient } from './metasite-manager-client.js';\n","import { useMemo } from 'react';\nimport { useHttpClient } from '@wix/cli-http-client-react';\nimport { usePanoramaMethodLogger } from '@wix/cli-panorama';\nimport { MetasiteManagerClient } from './metasite-manager-client.js';\n\nexport function useMetasiteManagerClient(): MetasiteManagerClient {\n const httpClient = useHttpClient({ type: 'general' });\n const client = useMemo(\n () => new MetasiteManagerClient(httpClient),\n [httpClient]\n );\n\n return usePanoramaMethodLogger(client);\n}\n","import { createMetaSiteFromTemplate } from '@wix/ambassador-metasite-api-v1-meta-site/http';\nimport type { CreateMetaSiteFromTemplateRequest } from '@wix/ambassador-metasite-api-v1-meta-site/types';\nimport { distribute } from '@wix/ambassador-document-management-document-store-v1-transaction/http';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport type { HttpClient } from '@wix/cli-http-client';\nimport {\n clientSpecMapSchema,\n createMetaSiteFromTemplateSchema,\n} from './schemas.js';\n\nexport class MetasiteManagerClient {\n constructor(private readonly httpClient: HttpClient) {}\n\n private getClientSpecMap = async (metaSiteId: string) => {\n try {\n const { data } = await this.httpClient.request({\n url: `/_api/msm/v1/meta-site/editor-client-spec-map/${metaSiteId}`,\n });\n\n return clientSpecMapSchema.parse(data);\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToGetClientSpecMap(),\n cause: e,\n });\n }\n };\n\n public createMetaSiteFromTemplate = async (\n request: CreateMetaSiteFromTemplateRequest\n ) => {\n try {\n const { data } = await this.httpClient.request(\n createMetaSiteFromTemplate(request)\n );\n return createMetaSiteFromTemplateSchema.parse(data).metaSite;\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToCreateMetaSiteFromTemplate(),\n cause: e,\n });\n }\n };\n\n public getSiteInstalledApps = async (metaSiteId: string) => {\n try {\n const clientSpecMap = await this.getClientSpecMap(metaSiteId);\n\n return Object.values(clientSpecMap)\n .filter((spec) => spec.appDefinitionId && !spec.permissions?.revoked)\n .map((spec) => spec.appDefinitionId!);\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToGetSiteInstalledApps(),\n cause: e,\n });\n }\n };\n\n public getInstalledAppInstanceId = async ({\n metaSiteId,\n appId,\n }: {\n metaSiteId: string;\n appId: string;\n }) => {\n try {\n const clientSpecMap = await this.getClientSpecMap(metaSiteId);\n const installedApp = Object.values(clientSpecMap).find(\n (spec) => spec.appDefinitionId === appId\n );\n\n return installedApp?.instanceId ?? '';\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToGetSiteInstalledAppInstanceId(),\n cause: e,\n });\n }\n };\n\n public distributeClientUpdate = async (appId: string) => {\n try {\n await this.httpClient.request(\n distribute({\n payloads: [\n {\n id: appId,\n messageType: 'MANIFEST_UPDATE',\n data: {\n appId,\n },\n },\n ],\n branchId: '00000000-0000-0000-0000-000000000000',\n })\n );\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToDistributeClientManifestUpdate(),\n cause: e,\n });\n }\n };\n}\n",null,null,"import { z } from 'zod';\n\nexport const clientSpecMapSchema = z.record(\n z.object({\n appDefinitionId: z.string().optional(),\n permissions: z.object({ revoked: z.boolean() }).optional(),\n instanceId: z.string().optional(),\n })\n);\n\nexport const createMetaSiteFromTemplateSchema = z.object({\n metaSite: z.object({\n metaSiteId: z.string(),\n }),\n});\n","import { useCallback } from 'react';\nimport { parseLooseAppManifest } from '@wix/cli-app-manifest';\nimport type { DevMetadata } from '@wix/cli-astro-definitions';\nimport { useHttpClient } from '@wix/cli-http-client-react';\nimport { isTunnelRequired } from '../utils/isTunnelRequired.js';\n\nexport function useFetchAppManifest() {\n const http = useHttpClient({ type: 'standalone' });\n\n return useCallback(\n async (\n serverLocalUrl: string,\n devMetadata: DevMetadata | null,\n baseUrl: string,\n tunnelUrl: string\n ) => {\n const url = new URL('/_wix/app-manifest.json', serverLocalUrl);\n const { data: text } = await http.get<string>(url.toString(), {\n responseType: 'text',\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: false,\n clarifyTimeoutError: false,\n },\n disableWixHeaders: true,\n });\n\n if (devMetadata != null) {\n const placeholders = new Map<string, string>();\n\n placeholders.set(devMetadata.staticsUrlPlaceholder, baseUrl);\n placeholders.set(devMetadata.serverUrlPlaceholder, tunnelUrl);\n\n return {\n manifest: parseLooseAppManifest(text, placeholders),\n isTunnelRequired: text.includes(devMetadata.serverUrlPlaceholder),\n };\n }\n\n const manifestV1 = parseLooseAppManifest(text);\n\n return {\n manifest: manifestV1,\n isTunnelRequired: isTunnelRequired(manifestV1),\n };\n },\n [http]\n );\n}\n","import { looseComponentSchema } from '@wix/cli-app-manifest';\nimport type {\n LooseAppManifest,\n LooseBaseComponent,\n} from '@wix/cli-app-manifest';\nimport { ComponentType } from '@wix/ambassador-devcenter-apps-v1-app-old/types';\n\nexport function isTunnelRequired(appManifest: LooseAppManifest) {\n for (const extension of appManifest.components) {\n const knownAppManifest = parseKnownExtensionManifest(extension);\n\n if (\n knownAppManifest != null &&\n knownAppManifest.compType === ComponentType.WEBHOOK\n ) {\n // User can specify his own callback URL.\n // In such cases tunnel is not required even if webhook exists.\n // CLI always creates a relative URL which is not parsable.\n return !URL.canParse(knownAppManifest.compData.webhook.callbackUrl);\n }\n }\n\n return false;\n}\n\nfunction parseKnownExtensionManifest(extensionManifest: LooseBaseComponent) {\n const appManifestResult = looseComponentSchema.safeParse(extensionManifest);\n\n if (appManifestResult.error) {\n return null;\n }\n\n return appManifestResult.data;\n}\n","import React, { useState } from 'react';\nimport type { FC, ReactNode } from 'react';\nimport { match } from 'variant';\nimport { ConfirmInput, Text, useAsync, useExit } from '@wix/cli-ui-kit';\nimport { readUserConfig, updateUserConfig } from '@wix/cli-user-config';\n\ninterface Props {\n children: ReactNode;\n required: boolean;\n}\n\nexport const TunnelingConsent: FC<Props> = ({ required, children }) => {\n const exit = useExit();\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 (!required || approved) {\n return children;\n }\n\n return (\n <>\n {match(status, {\n Success: () => (\n <ConfirmInput\n label={\n \"To proceed, we'll set up a secure tunnel from your machine for development purposes\"\n }\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 Operation aborted. Tunneling is necessary to run your application.\n </Text>\n )}\n </>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { match } from 'variant';\nimport type { AsyncCallbackStatus } from '@wix/cli-ui-kit';\nimport type { DevMetadata } from '@wix/cli-astro-definitions';\nimport { Spinner } from '@wix/cli-ui-kit';\nimport { AppDev } from './app-flow/AppDev.js';\nimport { DevScreenBorder } from './DevScreenBorder.js';\n\ninterface AppDevScreenProps {\n devMetadataStatus: AsyncCallbackStatus<{\n devMetadata: DevMetadata | null;\n serverLocalUrl: string;\n }>;\n serverExposedUrl?: string;\n}\n\nexport const AppDevFlow: FC<AppDevScreenProps> = ({\n devMetadataStatus,\n serverExposedUrl,\n}) => {\n return match(devMetadataStatus, {\n NotRequested: () => <Spinner text=\"Starting dev environment...\" />,\n Error: () => null,\n Loading: () => <Spinner text=\"Checking dev environment settings...\" />,\n Success: ({ result: { devMetadata, serverLocalUrl } }) => {\n return (\n <DevScreenBorder>\n <AppDev\n serverLocalUrl={serverLocalUrl}\n serverExposedUrl={serverExposedUrl}\n devMetadata={devMetadata}\n />\n </DevScreenBorder>\n );\n },\n });\n};\n","import type { DevMetadata } from '@wix/cli-astro-definitions';\nimport type { FC } from 'react';\nimport React, { useState } from 'react';\nimport { match } from 'variant';\nimport { ScreenState } from './screen-state.js';\nimport { TunnelingConsent } from '../TunnelingConsent.js';\nimport { SiteSelectorScreen } from './SiteSelectorScreen.js';\nimport { HomeScreen } from './HomeScreen.js';\nimport { useDevCenterUpdater } from '../hooks/useDevCenterUpdater.js';\n\ninterface AppDev {\n serverLocalUrl: string;\n serverExposedUrl?: string;\n devMetadata: DevMetadata | null;\n}\n\nexport const AppDev: FC<AppDev> = ({\n serverLocalUrl,\n serverExposedUrl,\n devMetadata,\n}) => {\n const [screen, setScreen] = useState<ScreenState>(ScreenState.Home());\n\n const { tunnelRequired, devArmTag } = useDevCenterUpdater({\n serverLocalUrl,\n serverExposedUrl,\n devMetadata,\n });\n\n return (\n <TunnelingConsent required={tunnelRequired}>\n {match(screen, {\n Home: () => (\n <HomeScreen onScreenChange={setScreen} devArmTag={devArmTag} />\n ),\n SiteSelector: () => <SiteSelectorScreen onScreenChange={setScreen} />,\n })}\n </TunnelingConsent>\n );\n};\n","import { variant } from 'variant';\nimport type { VariantOf } from 'variant';\n\nexport const ScreenState = variant({\n Home: {},\n SiteSelector: {},\n});\n\nexport type ScreenState = VariantOf<typeof ScreenState>;\n","import React, { useState, useCallback } from 'react';\nimport type { FC } from 'react';\nimport { Alert, Box, PointerIcon, Text } from '@wix/cli-ui-kit';\nimport { ErrorViewer, useErrorReporter } from '@wix/cli-error-reporting';\nimport type { Site } from '@wix/site-list-client';\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 { 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 <Text>Current Development Site: {site.displayName}</Text>\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\">Failed to change Development Site!</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 from 'react';\nimport type { FC } from 'react';\nimport { Key, Text, useInput } from '@wix/cli-ui-kit';\nimport { useWixCliAppBi } from '../../bi-app/index.js';\n\ninterface Props {\n onClose: () => void;\n}\n\nexport const CloseScreen: FC<Props> = ({ onClose }) => {\n const bi = useWixCliAppBi();\n\n useInput((_, key) => {\n if (key.escape) {\n bi.cliAction({\n question: 'Press to close',\n questionKey: 'general.close_screen',\n action: 'close',\n key: 'esc',\n });\n onClose();\n }\n });\n\n return (\n <Text skin=\"secondary\">\n Press\n <Key value=\"esc\" skin=\"secondary\" />\n to close\n </Text>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport process from 'node:process';\nimport { Box, Text, Spinner } from '@wix/cli-ui-kit';\nimport { useSite } from '../../../site/index.js';\nimport type { ScreenState } from './screen-state.js';\nimport { PlatformLink } from '../../PlatformLink/PlatformLink.js';\nimport { LivesiteLinkForApp } from '../../PreviewCommand/app-flow/LivesiteLinkForApp.js';\nimport { SwitchSite } from './SwitchSite.js';\nimport { EditorLink } from '../../PlatformLink/EditorLink.js';\n\ninterface HomeScreenProps {\n onScreenChange: (screen: ScreenState) => void;\n devArmTag?: string;\n}\n\nexport const HomeScreen: FC<HomeScreenProps> = ({\n onScreenChange,\n devArmTag,\n}) => {\n const { site } = useSite();\n\n return (\n <>\n <Box gap={1}>\n <Text>Current Dev Site:</Text>\n <Text bold skin=\"info\">\n {site.displayName}\n </Text>\n {process.stdin.isTTY && <SwitchSite onScreenChange={onScreenChange} />}\n </Box>\n\n <Box paddingTop={1} paddingBottom={1} flexDirection=\"column\">\n <Text>Open the preview on:</Text>\n <Box paddingLeft={2} flexDirection=\"column\">\n {devArmTag ? (\n <>\n <LivesiteLinkForApp armTag={devArmTag} />\n <EditorLink armTag={devArmTag} />\n <PlatformLink\n url={`https://manage.wix.com/dashboard/${site.id}?apps-override=${devArmTag}`}\n label={'Dashboard'}\n />\n </>\n ) : (\n <Spinner text=\"Preparing your dashboard...\" />\n )}\n </Box>\n </Box>\n </>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Text, useInput, Key } from '@wix/cli-ui-kit';\nimport { ScreenState } from './screen-state.js';\nimport { useWixCliAppBi } from '../../../bi-app/index.js';\n\nexport const SwitchSite: FC<{\n onScreenChange: (screen: ScreenState) => void;\n}> = ({ onScreenChange }) => {\n const bi = useWixCliAppBi();\n\n useInput(async (input) => {\n if (input === 'c') {\n bi.cliAction({\n question: 'Switch Dev Site',\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 <Text skin=\"secondary\">\n (Press <Key value=\"C\" skin=\"secondary\" /> to switch)\n </Text>\n );\n};\n"],"mappings":"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","names":["import_react","match","log","React","import_react","import_variant","import_react","React","import_react","import_react","import_react","_a","_a","import_react","isTunnelRequired","import_react","import_variant","React","approved","React","React","import_react","import_variant","import_react","import_variant","import_variant","import_react","import_react","React","error","site","React","import_react","import_react","React","React","React","React","React"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../node_modules/lodash/isString.js","../../cli-astro-commands/src/components/ReleaseCommand/index.ts","../../cli-astro-commands/src/components/ReleaseCommand/ReleaseCommand.tsx","../../cli-astro-commands/src/components/ReleaseCommand/Release.tsx","../../cli-astro-commands/src/components/ReleaseCommand/Steps/CreatePreview.tsx","../../cli-astro-commands/src/components/ReleaseCommand/app-flow/ReleaseApp.tsx","../../cli-astro-commands/src/components/ReleaseCommand/app-flow/Warnings.tsx","../../cli-astro-commands/src/components/extensions/useExtensions.tsx","../../cli-astro-commands/src/components/ReleaseCommand/app-flow/ReleaseComment.tsx","../../cli-astro-commands/src/components/ReleaseCommand/app-flow/ConfirmMinorVersion.tsx","../../cli-astro-commands/src/components/ReleaseCommand/app-flow/ChooseVersion.tsx","../../cli-astro-commands/src/components/ReleaseCommand/app-flow/NextSteps.tsx"],"sourcesContent":["var baseGetTag = require('./_baseGetTag'),\n isArray = require('./isArray'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nmodule.exports = isString;\n","export { ReleaseCommand } from './ReleaseCommand.js';\n","import React from 'react';\nimport type { FC } from 'react';\nimport { match } from 'variant';\nimport { useAsync, Spinner, Text } from '@wix/cli-ui-kit';\nimport { useProjectModel } from '../../model.js';\nimport { assertBuildOutputExists } from '../../files/assert-build-output-exists.js';\nimport { Release } from './Release.js';\nimport { ReleaseApp } from './app-flow/ReleaseApp.js';\nimport { ReleaseVersionType } from './app-flow/types.js';\n\ninterface ReleaseCommandProps {\n baseUrl?: string;\n label?: string;\n comment?: string;\n versionType?: ReleaseVersionType;\n}\n\nexport const ReleaseCommand: FC<ReleaseCommandProps> = (props) => {\n const {\n model: { projectFolder, config },\n } = useProjectModel();\n\n const { status } = useAsync(async () => {\n await assertBuildOutputExists(projectFolder);\n }, []);\n\n return match(status, {\n Error: () => null,\n Loading: () => (\n <Spinner text={<Text>Loading application details...</Text>} />\n ),\n Success: () => {\n if (config.projectType === 'Site') {\n return (\n <Release\n {...props}\n createMinorVersion={props.versionType === ReleaseVersionType.MINOR}\n />\n );\n }\n return (\n <ReleaseApp\n baseUrl={props.baseUrl}\n label={props.label}\n preEnteredComment={props.comment}\n preSelectedVersionType={props.versionType}\n />\n );\n },\n });\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { match } from 'variant';\nimport { Box, Text, Alert, Spinner, useAsyncCallback } from '@wix/cli-ui-kit';\nimport { useARMClient } from '@wix/arm-client';\nimport { useProjectModel } from '../../model.js';\nimport { CreatePreview } from './Steps/CreatePreview.js';\n\ninterface ReleaseProps {\n baseUrl?: string;\n label?: string;\n comment?: string;\n createMinorVersion: boolean;\n}\n\nexport const Release: FC<ReleaseProps> = ({\n baseUrl,\n label,\n createMinorVersion,\n comment,\n}) => {\n const {\n model: {\n config: { appId },\n },\n } = useProjectModel();\n\n const { release } = useARMClient();\n\n const releaseAction = useAsyncCallback(async (_, tag: string) => {\n const baseUrl = await release(appId, tag, {\n createMinorVersion,\n comment,\n });\n\n return {\n baseUrl,\n };\n });\n\n function onPreviewCreated({ previewId }: { previewId: string }) {\n return releaseAction.execute(previewId);\n }\n\n return (\n <>\n <CreatePreview\n baseUrl={baseUrl}\n label={label}\n onCreated={({ previewId }) => onPreviewCreated({ previewId })}\n />\n {match(releaseAction.status, {\n NotRequested: () => null,\n Error: () => null,\n Loading: () => <Spinner text={<Text>Releasing...</Text>} />,\n Success: ({ result: { baseUrl } }) => (\n <Box flexDirection=\"column\" gap={1}>\n <Alert type=\"success\">\n <Text bold>Site published on {baseUrl}</Text>\n </Alert>\n </Box>\n ),\n })}\n </>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Box, Text } from '@wix/cli-ui-kit';\nimport { PreviewCommand } from '../../PreviewCommand/index.js';\n\ninterface CreatePreviewProps {\n baseUrl?: string;\n label?: string;\n onCreated: (args: { previewId: string; previewUrl: string }) => void;\n}\n\nexport const CreatePreview: FC<CreatePreviewProps> = (props) => {\n const { baseUrl, label, onCreated } = props;\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n <Text>\n Before creating a new version, let's create a preview of your app\n </Text>\n <Box flexDirection=\"column\">\n <PreviewCommand\n baseUrl={baseUrl}\n label={label}\n onPreviewCreated={onCreated}\n environment=\"production\"\n />\n </Box>\n </Box>\n );\n};\n","import React, { useState } from 'react';\nimport type { FC } from 'react';\nimport { useARMClient } from '@wix/arm-client';\nimport isString from 'lodash/isString.js';\nimport { parse } from 'semver';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { Box, Text, Alert, Spinner, useAsyncCallback } from '@wix/cli-ui-kit';\nimport { match } from 'variant';\nimport { CreatePreview } from '../Steps/CreatePreview.js';\nimport { useProjectModel } from '../../../model.js';\nimport { ReleaseVersionType } from './types.js';\nimport { Warnings } from './Warnings.js';\nimport { ReleaseComment } from './ReleaseComment.js';\nimport { ConfirmMinorVersion } from './ConfirmMinorVersion.js';\nimport { ChooseVersion } from './ChooseVersion.js';\nimport { NextSteps } from './NextSteps.js';\n\ninterface ReleaseProps {\n baseUrl?: string;\n label?: string;\n preEnteredComment?: string;\n preSelectedVersionType?: ReleaseVersionType;\n}\n\nexport const ReleaseApp: FC<ReleaseProps> = ({\n baseUrl,\n label,\n preEnteredComment,\n preSelectedVersionType,\n}) => {\n const {\n model: {\n config: { appId },\n },\n } = useProjectModel();\n const { createDraftVersion, releaseDraftVersion } = useARMClient();\n\n const [tag, setTag] = useState<string>();\n const [comment, setComment] = useState<string | undefined>();\n const [versionType, setVersionType] = useState<ReleaseVersionType>();\n const [userShouldSelectVersion, setUserShouldSelectVersion] = useState(false);\n\n const createDraftAction = useAsyncCallback(async (_, tag: string) => {\n const { nextMajor, nextMinor } = await createDraftVersion(appId, tag);\n const appWasNeverReleased = nextMajor === '1.0.0' && !nextMinor;\n\n const parsedNextMajor = parse(nextMajor);\n if (parsedNextMajor == null) {\n throw new CliError({\n code: CliErrorCode.FailedToParseNextVersion({ version: nextMajor }),\n cause: undefined,\n });\n }\n\n return {\n nextMinor,\n nextMajor,\n appWasNeverReleased,\n latestMajor: parsedNextMajor.major - 1,\n };\n });\n\n const releaseDraftAction = useAsyncCallback(\n async (\n _,\n versionType: ReleaseVersionType,\n comment: string,\n latestMajor: number\n ) => {\n const result = await releaseDraftVersion(appId, {\n createNewMajor: versionType === ReleaseVersionType.MAJOR,\n notes: comment,\n latestMajor,\n });\n\n return result;\n }\n );\n\n async function onReleaseCommentEntered({\n tag,\n comment,\n }: {\n tag: string;\n comment: string;\n }) {\n setComment(comment);\n\n const result = await createDraftAction.execute(tag).catch(() => null);\n if (!result) {\n return;\n }\n\n const { appWasNeverReleased, nextMinor, latestMajor } = result;\n\n const chosenVersion = appWasNeverReleased\n ? ReleaseVersionType.MAJOR\n : preSelectedVersionType;\n\n if (\n preSelectedVersionType === ReleaseVersionType.MINOR &&\n (appWasNeverReleased || !nextMinor)\n ) {\n throw new CliError({\n cause: null,\n code: CliErrorCode.CannotReleaseMinorInNoninteractive(),\n });\n }\n\n if (chosenVersion) {\n void releaseDraftAction.execute(chosenVersion, comment, latestMajor);\n } else {\n setUserShouldSelectVersion(true);\n }\n }\n\n return (\n <>\n <CreatePreview\n baseUrl={baseUrl}\n label={label}\n onCreated={({ previewId }) => {\n setTag(previewId);\n\n if (isString(preEnteredComment)) {\n void onReleaseCommentEntered({\n tag: previewId,\n comment: preEnteredComment,\n });\n }\n }}\n />\n {tag && <Warnings />}\n {tag && !isString(preEnteredComment) && (\n <ReleaseComment\n onEntered={(comment) => onReleaseCommentEntered({ tag, comment })}\n />\n )}\n {isString(comment) &&\n match(createDraftAction.status, {\n NotRequested: () => null,\n Error: () => null,\n Loading: () => <Spinner text=\"Updating draft application version\" />,\n Success: ({ result: { nextMajor, nextMinor, latestMajor } }) => (\n <>\n {userShouldSelectVersion && (\n <ChooseVersion\n nextMinor={nextMinor}\n nextMajor={nextMajor}\n onChosen={(selectedVersionType) => {\n setVersionType(selectedVersionType);\n if (selectedVersionType === ReleaseVersionType.MAJOR) {\n void releaseDraftAction.execute(\n selectedVersionType,\n comment,\n latestMajor\n );\n }\n }}\n />\n )}\n {versionType === ReleaseVersionType.MINOR && (\n <ConfirmMinorVersion\n onConfirmed={() =>\n releaseDraftAction.execute(\n versionType,\n comment,\n latestMajor\n )\n }\n />\n )}\n </>\n ),\n })}\n {match(releaseDraftAction.status, {\n NotRequested: () => null,\n Error: () => null,\n Loading: () => <Spinner text=\"Releasing...\" />,\n Success: ({ result: { releasedVersion } }) => (\n <Box flexDirection=\"column\" gap={1}>\n <Alert type=\"success\">\n <Text bold>Version {releasedVersion} was created</Text>\n </Alert>\n <NextSteps />\n </Box>\n ),\n })}\n </>\n );\n};\n","import React from 'react';\nimport { Alert, Box, Notification } from '@wix/cli-ui-kit';\nimport { ComponentType } from '@wix/ambassador-devcenter-apps-v1-app-old/types';\nimport { useExtensions } from '../../extensions/useExtensions.js';\n\n// This Warning is relevant only to Webhooks, this is because webhook is not a real extension.\n// This is the only entity that will be updated the moment user _commit_ changes to the DC.\n// The change will be _immediately_ propagated to all versions.\nexport const Warnings = () => {\n const { getExtensions } = useExtensions();\n\n if (getExtensions(ComponentType.WEBHOOK).length === 0) {\n return null;\n }\n\n return (\n <Box flexDirection=\"column\" paddingBottom={1}>\n <Notification>\n <Alert type=\"warning\">\n Your project includes backend events. Once you proceed, any changes to\n events will be immediately deployed to production and take effect\n automatically, even without a new version release.\n </Alert>\n </Notification>\n </Box>\n );\n};\n","import { useCallback } from 'react';\nimport type { Component } from '@wix/cli-app-manifest';\nimport { useProjectModel } from '../../model.js';\n\ntype ComponentType = Component['compType'];\n\nexport function useExtensions() {\n const { model } = useProjectModel();\n\n const getExtensions = useCallback(\n <T extends ComponentType>(\n extensionType: T\n ): Array<Extract<Component, { compType: T }>> =>\n model.components.filter(\n (component): component is Extract<Component, { compType: T }> =>\n component.compType === extensionType\n ),\n [model.components]\n );\n\n return {\n getExtensions,\n };\n}\n","import React, { useCallback } from 'react';\nimport type { FC } from 'react';\nimport { TextInput } from '@wix/cli-ui-kit';\nimport { useWixCliAppBi } from '../../../bi-app/index.js';\n\ninterface ReleaseCommentProps {\n onEntered: (comment: string) => void;\n}\n\nexport const ReleaseComment: FC<ReleaseCommentProps> = (props) => {\n const { onEntered } = props;\n\n const bi = useWixCliAppBi();\n\n const validate = useCallback((value: string) => {\n if (value && value.length > 250) {\n return 'The comment is limited to a maximum of 250 characters';\n }\n return true;\n }, []);\n\n const question =\n \"Enter a comment describing any changes made to this version. This won't be shown to users (optional)\";\n\n return (\n <TextInput\n label={question}\n onSubmit={(answer) => {\n bi.cliFlowStepAnswered({\n question,\n questionKey: 'release_command.enter_release_comment',\n answer,\n });\n onEntered(answer);\n }}\n validate={validate}\n />\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Box, ConfirmInput } from '@wix/cli-ui-kit';\nimport { useWixCliAppBi } from '../../../bi-app/index.js';\n\ninterface ConfirmMinorVersionProps {\n onConfirmed: () => void;\n}\n\nexport const ConfirmMinorVersion: FC<ConfirmMinorVersionProps> = (props) => {\n const { onConfirmed } = props;\n\n const bi = useWixCliAppBi();\n\n const question =\n 'Changes will be visible to your app users immediately and can’t be undone. Do you want to continue?';\n\n return (\n <Box flexDirection=\"column\" paddingBottom={1}>\n <ConfirmInput\n label={question}\n initialValue={true}\n onSubmit={(confirm) => {\n bi.cliFlowStepAnswered({\n question,\n questionKey: 'release_command.confirm_version_creation',\n answer: String(confirm),\n });\n\n if (confirm) {\n onConfirmed();\n }\n }}\n />\n </Box>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport type { SelectOption } from '@wix/cli-ui-kit';\nimport {\n Link,\n Text,\n SelectInput,\n SelectOptionAvailability,\n} from '@wix/cli-ui-kit';\nimport { useWixCliAppBi } from '../../../bi-app/index.js';\nimport { ReleaseVersionType } from './types.js';\n\ninterface ChooseVersionProps {\n nextMinor?: string;\n nextMajor: string;\n onChosen: (props: ReleaseVersionType) => void;\n}\n\nexport const ChooseVersion: FC<ChooseVersionProps> = (props) => {\n const { nextMinor, nextMajor, onChosen } = props;\n\n const bi = useWixCliAppBi();\n\n const options: Array<SelectOption<ReleaseVersionType>> = [\n {\n title: nextMinor ? `Minor (${nextMinor})` : 'Minor',\n description: 'update doesn’t require Wix user consent',\n value: ReleaseVersionType.MINOR,\n availability: nextMinor\n ? SelectOptionAvailability.Enabled()\n : SelectOptionAvailability.Disabled({\n reason: (\n <Text>\n Recent changes you made require this release to be a major\n release. <Link url=\"https://wix.to/ZR80Y7p\">Learn more</Link>\n </Text>\n ),\n }),\n },\n {\n title: `Major (${nextMajor})`,\n description: 'update requires Wix user consent',\n value: ReleaseVersionType.MAJOR,\n },\n ];\n\n const question = 'What type of version would you like to create?';\n\n return (\n <SelectInput<ReleaseVersionType>\n label={question}\n options={options}\n initialIndex={nextMinor ? 0 : 1}\n onSubmit={({ value }) => {\n bi.cliFlowStepAnswered({\n question,\n questionKey: 'release_command.version_type_question',\n answer: value,\n });\n onChosen(value);\n }}\n />\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Box, Text, Link, Cart, Statistics } from '@wix/cli-ui-kit';\nimport { useProjectModel } from '../../../model.js';\n\nexport const NextSteps: FC = () => {\n const {\n model: {\n config: { appId },\n },\n } = useProjectModel();\n\n const homeUrl = `https://dev.wix.com/apps/${appId}/home?referralInfo=wix-cli`;\n const statisticsUrl = `https://dev.wix.com/apps/${appId}/statistics?referralInfo=wix-cli`;\n\n return (\n <Box flexDirection=\"column\" gap={1}>\n <Text bold>Next Steps:</Text>\n <Text>\n <Statistics /> View your app reviews and statistics in the{' '}\n <Link url={statisticsUrl}>app dashboard</Link>\n </Text>\n <Text>\n <Cart /> Choose your distribution method from the{' '}\n <Link url={homeUrl}>app dashboard</Link>\n </Text>\n </Box>\n );\n};\n"],"mappings":"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","names":["isString","import_react","import_variant","import_react","React","baseUrl","React","import_react","import_variant","import_react","import_react","React","import_react","React","import_react","React","import_react","React","import_react","React","tag","versionType","comment","React","isString","React"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../package.json","../src/bi.ts"],"sourcesContent":["{\n \"name\": \"@wix/cli\",\n \"description\": \"CLI tool for building Wix sites and applications\",\n \"version\": \"1.1.148\",\n \"bin\": {\n \"wix\": \"bin/wix.cjs\"\n },\n \"dependencies\": {\n \"node-gyp\": \"^8.4.1\"\n },\n \"devDependencies\": {\n \"@commander-js/extra-typings\": \"^13.0.0\",\n \"@types/columnify\": \"^1.5.4\",\n \"@types/react\": \"^18.3.3\",\n \"@types/semver\": \"^7.5.8\",\n \"@wix/bi-logger-wix-cli\": \"^1.48.0\",\n \"@wix/cli-astro-commands\": \"workspace:*\",\n \"@wix/cli-auth\": \"workspace:*\",\n \"@wix/cli-command-contract\": \"workspace:*\",\n \"@wix/cli-core-definitions\": \"workspace:*\",\n \"@wix/cli-debug-log\": \"workspace:*\",\n \"@wix/cli-error\": \"workspace:*\",\n \"@wix/cli-error-reporting\": \"workspace:*\",\n \"@wix/cli-fs\": \"workspace:*\",\n \"@wix/cli-http-client-react\": \"workspace:*\",\n \"@wix/cli-logger\": \"workspace:*\",\n \"@wix/cli-panorama\": \"workspace:*\",\n \"@wix/cli-site\": \"workspace:*\",\n \"@wix/cli-site-live\": \"workspace:*\",\n \"@wix/cli-site-old\": \"workspace:*\",\n \"@wix/cli-telemetry\": \"workspace:*\",\n \"@wix/cli-telemetry-react\": \"workspace:*\",\n \"@wix/cli-test-overrides\": \"workspace:*\",\n \"@wix/cli-ui-kit\": \"workspace:*\",\n \"@wix/cli-user-config\": \"workspace:*\",\n \"@wix/cli-version-manager\": \"workspace:*\",\n \"@wix/tsup-configs\": \"workspace:*\",\n \"chalk\": \"^5.4.1\",\n \"columnify\": \"^1.6.0\",\n \"commander\": \"^13.0.0\",\n \"globby\": \"^14.1.0\",\n \"react\": \"^18.3.1\",\n \"semver\": \"^7.6.3\",\n \"variant\": \"^3.0.0-dev.27\",\n \"zod\": \"^3.24.2\"\n },\n \"engines\": {\n \"node\": \">= 20.11.0\"\n },\n \"files\": [\n \"bin\",\n \"build\",\n \"templates\"\n ],\n \"keywords\": [\n \"wix\",\n \"wix-cli\"\n ],\n \"optionalDependencies\": {\n \"fsevents\": \"^2.3.2\"\n },\n \"perfer\": {\n \"bundleSize\": {\n \"files\": [\n {\n \"glob\": \"./build/index.js\",\n \"maxSize\": \"985kb\"\n }\n ]\n }\n },\n \"publishConfig\": {\n \"registry\": \"https://registry.npmjs.org/\",\n \"access\": \"public\",\n \"versionBumpStrategy\": \"manual\",\n \"logLevel\": \"verbose\"\n },\n \"scripts\": {\n \"build\": \"run -T tsup\",\n \"build:watch\": \"run -T build:watch --filter='@wix/cli'\",\n \"test\": \"yarn workspace @wix/cli-core-spec run test\",\n \"test:watch\": \"yarn workspace @wix/cli-core-spec run test:watch\",\n \"typecheck\": \"run -T tsc --noEmit\"\n },\n \"type\": \"module\",\n \"wix\": {\n \"artifact\": {\n \"groupId\": \"com.wixpress.npm\",\n \"artifactId\": \"wix-cli\"\n },\n \"validations\": {\n \"postBuild\": [\n \"typecheck\"\n ]\n }\n }\n}\n","import { randomUUID } from 'node:crypto';\nimport type { Command } from '@commander-js/extra-typings';\nimport type { ErrorReporter } from '@wix/cli-error-reporting';\nimport type { BiLogger } from '@wix/cli-telemetry';\nimport { wixCliCliError } from '@wix/bi-logger-wix-cli/v2';\nimport { isCliSystemError } from '@wix/cli-error';\nimport {\n createBiLogger as createCliBiLogger,\n reportCommandStartEvent as originalReportCommandStartEvent,\n} from '@wix/cli-telemetry';\nimport packageJson from '../package.json' with { type: 'json' };\n\nexport { addUserFields } from '@wix/cli-telemetry';\n\nexport const createBiLogger = async (\n errorReporter: ErrorReporter,\n userId?: string\n) => {\n const biLogger = await createCliBiLogger(\n {\n cliSessionId: randomUUID(),\n },\n userId\n );\n\n const environment = process.env.WIX_RUNTIME_ENVIRONMENT ?? '';\n\n if (environment) {\n errorReporter.setTag('environment', environment);\n biLogger.updateDefaults({ environment });\n }\n\n if (process.env.TRACKING_ID) {\n biLogger.updateDefaults({ tracking_id: process.env.TRACKING_ID });\n errorReporter.setTag('tracking_id', process.env.TRACKING_ID);\n }\n\n errorReporter.on('errorReported', (error) => {\n void biLogger.report(\n wixCliCliError({\n errorMessage: error.message,\n errorName: error.name,\n errorType: isCliSystemError(error) ? 'SystemError' : 'UserError',\n })\n );\n });\n\n return {\n biLogger,\n };\n};\n\nexport const reportCommandStartEvent = (\n biLogger: BiLogger,\n command: Command<unknown[]>\n) => {\n return originalReportCommandStartEvent({\n biLogger,\n cliVersion: packageJson.version,\n command,\n flow: null,\n });\n};\n"],"mappings":"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","names":["createBiLogger","reportCommandStartEvent"]}