@wix/cli 1.1.132 → 1.1.134

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 (185) hide show
  1. package/build/{DevCommand-36D5RTIS.js → DevCommand-4OQRGGV3.js} +15 -15
  2. package/build/DevCommand-NTBBKMAA.js +815 -0
  3. package/build/DevCommand-NTBBKMAA.js.map +1 -0
  4. package/build/{DevCommand-C6BQYRFU.js → DevCommand-WSXE72JB.js} +19 -19
  5. package/build/{EnvPullCommand-MIAEMMW7.js → EnvPullCommand-FSET3QAR.js} +12 -12
  6. package/build/{EnvRemoveCommand-4PM5K3WI.js → EnvRemoveCommand-FT5NPEKI.js} +11 -11
  7. package/build/{EnvSetCommand-VKDYZZXD.js → EnvSetCommand-7LPLV7GL.js} +11 -11
  8. package/build/{GenerateCommand-2YN6H45L.js → GenerateCommand-WI7ILK6G.js} +112 -107
  9. package/build/GenerateCommand-WI7ILK6G.js.map +1 -0
  10. package/build/{InstallCommand-AHGIP2UM.js → InstallCommand-DGPPZHXV.js} +17 -17
  11. package/build/{LoginCommand-WF6TT7QV.js → LoginCommand-VKQBW5EI.js} +9 -9
  12. package/build/{LogoutCommand-GHUHYROA.js → LogoutCommand-NKY5NWUQ.js} +6 -6
  13. package/build/{PreviewCommand-K67N3DXU.js → PreviewCommand-VQCQDGJ2.js} +19 -19
  14. package/build/{PreviewCommand-PYVWQY6C.js → PreviewCommand-W22KLFOH.js} +16 -14
  15. package/build/{PreviewCommand-WZDNMLQR.js → PreviewCommand-X7P2AHBY.js} +19 -19
  16. package/build/{PromoteCommand-2NQ7ROC6.js → PromoteCommand-VDTCKRE4.js} +16 -14
  17. package/build/{PromoteCommand-2NQ7ROC6.js.map → PromoteCommand-VDTCKRE4.js.map} +1 -1
  18. package/build/{PublishCommand-FWLZ4Q7B.js → PublishCommand-3MDL6QC4.js} +19 -19
  19. package/build/ReleaseCommand-TP4LUVYC.js +464 -0
  20. package/build/ReleaseCommand-TP4LUVYC.js.map +1 -0
  21. package/build/{UninstallCommand-ATJIJUYX.js → UninstallCommand-YPZPH7PM.js} +17 -17
  22. package/build/{WhoamiCommand-DVII27HG.js → WhoamiCommand-H4GCFFMW.js} +3 -3
  23. package/build/{chunk-SDCA2ZYO.js → chunk-26B5E4UO.js} +2 -2
  24. package/build/chunk-2IJTJJEM.js +29 -0
  25. package/build/chunk-2IJTJJEM.js.map +1 -0
  26. package/build/{chunk-PQYPUILG.js → chunk-34MTX547.js} +3 -3
  27. package/build/{chunk-LFW57BYP.js → chunk-3DWQFSNW.js} +3 -3
  28. package/build/{chunk-3UICD2U3.js → chunk-3RVONWI7.js} +2 -2
  29. package/build/{chunk-L7OWQEI4.js → chunk-4QGQ7FU5.js} +3 -3
  30. package/build/{chunk-OKM7KSQY.js → chunk-5OQDBYCC.js} +6 -6
  31. package/build/{DevCommand-XWXE2GQD.js → chunk-5Z6Q4IJX.js} +1299 -1261
  32. package/build/chunk-5Z6Q4IJX.js.map +1 -0
  33. package/build/{chunk-KZY33NY5.js → chunk-66VZCA5Y.js} +6 -6
  34. package/build/{chunk-ULFNXCSJ.js → chunk-6GSUU65D.js} +2 -2
  35. package/build/{chunk-NIEDH7Z5.js → chunk-6XQIBCEG.js} +4 -4
  36. package/build/{chunk-NUKGEVK2.js → chunk-763CNX5X.js} +2 -2
  37. package/build/chunk-BAXAZXTT.js +144 -0
  38. package/build/chunk-BAXAZXTT.js.map +1 -0
  39. package/build/{chunk-R7IJZ53U.js → chunk-BEKFXS6A.js} +32 -32
  40. package/build/chunk-BEKFXS6A.js.map +1 -0
  41. package/build/{chunk-TEHIT3JS.js → chunk-CU77QH5G.js} +3 -2
  42. package/build/{chunk-TEHIT3JS.js.map → chunk-CU77QH5G.js.map} +1 -1
  43. package/build/{chunk-OBQKLL5P.js → chunk-DQULLGU7.js} +68 -8
  44. package/build/chunk-DQULLGU7.js.map +1 -0
  45. package/build/{chunk-ZBIKOMT2.js → chunk-DTJ6JGVE.js} +8 -8
  46. package/build/{chunk-7LW7GOIM.js → chunk-EYBSRZFX.js} +4 -4
  47. package/build/{chunk-MTHAQUUR.js → chunk-HGBT2YDL.js} +5 -5
  48. package/build/{chunk-ZOAQTBFU.js → chunk-HZRGNT6A.js} +34 -14
  49. package/build/chunk-HZRGNT6A.js.map +1 -0
  50. package/build/{chunk-MXCQLS7U.js → chunk-JMUBTRYQ.js} +8 -8
  51. package/build/{chunk-JZSXLY7P.js → chunk-KFP5IROQ.js} +2 -2
  52. package/build/{chunk-PFESKRQ3.js → chunk-KJC2IRIO.js} +8 -8
  53. package/build/{chunk-VKQPC7RS.js → chunk-KRZQM5IB.js} +2 -2
  54. package/build/{chunk-BQQQEWSQ.js → chunk-KUETLEOF.js} +2 -2
  55. package/build/{chunk-72KSL2UL.js → chunk-LYSRG3GF.js} +4 -4
  56. package/build/{chunk-QGOR6CWP.js → chunk-MA6ZMAQU.js} +3 -3
  57. package/build/{chunk-G662LNCI.js → chunk-MT4UEZWE.js} +43 -14
  58. package/build/chunk-MT4UEZWE.js.map +1 -0
  59. package/build/{chunk-IXDWJCSQ.js → chunk-MWPS57J5.js} +7 -7
  60. package/build/{chunk-EBTHDX4J.js → chunk-N2YYKEKV.js} +3 -3
  61. package/build/{chunk-TFDYF6UW.js → chunk-OWJ2DBNB.js} +2 -2
  62. package/build/{chunk-RQWYBRCJ.js → chunk-OZKGZAOZ.js} +3 -3
  63. package/build/{chunk-P6JSJQO7.js → chunk-PBUFZ6OU.js} +4 -4
  64. package/build/{chunk-GKFBUNZ7.js → chunk-PDB7C6G4.js} +6 -6
  65. package/build/{chunk-H3ASS4MY.js → chunk-PETG4TB5.js} +5 -5
  66. package/build/{chunk-B5RG5HO2.js → chunk-PH4BOMTV.js} +3 -3
  67. package/build/{chunk-HOPIBYRH.js → chunk-POJ57ZT2.js} +178 -161
  68. package/build/chunk-POJ57ZT2.js.map +1 -0
  69. package/build/{chunk-B54YGGPW.js → chunk-QKIGR4DS.js} +8 -8
  70. package/build/{chunk-JRRYR6TL.js → chunk-QYUVUKJH.js} +3 -3
  71. package/build/{chunk-GQA35W2K.js → chunk-R5QQXCOY.js} +4 -4
  72. package/build/{chunk-GQA35W2K.js.map → chunk-R5QQXCOY.js.map} +1 -1
  73. package/build/{chunk-XOSGOQML.js → chunk-TL7UQCUX.js} +2 -2
  74. package/build/{chunk-TWJ2IXFS.js → chunk-VLGQTAVU.js} +8 -8
  75. package/build/chunk-XBR2M7HM.js +33 -0
  76. package/build/chunk-XBR2M7HM.js.map +1 -0
  77. package/build/{chunk-A2ZZA4JA.js → chunk-XEKM4VLO.js} +3 -3
  78. package/build/{chunk-NXZLDPHZ.js → chunk-XKEFEPF6.js} +2 -2
  79. package/build/{chunk-ZHZXA55V.js → chunk-YSTEUOSI.js} +2 -2
  80. package/build/{chunk-VJXBOXVQ.js → chunk-ZBGLF76X.js} +7 -7
  81. package/build/{dev-LMJBVIN6.js → dev-KS2OTEXB.js} +22 -22
  82. package/build/{env-pull-SZ3UP3AS.js → env-pull-DS57QSQI.js} +14 -14
  83. package/build/index.js +24 -24
  84. package/build/{install-W2S27UCI.js → install-XHQJGNSY.js} +15 -15
  85. package/build/{preview-UHUIYO6W.js → preview-CTFYUQYT.js} +18 -16
  86. package/build/{preview-UHUIYO6W.js.map → preview-CTFYUQYT.js.map} +1 -1
  87. package/build/{publish-BPUUEPHR.js → publish-UYXDXAJ2.js} +16 -16
  88. package/build/{render-command-KHMHOIGW.js → render-command-5VDNAXTP.js} +11 -11
  89. package/build/{render-command-5VWE3OKB.js → render-command-GC5M477M.js} +11 -11
  90. package/build/{render-command-2DXDNIXL.js → render-command-LZAIPJQS.js} +12 -12
  91. package/build/{render-command-IDDNHTNC.js → render-command-LZLXAPTJ.js} +12 -12
  92. package/build/{render-command-AMEJYHKN.js → render-command-ZYQ762CC.js} +11 -11
  93. package/build/{run-command-SGO33B4C.js → run-command-LY3OSHGO.js} +7 -7
  94. package/build/{src-FJVPEY4V.js → src-3KZZZJ3H.js} +14 -14
  95. package/build/{src-IEVBBVLL.js → src-6UQ5GS34.js} +6 -6
  96. package/build/{src-2UPI4DPW.js → src-6WPDBAIM.js} +39 -38
  97. package/build/{src-2UPI4DPW.js.map → src-6WPDBAIM.js.map} +1 -1
  98. package/build/{src-X52ZO3MD.js → src-ATQPFIAX.js} +4 -4
  99. package/build/{src-ZCXYT4MW.js → src-GA5OFATI.js} +4 -4
  100. package/build/{src-XCNX6HKZ.js → src-JP7XE6WI.js} +2 -2
  101. package/build/{src-3KXGLTSG.js → src-KS2HXFOE.js} +10 -8
  102. package/build/{src-2RGQFQKI.js → src-NXE7P7H4.js} +17 -17
  103. package/build/{sync-types-GL4WG3ZS.js → sync-types-B47N5WP2.js} +11 -11
  104. package/build/{uninstall-UW4USHS5.js → uninstall-2UZH5ABJ.js} +15 -15
  105. package/package.json +2 -2
  106. package/build/DevCommand-XWXE2GQD.js.map +0 -1
  107. package/build/GenerateCommand-2YN6H45L.js.map +0 -1
  108. package/build/ReleaseCommand-NADJCWXR.js +0 -184
  109. package/build/ReleaseCommand-NADJCWXR.js.map +0 -1
  110. package/build/chunk-G662LNCI.js.map +0 -1
  111. package/build/chunk-HOPIBYRH.js.map +0 -1
  112. package/build/chunk-OBQKLL5P.js.map +0 -1
  113. package/build/chunk-R7IJZ53U.js.map +0 -1
  114. package/build/chunk-YRI5HW7B.js +0 -857
  115. package/build/chunk-YRI5HW7B.js.map +0 -1
  116. package/build/chunk-ZOAQTBFU.js.map +0 -1
  117. /package/build/{DevCommand-36D5RTIS.js.map → DevCommand-4OQRGGV3.js.map} +0 -0
  118. /package/build/{DevCommand-C6BQYRFU.js.map → DevCommand-WSXE72JB.js.map} +0 -0
  119. /package/build/{EnvPullCommand-MIAEMMW7.js.map → EnvPullCommand-FSET3QAR.js.map} +0 -0
  120. /package/build/{EnvRemoveCommand-4PM5K3WI.js.map → EnvRemoveCommand-FT5NPEKI.js.map} +0 -0
  121. /package/build/{EnvSetCommand-VKDYZZXD.js.map → EnvSetCommand-7LPLV7GL.js.map} +0 -0
  122. /package/build/{InstallCommand-AHGIP2UM.js.map → InstallCommand-DGPPZHXV.js.map} +0 -0
  123. /package/build/{LoginCommand-WF6TT7QV.js.map → LoginCommand-VKQBW5EI.js.map} +0 -0
  124. /package/build/{LogoutCommand-GHUHYROA.js.map → LogoutCommand-NKY5NWUQ.js.map} +0 -0
  125. /package/build/{PreviewCommand-K67N3DXU.js.map → PreviewCommand-VQCQDGJ2.js.map} +0 -0
  126. /package/build/{PreviewCommand-PYVWQY6C.js.map → PreviewCommand-W22KLFOH.js.map} +0 -0
  127. /package/build/{PreviewCommand-WZDNMLQR.js.map → PreviewCommand-X7P2AHBY.js.map} +0 -0
  128. /package/build/{PublishCommand-FWLZ4Q7B.js.map → PublishCommand-3MDL6QC4.js.map} +0 -0
  129. /package/build/{UninstallCommand-ATJIJUYX.js.map → UninstallCommand-YPZPH7PM.js.map} +0 -0
  130. /package/build/{WhoamiCommand-DVII27HG.js.map → WhoamiCommand-H4GCFFMW.js.map} +0 -0
  131. /package/build/{chunk-SDCA2ZYO.js.map → chunk-26B5E4UO.js.map} +0 -0
  132. /package/build/{chunk-PQYPUILG.js.map → chunk-34MTX547.js.map} +0 -0
  133. /package/build/{chunk-LFW57BYP.js.map → chunk-3DWQFSNW.js.map} +0 -0
  134. /package/build/{chunk-3UICD2U3.js.map → chunk-3RVONWI7.js.map} +0 -0
  135. /package/build/{chunk-L7OWQEI4.js.map → chunk-4QGQ7FU5.js.map} +0 -0
  136. /package/build/{chunk-OKM7KSQY.js.map → chunk-5OQDBYCC.js.map} +0 -0
  137. /package/build/{chunk-KZY33NY5.js.map → chunk-66VZCA5Y.js.map} +0 -0
  138. /package/build/{chunk-ULFNXCSJ.js.map → chunk-6GSUU65D.js.map} +0 -0
  139. /package/build/{chunk-NIEDH7Z5.js.map → chunk-6XQIBCEG.js.map} +0 -0
  140. /package/build/{chunk-NUKGEVK2.js.map → chunk-763CNX5X.js.map} +0 -0
  141. /package/build/{chunk-ZBIKOMT2.js.map → chunk-DTJ6JGVE.js.map} +0 -0
  142. /package/build/{chunk-7LW7GOIM.js.map → chunk-EYBSRZFX.js.map} +0 -0
  143. /package/build/{chunk-MTHAQUUR.js.map → chunk-HGBT2YDL.js.map} +0 -0
  144. /package/build/{chunk-MXCQLS7U.js.map → chunk-JMUBTRYQ.js.map} +0 -0
  145. /package/build/{chunk-JZSXLY7P.js.map → chunk-KFP5IROQ.js.map} +0 -0
  146. /package/build/{chunk-PFESKRQ3.js.map → chunk-KJC2IRIO.js.map} +0 -0
  147. /package/build/{chunk-VKQPC7RS.js.map → chunk-KRZQM5IB.js.map} +0 -0
  148. /package/build/{chunk-BQQQEWSQ.js.map → chunk-KUETLEOF.js.map} +0 -0
  149. /package/build/{chunk-72KSL2UL.js.map → chunk-LYSRG3GF.js.map} +0 -0
  150. /package/build/{chunk-QGOR6CWP.js.map → chunk-MA6ZMAQU.js.map} +0 -0
  151. /package/build/{chunk-IXDWJCSQ.js.map → chunk-MWPS57J5.js.map} +0 -0
  152. /package/build/{chunk-EBTHDX4J.js.map → chunk-N2YYKEKV.js.map} +0 -0
  153. /package/build/{chunk-TFDYF6UW.js.map → chunk-OWJ2DBNB.js.map} +0 -0
  154. /package/build/{chunk-RQWYBRCJ.js.map → chunk-OZKGZAOZ.js.map} +0 -0
  155. /package/build/{chunk-P6JSJQO7.js.map → chunk-PBUFZ6OU.js.map} +0 -0
  156. /package/build/{chunk-GKFBUNZ7.js.map → chunk-PDB7C6G4.js.map} +0 -0
  157. /package/build/{chunk-H3ASS4MY.js.map → chunk-PETG4TB5.js.map} +0 -0
  158. /package/build/{chunk-B5RG5HO2.js.map → chunk-PH4BOMTV.js.map} +0 -0
  159. /package/build/{chunk-B54YGGPW.js.map → chunk-QKIGR4DS.js.map} +0 -0
  160. /package/build/{chunk-JRRYR6TL.js.map → chunk-QYUVUKJH.js.map} +0 -0
  161. /package/build/{chunk-XOSGOQML.js.map → chunk-TL7UQCUX.js.map} +0 -0
  162. /package/build/{chunk-TWJ2IXFS.js.map → chunk-VLGQTAVU.js.map} +0 -0
  163. /package/build/{chunk-A2ZZA4JA.js.map → chunk-XEKM4VLO.js.map} +0 -0
  164. /package/build/{chunk-NXZLDPHZ.js.map → chunk-XKEFEPF6.js.map} +0 -0
  165. /package/build/{chunk-ZHZXA55V.js.map → chunk-YSTEUOSI.js.map} +0 -0
  166. /package/build/{chunk-VJXBOXVQ.js.map → chunk-ZBGLF76X.js.map} +0 -0
  167. /package/build/{dev-LMJBVIN6.js.map → dev-KS2OTEXB.js.map} +0 -0
  168. /package/build/{env-pull-SZ3UP3AS.js.map → env-pull-DS57QSQI.js.map} +0 -0
  169. /package/build/{install-W2S27UCI.js.map → install-XHQJGNSY.js.map} +0 -0
  170. /package/build/{publish-BPUUEPHR.js.map → publish-UYXDXAJ2.js.map} +0 -0
  171. /package/build/{render-command-KHMHOIGW.js.map → render-command-5VDNAXTP.js.map} +0 -0
  172. /package/build/{render-command-5VWE3OKB.js.map → render-command-GC5M477M.js.map} +0 -0
  173. /package/build/{render-command-2DXDNIXL.js.map → render-command-LZAIPJQS.js.map} +0 -0
  174. /package/build/{render-command-IDDNHTNC.js.map → render-command-LZLXAPTJ.js.map} +0 -0
  175. /package/build/{render-command-AMEJYHKN.js.map → render-command-ZYQ762CC.js.map} +0 -0
  176. /package/build/{run-command-SGO33B4C.js.map → run-command-LY3OSHGO.js.map} +0 -0
  177. /package/build/{src-FJVPEY4V.js.map → src-3KZZZJ3H.js.map} +0 -0
  178. /package/build/{src-IEVBBVLL.js.map → src-6UQ5GS34.js.map} +0 -0
  179. /package/build/{src-3KXGLTSG.js.map → src-ATQPFIAX.js.map} +0 -0
  180. /package/build/{src-X52ZO3MD.js.map → src-GA5OFATI.js.map} +0 -0
  181. /package/build/{src-XCNX6HKZ.js.map → src-JP7XE6WI.js.map} +0 -0
  182. /package/build/{src-ZCXYT4MW.js.map → src-KS2HXFOE.js.map} +0 -0
  183. /package/build/{src-2RGQFQKI.js.map → src-NXE7P7H4.js.map} +0 -0
  184. /package/build/{sync-types-GL4WG3ZS.js.map → sync-types-B47N5WP2.js.map} +0 -0
  185. /package/build/{uninstall-UW4USHS5.js.map → uninstall-2UZH5ABJ.js.map} +0 -0
@@ -0,0 +1,815 @@
1
+ import { createRequire as _createRequire } from 'node:module';
2
+ const require = _createRequire(import.meta.url);
3
+ import {
4
+ useTunnel
5
+ } from "./chunk-PDB7C6G4.js";
6
+ import {
7
+ useWixCliAppBi
8
+ } from "./chunk-BAXAZXTT.js";
9
+ import {
10
+ LivesiteLinkForApp,
11
+ PlatformLink,
12
+ SiteProvider,
13
+ SiteSelector,
14
+ readAppConfig,
15
+ saveAppConfig,
16
+ useARMClient,
17
+ useResolvePlatformUrl,
18
+ useSite,
19
+ useUpdateDeploymentTopology,
20
+ useUpdateManifest
21
+ } from "./chunk-5Z6Q4IJX.js";
22
+ import "./chunk-HZRGNT6A.js";
23
+ import "./chunk-LKYWHOMW.js";
24
+ import {
25
+ createPackageManager,
26
+ getRepoType
27
+ } from "./chunk-OZKGZAOZ.js";
28
+ import {
29
+ execa
30
+ } from "./chunk-RWTQFIPN.js";
31
+ import "./chunk-W54PG6O5.js";
32
+ import {
33
+ ComponentType,
34
+ PlatformType,
35
+ devMetadataSchema,
36
+ looseComponentSchema,
37
+ parseLooseAppManifest,
38
+ useProjectModel
39
+ } from "./chunk-MT4UEZWE.js";
40
+ import {
41
+ useHttpClient
42
+ } from "./chunk-3RVONWI7.js";
43
+ import "./chunk-6GSUU65D.js";
44
+ import {
45
+ ErrorViewer,
46
+ SiteAuthProvider,
47
+ useBiLogger,
48
+ useDebugLog,
49
+ useErrorReporter
50
+ } from "./chunk-DQULLGU7.js";
51
+ import "./chunk-WMCHVSMU.js";
52
+ import "./chunk-KUETLEOF.js";
53
+ import "./chunk-KJ37XZQA.js";
54
+ import {
55
+ Alert,
56
+ Box_default,
57
+ ConfirmInput,
58
+ Key,
59
+ PointerIcon,
60
+ Spinner,
61
+ Text,
62
+ createRendererToString,
63
+ useAsync,
64
+ useAsyncCallback,
65
+ useExit,
66
+ use_input_default
67
+ } from "./chunk-POJ57ZT2.js";
68
+ import {
69
+ require_react
70
+ } from "./chunk-NRAQAV6T.js";
71
+ import {
72
+ stripAnsi
73
+ } from "./chunk-SQ3KPTIH.js";
74
+ import "./chunk-Z4MHKCET.js";
75
+ import "./chunk-C4SUTB4O.js";
76
+ import {
77
+ readUserConfig,
78
+ updateUserConfig
79
+ } from "./chunk-XKEFEPF6.js";
80
+ import "./chunk-II7O6SCF.js";
81
+ import "./chunk-RL7RA2JG.js";
82
+ import "./chunk-763CNX5X.js";
83
+ import "./chunk-F43XHKVL.js";
84
+ import {
85
+ require_lib
86
+ } from "./chunk-CU77QH5G.js";
87
+ import {
88
+ __toESM,
89
+ init_esm_shims
90
+ } from "./chunk-4EFJZ3GQ.js";
91
+
92
+ // ../cli-astro-commands/src/components/DevCommand/index.ts
93
+ init_esm_shims();
94
+
95
+ // ../cli-astro-commands/src/components/DevCommand/DevCommand.tsx
96
+ init_esm_shims();
97
+ var import_react14 = __toESM(require_react(), 1);
98
+
99
+ // ../cli-astro-commands/src/components/DevCommand/utils/runAstroDev.ts
100
+ init_esm_shims();
101
+ var EVENT_LINE = "line";
102
+ var EVENT_SERVER_ADDRESS = "server_address";
103
+ function runAstroDev({
104
+ packageManager,
105
+ projectFolder,
106
+ port,
107
+ allowedHosts
108
+ }) {
109
+ const binaryArgs = ["astro", "dev"];
110
+ if (port) {
111
+ binaryArgs.push("--port", `${port}`);
112
+ }
113
+ if (allowedHosts) {
114
+ binaryArgs.push("--allowed-hosts", allowedHosts);
115
+ }
116
+ const { file, args } = packageManager.getRunBinaryCmd(binaryArgs);
117
+ const result = execa(file, args, {
118
+ cwd: projectFolder,
119
+ stdio: "pipe",
120
+ env: { FORCE_COLOR: "1" },
121
+ cleanup: true,
122
+ windowsHide: false
123
+ });
124
+ let stdoutBuffer = "";
125
+ result.stdout?.on("data", (chunk) => {
126
+ stdoutBuffer += chunk.toString();
127
+ const lines = stdoutBuffer.split("\n");
128
+ stdoutBuffer = lines.pop() ?? "";
129
+ for (const line of lines) {
130
+ result.stdout?.emit(EVENT_LINE, line);
131
+ if (line.includes("http://")) {
132
+ const match5 = /(http:\/\/[^\s]+)/.exec(line);
133
+ if (match5?.[1]) {
134
+ const address = stripAnsi(match5[1]).trim();
135
+ result.stdout?.emit(EVENT_SERVER_ADDRESS, address);
136
+ }
137
+ }
138
+ }
139
+ });
140
+ let stdErrBuffer = "";
141
+ result.stderr?.on("data", (chunk) => {
142
+ stdErrBuffer += chunk.toString();
143
+ const lines = stdErrBuffer.split("\n");
144
+ stdErrBuffer = lines.pop() ?? "";
145
+ for (const line of lines) {
146
+ result.stderr?.emit(EVENT_LINE, line);
147
+ }
148
+ });
149
+ return result;
150
+ }
151
+
152
+ // ../cli-astro-commands/src/components/DevCommand/utils/createAstroLogger.tsx
153
+ init_esm_shims();
154
+ var import_react = __toESM(require_react(), 1);
155
+ var dateTimeFormat = new Intl.DateTimeFormat([], {
156
+ hour: "2-digit",
157
+ minute: "2-digit",
158
+ second: "2-digit",
159
+ hour12: false
160
+ });
161
+ function createAstroLogger(isPrefixed = true) {
162
+ const renderer = createRendererToString({ stripAnsi: false });
163
+ const log = (msg) => {
164
+ if (typeof msg === "string") {
165
+ setTimeout(() => console.log(msg), 0);
166
+ } else {
167
+ setTimeout(() => console.log(renderer.render(msg)), 0);
168
+ }
169
+ };
170
+ const prefixedLog = (msg) => {
171
+ const timestamp = dateTimeFormat.format(/* @__PURE__ */ new Date());
172
+ const log2 = /* @__PURE__ */ import_react.default.createElement(Text, null, /* @__PURE__ */ import_react.default.createElement(Text, null, timestamp, " "), /* @__PURE__ */ import_react.default.createElement(Text, { skin: "info" }, "[wix] "), /* @__PURE__ */ import_react.default.createElement(Text, null, msg));
173
+ console.log(renderer.render(log2));
174
+ };
175
+ return isPrefixed ? { log: prefixedLog } : { log };
176
+ }
177
+
178
+ // ../cli-astro-commands/src/components/DevCommand/hooks/useFetchDevMetadata.ts
179
+ init_esm_shims();
180
+ function useFetchDevMetadata() {
181
+ const http = useHttpClient({ type: "standalone" });
182
+ return useAsyncCallback(async (_, serverLocalUrl) => {
183
+ const url = new URL("/_wix/dev-metadata.json", serverLocalUrl);
184
+ try {
185
+ const { data } = await http.get(url.toString());
186
+ return {
187
+ devMetadata: devMetadataSchema.parse(data),
188
+ serverLocalUrl
189
+ };
190
+ } catch {
191
+ return {
192
+ devMetadata: null,
193
+ serverLocalUrl
194
+ };
195
+ }
196
+ });
197
+ }
198
+
199
+ // ../cli-astro-commands/src/components/DevCommand/SiteDevFlow.tsx
200
+ init_esm_shims();
201
+ var import_react6 = __toESM(require_react(), 1);
202
+ var import_variant3 = __toESM(require_lib(), 1);
203
+
204
+ // ../cli-astro-commands/src/components/DevCommand/DevScreenBorder.tsx
205
+ init_esm_shims();
206
+ var import_react2 = __toESM(require_react(), 1);
207
+ var DevScreenBorder = ({ children }) => {
208
+ return /* @__PURE__ */ import_react2.default.createElement(
209
+ Box_default,
210
+ {
211
+ flexDirection: "column",
212
+ borderTop: true,
213
+ borderLeft: false,
214
+ borderBottom: false,
215
+ borderRight: false,
216
+ borderStyle: "round",
217
+ borderColor: "blueBright",
218
+ width: "95%"
219
+ },
220
+ children
221
+ );
222
+ };
223
+
224
+ // ../cli-astro-commands/src/components/DevCommand/DevCenterUpdater.tsx
225
+ init_esm_shims();
226
+ var import_react5 = __toESM(require_react(), 1);
227
+ import { isDeepStrictEqual } from "node:util";
228
+ var import_variant2 = __toESM(require_lib(), 1);
229
+
230
+ // ../cli-astro-commands/src/components/DevCommand/TunnelingConsent.tsx
231
+ init_esm_shims();
232
+ var import_react3 = __toESM(require_react(), 1);
233
+ var import_variant = __toESM(require_lib(), 1);
234
+ var TunnelingConsent = ({ required, children }) => {
235
+ const exit = useExit();
236
+ const [approved, setApproved] = (0, import_react3.useState)();
237
+ const { status } = useAsync(async () => {
238
+ const config = await readUserConfig();
239
+ if (config.tunneling) {
240
+ setApproved(true);
241
+ }
242
+ return config;
243
+ }, []);
244
+ if (!required || approved) {
245
+ return children;
246
+ }
247
+ return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, (0, import_variant.match)(status, {
248
+ Success: () => /* @__PURE__ */ import_react3.default.createElement(
249
+ ConfirmInput,
250
+ {
251
+ label: "To proceed, we'll set up a secure tunnel from your machine for development purposes",
252
+ initialValue: true,
253
+ onSubmit: async (approved2) => {
254
+ setApproved(approved2);
255
+ await updateUserConfig({ tunneling: approved2 });
256
+ if (!approved2) {
257
+ exit();
258
+ }
259
+ }
260
+ }
261
+ ),
262
+ Error: () => null,
263
+ Loading: () => null
264
+ }), approved === false && /* @__PURE__ */ import_react3.default.createElement(Text, { skin: "error" }, "Operation aborted. Tunneling is necessary to run your application."));
265
+ };
266
+
267
+ // ../cli-astro-commands/src/components/DevCommand/hooks/useFetchAppManifest.ts
268
+ init_esm_shims();
269
+ var import_react4 = __toESM(require_react(), 1);
270
+
271
+ // ../cli-astro-commands/src/components/DevCommand/utils/isTunnelRequired.ts
272
+ init_esm_shims();
273
+ function isTunnelRequired(appManifest) {
274
+ for (const extension of appManifest.components) {
275
+ const knownAppManifest = parseKnownExtensionManifest(extension);
276
+ if (knownAppManifest != null && knownAppManifest.compType === ComponentType.WEBHOOK) {
277
+ return !URL.canParse(knownAppManifest.compData.webhook.callbackUrl);
278
+ }
279
+ }
280
+ return false;
281
+ }
282
+ function parseKnownExtensionManifest(extensionManifest) {
283
+ const appManifestResult = looseComponentSchema.safeParse(extensionManifest);
284
+ if (appManifestResult.error) {
285
+ return null;
286
+ }
287
+ return appManifestResult.data;
288
+ }
289
+
290
+ // ../cli-astro-commands/src/components/DevCommand/hooks/useFetchAppManifest.ts
291
+ function useFetchAppManifest() {
292
+ const http = useHttpClient({ type: "standalone" });
293
+ return (0, import_react4.useCallback)(
294
+ async (serverLocalUrl, devMetadata, baseUrl, tunnelUrl) => {
295
+ const url = new URL("/_wix/app-manifest.json", serverLocalUrl);
296
+ const { data: text } = await http.get(url.toString(), {
297
+ responseType: "text",
298
+ transitional: {
299
+ silentJSONParsing: true,
300
+ forcedJSONParsing: false,
301
+ clarifyTimeoutError: false
302
+ },
303
+ disableWixHeaders: true
304
+ });
305
+ if (devMetadata != null) {
306
+ const placeholders = /* @__PURE__ */ new Map();
307
+ placeholders.set(devMetadata.staticsUrlPlaceholder, baseUrl);
308
+ placeholders.set(devMetadata.serverUrlPlaceholder, tunnelUrl);
309
+ return {
310
+ manifest: parseLooseAppManifest(text, placeholders),
311
+ isTunnelRequired: text.includes(devMetadata.serverUrlPlaceholder)
312
+ };
313
+ }
314
+ const manifestV1 = parseLooseAppManifest(text);
315
+ return {
316
+ manifest: manifestV1,
317
+ isTunnelRequired: isTunnelRequired(manifestV1)
318
+ };
319
+ },
320
+ [http]
321
+ );
322
+ }
323
+
324
+ // ../cli-astro-commands/src/components/DevCommand/DevCenterUpdater.tsx
325
+ var DevCenterUpdateResult = (0, import_variant2.variant)({
326
+ Changed: (0, import_variant2.fields)(),
327
+ Unchanged: {}
328
+ });
329
+ var DevCenterUpdater = ({ serverLocalUrl, serverExposedUrl, devMetadata }) => {
330
+ const { site } = useSite();
331
+ const [devArmTag, setDevArmTag] = (0, import_react5.useState)("");
332
+ const [manifest, setManifest] = (0, import_react5.useState)(null);
333
+ const writeToDebugLog = useDebugLog();
334
+ const {
335
+ model: {
336
+ config: { appId },
337
+ projectFolder
338
+ }
339
+ } = useProjectModel();
340
+ const logger = (0, import_react5.useMemo)(() => createAstroLogger(), []);
341
+ const { updateManifest } = useUpdateManifest();
342
+ const arm = useARMClient();
343
+ const updateDeploymentTopology = useUpdateDeploymentTopology(site.id);
344
+ const openTunnel = useTunnel();
345
+ const tunnelUrl = (0, import_react5.useRef)();
346
+ const [tunnelRequired, setTunnelRequired] = (0, import_react5.useState)(false);
347
+ const fetchAppManifest = useFetchAppManifest();
348
+ const updateDevCenter = (0, import_react5.useCallback)(async () => {
349
+ const baseUrl = serverExposedUrl ?? serverLocalUrl;
350
+ const { manifest: latestManifest, isTunnelRequired: isTunnelRequired2 } = await fetchAppManifest(
351
+ serverLocalUrl,
352
+ devMetadata,
353
+ baseUrl,
354
+ tunnelUrl.current ?? baseUrl
355
+ );
356
+ if (isDeepStrictEqual(manifest, latestManifest)) {
357
+ return DevCenterUpdateResult.Unchanged();
358
+ }
359
+ if (!serverExposedUrl && !tunnelUrl.current && isTunnelRequired2) {
360
+ const config = await readUserConfig();
361
+ if (!config.tunneling) {
362
+ setTunnelRequired(true);
363
+ return DevCenterUpdateResult.Unchanged();
364
+ }
365
+ const serverLocalPort = parseInt(new URL(serverLocalUrl).port, 10);
366
+ const tunnel = await openTunnel(serverLocalPort);
367
+ tunnelUrl.current = tunnel.url;
368
+ return DevCenterUpdateResult.Unchanged();
369
+ }
370
+ const appConfig = await readAppConfig(projectFolder);
371
+ let updatedDevArmTag = appConfig?.devArmTag;
372
+ if (!updatedDevArmTag) {
373
+ updatedDevArmTag = await arm.createLooseAppRelease(
374
+ updateManifest(latestManifest, baseUrl, tunnelUrl.current),
375
+ appId
376
+ );
377
+ } else {
378
+ const updateState = await arm.updateLooseAppRelease(
379
+ updateManifest(latestManifest, baseUrl, tunnelUrl.current),
380
+ updatedDevArmTag
381
+ );
382
+ if (!(0, import_variant2.isType)(updateState, "TagUpdated")) {
383
+ updatedDevArmTag = await arm.createLooseAppRelease(
384
+ updateManifest(latestManifest, baseUrl, tunnelUrl.current),
385
+ appId
386
+ );
387
+ }
388
+ }
389
+ if (updatedDevArmTag !== appConfig?.devArmTag) {
390
+ await saveAppConfig(projectFolder, { devArmTag: updatedDevArmTag });
391
+ }
392
+ setManifest(latestManifest);
393
+ setDevArmTag(updatedDevArmTag);
394
+ await updateDeploymentTopology.execute({
395
+ siteUrl: baseUrl,
396
+ armTag: updatedDevArmTag,
397
+ environment: "development"
398
+ });
399
+ const armTagChanged = !!appConfig?.devArmTag && updatedDevArmTag !== appConfig.devArmTag;
400
+ return DevCenterUpdateResult.Changed({ armTagChanged });
401
+ }, [
402
+ fetchAppManifest,
403
+ updateManifest,
404
+ serverLocalUrl,
405
+ serverExposedUrl,
406
+ arm,
407
+ manifest,
408
+ projectFolder,
409
+ appId,
410
+ updateDeploymentTopology,
411
+ openTunnel,
412
+ devMetadata
413
+ ]);
414
+ const [timer, setTimer] = (0, import_react5.useState)(Date.now());
415
+ (0, import_react5.useEffect)(() => {
416
+ let disposed = false;
417
+ void updateDevCenter().then((result) => {
418
+ if ((0, import_variant2.isType)(result, "Changed")) {
419
+ logger.log(
420
+ "App Manifest updated. Refresh existing browser tabs to view the latest changes."
421
+ );
422
+ }
423
+ }).catch((error) => {
424
+ logger.log("Failed to update App Manifest");
425
+ logger.log(`${error}`);
426
+ writeToDebugLog(error);
427
+ }).then(() => {
428
+ if (!disposed) {
429
+ setTimeout(() => setTimer(Date.now()), 1e3);
430
+ }
431
+ });
432
+ return () => {
433
+ disposed = true;
434
+ };
435
+ }, [timer]);
436
+ return /* @__PURE__ */ import_react5.default.createElement(Box_default, { rowGap: 1, marginY: 1, flexDirection: "column" }, /* @__PURE__ */ import_react5.default.createElement(TunnelingConsent, { required: tunnelRequired }, /* @__PURE__ */ import_react5.default.createElement(Text, null, "Open the preview on:"), /* @__PURE__ */ import_react5.default.createElement(Box_default, { paddingLeft: 2, flexDirection: "column" }, /* @__PURE__ */ import_react5.default.createElement(PlatformLink, { url: serverLocalUrl, label: "Site" }), devArmTag ? /* @__PURE__ */ import_react5.default.createElement(
437
+ PlatformLink,
438
+ {
439
+ url: `https://manage.wix.com/dashboard/${site.id}?apps-override=${devArmTag}`,
440
+ label: "Dashboard"
441
+ }
442
+ ) : /* @__PURE__ */ import_react5.default.createElement(Spinner, { text: "Preparing your dashboard..." }))));
443
+ };
444
+
445
+ // ../cli-astro-commands/src/components/DevCommand/SiteDevFlow.tsx
446
+ var SiteDevFlow = ({
447
+ devMetadataStatus,
448
+ serverExposedUrl
449
+ }) => {
450
+ const { site } = useSite();
451
+ return /* @__PURE__ */ import_react6.default.createElement(SiteAuthProvider, { siteId: site.id }, (0, import_variant3.match)(devMetadataStatus, {
452
+ NotRequested: () => /* @__PURE__ */ import_react6.default.createElement(Spinner, { text: "Starting dev environment..." }),
453
+ Error: () => null,
454
+ Loading: () => /* @__PURE__ */ import_react6.default.createElement(Spinner, { text: "Checking dev environment settings..." }),
455
+ Success: ({ result: { devMetadata, serverLocalUrl } }) => /* @__PURE__ */ import_react6.default.createElement(DevScreenBorder, null, /* @__PURE__ */ import_react6.default.createElement(Text, null, "Development environment ready"), /* @__PURE__ */ import_react6.default.createElement(
456
+ DevCenterUpdater,
457
+ {
458
+ devMetadata,
459
+ serverLocalUrl,
460
+ serverExposedUrl
461
+ }
462
+ ))
463
+ }));
464
+ };
465
+
466
+ // ../cli-astro-commands/src/components/DevCommand/AppDevFlow.tsx
467
+ init_esm_shims();
468
+ var import_react13 = __toESM(require_react(), 1);
469
+ var import_variant7 = __toESM(require_lib(), 1);
470
+
471
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/AppDev.tsx
472
+ init_esm_shims();
473
+ var import_react12 = __toESM(require_react(), 1);
474
+ var import_variant6 = __toESM(require_lib(), 1);
475
+
476
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/screen-state.ts
477
+ init_esm_shims();
478
+ var import_variant4 = __toESM(require_lib(), 1);
479
+ var ScreenState = (0, import_variant4.variant)({
480
+ Home: {},
481
+ SiteSelector: {}
482
+ });
483
+
484
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/SiteSelectorScreen.tsx
485
+ init_esm_shims();
486
+ var import_react8 = __toESM(require_react(), 1);
487
+
488
+ // ../cli-astro-commands/src/components/CloseScreen/index.tsx
489
+ init_esm_shims();
490
+
491
+ // ../cli-astro-commands/src/components/CloseScreen/CloseScreen.tsx
492
+ init_esm_shims();
493
+ var import_react7 = __toESM(require_react(), 1);
494
+ var CloseScreen = ({ onClose }) => {
495
+ const bi = useWixCliAppBi();
496
+ use_input_default((_, key) => {
497
+ if (key.escape) {
498
+ bi.cliAction({
499
+ question: "Press to close",
500
+ questionKey: "general.close_screen",
501
+ action: "close",
502
+ key: "esc"
503
+ });
504
+ onClose();
505
+ }
506
+ });
507
+ return /* @__PURE__ */ import_react7.default.createElement(Text, { skin: "secondary" }, "Press", /* @__PURE__ */ import_react7.default.createElement(Key, { value: "esc", skin: "secondary" }), "to close");
508
+ };
509
+
510
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/SiteSelectorScreen.tsx
511
+ var SiteSelectorScreen = ({ onScreenChange }) => {
512
+ const { model } = useProjectModel();
513
+ const biLogger = useBiLogger();
514
+ const { site, setSite } = useSite();
515
+ const { reportError } = useErrorReporter();
516
+ const [error, setError] = (0, import_react8.useState)(null);
517
+ const handleError = (0, import_react8.useCallback)(
518
+ (error2) => {
519
+ reportError(error2);
520
+ setError(error2);
521
+ },
522
+ [reportError, setError]
523
+ );
524
+ const handleSubmit = (0, import_react8.useCallback)(
525
+ async (site2) => {
526
+ try {
527
+ await setSite(site2);
528
+ onScreenChange(ScreenState.Home());
529
+ } catch (e) {
530
+ handleError(e);
531
+ }
532
+ },
533
+ [setSite, onScreenChange, handleError]
534
+ );
535
+ return /* @__PURE__ */ import_react8.default.createElement(Box_default, { flexDirection: "column", gap: 1 }, /* @__PURE__ */ import_react8.default.createElement(Box_default, { gap: 1 }, /* @__PURE__ */ import_react8.default.createElement(PointerIcon, null), /* @__PURE__ */ import_react8.default.createElement(Text, null, "Current Development Site: ", site.displayName)), /* @__PURE__ */ import_react8.default.createElement(Box_default, { flexDirection: "column" }, /* @__PURE__ */ import_react8.default.createElement(
536
+ SiteSelector,
537
+ {
538
+ appId: model.config.appId,
539
+ biLogger,
540
+ onSubmit: handleSubmit,
541
+ onError: handleError
542
+ }
543
+ ), error ? /* @__PURE__ */ import_react8.default.createElement(
544
+ ErrorViewer,
545
+ {
546
+ error,
547
+ systemErrorOverride: /* @__PURE__ */ import_react8.default.createElement(Alert, { type: "error" }, "Failed to change Development Site!")
548
+ }
549
+ ) : null), /* @__PURE__ */ import_react8.default.createElement(CloseScreen, { onClose: () => onScreenChange(ScreenState.Home()) }));
550
+ };
551
+
552
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/HomeScreen.tsx
553
+ init_esm_shims();
554
+ var import_react10 = __toESM(require_react(), 1);
555
+ import process from "node:process";
556
+
557
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/SwitchSite.tsx
558
+ init_esm_shims();
559
+ var import_react9 = __toESM(require_react(), 1);
560
+ var SwitchSite = ({ onScreenChange }) => {
561
+ const bi = useWixCliAppBi();
562
+ use_input_default(async (input) => {
563
+ if (input === "c") {
564
+ bi.cliAction({
565
+ question: "Switch Dev Site",
566
+ questionKey: "dev_command.dev_site.change",
567
+ action: "change_site",
568
+ key: input
569
+ });
570
+ onScreenChange(ScreenState.SiteSelector());
571
+ }
572
+ });
573
+ return /* @__PURE__ */ import_react9.default.createElement(Text, { skin: "secondary" }, "(Press ", /* @__PURE__ */ import_react9.default.createElement(Key, { value: "C", skin: "secondary" }), " to switch)");
574
+ };
575
+
576
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/HomeScreen.tsx
577
+ var HomeScreen = ({
578
+ onScreenChange,
579
+ devArmTag
580
+ }) => {
581
+ const { site } = useSite();
582
+ return /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(Box_default, { gap: 1 }, /* @__PURE__ */ import_react10.default.createElement(Text, null, "Current Dev Site:"), /* @__PURE__ */ import_react10.default.createElement(Text, { bold: true, skin: "info" }, site.displayName), process.stdin.isTTY && /* @__PURE__ */ import_react10.default.createElement(SwitchSite, { onScreenChange })), /* @__PURE__ */ import_react10.default.createElement(Box_default, { paddingTop: 1, paddingBottom: 1, flexDirection: "column" }, /* @__PURE__ */ import_react10.default.createElement(Text, null, "Open the preview on:"), /* @__PURE__ */ import_react10.default.createElement(Box_default, { paddingLeft: 2, flexDirection: "column" }, devArmTag ? /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(LivesiteLinkForApp, { armTag: devArmTag }), /* @__PURE__ */ import_react10.default.createElement(
583
+ PlatformLink,
584
+ {
585
+ url: `https://manage.wix.com/dashboard/${site.id}?apps-override=${devArmTag}`,
586
+ label: "Dashboard"
587
+ }
588
+ )) : /* @__PURE__ */ import_react10.default.createElement(Spinner, { text: "Preparing your dashboard..." }))));
589
+ };
590
+
591
+ // ../cli-astro-commands/src/components/DevCommand/hooks/useDevCenterUpdater.ts
592
+ init_esm_shims();
593
+ var import_react11 = __toESM(require_react(), 1);
594
+ var import_variant5 = __toESM(require_lib(), 1);
595
+ import { isDeepStrictEqual as isDeepStrictEqual2 } from "node:util";
596
+ var DevCenterUpdateResult2 = (0, import_variant5.variant)({
597
+ Changed: (0, import_variant5.fields)(),
598
+ Unchanged: {}
599
+ });
600
+ var useDevCenterUpdater = ({
601
+ serverLocalUrl,
602
+ serverExposedUrl,
603
+ devMetadata
604
+ }) => {
605
+ const [devArmTag, setDevArmTag] = (0, import_react11.useState)();
606
+ const [manifest, setManifest] = (0, import_react11.useState)(null);
607
+ const writeToDebugLog = useDebugLog();
608
+ const resolvePlatformUrl = useResolvePlatformUrl();
609
+ const {
610
+ model: {
611
+ config: { appId, projectType },
612
+ projectFolder
613
+ }
614
+ } = useProjectModel();
615
+ const logger = (0, import_react11.useMemo)(() => createAstroLogger(), []);
616
+ const { updateManifest } = useUpdateManifest();
617
+ const arm = useARMClient();
618
+ const { site } = useSite();
619
+ const updateDeploymentTopology = useUpdateDeploymentTopology(site.id);
620
+ const openTunnel = useTunnel();
621
+ const tunnelUrl = (0, import_react11.useRef)();
622
+ const [tunnelRequired, setTunnelRequired] = (0, import_react11.useState)(false);
623
+ const fetchAppManifest = useFetchAppManifest();
624
+ const updateDevCenter = (0, import_react11.useCallback)(async () => {
625
+ const baseUrl = serverExposedUrl ?? serverLocalUrl;
626
+ const { manifest: latestManifest, isTunnelRequired: isTunnelRequired2 } = await fetchAppManifest(
627
+ serverLocalUrl,
628
+ devMetadata,
629
+ baseUrl,
630
+ tunnelUrl.current ?? baseUrl
631
+ );
632
+ if (isDeepStrictEqual2(manifest, latestManifest)) {
633
+ return DevCenterUpdateResult2.Unchanged();
634
+ }
635
+ if (!serverExposedUrl && !tunnelUrl.current && isTunnelRequired2) {
636
+ const config = await readUserConfig();
637
+ if (!config.tunneling) {
638
+ setTunnelRequired(true);
639
+ return DevCenterUpdateResult2.Unchanged();
640
+ }
641
+ const serverLocalPort = parseInt(new URL(serverLocalUrl).port, 10);
642
+ const tunnel = await openTunnel(serverLocalPort);
643
+ tunnelUrl.current = tunnel.url;
644
+ return DevCenterUpdateResult2.Unchanged();
645
+ }
646
+ const appConfig = await readAppConfig(projectFolder);
647
+ let updatedDevArmTag = appConfig?.devArmTag;
648
+ if (!updatedDevArmTag) {
649
+ updatedDevArmTag = await arm.createLooseAppRelease(
650
+ updateManifest(latestManifest, baseUrl, tunnelUrl.current),
651
+ appId
652
+ );
653
+ } else {
654
+ const updateState = await arm.updateLooseAppRelease(
655
+ updateManifest(latestManifest, baseUrl, tunnelUrl.current),
656
+ updatedDevArmTag
657
+ );
658
+ if (!(0, import_variant5.isType)(updateState, "TagUpdated")) {
659
+ updatedDevArmTag = await arm.createLooseAppRelease(
660
+ updateManifest(latestManifest, baseUrl, tunnelUrl.current),
661
+ appId
662
+ );
663
+ }
664
+ }
665
+ if (updatedDevArmTag !== appConfig?.devArmTag) {
666
+ await saveAppConfig(projectFolder, { devArmTag: updatedDevArmTag });
667
+ }
668
+ setManifest(latestManifest);
669
+ setDevArmTag(updatedDevArmTag);
670
+ await updateDeploymentTopology.execute({
671
+ siteUrl: projectType === "Site" ? baseUrl : resolvePlatformUrl({
672
+ platformType: PlatformType.Site(),
673
+ armTag: updatedDevArmTag
674
+ }),
675
+ armTag: updatedDevArmTag,
676
+ environment: "development"
677
+ });
678
+ const armTagChanged = !!appConfig?.devArmTag && updatedDevArmTag !== appConfig.devArmTag;
679
+ return DevCenterUpdateResult2.Changed({ armTagChanged });
680
+ }, [
681
+ fetchAppManifest,
682
+ updateManifest,
683
+ serverLocalUrl,
684
+ serverExposedUrl,
685
+ arm,
686
+ manifest,
687
+ projectFolder,
688
+ appId,
689
+ updateDeploymentTopology,
690
+ openTunnel,
691
+ devMetadata,
692
+ projectType,
693
+ resolvePlatformUrl
694
+ ]);
695
+ const [timer, setTimer] = (0, import_react11.useState)(Date.now());
696
+ (0, import_react11.useEffect)(() => {
697
+ let disposed = false;
698
+ void updateDevCenter().then((result) => {
699
+ if ((0, import_variant5.isType)(result, "Changed")) {
700
+ logger.log(
701
+ "App Manifest updated. Refresh existing browser tabs to view the latest changes."
702
+ );
703
+ }
704
+ }).catch((error) => {
705
+ logger.log("Failed to update App Manifest");
706
+ logger.log(`${error}`);
707
+ writeToDebugLog(error);
708
+ }).then(() => {
709
+ if (!disposed) {
710
+ setTimeout(() => setTimer(Date.now()), 1e3);
711
+ }
712
+ });
713
+ return () => {
714
+ disposed = true;
715
+ };
716
+ }, [timer]);
717
+ return { tunnelRequired, devArmTag };
718
+ };
719
+
720
+ // ../cli-astro-commands/src/components/DevCommand/app-flow/AppDev.tsx
721
+ var AppDev = ({
722
+ serverLocalUrl,
723
+ serverExposedUrl,
724
+ devMetadata
725
+ }) => {
726
+ const [screen, setScreen] = (0, import_react12.useState)(ScreenState.Home());
727
+ const { tunnelRequired, devArmTag } = useDevCenterUpdater({
728
+ serverLocalUrl,
729
+ serverExposedUrl,
730
+ devMetadata
731
+ });
732
+ return /* @__PURE__ */ import_react12.default.createElement(TunnelingConsent, { required: tunnelRequired }, (0, import_variant6.match)(screen, {
733
+ Home: () => /* @__PURE__ */ import_react12.default.createElement(HomeScreen, { onScreenChange: setScreen, devArmTag }),
734
+ SiteSelector: () => /* @__PURE__ */ import_react12.default.createElement(SiteSelectorScreen, { onScreenChange: setScreen })
735
+ }));
736
+ };
737
+
738
+ // ../cli-astro-commands/src/components/DevCommand/AppDevFlow.tsx
739
+ var AppDevFlow = ({
740
+ devMetadataStatus,
741
+ serverExposedUrl
742
+ }) => {
743
+ return (0, import_variant7.match)(devMetadataStatus, {
744
+ NotRequested: () => /* @__PURE__ */ import_react13.default.createElement(Spinner, { text: "Starting dev environment..." }),
745
+ Error: () => null,
746
+ Loading: () => /* @__PURE__ */ import_react13.default.createElement(Spinner, { text: "Checking dev environment settings..." }),
747
+ Success: ({ result: { devMetadata, serverLocalUrl } }) => {
748
+ return /* @__PURE__ */ import_react13.default.createElement(DevScreenBorder, null, /* @__PURE__ */ import_react13.default.createElement(
749
+ AppDev,
750
+ {
751
+ serverLocalUrl,
752
+ serverExposedUrl,
753
+ devMetadata
754
+ }
755
+ ));
756
+ }
757
+ });
758
+ };
759
+
760
+ // ../cli-astro-commands/src/components/DevCommand/DevCommand.tsx
761
+ var DevCommand = ({
762
+ port,
763
+ allowedHosts,
764
+ serverExposedUrl
765
+ }) => {
766
+ const {
767
+ model: { config, projectFolder }
768
+ } = useProjectModel();
769
+ const logger = (0, import_react14.useMemo)(() => createAstroLogger(false), []);
770
+ const astroProcess = (0, import_react14.useRef)();
771
+ const fetchDevMetadataAction = useFetchDevMetadata();
772
+ useAsync(async () => {
773
+ const repoType = await getRepoType(projectFolder);
774
+ const packageManager = await createPackageManager(repoType);
775
+ const astro = runAstroDev({
776
+ packageManager,
777
+ projectFolder,
778
+ port,
779
+ allowedHosts
780
+ });
781
+ astroProcess.current = astro;
782
+ astro.stdout?.once(EVENT_SERVER_ADDRESS, (address) => {
783
+ void fetchDevMetadataAction.execute(address);
784
+ });
785
+ astro.stdout?.on(EVENT_LINE, (line) => logger.log(line));
786
+ astro.stderr?.on(EVENT_LINE, (line) => logger.log(line));
787
+ }, []);
788
+ (0, import_react14.useEffect)(() => {
789
+ return () => {
790
+ if (astroProcess.current?.pid) {
791
+ try {
792
+ astroProcess.current.kill("SIGTERM");
793
+ } catch {
794
+ }
795
+ }
796
+ };
797
+ }, []);
798
+ return /* @__PURE__ */ import_react14.default.createElement(SiteProvider, null, config.projectType === "Site" ? /* @__PURE__ */ import_react14.default.createElement(
799
+ SiteDevFlow,
800
+ {
801
+ devMetadataStatus: fetchDevMetadataAction.status,
802
+ serverExposedUrl
803
+ }
804
+ ) : /* @__PURE__ */ import_react14.default.createElement(
805
+ AppDevFlow,
806
+ {
807
+ devMetadataStatus: fetchDevMetadataAction.status,
808
+ serverExposedUrl
809
+ }
810
+ ));
811
+ };
812
+ export {
813
+ DevCommand
814
+ };
815
+ //# sourceMappingURL=DevCommand-NTBBKMAA.js.map