@reliverse/relinka 1.1.10 → 1.2.1

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 (224) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +38 -42
  3. package/dist-npm/components/core/core.d.ts +2 -0
  4. package/dist-npm/components/core/core.js +2 -0
  5. package/dist-npm/{utils/constants.d.ts → components/levels/levels.d.ts} +1 -1
  6. package/dist-npm/components/{prompts/create.d.ts → modes/basic.d.ts} +3 -3
  7. package/dist-npm/components/{instance → modes}/basic.js +4 -4
  8. package/dist-npm/components/{instance → modes}/browser.d.ts +2 -2
  9. package/dist-npm/components/modes/browser.js +12 -0
  10. package/dist-npm/components/modes/shared.d.ts +5 -0
  11. package/dist-npm/components/modes/shared.js +2 -0
  12. package/dist-npm/components/{prompts → relinka}/relinka.d.ts +2 -4
  13. package/dist-npm/components/{prompts → relinka}/relinka.js +1 -7
  14. package/dist-npm/components/{instance/reporter → reporters}/basic.d.ts +1 -1
  15. package/dist-npm/components/{instance/reporter → reporters}/basic.js +2 -2
  16. package/dist-npm/components/{instance/reporter → reporters}/browser.d.ts +1 -1
  17. package/dist-npm/components/{instance/reporter → reporters}/fancy.d.ts +3 -3
  18. package/dist-npm/components/{instance/reporter → reporters}/fancy.js +5 -7
  19. package/dist-npm/main.d.ts +8 -1
  20. package/dist-npm/main.js +34 -1
  21. package/dist-npm/types/mod.d.ts +42 -0
  22. package/dist-npm/utils/color.js +4 -1
  23. package/dist-npm/utils/mod.d.ts +3 -0
  24. package/dist-npm/utils/mod.js +9 -0
  25. package/package.json +3 -2
  26. package/dist-npm/components/anykey/index.d.ts +0 -7
  27. package/dist-npm/components/anykey/index.js +0 -61
  28. package/dist-npm/components/block/block.d.ts +0 -10
  29. package/dist-npm/components/block/block.js +0 -52
  30. package/dist-npm/components/checkbox/index.d.ts +0 -3
  31. package/dist-npm/components/checkbox/index.js +0 -217
  32. package/dist-npm/components/confirm/confirm-main.d.ts +0 -3
  33. package/dist-npm/components/confirm/confirm-main.js +0 -98
  34. package/dist-npm/components/confirm/confirm-three.d.ts +0 -13
  35. package/dist-npm/components/confirm/confirm-three.js +0 -26
  36. package/dist-npm/components/confirm/index.d.ts +0 -2
  37. package/dist-npm/components/confirm/index.js +0 -41
  38. package/dist-npm/components/core/Separator.d.ts +0 -6
  39. package/dist-npm/components/core/Separator.js +0 -18
  40. package/dist-npm/components/core/create-prompt.d.ts +0 -4
  41. package/dist-npm/components/core/create-prompt.js +0 -107
  42. package/dist-npm/components/core/errors.d.ts +0 -20
  43. package/dist-npm/components/core/errors.js +0 -21
  44. package/dist-npm/components/core/hook-engine.d.ts +0 -23
  45. package/dist-npm/components/core/hook-engine.js +0 -109
  46. package/dist-npm/components/core/index.d.ts +0 -13
  47. package/dist-npm/components/core/index.js +0 -12
  48. package/dist-npm/components/core/key.d.ts +0 -10
  49. package/dist-npm/components/core/key.js +0 -16
  50. package/dist-npm/components/core/lines.d.ts +0 -14
  51. package/dist-npm/components/core/lines.js +0 -52
  52. package/dist-npm/components/core/make-theme.d.ts +0 -3
  53. package/dist-npm/components/core/make-theme.js +0 -28
  54. package/dist-npm/components/core/position.d.ts +0 -12
  55. package/dist-npm/components/core/position.js +0 -29
  56. package/dist-npm/components/core/promise-polyfill.d.ts +0 -7
  57. package/dist-npm/components/core/promise-polyfill.js +0 -13
  58. package/dist-npm/components/core/screen-manager.d.ts +0 -14
  59. package/dist-npm/components/core/screen-manager.js +0 -67
  60. package/dist-npm/components/core/theme.d.ts +0 -21
  61. package/dist-npm/components/core/theme.js +0 -24
  62. package/dist-npm/components/core/use-effect.d.ts +0 -2
  63. package/dist-npm/components/core/use-effect.js +0 -11
  64. package/dist-npm/components/core/use-keypress.d.ts +0 -3
  65. package/dist-npm/components/core/use-keypress.js +0 -21
  66. package/dist-npm/components/core/use-memo.d.ts +0 -1
  67. package/dist-npm/components/core/use-memo.js +0 -12
  68. package/dist-npm/components/core/use-pagination.d.ts +0 -11
  69. package/dist-npm/components/core/use-pagination.js +0 -34
  70. package/dist-npm/components/core/use-prefix.d.ts +0 -5
  71. package/dist-npm/components/core/use-prefix.js +0 -42
  72. package/dist-npm/components/core/use-ref.d.ts +0 -6
  73. package/dist-npm/components/core/use-ref.js +0 -4
  74. package/dist-npm/components/core/use-state.d.ts +0 -4
  75. package/dist-npm/components/core/use-state.js +0 -17
  76. package/dist-npm/components/core/useKeyPress.d.ts +0 -4
  77. package/dist-npm/components/core/useKeyPress.js +0 -16
  78. package/dist-npm/components/core/usePromptState.d.ts +0 -6
  79. package/dist-npm/components/core/usePromptState.js +0 -10
  80. package/dist-npm/components/core/utils.d.ts +0 -2
  81. package/dist-npm/components/core/utils.js +0 -11
  82. package/dist-npm/components/date/date.d.ts +0 -6
  83. package/dist-npm/components/date/date.js +0 -210
  84. package/dist-npm/components/editor/index.d.ts +0 -2
  85. package/dist-npm/components/editor/index.js +0 -78
  86. package/dist-npm/components/expand/index.d.ts +0 -3
  87. package/dist-npm/components/expand/index.js +0 -119
  88. package/dist-npm/components/figures/index.d.ts +0 -465
  89. package/dist-npm/components/figures/index.js +0 -299
  90. package/dist-npm/components/input/index.d.ts +0 -2
  91. package/dist-npm/components/input/index.js +0 -66
  92. package/dist-npm/components/input/text-main.d.ts +0 -3
  93. package/dist-npm/components/input/text-main.js +0 -103
  94. package/dist-npm/components/input/text.d.ts +0 -11
  95. package/dist-npm/components/input/text.js +0 -26
  96. package/dist-npm/components/instance/basic.d.ts +0 -8
  97. package/dist-npm/components/instance/browser.js +0 -18
  98. package/dist-npm/components/instance/shared.d.ts +0 -6
  99. package/dist-npm/components/instance/shared.js +0 -2
  100. package/dist-npm/components/mono/mono.d.ts +0 -5
  101. package/dist-npm/components/mono/mono.js +0 -64
  102. package/dist-npm/components/mono/monoTwo.d.ts +0 -30
  103. package/dist-npm/components/mono/monoTwo.js +0 -37
  104. package/dist-npm/components/multiselect/group-multiselect.d.ts +0 -23
  105. package/dist-npm/components/multiselect/group-multiselect.js +0 -58
  106. package/dist-npm/components/multiselect/multi-select-two.d.ts +0 -3
  107. package/dist-npm/components/multiselect/multi-select-two.js +0 -111
  108. package/dist-npm/components/multiselect/multi-select.d.ts +0 -21
  109. package/dist-npm/components/multiselect/multi-select.js +0 -45
  110. package/dist-npm/components/multiselect/multiselect-main.d.ts +0 -18
  111. package/dist-npm/components/multiselect/multiselect-main.js +0 -166
  112. package/dist-npm/components/multiselect/num-multi-select.d.ts +0 -3
  113. package/dist-npm/components/multiselect/num-multi-select.js +0 -111
  114. package/dist-npm/components/multiselect/num-multiselect-main.d.ts +0 -6
  115. package/dist-npm/components/multiselect/num-multiselect-main.js +0 -28
  116. package/dist-npm/components/next-steps/next-steps.d.ts +0 -2
  117. package/dist-npm/components/next-steps/next-steps.js +0 -24
  118. package/dist-npm/components/number/index.d.ts +0 -2
  119. package/dist-npm/components/number/index.js +0 -100
  120. package/dist-npm/components/number/number-main.d.ts +0 -3
  121. package/dist-npm/components/number/number-main.js +0 -95
  122. package/dist-npm/components/password/index.d.ts +0 -2
  123. package/dist-npm/components/password/index.js +0 -59
  124. package/dist-npm/components/password/password-main.d.ts +0 -3
  125. package/dist-npm/components/password/password-main.js +0 -119
  126. package/dist-npm/components/password/password-three.d.ts +0 -13
  127. package/dist-npm/components/password/password-three.js +0 -28
  128. package/dist-npm/components/progressbar/ProgressBar.d.ts +0 -22
  129. package/dist-npm/components/progressbar/ProgressBar.js +0 -53
  130. package/dist-npm/components/progressbar/helper.d.ts +0 -6
  131. package/dist-npm/components/progressbar/helper.js +0 -38
  132. package/dist-npm/components/progressbar/index.d.ts +0 -2
  133. package/dist-npm/components/progressbar/index.js +0 -1
  134. package/dist-npm/components/prompts/create.js +0 -35
  135. package/dist-npm/components/prompts/index.d.ts +0 -49
  136. package/dist-npm/components/prompts/index.js +0 -46
  137. package/dist-npm/components/prompts/prompt.d.ts +0 -36
  138. package/dist-npm/components/prompts/prompt.js +0 -232
  139. package/dist-npm/components/prompts/promptTwo.d.ts +0 -92
  140. package/dist-npm/components/prompts/promptTwo.js +0 -653
  141. package/dist-npm/components/range/range.d.ts +0 -62
  142. package/dist-npm/components/range/range.js +0 -270
  143. package/dist-npm/components/rawlist/index.d.ts +0 -3
  144. package/dist-npm/components/rawlist/index.js +0 -104
  145. package/dist-npm/components/results/results.d.ts +0 -10
  146. package/dist-npm/components/results/results.js +0 -34
  147. package/dist-npm/components/search/index.d.ts +0 -3
  148. package/dist-npm/components/search/index.js +0 -186
  149. package/dist-npm/components/select/index.d.ts +0 -3
  150. package/dist-npm/components/select/index.js +0 -176
  151. package/dist-npm/components/select/num-select-main.d.ts +0 -8
  152. package/dist-npm/components/select/num-select-main.js +0 -30
  153. package/dist-npm/components/select/num-select.d.ts +0 -5
  154. package/dist-npm/components/select/num-select.js +0 -125
  155. package/dist-npm/components/select/select-key.d.ts +0 -15
  156. package/dist-npm/components/select/select-key.js +0 -26
  157. package/dist-npm/components/select/select-main.d.ts +0 -19
  158. package/dist-npm/components/select/select-main.js +0 -151
  159. package/dist-npm/components/select/select-three.d.ts +0 -18
  160. package/dist-npm/components/select/select-three.js +0 -35
  161. package/dist-npm/components/select/select-two.d.ts +0 -2
  162. package/dist-npm/components/select/select-two.js +0 -98
  163. package/dist-npm/components/spinner/index.d.ts +0 -15
  164. package/dist-npm/components/spinner/index.js +0 -110
  165. package/dist-npm/components/st-end/end.d.ts +0 -2
  166. package/dist-npm/components/st-end/end.js +0 -35
  167. package/dist-npm/components/st-end/start.d.ts +0 -2
  168. package/dist-npm/components/st-end/start.js +0 -32
  169. package/dist-npm/components/toggle/index.d.ts +0 -13
  170. package/dist-npm/components/toggle/index.js +0 -121
  171. package/dist-npm/components/visual/animate/animate.d.ts +0 -13
  172. package/dist-npm/components/visual/animate/animate.js +0 -55
  173. package/dist-npm/components/visual/ascii-art/ascii-art.d.ts +0 -6
  174. package/dist-npm/components/visual/ascii-art/ascii-art.js +0 -12
  175. package/dist-npm/testing/index.d.ts +0 -18
  176. package/dist-npm/testing/index.js +0 -64
  177. package/dist-npm/types/general.d.ts +0 -134
  178. package/dist-npm/types/index.d.ts +0 -2
  179. package/dist-npm/types/index.js +0 -2
  180. package/dist-npm/types/keypress.d.ts +0 -52
  181. package/dist-npm/types/keypress.js +0 -37
  182. package/dist-npm/types/readline.d.ts +0 -30
  183. package/dist-npm/types/readline.js +0 -0
  184. package/dist-npm/types/relinka.d.ts +0 -30
  185. package/dist-npm/types/relinka.js +0 -0
  186. package/dist-npm/types/utils.d.ts +0 -17
  187. package/dist-npm/types/utils.js +0 -0
  188. package/dist-npm/utils/colorize.d.ts +0 -2
  189. package/dist-npm/utils/colorize.js +0 -130
  190. package/dist-npm/utils/component.d.ts +0 -101
  191. package/dist-npm/utils/component.js +0 -630
  192. package/dist-npm/utils/core.d.ts +0 -2
  193. package/dist-npm/utils/core.js +0 -2
  194. package/dist-npm/utils/decoder.d.ts +0 -14
  195. package/dist-npm/utils/decoder.js +0 -281
  196. package/dist-npm/utils/errors.d.ts +0 -1
  197. package/dist-npm/utils/errors.js +0 -15
  198. package/dist-npm/utils/keypress.d.ts +0 -7
  199. package/dist-npm/utils/keypress.js +0 -327
  200. package/dist-npm/utils/mapping.d.ts +0 -4
  201. package/dist-npm/utils/mapping.js +0 -49
  202. package/dist-npm/utils/messages.d.ts +0 -17
  203. package/dist-npm/utils/messages.js +0 -213
  204. package/dist-npm/utils/platforms.d.ts +0 -1
  205. package/dist-npm/utils/platforms.js +0 -22
  206. package/dist-npm/utils/prompt-tmp.d.ts +0 -13
  207. package/dist-npm/utils/prompt-tmp.js +0 -254
  208. package/dist-npm/utils/prompt-two.d.ts +0 -13
  209. package/dist-npm/utils/prompt-two.js +0 -254
  210. package/dist-npm/utils/readline.d.ts +0 -2
  211. package/dist-npm/utils/readline.js +0 -9
  212. package/dist-npm/utils/skeleton.d.ts +0 -7
  213. package/dist-npm/utils/skeleton.js +0 -145
  214. package/dist-npm/utils/terminal.d.ts +0 -5
  215. package/dist-npm/utils/terminal.js +0 -33
  216. package/dist-npm/utils/types.d.ts +0 -0
  217. package/dist-npm/utils/types.js +0 -0
  218. package/dist-npm/utils/utils.d.ts +0 -3
  219. package/dist-npm/utils/utils.js +0 -9
  220. package/dist-npm/utils/variants.d.ts +0 -9
  221. package/dist-npm/utils/variants.js +0 -49
  222. /package/dist-npm/{utils/constants.js → components/levels/levels.js} +0 -0
  223. /package/dist-npm/components/{instance/reporter → reporters}/browser.js +0 -0
  224. /package/dist-npm/types/{general.js → mod.js} +0 -0
@@ -1,281 +0,0 @@
1
- import { Buffer } from "safe-buffer";
2
- const isEncoding = Buffer.isEncoding || function(encoding) {
3
- const enc = String(encoding).toLowerCase();
4
- switch (enc) {
5
- case "hex":
6
- case "utf8":
7
- case "utf-8":
8
- case "ascii":
9
- case "binary":
10
- case "base64":
11
- case "ucs2":
12
- case "ucs-2":
13
- case "utf16le":
14
- case "utf-16le":
15
- case "raw":
16
- return true;
17
- default:
18
- return false;
19
- }
20
- };
21
- function _normalizeEncoding(enc) {
22
- if (!enc) {
23
- return "utf8";
24
- }
25
- let retried = false;
26
- let encoding = String(enc);
27
- while (true) {
28
- switch (encoding) {
29
- case "utf8":
30
- case "utf-8":
31
- return "utf8";
32
- case "ucs2":
33
- case "ucs-2":
34
- case "utf16le":
35
- case "utf-16le":
36
- return "utf16le";
37
- case "latin1":
38
- case "binary":
39
- return "latin1";
40
- case "base64":
41
- case "ascii":
42
- case "hex":
43
- return encoding;
44
- default:
45
- if (retried) {
46
- return void 0;
47
- }
48
- encoding = encoding.toLowerCase();
49
- retried = true;
50
- }
51
- }
52
- }
53
- function normalizeEncoding(enc) {
54
- const nenc = _normalizeEncoding(enc);
55
- if (typeof nenc !== "string" && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) {
56
- throw new Error("Unknown encoding: " + enc);
57
- }
58
- return nenc || enc;
59
- }
60
- export class StringDecoder {
61
- encoding;
62
- lastNeed;
63
- lastTotal;
64
- lastChar;
65
- fillLast;
66
- text;
67
- endFn;
68
- writeFn;
69
- constructor(encoding) {
70
- this.encoding = normalizeEncoding(encoding);
71
- let nb;
72
- switch (this.encoding) {
73
- case "utf16le":
74
- this.text = utf16Text;
75
- this.endFn = utf16End;
76
- nb = 4;
77
- break;
78
- case "utf8":
79
- this.fillLast = utf8FillLast;
80
- nb = 4;
81
- break;
82
- case "base64":
83
- this.text = base64Text;
84
- this.endFn = base64End;
85
- nb = 3;
86
- break;
87
- default:
88
- this.writeFn = simpleWrite;
89
- this.endFn = simpleEnd;
90
- return;
91
- }
92
- this.lastNeed = 0;
93
- this.lastTotal = 0;
94
- this.lastChar = Buffer.allocUnsafe(nb);
95
- this.writeFn = this.write.bind(this);
96
- }
97
- write(buf) {
98
- if (buf.length === 0) {
99
- return "";
100
- }
101
- let r;
102
- let i;
103
- if (this.lastNeed) {
104
- r = this.fillLast(buf);
105
- if (r === void 0) {
106
- return "";
107
- }
108
- i = this.lastNeed;
109
- this.lastNeed = 0;
110
- } else {
111
- i = 0;
112
- }
113
- if (i < buf.length) {
114
- return r ? r + (this.text ? this.text(buf, i) : "") : this.text ? this.text(buf, i) : "";
115
- }
116
- return r || "";
117
- }
118
- /**
119
- * Ends the decoding and returns any remaining characters.
120
- * @param buf - Optional buffer to write before ending.
121
- * @returns The final decoded string.
122
- */
123
- end(buf) {
124
- const result = this.endFn?.(buf) ?? "";
125
- return result;
126
- }
127
- }
128
- function utf8FillLast(buf) {
129
- const p = this.lastTotal - this.lastNeed;
130
- const r = utf8CheckExtraBytes(this, buf, p);
131
- if (r !== void 0) {
132
- return r;
133
- }
134
- if (this.lastNeed <= buf.length) {
135
- buf.copy(this.lastChar, p, 0, this.lastNeed);
136
- return this.lastChar.toString(this.encoding, 0, this.lastTotal);
137
- }
138
- buf.copy(this.lastChar, p, 0, buf.length);
139
- this.lastNeed -= buf.length;
140
- }
141
- function utf8Text(buf, i) {
142
- const total = utf8CheckIncomplete(this, buf, i);
143
- if (!this.lastNeed) {
144
- return buf.toString("utf8", i);
145
- }
146
- this.lastTotal = total;
147
- const end = buf.length - (total - this.lastNeed);
148
- buf.copy(this.lastChar, 0, end);
149
- return buf.toString("utf8", i, end);
150
- }
151
- function utf8End(buf) {
152
- const r = buf?.length ? this.write(buf) : "";
153
- if (this.lastNeed) {
154
- return r + "\uFFFD";
155
- }
156
- return r;
157
- }
158
- function utf8CheckByte(byte) {
159
- if (byte <= 127) {
160
- return 0;
161
- } else if (byte >> 5 === 6) {
162
- return 2;
163
- } else if (byte >> 4 === 14) {
164
- return 3;
165
- } else if (byte >> 3 === 30) {
166
- return 4;
167
- }
168
- return byte >> 6 === 2 ? -1 : -2;
169
- }
170
- function utf8CheckIncomplete(self, buf, i) {
171
- let j = buf.length - 1;
172
- if (j < i) {
173
- return 0;
174
- }
175
- let nb = utf8CheckByte(buf[j]);
176
- if (nb >= 0) {
177
- if (nb > 0) {
178
- self.lastNeed = nb - 1;
179
- }
180
- return nb;
181
- }
182
- if (--j < i || nb === -2) {
183
- return 0;
184
- }
185
- nb = utf8CheckByte(buf[j]);
186
- if (nb >= 0) {
187
- if (nb > 0) {
188
- self.lastNeed = nb - 2;
189
- }
190
- return nb;
191
- }
192
- if (--j < i || nb === -2) {
193
- return 0;
194
- }
195
- nb = utf8CheckByte(buf[j]);
196
- if (nb >= 0) {
197
- if (nb > 0) {
198
- if (nb === 2) {
199
- nb = 0;
200
- } else {
201
- self.lastNeed = nb - 3;
202
- }
203
- }
204
- return nb;
205
- }
206
- return 0;
207
- }
208
- function utf8CheckExtraBytes(self, buf, p) {
209
- if ((buf[0] & 192) !== 128) {
210
- self.lastNeed = 0;
211
- return "\uFFFD";
212
- }
213
- if (self.lastNeed > 1 && buf.length > 1) {
214
- if ((buf[1] & 192) !== 128) {
215
- self.lastNeed = 1;
216
- return "\uFFFD";
217
- }
218
- if (self.lastNeed > 2 && buf.length > 2) {
219
- if ((buf[2] & 192) !== 128) {
220
- self.lastNeed = 2;
221
- return "\uFFFD";
222
- }
223
- }
224
- }
225
- }
226
- function utf16Text(buf, i) {
227
- if ((buf.length - i) % 2 === 0) {
228
- const r = buf.toString("utf16le", i);
229
- if (r) {
230
- const c = r.charCodeAt(r.length - 1);
231
- if (c >= 55296 && c <= 56319) {
232
- this.lastNeed = 2;
233
- this.lastTotal = 4;
234
- this.lastChar[0] = buf[buf.length - 2];
235
- this.lastChar[1] = buf[buf.length - 1];
236
- return r.slice(0, -1);
237
- }
238
- }
239
- return r;
240
- }
241
- this.lastNeed = 1;
242
- this.lastTotal = 2;
243
- this.lastChar[0] = buf[buf.length - 1];
244
- return buf.toString("utf16le", i, buf.length - 1);
245
- }
246
- function utf16End(buf) {
247
- const r = buf?.length ? this.write(buf) : "";
248
- if (this.lastNeed) {
249
- const end = this.lastTotal - this.lastNeed;
250
- return r + this.lastChar.toString("utf16le", 0, end);
251
- }
252
- return r;
253
- }
254
- function base64Text(buf, i) {
255
- const n = (buf.length - i) % 3;
256
- if (n === 0) {
257
- return buf.toString("base64", i);
258
- }
259
- this.lastNeed = 3 - n;
260
- this.lastTotal = 3;
261
- if (n === 1) {
262
- this.lastChar[0] = buf[buf.length - 1];
263
- } else {
264
- this.lastChar[0] = buf[buf.length - 2];
265
- this.lastChar[1] = buf[buf.length - 1];
266
- }
267
- return buf.toString("base64", i, buf.length - n);
268
- }
269
- function base64End(buf) {
270
- const r = buf?.length ? this.write(buf) : "";
271
- if (this.lastNeed) {
272
- return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed);
273
- }
274
- return r;
275
- }
276
- function simpleWrite(buf) {
277
- return buf.toString(this.encoding);
278
- }
279
- function simpleEnd(buf) {
280
- return buf?.length ? this.write(buf) : "";
281
- }
@@ -1 +0,0 @@
1
- export declare const errorHandler: (error: Error, customMessage?: string) => never;
@@ -1,15 +0,0 @@
1
- export const errorHandler = (error, customMessage) => {
2
- const separator = "\u2500".repeat(71);
3
- console.error("\u2502" + separator);
4
- console.error("\u2502 AN ERROR OCCURRED:\n\u2502 ", error.message);
5
- console.error("\u2502" + separator);
6
- if (customMessage) {
7
- console.error("\u2502 " + customMessage);
8
- } else {
9
- console.error(
10
- "\u2502 If this issue is related to @reliverse/relinka itself, please\n\u2502 report the details at https://github.com/reliverse/prompts/issues"
11
- );
12
- }
13
- console.error("\u2570" + separator);
14
- process.exit(1);
15
- };
@@ -1,7 +0,0 @@
1
- import type { Readable } from "stream";
2
- import type { Keypress } from "../types/keypress.js";
3
- declare const listenForKeys: {
4
- (stream: Readable, callback: (key: Keypress) => void): (() => void);
5
- parse: (s: string | Buffer, enc?: BufferEncoding) => Keypress | Keypress[];
6
- };
7
- export default listenForKeys;
@@ -1,327 +0,0 @@
1
- import { StringDecoder } from "./decoder.js";
2
- const metaKeyCodeRe = /^(?:\u001b)([a-zA-Z0-9])$/;
3
- const functionKeyCodeRe = (
4
-
5
- /^(?:\u001b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/
6
- );
7
- const parse = (s, enc) => {
8
- let parts;
9
- const key = {
10
- name: void 0,
11
- ctrl: false,
12
- meta: false,
13
- shift: false,
14
- sequence: s.toString(enc || "utf-8"),
15
- raw: ""
16
- };
17
- if (Buffer.isBuffer(s)) {
18
- if (s[0] > 127 && s[1] === void 0) {
19
- s[0] -= 128;
20
- s = Buffer.from("\x1B" + s.toString(enc || "utf-8"));
21
- } else {
22
- s = s.toString(enc || "utf-8");
23
- }
24
- }
25
- const input = typeof s === "string" ? s : s.toString(enc || "utf-8");
26
- if (input === "\r") {
27
- key.name = "return";
28
- } else if (input === "\n") {
29
- key.name = "enter";
30
- } else if (input === " ") {
31
- key.name = "tab";
32
- } else if (input === "\b" || input === "\x7F" || input === "\x1B\x7F" || input === "\x1B\b") {
33
- key.name = "backspace";
34
- key.meta = input.startsWith("\x1B");
35
- } else if (input === "\x1B" || input === "\x1B\x1B") {
36
- key.name = "escape";
37
- key.meta = input.length === 2;
38
- } else if (input === " " || input === "\x1B ") {
39
- key.name = "space";
40
- key.meta = input.length === 2;
41
- } else if (input <= "") {
42
- key.name = String.fromCharCode(input.charCodeAt(0) + "a".charCodeAt(0) - 1);
43
- key.ctrl = true;
44
- } else if (input.length === 1 && input >= "a" && input <= "z") {
45
- key.name = input;
46
- } else if (input.length === 1 && input >= "A" && input <= "Z") {
47
- key.name = input.toLowerCase();
48
- key.shift = true;
49
- } else if (parts = metaKeyCodeRe.exec(input)) {
50
- key.name = parts[1].toLowerCase();
51
- key.meta = true;
52
- key.shift = /^[A-Z]$/.test(parts[1]);
53
- } else if (parts = functionKeyCodeRe.exec(input)) {
54
- const code = (parts[1] || "") + (parts[2] || "") + (parts[4] || "") + (parts[6] || "");
55
- const modifier = parseInt(parts[3] || parts[5] || "1", 10) - 1 || 0;
56
- key.ctrl = !!(modifier & 4);
57
- key.meta = !!(modifier & 10);
58
- key.shift = !!(modifier & 1);
59
- key.code = code;
60
- switch (code) {
61
- case "OP":
62
- key.name = "f1";
63
- break;
64
- case "OQ":
65
- key.name = "f2";
66
- break;
67
- case "OR":
68
- key.name = "f3";
69
- break;
70
- case "OS":
71
- key.name = "f4";
72
- break;
73
- case "[11~":
74
- key.name = "f1";
75
- break;
76
- case "[12~":
77
- key.name = "f2";
78
- break;
79
- case "[13~":
80
- key.name = "f3";
81
- break;
82
- case "[14~":
83
- key.name = "f4";
84
- break;
85
- case "[[A":
86
- key.name = "f1";
87
- break;
88
- case "[[B":
89
- key.name = "f2";
90
- break;
91
- case "[[C":
92
- key.name = "f3";
93
- break;
94
- case "[[D":
95
- key.name = "f4";
96
- break;
97
- case "[[E":
98
- key.name = "f5";
99
- break;
100
- case "[15~":
101
- key.name = "f5";
102
- break;
103
- case "[17~":
104
- key.name = "f6";
105
- break;
106
- case "[18~":
107
- key.name = "f7";
108
- break;
109
- case "[19~":
110
- key.name = "f8";
111
- break;
112
- case "[20~":
113
- key.name = "f9";
114
- break;
115
- case "[21~":
116
- key.name = "f10";
117
- break;
118
- case "[23~":
119
- key.name = "f11";
120
- break;
121
- case "[24~":
122
- key.name = "f12";
123
- break;
124
- case "[A":
125
- key.name = "up";
126
- break;
127
- case "[B":
128
- key.name = "down";
129
- break;
130
- case "[C":
131
- key.name = "right";
132
- break;
133
- case "[D":
134
- key.name = "left";
135
- break;
136
- case "[E":
137
- key.name = "clear";
138
- break;
139
- case "[F":
140
- key.name = "end";
141
- break;
142
- case "[H":
143
- key.name = "home";
144
- break;
145
- case "OA":
146
- key.name = "up";
147
- break;
148
- case "OB":
149
- key.name = "down";
150
- break;
151
- case "OC":
152
- key.name = "right";
153
- break;
154
- case "OD":
155
- key.name = "left";
156
- break;
157
- case "OE":
158
- key.name = "clear";
159
- break;
160
- case "OF":
161
- key.name = "end";
162
- break;
163
- case "OH":
164
- key.name = "home";
165
- break;
166
- case "[1~":
167
- key.name = "home";
168
- break;
169
- case "[2~":
170
- key.name = "insert";
171
- break;
172
- case "[3~":
173
- key.name = "delete";
174
- break;
175
- case "[4~":
176
- key.name = "end";
177
- break;
178
- case "[5~":
179
- key.name = "pageup";
180
- break;
181
- case "[6~":
182
- key.name = "pagedown";
183
- break;
184
- case "[[5~":
185
- key.name = "pageup";
186
- break;
187
- case "[[6~":
188
- key.name = "pagedown";
189
- break;
190
- case "[7~":
191
- key.name = "home";
192
- break;
193
- case "[8~":
194
- key.name = "end";
195
- break;
196
- case "[a":
197
- key.name = "up";
198
- key.shift = true;
199
- break;
200
- case "[b":
201
- key.name = "down";
202
- key.shift = true;
203
- break;
204
- case "[c":
205
- key.name = "right";
206
- key.shift = true;
207
- break;
208
- case "[d":
209
- key.name = "left";
210
- key.shift = true;
211
- break;
212
- case "[e":
213
- key.name = "clear";
214
- key.shift = true;
215
- break;
216
- case "[2$":
217
- key.name = "insert";
218
- key.shift = true;
219
- break;
220
- case "[3$":
221
- key.name = "delete";
222
- key.shift = true;
223
- break;
224
- case "[5$":
225
- key.name = "pageup";
226
- key.shift = true;
227
- break;
228
- case "[6$":
229
- key.name = "pagedown";
230
- key.shift = true;
231
- break;
232
- case "[7$":
233
- key.name = "home";
234
- key.shift = true;
235
- break;
236
- case "[8$":
237
- key.name = "end";
238
- key.shift = true;
239
- break;
240
- case "Oa":
241
- key.name = "up";
242
- key.ctrl = true;
243
- break;
244
- case "Ob":
245
- key.name = "down";
246
- key.ctrl = true;
247
- break;
248
- case "Oc":
249
- key.name = "right";
250
- key.ctrl = true;
251
- break;
252
- case "Od":
253
- key.name = "left";
254
- key.ctrl = true;
255
- break;
256
- case "Oe":
257
- key.name = "clear";
258
- key.ctrl = true;
259
- break;
260
- case "[2^":
261
- key.name = "insert";
262
- key.ctrl = true;
263
- break;
264
- case "[3^":
265
- key.name = "delete";
266
- key.ctrl = true;
267
- break;
268
- case "[5^":
269
- key.name = "pageup";
270
- key.ctrl = true;
271
- break;
272
- case "[6^":
273
- key.name = "pagedown";
274
- key.ctrl = true;
275
- break;
276
- case "[7^":
277
- key.name = "home";
278
- key.ctrl = true;
279
- break;
280
- case "[8^":
281
- key.name = "end";
282
- key.ctrl = true;
283
- break;
284
- case "[Z":
285
- key.name = "tab";
286
- key.shift = true;
287
- break;
288
- default:
289
- key.name = "undefined";
290
- break;
291
- }
292
- } else if (input.length > 1 && !input.startsWith("\x1B")) {
293
- return Array.from(input).map((c) => parse(c, enc)).flat();
294
- }
295
- key.raw = input;
296
- return key;
297
- };
298
- const listenForKeys = (stream, callback) => {
299
- if (!stream || typeof stream.isRaw !== "boolean") {
300
- throw new Error("Invalid stream passed.");
301
- }
302
- if (typeof callback !== "function") {
303
- throw new Error("Invalid callback passed.");
304
- }
305
- const decoder = new StringDecoder("utf8");
306
- const onData = (raw) => {
307
- const data = decoder.write(raw);
308
- const keys = parse(data, "utf8");
309
- if (Array.isArray(keys)) {
310
- keys.forEach((key) => callback(key));
311
- } else {
312
- callback(keys);
313
- }
314
- };
315
- const oldRawMode = stream.isRaw;
316
- stream.setRawMode(true);
317
- stream.on("data", onData);
318
- stream.resume();
319
- const stopListening = () => {
320
- stream.setRawMode(oldRawMode);
321
- stream.pause();
322
- stream.removeListener("data", onData);
323
- };
324
- return stopListening;
325
- };
326
- listenForKeys.parse = parse;
327
- export default listenForKeys;
@@ -1,4 +0,0 @@
1
- import type { TypographyName } from "../types/general.js";
2
- import type { ColorName } from "../types/general.js";
3
- export declare const colorMap: Record<ColorName, (text: string) => string>;
4
- export declare const typographyMap: Record<TypographyName, (text: string) => string>;
@@ -1,49 +0,0 @@
1
- import chalk from "chalk";
2
- import gradient, { cristal, mind, passion, retro, vice } from "gradient-string";
3
- import { rainbow } from "gradient-string";
4
- import colors from "picocolors";
5
- export const colorMap = {
6
- none: colors.reset,
7
- inverse: colors.inverse,
8
- black: colors.black,
9
- blue: colors.blue,
10
- blueBright: colors.blueBright,
11
- cyan: colors.cyan,
12
- cyanBright: colors.cyanBright,
13
- bgCyan: colors.bgCyan,
14
- bgCyanBright: colors.bgCyanBright,
15
- dim: colors.dim,
16
- gray: colors.gray,
17
- green: colors.green,
18
- greenBright: colors.greenBright,
19
- bgGreen: colors.bgGreen,
20
- bgGreenBright: colors.bgGreenBright,
21
- magenta: colors.magenta,
22
- red: colors.red,
23
- redBright: colors.redBright,
24
- bgRed: colors.bgRed,
25
- bgRedBright: colors.bgRedBright,
26
- white: colors.white,
27
- yellow: colors.yellow,
28
- yellowBright: colors.yellowBright,
29
- cristalGradient: cristal,
30
- mindGradient: mind,
31
- passionGradient: passion,
32
- rainbowGradient: rainbow,
33
- retroGradient: retro,
34
- viceGradient: vice,
35
- gradientGradient: gradient([
36
- "red",
37
- "yellow",
38
- "green",
39
- "cyan",
40
- "blue",
41
- "magenta"
42
- ])
43
- };
44
- export const typographyMap = {
45
- bold: chalk.bold,
46
- italic: chalk.italic,
47
- underline: chalk.underline,
48
- strikethrough: chalk.strikethrough
49
- };
@@ -1,17 +0,0 @@
1
- import type { ColorName, FmtMsgOptions } from "../types/general.js";
2
- export declare const symbols: {
3
- pointer: string;
4
- start: string;
5
- middle: string;
6
- end: string;
7
- line: string;
8
- corner_top_right: string;
9
- step_active: string;
10
- step_error: string;
11
- info: string;
12
- };
13
- export declare const bar: ({ borderColor, }: {
14
- borderColor?: ColorName;
15
- }) => string;
16
- export declare function fmt(opts: FmtMsgOptions): string;
17
- export declare function msg(opts: FmtMsgOptions): void;