@batijs/cli 0.0.321 → 0.0.324

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 (88) hide show
  1. package/dist/boilerplates/@batijs/auth0/files/$.env.js +5 -5
  2. package/dist/boilerplates/@batijs/auth0/files/$README.md.js +3 -3
  3. package/dist/boilerplates/@batijs/authjs/files/$package.json.js +3 -3
  4. package/dist/boilerplates/@batijs/aws/files/$README.md.js +3 -3
  5. package/dist/boilerplates/@batijs/aws/files/$package.json.js +3 -3
  6. package/dist/boilerplates/@batijs/aws/files/$tsconfig.json.js +3 -3
  7. package/dist/boilerplates/@batijs/biome/files/$package.json.js +3 -3
  8. package/dist/boilerplates/@batijs/cloudflare/files/$package.json.js +3 -3
  9. package/dist/boilerplates/@batijs/cloudflare/files/$tsconfig.json.js +3 -3
  10. package/dist/boilerplates/@batijs/cloudflare/files/$vite.config.ts.js +3 -3
  11. package/dist/boilerplates/@batijs/compiled/files/$package.json.js +3 -3
  12. package/dist/boilerplates/@batijs/compiled/files/$vite.config.ts.js +3 -3
  13. package/dist/boilerplates/@batijs/d1/files/$README.md.js +3 -3
  14. package/dist/boilerplates/@batijs/d1/files/$package.json.js +3 -3
  15. package/dist/boilerplates/@batijs/d1/files/$tsconfig.json.js +3 -3
  16. package/dist/boilerplates/@batijs/d1/files/$wrangler.toml.js +1 -1
  17. package/dist/boilerplates/@batijs/d1-sqlite/files/$package.json.js +3 -3
  18. package/dist/boilerplates/@batijs/drizzle/files/$.env.js +3 -3
  19. package/dist/boilerplates/@batijs/drizzle/files/$README.md.js +3 -3
  20. package/dist/boilerplates/@batijs/drizzle/files/$package.json.js +3 -3
  21. package/dist/boilerplates/@batijs/edgedb/files/$README.md.js +3 -3
  22. package/dist/boilerplates/@batijs/edgedb/files/$package.json.js +3 -3
  23. package/dist/boilerplates/@batijs/eslint/files/$package.json.js +3 -3
  24. package/dist/boilerplates/@batijs/express/files/$package.json.js +3 -3
  25. package/dist/boilerplates/@batijs/fastify/files/$package.json.js +3 -3
  26. package/dist/boilerplates/@batijs/firebase-auth/files/$.env.js +3 -3
  27. package/dist/boilerplates/@batijs/firebase-auth/files/$README.md.js +3 -3
  28. package/dist/boilerplates/@batijs/firebase-auth/files/$package.json.js +3 -3
  29. package/dist/boilerplates/@batijs/google-analytics/files/$.env.js +3 -3
  30. package/dist/boilerplates/@batijs/h3/files/$package.json.js +3 -3
  31. package/dist/boilerplates/@batijs/hattip/files/$package.json.js +3 -3
  32. package/dist/boilerplates/@batijs/hono/files/$package.json.js +3 -3
  33. package/dist/boilerplates/@batijs/hono/files/$vite.config.ts.js +3 -3
  34. package/dist/boilerplates/@batijs/lucia-auth/files/$.env.js +4 -4
  35. package/dist/boilerplates/@batijs/lucia-auth/files/$README.md.js +3 -3
  36. package/dist/boilerplates/@batijs/lucia-auth/files/$package.json.js +3 -3
  37. package/dist/boilerplates/@batijs/mantine/files/$README.md.js +3 -3
  38. package/dist/boilerplates/@batijs/mantine/files/$package.json.js +3 -3
  39. package/dist/boilerplates/@batijs/panda-css/files/$package.json.js +3 -3
  40. package/dist/boilerplates/@batijs/prettier/files/$package.json.js +3 -3
  41. package/dist/boilerplates/@batijs/prisma/files/$.env.js +3 -3
  42. package/dist/boilerplates/@batijs/prisma/files/$README.md.js +3 -3
  43. package/dist/boilerplates/@batijs/prisma/files/$package.json.js +3 -3
  44. package/dist/boilerplates/@batijs/react/files/$README.md.js +3 -3
  45. package/dist/boilerplates/@batijs/react/files/$package.json.js +3 -3
  46. package/dist/boilerplates/@batijs/react/files/$tsconfig.json.js +3 -3
  47. package/dist/boilerplates/@batijs/react/files/$vite.config.ts.js +3 -3
  48. package/dist/boilerplates/@batijs/react-sentry/files/$package.json.js +3 -3
  49. package/dist/boilerplates/@batijs/sentry/files/$.env.js +4 -4
  50. package/dist/boilerplates/@batijs/sentry/files/$README.md.js +3 -3
  51. package/dist/boilerplates/@batijs/sentry/files/$package.json.js +3 -3
  52. package/dist/boilerplates/@batijs/sentry/files/$vite.config.ts.js +5 -5
  53. package/dist/boilerplates/@batijs/sentry/files/pages/$+client.ts.js +5 -5
  54. package/dist/boilerplates/@batijs/shadcn-ui/files/$README.md.js +3 -3
  55. package/dist/boilerplates/@batijs/shadcn-ui/files/$package.json.js +3 -3
  56. package/dist/boilerplates/@batijs/shadcn-ui/files/$tsconfig.json.js +3 -3
  57. package/dist/boilerplates/@batijs/shadcn-ui/files/$vite.config.ts.js +5 -5
  58. package/dist/boilerplates/@batijs/shared/files/$README.md.js +7 -7
  59. package/dist/boilerplates/@batijs/shared-server/files/$package.json.js +3 -3
  60. package/dist/boilerplates/@batijs/solid/files/$README.md.js +3 -3
  61. package/dist/boilerplates/@batijs/solid/files/$package.json.js +3 -3
  62. package/dist/boilerplates/@batijs/solid/files/$tsconfig.json.js +3 -3
  63. package/dist/boilerplates/@batijs/solid/files/$vite.config.ts.js +3 -3
  64. package/dist/boilerplates/@batijs/solid-sentry/files/$package.json.js +3 -3
  65. package/dist/boilerplates/@batijs/sqlite/files/$.env.js +3 -3
  66. package/dist/boilerplates/@batijs/sqlite/files/$README.md.js +3 -3
  67. package/dist/boilerplates/@batijs/sqlite/files/$package.json.js +3 -3
  68. package/dist/boilerplates/@batijs/tailwindcss/files/$package.json.js +3 -3
  69. package/dist/boilerplates/@batijs/telefunc/files/$package.json.js +3 -3
  70. package/dist/boilerplates/@batijs/telefunc/files/$vite.config.ts.js +3 -3
  71. package/dist/boilerplates/@batijs/trpc/files/$package.json.js +3 -3
  72. package/dist/boilerplates/@batijs/trpc/types/trpc/client.d.ts +12 -12
  73. package/dist/boilerplates/@batijs/ts-rest/files/$package.json.js +3 -3
  74. package/dist/boilerplates/@batijs/vercel/files/$package.json.js +5 -5
  75. package/dist/boilerplates/@batijs/vercel/files/$tsconfig.json.js +3 -3
  76. package/dist/boilerplates/@batijs/vercel/files/$vite.config.ts.js +3 -3
  77. package/dist/boilerplates/@batijs/vue/files/$README.md.js +3 -3
  78. package/dist/boilerplates/@batijs/vue/files/$package.json.js +3 -3
  79. package/dist/boilerplates/@batijs/vue/files/$tsconfig.json.js +3 -3
  80. package/dist/boilerplates/@batijs/vue/files/$vite.config.ts.js +3 -3
  81. package/dist/boilerplates/@batijs/vue-sentry/files/$package.json.js +3 -3
  82. package/dist/chunk-7ZHD2YFR.js +1100 -0
  83. package/dist/{chunk-6MKJ33CI.js → chunk-JICD3X3F.js} +29641 -29634
  84. package/dist/index.js +16 -16
  85. package/dist/{jiti-QYPC42DC-IKOSD6A6.js → jiti-4VHEHEJ6-H5HUC6HV.js} +11507 -11485
  86. package/dist/{prompt-EYFUFJSI.js → prompt-TICE27HC.js} +392 -293
  87. package/package.json +5 -5
  88. package/dist/chunk-FWD3UPBV.js +0 -1064
@@ -1,1064 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- // ../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/core.mjs
4
- var LogLevels = {
5
- silent: Number.NEGATIVE_INFINITY,
6
- fatal: 0,
7
- error: 0,
8
- warn: 1,
9
- log: 2,
10
- info: 3,
11
- success: 3,
12
- fail: 3,
13
- ready: 3,
14
- start: 3,
15
- box: 3,
16
- debug: 4,
17
- trace: 5,
18
- verbose: Number.POSITIVE_INFINITY
19
- };
20
- var LogTypes = {
21
- // Silent
22
- silent: {
23
- level: -1
24
- },
25
- // Level 0
26
- fatal: {
27
- level: LogLevels.fatal
28
- },
29
- error: {
30
- level: LogLevels.error
31
- },
32
- // Level 1
33
- warn: {
34
- level: LogLevels.warn
35
- },
36
- // Level 2
37
- log: {
38
- level: LogLevels.log
39
- },
40
- // Level 3
41
- info: {
42
- level: LogLevels.info
43
- },
44
- success: {
45
- level: LogLevels.success
46
- },
47
- fail: {
48
- level: LogLevels.fail
49
- },
50
- ready: {
51
- level: LogLevels.info
52
- },
53
- start: {
54
- level: LogLevels.info
55
- },
56
- box: {
57
- level: LogLevels.info
58
- },
59
- // Level 4
60
- debug: {
61
- level: LogLevels.debug
62
- },
63
- // Level 5
64
- trace: {
65
- level: LogLevels.trace
66
- },
67
- // Verbose
68
- verbose: {
69
- level: LogLevels.verbose
70
- }
71
- };
72
- function isObject(value) {
73
- return value !== null && typeof value === "object";
74
- }
75
- function _defu(baseObject, defaults, namespace = ".", merger) {
76
- if (!isObject(defaults)) {
77
- return _defu(baseObject, {}, namespace, merger);
78
- }
79
- const object = Object.assign({}, defaults);
80
- for (const key in baseObject) {
81
- if (key === "__proto__" || key === "constructor") {
82
- continue;
83
- }
84
- const value = baseObject[key];
85
- if (value === null || value === void 0) {
86
- continue;
87
- }
88
- if (merger && merger(object, key, value, namespace)) {
89
- continue;
90
- }
91
- if (Array.isArray(value) && Array.isArray(object[key])) {
92
- object[key] = [...value, ...object[key]];
93
- } else if (isObject(value) && isObject(object[key])) {
94
- object[key] = _defu(
95
- value,
96
- object[key],
97
- (namespace ? `${namespace}.` : "") + key.toString(),
98
- merger
99
- );
100
- } else {
101
- object[key] = value;
102
- }
103
- }
104
- return object;
105
- }
106
- function createDefu(merger) {
107
- return (...arguments_) => (
108
- // eslint-disable-next-line unicorn/no-array-reduce
109
- arguments_.reduce((p, c) => _defu(p, c, "", merger), {})
110
- );
111
- }
112
- var defu = createDefu();
113
- function isPlainObject(obj) {
114
- return Object.prototype.toString.call(obj) === "[object Object]";
115
- }
116
- function isLogObj(arg) {
117
- if (!isPlainObject(arg)) {
118
- return false;
119
- }
120
- if (!arg.message && !arg.args) {
121
- return false;
122
- }
123
- if (arg.stack) {
124
- return false;
125
- }
126
- return true;
127
- }
128
- var paused = false;
129
- var queue = [];
130
- var Consola = class _Consola {
131
- constructor(options = {}) {
132
- const types = options.types || LogTypes;
133
- this.options = defu(
134
- {
135
- ...options,
136
- defaults: { ...options.defaults },
137
- level: _normalizeLogLevel(options.level, types),
138
- reporters: [...options.reporters || []]
139
- },
140
- {
141
- types: LogTypes,
142
- throttle: 1e3,
143
- throttleMin: 5,
144
- formatOptions: {
145
- date: true,
146
- colors: false,
147
- compact: true
148
- }
149
- }
150
- );
151
- for (const type in types) {
152
- const defaults = {
153
- type,
154
- ...this.options.defaults,
155
- ...types[type]
156
- };
157
- this[type] = this._wrapLogFn(defaults);
158
- this[type].raw = this._wrapLogFn(
159
- defaults,
160
- true
161
- );
162
- }
163
- if (this.options.mockFn) {
164
- this.mockTypes();
165
- }
166
- this._lastLog = {};
167
- }
168
- get level() {
169
- return this.options.level;
170
- }
171
- set level(level) {
172
- this.options.level = _normalizeLogLevel(
173
- level,
174
- this.options.types,
175
- this.options.level
176
- );
177
- }
178
- prompt(message, opts) {
179
- if (!this.options.prompt) {
180
- throw new Error("prompt is not supported!");
181
- }
182
- return this.options.prompt(message, opts);
183
- }
184
- create(options) {
185
- const instance = new _Consola({
186
- ...this.options,
187
- ...options
188
- });
189
- if (this._mockFn) {
190
- instance.mockTypes(this._mockFn);
191
- }
192
- return instance;
193
- }
194
- withDefaults(defaults) {
195
- return this.create({
196
- ...this.options,
197
- defaults: {
198
- ...this.options.defaults,
199
- ...defaults
200
- }
201
- });
202
- }
203
- withTag(tag) {
204
- return this.withDefaults({
205
- tag: this.options.defaults.tag ? this.options.defaults.tag + ":" + tag : tag
206
- });
207
- }
208
- addReporter(reporter) {
209
- this.options.reporters.push(reporter);
210
- return this;
211
- }
212
- removeReporter(reporter) {
213
- if (reporter) {
214
- const i = this.options.reporters.indexOf(reporter);
215
- if (i >= 0) {
216
- return this.options.reporters.splice(i, 1);
217
- }
218
- } else {
219
- this.options.reporters.splice(0);
220
- }
221
- return this;
222
- }
223
- setReporters(reporters) {
224
- this.options.reporters = Array.isArray(reporters) ? reporters : [reporters];
225
- return this;
226
- }
227
- wrapAll() {
228
- this.wrapConsole();
229
- this.wrapStd();
230
- }
231
- restoreAll() {
232
- this.restoreConsole();
233
- this.restoreStd();
234
- }
235
- wrapConsole() {
236
- for (const type in this.options.types) {
237
- if (!console["__" + type]) {
238
- console["__" + type] = console[type];
239
- }
240
- console[type] = this[type].raw;
241
- }
242
- }
243
- restoreConsole() {
244
- for (const type in this.options.types) {
245
- if (console["__" + type]) {
246
- console[type] = console["__" + type];
247
- delete console["__" + type];
248
- }
249
- }
250
- }
251
- wrapStd() {
252
- this._wrapStream(this.options.stdout, "log");
253
- this._wrapStream(this.options.stderr, "log");
254
- }
255
- _wrapStream(stream, type) {
256
- if (!stream) {
257
- return;
258
- }
259
- if (!stream.__write) {
260
- stream.__write = stream.write;
261
- }
262
- stream.write = (data) => {
263
- this[type].raw(String(data).trim());
264
- };
265
- }
266
- restoreStd() {
267
- this._restoreStream(this.options.stdout);
268
- this._restoreStream(this.options.stderr);
269
- }
270
- _restoreStream(stream) {
271
- if (!stream) {
272
- return;
273
- }
274
- if (stream.__write) {
275
- stream.write = stream.__write;
276
- delete stream.__write;
277
- }
278
- }
279
- pauseLogs() {
280
- paused = true;
281
- }
282
- resumeLogs() {
283
- paused = false;
284
- const _queue = queue.splice(0);
285
- for (const item of _queue) {
286
- item[0]._logFn(item[1], item[2]);
287
- }
288
- }
289
- mockTypes(mockFn) {
290
- const _mockFn = mockFn || this.options.mockFn;
291
- this._mockFn = _mockFn;
292
- if (typeof _mockFn !== "function") {
293
- return;
294
- }
295
- for (const type in this.options.types) {
296
- this[type] = _mockFn(type, this.options.types[type]) || this[type];
297
- this[type].raw = this[type];
298
- }
299
- }
300
- _wrapLogFn(defaults, isRaw) {
301
- return (...args) => {
302
- if (paused) {
303
- queue.push([this, defaults, args, isRaw]);
304
- return;
305
- }
306
- return this._logFn(defaults, args, isRaw);
307
- };
308
- }
309
- _logFn(defaults, args, isRaw) {
310
- if ((defaults.level || 0) > this.level) {
311
- return false;
312
- }
313
- const logObj = {
314
- date: /* @__PURE__ */ new Date(),
315
- args: [],
316
- ...defaults,
317
- level: _normalizeLogLevel(defaults.level, this.options.types)
318
- };
319
- if (!isRaw && args.length === 1 && isLogObj(args[0])) {
320
- Object.assign(logObj, args[0]);
321
- } else {
322
- logObj.args = [...args];
323
- }
324
- if (logObj.message) {
325
- logObj.args.unshift(logObj.message);
326
- delete logObj.message;
327
- }
328
- if (logObj.additional) {
329
- if (!Array.isArray(logObj.additional)) {
330
- logObj.additional = logObj.additional.split("\n");
331
- }
332
- logObj.args.push("\n" + logObj.additional.join("\n"));
333
- delete logObj.additional;
334
- }
335
- logObj.type = typeof logObj.type === "string" ? logObj.type.toLowerCase() : "log";
336
- logObj.tag = typeof logObj.tag === "string" ? logObj.tag : "";
337
- const resolveLog = (newLog = false) => {
338
- const repeated = (this._lastLog.count || 0) - this.options.throttleMin;
339
- if (this._lastLog.object && repeated > 0) {
340
- const args2 = [...this._lastLog.object.args];
341
- if (repeated > 1) {
342
- args2.push(`(repeated ${repeated} times)`);
343
- }
344
- this._log({ ...this._lastLog.object, args: args2 });
345
- this._lastLog.count = 1;
346
- }
347
- if (newLog) {
348
- this._lastLog.object = logObj;
349
- this._log(logObj);
350
- }
351
- };
352
- clearTimeout(this._lastLog.timeout);
353
- const diffTime = this._lastLog.time && logObj.date ? logObj.date.getTime() - this._lastLog.time.getTime() : 0;
354
- this._lastLog.time = logObj.date;
355
- if (diffTime < this.options.throttle) {
356
- try {
357
- const serializedLog = JSON.stringify([
358
- logObj.type,
359
- logObj.tag,
360
- logObj.args
361
- ]);
362
- const isSameLog = this._lastLog.serialized === serializedLog;
363
- this._lastLog.serialized = serializedLog;
364
- if (isSameLog) {
365
- this._lastLog.count = (this._lastLog.count || 0) + 1;
366
- if (this._lastLog.count > this.options.throttleMin) {
367
- this._lastLog.timeout = setTimeout(
368
- resolveLog,
369
- this.options.throttle
370
- );
371
- return;
372
- }
373
- }
374
- } catch {
375
- }
376
- }
377
- resolveLog(true);
378
- }
379
- _log(logObj) {
380
- for (const reporter of this.options.reporters) {
381
- reporter.log(logObj, {
382
- options: this.options
383
- });
384
- }
385
- }
386
- };
387
- function _normalizeLogLevel(input, types = {}, defaultLevel = 3) {
388
- if (input === void 0) {
389
- return defaultLevel;
390
- }
391
- if (typeof input === "number") {
392
- return input;
393
- }
394
- if (types[input] && types[input].level !== void 0) {
395
- return types[input].level;
396
- }
397
- return defaultLevel;
398
- }
399
- Consola.prototype.add = Consola.prototype.addReporter;
400
- Consola.prototype.remove = Consola.prototype.removeReporter;
401
- Consola.prototype.clear = Consola.prototype.removeReporter;
402
- Consola.prototype.withScope = Consola.prototype.withTag;
403
- Consola.prototype.mock = Consola.prototype.mockTypes;
404
- Consola.prototype.pause = Consola.prototype.pauseLogs;
405
- Consola.prototype.resume = Consola.prototype.resumeLogs;
406
- function createConsola(options = {}) {
407
- return new Consola(options);
408
- }
409
-
410
- // ../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/shared/consola.06ad8a64.mjs
411
- import { formatWithOptions } from "node:util";
412
- import { sep } from "node:path";
413
- function parseStack(stack) {
414
- const cwd = process.cwd() + sep;
415
- const lines = stack.split("\n").splice(1).map((l) => l.trim().replace("file://", "").replace(cwd, ""));
416
- return lines;
417
- }
418
- function writeStream(data, stream) {
419
- const write = stream.__write || stream.write;
420
- return write.call(stream, data);
421
- }
422
- var bracket = (x) => x ? `[${x}]` : "";
423
- var BasicReporter = class {
424
- formatStack(stack, opts) {
425
- return " " + parseStack(stack).join("\n ");
426
- }
427
- formatArgs(args, opts) {
428
- const _args = args.map((arg) => {
429
- if (arg && typeof arg.stack === "string") {
430
- return arg.message + "\n" + this.formatStack(arg.stack, opts);
431
- }
432
- return arg;
433
- });
434
- return formatWithOptions(opts, ..._args);
435
- }
436
- formatDate(date, opts) {
437
- return opts.date ? date.toLocaleTimeString() : "";
438
- }
439
- filterAndJoin(arr) {
440
- return arr.filter(Boolean).join(" ");
441
- }
442
- formatLogObj(logObj, opts) {
443
- const message = this.formatArgs(logObj.args, opts);
444
- if (logObj.type === "box") {
445
- return "\n" + [
446
- bracket(logObj.tag),
447
- logObj.title && logObj.title,
448
- ...message.split("\n")
449
- ].filter(Boolean).map((l) => " > " + l).join("\n") + "\n";
450
- }
451
- return this.filterAndJoin([
452
- bracket(logObj.type),
453
- bracket(logObj.tag),
454
- message
455
- ]);
456
- }
457
- log(logObj, ctx) {
458
- const line = this.formatLogObj(logObj, {
459
- columns: ctx.options.stdout.columns || 0,
460
- ...ctx.options.formatOptions
461
- });
462
- return writeStream(
463
- line + "\n",
464
- logObj.level < 2 ? ctx.options.stderr || process.stderr : ctx.options.stdout || process.stdout
465
- );
466
- }
467
- };
468
-
469
- // ../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/utils.mjs
470
- import * as tty from "node:tty";
471
- var {
472
- env = {},
473
- argv = [],
474
- platform = ""
475
- } = typeof process === "undefined" ? {} : process;
476
- var isDisabled = "NO_COLOR" in env || argv.includes("--no-color");
477
- var isForced = "FORCE_COLOR" in env || argv.includes("--color");
478
- var isWindows = platform === "win32";
479
- var isDumbTerminal = env.TERM === "dumb";
480
- var isCompatibleTerminal = tty && tty.isatty && tty.isatty(1) && env.TERM && !isDumbTerminal;
481
- var isCI = "CI" in env && ("GITHUB_ACTIONS" in env || "GITLAB_CI" in env || "CIRCLECI" in env);
482
- var isColorSupported = !isDisabled && (isForced || isWindows && !isDumbTerminal || isCompatibleTerminal || isCI);
483
- function replaceClose(index, string, close, replace, head = string.slice(0, Math.max(0, index)) + replace, tail = string.slice(Math.max(0, index + close.length)), next = tail.indexOf(close)) {
484
- return head + (next < 0 ? tail : replaceClose(next, tail, close, replace));
485
- }
486
- function clearBleed(index, string, open, close, replace) {
487
- return index < 0 ? open + string + close : open + replaceClose(index, string, close, replace) + close;
488
- }
489
- function filterEmpty(open, close, replace = open, at = open.length + 1) {
490
- return (string) => string || !(string === "" || string === void 0) ? clearBleed(
491
- ("" + string).indexOf(close, at),
492
- string,
493
- open,
494
- close,
495
- replace
496
- ) : "";
497
- }
498
- function init(open, close, replace) {
499
- return filterEmpty(`\x1B[${open}m`, `\x1B[${close}m`, replace);
500
- }
501
- var colorDefs = {
502
- reset: init(0, 0),
503
- bold: init(1, 22, "\x1B[22m\x1B[1m"),
504
- dim: init(2, 22, "\x1B[22m\x1B[2m"),
505
- italic: init(3, 23),
506
- underline: init(4, 24),
507
- inverse: init(7, 27),
508
- hidden: init(8, 28),
509
- strikethrough: init(9, 29),
510
- black: init(30, 39),
511
- red: init(31, 39),
512
- green: init(32, 39),
513
- yellow: init(33, 39),
514
- blue: init(34, 39),
515
- magenta: init(35, 39),
516
- cyan: init(36, 39),
517
- white: init(37, 39),
518
- gray: init(90, 39),
519
- bgBlack: init(40, 49),
520
- bgRed: init(41, 49),
521
- bgGreen: init(42, 49),
522
- bgYellow: init(43, 49),
523
- bgBlue: init(44, 49),
524
- bgMagenta: init(45, 49),
525
- bgCyan: init(46, 49),
526
- bgWhite: init(47, 49),
527
- blackBright: init(90, 39),
528
- redBright: init(91, 39),
529
- greenBright: init(92, 39),
530
- yellowBright: init(93, 39),
531
- blueBright: init(94, 39),
532
- magentaBright: init(95, 39),
533
- cyanBright: init(96, 39),
534
- whiteBright: init(97, 39),
535
- bgBlackBright: init(100, 49),
536
- bgRedBright: init(101, 49),
537
- bgGreenBright: init(102, 49),
538
- bgYellowBright: init(103, 49),
539
- bgBlueBright: init(104, 49),
540
- bgMagentaBright: init(105, 49),
541
- bgCyanBright: init(106, 49),
542
- bgWhiteBright: init(107, 49)
543
- };
544
- function createColors(useColor = isColorSupported) {
545
- return useColor ? colorDefs : Object.fromEntries(Object.keys(colorDefs).map((key) => [key, String]));
546
- }
547
- var colors = createColors();
548
- function getColor(color, fallback = "reset") {
549
- return colors[color] || colors[fallback];
550
- }
551
- var ansiRegex = [
552
- "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
553
- "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
554
- ].join("|");
555
- function stripAnsi(text) {
556
- return text.replace(new RegExp(ansiRegex, "g"), "");
557
- }
558
- var boxStylePresets = {
559
- solid: {
560
- tl: "\u250C",
561
- tr: "\u2510",
562
- bl: "\u2514",
563
- br: "\u2518",
564
- h: "\u2500",
565
- v: "\u2502"
566
- },
567
- double: {
568
- tl: "\u2554",
569
- tr: "\u2557",
570
- bl: "\u255A",
571
- br: "\u255D",
572
- h: "\u2550",
573
- v: "\u2551"
574
- },
575
- doubleSingle: {
576
- tl: "\u2553",
577
- tr: "\u2556",
578
- bl: "\u2559",
579
- br: "\u255C",
580
- h: "\u2500",
581
- v: "\u2551"
582
- },
583
- doubleSingleRounded: {
584
- tl: "\u256D",
585
- tr: "\u256E",
586
- bl: "\u2570",
587
- br: "\u256F",
588
- h: "\u2500",
589
- v: "\u2551"
590
- },
591
- singleThick: {
592
- tl: "\u250F",
593
- tr: "\u2513",
594
- bl: "\u2517",
595
- br: "\u251B",
596
- h: "\u2501",
597
- v: "\u2503"
598
- },
599
- singleDouble: {
600
- tl: "\u2552",
601
- tr: "\u2555",
602
- bl: "\u2558",
603
- br: "\u255B",
604
- h: "\u2550",
605
- v: "\u2502"
606
- },
607
- singleDoubleRounded: {
608
- tl: "\u256D",
609
- tr: "\u256E",
610
- bl: "\u2570",
611
- br: "\u256F",
612
- h: "\u2550",
613
- v: "\u2502"
614
- },
615
- rounded: {
616
- tl: "\u256D",
617
- tr: "\u256E",
618
- bl: "\u2570",
619
- br: "\u256F",
620
- h: "\u2500",
621
- v: "\u2502"
622
- }
623
- };
624
- var defaultStyle = {
625
- borderColor: "white",
626
- borderStyle: "rounded",
627
- valign: "center",
628
- padding: 2,
629
- marginLeft: 1,
630
- marginTop: 1,
631
- marginBottom: 1
632
- };
633
- function box(text, _opts = {}) {
634
- const opts = {
635
- ..._opts,
636
- style: {
637
- ...defaultStyle,
638
- ..._opts.style
639
- }
640
- };
641
- const textLines = text.split("\n");
642
- const boxLines = [];
643
- const _color = getColor(opts.style.borderColor);
644
- const borderStyle = {
645
- ...typeof opts.style.borderStyle === "string" ? boxStylePresets[opts.style.borderStyle] || boxStylePresets.solid : opts.style.borderStyle
646
- };
647
- if (_color) {
648
- for (const key in borderStyle) {
649
- borderStyle[key] = _color(
650
- borderStyle[key]
651
- );
652
- }
653
- }
654
- const paddingOffset = opts.style.padding % 2 === 0 ? opts.style.padding : opts.style.padding + 1;
655
- const height = textLines.length + paddingOffset;
656
- const width = Math.max(...textLines.map((line) => line.length)) + paddingOffset;
657
- const widthOffset = width + paddingOffset;
658
- const leftSpace = opts.style.marginLeft > 0 ? " ".repeat(opts.style.marginLeft) : "";
659
- if (opts.style.marginTop > 0) {
660
- boxLines.push("".repeat(opts.style.marginTop));
661
- }
662
- if (opts.title) {
663
- const left = borderStyle.h.repeat(
664
- Math.floor((width - stripAnsi(opts.title).length) / 2)
665
- );
666
- const right = borderStyle.h.repeat(
667
- width - stripAnsi(opts.title).length - stripAnsi(left).length + paddingOffset
668
- );
669
- boxLines.push(
670
- `${leftSpace}${borderStyle.tl}${left}${opts.title}${right}${borderStyle.tr}`
671
- );
672
- } else {
673
- boxLines.push(
674
- `${leftSpace}${borderStyle.tl}${borderStyle.h.repeat(widthOffset)}${borderStyle.tr}`
675
- );
676
- }
677
- const valignOffset = opts.style.valign === "center" ? Math.floor((height - textLines.length) / 2) : opts.style.valign === "top" ? height - textLines.length - paddingOffset : height - textLines.length;
678
- for (let i = 0; i < height; i++) {
679
- if (i < valignOffset || i >= valignOffset + textLines.length) {
680
- boxLines.push(
681
- `${leftSpace}${borderStyle.v}${" ".repeat(widthOffset)}${borderStyle.v}`
682
- );
683
- } else {
684
- const line = textLines[i - valignOffset];
685
- const left = " ".repeat(paddingOffset);
686
- const right = " ".repeat(width - stripAnsi(line).length);
687
- boxLines.push(
688
- `${leftSpace}${borderStyle.v}${left}${line}${right}${borderStyle.v}`
689
- );
690
- }
691
- }
692
- boxLines.push(
693
- `${leftSpace}${borderStyle.bl}${borderStyle.h.repeat(widthOffset)}${borderStyle.br}`
694
- );
695
- if (opts.style.marginBottom > 0) {
696
- boxLines.push("".repeat(opts.style.marginBottom));
697
- }
698
- return boxLines.join("\n");
699
- }
700
-
701
- // ../../node_modules/.pnpm/consola@3.2.3/node_modules/consola/dist/shared/consola.36c0034f.mjs
702
- import process$1 from "node:process";
703
- var providers = [
704
- ["APPVEYOR"],
705
- ["AZURE_PIPELINES", "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI"],
706
- ["AZURE_STATIC", "INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN"],
707
- ["APPCIRCLE", "AC_APPCIRCLE"],
708
- ["BAMBOO", "bamboo_planKey"],
709
- ["BITBUCKET", "BITBUCKET_COMMIT"],
710
- ["BITRISE", "BITRISE_IO"],
711
- ["BUDDY", "BUDDY_WORKSPACE_ID"],
712
- ["BUILDKITE"],
713
- ["CIRCLE", "CIRCLECI"],
714
- ["CIRRUS", "CIRRUS_CI"],
715
- ["CLOUDFLARE_PAGES", "CF_PAGES", { ci: true }],
716
- ["CODEBUILD", "CODEBUILD_BUILD_ARN"],
717
- ["CODEFRESH", "CF_BUILD_ID"],
718
- ["DRONE"],
719
- ["DRONE", "DRONE_BUILD_EVENT"],
720
- ["DSARI"],
721
- ["GITHUB_ACTIONS"],
722
- ["GITLAB", "GITLAB_CI"],
723
- ["GITLAB", "CI_MERGE_REQUEST_ID"],
724
- ["GOCD", "GO_PIPELINE_LABEL"],
725
- ["LAYERCI"],
726
- ["HUDSON", "HUDSON_URL"],
727
- ["JENKINS", "JENKINS_URL"],
728
- ["MAGNUM"],
729
- ["NETLIFY"],
730
- ["NETLIFY", "NETLIFY_LOCAL", { ci: false }],
731
- ["NEVERCODE"],
732
- ["RENDER"],
733
- ["SAIL", "SAILCI"],
734
- ["SEMAPHORE"],
735
- ["SCREWDRIVER"],
736
- ["SHIPPABLE"],
737
- ["SOLANO", "TDDIUM"],
738
- ["STRIDER"],
739
- ["TEAMCITY", "TEAMCITY_VERSION"],
740
- ["TRAVIS"],
741
- ["VERCEL", "NOW_BUILDER"],
742
- ["APPCENTER", "APPCENTER_BUILD_ID"],
743
- ["CODESANDBOX", "CODESANDBOX_SSE", { ci: false }],
744
- ["STACKBLITZ"],
745
- ["STORMKIT"],
746
- ["CLEAVR"]
747
- ];
748
- function detectProvider(env2) {
749
- for (const provider of providers) {
750
- const envName = provider[1] || provider[0];
751
- if (env2[envName]) {
752
- return {
753
- name: provider[0].toLowerCase(),
754
- ...provider[2]
755
- };
756
- }
757
- }
758
- if (env2.SHELL && env2.SHELL === "/bin/jsh") {
759
- return {
760
- name: "stackblitz",
761
- ci: false
762
- };
763
- }
764
- return {
765
- name: "",
766
- ci: false
767
- };
768
- }
769
- var processShim = typeof process !== "undefined" ? process : {};
770
- var envShim = processShim.env || {};
771
- var providerInfo = detectProvider(envShim);
772
- var nodeENV = typeof process !== "undefined" && process.env && process.env.NODE_ENV || "";
773
- processShim.platform;
774
- providerInfo.name;
775
- var isCI2 = toBoolean(envShim.CI) || providerInfo.ci !== false;
776
- var hasTTY = toBoolean(processShim.stdout && processShim.stdout.isTTY);
777
- var isDebug = toBoolean(envShim.DEBUG);
778
- var isTest = nodeENV === "test" || toBoolean(envShim.TEST);
779
- toBoolean(envShim.MINIMAL) || isCI2 || isTest || !hasTTY;
780
- function toBoolean(val) {
781
- return val ? val !== "false" : false;
782
- }
783
- function ansiRegex2({ onlyFirst = false } = {}) {
784
- const pattern = [
785
- "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
786
- "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
787
- ].join("|");
788
- return new RegExp(pattern, onlyFirst ? void 0 : "g");
789
- }
790
- var regex = ansiRegex2();
791
- function stripAnsi2(string) {
792
- if (typeof string !== "string") {
793
- throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
794
- }
795
- return string.replace(regex, "");
796
- }
797
- function getDefaultExportFromCjs(x) {
798
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
799
- }
800
- var eastasianwidth = { exports: {} };
801
- (function(module) {
802
- var eaw = {};
803
- {
804
- module.exports = eaw;
805
- }
806
- eaw.eastAsianWidth = function(character) {
807
- var x = character.charCodeAt(0);
808
- var y = character.length == 2 ? character.charCodeAt(1) : 0;
809
- var codePoint = x;
810
- if (55296 <= x && x <= 56319 && (56320 <= y && y <= 57343)) {
811
- x &= 1023;
812
- y &= 1023;
813
- codePoint = x << 10 | y;
814
- codePoint += 65536;
815
- }
816
- if (12288 == codePoint || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510) {
817
- return "F";
818
- }
819
- if (8361 == codePoint || 65377 <= codePoint && codePoint <= 65470 || 65474 <= codePoint && codePoint <= 65479 || 65482 <= codePoint && codePoint <= 65487 || 65490 <= codePoint && codePoint <= 65495 || 65498 <= codePoint && codePoint <= 65500 || 65512 <= codePoint && codePoint <= 65518) {
820
- return "H";
821
- }
822
- if (4352 <= codePoint && codePoint <= 4447 || 4515 <= codePoint && codePoint <= 4519 || 4602 <= codePoint && codePoint <= 4607 || 9001 <= codePoint && codePoint <= 9002 || 11904 <= codePoint && codePoint <= 11929 || 11931 <= codePoint && codePoint <= 12019 || 12032 <= codePoint && codePoint <= 12245 || 12272 <= codePoint && codePoint <= 12283 || 12289 <= codePoint && codePoint <= 12350 || 12353 <= codePoint && codePoint <= 12438 || 12441 <= codePoint && codePoint <= 12543 || 12549 <= codePoint && codePoint <= 12589 || 12593 <= codePoint && codePoint <= 12686 || 12688 <= codePoint && codePoint <= 12730 || 12736 <= codePoint && codePoint <= 12771 || 12784 <= codePoint && codePoint <= 12830 || 12832 <= codePoint && codePoint <= 12871 || 12880 <= codePoint && codePoint <= 13054 || 13056 <= codePoint && codePoint <= 19903 || 19968 <= codePoint && codePoint <= 42124 || 42128 <= codePoint && codePoint <= 42182 || 43360 <= codePoint && codePoint <= 43388 || 44032 <= codePoint && codePoint <= 55203 || 55216 <= codePoint && codePoint <= 55238 || 55243 <= codePoint && codePoint <= 55291 || 63744 <= codePoint && codePoint <= 64255 || 65040 <= codePoint && codePoint <= 65049 || 65072 <= codePoint && codePoint <= 65106 || 65108 <= codePoint && codePoint <= 65126 || 65128 <= codePoint && codePoint <= 65131 || 110592 <= codePoint && codePoint <= 110593 || 127488 <= codePoint && codePoint <= 127490 || 127504 <= codePoint && codePoint <= 127546 || 127552 <= codePoint && codePoint <= 127560 || 127568 <= codePoint && codePoint <= 127569 || 131072 <= codePoint && codePoint <= 194367 || 177984 <= codePoint && codePoint <= 196605 || 196608 <= codePoint && codePoint <= 262141) {
823
- return "W";
824
- }
825
- if (32 <= codePoint && codePoint <= 126 || 162 <= codePoint && codePoint <= 163 || 165 <= codePoint && codePoint <= 166 || 172 == codePoint || 175 == codePoint || 10214 <= codePoint && codePoint <= 10221 || 10629 <= codePoint && codePoint <= 10630) {
826
- return "Na";
827
- }
828
- if (161 == codePoint || 164 == codePoint || 167 <= codePoint && codePoint <= 168 || 170 == codePoint || 173 <= codePoint && codePoint <= 174 || 176 <= codePoint && codePoint <= 180 || 182 <= codePoint && codePoint <= 186 || 188 <= codePoint && codePoint <= 191 || 198 == codePoint || 208 == codePoint || 215 <= codePoint && codePoint <= 216 || 222 <= codePoint && codePoint <= 225 || 230 == codePoint || 232 <= codePoint && codePoint <= 234 || 236 <= codePoint && codePoint <= 237 || 240 == codePoint || 242 <= codePoint && codePoint <= 243 || 247 <= codePoint && codePoint <= 250 || 252 == codePoint || 254 == codePoint || 257 == codePoint || 273 == codePoint || 275 == codePoint || 283 == codePoint || 294 <= codePoint && codePoint <= 295 || 299 == codePoint || 305 <= codePoint && codePoint <= 307 || 312 == codePoint || 319 <= codePoint && codePoint <= 322 || 324 == codePoint || 328 <= codePoint && codePoint <= 331 || 333 == codePoint || 338 <= codePoint && codePoint <= 339 || 358 <= codePoint && codePoint <= 359 || 363 == codePoint || 462 == codePoint || 464 == codePoint || 466 == codePoint || 468 == codePoint || 470 == codePoint || 472 == codePoint || 474 == codePoint || 476 == codePoint || 593 == codePoint || 609 == codePoint || 708 == codePoint || 711 == codePoint || 713 <= codePoint && codePoint <= 715 || 717 == codePoint || 720 == codePoint || 728 <= codePoint && codePoint <= 731 || 733 == codePoint || 735 == codePoint || 768 <= codePoint && codePoint <= 879 || 913 <= codePoint && codePoint <= 929 || 931 <= codePoint && codePoint <= 937 || 945 <= codePoint && codePoint <= 961 || 963 <= codePoint && codePoint <= 969 || 1025 == codePoint || 1040 <= codePoint && codePoint <= 1103 || 1105 == codePoint || 8208 == codePoint || 8211 <= codePoint && codePoint <= 8214 || 8216 <= codePoint && codePoint <= 8217 || 8220 <= codePoint && codePoint <= 8221 || 8224 <= codePoint && codePoint <= 8226 || 8228 <= codePoint && codePoint <= 8231 || 8240 == codePoint || 8242 <= codePoint && codePoint <= 8243 || 8245 == codePoint || 8251 == codePoint || 8254 == codePoint || 8308 == codePoint || 8319 == codePoint || 8321 <= codePoint && codePoint <= 8324 || 8364 == codePoint || 8451 == codePoint || 8453 == codePoint || 8457 == codePoint || 8467 == codePoint || 8470 == codePoint || 8481 <= codePoint && codePoint <= 8482 || 8486 == codePoint || 8491 == codePoint || 8531 <= codePoint && codePoint <= 8532 || 8539 <= codePoint && codePoint <= 8542 || 8544 <= codePoint && codePoint <= 8555 || 8560 <= codePoint && codePoint <= 8569 || 8585 == codePoint || 8592 <= codePoint && codePoint <= 8601 || 8632 <= codePoint && codePoint <= 8633 || 8658 == codePoint || 8660 == codePoint || 8679 == codePoint || 8704 == codePoint || 8706 <= codePoint && codePoint <= 8707 || 8711 <= codePoint && codePoint <= 8712 || 8715 == codePoint || 8719 == codePoint || 8721 == codePoint || 8725 == codePoint || 8730 == codePoint || 8733 <= codePoint && codePoint <= 8736 || 8739 == codePoint || 8741 == codePoint || 8743 <= codePoint && codePoint <= 8748 || 8750 == codePoint || 8756 <= codePoint && codePoint <= 8759 || 8764 <= codePoint && codePoint <= 8765 || 8776 == codePoint || 8780 == codePoint || 8786 == codePoint || 8800 <= codePoint && codePoint <= 8801 || 8804 <= codePoint && codePoint <= 8807 || 8810 <= codePoint && codePoint <= 8811 || 8814 <= codePoint && codePoint <= 8815 || 8834 <= codePoint && codePoint <= 8835 || 8838 <= codePoint && codePoint <= 8839 || 8853 == codePoint || 8857 == codePoint || 8869 == codePoint || 8895 == codePoint || 8978 == codePoint || 9312 <= codePoint && codePoint <= 9449 || 9451 <= codePoint && codePoint <= 9547 || 9552 <= codePoint && codePoint <= 9587 || 9600 <= codePoint && codePoint <= 9615 || 9618 <= codePoint && codePoint <= 9621 || 9632 <= codePoint && codePoint <= 9633 || 9635 <= codePoint && codePoint <= 9641 || 9650 <= codePoint && codePoint <= 9651 || 9654 <= codePoint && codePoint <= 9655 || 9660 <= codePoint && codePoint <= 9661 || 9664 <= codePoint && codePoint <= 9665 || 9670 <= codePoint && codePoint <= 9672 || 9675 == codePoint || 9678 <= codePoint && codePoint <= 9681 || 9698 <= codePoint && codePoint <= 9701 || 9711 == codePoint || 9733 <= codePoint && codePoint <= 9734 || 9737 == codePoint || 9742 <= codePoint && codePoint <= 9743 || 9748 <= codePoint && codePoint <= 9749 || 9756 == codePoint || 9758 == codePoint || 9792 == codePoint || 9794 == codePoint || 9824 <= codePoint && codePoint <= 9825 || 9827 <= codePoint && codePoint <= 9829 || 9831 <= codePoint && codePoint <= 9834 || 9836 <= codePoint && codePoint <= 9837 || 9839 == codePoint || 9886 <= codePoint && codePoint <= 9887 || 9918 <= codePoint && codePoint <= 9919 || 9924 <= codePoint && codePoint <= 9933 || 9935 <= codePoint && codePoint <= 9953 || 9955 == codePoint || 9960 <= codePoint && codePoint <= 9983 || 10045 == codePoint || 10071 == codePoint || 10102 <= codePoint && codePoint <= 10111 || 11093 <= codePoint && codePoint <= 11097 || 12872 <= codePoint && codePoint <= 12879 || 57344 <= codePoint && codePoint <= 63743 || 65024 <= codePoint && codePoint <= 65039 || 65533 == codePoint || 127232 <= codePoint && codePoint <= 127242 || 127248 <= codePoint && codePoint <= 127277 || 127280 <= codePoint && codePoint <= 127337 || 127344 <= codePoint && codePoint <= 127386 || 917760 <= codePoint && codePoint <= 917999 || 983040 <= codePoint && codePoint <= 1048573 || 1048576 <= codePoint && codePoint <= 1114109) {
829
- return "A";
830
- }
831
- return "N";
832
- };
833
- eaw.characterLength = function(character) {
834
- var code = this.eastAsianWidth(character);
835
- if (code == "F" || code == "W" || code == "A") {
836
- return 2;
837
- } else {
838
- return 1;
839
- }
840
- };
841
- function stringToArray(string) {
842
- return string.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
843
- }
844
- eaw.length = function(string) {
845
- var characters = stringToArray(string);
846
- var len = 0;
847
- for (var i = 0; i < characters.length; i++) {
848
- len = len + this.characterLength(characters[i]);
849
- }
850
- return len;
851
- };
852
- eaw.slice = function(text, start, end) {
853
- textLen = eaw.length(text);
854
- start = start ? start : 0;
855
- end = end ? end : 1;
856
- if (start < 0) {
857
- start = textLen + start;
858
- }
859
- if (end < 0) {
860
- end = textLen + end;
861
- }
862
- var result = "";
863
- var eawLen = 0;
864
- var chars = stringToArray(text);
865
- for (var i = 0; i < chars.length; i++) {
866
- var char = chars[i];
867
- var charLen = eaw.length(char);
868
- if (eawLen >= start - (charLen == 2 ? 1 : 0)) {
869
- if (eawLen + charLen <= end) {
870
- result += char;
871
- } else {
872
- break;
873
- }
874
- }
875
- eawLen += charLen;
876
- }
877
- return result;
878
- };
879
- })(eastasianwidth);
880
- var eastasianwidthExports = eastasianwidth.exports;
881
- var eastAsianWidth = /* @__PURE__ */ getDefaultExportFromCjs(eastasianwidthExports);
882
- var emojiRegex = () => {
883
- return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC3\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
884
- };
885
- function stringWidth$1(string, options) {
886
- if (typeof string !== "string" || string.length === 0) {
887
- return 0;
888
- }
889
- options = {
890
- ambiguousIsNarrow: true,
891
- countAnsiEscapeCodes: false,
892
- ...options
893
- };
894
- if (!options.countAnsiEscapeCodes) {
895
- string = stripAnsi2(string);
896
- }
897
- if (string.length === 0) {
898
- return 0;
899
- }
900
- const ambiguousCharacterWidth = options.ambiguousIsNarrow ? 1 : 2;
901
- let width = 0;
902
- for (const { segment: character } of new Intl.Segmenter().segment(string)) {
903
- const codePoint = character.codePointAt(0);
904
- if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
905
- continue;
906
- }
907
- if (codePoint >= 768 && codePoint <= 879) {
908
- continue;
909
- }
910
- if (emojiRegex().test(character)) {
911
- width += 2;
912
- continue;
913
- }
914
- const code = eastAsianWidth.eastAsianWidth(character);
915
- switch (code) {
916
- case "F":
917
- case "W": {
918
- width += 2;
919
- break;
920
- }
921
- case "A": {
922
- width += ambiguousCharacterWidth;
923
- break;
924
- }
925
- default: {
926
- width += 1;
927
- }
928
- }
929
- }
930
- return width;
931
- }
932
- function isUnicodeSupported() {
933
- if (process$1.platform !== "win32") {
934
- return process$1.env.TERM !== "linux";
935
- }
936
- return Boolean(process$1.env.CI) || Boolean(process$1.env.WT_SESSION) || Boolean(process$1.env.TERMINUS_SUBLIME) || process$1.env.ConEmuTask === "{cmd::Cmder}" || process$1.env.TERM_PROGRAM === "Terminus-Sublime" || process$1.env.TERM_PROGRAM === "vscode" || process$1.env.TERM === "xterm-256color" || process$1.env.TERM === "alacritty" || process$1.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
937
- }
938
- var TYPE_COLOR_MAP = {
939
- info: "cyan",
940
- fail: "red",
941
- success: "green",
942
- ready: "green",
943
- start: "magenta"
944
- };
945
- var LEVEL_COLOR_MAP = {
946
- 0: "red",
947
- 1: "yellow"
948
- };
949
- var unicode = isUnicodeSupported();
950
- var s = (c, fallback) => unicode ? c : fallback;
951
- var TYPE_ICONS = {
952
- error: s("\u2716", "\xD7"),
953
- fatal: s("\u2716", "\xD7"),
954
- ready: s("\u2714", "\u221A"),
955
- warn: s("\u26A0", "\u203C"),
956
- info: s("\u2139", "i"),
957
- success: s("\u2714", "\u221A"),
958
- debug: s("\u2699", "D"),
959
- trace: s("\u2192", "\u2192"),
960
- fail: s("\u2716", "\xD7"),
961
- start: s("\u25D0", "o"),
962
- log: ""
963
- };
964
- function stringWidth(str) {
965
- if (!Intl.Segmenter) {
966
- return stripAnsi(str).length;
967
- }
968
- return stringWidth$1(str);
969
- }
970
- var FancyReporter = class extends BasicReporter {
971
- formatStack(stack) {
972
- return "\n" + parseStack(stack).map(
973
- (line) => " " + line.replace(/^at +/, (m) => colors.gray(m)).replace(/\((.+)\)/, (_, m) => `(${colors.cyan(m)})`)
974
- ).join("\n");
975
- }
976
- formatType(logObj, isBadge, opts) {
977
- const typeColor = TYPE_COLOR_MAP[logObj.type] || LEVEL_COLOR_MAP[logObj.level] || "gray";
978
- if (isBadge) {
979
- return getBgColor(typeColor)(
980
- colors.black(` ${logObj.type.toUpperCase()} `)
981
- );
982
- }
983
- const _type = typeof TYPE_ICONS[logObj.type] === "string" ? TYPE_ICONS[logObj.type] : logObj.icon || logObj.type;
984
- return _type ? getColor2(typeColor)(_type) : "";
985
- }
986
- formatLogObj(logObj, opts) {
987
- const [message, ...additional] = this.formatArgs(logObj.args, opts).split(
988
- "\n"
989
- );
990
- if (logObj.type === "box") {
991
- return box(
992
- characterFormat(
993
- message + (additional.length > 0 ? "\n" + additional.join("\n") : "")
994
- ),
995
- {
996
- title: logObj.title ? characterFormat(logObj.title) : void 0,
997
- style: logObj.style
998
- }
999
- );
1000
- }
1001
- const date = this.formatDate(logObj.date, opts);
1002
- const coloredDate = date && colors.gray(date);
1003
- const isBadge = logObj.badge ?? logObj.level < 2;
1004
- const type = this.formatType(logObj, isBadge, opts);
1005
- const tag = logObj.tag ? colors.gray(logObj.tag) : "";
1006
- let line;
1007
- const left = this.filterAndJoin([type, characterFormat(message)]);
1008
- const right = this.filterAndJoin(opts.columns ? [tag, coloredDate] : [tag]);
1009
- const space = (opts.columns || 0) - stringWidth(left) - stringWidth(right) - 2;
1010
- line = space > 0 && (opts.columns || 0) >= 80 ? left + " ".repeat(space) + right : (right ? `${colors.gray(`[${right}]`)} ` : "") + left;
1011
- line += characterFormat(
1012
- additional.length > 0 ? "\n" + additional.join("\n") : ""
1013
- );
1014
- if (logObj.type === "trace") {
1015
- const _err = new Error("Trace: " + logObj.message);
1016
- line += this.formatStack(_err.stack || "");
1017
- }
1018
- return isBadge ? "\n" + line + "\n" : line;
1019
- }
1020
- };
1021
- function characterFormat(str) {
1022
- return str.replace(/`([^`]+)`/gm, (_, m) => colors.cyan(m)).replace(/\s+_([^_]+)_\s+/gm, (_, m) => ` ${colors.underline(m)} `);
1023
- }
1024
- function getColor2(color = "white") {
1025
- return colors[color] || colors.white;
1026
- }
1027
- function getBgColor(color = "bgWhite") {
1028
- return colors[`bg${color[0].toUpperCase()}${color.slice(1)}`] || colors.bgWhite;
1029
- }
1030
- function createConsola2(options = {}) {
1031
- let level = _getDefaultLogLevel();
1032
- if (process.env.CONSOLA_LEVEL) {
1033
- level = Number.parseInt(process.env.CONSOLA_LEVEL) ?? level;
1034
- }
1035
- const consola2 = createConsola({
1036
- level,
1037
- defaults: { level },
1038
- stdout: process.stdout,
1039
- stderr: process.stderr,
1040
- prompt: (...args) => import("./prompt-EYFUFJSI.js").then((m) => m.prompt(...args)),
1041
- reporters: options.reporters || [
1042
- options.fancy ?? !(isCI2 || isTest) ? new FancyReporter() : new BasicReporter()
1043
- ],
1044
- ...options
1045
- });
1046
- return consola2;
1047
- }
1048
- function _getDefaultLogLevel() {
1049
- if (isDebug) {
1050
- return LogLevels.debug;
1051
- }
1052
- if (isTest) {
1053
- return LogLevels.warn;
1054
- }
1055
- return LogLevels.info;
1056
- }
1057
- var consola = createConsola2();
1058
-
1059
- export {
1060
- colors,
1061
- getDefaultExportFromCjs,
1062
- isUnicodeSupported,
1063
- consola
1064
- };