@wix/cli 1.1.140 → 1.1.142

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 (75) hide show
  1. package/build/{DevCommand-SP7WYU4X.js → DevCommand-7BMDJYAY.js} +2 -2
  2. package/build/{DevCommand-ZL62VGTN.js → DevCommand-RSNBI6TA.js} +2 -2
  3. package/build/{DevCommand-IBXIQBHQ.js → DevCommand-SGPRUVKL.js} +375 -67
  4. package/build/DevCommand-SGPRUVKL.js.map +1 -0
  5. package/build/{EnvPullCommand-4QIGGZBL.js → EnvPullCommand-OGC7JK7G.js} +3 -3
  6. package/build/{EnvRemoveCommand-JEE4FQGN.js → EnvRemoveCommand-76LOIY6D.js} +2 -2
  7. package/build/{EnvSetCommand-BKYOV3OQ.js → EnvSetCommand-K3WC2JIM.js} +2 -2
  8. package/build/{GenerateCommand-LXVNXINH.js → GenerateCommand-CO2INZZT.js} +1383 -1102
  9. package/build/GenerateCommand-CO2INZZT.js.map +1 -0
  10. package/build/{InstallCommand-6YL3DFOD.js → InstallCommand-7MDACNTP.js} +2 -2
  11. package/build/{LoginCommand-5DYU3WJ4.js → LoginCommand-ISBADDEZ.js} +2 -2
  12. package/build/{PreviewCommand-2YLBAJWX.js → PreviewCommand-CJCZY2JD.js} +5 -5
  13. package/build/{PreviewCommand-7NPU4ZHT.js → PreviewCommand-YFZD7MIS.js} +3 -3
  14. package/build/{PreviewCommand-AJZZTRR2.js → PreviewCommand-ZGXWBI3V.js} +2 -2
  15. package/build/{PromoteCommand-V7POVXGM.js → PromoteCommand-ND5SSLLC.js} +5 -5
  16. package/build/{PublishCommand-FKKXL7LC.js → PublishCommand-PRWAXR5F.js} +3 -3
  17. package/build/{ReleaseCommand-MRHX3CVW.js → ReleaseCommand-D2CYP755.js} +5 -5
  18. package/build/ReleaseCommand-D2CYP755.js.map +1 -0
  19. package/build/{UninstallCommand-LQGLNPYQ.js → UninstallCommand-U6XOQT4T.js} +2 -2
  20. package/build/{chunk-4F6VNWLG.js → chunk-4DDM5F2Y.js} +40 -6
  21. package/build/chunk-4DDM5F2Y.js.map +1 -0
  22. package/build/{chunk-D36AOFF7.js → chunk-4FPXYFOR.js} +5 -5
  23. package/build/{chunk-HZCGDSWJ.js → chunk-GLBXHO24.js} +2 -2
  24. package/build/{chunk-Z7G7JZAY.js → chunk-LLSSVC6M.js} +58 -28
  25. package/build/chunk-LLSSVC6M.js.map +1 -0
  26. package/build/{chunk-YMAQMJWZ.js → chunk-OCXZ5GDQ.js} +3 -3
  27. package/build/{chunk-YMAQMJWZ.js.map → chunk-OCXZ5GDQ.js.map} +1 -1
  28. package/build/{chunk-4ZUEX4C5.js → chunk-OKV5CCZE.js} +2 -2
  29. package/build/{chunk-QHK2U7DY.js → chunk-YTUQRVN7.js} +2 -2
  30. package/build/{chunk-YJFCZJAJ.js → chunk-ZWLBTTW7.js} +2 -2
  31. package/build/{chunk-YJFCZJAJ.js.map → chunk-ZWLBTTW7.js.map} +1 -1
  32. package/build/{env-pull-KDFDXTP3.js → env-pull-OWFZHTRC.js} +3 -3
  33. package/build/index.js +10 -10
  34. package/build/index.js.map +1 -1
  35. package/build/{preview-IRH5GFLO.js → preview-VDJVQC6S.js} +5 -5
  36. package/build/{render-command-DGPSWRKA.js → render-command-OJESMEHM.js} +2 -2
  37. package/build/{src-CW3KCTDA.js → src-CWNKJO3M.js} +11 -11
  38. package/build/{src-HDI2QD7L.js → src-HEGLQ376.js} +2 -2
  39. package/build/{src-R362SPZD.js → src-P4NPBH4I.js} +6 -6
  40. package/build/{src-3ZGBZTK5.js → src-PDY5SUXV.js} +2 -2
  41. package/package.json +2 -2
  42. package/templates/astro/custom-element/files/panel.tsx.ejs +1 -1
  43. package/templates/astro/dashboard-plugin/files/widget.tsx.ejs +2 -2
  44. package/templates/astro/react-component/dependencies.json +11 -0
  45. package/templates/astro/react-component/files/component.tsx.ejs +19 -0
  46. package/templates/astro/react-component/files/extension.ts.ejs +19 -0
  47. package/build/DevCommand-IBXIQBHQ.js.map +0 -1
  48. package/build/GenerateCommand-LXVNXINH.js.map +0 -1
  49. package/build/ReleaseCommand-MRHX3CVW.js.map +0 -1
  50. package/build/chunk-4F6VNWLG.js.map +0 -1
  51. package/build/chunk-Z7G7JZAY.js.map +0 -1
  52. /package/build/{DevCommand-SP7WYU4X.js.map → DevCommand-7BMDJYAY.js.map} +0 -0
  53. /package/build/{DevCommand-ZL62VGTN.js.map → DevCommand-RSNBI6TA.js.map} +0 -0
  54. /package/build/{EnvPullCommand-4QIGGZBL.js.map → EnvPullCommand-OGC7JK7G.js.map} +0 -0
  55. /package/build/{EnvRemoveCommand-JEE4FQGN.js.map → EnvRemoveCommand-76LOIY6D.js.map} +0 -0
  56. /package/build/{EnvSetCommand-BKYOV3OQ.js.map → EnvSetCommand-K3WC2JIM.js.map} +0 -0
  57. /package/build/{InstallCommand-6YL3DFOD.js.map → InstallCommand-7MDACNTP.js.map} +0 -0
  58. /package/build/{LoginCommand-5DYU3WJ4.js.map → LoginCommand-ISBADDEZ.js.map} +0 -0
  59. /package/build/{PreviewCommand-2YLBAJWX.js.map → PreviewCommand-CJCZY2JD.js.map} +0 -0
  60. /package/build/{PreviewCommand-7NPU4ZHT.js.map → PreviewCommand-YFZD7MIS.js.map} +0 -0
  61. /package/build/{PreviewCommand-AJZZTRR2.js.map → PreviewCommand-ZGXWBI3V.js.map} +0 -0
  62. /package/build/{PromoteCommand-V7POVXGM.js.map → PromoteCommand-ND5SSLLC.js.map} +0 -0
  63. /package/build/{PublishCommand-FKKXL7LC.js.map → PublishCommand-PRWAXR5F.js.map} +0 -0
  64. /package/build/{UninstallCommand-LQGLNPYQ.js.map → UninstallCommand-U6XOQT4T.js.map} +0 -0
  65. /package/build/{chunk-D36AOFF7.js.map → chunk-4FPXYFOR.js.map} +0 -0
  66. /package/build/{chunk-HZCGDSWJ.js.map → chunk-GLBXHO24.js.map} +0 -0
  67. /package/build/{chunk-4ZUEX4C5.js.map → chunk-OKV5CCZE.js.map} +0 -0
  68. /package/build/{chunk-QHK2U7DY.js.map → chunk-YTUQRVN7.js.map} +0 -0
  69. /package/build/{env-pull-KDFDXTP3.js.map → env-pull-OWFZHTRC.js.map} +0 -0
  70. /package/build/{preview-IRH5GFLO.js.map → preview-VDJVQC6S.js.map} +0 -0
  71. /package/build/{render-command-DGPSWRKA.js.map → render-command-OJESMEHM.js.map} +0 -0
  72. /package/build/{src-CW3KCTDA.js.map → src-CWNKJO3M.js.map} +0 -0
  73. /package/build/{src-HDI2QD7L.js.map → src-HEGLQ376.js.map} +0 -0
  74. /package/build/{src-R362SPZD.js.map → src-P4NPBH4I.js.map} +0 -0
  75. /package/build/{src-3ZGBZTK5.js.map → src-PDY5SUXV.js.map} +0 -0
@@ -19,8 +19,8 @@ import {
19
19
  useSite,
20
20
  useUpdateDeploymentTopology,
21
21
  useUpdateManifest
22
- } from "./chunk-QHK2U7DY.js";
23
- import "./chunk-D36AOFF7.js";
22
+ } from "./chunk-YTUQRVN7.js";
23
+ import "./chunk-4FPXYFOR.js";
24
24
  import "./chunk-SC2W3WT3.js";
25
25
  import {
26
26
  createPackageManager,
@@ -42,10 +42,14 @@ import {
42
42
  import {
43
43
  useHttpClient
44
44
  } from "./chunk-C6TNYPLG.js";
45
- import "./chunk-BKY3IKB3.js";
45
+ import {
46
+ usePanoramaMethodLogger
47
+ } from "./chunk-BKY3IKB3.js";
46
48
  import {
47
49
  ErrorViewer,
48
50
  SiteAuthProvider,
51
+ resolveUrl,
52
+ serializer,
49
53
  useBiLogger,
50
54
  useDebugLog,
51
55
  useErrorReporter
@@ -82,8 +86,12 @@ import {
82
86
  import "./chunk-II7O6SCF.js";
83
87
  import "./chunk-RL7RA2JG.js";
84
88
  import "./chunk-PJCXC7XI.js";
85
- import "./chunk-F43XHKVL.js";
86
89
  import {
90
+ external_exports
91
+ } from "./chunk-F43XHKVL.js";
92
+ import {
93
+ CliError,
94
+ CliErrorCode,
87
95
  require_lib
88
96
  } from "./chunk-CU77QH5G.js";
89
97
  import {
@@ -96,7 +104,7 @@ init_esm_shims();
96
104
 
97
105
  // ../cli-astro-commands/src/components/DevCommand/DevCommand.tsx
98
106
  init_esm_shims();
99
- var import_react14 = __toESM(require_react(), 1);
107
+ var import_react15 = __toESM(require_react(), 1);
100
108
 
101
109
  // ../cli-astro-commands/src/components/DevCommand/utils/runAstroDev.ts
102
110
  init_esm_shims();
@@ -200,7 +208,7 @@ function useFetchDevMetadata() {
200
208
 
201
209
  // ../cli-astro-commands/src/components/DevCommand/SiteDevFlow.tsx
202
210
  init_esm_shims();
203
- var import_react7 = __toESM(require_react(), 1);
211
+ var import_react8 = __toESM(require_react(), 1);
204
212
  var import_variant3 = __toESM(require_lib(), 1);
205
213
 
206
214
  // ../cli-astro-commands/src/components/DevCommand/DevScreenBorder.tsx
@@ -225,18 +233,287 @@ var DevScreenBorder = ({ children }) => {
225
233
 
226
234
  // ../cli-astro-commands/src/components/DevCommand/SiteDev.tsx
227
235
  init_esm_shims();
228
- var import_react6 = __toESM(require_react(), 1);
236
+ var import_react7 = __toESM(require_react(), 1);
229
237
 
230
238
  // ../cli-astro-commands/src/components/DevCommand/hooks/useDevCenterUpdater.ts
231
239
  init_esm_shims();
232
- var import_react4 = __toESM(require_react(), 1);
240
+ var import_react5 = __toESM(require_react(), 1);
233
241
  var import_variant = __toESM(require_lib(), 1);
234
242
  import { isDeepStrictEqual } from "node:util";
235
243
 
236
- // ../cli-astro-commands/src/components/DevCommand/hooks/useFetchAppManifest.ts
244
+ // ../metasite-manager-client/src/index.ts
245
+ init_esm_shims();
246
+
247
+ // ../metasite-manager-client/src/useMetasiteManagerClient.ts
237
248
  init_esm_shims();
238
249
  var import_react3 = __toESM(require_react(), 1);
239
250
 
251
+ // ../metasite-manager-client/src/metasite-manager-client.ts
252
+ init_esm_shims();
253
+
254
+ // ../../node_modules/@wix/ambassador-metasite-api-v1-meta-site/build/es/http.impl.js
255
+ init_esm_shims();
256
+ var _createMetaSiteFromTemplateRequest = {};
257
+ var _createMetaSiteFromTemplateResponse = { metaSite: "_metaSite" };
258
+ var _metaSite = {
259
+ dateCreated: "google.protobuf.Timestamp",
260
+ dateUpdated: "google.protobuf.Timestamp",
261
+ accountCreatedDate: "google.protobuf.Timestamp"
262
+ };
263
+ function resolveComWixpressMetasiteApiV1MetaSiteLifecycleUrl(opts) {
264
+ var domainToMappings = {
265
+ "www._base_domain_": [
266
+ {
267
+ srcPath: "/_api/msm-writer",
268
+ destPath: ""
269
+ },
270
+ {
271
+ srcPath: "/_api/msm",
272
+ destPath: ""
273
+ }
274
+ ],
275
+ "manage._base_domain_": [
276
+ {
277
+ srcPath: "/_api/msm-writer",
278
+ destPath: ""
279
+ },
280
+ {
281
+ srcPath: "/_api/msm",
282
+ destPath: ""
283
+ }
284
+ ],
285
+ "www.wixapis.com": [
286
+ {
287
+ srcPath: "/msm",
288
+ destPath: ""
289
+ }
290
+ ],
291
+ "editor._base_domain_": [
292
+ {
293
+ srcPath: "/_api/msm-writer",
294
+ destPath: ""
295
+ }
296
+ ],
297
+ "blocks._base_domain_": [
298
+ {
299
+ srcPath: "/_api/msm-writer",
300
+ destPath: ""
301
+ }
302
+ ],
303
+ "create.editorx": [
304
+ {
305
+ srcPath: "/_api/msm-writer",
306
+ destPath: ""
307
+ }
308
+ ]
309
+ };
310
+ return resolveUrl(Object.assign(opts, { domainToMappings }));
311
+ }
312
+ function createMetaSiteFromTemplate(payload) {
313
+ var _a = serializer(_createMetaSiteFromTemplateRequest, {}), toReq = _a.toJSON, fromReq = _a.fromJSON;
314
+ var fromRes = serializer(_createMetaSiteFromTemplateResponse, { _metaSite }).fromJSON;
315
+ function __createMetaSiteFromTemplate(_a2) {
316
+ var host = _a2.host;
317
+ var serializedData = toReq(payload);
318
+ var metadata = {
319
+ entityFqdn: "wix.metasite.api.v1.meta_site",
320
+ method: "POST",
321
+ methodFqn: "com.wixpress.metasite.api.v1.MetaSiteLifecycle.CreateMetaSiteFromTemplate",
322
+ url: resolveComWixpressMetasiteApiV1MetaSiteLifecycleUrl({
323
+ protoPath: "/v1/meta-site/create-from-template",
324
+ data: serializedData,
325
+ host
326
+ }),
327
+ data: serializedData,
328
+ transformResponse: fromRes
329
+ };
330
+ return metadata;
331
+ }
332
+ __createMetaSiteFromTemplate.fromReq = fromReq;
333
+ __createMetaSiteFromTemplate.__isAmbassador = true;
334
+ return __createMetaSiteFromTemplate;
335
+ }
336
+
337
+ // ../../node_modules/@wix/ambassador-document-management-document-store-v1-transaction/build/es/http.impl.js
338
+ init_esm_shims();
339
+ var _distributeRequest = {};
340
+ var _distributeResponse = {};
341
+ function resolveComWixpressEditorApiDocumentStoreServiceUrl(opts) {
342
+ var domainToMappings = {
343
+ "api._api_base_domain_": [
344
+ {
345
+ srcPath: "/editor-document-store",
346
+ destPath: ""
347
+ }
348
+ ],
349
+ "www._base_domain_": [
350
+ {
351
+ srcPath: "/_api/editor-document-store",
352
+ destPath: ""
353
+ }
354
+ ],
355
+ "editor._base_domain_": [
356
+ {
357
+ srcPath: "/_api/editor-document-store",
358
+ destPath: ""
359
+ }
360
+ ],
361
+ "blocks._base_domain_": [
362
+ {
363
+ srcPath: "/_api/editor-document-store",
364
+ destPath: ""
365
+ }
366
+ ],
367
+ "create.editorx": [
368
+ {
369
+ srcPath: "/_api/editor-document-store",
370
+ destPath: ""
371
+ }
372
+ ]
373
+ };
374
+ return resolveUrl(Object.assign(opts, { domainToMappings }));
375
+ }
376
+ function distribute(payload) {
377
+ var _a = serializer(_distributeRequest, {}), toReq = _a.toJSON, fromReq = _a.fromJSON;
378
+ var fromRes = serializer(_distributeResponse, {}).fromJSON;
379
+ function __distribute(_a2) {
380
+ var host = _a2.host;
381
+ var serializedData = toReq(payload);
382
+ var metadata = {
383
+ entityFqdn: "wix.document_management.document_store.v1.transaction",
384
+ method: "POST",
385
+ methodFqn: "com.wixpress.editor.api.DocumentStoreService.Distribute",
386
+ migrationOptions: {
387
+ optInTransformResponse: true
388
+ },
389
+ url: resolveComWixpressEditorApiDocumentStoreServiceUrl({
390
+ protoPath: "/v1/distribute",
391
+ data: serializedData,
392
+ host
393
+ }),
394
+ data: serializedData,
395
+ transformResponse: fromRes
396
+ };
397
+ return metadata;
398
+ }
399
+ __distribute.fromReq = fromReq;
400
+ __distribute.__isAmbassador = true;
401
+ return __distribute;
402
+ }
403
+
404
+ // ../metasite-manager-client/src/schemas.ts
405
+ init_esm_shims();
406
+ var clientSpecMapSchema = external_exports.record(
407
+ external_exports.object({
408
+ appDefinitionId: external_exports.string().optional(),
409
+ permissions: external_exports.object({ revoked: external_exports.boolean() }).optional(),
410
+ instanceId: external_exports.string().optional()
411
+ })
412
+ );
413
+ var createMetaSiteFromTemplateSchema = external_exports.object({
414
+ metaSite: external_exports.object({
415
+ metaSiteId: external_exports.string()
416
+ })
417
+ });
418
+
419
+ // ../metasite-manager-client/src/metasite-manager-client.ts
420
+ var MetasiteManagerClient = class {
421
+ constructor(httpClient) {
422
+ this.httpClient = httpClient;
423
+ }
424
+ getClientSpecMap = async (metaSiteId) => {
425
+ try {
426
+ const { data } = await this.httpClient.request({
427
+ url: `/_api/msm/v1/meta-site/editor-client-spec-map/${metaSiteId}`
428
+ });
429
+ return clientSpecMapSchema.parse(data);
430
+ } catch (e) {
431
+ throw new CliError({
432
+ code: CliErrorCode.FailedToGetClientSpecMap(),
433
+ cause: e
434
+ });
435
+ }
436
+ };
437
+ createMetaSiteFromTemplate = async (request) => {
438
+ try {
439
+ const { data } = await this.httpClient.request(
440
+ createMetaSiteFromTemplate(request)
441
+ );
442
+ return createMetaSiteFromTemplateSchema.parse(data).metaSite;
443
+ } catch (e) {
444
+ throw new CliError({
445
+ code: CliErrorCode.FailedToCreateMetaSiteFromTemplate(),
446
+ cause: e
447
+ });
448
+ }
449
+ };
450
+ getSiteInstalledApps = async (metaSiteId) => {
451
+ try {
452
+ const clientSpecMap = await this.getClientSpecMap(metaSiteId);
453
+ return Object.values(clientSpecMap).filter((spec) => spec.appDefinitionId && !spec.permissions?.revoked).map((spec) => spec.appDefinitionId);
454
+ } catch (e) {
455
+ throw new CliError({
456
+ code: CliErrorCode.FailedToGetSiteInstalledApps(),
457
+ cause: e
458
+ });
459
+ }
460
+ };
461
+ getInstalledAppInstanceId = async ({
462
+ metaSiteId,
463
+ appId
464
+ }) => {
465
+ try {
466
+ const clientSpecMap = await this.getClientSpecMap(metaSiteId);
467
+ const installedApp = Object.values(clientSpecMap).find(
468
+ (spec) => spec.appDefinitionId === appId
469
+ );
470
+ return installedApp?.instanceId ?? "";
471
+ } catch (e) {
472
+ throw new CliError({
473
+ code: CliErrorCode.FailedToGetSiteInstalledAppInstanceId(),
474
+ cause: e
475
+ });
476
+ }
477
+ };
478
+ distributeClientUpdate = async (appId) => {
479
+ try {
480
+ await this.httpClient.request(
481
+ distribute({
482
+ payloads: [
483
+ {
484
+ id: appId,
485
+ messageType: "MANIFEST_UPDATE",
486
+ data: {
487
+ appId
488
+ }
489
+ }
490
+ ],
491
+ branchId: "00000000-0000-0000-0000-000000000000"
492
+ })
493
+ );
494
+ } catch (e) {
495
+ throw new CliError({
496
+ code: CliErrorCode.FailedToDistributeClientManifestUpdate(),
497
+ cause: e
498
+ });
499
+ }
500
+ };
501
+ };
502
+
503
+ // ../metasite-manager-client/src/useMetasiteManagerClient.ts
504
+ function useMetasiteManagerClient() {
505
+ const httpClient = useHttpClient({ type: "general" });
506
+ const client = (0, import_react3.useMemo)(
507
+ () => new MetasiteManagerClient(httpClient),
508
+ [httpClient]
509
+ );
510
+ return usePanoramaMethodLogger(client);
511
+ }
512
+
513
+ // ../cli-astro-commands/src/components/DevCommand/hooks/useFetchAppManifest.ts
514
+ init_esm_shims();
515
+ var import_react4 = __toESM(require_react(), 1);
516
+
240
517
  // ../cli-astro-commands/src/components/DevCommand/utils/isTunnelRequired.ts
241
518
  init_esm_shims();
242
519
  function isTunnelRequired(appManifest) {
@@ -259,7 +536,7 @@ function parseKnownExtensionManifest(extensionManifest) {
259
536
  // ../cli-astro-commands/src/components/DevCommand/hooks/useFetchAppManifest.ts
260
537
  function useFetchAppManifest() {
261
538
  const http = useHttpClient({ type: "standalone" });
262
- return (0, import_react3.useCallback)(
539
+ return (0, import_react4.useCallback)(
263
540
  async (serverLocalUrl, devMetadata, baseUrl, tunnelUrl) => {
264
541
  const url = new URL("/_wix/app-manifest.json", serverLocalUrl);
265
542
  const { data: text } = await http.get(url.toString(), {
@@ -291,7 +568,7 @@ function useFetchAppManifest() {
291
568
  }
292
569
 
293
570
  // ../cli-astro-commands/src/components/DevCommand/hooks/useDevCenterUpdater.ts
294
- var DevCenterUpdateResult = (0, import_variant.variant)({
571
+ var ManifestUpdateResult = (0, import_variant.variant)({
295
572
  Changed: (0, import_variant.fields)(),
296
573
  Unchanged: {}
297
574
  });
@@ -300,25 +577,52 @@ var useDevCenterUpdater = ({
300
577
  serverExposedUrl,
301
578
  devMetadata
302
579
  }) => {
303
- const [devArmTag, setDevArmTag] = (0, import_react4.useState)();
304
- const [manifest, setManifest] = (0, import_react4.useState)(null);
580
+ const [devArmTag, setDevArmTag] = (0, import_react5.useState)();
581
+ const [manifest, setManifest] = (0, import_react5.useState)(null);
305
582
  const writeToDebugLog = useDebugLog();
306
583
  const resolvePlatformUrl = useResolvePlatformUrl();
584
+ const { distributeClientUpdate } = useMetasiteManagerClient();
585
+ const manifestUpdateCheck = (0, import_react5.useCallback)(
586
+ (latestManifest) => {
587
+ if (manifest == null) {
588
+ return ManifestUpdateResult.Changed({
589
+ shouldDistributeClientUpdate: false
590
+ });
591
+ }
592
+ const oldComponentsMap = new Map(
593
+ manifest.components.map((comp) => [comp.compId, comp])
594
+ );
595
+ const changedComponents = latestManifest.components.filter((newComp) => {
596
+ const oldComp = oldComponentsMap.get(newComp.compId);
597
+ return !isDeepStrictEqual(newComp, oldComp);
598
+ });
599
+ if (changedComponents.length === 0) {
600
+ return ManifestUpdateResult.Unchanged();
601
+ }
602
+ const editorComponentsChanged = changedComponents.filter(
603
+ (comp) => comp.compType === ComponentType.PANEL || comp.compType === ComponentType.EDITOR_REACT_COMPONENT
604
+ );
605
+ return ManifestUpdateResult.Changed({
606
+ shouldDistributeClientUpdate: editorComponentsChanged.length > 0
607
+ });
608
+ },
609
+ [manifest]
610
+ );
307
611
  const {
308
612
  model: {
309
613
  config: { appId, projectType },
310
614
  projectFolder
311
615
  }
312
616
  } = useProjectModel();
313
- const logger = (0, import_react4.useMemo)(() => createAstroLogger(), []);
617
+ const logger = (0, import_react5.useMemo)(() => createAstroLogger(), []);
314
618
  const { updateManifest } = useUpdateManifest();
315
619
  const arm = useARMClient();
316
620
  const updateDeploymentTopology = useUpdateDeploymentTopology();
317
621
  const openTunnel = useTunnel();
318
- const tunnelUrl = (0, import_react4.useRef)();
319
- const [tunnelRequired, setTunnelRequired] = (0, import_react4.useState)(false);
622
+ const tunnelUrl = (0, import_react5.useRef)();
623
+ const [tunnelRequired, setTunnelRequired] = (0, import_react5.useState)(false);
320
624
  const fetchAppManifest = useFetchAppManifest();
321
- const updateDevCenter = (0, import_react4.useCallback)(async () => {
625
+ const updateDevCenter = (0, import_react5.useCallback)(async () => {
322
626
  const baseUrl = serverExposedUrl ?? serverLocalUrl;
323
627
  const { manifest: latestManifest, isTunnelRequired: isTunnelRequired2 } = await fetchAppManifest(
324
628
  serverLocalUrl,
@@ -326,19 +630,20 @@ var useDevCenterUpdater = ({
326
630
  baseUrl,
327
631
  tunnelUrl.current ?? baseUrl
328
632
  );
329
- if (isDeepStrictEqual(manifest, latestManifest)) {
330
- return DevCenterUpdateResult.Unchanged();
633
+ const manifestUpdateResult = manifestUpdateCheck(latestManifest);
634
+ if ((0, import_variant.isType)(manifestUpdateResult, "Unchanged")) {
635
+ return manifestUpdateResult;
331
636
  }
332
637
  if (!serverExposedUrl && !tunnelUrl.current && isTunnelRequired2) {
333
638
  const config = await readUserConfig();
334
639
  if (!config.tunneling) {
335
640
  setTunnelRequired(true);
336
- return DevCenterUpdateResult.Unchanged();
641
+ return ManifestUpdateResult.Unchanged();
337
642
  }
338
643
  const serverLocalPort = parseInt(new URL(serverLocalUrl).port, 10);
339
644
  const tunnel = await openTunnel(serverLocalPort);
340
645
  tunnelUrl.current = tunnel.url;
341
- return DevCenterUpdateResult.Unchanged();
646
+ return ManifestUpdateResult.Unchanged();
342
647
  }
343
648
  const appConfig = await readAppConfig(projectFolder);
344
649
  let updatedDevArmTag = appConfig?.devArmTag;
@@ -362,6 +667,9 @@ var useDevCenterUpdater = ({
362
667
  if (updatedDevArmTag !== appConfig?.devArmTag) {
363
668
  await saveAppConfig(projectFolder, { devArmTag: updatedDevArmTag });
364
669
  }
670
+ if ((0, import_variant.isType)(manifestUpdateResult, "Changed") && manifestUpdateResult.shouldDistributeClientUpdate) {
671
+ await distributeClientUpdate(appId);
672
+ }
365
673
  setManifest(latestManifest);
366
674
  setDevArmTag(updatedDevArmTag);
367
675
  await updateDeploymentTopology.execute({
@@ -372,15 +680,15 @@ var useDevCenterUpdater = ({
372
680
  armTag: updatedDevArmTag,
373
681
  environment: "development"
374
682
  });
375
- const armTagChanged = !!appConfig?.devArmTag && updatedDevArmTag !== appConfig.devArmTag;
376
- return DevCenterUpdateResult.Changed({ armTagChanged });
683
+ return manifestUpdateResult;
377
684
  }, [
685
+ manifestUpdateCheck,
686
+ distributeClientUpdate,
378
687
  fetchAppManifest,
379
688
  updateManifest,
380
689
  serverLocalUrl,
381
690
  serverExposedUrl,
382
691
  arm,
383
- manifest,
384
692
  projectFolder,
385
693
  appId,
386
694
  updateDeploymentTopology,
@@ -389,8 +697,8 @@ var useDevCenterUpdater = ({
389
697
  projectType,
390
698
  resolvePlatformUrl
391
699
  ]);
392
- const [timer, setTimer] = (0, import_react4.useState)(Date.now());
393
- (0, import_react4.useEffect)(() => {
700
+ const [timer, setTimer] = (0, import_react5.useState)(Date.now());
701
+ (0, import_react5.useEffect)(() => {
394
702
  let disposed = false;
395
703
  void updateDevCenter().then((result) => {
396
704
  if ((0, import_variant.isType)(result, "Changed")) {
@@ -416,11 +724,11 @@ var useDevCenterUpdater = ({
416
724
 
417
725
  // ../cli-astro-commands/src/components/DevCommand/TunnelingConsent.tsx
418
726
  init_esm_shims();
419
- var import_react5 = __toESM(require_react(), 1);
727
+ var import_react6 = __toESM(require_react(), 1);
420
728
  var import_variant2 = __toESM(require_lib(), 1);
421
729
  var TunnelingConsent = ({ required, children }) => {
422
730
  const exit = useExit();
423
- const [approved, setApproved] = (0, import_react5.useState)();
731
+ const [approved, setApproved] = (0, import_react6.useState)();
424
732
  const { status } = useAsync(async () => {
425
733
  const config = await readUserConfig();
426
734
  if (config.tunneling) {
@@ -431,8 +739,8 @@ var TunnelingConsent = ({ required, children }) => {
431
739
  if (!required || approved) {
432
740
  return children;
433
741
  }
434
- return /* @__PURE__ */ import_react5.default.createElement(import_react5.default.Fragment, null, (0, import_variant2.match)(status, {
435
- Success: () => /* @__PURE__ */ import_react5.default.createElement(
742
+ return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, (0, import_variant2.match)(status, {
743
+ Success: () => /* @__PURE__ */ import_react6.default.createElement(
436
744
  ConfirmInput,
437
745
  {
438
746
  label: "To proceed, we'll set up a secure tunnel from your machine for development purposes",
@@ -448,7 +756,7 @@ var TunnelingConsent = ({ required, children }) => {
448
756
  ),
449
757
  Error: () => null,
450
758
  Loading: () => null
451
- }), approved === false && /* @__PURE__ */ import_react5.default.createElement(Text, { skin: "error" }, "Operation aborted. Tunneling is necessary to run your application."));
759
+ }), approved === false && /* @__PURE__ */ import_react6.default.createElement(Text, { skin: "error" }, "Operation aborted. Tunneling is necessary to run your application."));
452
760
  };
453
761
 
454
762
  // ../cli-astro-commands/src/components/DevCommand/SiteDev.tsx
@@ -463,13 +771,13 @@ var SiteDev = ({
463
771
  serverExposedUrl,
464
772
  devMetadata
465
773
  });
466
- return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(Text, null, "Development environment ready"), /* @__PURE__ */ import_react6.default.createElement(Box_default, { rowGap: 1, marginY: 1, flexDirection: "column" }, /* @__PURE__ */ import_react6.default.createElement(TunnelingConsent, { required: tunnelRequired }, /* @__PURE__ */ import_react6.default.createElement(Text, null, "Open the preview on:"), /* @__PURE__ */ import_react6.default.createElement(Box_default, { paddingLeft: 2, flexDirection: "column" }, /* @__PURE__ */ import_react6.default.createElement(PlatformLink, { url: serverLocalUrl, label: "Site" }), devArmTag ? /* @__PURE__ */ import_react6.default.createElement(
774
+ return /* @__PURE__ */ import_react7.default.createElement(import_react7.default.Fragment, null, /* @__PURE__ */ import_react7.default.createElement(Text, null, "Development environment ready"), /* @__PURE__ */ import_react7.default.createElement(Box_default, { rowGap: 1, marginY: 1, flexDirection: "column" }, /* @__PURE__ */ import_react7.default.createElement(TunnelingConsent, { required: tunnelRequired }, /* @__PURE__ */ import_react7.default.createElement(Text, null, "Open the preview on:"), /* @__PURE__ */ import_react7.default.createElement(Box_default, { paddingLeft: 2, flexDirection: "column" }, /* @__PURE__ */ import_react7.default.createElement(PlatformLink, { url: serverLocalUrl, label: "Site" }), devArmTag ? /* @__PURE__ */ import_react7.default.createElement(
467
775
  PlatformLink,
468
776
  {
469
777
  url: `https://manage.wix.com/dashboard/${site.id}?apps-override=${devArmTag}`,
470
778
  label: "Dashboard"
471
779
  }
472
- ) : /* @__PURE__ */ import_react6.default.createElement(Spinner, { text: "Preparing your dashboard..." })))));
780
+ ) : /* @__PURE__ */ import_react7.default.createElement(Spinner, { text: "Preparing your dashboard..." })))));
473
781
  };
474
782
 
475
783
  // ../cli-astro-commands/src/components/DevCommand/SiteDevFlow.tsx
@@ -478,11 +786,11 @@ var SiteDevFlow = ({
478
786
  serverExposedUrl
479
787
  }) => {
480
788
  const { site } = useSite();
481
- return /* @__PURE__ */ import_react7.default.createElement(SiteAuthProvider, { siteId: site.id }, (0, import_variant3.match)(devMetadataStatus, {
482
- NotRequested: () => /* @__PURE__ */ import_react7.default.createElement(Spinner, { text: "Starting dev environment..." }),
789
+ return /* @__PURE__ */ import_react8.default.createElement(SiteAuthProvider, { siteId: site.id }, (0, import_variant3.match)(devMetadataStatus, {
790
+ NotRequested: () => /* @__PURE__ */ import_react8.default.createElement(Spinner, { text: "Starting dev environment..." }),
483
791
  Error: () => null,
484
- Loading: () => /* @__PURE__ */ import_react7.default.createElement(Spinner, { text: "Checking dev environment settings..." }),
485
- Success: ({ result: { devMetadata, serverLocalUrl } }) => /* @__PURE__ */ import_react7.default.createElement(DevScreenBorder, null, /* @__PURE__ */ import_react7.default.createElement(
792
+ Loading: () => /* @__PURE__ */ import_react8.default.createElement(Spinner, { text: "Checking dev environment settings..." }),
793
+ Success: ({ result: { devMetadata, serverLocalUrl } }) => /* @__PURE__ */ import_react8.default.createElement(DevScreenBorder, null, /* @__PURE__ */ import_react8.default.createElement(
486
794
  SiteDev,
487
795
  {
488
796
  devMetadata,
@@ -495,12 +803,12 @@ var SiteDevFlow = ({
495
803
 
496
804
  // ../cli-astro-commands/src/components/DevCommand/AppDevFlow.tsx
497
805
  init_esm_shims();
498
- var import_react13 = __toESM(require_react(), 1);
806
+ var import_react14 = __toESM(require_react(), 1);
499
807
  var import_variant6 = __toESM(require_lib(), 1);
500
808
 
501
809
  // ../cli-astro-commands/src/components/DevCommand/app-flow/AppDev.tsx
502
810
  init_esm_shims();
503
- var import_react12 = __toESM(require_react(), 1);
811
+ var import_react13 = __toESM(require_react(), 1);
504
812
  var import_variant5 = __toESM(require_lib(), 1);
505
813
 
506
814
  // ../cli-astro-commands/src/components/DevCommand/app-flow/screen-state.ts
@@ -513,14 +821,14 @@ var ScreenState = (0, import_variant4.variant)({
513
821
 
514
822
  // ../cli-astro-commands/src/components/DevCommand/app-flow/SiteSelectorScreen.tsx
515
823
  init_esm_shims();
516
- var import_react9 = __toESM(require_react(), 1);
824
+ var import_react10 = __toESM(require_react(), 1);
517
825
 
518
826
  // ../cli-astro-commands/src/components/CloseScreen/index.tsx
519
827
  init_esm_shims();
520
828
 
521
829
  // ../cli-astro-commands/src/components/CloseScreen/CloseScreen.tsx
522
830
  init_esm_shims();
523
- var import_react8 = __toESM(require_react(), 1);
831
+ var import_react9 = __toESM(require_react(), 1);
524
832
  var CloseScreen = ({ onClose }) => {
525
833
  const bi = useWixCliAppBi();
526
834
  use_input_default((_, key) => {
@@ -534,7 +842,7 @@ var CloseScreen = ({ onClose }) => {
534
842
  onClose();
535
843
  }
536
844
  });
537
- return /* @__PURE__ */ import_react8.default.createElement(Text, { skin: "secondary" }, "Press", /* @__PURE__ */ import_react8.default.createElement(Key, { value: "esc", skin: "secondary" }), "to close");
845
+ return /* @__PURE__ */ import_react9.default.createElement(Text, { skin: "secondary" }, "Press", /* @__PURE__ */ import_react9.default.createElement(Key, { value: "esc", skin: "secondary" }), "to close");
538
846
  };
539
847
 
540
848
  // ../cli-astro-commands/src/components/DevCommand/app-flow/SiteSelectorScreen.tsx
@@ -543,15 +851,15 @@ var SiteSelectorScreen = ({ onScreenChange }) => {
543
851
  const biLogger = useBiLogger();
544
852
  const { site, setSite } = useSite();
545
853
  const { reportError } = useErrorReporter();
546
- const [error, setError] = (0, import_react9.useState)(null);
547
- const handleError = (0, import_react9.useCallback)(
854
+ const [error, setError] = (0, import_react10.useState)(null);
855
+ const handleError = (0, import_react10.useCallback)(
548
856
  (error2) => {
549
857
  reportError(error2);
550
858
  setError(error2);
551
859
  },
552
860
  [reportError, setError]
553
861
  );
554
- const handleSubmit = (0, import_react9.useCallback)(
862
+ const handleSubmit = (0, import_react10.useCallback)(
555
863
  async (site2) => {
556
864
  try {
557
865
  await setSite(site2);
@@ -562,7 +870,7 @@ var SiteSelectorScreen = ({ onScreenChange }) => {
562
870
  },
563
871
  [setSite, onScreenChange, handleError]
564
872
  );
565
- return /* @__PURE__ */ import_react9.default.createElement(Box_default, { flexDirection: "column", gap: 1 }, /* @__PURE__ */ import_react9.default.createElement(Box_default, { gap: 1 }, /* @__PURE__ */ import_react9.default.createElement(PointerIcon, null), /* @__PURE__ */ import_react9.default.createElement(Text, null, "Current Development Site: ", site.displayName)), /* @__PURE__ */ import_react9.default.createElement(Box_default, { flexDirection: "column" }, /* @__PURE__ */ import_react9.default.createElement(
873
+ return /* @__PURE__ */ import_react10.default.createElement(Box_default, { flexDirection: "column", gap: 1 }, /* @__PURE__ */ import_react10.default.createElement(Box_default, { gap: 1 }, /* @__PURE__ */ import_react10.default.createElement(PointerIcon, null), /* @__PURE__ */ import_react10.default.createElement(Text, null, "Current Development Site: ", site.displayName)), /* @__PURE__ */ import_react10.default.createElement(Box_default, { flexDirection: "column" }, /* @__PURE__ */ import_react10.default.createElement(
566
874
  SiteSelector,
567
875
  {
568
876
  appId: model.config.appId,
@@ -570,23 +878,23 @@ var SiteSelectorScreen = ({ onScreenChange }) => {
570
878
  onSubmit: handleSubmit,
571
879
  onError: handleError
572
880
  }
573
- ), error ? /* @__PURE__ */ import_react9.default.createElement(
881
+ ), error ? /* @__PURE__ */ import_react10.default.createElement(
574
882
  ErrorViewer,
575
883
  {
576
884
  error,
577
- systemErrorOverride: /* @__PURE__ */ import_react9.default.createElement(Alert, { type: "error" }, "Failed to change Development Site!")
885
+ systemErrorOverride: /* @__PURE__ */ import_react10.default.createElement(Alert, { type: "error" }, "Failed to change Development Site!")
578
886
  }
579
- ) : null), /* @__PURE__ */ import_react9.default.createElement(CloseScreen, { onClose: () => onScreenChange(ScreenState.Home()) }));
887
+ ) : null), /* @__PURE__ */ import_react10.default.createElement(CloseScreen, { onClose: () => onScreenChange(ScreenState.Home()) }));
580
888
  };
581
889
 
582
890
  // ../cli-astro-commands/src/components/DevCommand/app-flow/HomeScreen.tsx
583
891
  init_esm_shims();
584
- var import_react11 = __toESM(require_react(), 1);
892
+ var import_react12 = __toESM(require_react(), 1);
585
893
  import process from "node:process";
586
894
 
587
895
  // ../cli-astro-commands/src/components/DevCommand/app-flow/SwitchSite.tsx
588
896
  init_esm_shims();
589
- var import_react10 = __toESM(require_react(), 1);
897
+ var import_react11 = __toESM(require_react(), 1);
590
898
  var SwitchSite = ({ onScreenChange }) => {
591
899
  const bi = useWixCliAppBi();
592
900
  use_input_default(async (input) => {
@@ -600,7 +908,7 @@ var SwitchSite = ({ onScreenChange }) => {
600
908
  onScreenChange(ScreenState.SiteSelector());
601
909
  }
602
910
  });
603
- return /* @__PURE__ */ import_react10.default.createElement(Text, { skin: "secondary" }, "(Press ", /* @__PURE__ */ import_react10.default.createElement(Key, { value: "C", skin: "secondary" }), " to switch)");
911
+ return /* @__PURE__ */ import_react11.default.createElement(Text, { skin: "secondary" }, "(Press ", /* @__PURE__ */ import_react11.default.createElement(Key, { value: "C", skin: "secondary" }), " to switch)");
604
912
  };
605
913
 
606
914
  // ../cli-astro-commands/src/components/DevCommand/app-flow/HomeScreen.tsx
@@ -609,13 +917,13 @@ var HomeScreen = ({
609
917
  devArmTag
610
918
  }) => {
611
919
  const { site } = useSite();
612
- return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(Box_default, { gap: 1 }, /* @__PURE__ */ import_react11.default.createElement(Text, null, "Current Dev Site:"), /* @__PURE__ */ import_react11.default.createElement(Text, { bold: true, skin: "info" }, site.displayName), process.stdin.isTTY && /* @__PURE__ */ import_react11.default.createElement(SwitchSite, { onScreenChange })), /* @__PURE__ */ import_react11.default.createElement(Box_default, { paddingTop: 1, paddingBottom: 1, flexDirection: "column" }, /* @__PURE__ */ import_react11.default.createElement(Text, null, "Open the preview on:"), /* @__PURE__ */ import_react11.default.createElement(Box_default, { paddingLeft: 2, flexDirection: "column" }, devArmTag ? /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(LivesiteLinkForApp, { armTag: devArmTag }), /* @__PURE__ */ import_react11.default.createElement(EditorLink, { armTag: devArmTag }), /* @__PURE__ */ import_react11.default.createElement(
920
+ return /* @__PURE__ */ import_react12.default.createElement(import_react12.default.Fragment, null, /* @__PURE__ */ import_react12.default.createElement(Box_default, { gap: 1 }, /* @__PURE__ */ import_react12.default.createElement(Text, null, "Current Dev Site:"), /* @__PURE__ */ import_react12.default.createElement(Text, { bold: true, skin: "info" }, site.displayName), process.stdin.isTTY && /* @__PURE__ */ import_react12.default.createElement(SwitchSite, { onScreenChange })), /* @__PURE__ */ import_react12.default.createElement(Box_default, { paddingTop: 1, paddingBottom: 1, flexDirection: "column" }, /* @__PURE__ */ import_react12.default.createElement(Text, null, "Open the preview on:"), /* @__PURE__ */ import_react12.default.createElement(Box_default, { paddingLeft: 2, flexDirection: "column" }, devArmTag ? /* @__PURE__ */ import_react12.default.createElement(import_react12.default.Fragment, null, /* @__PURE__ */ import_react12.default.createElement(LivesiteLinkForApp, { armTag: devArmTag }), /* @__PURE__ */ import_react12.default.createElement(EditorLink, { armTag: devArmTag }), /* @__PURE__ */ import_react12.default.createElement(
613
921
  PlatformLink,
614
922
  {
615
923
  url: `https://manage.wix.com/dashboard/${site.id}?apps-override=${devArmTag}`,
616
924
  label: "Dashboard"
617
925
  }
618
- )) : /* @__PURE__ */ import_react11.default.createElement(Spinner, { text: "Preparing your dashboard..." }))));
926
+ )) : /* @__PURE__ */ import_react12.default.createElement(Spinner, { text: "Preparing your dashboard..." }))));
619
927
  };
620
928
 
621
929
  // ../cli-astro-commands/src/components/DevCommand/app-flow/AppDev.tsx
@@ -624,15 +932,15 @@ var AppDev = ({
624
932
  serverExposedUrl,
625
933
  devMetadata
626
934
  }) => {
627
- const [screen, setScreen] = (0, import_react12.useState)(ScreenState.Home());
935
+ const [screen, setScreen] = (0, import_react13.useState)(ScreenState.Home());
628
936
  const { tunnelRequired, devArmTag } = useDevCenterUpdater({
629
937
  serverLocalUrl,
630
938
  serverExposedUrl,
631
939
  devMetadata
632
940
  });
633
- return /* @__PURE__ */ import_react12.default.createElement(TunnelingConsent, { required: tunnelRequired }, (0, import_variant5.match)(screen, {
634
- Home: () => /* @__PURE__ */ import_react12.default.createElement(HomeScreen, { onScreenChange: setScreen, devArmTag }),
635
- SiteSelector: () => /* @__PURE__ */ import_react12.default.createElement(SiteSelectorScreen, { onScreenChange: setScreen })
941
+ return /* @__PURE__ */ import_react13.default.createElement(TunnelingConsent, { required: tunnelRequired }, (0, import_variant5.match)(screen, {
942
+ Home: () => /* @__PURE__ */ import_react13.default.createElement(HomeScreen, { onScreenChange: setScreen, devArmTag }),
943
+ SiteSelector: () => /* @__PURE__ */ import_react13.default.createElement(SiteSelectorScreen, { onScreenChange: setScreen })
636
944
  }));
637
945
  };
638
946
 
@@ -642,11 +950,11 @@ var AppDevFlow = ({
642
950
  serverExposedUrl
643
951
  }) => {
644
952
  return (0, import_variant6.match)(devMetadataStatus, {
645
- NotRequested: () => /* @__PURE__ */ import_react13.default.createElement(Spinner, { text: "Starting dev environment..." }),
953
+ NotRequested: () => /* @__PURE__ */ import_react14.default.createElement(Spinner, { text: "Starting dev environment..." }),
646
954
  Error: () => null,
647
- Loading: () => /* @__PURE__ */ import_react13.default.createElement(Spinner, { text: "Checking dev environment settings..." }),
955
+ Loading: () => /* @__PURE__ */ import_react14.default.createElement(Spinner, { text: "Checking dev environment settings..." }),
648
956
  Success: ({ result: { devMetadata, serverLocalUrl } }) => {
649
- return /* @__PURE__ */ import_react13.default.createElement(DevScreenBorder, null, /* @__PURE__ */ import_react13.default.createElement(
957
+ return /* @__PURE__ */ import_react14.default.createElement(DevScreenBorder, null, /* @__PURE__ */ import_react14.default.createElement(
650
958
  AppDev,
651
959
  {
652
960
  serverLocalUrl,
@@ -667,8 +975,8 @@ var DevCommand = ({
667
975
  const {
668
976
  model: { config, projectFolder }
669
977
  } = useProjectModel();
670
- const logger = (0, import_react14.useMemo)(() => createAstroLogger(false), []);
671
- const astroProcess = (0, import_react14.useRef)();
978
+ const logger = (0, import_react15.useMemo)(() => createAstroLogger(false), []);
979
+ const astroProcess = (0, import_react15.useRef)();
672
980
  const fetchDevMetadataAction = useFetchDevMetadata();
673
981
  useAsync(async () => {
674
982
  const repoType = await getRepoType(projectFolder);
@@ -686,7 +994,7 @@ var DevCommand = ({
686
994
  astro.stdout?.on(EVENT_LINE, (line) => logger.log(line));
687
995
  astro.stderr?.on(EVENT_LINE, (line) => logger.log(line));
688
996
  }, []);
689
- (0, import_react14.useEffect)(() => {
997
+ (0, import_react15.useEffect)(() => {
690
998
  return () => {
691
999
  if (astroProcess.current?.pid) {
692
1000
  try {
@@ -696,13 +1004,13 @@ var DevCommand = ({
696
1004
  }
697
1005
  };
698
1006
  }, []);
699
- return /* @__PURE__ */ import_react14.default.createElement(SiteProvider, null, config.projectType === "Site" ? /* @__PURE__ */ import_react14.default.createElement(
1007
+ return /* @__PURE__ */ import_react15.default.createElement(SiteProvider, null, config.projectType === "Site" ? /* @__PURE__ */ import_react15.default.createElement(
700
1008
  SiteDevFlow,
701
1009
  {
702
1010
  devMetadataStatus: fetchDevMetadataAction.status,
703
1011
  serverExposedUrl
704
1012
  }
705
- ) : /* @__PURE__ */ import_react14.default.createElement(
1013
+ ) : /* @__PURE__ */ import_react15.default.createElement(
706
1014
  AppDevFlow,
707
1015
  {
708
1016
  devMetadataStatus: fetchDevMetadataAction.status,
@@ -713,4 +1021,4 @@ var DevCommand = ({
713
1021
  export {
714
1022
  DevCommand
715
1023
  };
716
- //# sourceMappingURL=DevCommand-IBXIQBHQ.js.map
1024
+ //# sourceMappingURL=DevCommand-SGPRUVKL.js.map