@wix/cli 1.1.59 → 1.1.61

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 (128) hide show
  1. package/build/{DevCommand-PLIPWJKO.js → DevCommand-3CEY3HPC.js} +17 -16
  2. package/build/{DevCommand-PLIPWJKO.js.map → DevCommand-3CEY3HPC.js.map} +1 -1
  3. package/build/{DevCommand-D6QHU2YA.js → DevCommand-NPVKUDPR.js} +27 -876
  4. package/build/DevCommand-NPVKUDPR.js.map +1 -0
  5. package/build/{LoginCommand-NRZ4VWWM.js → LoginCommand-RTNDZF77.js} +12 -12
  6. package/build/{LogoutCommand-INOYIE67.js → LogoutCommand-CUOS2BUH.js} +8 -8
  7. package/build/PreviewCommand-5GAG7MBS.js +471 -0
  8. package/build/PreviewCommand-5GAG7MBS.js.map +1 -0
  9. package/build/{WhoamiCommand-4V4GTNFW.js → WhoamiCommand-VZ6KKOVQ.js} +5 -5
  10. package/build/{chunk-F3E4MMLD.js → chunk-2KK3GKES.js} +6 -6
  11. package/build/{chunk-6F2RSXHN.js → chunk-2NWGTFAC.js} +3 -3
  12. package/build/{chunk-6F2RSXHN.js.map → chunk-2NWGTFAC.js.map} +1 -1
  13. package/build/{chunk-Z7P6TDPB.js → chunk-2WA6TGDO.js} +6 -6
  14. package/build/{chunk-HYAIYTKF.js → chunk-332V5RP4.js} +59 -7
  15. package/build/{chunk-HYAIYTKF.js.map → chunk-332V5RP4.js.map} +1 -1
  16. package/build/{chunk-SELJR2HV.js → chunk-3NEXZN7N.js} +5 -66
  17. package/build/chunk-3NEXZN7N.js.map +1 -0
  18. package/build/{chunk-JG7FKL4X.js → chunk-3UE73ERL.js} +29 -9
  19. package/build/chunk-3UE73ERL.js.map +1 -0
  20. package/build/{chunk-OOGMXJJV.js → chunk-6K6VPM3T.js} +6 -6
  21. package/build/chunk-6LI4WGAW.js +43 -0
  22. package/build/chunk-6LI4WGAW.js.map +1 -0
  23. package/build/chunk-6XRFJZTQ.js +74 -0
  24. package/build/chunk-6XRFJZTQ.js.map +1 -0
  25. package/build/{chunk-5ZVEBKUO.js → chunk-6YVNZGPU.js} +597 -362
  26. package/build/chunk-6YVNZGPU.js.map +1 -0
  27. package/build/{chunk-U32RURCT.js → chunk-77YDQA7O.js} +6 -6
  28. package/build/chunk-B5A3CFP2.js +135 -0
  29. package/build/chunk-B5A3CFP2.js.map +1 -0
  30. package/build/{chunk-IFQQVSBK.js → chunk-BGKFJNUK.js} +2 -2
  31. package/build/{chunk-VEVISRHN.js → chunk-DEO7G3RD.js} +5 -5
  32. package/build/{chunk-CS26555F.js → chunk-DP2BL2V4.js} +7 -7
  33. package/build/{chunk-X7XOMWAQ.js → chunk-G4NFI3XC.js} +4 -4
  34. package/build/{chunk-T4OH34QF.js → chunk-H6BDO22X.js} +12 -4
  35. package/build/{chunk-T4OH34QF.js.map → chunk-H6BDO22X.js.map} +1 -1
  36. package/build/{chunk-QGSHUCNV.js → chunk-HMGX4HL2.js} +49 -18
  37. package/build/chunk-HMGX4HL2.js.map +1 -0
  38. package/build/{chunk-AXVTET6V.js → chunk-HV2IEAOB.js} +2 -2
  39. package/build/{chunk-V4DAKO7L.js → chunk-J573TQNU.js} +577 -574
  40. package/build/chunk-J573TQNU.js.map +1 -0
  41. package/build/{chunk-4HVBZRJL.js → chunk-KOGQSQ4I.js} +2 -2
  42. package/build/{chunk-4OBSJ6OG.js → chunk-L53ZVQB7.js} +139 -113
  43. package/build/{chunk-4OBSJ6OG.js.map → chunk-L53ZVQB7.js.map} +1 -1
  44. package/build/{chunk-N5IXBRXL.js → chunk-M34KVUTA.js} +2 -2
  45. package/build/{chunk-3RBFRZE2.js → chunk-N3OHN3MH.js} +5 -5
  46. package/build/{chunk-3RBFRZE2.js.map → chunk-N3OHN3MH.js.map} +1 -1
  47. package/build/{chunk-GLXEVSFE.js → chunk-P4UAXEEN.js} +14 -132
  48. package/build/chunk-P4UAXEEN.js.map +1 -0
  49. package/build/{chunk-BV3B44QL.js → chunk-PTIE2TCP.js} +3 -3
  50. package/build/{chunk-BNWDAMAL.js → chunk-PX2L3CCA.js} +2 -2
  51. package/build/chunk-PX2L3CCA.js.map +1 -0
  52. package/build/chunk-Q3GS63B5.js +901 -0
  53. package/build/chunk-Q3GS63B5.js.map +1 -0
  54. package/build/{chunk-5XUFGBCU.js → chunk-SEOIN2A6.js} +7 -3
  55. package/build/chunk-SEOIN2A6.js.map +1 -0
  56. package/build/{chunk-YUFAOC35.js → chunk-V7JWKPQI.js} +8 -8
  57. package/build/{chunk-VRDC2KLN.js → chunk-VXGNI7CP.js} +5 -2
  58. package/build/{chunk-VRDC2KLN.js.map → chunk-VXGNI7CP.js.map} +1 -1
  59. package/build/{chunk-CMXHWKEP.js → chunk-XFEYPXEY.js} +3 -3
  60. package/build/{chunk-G6TDIUNY.js → chunk-Y4ZVXLXY.js} +2 -2
  61. package/build/{chunk-PNUERA4W.js → chunk-ZVHSVTAJ.js} +5 -5
  62. package/build/{dev-TEWYYBKR.js → dev-FOGJASYZ.js} +31 -30
  63. package/build/{dev-TEWYYBKR.js.map → dev-FOGJASYZ.js.map} +1 -1
  64. package/build/index.js +29 -29
  65. package/build/{install-MTS6LPPU.js → install-NSVJU2EB.js} +22 -21
  66. package/build/{install-MTS6LPPU.js.map → install-NSVJU2EB.js.map} +1 -1
  67. package/build/{preview-TDMPHSVV.js → preview-RQ5CLHV5.js} +24 -22
  68. package/build/{preview-TDMPHSVV.js.map → preview-RQ5CLHV5.js.map} +1 -1
  69. package/build/{publish-5VLMBE6J.js → publish-YWESFDVY.js} +30 -27
  70. package/build/publish-YWESFDVY.js.map +1 -0
  71. package/build/{render-command-7OMEGPW4.js → render-command-4GOKWOT7.js} +11 -11
  72. package/build/{render-command-UQPFUBIL.js → render-command-E3JPPTZA.js} +12 -12
  73. package/build/{render-command-FELGYBEY.js → render-command-WMEIFR3G.js} +13 -13
  74. package/build/{run-command-3YTQS4ZX.js → run-command-D54S2NI5.js} +9 -9
  75. package/build/{src-Y334LPF5.js → src-4W7XB5DS.js} +21 -9
  76. package/build/src-4W7XB5DS.js.map +1 -0
  77. package/build/{src-4W2WPIAM.js → src-HA6XHM2E.js} +8 -8
  78. package/build/{src-7NEL65ZK.js → src-IIEVMGC3.js} +18 -18
  79. package/build/{src-UWOBS6D7.js → src-NGHHXRWJ.js} +2 -2
  80. package/build/{src-LA3GYOE6.js → src-NS46VL23.js} +7 -7
  81. package/build/{src-IBLQL7AB.js → src-OIVJ4AKD.js} +6 -6
  82. package/build/{src-BMV74WCO.js → src-XSN6C5L2.js} +3 -3
  83. package/build/sync-types-SQEHJPEG.js +31 -0
  84. package/build/{uninstall-M4DEVSQC.js → uninstall-ASZ55QZA.js} +20 -19
  85. package/build/{uninstall-M4DEVSQC.js.map → uninstall-ASZ55QZA.js.map} +1 -1
  86. package/package.json +3 -3
  87. package/build/DevCommand-D6QHU2YA.js.map +0 -1
  88. package/build/chunk-5XUFGBCU.js.map +0 -1
  89. package/build/chunk-5ZVEBKUO.js.map +0 -1
  90. package/build/chunk-BNWDAMAL.js.map +0 -1
  91. package/build/chunk-GLXEVSFE.js.map +0 -1
  92. package/build/chunk-JG7FKL4X.js.map +0 -1
  93. package/build/chunk-QGSHUCNV.js.map +0 -1
  94. package/build/chunk-SELJR2HV.js.map +0 -1
  95. package/build/chunk-V4DAKO7L.js.map +0 -1
  96. package/build/publish-5VLMBE6J.js.map +0 -1
  97. package/build/src-Y334LPF5.js.map +0 -1
  98. package/build/sync-types-W3PVOJTK.js +0 -30
  99. /package/build/{LoginCommand-NRZ4VWWM.js.map → LoginCommand-RTNDZF77.js.map} +0 -0
  100. /package/build/{LogoutCommand-INOYIE67.js.map → LogoutCommand-CUOS2BUH.js.map} +0 -0
  101. /package/build/{WhoamiCommand-4V4GTNFW.js.map → WhoamiCommand-VZ6KKOVQ.js.map} +0 -0
  102. /package/build/{chunk-F3E4MMLD.js.map → chunk-2KK3GKES.js.map} +0 -0
  103. /package/build/{chunk-Z7P6TDPB.js.map → chunk-2WA6TGDO.js.map} +0 -0
  104. /package/build/{chunk-OOGMXJJV.js.map → chunk-6K6VPM3T.js.map} +0 -0
  105. /package/build/{chunk-U32RURCT.js.map → chunk-77YDQA7O.js.map} +0 -0
  106. /package/build/{chunk-IFQQVSBK.js.map → chunk-BGKFJNUK.js.map} +0 -0
  107. /package/build/{chunk-VEVISRHN.js.map → chunk-DEO7G3RD.js.map} +0 -0
  108. /package/build/{chunk-CS26555F.js.map → chunk-DP2BL2V4.js.map} +0 -0
  109. /package/build/{chunk-X7XOMWAQ.js.map → chunk-G4NFI3XC.js.map} +0 -0
  110. /package/build/{chunk-AXVTET6V.js.map → chunk-HV2IEAOB.js.map} +0 -0
  111. /package/build/{chunk-4HVBZRJL.js.map → chunk-KOGQSQ4I.js.map} +0 -0
  112. /package/build/{chunk-N5IXBRXL.js.map → chunk-M34KVUTA.js.map} +0 -0
  113. /package/build/{chunk-BV3B44QL.js.map → chunk-PTIE2TCP.js.map} +0 -0
  114. /package/build/{chunk-YUFAOC35.js.map → chunk-V7JWKPQI.js.map} +0 -0
  115. /package/build/{chunk-CMXHWKEP.js.map → chunk-XFEYPXEY.js.map} +0 -0
  116. /package/build/{chunk-G6TDIUNY.js.map → chunk-Y4ZVXLXY.js.map} +0 -0
  117. /package/build/{chunk-PNUERA4W.js.map → chunk-ZVHSVTAJ.js.map} +0 -0
  118. /package/build/{render-command-7OMEGPW4.js.map → render-command-4GOKWOT7.js.map} +0 -0
  119. /package/build/{render-command-UQPFUBIL.js.map → render-command-E3JPPTZA.js.map} +0 -0
  120. /package/build/{render-command-FELGYBEY.js.map → render-command-WMEIFR3G.js.map} +0 -0
  121. /package/build/{run-command-3YTQS4ZX.js.map → run-command-D54S2NI5.js.map} +0 -0
  122. /package/build/{src-4W2WPIAM.js.map → src-HA6XHM2E.js.map} +0 -0
  123. /package/build/{src-7NEL65ZK.js.map → src-IIEVMGC3.js.map} +0 -0
  124. /package/build/{src-BMV74WCO.js.map → src-NGHHXRWJ.js.map} +0 -0
  125. /package/build/{src-LA3GYOE6.js.map → src-NS46VL23.js.map} +0 -0
  126. /package/build/{src-IBLQL7AB.js.map → src-OIVJ4AKD.js.map} +0 -0
  127. /package/build/{src-UWOBS6D7.js.map → src-XSN6C5L2.js.map} +0 -0
  128. /package/build/{sync-types-W3PVOJTK.js.map → sync-types-SQEHJPEG.js.map} +0 -0
@@ -15,15 +15,15 @@ import {
15
15
  require_cli_spinners,
16
16
  source_default,
17
17
  stripAnsi
18
- } from "./chunk-6F2RSXHN.js";
18
+ } from "./chunk-2NWGTFAC.js";
19
19
  import {
20
20
  getTestOverrides
21
- } from "./chunk-BNWDAMAL.js";
21
+ } from "./chunk-PX2L3CCA.js";
22
22
  import {
23
23
  CliError,
24
24
  CliErrorCode,
25
25
  require_lib
26
- } from "./chunk-T4OH34QF.js";
26
+ } from "./chunk-H6BDO22X.js";
27
27
  import {
28
28
  __commonJS,
29
29
  __require,
@@ -10881,455 +10881,95 @@ var Text2 = ({
10881
10881
  );
10882
10882
  };
10883
10883
 
10884
- // ../cli-ui-kit/src/renderer.tsx
10885
- init_esm_shims();
10886
- var import_react24 = __toESM(require_react(), 1);
10887
-
10888
- // ../cli-ui-kit/src/hooks/use-exit.ts
10889
- init_esm_shims();
10890
- var import_react23 = __toESM(require_react(), 1);
10891
- function useExit() {
10892
- const { exit } = use_app_default();
10893
- return (0, import_react23.useCallback)(
10894
- (error) => {
10895
- if (error instanceof Error) {
10896
- exit(error);
10897
- } else if (error !== void 0) {
10898
- exit(new Error(JSON.stringify(error)));
10899
- } else {
10900
- exit();
10901
- }
10902
- },
10903
- [exit]
10904
- );
10905
- }
10906
-
10907
- // ../cli-ui-kit/src/renderer.tsx
10908
- var ErrorBoundary = class extends import_react24.Component {
10909
- state = { hasError: false };
10910
- static getDerivedStateFromError(_error) {
10911
- return { hasError: true };
10912
- }
10913
- componentDidCatch(e2) {
10914
- const error = e2 instanceof Error ? e2 : new Error(JSON.stringify(e2));
10915
- if (error.message.includes(
10916
- "Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default"
10917
- )) {
10918
- this.props.onExit(
10919
- new CliError({
10920
- code: CliErrorCode.NonInteractiveTerminal(),
10921
- cause: error
10922
- })
10923
- );
10924
- } else {
10925
- this.props.onExit(error);
10926
- }
10927
- }
10928
- render() {
10929
- return this.state.hasError ? null : this.props.children;
10930
- }
10931
- };
10932
- var ErrorBoundaryWrapper = ({ children }) => {
10933
- const exit = useExit();
10934
- return /* @__PURE__ */ import_react24.default.createElement(ErrorBoundary, { onExit: exit }, children);
10935
- };
10936
- var FrameWrapper = ({
10937
- children,
10938
- wrap
10939
- }) => {
10940
- return /* @__PURE__ */ import_react24.default.createElement(import_react24.default.Fragment, null, wrap && /* @__PURE__ */ import_react24.default.createElement(Text, null, "----RENDER-FRAME-START----"), children, wrap && /* @__PURE__ */ import_react24.default.createElement(Text, null, "----RENDER-FRAME-END----"));
10941
- };
10942
- async function render2(tree) {
10943
- const debug = !!getTestOverrides().inkDebug;
10944
- const { waitUntilExit, unmount } = render_default(
10945
- /* @__PURE__ */ import_react24.default.createElement(FrameWrapper, { wrap: debug }, /* @__PURE__ */ import_react24.default.createElement(ErrorBoundaryWrapper, null, tree)),
10946
- { exitOnCtrlC: true, debug }
10947
- );
10948
- process.once("beforeExit", () => {
10949
- unmount();
10950
- });
10951
- process.once("SIGINT", () => {
10952
- unmount();
10953
- });
10954
- await waitUntilExit();
10955
- }
10956
- function renderSyncInternal(tree, renderOptions) {
10957
- const debug = !!getTestOverrides().inkDebug;
10958
- const { unmount } = render_default(
10959
- /* @__PURE__ */ import_react24.default.createElement(FrameWrapper, { wrap: debug }, tree),
10960
- {
10961
- debug,
10962
- ...renderOptions
10963
- }
10964
- );
10965
- unmount();
10966
- }
10967
- function renderSync(tree) {
10968
- renderSyncInternal(tree);
10969
- }
10970
- function renderErrorSync(tree) {
10971
- renderSyncInternal(tree, {
10972
- stdout: process.stderr
10973
- });
10974
- }
10975
-
10976
- // ../cli-ui-kit/src/index.ts
10977
- init_esm_shims();
10978
-
10979
- // ../cli-ui-kit/src/components/ConfirmInput/index.ts
10980
- init_esm_shims();
10981
-
10982
- // ../cli-ui-kit/src/components/ConfirmInput/ConfirmInput.tsx
10983
- init_esm_shims();
10984
- var import_react35 = __toESM(require_react(), 1);
10985
- var import_variant3 = __toESM(require_lib(), 1);
10986
-
10987
- // ../cli-ui-kit/src/input-state.ts
10884
+ // ../cli-ui-kit/src/components/Alert.tsx
10988
10885
  init_esm_shims();
10886
+ var import_react29 = __toESM(require_react(), 1);
10989
10887
  var import_variant = __toESM(require_lib(), 1);
10990
- var InputState = (0, import_variant.variant)(
10991
- (0, import_variant.onTerms)(({ T: _T }) => ({
10992
- NotSubmitted: (value2) => ({ value: value2 }),
10993
- Submitted: (value2) => ({ value: value2 })
10994
- }))
10995
- );
10996
-
10997
- // ../cli-ui-kit/src/components/InputLabel.tsx
10998
- init_esm_shims();
10999
- var import_react31 = __toESM(require_react(), 1);
11000
10888
 
11001
10889
  // ../cli-ui-kit/src/icons/index.ts
11002
10890
  init_esm_shims();
11003
10891
 
11004
10892
  // ../cli-ui-kit/src/icons/Error.tsx
11005
10893
  init_esm_shims();
11006
- var import_react25 = __toESM(require_react(), 1);
10894
+ var import_react23 = __toESM(require_react(), 1);
11007
10895
  var ErrorIcon = () => {
11008
- return /* @__PURE__ */ import_react25.default.createElement(Text2, null, isUnicodeSupported() ? "\u2716" : "\xD7");
10896
+ return /* @__PURE__ */ import_react23.default.createElement(Text2, null, isUnicodeSupported() ? "\u2716" : "\xD7");
11009
10897
  };
11010
10898
 
11011
10899
  // ../cli-ui-kit/src/icons/Pointer.tsx
11012
10900
  init_esm_shims();
11013
- var import_react26 = __toESM(require_react(), 1);
10901
+ var import_react24 = __toESM(require_react(), 1);
11014
10902
  var PointerIcon = ({ appearance }) => {
11015
10903
  switch (appearance) {
11016
10904
  case "exclamation":
11017
- return /* @__PURE__ */ import_react26.default.createElement(Text2, null, "!");
10905
+ return /* @__PURE__ */ import_react24.default.createElement(Text2, null, "!");
11018
10906
  case "triangle":
11019
- return /* @__PURE__ */ import_react26.default.createElement(Text2, null, isUnicodeSupported() ? "\u25B6" : ">");
10907
+ return /* @__PURE__ */ import_react24.default.createElement(Text2, null, isUnicodeSupported() ? "\u25B6" : ">");
11020
10908
  default:
11021
- return /* @__PURE__ */ import_react26.default.createElement(Text2, null, isUnicodeSupported() ? "\u276F" : ">");
10909
+ return /* @__PURE__ */ import_react24.default.createElement(Text2, null, isUnicodeSupported() ? "\u276F" : ">");
11022
10910
  }
11023
10911
  };
11024
10912
 
11025
10913
  // ../cli-ui-kit/src/icons/QuestionMark.tsx
11026
10914
  init_esm_shims();
11027
- var import_react27 = __toESM(require_react(), 1);
10915
+ var import_react25 = __toESM(require_react(), 1);
11028
10916
  var QuestionMarkIcon = () => {
11029
- return /* @__PURE__ */ import_react27.default.createElement(Text2, null, "?");
10917
+ return /* @__PURE__ */ import_react25.default.createElement(Text2, null, "?");
11030
10918
  };
11031
10919
 
11032
10920
  // ../cli-ui-kit/src/icons/Success.tsx
11033
10921
  init_esm_shims();
11034
- var import_react28 = __toESM(require_react(), 1);
10922
+ var import_react26 = __toESM(require_react(), 1);
11035
10923
  var SuccessIcon = () => {
11036
- return /* @__PURE__ */ import_react28.default.createElement(Text2, null, isUnicodeSupported() ? "\u2714" : "\u221A");
10924
+ return /* @__PURE__ */ import_react26.default.createElement(Text2, null, isUnicodeSupported() ? "\u2714" : "\u221A");
11037
10925
  };
11038
10926
 
11039
10927
  // ../cli-ui-kit/src/icons/Warning.tsx
11040
10928
  init_esm_shims();
11041
- var import_react29 = __toESM(require_react(), 1);
10929
+ var import_react27 = __toESM(require_react(), 1);
11042
10930
  var WarningIcon = () => {
11043
- return /* @__PURE__ */ import_react29.default.createElement(Text2, null, isUnicodeSupported() ? "\u26A0" : "\u203C");
10931
+ return /* @__PURE__ */ import_react27.default.createElement(Text2, null, isUnicodeSupported() ? "\u26A0" : "\u203C");
11044
10932
  };
11045
10933
 
11046
10934
  // ../cli-ui-kit/src/icons/Insight.tsx
11047
10935
  init_esm_shims();
11048
- var import_react30 = __toESM(require_react(), 1);
10936
+ var import_react28 = __toESM(require_react(), 1);
11049
10937
  var InsightIcon = () => {
11050
- return /* @__PURE__ */ import_react30.default.createElement(Text2, null, isUnicodeSupported() ? "\u{1F4A1}" : "!");
10938
+ return /* @__PURE__ */ import_react28.default.createElement(Text2, null, isUnicodeSupported() ? "\u{1F4A1}" : "!");
11051
10939
  };
11052
10940
 
11053
- // ../cli-ui-kit/src/components/InputLabel.tsx
11054
- var InputLabel = ({ children, icon }) => {
11055
- return /* @__PURE__ */ import_react31.default.createElement(Text2, null, icon ?? /* @__PURE__ */ import_react31.default.createElement(Text2, { skin: "question", bold: true }, /* @__PURE__ */ import_react31.default.createElement(QuestionMarkIcon, null)), " ", /* @__PURE__ */ import_react31.default.createElement(Text2, { skin: "question", bold: true }, children));
10941
+ // ../cli-ui-kit/src/components/Alert.tsx
10942
+ var Alert = ({ type, children }) => {
10943
+ const icon = (0, import_variant.match)(type, {
10944
+ error: (0, import_variant.constant)(
10945
+ /* @__PURE__ */ import_react29.default.createElement(Text2, { skin: "error" }, /* @__PURE__ */ import_react29.default.createElement(ErrorIcon, null))
10946
+ ),
10947
+ warning: (0, import_variant.constant)(
10948
+ /* @__PURE__ */ import_react29.default.createElement(Text2, { skin: "warning" }, /* @__PURE__ */ import_react29.default.createElement(WarningIcon, null))
10949
+ ),
10950
+ success: (0, import_variant.constant)(
10951
+ /* @__PURE__ */ import_react29.default.createElement(Text2, { skin: "success" }, /* @__PURE__ */ import_react29.default.createElement(SuccessIcon, null))
10952
+ ),
10953
+ insight: (0, import_variant.constant)(/* @__PURE__ */ import_react29.default.createElement(InsightIcon, null))
10954
+ });
10955
+ return /* @__PURE__ */ import_react29.default.createElement(Text2, null, icon, " ", children);
11056
10956
  };
11057
10957
 
11058
- // ../cli-ui-kit/src/components/ConfirmInput/Placeholder.tsx
10958
+ // ../cli-ui-kit/src/components/Badge.tsx
11059
10959
  init_esm_shims();
11060
- var import_react32 = __toESM(require_react(), 1);
11061
- var import_variant2 = __toESM(require_lib(), 1);
11062
- var Placeholder = ({ inputState }) => {
11063
- return (0, import_variant2.match)(inputState, {
11064
- NotSubmitted: ({ value: value2 }) => /* @__PURE__ */ import_react32.default.createElement(Text2, { skin: "secondary" }, "(", value2 ? "Y/n" : "y/N", ")"),
11065
- Submitted: ({ value: value2 }) => /* @__PURE__ */ import_react32.default.createElement(Text2, null, value2 ? "Yes" : "No")
11066
- });
10960
+ var import_react30 = __toESM(require_react(), 1);
10961
+ var skins2 = {
10962
+ success: { backgroundColor: "green" }
10963
+ };
10964
+ var Badge = ({ children, skin }) => {
10965
+ return /* @__PURE__ */ import_react30.default.createElement(Text, { ...skins2[skin] }, " ", children, " ");
11067
10966
  };
11068
10967
 
11069
- // ../cli-ui-kit/src/components/ConfirmInput/Input.tsx
10968
+ // ../cli-ui-kit/src/components/Link.tsx
11070
10969
  init_esm_shims();
11071
- var import_react34 = __toESM(require_react(), 1);
10970
+ var import_react31 = __toESM(require_react(), 1);
11072
10971
 
11073
- // ../../node_modules/ink-text-input/build/index.js
11074
- init_esm_shims();
11075
- var import_react33 = __toESM(require_react(), 1);
11076
- function TextInput({ value: originalValue, placeholder = "", focus = true, mask, highlightPastedText = false, showCursor = true, onChange, onSubmit }) {
11077
- const [state, setState] = (0, import_react33.useState)({
11078
- cursorOffset: (originalValue || "").length,
11079
- cursorWidth: 0
11080
- });
11081
- const { cursorOffset, cursorWidth } = state;
11082
- (0, import_react33.useEffect)(() => {
11083
- setState((previousState) => {
11084
- if (!focus || !showCursor) {
11085
- return previousState;
11086
- }
11087
- const newValue = originalValue || "";
11088
- if (previousState.cursorOffset > newValue.length - 1) {
11089
- return {
11090
- cursorOffset: newValue.length,
11091
- cursorWidth: 0
11092
- };
11093
- }
11094
- return previousState;
11095
- });
11096
- }, [originalValue, focus, showCursor]);
11097
- const cursorActualWidth = highlightPastedText ? cursorWidth : 0;
11098
- const value2 = mask ? mask.repeat(originalValue.length) : originalValue;
11099
- let renderedValue = value2;
11100
- let renderedPlaceholder = placeholder ? source_default.grey(placeholder) : void 0;
11101
- if (showCursor && focus) {
11102
- renderedPlaceholder = placeholder.length > 0 ? source_default.inverse(placeholder[0]) + source_default.grey(placeholder.slice(1)) : source_default.inverse(" ");
11103
- renderedValue = value2.length > 0 ? "" : source_default.inverse(" ");
11104
- let i2 = 0;
11105
- for (const char of value2) {
11106
- renderedValue += i2 >= cursorOffset - cursorActualWidth && i2 <= cursorOffset ? source_default.inverse(char) : char;
11107
- i2++;
11108
- }
11109
- if (value2.length > 0 && cursorOffset === value2.length) {
11110
- renderedValue += source_default.inverse(" ");
11111
- }
11112
- }
11113
- use_input_default((input, key) => {
11114
- if (key.upArrow || key.downArrow || key.ctrl && input === "c" || key.tab || key.shift && key.tab) {
11115
- return;
11116
- }
11117
- if (key.return) {
11118
- if (onSubmit) {
11119
- onSubmit(originalValue);
11120
- }
11121
- return;
11122
- }
11123
- let nextCursorOffset = cursorOffset;
11124
- let nextValue = originalValue;
11125
- let nextCursorWidth = 0;
11126
- if (key.leftArrow) {
11127
- if (showCursor) {
11128
- nextCursorOffset--;
11129
- }
11130
- } else if (key.rightArrow) {
11131
- if (showCursor) {
11132
- nextCursorOffset++;
11133
- }
11134
- } else if (key.backspace || key.delete) {
11135
- if (cursorOffset > 0) {
11136
- nextValue = originalValue.slice(0, cursorOffset - 1) + originalValue.slice(cursorOffset, originalValue.length);
11137
- nextCursorOffset--;
11138
- }
11139
- } else {
11140
- nextValue = originalValue.slice(0, cursorOffset) + input + originalValue.slice(cursorOffset, originalValue.length);
11141
- nextCursorOffset += input.length;
11142
- if (input.length > 1) {
11143
- nextCursorWidth = input.length;
11144
- }
11145
- }
11146
- if (cursorOffset < 0) {
11147
- nextCursorOffset = 0;
11148
- }
11149
- if (cursorOffset > originalValue.length) {
11150
- nextCursorOffset = originalValue.length;
11151
- }
11152
- setState({
11153
- cursorOffset: nextCursorOffset,
11154
- cursorWidth: nextCursorWidth
11155
- });
11156
- if (nextValue !== originalValue) {
11157
- onChange(nextValue);
11158
- }
11159
- }, { isActive: focus });
11160
- return import_react33.default.createElement(Text, null, placeholder ? value2.length > 0 ? renderedValue : renderedPlaceholder : renderedValue);
11161
- }
11162
- var build_default = TextInput;
11163
-
11164
- // ../cli-ui-kit/src/components/ConfirmInput/Input.tsx
11165
- var Input = ({ initialValue, onSubmit }) => {
11166
- const handleChange = (0, import_react34.useCallback)(
11167
- (rawKey) => {
11168
- const key = rawKey.toLowerCase();
11169
- if (["y", "n"].includes(key)) {
11170
- onSubmit(key === "y");
11171
- }
11172
- },
11173
- [onSubmit]
11174
- );
11175
- return /* @__PURE__ */ import_react34.default.createElement(
11176
- build_default,
11177
- {
11178
- value: "",
11179
- showCursor: false,
11180
- onChange: handleChange,
11181
- onSubmit: () => onSubmit(initialValue)
11182
- }
11183
- );
11184
- };
11185
-
11186
- // ../cli-ui-kit/src/components/ConfirmInput/ConfirmInput.tsx
11187
- var ConfirmInput = ({
11188
- label,
11189
- info,
11190
- initialValue = true,
11191
- onSubmit
11192
- }) => {
11193
- const [inputState, setInputState] = (0, import_react35.useState)(
11194
- () => InputState.NotSubmitted(initialValue)
11195
- );
11196
- const handleSubmit = (0, import_react35.useCallback)(
11197
- (value2) => {
11198
- setInputState(InputState.Submitted(value2));
11199
- onSubmit(value2);
11200
- },
11201
- [onSubmit]
11202
- );
11203
- return /* @__PURE__ */ import_react35.default.createElement(Text2, null, /* @__PURE__ */ import_react35.default.createElement(InputLabel, null, label), " ", info && (0, import_variant3.isType)(inputState, InputState.NotSubmitted) && /* @__PURE__ */ import_react35.default.createElement(Text2, { skin: "secondary" }, info, " "), /* @__PURE__ */ import_react35.default.createElement(Placeholder, { inputState }), (0, import_variant3.isType)(inputState, InputState.NotSubmitted) && /* @__PURE__ */ import_react35.default.createElement(Input, { initialValue, onSubmit: handleSubmit }));
11204
- };
11205
-
11206
- // ../cli-ui-kit/src/components/TextInput/Input.tsx
11207
- init_esm_shims();
11208
- var import_react36 = __toESM(require_react(), 1);
11209
- var Input2 = ({
11210
- onSubmit,
11211
- onChange,
11212
- placeholder,
11213
- showCursor
11214
- }) => {
11215
- const [currentValue, setCurrentValue] = (0, import_react36.useState)("");
11216
- return /* @__PURE__ */ import_react36.default.createElement(
11217
- build_default,
11218
- {
11219
- showCursor,
11220
- placeholder,
11221
- value: currentValue,
11222
- onChange: (value2) => {
11223
- setCurrentValue(value2);
11224
- onChange?.(value2);
11225
- },
11226
- onSubmit: () => {
11227
- if (!currentValue && placeholder) {
11228
- onSubmit?.(placeholder);
11229
- } else {
11230
- onSubmit?.(currentValue);
11231
- }
11232
- }
11233
- }
11234
- );
11235
- };
11236
-
11237
- // ../cli-ui-kit/src/components/TextInput/index.ts
11238
- init_esm_shims();
11239
-
11240
- // ../cli-ui-kit/src/components/TextInput/TextInput.tsx
11241
- init_esm_shims();
11242
- var import_react37 = __toESM(require_react(), 1);
11243
- var import_variant4 = __toESM(require_lib(), 1);
11244
- var TextInput2 = ({
11245
- label,
11246
- placeholder,
11247
- onSubmit,
11248
- validate = () => true,
11249
- inCreateFlow = false
11250
- }) => {
11251
- const [inputState, setInputState] = (0, import_react37.useState)(
11252
- () => InputState.NotSubmitted(placeholder)
11253
- );
11254
- const [isDirty, setIsDirty] = (0, import_react37.useState)(false);
11255
- const [validationError, setValidationError] = (0, import_react37.useState)();
11256
- const handleSubmit = (0, import_react37.useCallback)(
11257
- async (value2) => {
11258
- setIsDirty(false);
11259
- const validationResult = await validate(value2);
11260
- if (validationResult !== true) {
11261
- setValidationError(validationResult);
11262
- } else {
11263
- setValidationError(void 0);
11264
- setInputState(InputState.Submitted(value2));
11265
- onSubmit(value2);
11266
- }
11267
- },
11268
- [onSubmit, validate]
11269
- );
11270
- const afterValidationError = Boolean(validationError && !isDirty);
11271
- return /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, /* @__PURE__ */ import_react37.default.createElement(Box_default, { columnGap: 1, marginBottom: 1 }, /* @__PURE__ */ import_react37.default.createElement(Box_default, { marginLeft: inCreateFlow ? -2 : 0 }, /* @__PURE__ */ import_react37.default.createElement(
11272
- InputLabel,
11273
- {
11274
- icon: /* @__PURE__ */ import_react37.default.createElement(Text2, { skin: "question" }, /* @__PURE__ */ import_react37.default.createElement(PointerIcon, { appearance: "triangle" }))
11275
- },
11276
- label
11277
- )), (0, import_variant4.isType)(inputState, InputState.NotSubmitted) && /* @__PURE__ */ import_react37.default.createElement(Text2, { skin: afterValidationError ? "error" : "standard" }, /* @__PURE__ */ import_react37.default.createElement(
11278
- Input2,
11279
- {
11280
- placeholder: inputState.value,
11281
- onSubmit: handleSubmit,
11282
- onChange: () => setIsDirty(true),
11283
- showCursor: afterValidationError
11284
- }
11285
- ))), (0, import_variant4.isType)(inputState, InputState.Submitted) && /* @__PURE__ */ import_react37.default.createElement(Box_default, { marginBottom: 1 }, /* @__PURE__ */ import_react37.default.createElement(Text2, { skin: "secondary" }, /* @__PURE__ */ import_react37.default.createElement(SuccessIcon, null), " ", inputState.value)), validationError && /* @__PURE__ */ import_react37.default.createElement(Box_default, { columnGap: 1 }, /* @__PURE__ */ import_react37.default.createElement(Text2, { skin: "error" }, /* @__PURE__ */ import_react37.default.createElement(PointerIcon, { appearance: "exclamation" })), /* @__PURE__ */ import_react37.default.createElement(Text2, { skin: "error" }, validationError)));
11286
- };
11287
-
11288
- // ../cli-ui-kit/src/components/Alert.tsx
11289
- init_esm_shims();
11290
- var import_react38 = __toESM(require_react(), 1);
11291
- var import_variant5 = __toESM(require_lib(), 1);
11292
- var Alert = ({ type, children }) => {
11293
- const icon = (0, import_variant5.match)(type, {
11294
- error: (0, import_variant5.constant)(
11295
- /* @__PURE__ */ import_react38.default.createElement(Text2, { skin: "error" }, /* @__PURE__ */ import_react38.default.createElement(ErrorIcon, null))
11296
- ),
11297
- warning: (0, import_variant5.constant)(
11298
- /* @__PURE__ */ import_react38.default.createElement(Text2, { skin: "warning" }, /* @__PURE__ */ import_react38.default.createElement(WarningIcon, null))
11299
- ),
11300
- success: (0, import_variant5.constant)(
11301
- /* @__PURE__ */ import_react38.default.createElement(Text2, { skin: "success" }, /* @__PURE__ */ import_react38.default.createElement(SuccessIcon, null))
11302
- ),
11303
- insight: (0, import_variant5.constant)(/* @__PURE__ */ import_react38.default.createElement(InsightIcon, null))
11304
- });
11305
- return /* @__PURE__ */ import_react38.default.createElement(Text2, null, icon, " ", children);
11306
- };
11307
-
11308
- // ../cli-ui-kit/src/components/Badge.tsx
11309
- init_esm_shims();
11310
- var import_react39 = __toESM(require_react(), 1);
11311
- var skins2 = {
11312
- success: { backgroundColor: "green" }
11313
- };
11314
- var Badge = ({ children, skin }) => {
11315
- return /* @__PURE__ */ import_react39.default.createElement(Text, { ...skins2[skin] }, " ", children, " ");
11316
- };
11317
-
11318
- // ../cli-ui-kit/src/components/Key.tsx
11319
- init_esm_shims();
11320
- var import_react40 = __toESM(require_react(), 1);
11321
- var Key = ({ value: value2, skin }) => {
11322
- if (skin === "secondary") {
11323
- return /* @__PURE__ */ import_react40.default.createElement(Text, null, /* @__PURE__ */ import_react40.default.createElement(Text, { inverse: true }, " ", value2, " "), /* @__PURE__ */ import_react40.default.createElement(Text, null, "\u2591"));
11324
- }
11325
- return /* @__PURE__ */ import_react40.default.createElement(Text, null, /* @__PURE__ */ import_react40.default.createElement(Text, { backgroundColor: "blueBright" }, " ", value2, " "), /* @__PURE__ */ import_react40.default.createElement(Text, { color: "blueBright" }, "\u2591"));
11326
- };
11327
-
11328
- // ../cli-ui-kit/src/components/Link.tsx
11329
- init_esm_shims();
11330
- var import_react41 = __toESM(require_react(), 1);
11331
-
11332
- // ../../node_modules/terminal-link/index.js
10972
+ // ../../node_modules/terminal-link/index.js
11333
10973
  init_esm_shims();
11334
10974
 
11335
10975
  // ../../node_modules/terminal-link/node_modules/ansi-escapes/index.js
@@ -11474,31 +11114,31 @@ terminalLink.stderr.isSupported = import_supports_hyperlinks.default.stderr;
11474
11114
  var Link = ({ skin, children, url }) => {
11475
11115
  if (children) {
11476
11116
  if (terminalLink.isSupported) {
11477
- return /* @__PURE__ */ import_react41.default.createElement(
11117
+ return /* @__PURE__ */ import_react31.default.createElement(
11478
11118
  Transform,
11479
11119
  {
11480
11120
  transform: (childrenAsString) => terminalLink(childrenAsString, url, { fallback: false })
11481
11121
  },
11482
- /* @__PURE__ */ import_react41.default.createElement(Text2, { skin }, children)
11122
+ /* @__PURE__ */ import_react31.default.createElement(Text2, { skin }, children)
11483
11123
  );
11484
11124
  }
11485
- return /* @__PURE__ */ import_react41.default.createElement(Text2, null, /* @__PURE__ */ import_react41.default.createElement(Text2, { skin }, children), " (", url, ")");
11125
+ return /* @__PURE__ */ import_react31.default.createElement(Text2, null, /* @__PURE__ */ import_react31.default.createElement(Text2, { skin }, children), " (", url, ")");
11486
11126
  }
11487
- return /* @__PURE__ */ import_react41.default.createElement(Text2, { skin: "info" }, url);
11127
+ return /* @__PURE__ */ import_react31.default.createElement(Text2, { skin: "info" }, url);
11488
11128
  };
11489
11129
 
11490
11130
  // ../cli-ui-kit/src/components/Spinner.tsx
11491
11131
  init_esm_shims();
11492
- var import_react43 = __toESM(require_react(), 1);
11132
+ var import_react33 = __toESM(require_react(), 1);
11493
11133
 
11494
11134
  // ../../node_modules/ink-spinner/build/index.js
11495
11135
  init_esm_shims();
11496
- var import_react42 = __toESM(require_react(), 1);
11136
+ var import_react32 = __toESM(require_react(), 1);
11497
11137
  var import_cli_spinners = __toESM(require_cli_spinners(), 1);
11498
11138
  function Spinner({ type = "dots" }) {
11499
- const [frame, setFrame] = (0, import_react42.useState)(0);
11139
+ const [frame, setFrame] = (0, import_react32.useState)(0);
11500
11140
  const spinner = import_cli_spinners.default[type];
11501
- (0, import_react42.useEffect)(() => {
11141
+ (0, import_react32.useEffect)(() => {
11502
11142
  const timer = setInterval(() => {
11503
11143
  setFrame((previousFrame) => {
11504
11144
  const isLastFrame = previousFrame === spinner.frames.length - 1;
@@ -11509,52 +11149,26 @@ function Spinner({ type = "dots" }) {
11509
11149
  clearInterval(timer);
11510
11150
  };
11511
11151
  }, [spinner]);
11512
- return import_react42.default.createElement(Text, null, spinner.frames[frame]);
11152
+ return import_react32.default.createElement(Text, null, spinner.frames[frame]);
11513
11153
  }
11514
- var build_default2 = Spinner;
11154
+ var build_default = Spinner;
11515
11155
 
11516
11156
  // ../cli-ui-kit/src/components/Spinner.tsx
11517
11157
  var Spinner2 = ({ text }) => {
11518
- const spinnerNode = /* @__PURE__ */ import_react43.default.createElement(Text2, { skin: "info" }, /* @__PURE__ */ import_react43.default.createElement(build_default2, { type: "dots" }));
11158
+ const spinnerNode = /* @__PURE__ */ import_react33.default.createElement(Text2, { skin: "info" }, /* @__PURE__ */ import_react33.default.createElement(build_default, { type: "dots" }));
11519
11159
  if (text) {
11520
- return /* @__PURE__ */ import_react43.default.createElement(Box_default, { gap: 1 }, spinnerNode, typeof text === "string" ? /* @__PURE__ */ import_react43.default.createElement(Text2, null, text) : text);
11160
+ return /* @__PURE__ */ import_react33.default.createElement(Box_default, { gap: 1 }, spinnerNode, typeof text === "string" ? /* @__PURE__ */ import_react33.default.createElement(Text2, null, text) : text);
11521
11161
  }
11522
11162
  return spinnerNode;
11523
11163
  };
11524
11164
 
11525
- // ../cli-ui-kit/src/components/ErrorDetails.tsx
11526
- init_esm_shims();
11527
- var import_react44 = __toESM(require_react(), 1);
11528
- var ErrorDetails = ({
11529
- message,
11530
- explanation,
11531
- hint
11532
- }) => /* @__PURE__ */ import_react44.default.createElement(Box_default, { flexDirection: "column" }, /* @__PURE__ */ import_react44.default.createElement(Alert, { type: "error" }, message), explanation && /* @__PURE__ */ import_react44.default.createElement(Alert, { type: "warning" }, explanation), hint && /* @__PURE__ */ import_react44.default.createElement(Box_default, { paddingTop: 1 }, /* @__PURE__ */ import_react44.default.createElement(Alert, { type: "insight" }, hint)));
11533
-
11534
- // ../cli-ui-kit/src/components/Notification.tsx
11535
- init_esm_shims();
11536
- var import_react45 = __toESM(require_react(), 1);
11537
- var Notification = ({ children }) => {
11538
- return /* @__PURE__ */ import_react45.default.createElement(Box_default, null, /* @__PURE__ */ import_react45.default.createElement(
11539
- Box_default,
11540
- {
11541
- padding: 1,
11542
- alignItems: "center",
11543
- flexDirection: "column",
11544
- borderColor: "yellowBright",
11545
- borderStyle: "round"
11546
- },
11547
- children
11548
- ));
11549
- };
11550
-
11551
11165
  // ../cli-ui-kit/src/hooks/use-async.ts
11552
11166
  init_esm_shims();
11553
- var import_variant6 = __toESM(require_lib(), 1);
11167
+ var import_variant2 = __toESM(require_lib(), 1);
11554
11168
 
11555
11169
  // ../../node_modules/react-async-hook/dist/react-async-hook.esm.js
11556
11170
  init_esm_shims();
11557
- var import_react46 = __toESM(require_react());
11171
+ var import_react34 = __toESM(require_react());
11558
11172
  function _extends() {
11559
11173
  _extends = Object.assign || function(target) {
11560
11174
  for (var i2 = 1; i2 < arguments.length; i2++) {
@@ -11571,13 +11185,13 @@ function _extends() {
11571
11185
  }
11572
11186
  var _iteratorSymbol = typeof Symbol !== "undefined" ? Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator")) : "@@iterator";
11573
11187
  var _asyncIteratorSymbol = typeof Symbol !== "undefined" ? Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator")) : "@@asyncIterator";
11574
- var useIsomorphicLayoutEffect = typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined" ? import_react46.useLayoutEffect : import_react46.useEffect;
11188
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined" ? import_react34.useLayoutEffect : import_react34.useEffect;
11575
11189
  var useGetter = function useGetter2(t3) {
11576
- var ref = (0, import_react46.useRef)(t3);
11190
+ var ref = (0, import_react34.useRef)(t3);
11577
11191
  useIsomorphicLayoutEffect(function() {
11578
11192
  ref.current = t3;
11579
11193
  });
11580
- return (0, import_react46.useCallback)(function() {
11194
+ return (0, import_react34.useCallback)(function() {
11581
11195
  return ref.current;
11582
11196
  }, [ref]);
11583
11197
  };
@@ -11630,22 +11244,22 @@ var normalizeOptions = function normalizeOptions2(options) {
11630
11244
  return _extends({}, DefaultOptions, {}, options);
11631
11245
  };
11632
11246
  var useAsyncState = function useAsyncState2(options) {
11633
- var _useState = (0, import_react46.useState)(function() {
11247
+ var _useState = (0, import_react34.useState)(function() {
11634
11248
  return options.initialState(options);
11635
11249
  }), value2 = _useState[0], setValue = _useState[1];
11636
- var reset = (0, import_react46.useCallback)(function() {
11250
+ var reset = (0, import_react34.useCallback)(function() {
11637
11251
  return setValue(options.initialState(options));
11638
11252
  }, [setValue, options]);
11639
- var setLoading = (0, import_react46.useCallback)(function() {
11253
+ var setLoading = (0, import_react34.useCallback)(function() {
11640
11254
  return setValue(options.setLoading(value2));
11641
11255
  }, [value2, setValue]);
11642
- var setResult = (0, import_react46.useCallback)(function(result) {
11256
+ var setResult = (0, import_react34.useCallback)(function(result) {
11643
11257
  return setValue(options.setResult(result, value2));
11644
11258
  }, [value2, setValue]);
11645
- var setError = (0, import_react46.useCallback)(function(error) {
11259
+ var setError = (0, import_react34.useCallback)(function(error) {
11646
11260
  return setValue(options.setError(error, value2));
11647
11261
  }, [value2, setValue]);
11648
- var merge = (0, import_react46.useCallback)(function(state) {
11262
+ var merge = (0, import_react34.useCallback)(function(state) {
11649
11263
  return setValue(_extends({}, value2, {}, state));
11650
11264
  }, [value2, setValue]);
11651
11265
  return {
@@ -11659,8 +11273,8 @@ var useAsyncState = function useAsyncState2(options) {
11659
11273
  };
11660
11274
  };
11661
11275
  var useIsMounted = function useIsMounted2() {
11662
- var ref = (0, import_react46.useRef)(false);
11663
- (0, import_react46.useEffect)(function() {
11276
+ var ref = (0, import_react34.useRef)(false);
11277
+ (0, import_react34.useEffect)(function() {
11664
11278
  ref.current = true;
11665
11279
  return function() {
11666
11280
  ref.current = false;
@@ -11671,7 +11285,7 @@ var useIsMounted = function useIsMounted2() {
11671
11285
  };
11672
11286
  };
11673
11287
  var useCurrentPromise = function useCurrentPromise2() {
11674
- var ref = (0, import_react46.useRef)(null);
11288
+ var ref = (0, import_react34.useRef)(null);
11675
11289
  return {
11676
11290
  set: function set(promise) {
11677
11291
  return ref.current = promise;
@@ -11687,7 +11301,7 @@ var useCurrentPromise = function useCurrentPromise2() {
11687
11301
  var useAsyncInternal = function useAsyncInternal2(asyncFunction, params, options) {
11688
11302
  !params && (params = []);
11689
11303
  var normalizedOptions = normalizeOptions(options);
11690
- var _useState2 = (0, import_react46.useState)(null), currentParams = _useState2[0], setCurrentParams = _useState2[1];
11304
+ var _useState2 = (0, import_react34.useState)(null), currentParams = _useState2[0], setCurrentParams = _useState2[1];
11691
11305
  var AsyncState = useAsyncState(normalizedOptions);
11692
11306
  var isMounted = useIsMounted();
11693
11307
  var CurrentPromise = useCurrentPromise();
@@ -11721,133 +11335,519 @@ var useAsyncInternal = function useAsyncInternal2(asyncFunction, params, options
11721
11335
  if (shouldHandlePromise(promise)) {
11722
11336
  AsyncState.setError(error);
11723
11337
  }
11724
- normalizedOptions.onError(error, {
11725
- isCurrent: function isCurrent() {
11726
- return CurrentPromise.is(promise);
11727
- }
11728
- });
11338
+ normalizedOptions.onError(error, {
11339
+ isCurrent: function isCurrent() {
11340
+ return CurrentPromise.is(promise);
11341
+ }
11342
+ });
11343
+ });
11344
+ return promise;
11345
+ };
11346
+ var getLatestExecuteAsyncOperation = useGetter(executeAsyncOperation);
11347
+ var executeAsyncOperationMemo = (0, import_react34.useCallback)(function() {
11348
+ return getLatestExecuteAsyncOperation().apply(void 0, arguments);
11349
+ }, [getLatestExecuteAsyncOperation]);
11350
+ var isMounting = !isMounted();
11351
+ (0, import_react34.useEffect)(function() {
11352
+ var execute = function execute2() {
11353
+ return getLatestExecuteAsyncOperation().apply(void 0, params);
11354
+ };
11355
+ isMounting && normalizedOptions.executeOnMount && execute();
11356
+ !isMounting && normalizedOptions.executeOnUpdate && execute();
11357
+ }, params);
11358
+ return _extends({}, AsyncState.value, {
11359
+ set: AsyncState.set,
11360
+ merge: AsyncState.merge,
11361
+ reset: AsyncState.reset,
11362
+ execute: executeAsyncOperationMemo,
11363
+ currentPromise: CurrentPromise.get(),
11364
+ currentParams
11365
+ });
11366
+ };
11367
+ function useAsync(asyncFunction, params, options) {
11368
+ return useAsyncInternal(asyncFunction, params, options);
11369
+ }
11370
+ var useAsyncCallback = function useAsyncCallback2(asyncFunction, options) {
11371
+ return useAsyncInternal(
11372
+ asyncFunction,
11373
+ // Hacky but in such case we don't need the params,
11374
+ // because async function is only executed manually
11375
+ [],
11376
+ _extends({}, options, {
11377
+ executeOnMount: false,
11378
+ executeOnUpdate: false
11379
+ })
11380
+ );
11381
+ };
11382
+
11383
+ // ../cli-ui-kit/src/hooks/use-async.ts
11384
+ var import_react36 = __toESM(require_react(), 1);
11385
+
11386
+ // ../cli-ui-kit/src/hooks/use-exit.ts
11387
+ init_esm_shims();
11388
+ var import_react35 = __toESM(require_react(), 1);
11389
+ function useExit() {
11390
+ const { exit } = use_app_default();
11391
+ return (0, import_react35.useCallback)(
11392
+ (error) => {
11393
+ if (error instanceof Error) {
11394
+ exit(error);
11395
+ } else if (error !== void 0) {
11396
+ exit(new Error(JSON.stringify(error)));
11397
+ } else {
11398
+ exit();
11399
+ }
11400
+ },
11401
+ [exit]
11402
+ );
11403
+ }
11404
+
11405
+ // ../cli-ui-kit/src/hooks/use-async.ts
11406
+ var AsyncStatus = (0, import_variant2.variant)(
11407
+ (0, import_variant2.onTerms)(({ T: _T }) => ({
11408
+ Error: (error) => ({ error }),
11409
+ Success: (result) => ({ result }),
11410
+ Loading: () => ({})
11411
+ }))
11412
+ );
11413
+ var AsyncCallbackStatus = (0, import_variant2.variant)(
11414
+ (0, import_variant2.onTerms)(({ T: _T }) => ({
11415
+ Error: (error) => ({ error }),
11416
+ Success: (result) => ({ result }),
11417
+ Loading: () => ({}),
11418
+ NotRequested: () => ({})
11419
+ }))
11420
+ );
11421
+ var useAsync2 = (fn, args, options) => {
11422
+ const exit = useExit();
11423
+ const abortController = (0, import_react36.useMemo)(() => new AbortController(), []);
11424
+ const { result, error, status, merge } = useAsync(
11425
+ fn.bind(null, { signal: abortController.signal }),
11426
+ args,
11427
+ {
11428
+ onError: (e2) => exit(e2),
11429
+ ...options ?? {}
11430
+ }
11431
+ );
11432
+ (0, import_react36.useEffect)(() => {
11433
+ return () => {
11434
+ abortController.abort();
11435
+ };
11436
+ }, [abortController]);
11437
+ return (0, import_variant2.match)(status, {
11438
+ error: () => ({
11439
+ status: AsyncStatus.Error(
11440
+ error ?? new Error("Unexpected error state in useAsync")
11441
+ ),
11442
+ merge
11443
+ }),
11444
+ "not-requested": () => ({ status: AsyncStatus.Loading(), merge }),
11445
+ loading: () => ({ status: AsyncStatus.Loading(), merge }),
11446
+ // result could be undefined, if async function do not return async. We check all other states and here we just typecast to type from async function.
11447
+ success: () => ({ status: AsyncStatus.Success(result), merge })
11448
+ });
11449
+ };
11450
+ var useAsyncCallback3 = (fn, options) => {
11451
+ const exit = useExit();
11452
+ const abortController = (0, import_react36.useMemo)(() => new AbortController(), []);
11453
+ const { result, error, status, merge, execute } = useAsyncCallback(
11454
+ fn.bind(null, { signal: abortController.signal }),
11455
+ {
11456
+ onError: (e2) => exit(e2),
11457
+ ...options ?? {}
11458
+ }
11459
+ );
11460
+ (0, import_react36.useEffect)(() => {
11461
+ return () => {
11462
+ abortController.abort();
11463
+ };
11464
+ }, [abortController]);
11465
+ return (0, import_variant2.match)(status, {
11466
+ error: () => ({
11467
+ status: AsyncCallbackStatus.Error(
11468
+ error ?? new Error("Unexpected error state in useAsyncCallback")
11469
+ ),
11470
+ merge,
11471
+ execute
11472
+ }),
11473
+ "not-requested": () => ({
11474
+ status: AsyncCallbackStatus.NotRequested(),
11475
+ merge,
11476
+ execute
11477
+ }),
11478
+ loading: () => ({ status: AsyncCallbackStatus.Loading(), merge, execute }),
11479
+ success: () => ({
11480
+ // result could be undefined, if async function do not return async. We check all other states and here we just typecast to type from async function.
11481
+ status: AsyncCallbackStatus.Success(result),
11482
+ merge,
11483
+ execute
11484
+ })
11485
+ });
11486
+ };
11487
+
11488
+ // ../cli-ui-kit/src/renderer.tsx
11489
+ init_esm_shims();
11490
+ var import_react37 = __toESM(require_react(), 1);
11491
+ var ErrorBoundary = class extends import_react37.Component {
11492
+ state = { hasError: false };
11493
+ static getDerivedStateFromError(_error) {
11494
+ return { hasError: true };
11495
+ }
11496
+ componentDidCatch(e2) {
11497
+ const error = e2 instanceof Error ? e2 : new Error(JSON.stringify(e2));
11498
+ if (error.message.includes(
11499
+ "Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default"
11500
+ )) {
11501
+ this.props.onExit(
11502
+ new CliError({
11503
+ code: CliErrorCode.NonInteractiveTerminal(),
11504
+ cause: error
11505
+ })
11506
+ );
11507
+ } else {
11508
+ this.props.onExit(error);
11509
+ }
11510
+ }
11511
+ render() {
11512
+ return this.state.hasError ? null : this.props.children;
11513
+ }
11514
+ };
11515
+ var ErrorBoundaryWrapper = ({ children }) => {
11516
+ const exit = useExit();
11517
+ return /* @__PURE__ */ import_react37.default.createElement(ErrorBoundary, { onExit: exit }, children);
11518
+ };
11519
+ var FrameWrapper = ({
11520
+ children,
11521
+ wrap
11522
+ }) => {
11523
+ return /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, wrap && /* @__PURE__ */ import_react37.default.createElement(Text, null, "----RENDER-FRAME-START----"), children, wrap && /* @__PURE__ */ import_react37.default.createElement(Text, null, "----RENDER-FRAME-END----"));
11524
+ };
11525
+ async function render2(tree) {
11526
+ const debug = !!getTestOverrides().inkDebug;
11527
+ const { waitUntilExit, unmount } = render_default(
11528
+ /* @__PURE__ */ import_react37.default.createElement(FrameWrapper, { wrap: debug }, /* @__PURE__ */ import_react37.default.createElement(ErrorBoundaryWrapper, null, tree)),
11529
+ { exitOnCtrlC: true, debug }
11530
+ );
11531
+ process.once("beforeExit", () => {
11532
+ unmount();
11533
+ });
11534
+ process.once("SIGINT", () => {
11535
+ unmount();
11536
+ });
11537
+ await waitUntilExit();
11538
+ }
11539
+ function renderSyncInternal(tree, renderOptions) {
11540
+ const debug = !!getTestOverrides().inkDebug;
11541
+ const { unmount } = render_default(
11542
+ /* @__PURE__ */ import_react37.default.createElement(FrameWrapper, { wrap: debug }, tree),
11543
+ {
11544
+ debug,
11545
+ ...renderOptions
11546
+ }
11547
+ );
11548
+ unmount();
11549
+ }
11550
+ function renderSync(tree) {
11551
+ renderSyncInternal(tree);
11552
+ }
11553
+ function renderErrorSync(tree) {
11554
+ renderSyncInternal(tree, {
11555
+ stdout: process.stderr
11556
+ });
11557
+ }
11558
+
11559
+ // ../cli-ui-kit/src/index.ts
11560
+ init_esm_shims();
11561
+
11562
+ // ../cli-ui-kit/src/components/ConfirmInput/index.ts
11563
+ init_esm_shims();
11564
+
11565
+ // ../cli-ui-kit/src/components/ConfirmInput/ConfirmInput.tsx
11566
+ init_esm_shims();
11567
+ var import_react42 = __toESM(require_react(), 1);
11568
+ var import_variant5 = __toESM(require_lib(), 1);
11569
+
11570
+ // ../cli-ui-kit/src/input-state.ts
11571
+ init_esm_shims();
11572
+ var import_variant3 = __toESM(require_lib(), 1);
11573
+ var InputState = (0, import_variant3.variant)(
11574
+ (0, import_variant3.onTerms)(({ T: _T }) => ({
11575
+ NotSubmitted: (value2) => ({ value: value2 }),
11576
+ Submitted: (value2) => ({ value: value2 })
11577
+ }))
11578
+ );
11579
+
11580
+ // ../cli-ui-kit/src/components/InputLabel.tsx
11581
+ init_esm_shims();
11582
+ var import_react38 = __toESM(require_react(), 1);
11583
+ var InputLabel = ({ children, icon }) => {
11584
+ return /* @__PURE__ */ import_react38.default.createElement(Text2, null, icon ?? /* @__PURE__ */ import_react38.default.createElement(Text2, { skin: "question", bold: true }, /* @__PURE__ */ import_react38.default.createElement(QuestionMarkIcon, null)), " ", /* @__PURE__ */ import_react38.default.createElement(Text2, { skin: "question", bold: true }, children));
11585
+ };
11586
+
11587
+ // ../cli-ui-kit/src/components/ConfirmInput/Placeholder.tsx
11588
+ init_esm_shims();
11589
+ var import_react39 = __toESM(require_react(), 1);
11590
+ var import_variant4 = __toESM(require_lib(), 1);
11591
+ var Placeholder = ({ inputState }) => {
11592
+ return (0, import_variant4.match)(inputState, {
11593
+ NotSubmitted: ({ value: value2 }) => /* @__PURE__ */ import_react39.default.createElement(Text2, { skin: "secondary" }, "(", value2 ? "Y/n" : "y/N", ")"),
11594
+ Submitted: ({ value: value2 }) => /* @__PURE__ */ import_react39.default.createElement(Text2, null, value2 ? "Yes" : "No")
11595
+ });
11596
+ };
11597
+
11598
+ // ../cli-ui-kit/src/components/ConfirmInput/Input.tsx
11599
+ init_esm_shims();
11600
+ var import_react41 = __toESM(require_react(), 1);
11601
+
11602
+ // ../../node_modules/ink-text-input/build/index.js
11603
+ init_esm_shims();
11604
+ var import_react40 = __toESM(require_react(), 1);
11605
+ function TextInput({ value: originalValue, placeholder = "", focus = true, mask, highlightPastedText = false, showCursor = true, onChange, onSubmit }) {
11606
+ const [state, setState] = (0, import_react40.useState)({
11607
+ cursorOffset: (originalValue || "").length,
11608
+ cursorWidth: 0
11609
+ });
11610
+ const { cursorOffset, cursorWidth } = state;
11611
+ (0, import_react40.useEffect)(() => {
11612
+ setState((previousState) => {
11613
+ if (!focus || !showCursor) {
11614
+ return previousState;
11615
+ }
11616
+ const newValue = originalValue || "";
11617
+ if (previousState.cursorOffset > newValue.length - 1) {
11618
+ return {
11619
+ cursorOffset: newValue.length,
11620
+ cursorWidth: 0
11621
+ };
11622
+ }
11623
+ return previousState;
11624
+ });
11625
+ }, [originalValue, focus, showCursor]);
11626
+ const cursorActualWidth = highlightPastedText ? cursorWidth : 0;
11627
+ const value2 = mask ? mask.repeat(originalValue.length) : originalValue;
11628
+ let renderedValue = value2;
11629
+ let renderedPlaceholder = placeholder ? source_default.grey(placeholder) : void 0;
11630
+ if (showCursor && focus) {
11631
+ renderedPlaceholder = placeholder.length > 0 ? source_default.inverse(placeholder[0]) + source_default.grey(placeholder.slice(1)) : source_default.inverse(" ");
11632
+ renderedValue = value2.length > 0 ? "" : source_default.inverse(" ");
11633
+ let i2 = 0;
11634
+ for (const char of value2) {
11635
+ renderedValue += i2 >= cursorOffset - cursorActualWidth && i2 <= cursorOffset ? source_default.inverse(char) : char;
11636
+ i2++;
11637
+ }
11638
+ if (value2.length > 0 && cursorOffset === value2.length) {
11639
+ renderedValue += source_default.inverse(" ");
11640
+ }
11641
+ }
11642
+ use_input_default((input, key) => {
11643
+ if (key.upArrow || key.downArrow || key.ctrl && input === "c" || key.tab || key.shift && key.tab) {
11644
+ return;
11645
+ }
11646
+ if (key.return) {
11647
+ if (onSubmit) {
11648
+ onSubmit(originalValue);
11649
+ }
11650
+ return;
11651
+ }
11652
+ let nextCursorOffset = cursorOffset;
11653
+ let nextValue = originalValue;
11654
+ let nextCursorWidth = 0;
11655
+ if (key.leftArrow) {
11656
+ if (showCursor) {
11657
+ nextCursorOffset--;
11658
+ }
11659
+ } else if (key.rightArrow) {
11660
+ if (showCursor) {
11661
+ nextCursorOffset++;
11662
+ }
11663
+ } else if (key.backspace || key.delete) {
11664
+ if (cursorOffset > 0) {
11665
+ nextValue = originalValue.slice(0, cursorOffset - 1) + originalValue.slice(cursorOffset, originalValue.length);
11666
+ nextCursorOffset--;
11667
+ }
11668
+ } else {
11669
+ nextValue = originalValue.slice(0, cursorOffset) + input + originalValue.slice(cursorOffset, originalValue.length);
11670
+ nextCursorOffset += input.length;
11671
+ if (input.length > 1) {
11672
+ nextCursorWidth = input.length;
11673
+ }
11674
+ }
11675
+ if (cursorOffset < 0) {
11676
+ nextCursorOffset = 0;
11677
+ }
11678
+ if (cursorOffset > originalValue.length) {
11679
+ nextCursorOffset = originalValue.length;
11680
+ }
11681
+ setState({
11682
+ cursorOffset: nextCursorOffset,
11683
+ cursorWidth: nextCursorWidth
11729
11684
  });
11730
- return promise;
11731
- };
11732
- var getLatestExecuteAsyncOperation = useGetter(executeAsyncOperation);
11733
- var executeAsyncOperationMemo = (0, import_react46.useCallback)(function() {
11734
- return getLatestExecuteAsyncOperation().apply(void 0, arguments);
11735
- }, [getLatestExecuteAsyncOperation]);
11736
- var isMounting = !isMounted();
11737
- (0, import_react46.useEffect)(function() {
11738
- var execute = function execute2() {
11739
- return getLatestExecuteAsyncOperation().apply(void 0, params);
11740
- };
11741
- isMounting && normalizedOptions.executeOnMount && execute();
11742
- !isMounting && normalizedOptions.executeOnUpdate && execute();
11743
- }, params);
11744
- return _extends({}, AsyncState.value, {
11745
- set: AsyncState.set,
11746
- merge: AsyncState.merge,
11747
- reset: AsyncState.reset,
11748
- execute: executeAsyncOperationMemo,
11749
- currentPromise: CurrentPromise.get(),
11750
- currentParams
11751
- });
11752
- };
11753
- function useAsync(asyncFunction, params, options) {
11754
- return useAsyncInternal(asyncFunction, params, options);
11685
+ if (nextValue !== originalValue) {
11686
+ onChange(nextValue);
11687
+ }
11688
+ }, { isActive: focus });
11689
+ return import_react40.default.createElement(Text, null, placeholder ? value2.length > 0 ? renderedValue : renderedPlaceholder : renderedValue);
11755
11690
  }
11756
- var useAsyncCallback = function useAsyncCallback2(asyncFunction, options) {
11757
- return useAsyncInternal(
11758
- asyncFunction,
11759
- // Hacky but in such case we don't need the params,
11760
- // because async function is only executed manually
11761
- [],
11762
- _extends({}, options, {
11763
- executeOnMount: false,
11764
- executeOnUpdate: false
11765
- })
11691
+ var build_default2 = TextInput;
11692
+
11693
+ // ../cli-ui-kit/src/components/ConfirmInput/Input.tsx
11694
+ var Input = ({ initialValue, onSubmit }) => {
11695
+ const handleChange = (0, import_react41.useCallback)(
11696
+ (rawKey) => {
11697
+ const key = rawKey.toLowerCase();
11698
+ if (["y", "n"].includes(key)) {
11699
+ onSubmit(key === "y");
11700
+ }
11701
+ },
11702
+ [onSubmit]
11703
+ );
11704
+ return /* @__PURE__ */ import_react41.default.createElement(
11705
+ build_default2,
11706
+ {
11707
+ value: "",
11708
+ showCursor: false,
11709
+ onChange: handleChange,
11710
+ onSubmit: () => onSubmit(initialValue)
11711
+ }
11766
11712
  );
11767
11713
  };
11768
11714
 
11769
- // ../cli-ui-kit/src/hooks/use-async.ts
11770
- var import_react47 = __toESM(require_react(), 1);
11771
- var AsyncStatus = (0, import_variant6.variant)(
11772
- (0, import_variant6.onTerms)(({ T: _T }) => ({
11773
- Error: (error) => ({ error }),
11774
- Success: (result) => ({ result }),
11775
- Loading: () => ({})
11776
- }))
11777
- );
11778
- var AsyncCallbackStatus = (0, import_variant6.variant)(
11779
- (0, import_variant6.onTerms)(({ T: _T }) => ({
11780
- Error: (error) => ({ error }),
11781
- Success: (result) => ({ result }),
11782
- Loading: () => ({}),
11783
- NotRequested: () => ({})
11784
- }))
11785
- );
11786
- var useAsync2 = (fn, args, options) => {
11787
- const exit = useExit();
11788
- const abortController = (0, import_react47.useMemo)(() => new AbortController(), []);
11789
- const { result, error, status, merge } = useAsync(
11790
- fn.bind(null, { signal: abortController.signal }),
11791
- args,
11715
+ // ../cli-ui-kit/src/components/ConfirmInput/ConfirmInput.tsx
11716
+ var ConfirmInput = ({
11717
+ label,
11718
+ info,
11719
+ initialValue = true,
11720
+ onSubmit
11721
+ }) => {
11722
+ const [inputState, setInputState] = (0, import_react42.useState)(
11723
+ () => InputState.NotSubmitted(initialValue)
11724
+ );
11725
+ const handleSubmit = (0, import_react42.useCallback)(
11726
+ (value2) => {
11727
+ setInputState(InputState.Submitted(value2));
11728
+ onSubmit(value2);
11729
+ },
11730
+ [onSubmit]
11731
+ );
11732
+ return /* @__PURE__ */ import_react42.default.createElement(Text2, null, /* @__PURE__ */ import_react42.default.createElement(InputLabel, null, label), " ", info && (0, import_variant5.isType)(inputState, InputState.NotSubmitted) && /* @__PURE__ */ import_react42.default.createElement(Text2, { skin: "secondary" }, info, " "), /* @__PURE__ */ import_react42.default.createElement(Placeholder, { inputState }), (0, import_variant5.isType)(inputState, InputState.NotSubmitted) && /* @__PURE__ */ import_react42.default.createElement(Input, { initialValue, onSubmit: handleSubmit }));
11733
+ };
11734
+
11735
+ // ../cli-ui-kit/src/components/TextInput/Input.tsx
11736
+ init_esm_shims();
11737
+ var import_react43 = __toESM(require_react(), 1);
11738
+ var Input2 = ({
11739
+ onSubmit,
11740
+ onChange,
11741
+ placeholder,
11742
+ showCursor
11743
+ }) => {
11744
+ const [currentValue, setCurrentValue] = (0, import_react43.useState)("");
11745
+ return /* @__PURE__ */ import_react43.default.createElement(
11746
+ build_default2,
11792
11747
  {
11793
- onError: (e2) => exit(e2),
11794
- ...options ?? {}
11748
+ showCursor,
11749
+ placeholder,
11750
+ value: currentValue,
11751
+ onChange: (value2) => {
11752
+ setCurrentValue(value2);
11753
+ onChange?.(value2);
11754
+ },
11755
+ onSubmit: () => {
11756
+ if (!currentValue && placeholder) {
11757
+ onSubmit?.(placeholder);
11758
+ } else {
11759
+ onSubmit?.(currentValue);
11760
+ }
11761
+ }
11795
11762
  }
11796
11763
  );
11797
- (0, import_react47.useEffect)(() => {
11798
- return () => {
11799
- abortController.abort();
11800
- };
11801
- }, [abortController]);
11802
- return (0, import_variant6.match)(status, {
11803
- error: () => ({
11804
- status: AsyncStatus.Error(
11805
- error ?? new Error("Unexpected error state in useAsync")
11806
- ),
11807
- merge
11808
- }),
11809
- "not-requested": () => ({ status: AsyncStatus.Loading(), merge }),
11810
- loading: () => ({ status: AsyncStatus.Loading(), merge }),
11811
- // result could be undefined, if async function do not return async. We check all other states and here we just typecast to type from async function.
11812
- success: () => ({ status: AsyncStatus.Success(result), merge })
11813
- });
11814
11764
  };
11815
- var useAsyncCallback3 = (fn, options) => {
11816
- const exit = useExit();
11817
- const abortController = (0, import_react47.useMemo)(() => new AbortController(), []);
11818
- const { result, error, status, merge, execute } = useAsyncCallback(
11819
- fn.bind(null, { signal: abortController.signal }),
11765
+
11766
+ // ../cli-ui-kit/src/components/TextInput/index.ts
11767
+ init_esm_shims();
11768
+
11769
+ // ../cli-ui-kit/src/components/TextInput/TextInput.tsx
11770
+ init_esm_shims();
11771
+ var import_react44 = __toESM(require_react(), 1);
11772
+ var import_variant6 = __toESM(require_lib(), 1);
11773
+ var TextInput2 = ({
11774
+ label,
11775
+ placeholder,
11776
+ onSubmit,
11777
+ validate = () => true,
11778
+ inCreateFlow = false
11779
+ }) => {
11780
+ const [inputState, setInputState] = (0, import_react44.useState)(
11781
+ () => InputState.NotSubmitted(placeholder)
11782
+ );
11783
+ const [isDirty, setIsDirty] = (0, import_react44.useState)(false);
11784
+ const [validationError, setValidationError] = (0, import_react44.useState)();
11785
+ const handleSubmit = (0, import_react44.useCallback)(
11786
+ async (value2) => {
11787
+ setIsDirty(false);
11788
+ const validationResult = await validate(value2);
11789
+ if (validationResult !== true) {
11790
+ setValidationError(validationResult);
11791
+ } else {
11792
+ setValidationError(void 0);
11793
+ setInputState(InputState.Submitted(value2));
11794
+ onSubmit(value2);
11795
+ }
11796
+ },
11797
+ [onSubmit, validate]
11798
+ );
11799
+ const afterValidationError = Boolean(validationError && !isDirty);
11800
+ return /* @__PURE__ */ import_react44.default.createElement(import_react44.default.Fragment, null, /* @__PURE__ */ import_react44.default.createElement(Box_default, { marginBottom: 1, marginLeft: inCreateFlow ? -2 : 0 }, /* @__PURE__ */ import_react44.default.createElement(Text2, null, /* @__PURE__ */ import_react44.default.createElement(
11801
+ InputLabel,
11820
11802
  {
11821
- onError: (e2) => exit(e2),
11822
- ...options ?? {}
11803
+ icon: /* @__PURE__ */ import_react44.default.createElement(Text2, { skin: "question" }, /* @__PURE__ */ import_react44.default.createElement(PointerIcon, { appearance: "triangle" }))
11804
+ },
11805
+ label
11806
+ ), (0, import_variant6.isType)(inputState, InputState.NotSubmitted) && /* @__PURE__ */ import_react44.default.createElement(import_react44.default.Fragment, null, " ", /* @__PURE__ */ import_react44.default.createElement(Text2, { skin: afterValidationError ? "error" : "standard" }, /* @__PURE__ */ import_react44.default.createElement(
11807
+ Input2,
11808
+ {
11809
+ placeholder: inputState.value,
11810
+ onSubmit: handleSubmit,
11811
+ onChange: () => setIsDirty(true),
11812
+ showCursor: afterValidationError
11823
11813
  }
11824
- );
11825
- (0, import_react47.useEffect)(() => {
11826
- return () => {
11827
- abortController.abort();
11828
- };
11829
- }, [abortController]);
11830
- return (0, import_variant6.match)(status, {
11831
- error: () => ({
11832
- status: AsyncCallbackStatus.Error(
11833
- error ?? new Error("Unexpected error state in useAsyncCallback")
11834
- ),
11835
- merge,
11836
- execute
11837
- }),
11838
- "not-requested": () => ({
11839
- status: AsyncCallbackStatus.NotRequested(),
11840
- merge,
11841
- execute
11842
- }),
11843
- loading: () => ({ status: AsyncCallbackStatus.Loading(), merge, execute }),
11844
- success: () => ({
11845
- // result could be undefined, if async function do not return async. We check all other states and here we just typecast to type from async function.
11846
- status: AsyncCallbackStatus.Success(result),
11847
- merge,
11848
- execute
11849
- })
11850
- });
11814
+ ))))), (0, import_variant6.isType)(inputState, InputState.Submitted) && /* @__PURE__ */ import_react44.default.createElement(Box_default, { marginBottom: 1 }, /* @__PURE__ */ import_react44.default.createElement(Text2, { skin: "secondary" }, /* @__PURE__ */ import_react44.default.createElement(SuccessIcon, null), " ", inputState.value)), validationError && /* @__PURE__ */ import_react44.default.createElement(Box_default, { columnGap: 1 }, /* @__PURE__ */ import_react44.default.createElement(Text2, { skin: "error" }, /* @__PURE__ */ import_react44.default.createElement(PointerIcon, { appearance: "exclamation" })), /* @__PURE__ */ import_react44.default.createElement(Text2, { skin: "error" }, validationError)));
11815
+ };
11816
+
11817
+ // ../cli-ui-kit/src/components/Key.tsx
11818
+ init_esm_shims();
11819
+ var import_react45 = __toESM(require_react(), 1);
11820
+ var Key = ({ value: value2, skin }) => {
11821
+ if (skin === "secondary") {
11822
+ return /* @__PURE__ */ import_react45.default.createElement(Text, null, /* @__PURE__ */ import_react45.default.createElement(Text, { inverse: true }, " ", value2, " "), /* @__PURE__ */ import_react45.default.createElement(Text, null, "\u2591"));
11823
+ }
11824
+ return /* @__PURE__ */ import_react45.default.createElement(Text, null, /* @__PURE__ */ import_react45.default.createElement(Text, { backgroundColor: "blueBright" }, " ", value2, " "), /* @__PURE__ */ import_react45.default.createElement(Text, { color: "blueBright" }, "\u2591"));
11825
+ };
11826
+
11827
+ // ../cli-ui-kit/src/components/ErrorDetails.tsx
11828
+ init_esm_shims();
11829
+ var import_react46 = __toESM(require_react(), 1);
11830
+ var ErrorDetails = ({
11831
+ message,
11832
+ explanation,
11833
+ hint
11834
+ }) => /* @__PURE__ */ import_react46.default.createElement(Box_default, { flexDirection: "column" }, /* @__PURE__ */ import_react46.default.createElement(Alert, { type: "error" }, message), explanation && /* @__PURE__ */ import_react46.default.createElement(Alert, { type: "warning" }, explanation), hint && /* @__PURE__ */ import_react46.default.createElement(Box_default, { paddingTop: 1 }, /* @__PURE__ */ import_react46.default.createElement(Alert, { type: "insight" }, hint)));
11835
+
11836
+ // ../cli-ui-kit/src/components/Notification.tsx
11837
+ init_esm_shims();
11838
+ var import_react47 = __toESM(require_react(), 1);
11839
+ var Notification = ({ children }) => {
11840
+ return /* @__PURE__ */ import_react47.default.createElement(Box_default, null, /* @__PURE__ */ import_react47.default.createElement(
11841
+ Box_default,
11842
+ {
11843
+ padding: 1,
11844
+ alignItems: "center",
11845
+ flexDirection: "column",
11846
+ borderColor: "yellowBright",
11847
+ borderStyle: "round"
11848
+ },
11849
+ children
11850
+ ));
11851
11851
  };
11852
11852
 
11853
11853
  // ../../node_modules/react-i18next/dist/es/Trans.js
@@ -15483,6 +15483,9 @@ function _isPatternSyntax(c2) {
15483
15483
  return c2 >= 33 && c2 <= 35 || c2 === 36 || c2 >= 37 && c2 <= 39 || c2 === 40 || c2 === 41 || c2 === 42 || c2 === 43 || c2 === 44 || c2 === 45 || c2 >= 46 && c2 <= 47 || c2 >= 58 && c2 <= 59 || c2 >= 60 && c2 <= 62 || c2 >= 63 && c2 <= 64 || c2 === 91 || c2 === 92 || c2 === 93 || c2 === 94 || c2 === 96 || c2 === 123 || c2 === 124 || c2 === 125 || c2 === 126 || c2 === 161 || c2 >= 162 && c2 <= 165 || c2 === 166 || c2 === 167 || c2 === 169 || c2 === 171 || c2 === 172 || c2 === 174 || c2 === 176 || c2 === 177 || c2 === 182 || c2 === 187 || c2 === 191 || c2 === 215 || c2 === 247 || c2 >= 8208 && c2 <= 8213 || c2 >= 8214 && c2 <= 8215 || c2 === 8216 || c2 === 8217 || c2 === 8218 || c2 >= 8219 && c2 <= 8220 || c2 === 8221 || c2 === 8222 || c2 === 8223 || c2 >= 8224 && c2 <= 8231 || c2 >= 8240 && c2 <= 8248 || c2 === 8249 || c2 === 8250 || c2 >= 8251 && c2 <= 8254 || c2 >= 8257 && c2 <= 8259 || c2 === 8260 || c2 === 8261 || c2 === 8262 || c2 >= 8263 && c2 <= 8273 || c2 === 8274 || c2 === 8275 || c2 >= 8277 && c2 <= 8286 || c2 >= 8592 && c2 <= 8596 || c2 >= 8597 && c2 <= 8601 || c2 >= 8602 && c2 <= 8603 || c2 >= 8604 && c2 <= 8607 || c2 === 8608 || c2 >= 8609 && c2 <= 8610 || c2 === 8611 || c2 >= 8612 && c2 <= 8613 || c2 === 8614 || c2 >= 8615 && c2 <= 8621 || c2 === 8622 || c2 >= 8623 && c2 <= 8653 || c2 >= 8654 && c2 <= 8655 || c2 >= 8656 && c2 <= 8657 || c2 === 8658 || c2 === 8659 || c2 === 8660 || c2 >= 8661 && c2 <= 8691 || c2 >= 8692 && c2 <= 8959 || c2 >= 8960 && c2 <= 8967 || c2 === 8968 || c2 === 8969 || c2 === 8970 || c2 === 8971 || c2 >= 8972 && c2 <= 8991 || c2 >= 8992 && c2 <= 8993 || c2 >= 8994 && c2 <= 9e3 || c2 === 9001 || c2 === 9002 || c2 >= 9003 && c2 <= 9083 || c2 === 9084 || c2 >= 9085 && c2 <= 9114 || c2 >= 9115 && c2 <= 9139 || c2 >= 9140 && c2 <= 9179 || c2 >= 9180 && c2 <= 9185 || c2 >= 9186 && c2 <= 9254 || c2 >= 9255 && c2 <= 9279 || c2 >= 9280 && c2 <= 9290 || c2 >= 9291 && c2 <= 9311 || c2 >= 9472 && c2 <= 9654 || c2 === 9655 || c2 >= 9656 && c2 <= 9664 || c2 === 9665 || c2 >= 9666 && c2 <= 9719 || c2 >= 9720 && c2 <= 9727 || c2 >= 9728 && c2 <= 9838 || c2 === 9839 || c2 >= 9840 && c2 <= 10087 || c2 === 10088 || c2 === 10089 || c2 === 10090 || c2 === 10091 || c2 === 10092 || c2 === 10093 || c2 === 10094 || c2 === 10095 || c2 === 10096 || c2 === 10097 || c2 === 10098 || c2 === 10099 || c2 === 10100 || c2 === 10101 || c2 >= 10132 && c2 <= 10175 || c2 >= 10176 && c2 <= 10180 || c2 === 10181 || c2 === 10182 || c2 >= 10183 && c2 <= 10213 || c2 === 10214 || c2 === 10215 || c2 === 10216 || c2 === 10217 || c2 === 10218 || c2 === 10219 || c2 === 10220 || c2 === 10221 || c2 === 10222 || c2 === 10223 || c2 >= 10224 && c2 <= 10239 || c2 >= 10240 && c2 <= 10495 || c2 >= 10496 && c2 <= 10626 || c2 === 10627 || c2 === 10628 || c2 === 10629 || c2 === 10630 || c2 === 10631 || c2 === 10632 || c2 === 10633 || c2 === 10634 || c2 === 10635 || c2 === 10636 || c2 === 10637 || c2 === 10638 || c2 === 10639 || c2 === 10640 || c2 === 10641 || c2 === 10642 || c2 === 10643 || c2 === 10644 || c2 === 10645 || c2 === 10646 || c2 === 10647 || c2 === 10648 || c2 >= 10649 && c2 <= 10711 || c2 === 10712 || c2 === 10713 || c2 === 10714 || c2 === 10715 || c2 >= 10716 && c2 <= 10747 || c2 === 10748 || c2 === 10749 || c2 >= 10750 && c2 <= 11007 || c2 >= 11008 && c2 <= 11055 || c2 >= 11056 && c2 <= 11076 || c2 >= 11077 && c2 <= 11078 || c2 >= 11079 && c2 <= 11084 || c2 >= 11085 && c2 <= 11123 || c2 >= 11124 && c2 <= 11125 || c2 >= 11126 && c2 <= 11157 || c2 === 11158 || c2 >= 11159 && c2 <= 11263 || c2 >= 11776 && c2 <= 11777 || c2 === 11778 || c2 === 11779 || c2 === 11780 || c2 === 11781 || c2 >= 11782 && c2 <= 11784 || c2 === 11785 || c2 === 11786 || c2 === 11787 || c2 === 11788 || c2 === 11789 || c2 >= 11790 && c2 <= 11798 || c2 === 11799 || c2 >= 11800 && c2 <= 11801 || c2 === 11802 || c2 === 11803 || c2 === 11804 || c2 === 11805 || c2 >= 11806 && c2 <= 11807 || c2 === 11808 || c2 === 11809 || c2 === 11810 || c2 === 11811 || c2 === 11812 || c2 === 11813 || c2 === 11814 || c2 === 11815 || c2 === 11816 || c2 === 11817 || c2 >= 11818 && c2 <= 11822 || c2 === 11823 || c2 >= 11824 && c2 <= 11833 || c2 >= 11834 && c2 <= 11835 || c2 >= 11836 && c2 <= 11839 || c2 === 11840 || c2 === 11841 || c2 === 11842 || c2 >= 11843 && c2 <= 11855 || c2 >= 11856 && c2 <= 11857 || c2 === 11858 || c2 >= 11859 && c2 <= 11903 || c2 >= 12289 && c2 <= 12291 || c2 === 12296 || c2 === 12297 || c2 === 12298 || c2 === 12299 || c2 === 12300 || c2 === 12301 || c2 === 12302 || c2 === 12303 || c2 === 12304 || c2 === 12305 || c2 >= 12306 && c2 <= 12307 || c2 === 12308 || c2 === 12309 || c2 === 12310 || c2 === 12311 || c2 === 12312 || c2 === 12313 || c2 === 12314 || c2 === 12315 || c2 === 12316 || c2 === 12317 || c2 >= 12318 && c2 <= 12319 || c2 === 12320 || c2 === 12336 || c2 === 64830 || c2 === 64831 || c2 >= 65093 && c2 <= 65094;
15484
15484
  }
15485
15485
 
15486
+ // ../../node_modules/@formatjs/icu-messageformat-parser/lib/manipulator.js
15487
+ init_esm_shims();
15488
+
15486
15489
  // ../../node_modules/@formatjs/icu-messageformat-parser/lib/index.js
15487
15490
  function pruneLocation(els) {
15488
15491
  els.forEach(function(el) {
@@ -18398,4 +18401,4 @@ react-reconciler/cjs/react-reconciler-constants.production.min.js:
18398
18401
  * LICENSE file in the root directory of this source tree.
18399
18402
  *)
18400
18403
  */
18401
- //# sourceMappingURL=chunk-V4DAKO7L.js.map
18404
+ //# sourceMappingURL=chunk-J573TQNU.js.map