@wix/cli 1.1.63 → 1.1.65

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 (118) hide show
  1. package/build/{DevCommand-3ELW3L6N.js → DevCommand-AVJ663GA.js} +72 -40
  2. package/build/DevCommand-AVJ663GA.js.map +1 -0
  3. package/build/{DevCommand-VKO2WHGU.js → DevCommand-IHVIU2N4.js} +12 -12
  4. package/build/{LoginCommand-Y4STX5I4.js → LoginCommand-XQFHRT7W.js} +10 -10
  5. package/build/{LogoutCommand-IXNGVG5L.js → LogoutCommand-YY7MRKCM.js} +7 -7
  6. package/build/PreviewCommand-3OABJYJD.js +70 -0
  7. package/build/PreviewCommand-3OABJYJD.js.map +1 -0
  8. package/build/PublishCommand-ISZPYYXM.js +117 -0
  9. package/build/PublishCommand-ISZPYYXM.js.map +1 -0
  10. package/build/{WhoamiCommand-UJUYYBBU.js → WhoamiCommand-GWPNPHRL.js} +4 -4
  11. package/build/{chunk-2NWGTFAC.js → chunk-2K5KKUL3.js} +5 -3
  12. package/build/{chunk-2NWGTFAC.js.map → chunk-2K5KKUL3.js.map} +1 -1
  13. package/build/{chunk-RESBATTJ.js → chunk-3P5PTIBR.js} +2 -2
  14. package/build/{chunk-HU33E37I.js → chunk-4XPWCRGU.js} +276 -278
  15. package/build/{chunk-HU33E37I.js.map → chunk-4XPWCRGU.js.map} +1 -1
  16. package/build/{chunk-IVOZDAHR.js → chunk-5WRZJFXK.js} +5 -5
  17. package/build/{chunk-QKFGKDHU.js → chunk-AOWEDNOF.js} +348 -583
  18. package/build/chunk-AOWEDNOF.js.map +1 -0
  19. package/build/{chunk-EYBRAJ77.js → chunk-BCT5PAPG.js} +6 -6
  20. package/build/{chunk-3JTFUCV6.js → chunk-BEXERG7F.js} +48 -5
  21. package/build/chunk-BEXERG7F.js.map +1 -0
  22. package/build/{chunk-BGKFJNUK.js → chunk-CNXKF7E3.js} +16 -14
  23. package/build/chunk-CNXKF7E3.js.map +1 -0
  24. package/build/{chunk-QI3N3YSP.js → chunk-IC6K6CSD.js} +3 -3
  25. package/build/{chunk-3FASMGNL.js → chunk-JASQWANH.js} +3 -3
  26. package/build/{chunk-BRYY76CH.js → chunk-JKBX72QC.js} +4 -4
  27. package/build/{chunk-TOWDJ5TL.js → chunk-JXGBYZK7.js} +14 -17
  28. package/build/chunk-JXGBYZK7.js.map +1 -0
  29. package/build/{chunk-BTM6MXTF.js → chunk-KJCRO3PB.js} +5 -5
  30. package/build/{chunk-3WRRBP7H.js → chunk-KJXGVQP7.js} +7 -7
  31. package/build/{chunk-HNWUYQMU.js → chunk-N4L3XZI3.js} +4 -4
  32. package/build/{PreviewCommand-45QLRRAO.js → chunk-NXGJ6P6H.js} +67 -123
  33. package/build/chunk-NXGJ6P6H.js.map +1 -0
  34. package/build/{chunk-IFBC6MP5.js → chunk-PWEJ3IWM.js} +4 -2
  35. package/build/{chunk-IFBC6MP5.js.map → chunk-PWEJ3IWM.js.map} +1 -1
  36. package/build/{chunk-HIHMLMRD.js → chunk-QP2SHVU3.js} +2 -2
  37. package/build/{chunk-LR6CHFGP.js → chunk-QPYNVASM.js} +2 -2
  38. package/build/{chunk-WBF5ALFE.js → chunk-TIHCOJHY.js} +4 -4
  39. package/build/{chunk-R4KXK4HG.js → chunk-UHGVP5PT.js} +3 -3
  40. package/build/{chunk-XCXYK7C7.js → chunk-UK7CHIDM.js} +2 -2
  41. package/build/chunk-UQM2YHYJ.js +30 -0
  42. package/build/chunk-UQM2YHYJ.js.map +1 -0
  43. package/build/{chunk-JR2KZTME.js → chunk-YHMLI3NZ.js} +2 -2
  44. package/build/{chunk-WSW2V2ZB.js → chunk-YX66M2XN.js} +2 -2
  45. package/build/{chunk-UPXCPX6R.js → chunk-Z3MJ3WPQ.js} +11 -5
  46. package/build/{chunk-UPXCPX6R.js.map → chunk-Z3MJ3WPQ.js.map} +1 -1
  47. package/build/{chunk-FO4JMX7I.js → chunk-Z4TKBS7R.js} +4 -4
  48. package/build/{chunk-FO4JMX7I.js.map → chunk-Z4TKBS7R.js.map} +1 -1
  49. package/build/{chunk-SYSWGRNF.js → chunk-ZLPYLX6E.js} +27 -11
  50. package/build/{chunk-SYSWGRNF.js.map → chunk-ZLPYLX6E.js.map} +1 -1
  51. package/build/{chunk-DGB22FOE.js → chunk-ZM6OUS2J.js} +5 -5
  52. package/build/{dev-BEXFZPJS.js → dev-62KN3SLL.js} +26 -26
  53. package/build/dev-62KN3SLL.js.map +1 -0
  54. package/build/index.js +26 -26
  55. package/build/{install-KBEEKENQ.js → install-L6C6V6OD.js} +14 -14
  56. package/build/{preview-YOWBWDEY.js → preview-LDXRFIMB.js} +17 -17
  57. package/build/{publish-KH6HTTQW.js → publish-FNN2BROO.js} +19 -19
  58. package/build/{render-command-E74W4QNK.js → render-command-GLPKMOXW.js} +10 -10
  59. package/build/{render-command-4FI34WBA.js → render-command-IPDLSBIH.js} +9 -9
  60. package/build/{render-command-VY7HKWP4.js → render-command-RBG7263F.js} +11 -11
  61. package/build/{run-command-3FVZZEPI.js → run-command-DDRX6HA4.js} +6 -6
  62. package/build/{src-KVHMNIWM.js → src-5FM5LBPG.js} +34 -10
  63. package/build/src-5FM5LBPG.js.map +1 -0
  64. package/build/{src-XSN6C5L2.js → src-DFC4OJXU.js} +3 -3
  65. package/build/{src-JHDL6HRJ.js → src-NDQ3YSVS.js} +6 -6
  66. package/build/{src-U4W7RS6S.js → src-QDEPJEVY.js} +4 -4
  67. package/build/{src-ECBBCYB3.js → src-RLHCQYHW.js} +2 -2
  68. package/build/{src-QOI2D3S4.js → src-WZQSHEYJ.js} +7 -7
  69. package/build/{src-4XL5NTJS.js → src-YKFH53HG.js} +17 -17
  70. package/build/{sync-types-TMGYTVGL.js → sync-types-5QBTKL42.js} +12 -12
  71. package/build/{uninstall-KAFGDOR7.js → uninstall-X66KBPSO.js} +14 -14
  72. package/package.json +2 -2
  73. package/build/DevCommand-3ELW3L6N.js.map +0 -1
  74. package/build/PreviewCommand-45QLRRAO.js.map +0 -1
  75. package/build/chunk-3JTFUCV6.js.map +0 -1
  76. package/build/chunk-BGKFJNUK.js.map +0 -1
  77. package/build/chunk-QKFGKDHU.js.map +0 -1
  78. package/build/chunk-TOWDJ5TL.js.map +0 -1
  79. package/build/chunk-VXGNI7CP.js +0 -21
  80. package/build/chunk-VXGNI7CP.js.map +0 -1
  81. package/build/dev-BEXFZPJS.js.map +0 -1
  82. package/build/src-KVHMNIWM.js.map +0 -1
  83. /package/build/{DevCommand-VKO2WHGU.js.map → DevCommand-IHVIU2N4.js.map} +0 -0
  84. /package/build/{LoginCommand-Y4STX5I4.js.map → LoginCommand-XQFHRT7W.js.map} +0 -0
  85. /package/build/{LogoutCommand-IXNGVG5L.js.map → LogoutCommand-YY7MRKCM.js.map} +0 -0
  86. /package/build/{WhoamiCommand-UJUYYBBU.js.map → WhoamiCommand-GWPNPHRL.js.map} +0 -0
  87. /package/build/{chunk-RESBATTJ.js.map → chunk-3P5PTIBR.js.map} +0 -0
  88. /package/build/{chunk-IVOZDAHR.js.map → chunk-5WRZJFXK.js.map} +0 -0
  89. /package/build/{chunk-EYBRAJ77.js.map → chunk-BCT5PAPG.js.map} +0 -0
  90. /package/build/{chunk-QI3N3YSP.js.map → chunk-IC6K6CSD.js.map} +0 -0
  91. /package/build/{chunk-3FASMGNL.js.map → chunk-JASQWANH.js.map} +0 -0
  92. /package/build/{chunk-BRYY76CH.js.map → chunk-JKBX72QC.js.map} +0 -0
  93. /package/build/{chunk-BTM6MXTF.js.map → chunk-KJCRO3PB.js.map} +0 -0
  94. /package/build/{chunk-3WRRBP7H.js.map → chunk-KJXGVQP7.js.map} +0 -0
  95. /package/build/{chunk-HNWUYQMU.js.map → chunk-N4L3XZI3.js.map} +0 -0
  96. /package/build/{chunk-HIHMLMRD.js.map → chunk-QP2SHVU3.js.map} +0 -0
  97. /package/build/{chunk-LR6CHFGP.js.map → chunk-QPYNVASM.js.map} +0 -0
  98. /package/build/{chunk-WBF5ALFE.js.map → chunk-TIHCOJHY.js.map} +0 -0
  99. /package/build/{chunk-R4KXK4HG.js.map → chunk-UHGVP5PT.js.map} +0 -0
  100. /package/build/{chunk-XCXYK7C7.js.map → chunk-UK7CHIDM.js.map} +0 -0
  101. /package/build/{chunk-JR2KZTME.js.map → chunk-YHMLI3NZ.js.map} +0 -0
  102. /package/build/{chunk-WSW2V2ZB.js.map → chunk-YX66M2XN.js.map} +0 -0
  103. /package/build/{chunk-DGB22FOE.js.map → chunk-ZM6OUS2J.js.map} +0 -0
  104. /package/build/{install-KBEEKENQ.js.map → install-L6C6V6OD.js.map} +0 -0
  105. /package/build/{preview-YOWBWDEY.js.map → preview-LDXRFIMB.js.map} +0 -0
  106. /package/build/{publish-KH6HTTQW.js.map → publish-FNN2BROO.js.map} +0 -0
  107. /package/build/{render-command-E74W4QNK.js.map → render-command-GLPKMOXW.js.map} +0 -0
  108. /package/build/{render-command-4FI34WBA.js.map → render-command-IPDLSBIH.js.map} +0 -0
  109. /package/build/{render-command-VY7HKWP4.js.map → render-command-RBG7263F.js.map} +0 -0
  110. /package/build/{run-command-3FVZZEPI.js.map → run-command-DDRX6HA4.js.map} +0 -0
  111. /package/build/{src-ECBBCYB3.js.map → src-DFC4OJXU.js.map} +0 -0
  112. /package/build/{src-JHDL6HRJ.js.map → src-NDQ3YSVS.js.map} +0 -0
  113. /package/build/{src-QOI2D3S4.js.map → src-QDEPJEVY.js.map} +0 -0
  114. /package/build/{src-U4W7RS6S.js.map → src-RLHCQYHW.js.map} +0 -0
  115. /package/build/{src-XSN6C5L2.js.map → src-WZQSHEYJ.js.map} +0 -0
  116. /package/build/{src-4XL5NTJS.js.map → src-YKFH53HG.js.map} +0 -0
  117. /package/build/{sync-types-TMGYTVGL.js.map → sync-types-5QBTKL42.js.map} +0 -0
  118. /package/build/{uninstall-KAFGDOR7.js.map → uninstall-X66KBPSO.js.map} +0 -0
@@ -5,21 +5,21 @@ import {
5
5
  } from "./chunk-EDFOB3LN.js";
6
6
  import {
7
7
  GridAppLayout
8
- } from "./chunk-HIHMLMRD.js";
8
+ } from "./chunk-QP2SHVU3.js";
9
9
  import {
10
10
  extractHttpError
11
- } from "./chunk-SYSWGRNF.js";
11
+ } from "./chunk-ZLPYLX6E.js";
12
12
  import {
13
13
  WIX_LOCK_FILENAME,
14
14
  getSourceFolder
15
15
  } from "./chunk-SEOIN2A6.js";
16
16
  import {
17
17
  pathExists
18
- } from "./chunk-LR6CHFGP.js";
18
+ } from "./chunk-QPYNVASM.js";
19
19
  import {
20
20
  CliError,
21
21
  CliErrorCode
22
- } from "./chunk-IFBC6MP5.js";
22
+ } from "./chunk-PWEJ3IWM.js";
23
23
  import {
24
24
  __toESM,
25
25
  init_esm_shims
@@ -107,4 +107,4 @@ export {
107
107
  isSiteNotPublishedError,
108
108
  loadProjectGridAppContent
109
109
  };
110
- //# sourceMappingURL=chunk-DGB22FOE.js.map
110
+ //# sourceMappingURL=chunk-ZM6OUS2J.js.map
@@ -2,33 +2,34 @@ import { createRequire as _createRequire } from 'node:module';
2
2
  const require = _createRequire(import.meta.url);
3
3
  import {
4
4
  syncTypesWithAuth
5
- } from "./chunk-IVOZDAHR.js";
5
+ } from "./chunk-5WRZJFXK.js";
6
6
  import {
7
7
  loadProjectGridAppContent
8
- } from "./chunk-DGB22FOE.js";
8
+ } from "./chunk-ZM6OUS2J.js";
9
9
  import {
10
10
  createLogger,
11
11
  httpRequest
12
- } from "./chunk-EYBRAJ77.js";
12
+ } from "./chunk-BCT5PAPG.js";
13
+ import "./chunk-CNXKF7E3.js";
13
14
  import {
14
15
  authenticate
15
- } from "./chunk-R4KXK4HG.js";
16
+ } from "./chunk-UHGVP5PT.js";
16
17
  import {
17
18
  createI18nT
18
- } from "./chunk-RESBATTJ.js";
19
+ } from "./chunk-3P5PTIBR.js";
19
20
  import {
20
21
  createVeloCLIServer,
21
22
  debounceQueue,
22
23
  require_chokidar
23
- } from "./chunk-QKFGKDHU.js";
24
+ } from "./chunk-AOWEDNOF.js";
24
25
  import {
25
26
  require_normalize_path
26
27
  } from "./chunk-EDFOB3LN.js";
27
- import "./chunk-WBF5ALFE.js";
28
+ import "./chunk-TIHCOJHY.js";
28
29
  import "./chunk-OJHDGJWP.js";
29
30
  import {
30
31
  updateFiles
31
- } from "./chunk-JR2KZTME.js";
32
+ } from "./chunk-YHMLI3NZ.js";
32
33
  import {
33
34
  GridAppLayout
34
35
  } from "./chunk-6LI4WGAW.js";
@@ -37,27 +38,27 @@ import {
37
38
  GridAppLayout as GridAppLayout2,
38
39
  createApp,
39
40
  pagesDiff
40
- } from "./chunk-HIHMLMRD.js";
41
+ } from "./chunk-QP2SHVU3.js";
41
42
  import {
42
43
  saveProjectModel
43
- } from "./chunk-3FASMGNL.js";
44
+ } from "./chunk-JASQWANH.js";
44
45
  import "./chunk-Y4ZVXLXY.js";
45
- import "./chunk-BGKFJNUK.js";
46
- import "./chunk-QI3N3YSP.js";
46
+ import "./chunk-IC6K6CSD.js";
47
47
  import {
48
48
  isHttpError,
49
49
  openBrowser,
50
50
  pLimit
51
- } from "./chunk-BTM6MXTF.js";
51
+ } from "./chunk-KJCRO3PB.js";
52
52
  import {
53
53
  ErrorViewer,
54
54
  extractHttpError,
55
55
  writeCrashReport
56
- } from "./chunk-SYSWGRNF.js";
56
+ } from "./chunk-ZLPYLX6E.js";
57
57
  import {
58
58
  renderSync,
59
59
  require_react
60
- } from "./chunk-HU33E37I.js";
60
+ } from "./chunk-4XPWCRGU.js";
61
+ import "./chunk-2K5KKUL3.js";
61
62
  import {
62
63
  wixCliCliMessageDisplayed,
63
64
  wixCliCodeHasBeenChanged,
@@ -66,10 +67,9 @@ import {
66
67
  wixCliUserResponseToCliMessage
67
68
  } from "./chunk-WN3D6AOY.js";
68
69
  import "./chunk-W423UTD3.js";
69
- import "./chunk-2NWGTFAC.js";
70
70
  import "./chunk-YU54OBFT.js";
71
71
  import "./chunk-XMTHMR2B.js";
72
- import "./chunk-WSW2V2ZB.js";
72
+ import "./chunk-YX66M2XN.js";
73
73
  import {
74
74
  getDebugLogFilePath,
75
75
  getPagesFolder,
@@ -79,14 +79,14 @@ import {
79
79
  import {
80
80
  outputFile,
81
81
  pathExists
82
- } from "./chunk-LR6CHFGP.js";
82
+ } from "./chunk-QPYNVASM.js";
83
83
  import {
84
84
  getTestOverrides
85
85
  } from "./chunk-PX2L3CCA.js";
86
86
  import {
87
87
  CliError,
88
88
  CliErrorCode
89
- } from "./chunk-IFBC6MP5.js";
89
+ } from "./chunk-PWEJ3IWM.js";
90
90
  import {
91
91
  __toESM,
92
92
  init_esm_shims
@@ -146,8 +146,8 @@ async function exit(shouldManuallyExit, isSynchronous, signal) {
146
146
  done();
147
147
  }
148
148
  function addHook(options) {
149
- const { onExit, minimumWait, isSynchronous } = options;
150
- const asyncCallbackConfig = [onExit, minimumWait];
149
+ const { onExit, wait, isSynchronous } = options;
150
+ const asyncCallbackConfig = [onExit, wait];
151
151
  if (isSynchronous) {
152
152
  callbacks.add(onExit);
153
153
  } else {
@@ -177,12 +177,12 @@ function asyncExitHook(onExit, options = {}) {
177
177
  if (typeof onExit !== "function") {
178
178
  throw new TypeError("onExit must be a function");
179
179
  }
180
- if (!(typeof options.minimumWait === "number" && options.minimumWait > 0)) {
181
- throw new TypeError("minimumWait must be set to a positive numeric value");
180
+ if (!(typeof options.wait === "number" && options.wait > 0)) {
181
+ throw new TypeError("wait must be set to a positive numeric value");
182
182
  }
183
183
  return addHook({
184
184
  onExit,
185
- minimumWait: options.minimumWait,
185
+ wait: options.wait,
186
186
  isSynchronous: false
187
187
  });
188
188
  }
@@ -766,7 +766,7 @@ async function dev(initialModel, { biLogger, errorReporter }, {
766
766
  await openLocalEditor(serverPort);
767
767
  const { ctrlCPromise } = keyWatcher.watch();
768
768
  keyWatcher.on("e", () => openLocalEditor(serverPort));
769
- asyncExitHook(server.close, { minimumWait: 500 });
769
+ asyncExitHook(server.close, { wait: 500 });
770
770
  await ctrlCPromise;
771
771
  } finally {
772
772
  keyWatcher?.unwatch();
@@ -776,4 +776,4 @@ async function dev(initialModel, { biLogger, errorReporter }, {
776
776
  export {
777
777
  dev
778
778
  };
779
- //# sourceMappingURL=dev-BEXFZPJS.js.map
779
+ //# sourceMappingURL=dev-62KN3SLL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../cli-site-old/src/dev/index.ts","../../cli-site-old/src/dev/dev.ts","../../../node_modules/exit-hook/index.js","../../cli-site-old/src/environment.ts","../../cli-site-old/src/gridapp/createGridApp.ts","../../cli-site-old/src/gridapp/error-handlers/maxFileSizeErrorHandler.ts","../../cli-site-old/src/gridapp/startGridAppUpdater.ts","../../cli-site-old/src/key-watcher.ts","../../cli-site-old/src/bi.ts","../../cli-site-old/src/dev/sync-all-to-revision.ts","../../cli-site-old/src/sources/index.ts","../../cli-site-old/src/sources/pages-diff.ts"],"sourcesContent":["export { dev } from './dev.js';\n","import { createVeloCLIServer } from '@wix/editor-velo-cli-comm-api';\nimport { openBrowser } from '@wix/user-browser';\nimport { asyncExitHook } from 'exit-hook';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { ErrorViewer } from '@wix/cli-error-reporting';\nimport { writeCrashReport } from '@wix/cli-debug-log';\nimport { getDebugLogFilePath } from '@wix/cli-core-definitions';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { createElement } from 'react';\nimport { renderSync } from '@wix/cli-ui-kit';\nimport { isHttpError } from '@wix/cli-http-client';\nimport { getDevEditorBaseUrl } from '../environment.js';\nimport { createMutableGridApp } from '../gridapp/createGridApp.js';\nimport { startGridAppUpdater } from '../gridapp/startGridAppUpdater.js';\nimport { KeyWatcher } from '../key-watcher.js';\nimport type { ProjectModel } from '../model.js';\nimport { saveProjectModel } from '../model.js';\nimport { createLogger } from '../logger.js';\nimport { sitesBiEvents } from '../bi.js';\nimport { createI18nT } from '../i18n.js';\nimport { authenticate } from '../authentication.js';\nimport { syncAllToRevision } from './sync-all-to-revision.js';\n\nexport async function dev(\n initialModel: ProjectModel,\n { biLogger, errorReporter }: CommandServices,\n {\n https = false,\n }: {\n https?: boolean;\n }\n) {\n let model = initialModel;\n const authState = await authenticate({\n metaSiteId: model.metaSiteId,\n biLogger,\n errorReporter,\n });\n\n const t = createI18nT();\n const logger = createLogger({ t });\n const biEvents = sitesBiEvents(biLogger);\n\n const server = createVeloCLIServer({ https });\n\n let gridAppId: string;\n try {\n gridAppId = await createMutableGridApp(model.projectFolder, {\n authState,\n });\n } catch (error) {\n const message = isHttpError(error) && error.response?.data?.message;\n\n throw new CliError({\n code: CliErrorCode.FailedToCreateGridApp({\n error: message,\n }),\n cause: error,\n });\n }\n\n await syncAllToRevision(model, { authState }, logger);\n\n const { close } = startGridAppUpdater(\n model,\n gridAppId,\n {\n authState,\n onError(error) {\n logger.logNewLine();\n errorReporter.reportError(error);\n writeCrashReport(getDebugLogFilePath(model.projectFolder), error);\n renderSync(createElement(ErrorViewer, { error }));\n },\n },\n logger,\n biEvents\n );\n\n const onServerDisconnected = (devEditorUrl: string) => {\n const message = logger.logNoOpenedTab(devEditorUrl);\n biEvents.messageDisplayed({ model, message });\n };\n\n const onSyncDevEditorChanges = async (revision: string) => {\n if (revision !== model.revision) {\n const newModel = { ...model, revision };\n\n await saveProjectModel(newModel);\n const message = logger.logUpdatedLocalCodeToRevision({\n revision: newModel.revision,\n });\n biEvents.messageDisplayed({ message, model });\n\n await syncAllToRevision(newModel, { authState }, logger);\n\n model = newModel;\n }\n };\n\n const openLocalEditor = async (serverPort: number) => {\n biEvents.userResponse({\n action: 'Browser opened',\n message: 'Opening the Local Editor',\n model,\n });\n\n const devEditorUrl = getDevEditorUrl(serverPort);\n\n if (https) {\n await openBrowser(new URL(`https://localhost:${serverPort}`).href);\n } else {\n await openBrowser(devEditorUrl);\n }\n };\n\n const getDevEditorUrl = (serverPort: number) => {\n const url = new URL(model.metaSiteId, getDevEditorBaseUrl());\n\n url.searchParams.append('localPort', serverPort.toString());\n url.searchParams.append('secureSocket', https.toString());\n\n return url.toString();\n };\n\n let keyWatcher: KeyWatcher | undefined;\n try {\n const { port: serverPort } = await server.serve(gridAppId, getDevEditorUrl);\n\n const devEditorUrl = getDevEditorUrl(serverPort);\n\n server.on('disconnected', () => onServerDisconnected(devEditorUrl));\n server.on('syncDevEditorChanges', onSyncDevEditorChanges);\n\n keyWatcher = new KeyWatcher();\n\n logger.logOpeningBrowser(https);\n\n await openLocalEditor(serverPort);\n const { ctrlCPromise } = keyWatcher.watch();\n keyWatcher.on('e', () => openLocalEditor(serverPort));\n\n asyncExitHook(server.close, { wait: 500 });\n await ctrlCPromise;\n } finally {\n keyWatcher?.unwatch();\n await Promise.all([server.close(), close()]);\n }\n}\n","import process from 'node:process';\n\nconst asyncCallbacks = new Set();\nconst callbacks = new Set();\n\nlet isCalled = false;\nlet isRegistered = false;\n\nasync function exit(shouldManuallyExit, isSynchronous, signal) {\n\tif (isCalled) {\n\t\treturn;\n\t}\n\n\tisCalled = true;\n\n\tif (asyncCallbacks.size > 0 && isSynchronous) {\n\t\tconsole.error([\n\t\t\t'SYNCHRONOUS TERMINATION NOTICE:',\n\t\t\t'When explicitly exiting the process via process.exit or via a parent process,',\n\t\t\t'asynchronous tasks in your exitHooks will not run. Either remove these tasks,',\n\t\t\t'use gracefulExit() instead of process.exit(), or ensure your parent process',\n\t\t\t'sends a SIGINT to the process running this code.',\n\t\t].join(' '));\n\t}\n\n\tconst exitCode = 128 + signal;\n\n\tconst done = (force = false) => {\n\t\tif (force === true || shouldManuallyExit === true) {\n\t\t\tprocess.exit(exitCode); // eslint-disable-line unicorn/no-process-exit\n\t\t}\n\t};\n\n\tfor (const callback of callbacks) {\n\t\tcallback(exitCode);\n\t}\n\n\tif (isSynchronous) {\n\t\tdone();\n\t\treturn;\n\t}\n\n\tconst promises = [];\n\tlet forceAfter = 0;\n\tfor (const [callback, wait] of asyncCallbacks) {\n\t\tforceAfter = Math.max(forceAfter, wait);\n\t\tpromises.push(Promise.resolve(callback(exitCode)));\n\t}\n\n\t// Force exit if we exceeded our wait value\n\tconst asyncTimer = setTimeout(() => {\n\t\tdone(true);\n\t}, forceAfter);\n\n\tawait Promise.all(promises);\n\tclearTimeout(asyncTimer);\n\tdone();\n}\n\nfunction addHook(options) {\n\tconst {onExit, wait, isSynchronous} = options;\n\tconst asyncCallbackConfig = [onExit, wait];\n\n\tif (isSynchronous) {\n\t\tcallbacks.add(onExit);\n\t} else {\n\t\tasyncCallbacks.add(asyncCallbackConfig);\n\t}\n\n\tif (!isRegistered) {\n\t\tisRegistered = true;\n\n\t\t// Exit cases that support asynchronous handling\n\t\tprocess.once('beforeExit', exit.bind(undefined, true, false, -128));\n\t\tprocess.once('SIGINT', exit.bind(undefined, true, false, 2));\n\t\tprocess.once('SIGTERM', exit.bind(undefined, true, false, 15));\n\n\t\t// Explicit exit events. Calling will force an immediate exit and run all\n\t\t// synchronous hooks. Explicit exits must not extend the node process\n\t\t// artificially. Will log errors if asynchronous calls exist.\n\t\tprocess.once('exit', exit.bind(undefined, false, true, 0));\n\n\t\t// PM2 Cluster shutdown message. Caught to support async handlers with pm2,\n\t\t// needed because explicitly calling process.exit() doesn't trigger the\n\t\t// beforeExit event, and the exit event cannot support async handlers,\n\t\t// since the event loop is never called after it.\n\t\tprocess.on('message', message => {\n\t\t\tif (message === 'shutdown') {\n\t\t\t\texit(true, true, -128);\n\t\t\t}\n\t\t});\n\t}\n\n\treturn () => {\n\t\tif (isSynchronous) {\n\t\t\tcallbacks.delete(onExit);\n\t\t} else {\n\t\t\tasyncCallbacks.delete(asyncCallbackConfig);\n\t\t}\n\t};\n}\n\nexport default function exitHook(onExit) {\n\tif (typeof onExit !== 'function') {\n\t\tthrow new TypeError('onExit must be a function');\n\t}\n\n\treturn addHook({\n\t\tonExit,\n\t\tisSynchronous: true,\n\t});\n}\n\nexport function asyncExitHook(onExit, options = {}) {\n\tif (typeof onExit !== 'function') {\n\t\tthrow new TypeError('onExit must be a function');\n\t}\n\n\tif (!(typeof options.wait === 'number' && options.wait > 0)) {\n\t\tthrow new TypeError('wait must be set to a positive numeric value');\n\t}\n\n\treturn addHook({\n\t\tonExit,\n\t\twait: options.wait,\n\t\tisSynchronous: false,\n\t});\n}\n\nexport function gracefulExit(signal = 0) {\n\texit(true, false, -128 + signal);\n}\n","import { getTestOverrides } from '@wix/cli-test-overrides';\n\nconst DEV_EDITOR_BASE_URL = 'https://wix.com/editor/';\n\nexport function getDevEditorBaseUrl(): string {\n return getTestOverrides().devEditorBaseUrl ?? DEV_EDITOR_BASE_URL;\n}\n","import type { AuthState } from '@wix/cli-auth';\nimport { createApp } from '@wix/ambassador-velo-apps-v1-app/http';\nimport type {\n App,\n CreateAppRequest,\n} from '@wix/ambassador-velo-apps-v1-app/types';\nimport { AppType } from '@wix/ambassador-velo-apps-v1-app/types';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { httpRequest } from '../http-request.js';\nimport { catchFilesMaxSizeError } from './error-handlers/maxFileSizeErrorHandler.js';\nimport { loadProjectGridAppContent } from './loadProjectGridAppContent.js';\n\nasync function createAppWithParams(\n params: CreateAppRequest,\n opts: {\n authState: AuthState;\n }\n): Promise<string> {\n let app: App | undefined;\n\n try {\n const response = await httpRequest(\n { type: 'code', authState: opts.authState },\n createApp(params)\n );\n app = response.data.app;\n } catch (err) {\n catchFilesMaxSizeError(err, params.content?.files);\n\n throw err;\n }\n\n if (!app?.id) {\n throw new CliError({\n code: CliErrorCode.InvalidCreateAppResponse(),\n info: { app },\n cause: null,\n });\n }\n\n return app.id;\n}\n\nexport async function createMutableGridApp(\n projectFolder: string,\n opts: {\n authState: AuthState;\n }\n) {\n const content = await loadProjectGridAppContent(projectFolder);\n\n return createAppWithParams(\n {\n app: {\n mutable: true,\n appType: AppType.VELO_ISOLATED,\n },\n content,\n },\n opts\n );\n}\n","import type { File } from '@wix/ambassador-velo-apps-v1-app/types';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { extractHttpError } from '@wix/cli-http-client';\n\nexport function catchFilesMaxSizeError(err: unknown, files: File[] = []) {\n if (!files.length) {\n return;\n }\n\n const httpError = extractHttpError(err);\n\n if (!httpError) {\n return;\n }\n\n const filesMaxSizeRawViolations =\n httpError.response?.data?.details?.validationError?.fieldViolations?.filter(\n (v: { violatedRule: string }) => v.violatedRule === 'MAX_LENGTH'\n );\n\n if (!filesMaxSizeRawViolations?.length) {\n return;\n }\n\n const maxSizeViolationsData = tryExtractMaxSizeViolationMetadata(\n filesMaxSizeRawViolations\n );\n\n throw new CliError({\n code: CliErrorCode.GridAppFilesMaxLengthExceeded({\n maxSizeViolationsData,\n filePaths: files.map((f) => f.path ?? '[unknown file path]'),\n }),\n cause: httpError,\n });\n}\n\nfunction tryExtractMaxSizeViolationMetadata(\n filesMaxSizeViolations: Array<{ field: string; description: string }>\n) {\n const fileIndexRegex = /\\[(?<fileIndex>\\d+)\\].content/;\n const expectedAndReceivedSizeRegex =\n /has size (?<receivedSize>\\d+), expected (?<expectedSize>\\d+) or less/;\n const violationsData: {\n expectedSize?: number;\n files: Array<{ fileIndex: number; receivedSize: number }>;\n } = {\n expectedSize: undefined,\n files: [],\n };\n\n for (const filesMaxSizeViolation of filesMaxSizeViolations) {\n const fileIndexMatchResult = fileIndexRegex.exec(\n filesMaxSizeViolation.field\n );\n const expectedAndReceivedSizeMatchResult =\n expectedAndReceivedSizeRegex.exec(filesMaxSizeViolation.description);\n\n if (\n !(\n fileIndexMatchResult?.groups?.fileIndex &&\n expectedAndReceivedSizeMatchResult?.groups?.receivedSize &&\n expectedAndReceivedSizeMatchResult.groups.expectedSize\n )\n ) {\n return null;\n }\n\n violationsData.expectedSize ??= Math.trunc(\n parseInt(expectedAndReceivedSizeMatchResult.groups.expectedSize, 10) /\n 1000\n );\n\n violationsData.files.push({\n receivedSize: Math.trunc(\n parseInt(expectedAndReceivedSizeMatchResult.groups.receivedSize, 10) /\n 1000\n ),\n fileIndex: parseInt(fileIndexMatchResult.groups.fileIndex, 10),\n });\n }\n\n return violationsData;\n}\n","import { readFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport type { AuthState } from '@wix/cli-auth';\nimport { updateFiles } from '@wix/ambassador-velo-ide-v1-gridapp-filestructure/http';\nimport { GridAppLayout } from '@wix/ambassador-velo-ide-v1-gridapp-filestructure/types';\nimport { getSourceFolder } from '@wix/velo-github-layout-definitions';\nimport { watch } from 'chokidar';\nimport { debounceQueue } from '@wix/debounce-queue';\nimport pLimit from 'p-limit';\nimport normalizePath from 'normalize-path';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { httpRequest } from '../http-request.js';\nimport type { ProjectModel } from '../model.js';\nimport type { Logger } from '../logger.js';\nimport type { SitesBiEvents } from '../bi.js';\nimport { catchFilesMaxSizeError } from './error-handlers/maxFileSizeErrorHandler.js';\n\ntype ChokidarEventParams = [\n 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n string,\n];\n\nconst WATCH_FS_EVENTS_DEBOUNCE_TIME = 1000;\n\nconst getSectionName = (path: string) => {\n if (path.startsWith('src/pages')) {\n return 'public';\n }\n if (path.startsWith('src/backend')) {\n return 'backend';\n }\n return 'other';\n};\n\nexport function startGridAppUpdater(\n model: ProjectModel,\n gridAppId: string,\n opts: {\n onError: (e: CliError) => void;\n authState: AuthState;\n },\n logger: Logger,\n biEvents: SitesBiEvents\n) {\n const { projectFolder } = model;\n const limit = pLimit(1);\n\n const watcher = watch(getSourceFolder(projectFolder), {\n disableGlobbing: true,\n cwd: projectFolder,\n ignoreInitial: true,\n })\n .on(\n 'all',\n debounceQueue(async (events: ChokidarEventParams[]) => {\n await limit(async () => {\n const logSynced = logger.logSyncingLocalCode();\n const { added, changed, removed } =\n normalizeChokidarBatchedEvents(events);\n const addedArray = Array.from(added.values()).map((path) => ({\n path,\n type: 'create',\n }));\n const changedArray = Array.from(changed.values()).map((path) => ({\n path,\n type: 'update',\n }));\n const removedArray = Array.from(removed.values()).map((path) => ({\n path,\n type: 'delete',\n }));\n\n for (const val of [...addedArray, ...changedArray, ...removedArray]) {\n biEvents.file({\n model,\n action: val.type as 'create' | 'update' | 'delete',\n path: val.path,\n oldPath: '',\n sectionName: getSectionName(val.path),\n });\n if (val.type === 'update') {\n biEvents.codeChanged(model, val.path);\n }\n }\n\n try {\n await writeFiles({\n filesToUpdate: await Promise.all(\n addedArray.concat(changedArray).map(async (val) => ({\n path: normalizePath(val.path),\n content: await readFile(\n join(projectFolder, val.path),\n 'utf8'\n ),\n }))\n ),\n removedArray,\n gridAppId,\n authState: opts.authState,\n });\n\n const message = logSynced.success();\n biEvents.messageDisplayed({ message, model });\n biEvents.readyForReloadAfterCodeChanged(model);\n } catch (e) {\n logSynced.fail();\n const error = new CliError({\n code: CliErrorCode.GridAppFailedToUpdateFiles(),\n cause: e,\n info: {\n added,\n changed,\n removed,\n },\n });\n opts.onError(error);\n }\n });\n }, WATCH_FS_EVENTS_DEBOUNCE_TIME)\n )\n .on('error', (e) => {\n const error = new CliError({\n code: CliErrorCode.FailedToWatchFiles(),\n cause: e,\n });\n\n opts.onError(error);\n });\n\n return { close: () => watcher.close() };\n}\n\nfunction normalizeChokidarBatchedEvents(events: ChokidarEventParams[]) {\n return events.reduce(\n (result, [eventType, filePath]) => {\n switch (eventType) {\n case 'add': {\n result.added.add(filePath);\n break;\n }\n case 'change': {\n result.changed.add(filePath);\n break;\n }\n case 'unlink': {\n result.added.delete(filePath);\n result.changed.delete(filePath);\n result.removed.add(filePath);\n break;\n }\n case 'unlinkDir': {\n const filePathAsDir = filePath.endsWith('/')\n ? filePath\n : `${filePath}/`;\n for (const filePath of result.added) {\n if (filePath.startsWith(filePathAsDir)) {\n result.added.delete(filePath);\n }\n }\n for (const filePath of result.changed) {\n if (filePath.startsWith(filePathAsDir)) {\n result.changed.delete(filePath);\n }\n }\n result.removed.add(filePath);\n break;\n }\n case 'addDir': {\n break;\n }\n }\n return result;\n },\n {\n added: new Set<string>(),\n changed: new Set<string>(),\n removed: new Set<string>(),\n }\n );\n}\n\nasync function writeFiles({\n filesToUpdate,\n removedArray,\n gridAppId,\n authState,\n}: {\n filesToUpdate: Array<{ path: string; content: string }>;\n removedArray: Array<{ path: string; type: string }>;\n gridAppId: string;\n authState: AuthState;\n}) {\n try {\n await httpRequest(\n {\n type: 'code',\n authState,\n },\n updateFiles({\n gridAppId,\n layout: GridAppLayout.GITHUB,\n filesToUpdate,\n ignoreForbiddenPaths: true,\n pathsToDelete: removedArray.map((val) => val.path),\n })\n );\n } catch (err) {\n catchFilesMaxSizeError(err, filesToUpdate);\n throw err;\n }\n}\n","import readline from 'node:readline';\nimport { stdin } from 'node:process';\n\ninterface Key {\n ctrl: boolean;\n name: string;\n sequence: string;\n meta: boolean;\n shift: boolean;\n}\n\ntype Callback = (key: Key) => void;\nexport class KeyWatcher {\n private actions = new Map<string, Callback>();\n\n private watchExitProcess() {\n return new Promise<void>((resolve) => {\n this.on('c', (key) => {\n if (key.ctrl) {\n resolve();\n }\n });\n });\n }\n\n on(key: string, callback: Callback) {\n this.actions.set(key, callback);\n }\n\n watch() {\n const rl = readline.createInterface(stdin);\n\n readline.emitKeypressEvents(stdin, rl);\n\n if (stdin.isTTY) {\n // This is required since in test we don't have a terminal and setRawMode is undefined\n stdin.setRawMode(true);\n stdin.setEncoding('utf8');\n }\n\n stdin.on('keypress', this.handleKeyPress);\n\n return {\n ctrlCPromise: this.watchExitProcess(),\n };\n }\n\n unwatch() {\n if (stdin.isTTY) {\n // This is required since in test we don't have a terminal and setRawMode is undefined\n stdin.setRawMode(false);\n }\n stdin.off('keypress', this.handleKeyPress);\n stdin.pause();\n this.actions.clear();\n }\n\n handleKeyPress = (_: string, key: Key) => {\n this.actions.get(key.name)?.(key);\n };\n}\n","import { randomUUID } from 'node:crypto';\nimport {\n wixCliFileFolderCreatedRenamedDeleted,\n wixCliCliMessageDisplayed,\n wixCliCodeHasBeenChanged,\n wixCliUserResponseToCliMessage,\n wixCliReadyForReloadAfterCodeChange,\n} from '@wix/bi-logger-wix-cli/v2';\nimport type { BiLogger } from '@wix/cli-telemetry';\nimport type { ProjectModel } from './model.js';\n\nexport const sitesBiEvents = (biLogger: BiLogger) => ({\n file: ({\n model,\n action,\n path,\n sectionName,\n oldPath,\n }: {\n model: ProjectModel;\n action: 'create' | 'update' | 'delete';\n path: string;\n sectionName: string;\n oldPath: string;\n }) => {\n void biLogger.report(\n wixCliFileFolderCreatedRenamedDeleted({\n action,\n path,\n sectionName,\n oldPath,\n siteRevision: Number(model.revision),\n })\n );\n },\n codeChanged: (model: ProjectModel, fileName: string) => {\n void biLogger.report(\n wixCliCodeHasBeenChanged({\n fileName,\n siteRevision: Number(model.revision),\n })\n );\n },\n readyForReloadAfterCodeChanged: (model: ProjectModel) => {\n void biLogger.report(\n wixCliReadyForReloadAfterCodeChange({\n siteRevision: Number(model.revision),\n })\n );\n },\n messageDisplayed: ({\n message,\n model,\n }: {\n message: string;\n model: ProjectModel;\n }) => {\n void biLogger.report(\n wixCliCliMessageDisplayed({\n message,\n messageId: randomUUID(),\n siteRevision: Number(model.revision),\n })\n );\n },\n userResponse: ({\n model,\n action,\n message,\n }: {\n model: ProjectModel;\n action: 'Browser opened';\n message: string;\n }) => {\n void biLogger.report(\n wixCliUserResponseToCliMessage({\n action,\n message,\n messageId: randomUUID(),\n siteRevision: Number(model.revision),\n })\n );\n },\n});\n\nexport type SitesBiEvents = ReturnType<typeof sitesBiEvents>;\n","import { rm } from 'node:fs/promises';\nimport type { AuthState } from '@wix/cli-auth';\nimport { writeCrashReport } from '@wix/cli-debug-log';\nimport { getTypesDir } from '@wix/velo-github-layout-definitions';\nimport { getDebugLogFilePath } from '@wix/cli-core-definitions';\nimport type { ProjectModel } from '../model.js';\nimport { syncPages } from '../sources/index.js';\nimport { syncTypesWithAuth } from '../sync-types/index.js';\nimport type { Logger } from '../logger.js';\n\nexport async function syncAllToRevision(\n model: ProjectModel,\n opts: {\n authState: AuthState;\n },\n logger: Logger\n) {\n const logTypesSynced = logger.logSyncingTypesToRevision(model.revision);\n try {\n await syncTypesWithAuth(model, { authState: opts.authState });\n logTypesSynced.success();\n } catch (error) {\n // As a workaround until the types sync can handle large projects, this error is recoverable\n writeCrashReport(getDebugLogFilePath(model.projectFolder), error);\n logTypesSynced.fail();\n await rm(getTypesDir(model.projectFolder), {\n recursive: true,\n force: true,\n }).catch((e: unknown) => {\n writeCrashReport(getDebugLogFilePath(model.projectFolder), e);\n logger.logRecoverableFailureToRemoveTypesDir(e);\n });\n }\n\n const logPagesSynced = logger.logSyncingPagesToRevision(model.revision);\n try {\n await syncPages(model, { authState: opts.authState });\n logPagesSynced.success();\n } catch (error) {\n logPagesSynced.fail();\n throw error;\n }\n}\n","import { readdir } from 'node:fs/promises';\nimport { pagesDiff } from '@wix/ambassador-velo-apps-v1-app/http';\nimport type { PagesDiffRequest } from '@wix/ambassador-velo-apps-v1-app/types';\nimport { GridAppLayout } from '@wix/ambassador-velo-apps-v1-app/types';\nimport {\n getPagesFolder,\n getSourceFolder,\n} from '@wix/velo-github-layout-definitions';\nimport type { AuthState } from '@wix/cli-auth';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { pathExists } from '@wix/cli-fs';\nimport { httpRequest } from '../http-request.js';\nimport type { ProjectModel } from '../model.js';\nimport { createPages, deletePages, renamePages } from './pages-diff.js';\n\nexport async function syncPages(\n model: ProjectModel,\n opts: {\n authState: AuthState;\n }\n): Promise<void> {\n const pagesFolder = getPagesFolder(model.projectFolder);\n\n if (!(await pathExists(pagesFolder))) {\n throw new CliError({\n code: CliErrorCode.NoPagesDirectoryFound({\n srcDir: getSourceFolder(model.projectFolder),\n }),\n cause: null,\n });\n }\n\n const params: PagesDiffRequest = {\n layout: GridAppLayout.GITHUB,\n sourcePagesPaths: await readdir(pagesFolder),\n targetRevision: model.revision,\n };\n const { data } = await httpRequest(\n {\n authState: opts.authState,\n type: 'code',\n },\n pagesDiff(params)\n ).catch((e: unknown) => {\n throw new CliError({\n code: CliErrorCode.FailedToGetPagesDiff(),\n cause: e,\n info: { ...params },\n });\n });\n\n await Promise.all([\n createPages(model.projectFolder, data.pagesDiff?.created ?? []),\n renamePages(model.projectFolder, data.pagesDiff?.renamed ?? []),\n deletePages(model.projectFolder, data.pagesDiff?.deleted ?? []),\n ]);\n}\n","import { join } from 'node:path';\nimport { rm, rename } from 'node:fs/promises';\nimport type {\n NewPage,\n RenamedPage,\n PageId,\n} from '@wix/ambassador-velo-apps-v1-app/types';\nimport { pathExists, outputFile } from '@wix/cli-fs';\n\nexport async function createPages(\n projectFolder: string,\n pages: NewPage[]\n): Promise<void> {\n await Promise.all(\n pages.map((page) => {\n if (!page.pageId?.path || !page.content) {\n return Promise.resolve();\n }\n\n return outputFile(join(projectFolder, page.pageId.path), page.content);\n })\n );\n}\n\nexport async function renamePages(\n projectFolder: string,\n pages: RenamedPage[]\n): Promise<void> {\n await Promise.all(\n pages.map(async (page) => {\n if (!page.sourcePath?.path || !page.targetPath?.path) {\n return;\n }\n\n const sourcePath = join(projectFolder, page.sourcePath.path);\n const targetPath = join(projectFolder, page.targetPath.path);\n\n if (await pathExists(targetPath)) {\n return rm(sourcePath, { force: true });\n }\n\n return rename(sourcePath, targetPath);\n })\n );\n}\n\nexport async function deletePages(\n projectFolder: string,\n pages: PageId[]\n): Promise<void> {\n await Promise.all(\n pages.map((page) => {\n if (!page.path) {\n return Promise.resolve();\n }\n\n return rm(join(projectFolder, page.path), { force: true });\n })\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;ACAA;;;ACAA;AAAA,OAAO,aAAa;AAEpB,IAAM,iBAAiB,oBAAI,IAAI;AAC/B,IAAM,YAAY,oBAAI,IAAI;AAE1B,IAAI,WAAW;AACf,IAAI,eAAe;AAEnB,eAAe,KAAK,oBAAoB,eAAe,QAAQ;AAC9D,MAAI,UAAU;AACb;AAAA,EACD;AAEA,aAAW;AAEX,MAAI,eAAe,OAAO,KAAK,eAAe;AAC7C,YAAQ,MAAM;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD,EAAE,KAAK,GAAG,CAAC;AAAA,EACZ;AAEA,QAAM,WAAW,MAAM;AAEvB,QAAM,OAAO,CAAC,QAAQ,UAAU;AAC/B,QAAI,UAAU,QAAQ,uBAAuB,MAAM;AAClD,cAAQ,KAAK,QAAQ;AAAA,IACtB;AAAA,EACD;AAEA,aAAW,YAAY,WAAW;AACjC,aAAS,QAAQ;AAAA,EAClB;AAEA,MAAI,eAAe;AAClB,SAAK;AACL;AAAA,EACD;AAEA,QAAM,WAAW,CAAC;AAClB,MAAI,aAAa;AACjB,aAAW,CAAC,UAAU,IAAI,KAAK,gBAAgB;AAC9C,iBAAa,KAAK,IAAI,YAAY,IAAI;AACtC,aAAS,KAAK,QAAQ,QAAQ,SAAS,QAAQ,CAAC,CAAC;AAAA,EAClD;AAGA,QAAM,aAAa,WAAW,MAAM;AACnC,SAAK,IAAI;AAAA,EACV,GAAG,UAAU;AAEb,QAAM,QAAQ,IAAI,QAAQ;AAC1B,eAAa,UAAU;AACvB,OAAK;AACN;AAEA,SAAS,QAAQ,SAAS;AACzB,QAAM,EAAC,QAAQ,MAAM,cAAa,IAAI;AACtC,QAAM,sBAAsB,CAAC,QAAQ,IAAI;AAEzC,MAAI,eAAe;AAClB,cAAU,IAAI,MAAM;AAAA,EACrB,OAAO;AACN,mBAAe,IAAI,mBAAmB;AAAA,EACvC;AAEA,MAAI,CAAC,cAAc;AAClB,mBAAe;AAGf,YAAQ,KAAK,cAAc,KAAK,KAAK,QAAW,MAAM,OAAO,IAAI,CAAC;AAClE,YAAQ,KAAK,UAAU,KAAK,KAAK,QAAW,MAAM,OAAO,CAAC,CAAC;AAC3D,YAAQ,KAAK,WAAW,KAAK,KAAK,QAAW,MAAM,OAAO,EAAE,CAAC;AAK7D,YAAQ,KAAK,QAAQ,KAAK,KAAK,QAAW,OAAO,MAAM,CAAC,CAAC;AAMzD,YAAQ,GAAG,WAAW,aAAW;AAChC,UAAI,YAAY,YAAY;AAC3B,aAAK,MAAM,MAAM,IAAI;AAAA,MACtB;AAAA,IACD,CAAC;AAAA,EACF;AAEA,SAAO,MAAM;AACZ,QAAI,eAAe;AAClB,gBAAU,OAAO,MAAM;AAAA,IACxB,OAAO;AACN,qBAAe,OAAO,mBAAmB;AAAA,IAC1C;AAAA,EACD;AACD;AAaO,SAAS,cAAc,QAAQ,UAAU,CAAC,GAAG;AACnD,MAAI,OAAO,WAAW,YAAY;AACjC,UAAM,IAAI,UAAU,2BAA2B;AAAA,EAChD;AAEA,MAAI,EAAE,OAAO,QAAQ,SAAS,YAAY,QAAQ,OAAO,IAAI;AAC5D,UAAM,IAAI,UAAU,8CAA8C;AAAA,EACnE;AAEA,SAAO,QAAQ;AAAA,IACd;AAAA,IACA,MAAM,QAAQ;AAAA,IACd,eAAe;AAAA,EAChB,CAAC;AACF;;;ADvHA,mBAA8B;;;AER9B;AAEA,IAAM,sBAAsB;AAErB,SAAS,sBAA8B;AAC5C,SAAO,iBAAiB,EAAE,oBAAoB;AAChD;;;ACNA;;;ACAA;AAIO,SAAS,uBAAuB,KAAc,QAAgB,CAAC,GAAG;AACvE,MAAI,CAAC,MAAM,QAAQ;AACjB;AAAA,EACF;AAEA,QAAM,YAAY,iBAAiB,GAAG;AAEtC,MAAI,CAAC,WAAW;AACd;AAAA,EACF;AAEA,QAAM,4BACJ,UAAU,UAAU,MAAM,SAAS,iBAAiB,iBAAiB;AAAA,IACnE,CAAC,MAAgC,EAAE,iBAAiB;AAAA,EACtD;AAEF,MAAI,CAAC,2BAA2B,QAAQ;AACtC;AAAA,EACF;AAEA,QAAM,wBAAwB;AAAA,IAC5B;AAAA,EACF;AAEA,QAAM,IAAI,SAAS;AAAA,IACjB,MAAM,aAAa,8BAA8B;AAAA,MAC/C;AAAA,MACA,WAAW,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,qBAAqB;AAAA,IAC7D,CAAC;AAAA,IACD,OAAO;AAAA,EACT,CAAC;AACH;AAEA,SAAS,mCACP,wBACA;AACA,QAAM,iBAAiB;AACvB,QAAM,+BACJ;AACF,QAAM,iBAGF;AAAA,IACF,cAAc;AAAA,IACd,OAAO,CAAC;AAAA,EACV;AAEA,aAAW,yBAAyB,wBAAwB;AAC1D,UAAM,uBAAuB,eAAe;AAAA,MAC1C,sBAAsB;AAAA,IACxB;AACA,UAAM,qCACJ,6BAA6B,KAAK,sBAAsB,WAAW;AAErE,QACE,EACE,sBAAsB,QAAQ,aAC9B,oCAAoC,QAAQ,gBAC5C,mCAAmC,OAAO,eAE5C;AACA,aAAO;AAAA,IACT;AAEA,mBAAe,iBAAiB,KAAK;AAAA,MACnC,SAAS,mCAAmC,OAAO,cAAc,EAAE,IACjE;AAAA,IACJ;AAEA,mBAAe,MAAM,KAAK;AAAA,MACxB,cAAc,KAAK;AAAA,QACjB,SAAS,mCAAmC,OAAO,cAAc,EAAE,IACjE;AAAA,MACJ;AAAA,MACA,WAAW,SAAS,qBAAqB,OAAO,WAAW,EAAE;AAAA,IAC/D,CAAC;AAAA,EACH;AAEA,SAAO;AACT;;;ADvEA,eAAe,oBACb,QACA,MAGiB;AACjB,MAAI;AAEJ,MAAI;AACF,UAAM,WAAW,MAAM;AAAA,MACrB,EAAE,MAAM,QAAQ,WAAW,KAAK,UAAU;AAAA,MAC1C,UAAU,MAAM;AAAA,IAClB;AACA,UAAM,SAAS,KAAK;AAAA,EACtB,SAAS,KAAK;AACZ,2BAAuB,KAAK,OAAO,SAAS,KAAK;AAEjD,UAAM;AAAA,EACR;AAEA,MAAI,CAAC,KAAK,IAAI;AACZ,UAAM,IAAI,SAAS;AAAA,MACjB,MAAM,aAAa,yBAAyB;AAAA,MAC5C,MAAM,EAAE,IAAI;AAAA,MACZ,OAAO;AAAA,IACT,CAAC;AAAA,EACH;AAEA,SAAO,IAAI;AACb;AAEA,eAAsB,qBACpB,eACA,MAGA;AACA,QAAM,UAAU,MAAM,0BAA0B,aAAa;AAE7D,SAAO;AAAA,IACL;AAAA,MACE,KAAK;AAAA,QACH,SAAS;AAAA,QACT,SAAS,QAAQ;AAAA,MACnB;AAAA,MACA;AAAA,IACF;AAAA,IACA;AAAA,EACF;AACF;;;AE7DA;AAAA,SAAS,gBAAgB;AACzB,SAAS,YAAY;AAKrB,sBAAsB;AAGtB,4BAA0B;AAa1B,IAAM,gCAAgC;AAEtC,IAAM,iBAAiB,CAAC,SAAiB;AACvC,MAAI,KAAK,WAAW,WAAW,GAAG;AAChC,WAAO;AAAA,EACT;AACA,MAAI,KAAK,WAAW,aAAa,GAAG;AAClC,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,SAAS,oBACd,OACA,WACA,MAIA,QACA,UACA;AACA,QAAM,EAAE,cAAc,IAAI;AAC1B,QAAM,QAAQ,OAAO,CAAC;AAEtB,QAAM,cAAU,uBAAM,gBAAgB,aAAa,GAAG;AAAA,IACpD,iBAAiB;AAAA,IACjB,KAAK;AAAA,IACL,eAAe;AAAA,EACjB,CAAC,EACE;AAAA,IACC;AAAA,IACA,cAAc,OAAO,WAAkC;AACrD,YAAM,MAAM,YAAY;AACtB,cAAM,YAAY,OAAO,oBAAoB;AAC7C,cAAM,EAAE,OAAO,SAAS,QAAQ,IAC9B,+BAA+B,MAAM;AACvC,cAAM,aAAa,MAAM,KAAK,MAAM,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU;AAAA,UAC3D;AAAA,UACA,MAAM;AAAA,QACR,EAAE;AACF,cAAM,eAAe,MAAM,KAAK,QAAQ,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU;AAAA,UAC/D;AAAA,UACA,MAAM;AAAA,QACR,EAAE;AACF,cAAM,eAAe,MAAM,KAAK,QAAQ,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU;AAAA,UAC/D;AAAA,UACA,MAAM;AAAA,QACR,EAAE;AAEF,mBAAW,OAAO,CAAC,GAAG,YAAY,GAAG,cAAc,GAAG,YAAY,GAAG;AACnE,mBAAS,KAAK;AAAA,YACZ;AAAA,YACA,QAAQ,IAAI;AAAA,YACZ,MAAM,IAAI;AAAA,YACV,SAAS;AAAA,YACT,aAAa,eAAe,IAAI,IAAI;AAAA,UACtC,CAAC;AACD,cAAI,IAAI,SAAS,UAAU;AACzB,qBAAS,YAAY,OAAO,IAAI,IAAI;AAAA,UACtC;AAAA,QACF;AAEA,YAAI;AACF,gBAAM,WAAW;AAAA,YACf,eAAe,MAAM,QAAQ;AAAA,cAC3B,WAAW,OAAO,YAAY,EAAE,IAAI,OAAO,SAAS;AAAA,gBAClD,UAAM,sBAAAA,SAAc,IAAI,IAAI;AAAA,gBAC5B,SAAS,MAAM;AAAA,kBACb,KAAK,eAAe,IAAI,IAAI;AAAA,kBAC5B;AAAA,gBACF;AAAA,cACF,EAAE;AAAA,YACJ;AAAA,YACA;AAAA,YACA;AAAA,YACA,WAAW,KAAK;AAAA,UAClB,CAAC;AAED,gBAAM,UAAU,UAAU,QAAQ;AAClC,mBAAS,iBAAiB,EAAE,SAAS,MAAM,CAAC;AAC5C,mBAAS,+BAA+B,KAAK;AAAA,QAC/C,SAAS,GAAG;AACV,oBAAU,KAAK;AACf,gBAAM,QAAQ,IAAI,SAAS;AAAA,YACzB,MAAM,aAAa,2BAA2B;AAAA,YAC9C,OAAO;AAAA,YACP,MAAM;AAAA,cACJ;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA,UACF,CAAC;AACD,eAAK,QAAQ,KAAK;AAAA,QACpB;AAAA,MACF,CAAC;AAAA,IACH,GAAG,6BAA6B;AAAA,EAClC,EACC,GAAG,SAAS,CAAC,MAAM;AAClB,UAAM,QAAQ,IAAI,SAAS;AAAA,MACzB,MAAM,aAAa,mBAAmB;AAAA,MACtC,OAAO;AAAA,IACT,CAAC;AAED,SAAK,QAAQ,KAAK;AAAA,EACpB,CAAC;AAEH,SAAO,EAAE,OAAO,MAAM,QAAQ,MAAM,EAAE;AACxC;AAEA,SAAS,+BAA+B,QAA+B;AACrE,SAAO,OAAO;AAAA,IACZ,CAAC,QAAQ,CAAC,WAAW,QAAQ,MAAM;AACjC,cAAQ,WAAW;AAAA,QACjB,KAAK,OAAO;AACV,iBAAO,MAAM,IAAI,QAAQ;AACzB;AAAA,QACF;AAAA,QACA,KAAK,UAAU;AACb,iBAAO,QAAQ,IAAI,QAAQ;AAC3B;AAAA,QACF;AAAA,QACA,KAAK,UAAU;AACb,iBAAO,MAAM,OAAO,QAAQ;AAC5B,iBAAO,QAAQ,OAAO,QAAQ;AAC9B,iBAAO,QAAQ,IAAI,QAAQ;AAC3B;AAAA,QACF;AAAA,QACA,KAAK,aAAa;AAChB,gBAAM,gBAAgB,SAAS,SAAS,GAAG,IACvC,WACA,GAAG,QAAQ;AACf,qBAAWC,aAAY,OAAO,OAAO;AACnC,gBAAIA,UAAS,WAAW,aAAa,GAAG;AACtC,qBAAO,MAAM,OAAOA,SAAQ;AAAA,YAC9B;AAAA,UACF;AACA,qBAAWA,aAAY,OAAO,SAAS;AACrC,gBAAIA,UAAS,WAAW,aAAa,GAAG;AACtC,qBAAO,QAAQ,OAAOA,SAAQ;AAAA,YAChC;AAAA,UACF;AACA,iBAAO,QAAQ,IAAI,QAAQ;AAC3B;AAAA,QACF;AAAA,QACA,KAAK,UAAU;AACb;AAAA,QACF;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO,oBAAI,IAAY;AAAA,MACvB,SAAS,oBAAI,IAAY;AAAA,MACzB,SAAS,oBAAI,IAAY;AAAA,IAC3B;AAAA,EACF;AACF;AAEA,eAAe,WAAW;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAKG;AACD,MAAI;AACF,UAAM;AAAA,MACJ;AAAA,QACE,MAAM;AAAA,QACN;AAAA,MACF;AAAA,MACA,YAAY;AAAA,QACV;AAAA,QACA,QAAQ,cAAc;AAAA,QACtB;AAAA,QACA,sBAAsB;AAAA,QACtB,eAAe,aAAa,IAAI,CAAC,QAAQ,IAAI,IAAI;AAAA,MACnD,CAAC;AAAA,IACH;AAAA,EACF,SAAS,KAAK;AACZ,2BAAuB,KAAK,aAAa;AACzC,UAAM;AAAA,EACR;AACF;;;AClNA;AAAA,OAAO,cAAc;AACrB,SAAS,aAAa;AAWf,IAAM,aAAN,MAAiB;AAAA,EACd,UAAU,oBAAI,IAAsB;AAAA,EAEpC,mBAAmB;AACzB,WAAO,IAAI,QAAc,CAAC,YAAY;AACpC,WAAK,GAAG,KAAK,CAAC,QAAQ;AACpB,YAAI,IAAI,MAAM;AACZ,kBAAQ;AAAA,QACV;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA,EAEA,GAAG,KAAa,UAAoB;AAClC,SAAK,QAAQ,IAAI,KAAK,QAAQ;AAAA,EAChC;AAAA,EAEA,QAAQ;AACN,UAAM,KAAK,SAAS,gBAAgB,KAAK;AAEzC,aAAS,mBAAmB,OAAO,EAAE;AAErC,QAAI,MAAM,OAAO;AAEf,YAAM,WAAW,IAAI;AACrB,YAAM,YAAY,MAAM;AAAA,IAC1B;AAEA,UAAM,GAAG,YAAY,KAAK,cAAc;AAExC,WAAO;AAAA,MACL,cAAc,KAAK,iBAAiB;AAAA,IACtC;AAAA,EACF;AAAA,EAEA,UAAU;AACR,QAAI,MAAM,OAAO;AAEf,YAAM,WAAW,KAAK;AAAA,IACxB;AACA,UAAM,IAAI,YAAY,KAAK,cAAc;AACzC,UAAM,MAAM;AACZ,SAAK,QAAQ,MAAM;AAAA,EACrB;AAAA,EAEA,iBAAiB,CAAC,GAAW,QAAa;AACxC,SAAK,QAAQ,IAAI,IAAI,IAAI,IAAI,GAAG;AAAA,EAClC;AACF;;;AC5DA;AAAA,SAAS,kBAAkB;AAWpB,IAAM,gBAAgB,CAAC,cAAwB;AAAA,EACpD,MAAM,CAAC;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,MAMM;AACJ,SAAK,SAAS;AAAA,MACZ,sCAAsC;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,cAAc,OAAO,MAAM,QAAQ;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EACA,aAAa,CAAC,OAAqB,aAAqB;AACtD,SAAK,SAAS;AAAA,MACZ,yBAAyB;AAAA,QACvB;AAAA,QACA,cAAc,OAAO,MAAM,QAAQ;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EACA,gCAAgC,CAAC,UAAwB;AACvD,SAAK,SAAS;AAAA,MACZ,oCAAoC;AAAA,QAClC,cAAc,OAAO,MAAM,QAAQ;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EACA,kBAAkB,CAAC;AAAA,IACjB;AAAA,IACA;AAAA,EACF,MAGM;AACJ,SAAK,SAAS;AAAA,MACZ,0BAA0B;AAAA,QACxB;AAAA,QACA,WAAW,WAAW;AAAA,QACtB,cAAc,OAAO,MAAM,QAAQ;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EACA,cAAc,CAAC;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,EACF,MAIM;AACJ,SAAK,SAAS;AAAA,MACZ,+BAA+B;AAAA,QAC7B;AAAA,QACA;AAAA,QACA,WAAW,WAAW;AAAA,QACtB,cAAc,OAAO,MAAM,QAAQ;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,EACF;AACF;;;ACnFA;AAAA,SAAS,MAAAC,WAAU;;;ACAnB;AAAA,SAAS,eAAe;;;ACAxB;AAAA,SAAS,QAAAC,aAAY;AACrB,SAAS,IAAI,cAAc;AAQ3B,eAAsB,YACpB,eACA,OACe;AACf,QAAM,QAAQ;AAAA,IACZ,MAAM,IAAI,CAAC,SAAS;AAClB,UAAI,CAAC,KAAK,QAAQ,QAAQ,CAAC,KAAK,SAAS;AACvC,eAAO,QAAQ,QAAQ;AAAA,MACzB;AAEA,aAAO,WAAWC,MAAK,eAAe,KAAK,OAAO,IAAI,GAAG,KAAK,OAAO;AAAA,IACvE,CAAC;AAAA,EACH;AACF;AAEA,eAAsB,YACpB,eACA,OACe;AACf,QAAM,QAAQ;AAAA,IACZ,MAAM,IAAI,OAAO,SAAS;AACxB,UAAI,CAAC,KAAK,YAAY,QAAQ,CAAC,KAAK,YAAY,MAAM;AACpD;AAAA,MACF;AAEA,YAAM,aAAaA,MAAK,eAAe,KAAK,WAAW,IAAI;AAC3D,YAAM,aAAaA,MAAK,eAAe,KAAK,WAAW,IAAI;AAE3D,UAAI,MAAM,WAAW,UAAU,GAAG;AAChC,eAAO,GAAG,YAAY,EAAE,OAAO,KAAK,CAAC;AAAA,MACvC;AAEA,aAAO,OAAO,YAAY,UAAU;AAAA,IACtC,CAAC;AAAA,EACH;AACF;AAEA,eAAsB,YACpB,eACA,OACe;AACf,QAAM,QAAQ;AAAA,IACZ,MAAM,IAAI,CAAC,SAAS;AAClB,UAAI,CAAC,KAAK,MAAM;AACd,eAAO,QAAQ,QAAQ;AAAA,MACzB;AAEA,aAAO,GAAGA,MAAK,eAAe,KAAK,IAAI,GAAG,EAAE,OAAO,KAAK,CAAC;AAAA,IAC3D,CAAC;AAAA,EACH;AACF;;;AD5CA,eAAsB,UACpB,OACA,MAGe;AACf,QAAM,cAAc,eAAe,MAAM,aAAa;AAEtD,MAAI,CAAE,MAAM,WAAW,WAAW,GAAI;AACpC,UAAM,IAAI,SAAS;AAAA,MACjB,MAAM,aAAa,sBAAsB;AAAA,QACvC,QAAQ,gBAAgB,MAAM,aAAa;AAAA,MAC7C,CAAC;AAAA,MACD,OAAO;AAAA,IACT,CAAC;AAAA,EACH;AAEA,QAAM,SAA2B;AAAA,IAC/B,QAAQC,eAAc;AAAA,IACtB,kBAAkB,MAAM,QAAQ,WAAW;AAAA,IAC3C,gBAAgB,MAAM;AAAA,EACxB;AACA,QAAM,EAAE,KAAK,IAAI,MAAM;AAAA,IACrB;AAAA,MACE,WAAW,KAAK;AAAA,MAChB,MAAM;AAAA,IACR;AAAA,IACA,UAAU,MAAM;AAAA,EAClB,EAAE,MAAM,CAAC,MAAe;AACtB,UAAM,IAAI,SAAS;AAAA,MACjB,MAAM,aAAa,qBAAqB;AAAA,MACxC,OAAO;AAAA,MACP,MAAM,EAAE,GAAG,OAAO;AAAA,IACpB,CAAC;AAAA,EACH,CAAC;AAED,QAAM,QAAQ,IAAI;AAAA,IAChB,YAAY,MAAM,eAAe,KAAK,WAAW,WAAW,CAAC,CAAC;AAAA,IAC9D,YAAY,MAAM,eAAe,KAAK,WAAW,WAAW,CAAC,CAAC;AAAA,IAC9D,YAAY,MAAM,eAAe,KAAK,WAAW,WAAW,CAAC,CAAC;AAAA,EAChE,CAAC;AACH;;;AD9CA,eAAsB,kBACpB,OACA,MAGA,QACA;AACA,QAAM,iBAAiB,OAAO,0BAA0B,MAAM,QAAQ;AACtE,MAAI;AACF,UAAM,kBAAkB,OAAO,EAAE,WAAW,KAAK,UAAU,CAAC;AAC5D,mBAAe,QAAQ;AAAA,EACzB,SAAS,OAAO;AAEd,qBAAiB,oBAAoB,MAAM,aAAa,GAAG,KAAK;AAChE,mBAAe,KAAK;AACpB,UAAMC,IAAG,YAAY,MAAM,aAAa,GAAG;AAAA,MACzC,WAAW;AAAA,MACX,OAAO;AAAA,IACT,CAAC,EAAE,MAAM,CAAC,MAAe;AACvB,uBAAiB,oBAAoB,MAAM,aAAa,GAAG,CAAC;AAC5D,aAAO,sCAAsC,CAAC;AAAA,IAChD,CAAC;AAAA,EACH;AAEA,QAAM,iBAAiB,OAAO,0BAA0B,MAAM,QAAQ;AACtE,MAAI;AACF,UAAM,UAAU,OAAO,EAAE,WAAW,KAAK,UAAU,CAAC;AACpD,mBAAe,QAAQ;AAAA,EACzB,SAAS,OAAO;AACd,mBAAe,KAAK;AACpB,UAAM;AAAA,EACR;AACF;;;ARnBA,eAAsB,IACpB,cACA,EAAE,UAAU,cAAc,GAC1B;AAAA,EACE,QAAQ;AACV,GAGA;AACA,MAAI,QAAQ;AACZ,QAAM,YAAY,MAAM,aAAa;AAAA,IACnC,YAAY,MAAM;AAAA,IAClB;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,IAAI,YAAY;AACtB,QAAM,SAAS,aAAa,EAAE,EAAE,CAAC;AACjC,QAAM,WAAW,cAAc,QAAQ;AAEvC,QAAM,SAAS,oBAAoB,EAAE,MAAM,CAAC;AAE5C,MAAI;AACJ,MAAI;AACF,gBAAY,MAAM,qBAAqB,MAAM,eAAe;AAAA,MAC1D;AAAA,IACF,CAAC;AAAA,EACH,SAAS,OAAO;AACd,UAAM,UAAU,YAAY,KAAK,KAAK,MAAM,UAAU,MAAM;AAE5D,UAAM,IAAI,SAAS;AAAA,MACjB,MAAM,aAAa,sBAAsB;AAAA,QACvC,OAAO;AAAA,MACT,CAAC;AAAA,MACD,OAAO;AAAA,IACT,CAAC;AAAA,EACH;AAEA,QAAM,kBAAkB,OAAO,EAAE,UAAU,GAAG,MAAM;AAEpD,QAAM,EAAE,MAAM,IAAI;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAAA,MACA,QAAQ,OAAO;AACb,eAAO,WAAW;AAClB,sBAAc,YAAY,KAAK;AAC/B,yBAAiB,oBAAoB,MAAM,aAAa,GAAG,KAAK;AAChE,uBAAW,4BAAc,aAAa,EAAE,MAAM,CAAC,CAAC;AAAA,MAClD;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,uBAAuB,CAAC,iBAAyB;AACrD,UAAM,UAAU,OAAO,eAAe,YAAY;AAClD,aAAS,iBAAiB,EAAE,OAAO,QAAQ,CAAC;AAAA,EAC9C;AAEA,QAAM,yBAAyB,OAAO,aAAqB;AACzD,QAAI,aAAa,MAAM,UAAU;AAC/B,YAAM,WAAW,EAAE,GAAG,OAAO,SAAS;AAEtC,YAAM,iBAAiB,QAAQ;AAC/B,YAAM,UAAU,OAAO,8BAA8B;AAAA,QACnD,UAAU,SAAS;AAAA,MACrB,CAAC;AACD,eAAS,iBAAiB,EAAE,SAAS,MAAM,CAAC;AAE5C,YAAM,kBAAkB,UAAU,EAAE,UAAU,GAAG,MAAM;AAEvD,cAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,kBAAkB,OAAO,eAAuB;AACpD,aAAS,aAAa;AAAA,MACpB,QAAQ;AAAA,MACR,SAAS;AAAA,MACT;AAAA,IACF,CAAC;AAED,UAAM,eAAe,gBAAgB,UAAU;AAE/C,QAAI,OAAO;AACT,YAAM,YAAY,IAAI,IAAI,qBAAqB,UAAU,EAAE,EAAE,IAAI;AAAA,IACnE,OAAO;AACL,YAAM,YAAY,YAAY;AAAA,IAChC;AAAA,EACF;AAEA,QAAM,kBAAkB,CAAC,eAAuB;AAC9C,UAAM,MAAM,IAAI,IAAI,MAAM,YAAY,oBAAoB,CAAC;AAE3D,QAAI,aAAa,OAAO,aAAa,WAAW,SAAS,CAAC;AAC1D,QAAI,aAAa,OAAO,gBAAgB,MAAM,SAAS,CAAC;AAExD,WAAO,IAAI,SAAS;AAAA,EACtB;AAEA,MAAI;AACJ,MAAI;AACF,UAAM,EAAE,MAAM,WAAW,IAAI,MAAM,OAAO,MAAM,WAAW,eAAe;AAE1E,UAAM,eAAe,gBAAgB,UAAU;AAE/C,WAAO,GAAG,gBAAgB,MAAM,qBAAqB,YAAY,CAAC;AAClE,WAAO,GAAG,wBAAwB,sBAAsB;AAExD,iBAAa,IAAI,WAAW;AAE5B,WAAO,kBAAkB,KAAK;AAE9B,UAAM,gBAAgB,UAAU;AAChC,UAAM,EAAE,aAAa,IAAI,WAAW,MAAM;AAC1C,eAAW,GAAG,KAAK,MAAM,gBAAgB,UAAU,CAAC;AAEpD,kBAAc,OAAO,OAAO,EAAE,MAAM,IAAI,CAAC;AACzC,UAAM;AAAA,EACR,UAAE;AACA,gBAAY,QAAQ;AACpB,UAAM,QAAQ,IAAI,CAAC,OAAO,MAAM,GAAG,MAAM,CAAC,CAAC;AAAA,EAC7C;AACF;","names":["normalizePath","filePath","rm","join","join","GridAppLayout","rm"]}
package/build/index.js CHANGED
@@ -7,17 +7,17 @@ import {
7
7
  createBiLogger,
8
8
  package_default,
9
9
  version
10
- } from "./chunk-FO4JMX7I.js";
10
+ } from "./chunk-Z4TKBS7R.js";
11
11
  import {
12
12
  Argument,
13
13
  Command,
14
14
  createCommand
15
15
  } from "./chunk-K74KSKUR.js";
16
- import "./chunk-QI3N3YSP.js";
16
+ import "./chunk-IC6K6CSD.js";
17
17
  import {
18
18
  getUserInfo,
19
19
  pTimeout
20
- } from "./chunk-BTM6MXTF.js";
20
+ } from "./chunk-KJCRO3PB.js";
21
21
  import {
22
22
  OutdatedVersionMessage,
23
23
  createErrorHandler,
@@ -26,20 +26,20 @@ import {
26
26
  require_prerelease,
27
27
  require_semver,
28
28
  writeCrashReport
29
- } from "./chunk-SYSWGRNF.js";
29
+ } from "./chunk-ZLPYLX6E.js";
30
30
  import {
31
31
  createI18n,
32
32
  render,
33
33
  require_react
34
- } from "./chunk-HU33E37I.js";
35
- import "./chunk-WN3D6AOY.js";
36
- import "./chunk-W423UTD3.js";
34
+ } from "./chunk-4XPWCRGU.js";
37
35
  import {
38
36
  source_default
39
- } from "./chunk-2NWGTFAC.js";
37
+ } from "./chunk-2K5KKUL3.js";
38
+ import "./chunk-WN3D6AOY.js";
39
+ import "./chunk-W423UTD3.js";
40
40
  import "./chunk-YU54OBFT.js";
41
41
  import "./chunk-XMTHMR2B.js";
42
- import "./chunk-WSW2V2ZB.js";
42
+ import "./chunk-YX66M2XN.js";
43
43
  import {
44
44
  SENTRY_DSN,
45
45
  VERSION_CACHE_FILENAME,
@@ -51,7 +51,7 @@ import {
51
51
  import {
52
52
  pathExists,
53
53
  readJson
54
- } from "./chunk-LR6CHFGP.js";
54
+ } from "./chunk-QPYNVASM.js";
55
55
  import {
56
56
  getTestOverrides,
57
57
  setupTestEnv,
@@ -61,7 +61,7 @@ import {
61
61
  CliError,
62
62
  CliErrorCode,
63
63
  require_lib
64
- } from "./chunk-IFBC6MP5.js";
64
+ } from "./chunk-PWEJ3IWM.js";
65
65
  import {
66
66
  __commonJS,
67
67
  __dirname,
@@ -4273,12 +4273,12 @@ async function importCliSite(projectFolder2) {
4273
4273
  }
4274
4274
  const config = await readWixConfig(projectFolder2);
4275
4275
  if (env.WIX_CLI_SITE_LIVE === "true" && Object.hasOwn(config, "veloAppId")) {
4276
- return import("./src-JHDL6HRJ.js");
4276
+ return import("./src-NDQ3YSVS.js");
4277
4277
  }
4278
4278
  if (env.WIX_CLI_SITE_V2 === "true" && !Object.hasOwn(config, "uiVersion")) {
4279
- return import("./src-KVHMNIWM.js");
4279
+ return import("./src-5FM5LBPG.js");
4280
4280
  }
4281
- return import("./src-4XL5NTJS.js");
4281
+ return import("./src-YKFH53HG.js");
4282
4282
  }
4283
4283
 
4284
4284
  // src/commands/login.tsx
@@ -4300,9 +4300,9 @@ var login = (services) => {
4300
4300
  const i18n = createI18n2();
4301
4301
  return createCommand("login").description(i18n.t("login_command.description")).option("--api-key <token>", i18n.t("login_command.option.api_key")).action(async (options, command) => {
4302
4302
  const { apiKey } = options;
4303
- const { getUserInfo: getUserInfo2 } = await import("./src-QOI2D3S4.js");
4304
- const { LoginCommand } = await import("./LoginCommand-Y4STX5I4.js");
4305
- const { renderCommand } = await import("./render-command-4FI34WBA.js");
4303
+ const { getUserInfo: getUserInfo2 } = await import("./src-WZQSHEYJ.js");
4304
+ const { LoginCommand } = await import("./LoginCommand-XQFHRT7W.js");
4305
+ const { renderCommand } = await import("./render-command-IPDLSBIH.js");
4306
4306
  const userInfo = await getUserInfo2();
4307
4307
  await renderCommand(
4308
4308
  command,
@@ -4318,9 +4318,9 @@ var import_react2 = __toESM(require_react(), 1);
4318
4318
  var logout = (services) => {
4319
4319
  const i18n = createI18n2();
4320
4320
  return createCommand("logout").description(i18n.t("logout_command.description")).action(async (_, command) => {
4321
- const { getUserInfo: getUserInfo2 } = await import("./src-QOI2D3S4.js");
4322
- const { LogoutCommand } = await import("./LogoutCommand-IXNGVG5L.js");
4323
- const { renderCommand } = await import("./render-command-4FI34WBA.js");
4321
+ const { getUserInfo: getUserInfo2 } = await import("./src-WZQSHEYJ.js");
4322
+ const { LogoutCommand } = await import("./LogoutCommand-YY7MRKCM.js");
4323
+ const { renderCommand } = await import("./render-command-IPDLSBIH.js");
4324
4324
  const userInfo = await getUserInfo2();
4325
4325
  await renderCommand(
4326
4326
  command,
@@ -4335,9 +4335,9 @@ init_esm_shims();
4335
4335
  var telemetry = () => {
4336
4336
  const t = createI18nT();
4337
4337
  return createCommand("telemetry").description(t("telemetry_command.description")).addArgument(new Argument("<state>", "").choices(["on", "off"])).action(async (state) => {
4338
- const { updateUserConfig } = await import("./src-U4W7RS6S.js");
4339
- const { CliError: CliError2, CliErrorCode: CliErrorCode2 } = await import("./src-ECBBCYB3.js");
4340
- const { createLogger } = await import("./src-XSN6C5L2.js");
4338
+ const { updateUserConfig } = await import("./src-QDEPJEVY.js");
4339
+ const { CliError: CliError2, CliErrorCode: CliErrorCode2 } = await import("./src-RLHCQYHW.js");
4340
+ const { createLogger } = await import("./src-DFC4OJXU.js");
4341
4341
  const logger = createLogger();
4342
4342
  try {
4343
4343
  const telemetryEnabled = state === "on";
@@ -4358,9 +4358,9 @@ var import_react3 = __toESM(require_react(), 1);
4358
4358
  var whoami = (services) => {
4359
4359
  const i18n = createI18n2();
4360
4360
  return createCommand("whoami").description(i18n.t("whoami_command.description")).action(async (_, command) => {
4361
- const { getUserInfo: getUserInfo2 } = await import("./src-QOI2D3S4.js");
4362
- const { WhoamiCommand } = await import("./WhoamiCommand-UJUYYBBU.js");
4363
- const { renderCommand } = await import("./render-command-4FI34WBA.js");
4361
+ const { getUserInfo: getUserInfo2 } = await import("./src-WZQSHEYJ.js");
4362
+ const { WhoamiCommand } = await import("./WhoamiCommand-GWPNPHRL.js");
4363
+ const { renderCommand } = await import("./render-command-IPDLSBIH.js");
4364
4364
  const userInfo = await getUserInfo2();
4365
4365
  await renderCommand(
4366
4366
  command,
@@ -6,17 +6,18 @@ import {
6
6
  installAllPackages,
7
7
  installNpmPackage,
8
8
  resolveNpmDependencies
9
- } from "./chunk-UPXCPX6R.js";
9
+ } from "./chunk-Z3MJ3WPQ.js";
10
10
  import "./chunk-IPI4IXDD.js";
11
11
  import {
12
12
  createLogger
13
- } from "./chunk-EYBRAJ77.js";
13
+ } from "./chunk-BCT5PAPG.js";
14
+ import "./chunk-CNXKF7E3.js";
14
15
  import {
15
16
  authenticate
16
- } from "./chunk-R4KXK4HG.js";
17
+ } from "./chunk-UHGVP5PT.js";
17
18
  import {
18
19
  createI18nT
19
- } from "./chunk-RESBATTJ.js";
20
+ } from "./chunk-3P5PTIBR.js";
20
21
  import "./chunk-OJHDGJWP.js";
21
22
  import "./chunk-6XRFJZTQ.js";
22
23
  import {
@@ -24,27 +25,26 @@ import {
24
25
  getVeloDependenciesConfigPath,
25
26
  veloDependenciesConfigSchema
26
27
  } from "./chunk-Y4ZVXLXY.js";
27
- import "./chunk-BGKFJNUK.js";
28
- import "./chunk-QI3N3YSP.js";
29
- import "./chunk-BTM6MXTF.js";
30
- import "./chunk-SYSWGRNF.js";
31
- import "./chunk-HU33E37I.js";
28
+ import "./chunk-IC6K6CSD.js";
29
+ import "./chunk-KJCRO3PB.js";
30
+ import "./chunk-ZLPYLX6E.js";
31
+ import "./chunk-4XPWCRGU.js";
32
+ import "./chunk-2K5KKUL3.js";
32
33
  import "./chunk-WN3D6AOY.js";
33
34
  import "./chunk-W423UTD3.js";
34
- import "./chunk-2NWGTFAC.js";
35
35
  import "./chunk-YU54OBFT.js";
36
36
  import "./chunk-XMTHMR2B.js";
37
- import "./chunk-WSW2V2ZB.js";
37
+ import "./chunk-YX66M2XN.js";
38
38
  import "./chunk-SEOIN2A6.js";
39
39
  import {
40
40
  pathExists,
41
41
  readJson
42
- } from "./chunk-LR6CHFGP.js";
42
+ } from "./chunk-QPYNVASM.js";
43
43
  import "./chunk-PX2L3CCA.js";
44
44
  import {
45
45
  CliError,
46
46
  CliErrorCode
47
- } from "./chunk-IFBC6MP5.js";
47
+ } from "./chunk-PWEJ3IWM.js";
48
48
  import {
49
49
  init_esm_shims
50
50
  } from "./chunk-PYIAC2GK.js";
@@ -149,4 +149,4 @@ async function install(model, { biLogger, errorReporter }, options, initialPacka
149
149
  export {
150
150
  install
151
151
  };
152
- //# sourceMappingURL=install-KBEEKENQ.js.map
152
+ //# sourceMappingURL=install-L6C6V6OD.js.map
@@ -5,46 +5,46 @@ import {
5
5
  deployGridApp,
6
6
  getDefaultBranch,
7
7
  require_prompts
8
- } from "./chunk-3WRRBP7H.js";
8
+ } from "./chunk-KJXGVQP7.js";
9
9
  import {
10
10
  isSiteNotPublishedError
11
- } from "./chunk-DGB22FOE.js";
11
+ } from "./chunk-ZM6OUS2J.js";
12
12
  import "./chunk-IPI4IXDD.js";
13
13
  import {
14
14
  createLogger
15
- } from "./chunk-EYBRAJ77.js";
15
+ } from "./chunk-BCT5PAPG.js";
16
+ import "./chunk-CNXKF7E3.js";
16
17
  import {
17
18
  authenticate
18
- } from "./chunk-R4KXK4HG.js";
19
+ } from "./chunk-UHGVP5PT.js";
19
20
  import {
20
21
  createI18nT
21
- } from "./chunk-RESBATTJ.js";
22
+ } from "./chunk-3P5PTIBR.js";
22
23
  import "./chunk-EDFOB3LN.js";
23
24
  import "./chunk-OJHDGJWP.js";
24
- import "./chunk-XCXYK7C7.js";
25
+ import "./chunk-UK7CHIDM.js";
25
26
  import "./chunk-6XRFJZTQ.js";
26
27
  import {
27
28
  DeploymentOperation
28
- } from "./chunk-HIHMLMRD.js";
29
- import "./chunk-BGKFJNUK.js";
30
- import "./chunk-QI3N3YSP.js";
31
- import "./chunk-BTM6MXTF.js";
29
+ } from "./chunk-QP2SHVU3.js";
30
+ import "./chunk-IC6K6CSD.js";
31
+ import "./chunk-KJCRO3PB.js";
32
32
  import {
33
33
  writeCrashReport
34
- } from "./chunk-SYSWGRNF.js";
35
- import "./chunk-HU33E37I.js";
34
+ } from "./chunk-ZLPYLX6E.js";
35
+ import "./chunk-4XPWCRGU.js";
36
+ import "./chunk-2K5KKUL3.js";
36
37
  import "./chunk-WN3D6AOY.js";
37
38
  import "./chunk-W423UTD3.js";
38
- import "./chunk-2NWGTFAC.js";
39
39
  import "./chunk-YU54OBFT.js";
40
40
  import "./chunk-XMTHMR2B.js";
41
- import "./chunk-WSW2V2ZB.js";
41
+ import "./chunk-YX66M2XN.js";
42
42
  import {
43
43
  getDebugLogFilePath
44
44
  } from "./chunk-SEOIN2A6.js";
45
- import "./chunk-LR6CHFGP.js";
45
+ import "./chunk-QPYNVASM.js";
46
46
  import "./chunk-PX2L3CCA.js";
47
- import "./chunk-IFBC6MP5.js";
47
+ import "./chunk-PWEJ3IWM.js";
48
48
  import {
49
49
  __toESM,
50
50
  init_esm_shims
@@ -126,4 +126,4 @@ async function preview(model, { biLogger, errorReporter }, options) {
126
126
  export {
127
127
  preview
128
128
  };
129
- //# sourceMappingURL=preview-YOWBWDEY.js.map
129
+ //# sourceMappingURL=preview-LDXRFIMB.js.map
@@ -6,62 +6,62 @@ import {
6
6
  getDefaultBranch,
7
7
  getDeploymentStatus,
8
8
  require_prompts
9
- } from "./chunk-3WRRBP7H.js";
9
+ } from "./chunk-KJXGVQP7.js";
10
10
  import {
11
11
  isSiteNotPublishedError
12
- } from "./chunk-DGB22FOE.js";
12
+ } from "./chunk-ZM6OUS2J.js";
13
13
  import "./chunk-IPI4IXDD.js";
14
14
  import {
15
15
  createLogger,
16
16
  httpRequest
17
- } from "./chunk-EYBRAJ77.js";
17
+ } from "./chunk-BCT5PAPG.js";
18
+ import "./chunk-CNXKF7E3.js";
18
19
  import {
19
20
  authenticate
20
- } from "./chunk-R4KXK4HG.js";
21
+ } from "./chunk-UHGVP5PT.js";
21
22
  import {
22
23
  createI18nT
23
- } from "./chunk-RESBATTJ.js";
24
+ } from "./chunk-3P5PTIBR.js";
24
25
  import "./chunk-EDFOB3LN.js";
25
26
  import "./chunk-OJHDGJWP.js";
26
27
  import {
27
28
  getDeploymentPipelineDescription,
28
29
  publishDeployment
29
- } from "./chunk-XCXYK7C7.js";
30
+ } from "./chunk-UK7CHIDM.js";
30
31
  import {
31
32
  DeploymentPipelinesStatus
32
33
  } from "./chunk-6XRFJZTQ.js";
33
34
  import {
34
35
  DeploymentOperation
35
- } from "./chunk-HIHMLMRD.js";
36
- import "./chunk-BGKFJNUK.js";
37
- import "./chunk-QI3N3YSP.js";
36
+ } from "./chunk-QP2SHVU3.js";
37
+ import "./chunk-IC6K6CSD.js";
38
38
  import {
39
39
  resolveUrl,
40
40
  serializer,
41
41
  toURLSearchParams
42
- } from "./chunk-BTM6MXTF.js";
42
+ } from "./chunk-KJCRO3PB.js";
43
43
  import {
44
44
  writeCrashReport
45
- } from "./chunk-SYSWGRNF.js";
46
- import "./chunk-HU33E37I.js";
47
- import "./chunk-WN3D6AOY.js";
48
- import "./chunk-W423UTD3.js";
45
+ } from "./chunk-ZLPYLX6E.js";
46
+ import "./chunk-4XPWCRGU.js";
49
47
  import {
50
48
  source_default
51
- } from "./chunk-2NWGTFAC.js";
49
+ } from "./chunk-2K5KKUL3.js";
50
+ import "./chunk-WN3D6AOY.js";
51
+ import "./chunk-W423UTD3.js";
52
52
  import "./chunk-YU54OBFT.js";
53
53
  import "./chunk-XMTHMR2B.js";
54
- import "./chunk-WSW2V2ZB.js";
54
+ import "./chunk-YX66M2XN.js";
55
55
  import {
56
56
  getDebugLogFilePath
57
57
  } from "./chunk-SEOIN2A6.js";
58
- import "./chunk-LR6CHFGP.js";
58
+ import "./chunk-QPYNVASM.js";
59
59
  import "./chunk-PX2L3CCA.js";
60
60
  import {
61
61
  CliError,
62
62
  CliErrorCode,
63
63
  require_lib
64
- } from "./chunk-IFBC6MP5.js";
64
+ } from "./chunk-PWEJ3IWM.js";
65
65
  import {
66
66
  __toESM,
67
67
  init_esm_shims
@@ -345,4 +345,4 @@ async function publish(model, { biLogger, errorReporter }, options) {
345
345
  export {
346
346
  publish
347
347
  };
348
- //# sourceMappingURL=publish-KH6HTTQW.js.map
348
+ //# sourceMappingURL=publish-FNN2BROO.js.map