@wix/cli 1.1.149 → 1.1.151
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.
- package/agents/instructions.md +13 -0
- package/build/{DevCommand-FM4GUL35.js → DevCommand-AKZOYT3D.js} +8 -12
- package/build/DevCommand-AKZOYT3D.js.map +1 -0
- package/build/{EnvPullCommand-22WYBFTO.js → EnvPullCommand-OJPZK4HO.js} +3 -3
- package/build/{EnvRemoveCommand-H6VFMJLM.js → EnvRemoveCommand-EFTD4BAH.js} +2 -2
- package/build/{EnvSetCommand-TDY5NJDM.js → EnvSetCommand-UCGMQ7YA.js} +2 -2
- package/build/{GenerateCommand-WJB2UILL.js → GenerateCommand-VTPLKN56.js} +31 -89
- package/build/{GenerateCommand-WJB2UILL.js.map → GenerateCommand-VTPLKN56.js.map} +1 -1
- package/build/{LoginCommand-EWEM57CT.js → LoginCommand-LTLW4BFV.js} +2 -2
- package/build/{PreviewCommand-7CZDBECJ.js → PreviewCommand-2FDI77DO.js} +5 -5
- package/build/{PromoteCommand-4W7JO3OG.js → PromoteCommand-R47PKPLK.js} +5 -5
- package/build/{ReleaseCommand-NZAM3UIY.js → ReleaseCommand-LBAB2XQU.js} +7 -8
- package/build/ReleaseCommand-LBAB2XQU.js.map +1 -0
- package/build/{chunk-WBI2P4YN.js → chunk-4GNMRYCF.js} +2 -2
- package/build/{chunk-EVV3LZAI.js → chunk-5OGPTD3P.js} +2 -2
- package/build/{chunk-6B3FQNMV.js → chunk-AEHMTA2I.js} +2 -2
- package/build/{chunk-Y7SZOWGV.js → chunk-CU2BGZA2.js} +2 -2
- package/build/{chunk-Y7SZOWGV.js.map → chunk-CU2BGZA2.js.map} +1 -1
- package/build/{chunk-VT3OGC5F.js → chunk-HGZQMZI7.js} +3 -3
- package/build/{chunk-VT3OGC5F.js.map → chunk-HGZQMZI7.js.map} +1 -1
- package/build/{chunk-W34JWURA.js → chunk-M4ZFK5EV.js} +29 -1
- package/build/chunk-M4ZFK5EV.js.map +1 -0
- package/build/chunk-MOYAGX4N.js +145 -0
- package/build/chunk-MOYAGX4N.js.map +1 -0
- package/build/{chunk-ECEBTPKZ.js → chunk-TLUNTJWC.js} +97 -34
- package/build/chunk-TLUNTJWC.js.map +1 -0
- package/build/{chunk-7CZ66YXW.js → chunk-Y7ILZNU5.js} +45 -48
- package/build/{chunk-7CZ66YXW.js.map → chunk-Y7ILZNU5.js.map} +1 -1
- package/build/{env-pull-ENQPMILC.js → env-pull-22BEZ6XL.js} +4 -4
- package/build/index.js +6 -6
- package/build/{preview-MGGWEWUO.js → preview-BMWLNZ42.js} +6 -6
- package/build/{render-command-TH5F34LX.js → render-command-HAAV4PV6.js} +3 -3
- package/build/{render-command-YIP7OO3V.js → render-command-KHQ7KK5G.js} +2 -2
- package/build/{src-S345RUFD.js → src-GTVJ4LDY.js} +41 -21
- package/build/src-GTVJ4LDY.js.map +1 -0
- package/package.json +2 -2
- package/templates/astro/service-plugin/staff-sorting-provider/dependencies.json +6 -0
- package/templates/astro/service-plugin/staff-sorting-provider/files/plugin.json.ejs +10 -0
- package/templates/astro/service-plugin/staff-sorting-provider/files/plugin.ts.ejs +12 -0
- package/build/DevCommand-FM4GUL35.js.map +0 -1
- package/build/ReleaseCommand-NZAM3UIY.js.map +0 -1
- package/build/chunk-ECEBTPKZ.js.map +0 -1
- package/build/chunk-W34JWURA.js.map +0 -1
- package/build/src-S345RUFD.js.map +0 -1
- /package/build/{EnvPullCommand-22WYBFTO.js.map → EnvPullCommand-OJPZK4HO.js.map} +0 -0
- /package/build/{EnvRemoveCommand-H6VFMJLM.js.map → EnvRemoveCommand-EFTD4BAH.js.map} +0 -0
- /package/build/{EnvSetCommand-TDY5NJDM.js.map → EnvSetCommand-UCGMQ7YA.js.map} +0 -0
- /package/build/{LoginCommand-EWEM57CT.js.map → LoginCommand-LTLW4BFV.js.map} +0 -0
- /package/build/{PreviewCommand-7CZDBECJ.js.map → PreviewCommand-2FDI77DO.js.map} +0 -0
- /package/build/{PromoteCommand-4W7JO3OG.js.map → PromoteCommand-R47PKPLK.js.map} +0 -0
- /package/build/{chunk-WBI2P4YN.js.map → chunk-4GNMRYCF.js.map} +0 -0
- /package/build/{chunk-EVV3LZAI.js.map → chunk-5OGPTD3P.js.map} +0 -0
- /package/build/{chunk-6B3FQNMV.js.map → chunk-AEHMTA2I.js.map} +0 -0
- /package/build/{env-pull-ENQPMILC.js.map → env-pull-22BEZ6XL.js.map} +0 -0
- /package/build/{preview-MGGWEWUO.js.map → preview-BMWLNZ42.js.map} +0 -0
- /package/build/{render-command-TH5F34LX.js.map → render-command-HAAV4PV6.js.map} +0 -0
- /package/build/{render-command-YIP7OO3V.js.map → render-command-KHQ7KK5G.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-
|
|
6
|
+
} from "./chunk-4GNMRYCF.js";
|
|
7
7
|
import {
|
|
8
8
|
EnvPullCommand
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-AEHMTA2I.js";
|
|
10
10
|
import "./chunk-4HUDTFI7.js";
|
|
11
11
|
import "./chunk-PLRVWQKC.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-M4ZFK5EV.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-
|
|
48
|
+
//# sourceMappingURL=env-pull-22BEZ6XL.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-
|
|
21
|
+
} from "./chunk-CU2BGZA2.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-
|
|
4221
|
-
const { renderCommand } = await import("./render-command-
|
|
4220
|
+
const { LoginCommand } = await import("./LoginCommand-LTLW4BFV.js");
|
|
4221
|
+
const { renderCommand } = await import("./render-command-KHQ7KK5G.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-
|
|
4238
|
+
const { renderCommand } = await import("./render-command-KHQ7KK5G.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-
|
|
4278
|
+
const { renderCommand } = await import("./render-command-KHQ7KK5G.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-
|
|
4419
|
+
return import("./src-GTVJ4LDY.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-
|
|
6
|
+
} from "./chunk-4GNMRYCF.js";
|
|
7
7
|
import {
|
|
8
8
|
PreviewCommand
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-TLUNTJWC.js";
|
|
10
|
+
import "./chunk-Y7ILZNU5.js";
|
|
11
|
+
import "./chunk-5OGPTD3P.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-
|
|
19
|
+
import "./chunk-M4ZFK5EV.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-
|
|
66
|
+
//# sourceMappingURL=preview-BMWLNZ42.js.map
|
|
@@ -3,8 +3,8 @@ const require = _createRequire(import.meta.url);
|
|
|
3
3
|
import {
|
|
4
4
|
renderCommand,
|
|
5
5
|
runCommand
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-HGZQMZI7.js";
|
|
7
|
+
import "./chunk-M4ZFK5EV.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-
|
|
31
|
+
//# sourceMappingURL=render-command-HAAV4PV6.js.map
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
package_default,
|
|
12
12
|
reportCommandStartEvent
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-CU2BGZA2.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-
|
|
70
|
+
//# sourceMappingURL=render-command-KHQ7KK5G.js.map
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { createRequire as _createRequire } from 'node:module';
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
docsExtensionTypeSchema
|
|
5
|
+
} from "./chunk-MOYAGX4N.js";
|
|
3
6
|
import {
|
|
4
7
|
ReleaseVersionType
|
|
5
8
|
} from "./chunk-2IJTJJEM.js";
|
|
6
9
|
import {
|
|
7
10
|
renderCommand,
|
|
8
11
|
runCommand
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-HGZQMZI7.js";
|
|
13
|
+
import "./chunk-M4ZFK5EV.js";
|
|
11
14
|
import "./chunk-EYV3FS5W.js";
|
|
12
15
|
import {
|
|
13
16
|
NO_TTY_JSON_OUTPUT_OPTION
|
|
@@ -56,7 +59,7 @@ var buildCommand = (services, cliVersion) => createCommand("build").description(
|
|
|
56
59
|
).allowExcessArguments(true).allowUnknownOption(true).passThroughOptions(true).action(async (_, command) => {
|
|
57
60
|
const { execa } = await import("./execa-MR2E3266.js");
|
|
58
61
|
const { getRepoType, createPackageManager } = await import("./src-SUNRRUCG.js");
|
|
59
|
-
const { runCommand: runCommand2 } = await import("./render-command-
|
|
62
|
+
const { runCommand: runCommand2 } = await import("./render-command-HAAV4PV6.js");
|
|
60
63
|
await runCommand2(command, services, cliVersion, async (model) => {
|
|
61
64
|
const repoType = await getRepoType(model.projectFolder);
|
|
62
65
|
const packageManager = await createPackageManager(repoType);
|
|
@@ -84,11 +87,11 @@ var envPullCommand = (services, cliVersion) => {
|
|
|
84
87
|
).action(async (opts, command) => {
|
|
85
88
|
if (opts.json) {
|
|
86
89
|
return runCommand(command, services, cliVersion, async (model) => {
|
|
87
|
-
const { nonInteractiveEnvPull } = await import("./env-pull-
|
|
90
|
+
const { nonInteractiveEnvPull } = await import("./env-pull-22BEZ6XL.js");
|
|
88
91
|
return nonInteractiveEnvPull(services, model);
|
|
89
92
|
});
|
|
90
93
|
}
|
|
91
|
-
const { EnvPullCommand } = await import("./EnvPullCommand-
|
|
94
|
+
const { EnvPullCommand } = await import("./EnvPullCommand-OJPZK4HO.js");
|
|
92
95
|
await renderCommand(command, services, cliVersion, /* @__PURE__ */ import_react.default.createElement(EnvPullCommand, null));
|
|
93
96
|
});
|
|
94
97
|
};
|
|
@@ -98,7 +101,7 @@ init_esm_shims();
|
|
|
98
101
|
var import_react2 = __toESM(require_react(), 1);
|
|
99
102
|
var envSetCommand = (services, cliVersion) => {
|
|
100
103
|
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-
|
|
104
|
+
const { EnvSetCommand } = await import("./EnvSetCommand-UCGMQ7YA.js");
|
|
102
105
|
const variable = { key: opts.key, value: opts.value };
|
|
103
106
|
await renderCommand(
|
|
104
107
|
command,
|
|
@@ -114,7 +117,7 @@ init_esm_shims();
|
|
|
114
117
|
var import_react3 = __toESM(require_react(), 1);
|
|
115
118
|
var envRemoveCommand = (services, cliVersion) => {
|
|
116
119
|
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-
|
|
120
|
+
const { EnvRemoveCommand } = await import("./EnvRemoveCommand-EFTD4BAH.js");
|
|
118
121
|
await renderCommand(
|
|
119
122
|
command,
|
|
120
123
|
services,
|
|
@@ -161,6 +164,13 @@ function validateReleaseComment(value) {
|
|
|
161
164
|
"The comment is limited to a maximum of 250 characters"
|
|
162
165
|
);
|
|
163
166
|
}
|
|
167
|
+
function validateDocsExtensionType(value) {
|
|
168
|
+
const parsed = docsExtensionTypeSchema.safeParse(value);
|
|
169
|
+
if (parsed.success) {
|
|
170
|
+
return parsed.data;
|
|
171
|
+
}
|
|
172
|
+
throw new InvalidArgumentError("Value must be a valid extension type");
|
|
173
|
+
}
|
|
164
174
|
|
|
165
175
|
// ../cli-astro-commands/src/commands/preview.tsx
|
|
166
176
|
var previewCommand = (services, cliVersion) => {
|
|
@@ -175,14 +185,14 @@ var previewCommand = (services, cliVersion) => {
|
|
|
175
185
|
new Option(NO_TTY_JSON_OUTPUT_OPTION, "Output in JSON format").hideHelp()
|
|
176
186
|
).action(async (options, command) => {
|
|
177
187
|
const { baseUrl, json, label } = options;
|
|
178
|
-
const { renderCommand: renderCommand2, runCommand: runCommand2 } = await import("./render-command-
|
|
188
|
+
const { renderCommand: renderCommand2, runCommand: runCommand2 } = await import("./render-command-HAAV4PV6.js");
|
|
179
189
|
if (json) {
|
|
180
190
|
return runCommand2(command, services, cliVersion, async (model) => {
|
|
181
|
-
const { nonInteractivePreview } = await import("./preview-
|
|
191
|
+
const { nonInteractivePreview } = await import("./preview-BMWLNZ42.js");
|
|
182
192
|
return nonInteractivePreview(services, model, { baseUrl, label });
|
|
183
193
|
});
|
|
184
194
|
}
|
|
185
|
-
const { PreviewCommand } = await import("./PreviewCommand-
|
|
195
|
+
const { PreviewCommand } = await import("./PreviewCommand-2FDI77DO.js");
|
|
186
196
|
await renderCommand2(
|
|
187
197
|
command,
|
|
188
198
|
services,
|
|
@@ -205,8 +215,8 @@ var promoteCommand = (services, cliVersion) => {
|
|
|
205
215
|
new Option("-l, --label <label>", "A custom label for this preview").argParser(validateLabel).hideHelp()
|
|
206
216
|
).action(async (options, command) => {
|
|
207
217
|
const { baseUrl, label } = options;
|
|
208
|
-
const { renderCommand: renderCommand2 } = await import("./render-command-
|
|
209
|
-
const { PromoteCommand } = await import("./PromoteCommand-
|
|
218
|
+
const { renderCommand: renderCommand2 } = await import("./render-command-HAAV4PV6.js");
|
|
219
|
+
const { PromoteCommand } = await import("./PromoteCommand-R47PKPLK.js");
|
|
210
220
|
await renderCommand2(
|
|
211
221
|
command,
|
|
212
222
|
services,
|
|
@@ -237,8 +247,8 @@ var releaseCommand = (services, cliVersion) => {
|
|
|
237
247
|
"The type of version you would like to create"
|
|
238
248
|
).choices(["major", "minor"])
|
|
239
249
|
).action(async (options, command) => {
|
|
240
|
-
const { renderCommand: renderCommand2 } = await import("./render-command-
|
|
241
|
-
const { ReleaseCommand } = await import("./ReleaseCommand-
|
|
250
|
+
const { renderCommand: renderCommand2 } = await import("./render-command-HAAV4PV6.js");
|
|
251
|
+
const { ReleaseCommand } = await import("./ReleaseCommand-LBAB2XQU.js");
|
|
242
252
|
const { baseUrl, label, comment } = options;
|
|
243
253
|
const versionType = options.versionType ? {
|
|
244
254
|
major: ReleaseVersionType.MAJOR,
|
|
@@ -280,8 +290,8 @@ var devCommand = (services, cliVersion) => {
|
|
|
280
290
|
"The base url for when static files have been uploaded to an external cdn"
|
|
281
291
|
).argParser(validateBase).hideHelp()
|
|
282
292
|
).action(async (options, command) => {
|
|
283
|
-
const { DevCommand } = await import("./DevCommand-
|
|
284
|
-
const { renderCommand: renderCommand2 } = await import("./render-command-
|
|
293
|
+
const { DevCommand } = await import("./DevCommand-AKZOYT3D.js");
|
|
294
|
+
const { renderCommand: renderCommand2 } = await import("./render-command-HAAV4PV6.js");
|
|
285
295
|
await renderCommand2(
|
|
286
296
|
command,
|
|
287
297
|
services,
|
|
@@ -302,10 +312,20 @@ var devCommand = (services, cliVersion) => {
|
|
|
302
312
|
init_esm_shims();
|
|
303
313
|
var import_react8 = __toESM(require_react(), 1);
|
|
304
314
|
var generateCommand = (services, cliVersion) => {
|
|
305
|
-
return createCommand("generate").description("Generate a new extension for your project").
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
315
|
+
return createCommand("generate").description("Generate a new extension for your project").option(
|
|
316
|
+
"--type <type>",
|
|
317
|
+
"Extension type to generate",
|
|
318
|
+
validateDocsExtensionType
|
|
319
|
+
).action(async (options, command) => {
|
|
320
|
+
const { GenerateCommand } = await import("./GenerateCommand-VTPLKN56.js");
|
|
321
|
+
const { renderCommand: renderCommand2 } = await import("./render-command-HAAV4PV6.js");
|
|
322
|
+
const { type } = options;
|
|
323
|
+
await renderCommand2(
|
|
324
|
+
command,
|
|
325
|
+
services,
|
|
326
|
+
cliVersion,
|
|
327
|
+
/* @__PURE__ */ import_react8.default.createElement(GenerateCommand, { docsExtensionType: type })
|
|
328
|
+
);
|
|
309
329
|
});
|
|
310
330
|
};
|
|
311
331
|
|
|
@@ -316,4 +336,4 @@ var getRootCommand = async (services, cliVersion) => {
|
|
|
316
336
|
export {
|
|
317
337
|
getRootCommand
|
|
318
338
|
};
|
|
319
|
-
//# sourceMappingURL=src-
|
|
339
|
+
//# sourceMappingURL=src-GTVJ4LDY.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';\nimport { docsExtensionTypeSchema } from '../components/GenerateCommand/docsExtensionType.js';\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\nexport function validateDocsExtensionType(value: string) {\n const parsed = docsExtensionTypeSchema.safeParse(value);\n\n if (parsed.success) {\n return parsed.data;\n }\n\n throw new InvalidArgumentError('Value must be a valid extension type');\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';\nimport { validateDocsExtensionType } from './validations.js';\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 .option(\n '--type <type>',\n 'Extension type to generate',\n validateDocsExtensionType\n )\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 const { type } = options;\n await renderCommand(\n command,\n services,\n cliVersion,\n <GenerateCommand docsExtensionType={type} />\n );\n });\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;ACAA;;;ACAA;AAGO,IAAM,eAAe,CAAC,UAA2B,eACtD,cAAc,OAAO,EAClB;AAAA,EACC;AACF,EACC,qBAAqB,IAAI,EACzB,mBAAmB,IAAI,EACvB,mBAAmB,IAAI,EACvB,OAAO,OAAO,GAAG,YAAY;AAC5B,QAAM,EAAE,MAAM,IAAI,MAAM,OAAO,qBAAO;AAEtC,QAAM,EAAE,aAAa,qBAAqB,IAAI,MAAM,OAClD,mBACF;AAEA,QAAM,EAAE,YAAAA,YAAW,IAAI,MAAM,OAAO,8BAAqB;AAEzD,QAAMA,YAAW,SAAS,UAAU,YAAY,OAAO,UAAU;AAC/D,UAAM,WAAW,MAAM,YAAY,MAAM,aAAa;AACtD,UAAM,iBAAiB,MAAM,qBAAqB,QAAQ;AAE1D,UAAM,EAAE,MAAM,KAAK,IAAI,eAAe;AAAA,MACpC,CAAC,SAAS,OAAO,EAAE,OAAO,QAAQ,IAAI;AAAA,IACxC;AAEA,UAAM,MAAM,MAAM,MAAM;AAAA,MACtB,KAAK,MAAM;AAAA,MACX,OAAO;AAAA,IACT,CAAC;AAAA,EACH,CAAC;AACH,CAAC;;;ACjCL;;;ACAA;AAAA,mBAAkB;AAMX,IAAM,iBAAiB,CAC5B,UACA,eACG;AACH,SAAO,cAAc,MAAM,EACxB;AAAA,IACC;AAAA,EACF,EACC;AAAA,IACC,IAAI,OAAO,2BAA2B,uBAAuB,EAAE,SAAS;AAAA,EAC1E,EACC,OAAO,OAAO,MAAM,YAAY;AAC/B,QAAI,KAAK,MAAM;AACb,aAAO,WAAW,SAAS,UAAU,YAAY,OAAO,UAAU;AAChE,cAAM,EAAE,sBAAsB,IAAI,MAAM,OACtC,wBACF;AACA,eAAO,sBAAsB,UAAU,KAAK;AAAA,MAC9C,CAAC;AAAA,IACH;AAEA,UAAM,EAAE,eAAe,IAAI,MAAM,OAC/B,8BACF;AAEA,UAAM,cAAc,SAAS,UAAU,YAAY,6BAAAC,QAAA,cAAC,oBAAe,CAAE;AAAA,EACvE,CAAC;AACL;;;ACjCA;AAAA,IAAAC,gBAAkB;AAKX,IAAM,gBAAgB,CAC3B,UACA,eACG;AACH,SAAO,cAAc,KAAK,EACvB,YAAY,2BAA2B,EACvC,eAAe,eAAe,sBAAsB,EACpD,eAAe,mBAAmB,uBAAuB,EACzD,OAAO,OAAO,MAAM,YAAY;AAC/B,UAAM,EAAE,cAAc,IAAI,MAAM,OAC9B,6BACF;AAEA,UAAM,WAAW,EAAE,KAAK,KAAK,KAAK,OAAO,KAAK,MAAM;AAEpD,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAC,QAAA,cAAC,iBAAc,UAAoB;AAAA,IACrC;AAAA,EACF,CAAC;AACL;;;AC3BA;AAAA,IAAAC,gBAAkB;AAKX,IAAM,mBAAmB,CAC9B,UACA,eACG;AACH,SAAO,cAAc,QAAQ,EAC1B,YAAY,iCAAiC,EAC7C,eAAe,eAAe,sBAAsB,EACpD,OAAO,OAAO,MAAM,YAAY;AAC/B,UAAM,EAAE,iBAAiB,IAAI,MAAM,OACjC,gCACF;AAEA,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAC,QAAA,cAAC,oBAAiB,aAAa,KAAK,KAAK;AAAA,IAC3C;AAAA,EACF,CAAC;AACL;;;AHlBO,IAAM,aAAa,CAAC,UAA2B,eAAuB;AAC3E,SAAO,cAAc,KAAK,EACvB,YAAY,iCAAiC,EAC7C,WAAW,eAAe,UAAU,UAAU,CAAC,EAC/C,WAAW,cAAc,UAAU,UAAU,CAAC,EAC9C,WAAW,iBAAiB,UAAU,UAAU,CAAC;AACtD;;;AIZA;AAAA,IAAAC,gBAAkB;;;ACAlB;AAIO,SAAS,aAAa,OAAe;AAC1C,QAAM,SAAS,iBAAE,OAAO,EAAE,IAAI,EAAE,UAAU,KAAK;AAE/C,MAAI,OAAO,SAAS;AAClB,WAAO,OAAO;AAAA,EAChB;AAEA,QAAM,IAAI,qBAAqB,2BAA2B;AAC5D;AAEA,IAAM,mBAAmB;AAElB,SAAS,cAAc,OAAe;AAC3C,QAAM,SAAS,iBAAE,OAAO,EAAE,IAAI,gBAAgB,EAAE,UAAU,KAAK;AAE/D,MAAI,OAAO,SAAS;AAClB,WAAO,OAAO;AAAA,EAChB;AAEA,QAAM,IAAI;AAAA,IACR,uBAAuB,gBAAgB;AAAA,EACzC;AACF;AAEO,SAAS,uBAAuB,OAAe;AACpD,QAAM,SAAS,iBAAE,OAAO,EAAE,IAAI,GAAG,EAAE,UAAU,KAAK;AAElD,MAAI,OAAO,SAAS;AAClB,WAAO,OAAO;AAAA,EAChB;AAEA,QAAM,IAAI;AAAA,IACR;AAAA,EACF;AACF;AAEO,SAAS,0BAA0B,OAAe;AACvD,QAAM,SAAS,wBAAwB,UAAU,KAAK;AAEtD,MAAI,OAAO,SAAS;AAClB,WAAO,OAAO;AAAA,EAChB;AAEA,QAAM,IAAI,qBAAqB,sCAAsC;AACvE;;;AD1CO,IAAM,iBAAiB,CAC5B,UACA,eACG;AACH,SAAO,cAAc,SAAS,EAC3B;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF,EACG,UAAU,YAAY,EACtB,SAAS;AAAA,EACd,EACC;AAAA,IACC,IAAI,OAAO,uBAAuB,iCAAiC,EAChE,UAAU,aAAa,EACvB,SAAS;AAAA,EACd,EACC,UAAU,IAAI,OAAO,iBAAiB,cAAc,EAAE,SAAS,CAAC,EAChE;AAAA,IACC,IAAI,OAAO,2BAA2B,uBAAuB,EAAE,SAAS;AAAA,EAC1E,EACC,OAAO,OAAO,SAAS,YAAY;AAClC,UAAM,EAAE,SAAS,MAAM,MAAM,IAAI;AAEjC,UAAM,EAAE,eAAAC,gBAAe,YAAAC,YAAW,IAAI,MAAM,OAAO,8BAAqB;AAExE,QAAI,MAAM;AACR,aAAOA,YAAW,SAAS,UAAU,YAAY,OAAO,UAAU;AAChE,cAAM,EAAE,sBAAsB,IAAI,MAAM,OACtC,uBACF;AACA,eAAO,sBAAsB,UAAU,OAAO,EAAE,SAAS,MAAM,CAAC;AAAA,MAClE,CAAC;AAAA,IACH;AAEA,UAAM,EAAE,eAAe,IAAI,MAAM,OAC/B,8BACF;AAEA,UAAMD;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAE,QAAA,cAAC,kBAAe,SAAkB,OAAc,aAAY,WAAU;AAAA,IACxE;AAAA,EACF,CAAC;AACL;;;AErDA;AAAA,IAAAC,gBAAkB;AAKX,IAAM,iBAAiB,CAC5B,UACA,eACG;AACH,SAAO,cAAc,SAAS,EAC3B;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF,EACG,UAAU,YAAY,EACtB,SAAS;AAAA,EACd,EACC;AAAA,IACC,IAAI,OAAO,uBAAuB,iCAAiC,EAChE,UAAU,aAAa,EACvB,SAAS;AAAA,EACd,EACC,OAAO,OAAO,SAAS,YAAY;AAClC,UAAM,EAAE,SAAS,MAAM,IAAI;AAE3B,UAAM,EAAE,eAAAC,eAAc,IAAI,MAAM,OAAO,8BAAqB;AAE5D,UAAM,EAAE,eAAe,IAAI,MAAM,OAC/B,8BACF;AAEA,UAAMA;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAC,QAAA,cAAC,kBAAe,SAAkB,OAAc;AAAA,IAClD;AAAA,EACF,CAAC;AACL;;;ACvCA;AAAA,IAAAC,gBAAkB;AAUX,IAAM,iBAAiB,CAC5B,UACA,eACG;AACH,SAAO,cAAc,SAAS,EAC3B,YAAY,2CAA2C,EACvD;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF,EACG,UAAU,YAAY,EACtB,SAAS;AAAA,EACd,EACC;AAAA,IACC,IAAI,OAAO,uBAAuB,iCAAiC,EAChE,UAAU,aAAa,EACvB,SAAS;AAAA,EACd,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF,EAAE,QAAQ,CAAC,SAAS,OAAO,CAAC;AAAA,EAC9B,EACC,OAAO,OAAO,SAAS,YAAY;AAClC,UAAM,EAAE,eAAAC,eAAc,IAAI,MAAM,OAAO,8BAAqB;AAC5D,UAAM,EAAE,eAAe,IAAI,MAAM,OAC/B,8BACF;AAEA,UAAM,EAAE,SAAS,OAAO,QAAQ,IAAI;AAEpC,UAAM,cAAc,QAAQ,cACxB;AAAA,MACE,OAAO,mBAAmB;AAAA,MAC1B,OAAO,mBAAmB;AAAA,IAC5B,EAAE,QAAQ,WAAW,IACrB;AAEJ,UAAMA;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAC,QAAA;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACL;;;ACnEA;AAAA,IAAAC,gBAAkB;AAKX,IAAM,aAAa,CAAC,UAA2B,eAAuB;AAC3E,SAAO,cAAc,KAAK,EACvB;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAC,UAAU;AACT,aAAO,SAAS,OAAO,EAAE;AAAA,IAC3B;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF,EACG,UAAU,YAAY,EACtB,SAAS;AAAA,EACd,EACC,OAAO,OAAO,SAAS,YAAY;AAClC,UAAM,EAAE,WAAW,IAAI,MAAM,OAAO,0BAAmC;AACvE,UAAM,EAAE,eAAAC,eAAc,IAAI,MAAM,OAAO,8BAAqB;AAE5D,UAAMA;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAC,QAAA;AAAA,QAAC;AAAA;AAAA,UACC,MAAM,QAAQ;AAAA,UACd,cAAc,QAAQ;AAAA,UACtB,kBAAkB,QAAQ;AAAA;AAAA,MAC5B;AAAA,IACF;AAAA,EACF,CAAC;AACL;;;ACzCA;AAEA,IAAAC,gBAAkB;AAGX,IAAM,kBAAkB,CAC7B,UACA,eACG;AACH,SAAO,cAAc,UAAU,EAC5B,YAAY,2CAA2C,EACvD;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC,OAAO,OAAO,SAAS,YAAY;AAClC,UAAM,EAAE,gBAAgB,IAAI,MAAM,OAChC,+BACF;AACA,UAAM,EAAE,eAAAC,eAAc,IAAI,MAAM,OAAO,8BAAqB;AAC5D,UAAM,EAAE,KAAK,IAAI;AACjB,UAAMA;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,8BAAAC,QAAA,cAAC,mBAAgB,mBAAmB,MAAM;AAAA,IAC5C;AAAA,EACF,CAAC;AACL;;;AXfO,IAAM,iBAAmC,OAC9C,UACA,eACG;AACH,SAAO,cAAc,OAAO,EACzB,wBAAwB,IAAI,EAC5B,WAAW,aAAa,UAAU,UAAU,CAAC,EAC7C,WAAW,WAAW,UAAU,UAAU,CAAC,EAC3C,WAAW,eAAe,UAAU,UAAU,CAAC,EAC/C,WAAW,eAAe,UAAU,UAAU,GAAG,EAAE,QAAQ,KAAK,CAAC,EACjE,WAAW,eAAe,UAAU,UAAU,CAAC,EAC/C,WAAW,WAAW,UAAU,UAAU,CAAC,EAC3C,WAAW,gBAAgB,UAAU,UAAU,CAAC;AACrD;","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.
|
|
4
|
+
"version": "1.1.151",
|
|
5
5
|
"bin": {
|
|
6
6
|
"wix": "bin/wix.cjs"
|
|
7
7
|
},
|
|
@@ -93,5 +93,5 @@
|
|
|
93
93
|
]
|
|
94
94
|
}
|
|
95
95
|
},
|
|
96
|
-
"falconPackageHash": "
|
|
96
|
+
"falconPackageHash": "2b02c9857e2fda61afb7c9228ad53290b0ef13803120bd76728f92be"
|
|
97
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/site/index.ts","../../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 { siteId } = useSite();\n return (\n <SiteAuthProvider siteId={siteId}>\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","export { SiteProvider } from './SiteProvider.js';\nexport { useSite } from './useSite.js';\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 { siteId } = 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/${siteId}?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 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 { useFetchAppManifest } from './useFetchAppManifest.js';\nimport { useUpdateDeploymentTopology } from '../../../hooks/useUpdateDeploymentTopology.js';\nimport { useSite } from '../../../site/useSite.js';\nimport { createRedirectLink } from '../../PlatformLink/RedirectLink.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 { siteId } = useSite();\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 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(latestManifest, appId);\n } else {\n const updateState = await arm.updateLooseAppRelease(\n latestManifest,\n updatedDevArmTag\n );\n if (!isType(updateState, 'TagUpdated')) {\n updatedDevArmTag = await arm.createLooseAppRelease(\n latestManifest,\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 : createRedirectLink({\n platform: 'site',\n appId,\n tenantId: siteId,\n withInstaller: false,\n versionOverrideId: updatedDevArmTag,\n }),\n armTag: updatedDevArmTag,\n environment: 'development',\n });\n\n return manifestUpdateResult;\n }, [\n siteId,\n manifestUpdateCheck,\n distributeClientUpdate,\n fetchAppManifest,\n serverLocalUrl,\n serverExposedUrl,\n arm,\n projectFolder,\n appId,\n updateDeploymentTopology,\n openTunnel,\n devMetadata,\n projectType,\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 { siteId, 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.id);\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: {siteId}</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 { SwitchSite } from './SwitchSite.js';\nimport { RedirectLink } from '../../PlatformLink/RedirectLink.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 { siteId } = useSite();\n\n return (\n <>\n <Box gap={1}>\n <Text>Current Dev Site:</Text>\n <Text bold skin=\"info\">\n {siteId}\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 <RedirectLink\n platform=\"site\"\n armTag={devArmTag}\n tenantId={siteId}\n withInstaller={false}\n />\n <RedirectLink\n platform=\"editor\"\n armTag={devArmTag}\n tenantId={siteId}\n withInstaller={false}\n />\n <RedirectLink\n platform=\"dashboard\"\n armTag={devArmTag}\n tenantId={siteId}\n withInstaller={false}\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","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';\nimport { SiteProvider } from '../../site/SiteProvider.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 return (\n <SiteProvider>\n {config.projectType === 'Site' ? (\n <Release\n {...props}\n createMinorVersion={\n props.versionType === ReleaseVersionType.MINOR\n }\n />\n ) : (\n <ReleaseApp\n baseUrl={props.baseUrl}\n label={props.label}\n preEnteredComment={props.comment}\n preSelectedVersionType={props.versionType}\n />\n )}\n </SiteProvider>\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"]}
|