generator-reshow 0.18.9 → 0.19.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 (65) hide show
  1. package/README.md +1 -1
  2. package/generators/app/index.js +2340 -43
  3. package/generators/app/templates/index.tpl +1 -1
  4. package/generators/babel-package-json/index.js +2294 -0
  5. package/generators/bun/index.js +2258 -0
  6. package/generators/bun/templates/README.md +16 -0
  7. package/generators/bun/templates/_gitignore +8 -0
  8. package/generators/bun/templates/src/index.js +7 -0
  9. package/generators/bun/templates/src/init.js +8 -0
  10. package/generators/bun/templates/tsconfig.json +34 -0
  11. package/generators/bun-package-json/index.js +2205 -0
  12. package/generators/compile-sh/index.js +2140 -8
  13. package/generators/docker/index.js +2172 -52
  14. package/generators/generator/index.js +2149 -46
  15. package/generators/gitlab-docker/index.js +2227 -42
  16. package/generators/hono/index.js +2297 -0
  17. package/generators/hono/templates/src/index.ts +10 -0
  18. package/generators/npm/index.js +2327 -49
  19. package/generators/package-json/index.js +2149 -92
  20. package/generators/package-json/templates/package.json +4 -28
  21. package/generators/types/app/__tests__/App.test.d.ts +8 -0
  22. package/generators/types/app/index.d.ts +32 -0
  23. package/generators/types/babel-package-json/__tests__/babel-package-json.test.d.ts +8 -0
  24. package/generators/types/babel-package-json/index.d.ts +8 -0
  25. package/generators/types/bun/__tests__/bun.test.d.ts +8 -0
  26. package/generators/types/bun/index.d.ts +27 -0
  27. package/generators/types/bun-package-json/__tests__/bun-package-json.test.d.ts +8 -0
  28. package/generators/types/bun-package-json/index.d.ts +8 -0
  29. package/generators/types/compile-sh/__tests__/compile-sh.test.d.ts +8 -0
  30. package/generators/types/compile-sh/index.d.ts +7 -0
  31. package/generators/types/docker/__tests__/docker.test.d.ts +8 -0
  32. package/generators/types/docker/commonDockerPrompt.d.ts +7 -0
  33. package/generators/types/docker/index.d.ts +27 -0
  34. package/generators/types/generator/__tests__/generator.test.d.ts +8 -0
  35. package/generators/types/generator/index.d.ts +27 -0
  36. package/generators/types/gitlab-docker/__tests__/gitlab-docker.test.d.ts +8 -0
  37. package/generators/types/gitlab-docker/index.d.ts +27 -0
  38. package/generators/types/hono/__tests__/hono.test.d.ts +8 -0
  39. package/generators/types/hono/index.d.ts +10 -0
  40. package/generators/types/npm/__tests__/npm.test.d.ts +8 -0
  41. package/generators/types/npm/index.d.ts +27 -0
  42. package/generators/types/package-json/__tests__/package-json.test.d.ts +8 -0
  43. package/generators/types/package-json/index.d.ts +7 -0
  44. package/generators/types/update-esm-export/__tests__/update-esm-export.test.d.ts +8 -0
  45. package/generators/types/update-esm-export/index.d.ts +27 -0
  46. package/generators/update-esm-export/index.js +2172 -67
  47. package/package.json +16 -11
  48. package/generators/app/README.md +0 -4
  49. package/generators/app/__tests__/TestApp.js +0 -43
  50. package/generators/compile-sh/README.md +0 -8
  51. package/generators/compile-sh/__tests__/Test.js +0 -43
  52. package/generators/docker/README.md +0 -24
  53. package/generators/docker/__tests__/Test.js +0 -42
  54. package/generators/docker/commonDockerPrompt.js +0 -24
  55. package/generators/generator/README.md +0 -9
  56. package/generators/generator/__tests__/TestGenerator.js +0 -42
  57. package/generators/gitlab-docker/README.md +0 -9
  58. package/generators/gitlab-docker/__tests__/Test.js +0 -44
  59. package/generators/npm/README.md +0 -9
  60. package/generators/npm/__tests__/Test.js +0 -46
  61. package/generators/package-json/README.md +0 -9
  62. package/generators/package-json/__tests__/Test.js +0 -45
  63. package/generators/update-esm-export/README.md +0 -9
  64. package/generators/update-esm-export/__tests__/Test.js +0 -43
  65. /package/generators/{package-json → babel-package-json}/templates/.yo +0 -0
@@ -0,0 +1,2294 @@
1
+ var __create = Object.create;
2
+ var __getProtoOf = Object.getPrototypeOf;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ function __accessProp(key) {
8
+ return this[key];
9
+ }
10
+ var __toESMCache_node;
11
+ var __toESMCache_esm;
12
+ var __toESM = (mod, isNodeMode, target) => {
13
+ var canCache = mod != null && typeof mod === "object";
14
+ if (canCache) {
15
+ var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
16
+ var cached = cache.get(mod);
17
+ if (cached)
18
+ return cached;
19
+ }
20
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
21
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
22
+ for (let key of __getOwnPropNames(mod))
23
+ if (!__hasOwnProp.call(to, key))
24
+ __defProp(to, key, {
25
+ get: __accessProp.bind(mod, key),
26
+ enumerable: true
27
+ });
28
+ if (canCache)
29
+ cache.set(mod, to);
30
+ return to;
31
+ };
32
+ var __toCommonJS = (from) => {
33
+ var entry = (__moduleCache ??= new WeakMap).get(from), desc;
34
+ if (entry)
35
+ return entry;
36
+ entry = __defProp({}, "__esModule", { value: true });
37
+ if (from && typeof from === "object" || typeof from === "function") {
38
+ for (var key of __getOwnPropNames(from))
39
+ if (!__hasOwnProp.call(entry, key))
40
+ __defProp(entry, key, {
41
+ get: __accessProp.bind(from, key),
42
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
43
+ });
44
+ }
45
+ __moduleCache.set(from, entry);
46
+ return entry;
47
+ };
48
+ var __moduleCache;
49
+ var __returnValue = (v) => v;
50
+ function __exportSetter(name, newValue) {
51
+ this[name] = __returnValue.bind(null, newValue);
52
+ }
53
+ var __export = (target, all) => {
54
+ for (var name in all)
55
+ __defProp(target, name, {
56
+ get: all[name],
57
+ enumerable: true,
58
+ configurable: true,
59
+ set: __exportSetter.bind(all, name)
60
+ });
61
+ };
62
+
63
+ // src/package-json/index.ts
64
+ var exports_package_json = {};
65
+ __export(exports_package_json, {
66
+ default: () => package_json_default
67
+ });
68
+ module.exports = __toCommonJS(exports_package_json);
69
+
70
+ // ../yo-reshow/dist/index.js
71
+ var import_node_module = require("node:module");
72
+ var import_yeoman_generator = __toESM(require("yeoman-generator"));
73
+ var PATH4 = __toESM(require("path"));
74
+ var PATH = __toESM(require("path"));
75
+ var FS = __toESM(require("fs"));
76
+ var FS2 = __toESM(require("fs"));
77
+ var FS3 = __toESM(require("fs"));
78
+ var import_node_process = __toESM(require("node:process"));
79
+ var import_node_os = __toESM(require("node:os"));
80
+ var import_node_tty = __toESM(require("node:tty"));
81
+ var import_path = require("path");
82
+ var import_fs = require("fs");
83
+ var import_path2 = require("path");
84
+ var import_path3 = require("path");
85
+ var import_path4 = require("path");
86
+ var import_fs2 = require("fs");
87
+ var FS4 = __toESM(require("fs"));
88
+ var PATH2 = __toESM(require("path"));
89
+ var PATH3 = __toESM(require("path"));
90
+ var OS = __toESM(require("os"));
91
+ var import_parse_ini_string = __toESM(require("parse-ini-string"));
92
+ var FS5 = __toESM(require("fs"));
93
+ var fs = __toESM(require("fs"));
94
+ var path = __toESM(require("path"));
95
+ var __create2 = Object.create;
96
+ var __getProtoOf2 = Object.getPrototypeOf;
97
+ var __defProp2 = Object.defineProperty;
98
+ var __getOwnPropNames2 = Object.getOwnPropertyNames;
99
+ var __hasOwnProp2 = Object.prototype.hasOwnProperty;
100
+ function __accessProp2(key) {
101
+ return this[key];
102
+ }
103
+ var __toESMCache_node2;
104
+ var __toESMCache_esm2;
105
+ var __toESM2 = (mod, isNodeMode, target) => {
106
+ var canCache = mod != null && typeof mod === "object";
107
+ if (canCache) {
108
+ var cache = isNodeMode ? __toESMCache_node2 ??= new WeakMap : __toESMCache_esm2 ??= new WeakMap;
109
+ var cached = cache.get(mod);
110
+ if (cached)
111
+ return cached;
112
+ }
113
+ target = mod != null ? __create2(__getProtoOf2(mod)) : {};
114
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target;
115
+ for (let key of __getOwnPropNames2(mod))
116
+ if (!__hasOwnProp2.call(to, key))
117
+ __defProp2(to, key, {
118
+ get: __accessProp2.bind(mod, key),
119
+ enumerable: true
120
+ });
121
+ if (canCache)
122
+ cache.set(mod, to);
123
+ return to;
124
+ };
125
+ var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
126
+ var __require = /* @__PURE__ */ import_node_module.createRequire("file:///Volumes/GoldenSnake/git/yo-modality/yo-reshow/dist/index.js");
127
+ var require_pad_component = __commonJS((exports2, module2) => {
128
+ exports2 = module2.exports = pad;
129
+ function pad(str, len, c) {
130
+ c = c || " ";
131
+ if (str.length >= len)
132
+ return str;
133
+ len = len - str.length;
134
+ var left = Array(Math.ceil(len / 2) + 1).join(c);
135
+ var right = Array(Math.floor(len / 2) + 1).join(c);
136
+ return left + str + right;
137
+ }
138
+ exports2.left = function(str, len, c) {
139
+ c = c || " ";
140
+ if (str.length >= len)
141
+ return str;
142
+ return Array(len - str.length + 1).join(c) + str;
143
+ };
144
+ exports2.right = function(str, len, c) {
145
+ c = c || " ";
146
+ if (str.length >= len)
147
+ return str;
148
+ return str + Array(len - str.length + 1).join(c);
149
+ };
150
+ });
151
+ var require_eastasianwidth = __commonJS((exports2, module2) => {
152
+ var eaw = {};
153
+ if (typeof module2 == "undefined") {
154
+ window.eastasianwidth = eaw;
155
+ } else {
156
+ module2.exports = eaw;
157
+ }
158
+ eaw.eastAsianWidth = function(character) {
159
+ var x = character.charCodeAt(0);
160
+ var y = character.length == 2 ? character.charCodeAt(1) : 0;
161
+ var codePoint = x;
162
+ if (55296 <= x && x <= 56319 && (56320 <= y && y <= 57343)) {
163
+ x &= 1023;
164
+ y &= 1023;
165
+ codePoint = x << 10 | y;
166
+ codePoint += 65536;
167
+ }
168
+ if (codePoint == 12288 || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510) {
169
+ return "F";
170
+ }
171
+ if (codePoint == 8361 || 65377 <= codePoint && codePoint <= 65470 || 65474 <= codePoint && codePoint <= 65479 || 65482 <= codePoint && codePoint <= 65487 || 65490 <= codePoint && codePoint <= 65495 || 65498 <= codePoint && codePoint <= 65500 || 65512 <= codePoint && codePoint <= 65518) {
172
+ return "H";
173
+ }
174
+ 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) {
175
+ return "W";
176
+ }
177
+ if (32 <= codePoint && codePoint <= 126 || 162 <= codePoint && codePoint <= 163 || 165 <= codePoint && codePoint <= 166 || codePoint == 172 || codePoint == 175 || 10214 <= codePoint && codePoint <= 10221 || 10629 <= codePoint && codePoint <= 10630) {
178
+ return "Na";
179
+ }
180
+ if (codePoint == 161 || codePoint == 164 || 167 <= codePoint && codePoint <= 168 || codePoint == 170 || 173 <= codePoint && codePoint <= 174 || 176 <= codePoint && codePoint <= 180 || 182 <= codePoint && codePoint <= 186 || 188 <= codePoint && codePoint <= 191 || codePoint == 198 || codePoint == 208 || 215 <= codePoint && codePoint <= 216 || 222 <= codePoint && codePoint <= 225 || codePoint == 230 || 232 <= codePoint && codePoint <= 234 || 236 <= codePoint && codePoint <= 237 || codePoint == 240 || 242 <= codePoint && codePoint <= 243 || 247 <= codePoint && codePoint <= 250 || codePoint == 252 || codePoint == 254 || codePoint == 257 || codePoint == 273 || codePoint == 275 || codePoint == 283 || 294 <= codePoint && codePoint <= 295 || codePoint == 299 || 305 <= codePoint && codePoint <= 307 || codePoint == 312 || 319 <= codePoint && codePoint <= 322 || codePoint == 324 || 328 <= codePoint && codePoint <= 331 || codePoint == 333 || 338 <= codePoint && codePoint <= 339 || 358 <= codePoint && codePoint <= 359 || codePoint == 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 || 713 <= codePoint && codePoint <= 715 || codePoint == 717 || codePoint == 720 || 728 <= codePoint && codePoint <= 731 || codePoint == 733 || codePoint == 735 || 768 <= codePoint && codePoint <= 879 || 913 <= codePoint && codePoint <= 929 || 931 <= codePoint && codePoint <= 937 || 945 <= codePoint && codePoint <= 961 || 963 <= codePoint && codePoint <= 969 || codePoint == 1025 || 1040 <= codePoint && codePoint <= 1103 || codePoint == 1105 || codePoint == 8208 || 8211 <= codePoint && codePoint <= 8214 || 8216 <= codePoint && codePoint <= 8217 || 8220 <= codePoint && codePoint <= 8221 || 8224 <= codePoint && codePoint <= 8226 || 8228 <= codePoint && codePoint <= 8231 || codePoint == 8240 || 8242 <= codePoint && codePoint <= 8243 || codePoint == 8245 || codePoint == 8251 || codePoint == 8254 || codePoint == 8308 || codePoint == 8319 || 8321 <= codePoint && codePoint <= 8324 || codePoint == 8364 || codePoint == 8451 || codePoint == 8453 || codePoint == 8457 || codePoint == 8467 || codePoint == 8470 || 8481 <= codePoint && codePoint <= 8482 || codePoint == 8486 || codePoint == 8491 || 8531 <= codePoint && codePoint <= 8532 || 8539 <= codePoint && codePoint <= 8542 || 8544 <= codePoint && codePoint <= 8555 || 8560 <= codePoint && codePoint <= 8569 || codePoint == 8585 || 8592 <= codePoint && codePoint <= 8601 || 8632 <= codePoint && codePoint <= 8633 || codePoint == 8658 || codePoint == 8660 || codePoint == 8679 || codePoint == 8704 || 8706 <= codePoint && codePoint <= 8707 || 8711 <= codePoint && codePoint <= 8712 || codePoint == 8715 || codePoint == 8719 || codePoint == 8721 || codePoint == 8725 || codePoint == 8730 || 8733 <= codePoint && codePoint <= 8736 || codePoint == 8739 || codePoint == 8741 || 8743 <= codePoint && codePoint <= 8748 || codePoint == 8750 || 8756 <= codePoint && codePoint <= 8759 || 8764 <= codePoint && codePoint <= 8765 || codePoint == 8776 || codePoint == 8780 || codePoint == 8786 || 8800 <= codePoint && codePoint <= 8801 || 8804 <= codePoint && codePoint <= 8807 || 8810 <= codePoint && codePoint <= 8811 || 8814 <= codePoint && codePoint <= 8815 || 8834 <= codePoint && codePoint <= 8835 || 8838 <= codePoint && codePoint <= 8839 || codePoint == 8853 || codePoint == 8857 || codePoint == 8869 || codePoint == 8895 || codePoint == 8978 || 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 || codePoint == 9675 || 9678 <= codePoint && codePoint <= 9681 || 9698 <= codePoint && codePoint <= 9701 || codePoint == 9711 || 9733 <= codePoint && codePoint <= 9734 || codePoint == 9737 || 9742 <= codePoint && codePoint <= 9743 || 9748 <= codePoint && codePoint <= 9749 || codePoint == 9756 || codePoint == 9758 || codePoint == 9792 || codePoint == 9794 || 9824 <= codePoint && codePoint <= 9825 || 9827 <= codePoint && codePoint <= 9829 || 9831 <= codePoint && codePoint <= 9834 || 9836 <= codePoint && codePoint <= 9837 || codePoint == 9839 || 9886 <= codePoint && codePoint <= 9887 || 9918 <= codePoint && codePoint <= 9919 || 9924 <= codePoint && codePoint <= 9933 || 9935 <= codePoint && codePoint <= 9953 || codePoint == 9955 || 9960 <= codePoint && codePoint <= 9983 || codePoint == 10045 || codePoint == 10071 || 10102 <= codePoint && codePoint <= 10111 || 11093 <= codePoint && codePoint <= 11097 || 12872 <= codePoint && codePoint <= 12879 || 57344 <= codePoint && codePoint <= 63743 || 65024 <= codePoint && codePoint <= 65039 || codePoint == 65533 || 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) {
181
+ return "A";
182
+ }
183
+ return "N";
184
+ };
185
+ eaw.characterLength = function(character) {
186
+ var code = this.eastAsianWidth(character);
187
+ if (code == "F" || code == "W" || code == "A") {
188
+ return 2;
189
+ } else {
190
+ return 1;
191
+ }
192
+ };
193
+ function stringToArray(string) {
194
+ return string.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
195
+ }
196
+ eaw.length = function(string) {
197
+ var characters = stringToArray(string);
198
+ var len = 0;
199
+ for (var i = 0;i < characters.length; i++) {
200
+ len = len + this.characterLength(characters[i]);
201
+ }
202
+ return len;
203
+ };
204
+ eaw.slice = function(text, start, end) {
205
+ textLen = eaw.length(text);
206
+ start = start ? start : 0;
207
+ end = end ? end : 1;
208
+ if (start < 0) {
209
+ start = textLen + start;
210
+ }
211
+ if (end < 0) {
212
+ end = textLen + end;
213
+ }
214
+ var result = "";
215
+ var eawLen = 0;
216
+ var chars = stringToArray(text);
217
+ for (var i = 0;i < chars.length; i++) {
218
+ var char = chars[i];
219
+ var charLen = eaw.length(char);
220
+ if (eawLen >= start - (charLen == 2 ? 1 : 0)) {
221
+ if (eawLen + charLen <= end) {
222
+ result += char;
223
+ } else {
224
+ break;
225
+ }
226
+ }
227
+ eawLen += charLen;
228
+ }
229
+ return result;
230
+ };
231
+ });
232
+ var require_emoji_regex = __commonJS((exports2, module2) => {
233
+ module2.exports = function() {
234
+ return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\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|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\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]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\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]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\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\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
235
+ };
236
+ });
237
+ var require_emoji_regex2 = __commonJS((exports2, module2) => {
238
+ module2.exports = () => {
239
+ 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\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](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\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]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\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])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\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-\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]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\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(?:[\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-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\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\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\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]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\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]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\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]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\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]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\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]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\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\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\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]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\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]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\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]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\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]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\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]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\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\uDD3C-\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-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\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\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\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]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\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]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\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]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\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]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\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]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\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;
240
+ };
241
+ });
242
+ var require_boxes = __commonJS((exports2, module2) => {
243
+ module2.exports = {
244
+ single: {
245
+ topLeft: "┌",
246
+ top: "─",
247
+ topRight: "┐",
248
+ right: "│",
249
+ bottomRight: "┘",
250
+ bottom: "─",
251
+ bottomLeft: "└",
252
+ left: "│"
253
+ },
254
+ double: {
255
+ topLeft: "╔",
256
+ top: "═",
257
+ topRight: "╗",
258
+ right: "║",
259
+ bottomRight: "╝",
260
+ bottom: "═",
261
+ bottomLeft: "╚",
262
+ left: "║"
263
+ },
264
+ round: {
265
+ topLeft: "╭",
266
+ top: "─",
267
+ topRight: "╮",
268
+ right: "│",
269
+ bottomRight: "╯",
270
+ bottom: "─",
271
+ bottomLeft: "╰",
272
+ left: "│"
273
+ },
274
+ bold: {
275
+ topLeft: "┏",
276
+ top: "━",
277
+ topRight: "┓",
278
+ right: "┃",
279
+ bottomRight: "┛",
280
+ bottom: "━",
281
+ bottomLeft: "┗",
282
+ left: "┃"
283
+ },
284
+ singleDouble: {
285
+ topLeft: "╓",
286
+ top: "─",
287
+ topRight: "╖",
288
+ right: "║",
289
+ bottomRight: "╜",
290
+ bottom: "─",
291
+ bottomLeft: "╙",
292
+ left: "║"
293
+ },
294
+ doubleSingle: {
295
+ topLeft: "╒",
296
+ top: "═",
297
+ topRight: "╕",
298
+ right: "│",
299
+ bottomRight: "╛",
300
+ bottom: "═",
301
+ bottomLeft: "╘",
302
+ left: "│"
303
+ },
304
+ classic: {
305
+ topLeft: "+",
306
+ top: "-",
307
+ topRight: "+",
308
+ right: "|",
309
+ bottomRight: "+",
310
+ bottom: "-",
311
+ bottomLeft: "+",
312
+ left: "|"
313
+ },
314
+ arrow: {
315
+ topLeft: "↘",
316
+ top: "↓",
317
+ topRight: "↙",
318
+ right: "←",
319
+ bottomRight: "↖",
320
+ bottom: "↑",
321
+ bottomLeft: "↗",
322
+ left: "→"
323
+ }
324
+ };
325
+ });
326
+ var require_cli_boxes = __commonJS((exports2, module2) => {
327
+ var cliBoxes = require_boxes();
328
+ module2.exports = cliBoxes;
329
+ module2.exports.default = cliBoxes;
330
+ });
331
+ var require_handleKeywords = __commonJS((exports2, module2) => {
332
+ var handleKeywords = (keyword, cb) => {
333
+ const keywordArr = keyword?.split(",");
334
+ if (keywordArr && keywordArr.length) {
335
+ cb(keywordArr.map((s) => s.trim()));
336
+ }
337
+ };
338
+ module2.exports = handleKeywords;
339
+ });
340
+ var YoGenerator_default = import_yeoman_generator.default;
341
+ var FUNCTION = "function";
342
+ var STRING = "string";
343
+ var UNDEFINED = "undefined";
344
+ var T_UNDEFINED = undefined;
345
+ var KEYS = Object.keys;
346
+ var OBJ_SIZE = function OBJ_SIZE2(o) {
347
+ return o ? KEYS(o).length : 0;
348
+ };
349
+ var getDestFolderName = (oGen) => PATH.basename(oGen.destinationRoot());
350
+ var getDestFolderName_default = getDestFolderName;
351
+ var fileExists = (f) => FS.existsSync(f);
352
+ var fileExists_default = fileExists;
353
+ var isDir = (f) => fileExists_default(f) && FS2.lstatSync(f).isDirectory();
354
+ var isDir_default = isDir;
355
+ var isFile = (f) => fileExists_default(f) && !isDir_default(f);
356
+ var isFile_default = isFile;
357
+ var isNodePkgExecute = () => process.env.npm_command === "exec";
358
+ var unlink = (f) => FS3.unlinkSync(f);
359
+ var unlink_default = unlink;
360
+ var ANSI_BACKGROUND_OFFSET = 10;
361
+ var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
362
+ var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
363
+ var wrapAnsi16m = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`;
364
+ var styles = {
365
+ modifier: {
366
+ reset: [0, 0],
367
+ bold: [1, 22],
368
+ dim: [2, 22],
369
+ italic: [3, 23],
370
+ underline: [4, 24],
371
+ overline: [53, 55],
372
+ inverse: [7, 27],
373
+ hidden: [8, 28],
374
+ strikethrough: [9, 29]
375
+ },
376
+ color: {
377
+ black: [30, 39],
378
+ red: [31, 39],
379
+ green: [32, 39],
380
+ yellow: [33, 39],
381
+ blue: [34, 39],
382
+ magenta: [35, 39],
383
+ cyan: [36, 39],
384
+ white: [37, 39],
385
+ blackBright: [90, 39],
386
+ gray: [90, 39],
387
+ grey: [90, 39],
388
+ redBright: [91, 39],
389
+ greenBright: [92, 39],
390
+ yellowBright: [93, 39],
391
+ blueBright: [94, 39],
392
+ magentaBright: [95, 39],
393
+ cyanBright: [96, 39],
394
+ whiteBright: [97, 39]
395
+ },
396
+ bgColor: {
397
+ bgBlack: [40, 49],
398
+ bgRed: [41, 49],
399
+ bgGreen: [42, 49],
400
+ bgYellow: [43, 49],
401
+ bgBlue: [44, 49],
402
+ bgMagenta: [45, 49],
403
+ bgCyan: [46, 49],
404
+ bgWhite: [47, 49],
405
+ bgBlackBright: [100, 49],
406
+ bgGray: [100, 49],
407
+ bgGrey: [100, 49],
408
+ bgRedBright: [101, 49],
409
+ bgGreenBright: [102, 49],
410
+ bgYellowBright: [103, 49],
411
+ bgBlueBright: [104, 49],
412
+ bgMagentaBright: [105, 49],
413
+ bgCyanBright: [106, 49],
414
+ bgWhiteBright: [107, 49]
415
+ }
416
+ };
417
+ var modifierNames = Object.keys(styles.modifier);
418
+ var foregroundColorNames = Object.keys(styles.color);
419
+ var backgroundColorNames = Object.keys(styles.bgColor);
420
+ var colorNames = [...foregroundColorNames, ...backgroundColorNames];
421
+ function assembleStyles() {
422
+ const codes = new Map;
423
+ for (const [groupName, group] of Object.entries(styles)) {
424
+ for (const [styleName, style] of Object.entries(group)) {
425
+ styles[styleName] = {
426
+ open: `\x1B[${style[0]}m`,
427
+ close: `\x1B[${style[1]}m`
428
+ };
429
+ group[styleName] = styles[styleName];
430
+ codes.set(style[0], style[1]);
431
+ }
432
+ Object.defineProperty(styles, groupName, {
433
+ value: group,
434
+ enumerable: false
435
+ });
436
+ }
437
+ Object.defineProperty(styles, "codes", {
438
+ value: codes,
439
+ enumerable: false
440
+ });
441
+ styles.color.close = "\x1B[39m";
442
+ styles.bgColor.close = "\x1B[49m";
443
+ styles.color.ansi = wrapAnsi16();
444
+ styles.color.ansi256 = wrapAnsi256();
445
+ styles.color.ansi16m = wrapAnsi16m();
446
+ styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
447
+ styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
448
+ styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
449
+ Object.defineProperties(styles, {
450
+ rgbToAnsi256: {
451
+ value(red, green, blue) {
452
+ if (red === green && green === blue) {
453
+ if (red < 8) {
454
+ return 16;
455
+ }
456
+ if (red > 248) {
457
+ return 231;
458
+ }
459
+ return Math.round((red - 8) / 247 * 24) + 232;
460
+ }
461
+ return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
462
+ },
463
+ enumerable: false
464
+ },
465
+ hexToRgb: {
466
+ value(hex) {
467
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
468
+ if (!matches) {
469
+ return [0, 0, 0];
470
+ }
471
+ let [colorString] = matches;
472
+ if (colorString.length === 3) {
473
+ colorString = [...colorString].map((character) => character + character).join("");
474
+ }
475
+ const integer = Number.parseInt(colorString, 16);
476
+ return [
477
+ integer >> 16 & 255,
478
+ integer >> 8 & 255,
479
+ integer & 255
480
+ ];
481
+ },
482
+ enumerable: false
483
+ },
484
+ hexToAnsi256: {
485
+ value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
486
+ enumerable: false
487
+ },
488
+ ansi256ToAnsi: {
489
+ value(code) {
490
+ if (code < 8) {
491
+ return 30 + code;
492
+ }
493
+ if (code < 16) {
494
+ return 90 + (code - 8);
495
+ }
496
+ let red;
497
+ let green;
498
+ let blue;
499
+ if (code >= 232) {
500
+ red = ((code - 232) * 10 + 8) / 255;
501
+ green = red;
502
+ blue = red;
503
+ } else {
504
+ code -= 16;
505
+ const remainder = code % 36;
506
+ red = Math.floor(code / 36) / 5;
507
+ green = Math.floor(remainder / 6) / 5;
508
+ blue = remainder % 6 / 5;
509
+ }
510
+ const value = Math.max(red, green, blue) * 2;
511
+ if (value === 0) {
512
+ return 30;
513
+ }
514
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
515
+ if (value === 2) {
516
+ result += 60;
517
+ }
518
+ return result;
519
+ },
520
+ enumerable: false
521
+ },
522
+ rgbToAnsi: {
523
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
524
+ enumerable: false
525
+ },
526
+ hexToAnsi: {
527
+ value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
528
+ enumerable: false
529
+ }
530
+ });
531
+ return styles;
532
+ }
533
+ var ansiStyles = assembleStyles();
534
+ var ansi_styles_default = ansiStyles;
535
+ function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : import_node_process.default.argv) {
536
+ const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
537
+ const position = argv.indexOf(prefix + flag);
538
+ const terminatorPosition = argv.indexOf("--");
539
+ return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
540
+ }
541
+ var { env } = import_node_process.default;
542
+ var flagForceColor;
543
+ if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
544
+ flagForceColor = 0;
545
+ } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
546
+ flagForceColor = 1;
547
+ }
548
+ function envForceColor() {
549
+ if ("FORCE_COLOR" in env) {
550
+ if (env.FORCE_COLOR === "true") {
551
+ return 1;
552
+ }
553
+ if (env.FORCE_COLOR === "false") {
554
+ return 0;
555
+ }
556
+ return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
557
+ }
558
+ }
559
+ function translateLevel(level) {
560
+ if (level === 0) {
561
+ return false;
562
+ }
563
+ return {
564
+ level,
565
+ hasBasic: true,
566
+ has256: level >= 2,
567
+ has16m: level >= 3
568
+ };
569
+ }
570
+ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
571
+ const noFlagForceColor = envForceColor();
572
+ if (noFlagForceColor !== undefined) {
573
+ flagForceColor = noFlagForceColor;
574
+ }
575
+ const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
576
+ if (forceColor === 0) {
577
+ return 0;
578
+ }
579
+ if (sniffFlags) {
580
+ if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
581
+ return 3;
582
+ }
583
+ if (hasFlag("color=256")) {
584
+ return 2;
585
+ }
586
+ }
587
+ if ("TF_BUILD" in env && "AGENT_NAME" in env) {
588
+ return 1;
589
+ }
590
+ if (haveStream && !streamIsTTY && forceColor === undefined) {
591
+ return 0;
592
+ }
593
+ const min = forceColor || 0;
594
+ if (env.TERM === "dumb") {
595
+ return min;
596
+ }
597
+ if (import_node_process.default.platform === "win32") {
598
+ const osRelease = import_node_os.default.release().split(".");
599
+ if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
600
+ return Number(osRelease[2]) >= 14931 ? 3 : 2;
601
+ }
602
+ return 1;
603
+ }
604
+ if ("CI" in env) {
605
+ if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => (key in env))) {
606
+ return 3;
607
+ }
608
+ if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => (sign in env)) || env.CI_NAME === "codeship") {
609
+ return 1;
610
+ }
611
+ return min;
612
+ }
613
+ if ("TEAMCITY_VERSION" in env) {
614
+ return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
615
+ }
616
+ if (env.COLORTERM === "truecolor") {
617
+ return 3;
618
+ }
619
+ if (env.TERM === "xterm-kitty") {
620
+ return 3;
621
+ }
622
+ if (env.TERM === "xterm-ghostty") {
623
+ return 3;
624
+ }
625
+ if (env.TERM === "wezterm") {
626
+ return 3;
627
+ }
628
+ if ("TERM_PROGRAM" in env) {
629
+ const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
630
+ switch (env.TERM_PROGRAM) {
631
+ case "iTerm.app": {
632
+ return version >= 3 ? 3 : 2;
633
+ }
634
+ case "Apple_Terminal": {
635
+ return 2;
636
+ }
637
+ }
638
+ }
639
+ if (/-256(color)?$/i.test(env.TERM)) {
640
+ return 2;
641
+ }
642
+ if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
643
+ return 1;
644
+ }
645
+ if ("COLORTERM" in env) {
646
+ return 1;
647
+ }
648
+ return min;
649
+ }
650
+ function createSupportsColor(stream, options = {}) {
651
+ const level = _supportsColor(stream, {
652
+ streamIsTTY: stream && stream.isTTY,
653
+ ...options
654
+ });
655
+ return translateLevel(level);
656
+ }
657
+ var supportsColor = {
658
+ stdout: createSupportsColor({ isTTY: import_node_tty.default.isatty(1) }),
659
+ stderr: createSupportsColor({ isTTY: import_node_tty.default.isatty(2) })
660
+ };
661
+ var supports_color_default = supportsColor;
662
+ function stringReplaceAll(string, substring, replacer) {
663
+ let index = string.indexOf(substring);
664
+ if (index === -1) {
665
+ return string;
666
+ }
667
+ const substringLength = substring.length;
668
+ let endIndex = 0;
669
+ let returnValue = "";
670
+ do {
671
+ returnValue += string.slice(endIndex, index) + substring + replacer;
672
+ endIndex = index + substringLength;
673
+ index = string.indexOf(substring, endIndex);
674
+ } while (index !== -1);
675
+ returnValue += string.slice(endIndex);
676
+ return returnValue;
677
+ }
678
+ function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
679
+ let endIndex = 0;
680
+ let returnValue = "";
681
+ do {
682
+ const gotCR = string[index - 1] === "\r";
683
+ returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? `\r
684
+ ` : `
685
+ `) + postfix;
686
+ endIndex = index + 1;
687
+ index = string.indexOf(`
688
+ `, endIndex);
689
+ } while (index !== -1);
690
+ returnValue += string.slice(endIndex);
691
+ return returnValue;
692
+ }
693
+ var { stdout: stdoutColor, stderr: stderrColor } = supports_color_default;
694
+ var GENERATOR = Symbol("GENERATOR");
695
+ var STYLER = Symbol("STYLER");
696
+ var IS_EMPTY = Symbol("IS_EMPTY");
697
+ var levelMapping = [
698
+ "ansi",
699
+ "ansi",
700
+ "ansi256",
701
+ "ansi16m"
702
+ ];
703
+ var styles2 = Object.create(null);
704
+ var applyOptions = (object, options = {}) => {
705
+ if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
706
+ throw new Error("The `level` option should be an integer from 0 to 3");
707
+ }
708
+ const colorLevel = stdoutColor ? stdoutColor.level : 0;
709
+ object.level = options.level === undefined ? colorLevel : options.level;
710
+ };
711
+ var chalkFactory = (options) => {
712
+ const chalk = (...strings) => strings.join(" ");
713
+ applyOptions(chalk, options);
714
+ Object.setPrototypeOf(chalk, createChalk.prototype);
715
+ return chalk;
716
+ };
717
+ function createChalk(options) {
718
+ return chalkFactory(options);
719
+ }
720
+ Object.setPrototypeOf(createChalk.prototype, Function.prototype);
721
+ for (const [styleName, style] of Object.entries(ansi_styles_default)) {
722
+ styles2[styleName] = {
723
+ get() {
724
+ const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
725
+ Object.defineProperty(this, styleName, { value: builder });
726
+ return builder;
727
+ }
728
+ };
729
+ }
730
+ styles2.visible = {
731
+ get() {
732
+ const builder = createBuilder(this, this[STYLER], true);
733
+ Object.defineProperty(this, "visible", { value: builder });
734
+ return builder;
735
+ }
736
+ };
737
+ var getModelAnsi = (model, level, type, ...arguments_) => {
738
+ if (model === "rgb") {
739
+ if (level === "ansi16m") {
740
+ return ansi_styles_default[type].ansi16m(...arguments_);
741
+ }
742
+ if (level === "ansi256") {
743
+ return ansi_styles_default[type].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_));
744
+ }
745
+ return ansi_styles_default[type].ansi(ansi_styles_default.rgbToAnsi(...arguments_));
746
+ }
747
+ if (model === "hex") {
748
+ return getModelAnsi("rgb", level, type, ...ansi_styles_default.hexToRgb(...arguments_));
749
+ }
750
+ return ansi_styles_default[type][model](...arguments_);
751
+ };
752
+ var usedModels = ["rgb", "hex", "ansi256"];
753
+ for (const model of usedModels) {
754
+ styles2[model] = {
755
+ get() {
756
+ const { level } = this;
757
+ return function(...arguments_) {
758
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
759
+ return createBuilder(this, styler, this[IS_EMPTY]);
760
+ };
761
+ }
762
+ };
763
+ const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
764
+ styles2[bgModel] = {
765
+ get() {
766
+ const { level } = this;
767
+ return function(...arguments_) {
768
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
769
+ return createBuilder(this, styler, this[IS_EMPTY]);
770
+ };
771
+ }
772
+ };
773
+ }
774
+ var proto = Object.defineProperties(() => {}, {
775
+ ...styles2,
776
+ level: {
777
+ enumerable: true,
778
+ get() {
779
+ return this[GENERATOR].level;
780
+ },
781
+ set(level) {
782
+ this[GENERATOR].level = level;
783
+ }
784
+ }
785
+ });
786
+ var createStyler = (open, close, parent) => {
787
+ let openAll;
788
+ let closeAll;
789
+ if (parent === undefined) {
790
+ openAll = open;
791
+ closeAll = close;
792
+ } else {
793
+ openAll = parent.openAll + open;
794
+ closeAll = close + parent.closeAll;
795
+ }
796
+ return {
797
+ open,
798
+ close,
799
+ openAll,
800
+ closeAll,
801
+ parent
802
+ };
803
+ };
804
+ var createBuilder = (self, _styler, _isEmpty) => {
805
+ const builder = (...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
806
+ Object.setPrototypeOf(builder, proto);
807
+ builder[GENERATOR] = self;
808
+ builder[STYLER] = _styler;
809
+ builder[IS_EMPTY] = _isEmpty;
810
+ return builder;
811
+ };
812
+ var applyStyle = (self, string) => {
813
+ if (self.level <= 0 || !string) {
814
+ return self[IS_EMPTY] ? "" : string;
815
+ }
816
+ let styler = self[STYLER];
817
+ if (styler === undefined) {
818
+ return string;
819
+ }
820
+ const { openAll, closeAll } = styler;
821
+ if (string.includes("\x1B")) {
822
+ while (styler !== undefined) {
823
+ string = stringReplaceAll(string, styler.close, styler.open);
824
+ styler = styler.parent;
825
+ }
826
+ }
827
+ const lfIndex = string.indexOf(`
828
+ `);
829
+ if (lfIndex !== -1) {
830
+ string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
831
+ }
832
+ return openAll + string + closeAll;
833
+ };
834
+ Object.defineProperties(createChalk.prototype, styles2);
835
+ var chalk = createChalk();
836
+ var chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
837
+ var source_default = chalk;
838
+ var import_pad_component = __toESM2(require_pad_component(), 1);
839
+ function ansiRegex({ onlyFirst = false } = {}) {
840
+ const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
841
+ const osc = `(?:\\u001B\\][\\s\\S]*?${ST})`;
842
+ const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
843
+ const pattern = `${osc}|${csi}`;
844
+ return new RegExp(pattern, onlyFirst ? undefined : "g");
845
+ }
846
+ var regex = ansiRegex();
847
+ function stripAnsi(string) {
848
+ if (typeof string !== "string") {
849
+ throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
850
+ }
851
+ return string.replace(regex, "");
852
+ }
853
+ var import_eastasianwidth = __toESM2(require_eastasianwidth(), 1);
854
+ var import_emoji_regex = __toESM2(require_emoji_regex(), 1);
855
+ function stringWidth(string, options = {}) {
856
+ if (typeof string !== "string" || string.length === 0) {
857
+ return 0;
858
+ }
859
+ options = {
860
+ ambiguousIsNarrow: true,
861
+ ...options
862
+ };
863
+ string = stripAnsi(string);
864
+ if (string.length === 0) {
865
+ return 0;
866
+ }
867
+ string = string.replace(import_emoji_regex.default(), " ");
868
+ const ambiguousCharacterWidth = options.ambiguousIsNarrow ? 1 : 2;
869
+ let width = 0;
870
+ for (const character of string) {
871
+ const codePoint = character.codePointAt(0);
872
+ if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
873
+ continue;
874
+ }
875
+ if (codePoint >= 768 && codePoint <= 879) {
876
+ continue;
877
+ }
878
+ const code = import_eastasianwidth.default.eastAsianWidth(character);
879
+ switch (code) {
880
+ case "F":
881
+ case "W":
882
+ width += 2;
883
+ break;
884
+ case "A":
885
+ width += ambiguousCharacterWidth;
886
+ break;
887
+ default:
888
+ width += 1;
889
+ }
890
+ }
891
+ return width;
892
+ }
893
+ var ANSI_BACKGROUND_OFFSET2 = 10;
894
+ var wrapAnsi162 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
895
+ var wrapAnsi2562 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
896
+ var wrapAnsi16m2 = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`;
897
+ var styles3 = {
898
+ modifier: {
899
+ reset: [0, 0],
900
+ bold: [1, 22],
901
+ dim: [2, 22],
902
+ italic: [3, 23],
903
+ underline: [4, 24],
904
+ overline: [53, 55],
905
+ inverse: [7, 27],
906
+ hidden: [8, 28],
907
+ strikethrough: [9, 29]
908
+ },
909
+ color: {
910
+ black: [30, 39],
911
+ red: [31, 39],
912
+ green: [32, 39],
913
+ yellow: [33, 39],
914
+ blue: [34, 39],
915
+ magenta: [35, 39],
916
+ cyan: [36, 39],
917
+ white: [37, 39],
918
+ blackBright: [90, 39],
919
+ gray: [90, 39],
920
+ grey: [90, 39],
921
+ redBright: [91, 39],
922
+ greenBright: [92, 39],
923
+ yellowBright: [93, 39],
924
+ blueBright: [94, 39],
925
+ magentaBright: [95, 39],
926
+ cyanBright: [96, 39],
927
+ whiteBright: [97, 39]
928
+ },
929
+ bgColor: {
930
+ bgBlack: [40, 49],
931
+ bgRed: [41, 49],
932
+ bgGreen: [42, 49],
933
+ bgYellow: [43, 49],
934
+ bgBlue: [44, 49],
935
+ bgMagenta: [45, 49],
936
+ bgCyan: [46, 49],
937
+ bgWhite: [47, 49],
938
+ bgBlackBright: [100, 49],
939
+ bgGray: [100, 49],
940
+ bgGrey: [100, 49],
941
+ bgRedBright: [101, 49],
942
+ bgGreenBright: [102, 49],
943
+ bgYellowBright: [103, 49],
944
+ bgBlueBright: [104, 49],
945
+ bgMagentaBright: [105, 49],
946
+ bgCyanBright: [106, 49],
947
+ bgWhiteBright: [107, 49]
948
+ }
949
+ };
950
+ var modifierNames2 = Object.keys(styles3.modifier);
951
+ var foregroundColorNames2 = Object.keys(styles3.color);
952
+ var backgroundColorNames2 = Object.keys(styles3.bgColor);
953
+ var colorNames2 = [...foregroundColorNames2, ...backgroundColorNames2];
954
+ function assembleStyles2() {
955
+ const codes = new Map;
956
+ for (const [groupName, group] of Object.entries(styles3)) {
957
+ for (const [styleName, style] of Object.entries(group)) {
958
+ styles3[styleName] = {
959
+ open: `\x1B[${style[0]}m`,
960
+ close: `\x1B[${style[1]}m`
961
+ };
962
+ group[styleName] = styles3[styleName];
963
+ codes.set(style[0], style[1]);
964
+ }
965
+ Object.defineProperty(styles3, groupName, {
966
+ value: group,
967
+ enumerable: false
968
+ });
969
+ }
970
+ Object.defineProperty(styles3, "codes", {
971
+ value: codes,
972
+ enumerable: false
973
+ });
974
+ styles3.color.close = "\x1B[39m";
975
+ styles3.bgColor.close = "\x1B[49m";
976
+ styles3.color.ansi = wrapAnsi162();
977
+ styles3.color.ansi256 = wrapAnsi2562();
978
+ styles3.color.ansi16m = wrapAnsi16m2();
979
+ styles3.bgColor.ansi = wrapAnsi162(ANSI_BACKGROUND_OFFSET2);
980
+ styles3.bgColor.ansi256 = wrapAnsi2562(ANSI_BACKGROUND_OFFSET2);
981
+ styles3.bgColor.ansi16m = wrapAnsi16m2(ANSI_BACKGROUND_OFFSET2);
982
+ Object.defineProperties(styles3, {
983
+ rgbToAnsi256: {
984
+ value(red, green, blue) {
985
+ if (red === green && green === blue) {
986
+ if (red < 8) {
987
+ return 16;
988
+ }
989
+ if (red > 248) {
990
+ return 231;
991
+ }
992
+ return Math.round((red - 8) / 247 * 24) + 232;
993
+ }
994
+ return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
995
+ },
996
+ enumerable: false
997
+ },
998
+ hexToRgb: {
999
+ value(hex) {
1000
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
1001
+ if (!matches) {
1002
+ return [0, 0, 0];
1003
+ }
1004
+ let [colorString] = matches;
1005
+ if (colorString.length === 3) {
1006
+ colorString = [...colorString].map((character) => character + character).join("");
1007
+ }
1008
+ const integer = Number.parseInt(colorString, 16);
1009
+ return [
1010
+ integer >> 16 & 255,
1011
+ integer >> 8 & 255,
1012
+ integer & 255
1013
+ ];
1014
+ },
1015
+ enumerable: false
1016
+ },
1017
+ hexToAnsi256: {
1018
+ value: (hex) => styles3.rgbToAnsi256(...styles3.hexToRgb(hex)),
1019
+ enumerable: false
1020
+ },
1021
+ ansi256ToAnsi: {
1022
+ value(code) {
1023
+ if (code < 8) {
1024
+ return 30 + code;
1025
+ }
1026
+ if (code < 16) {
1027
+ return 90 + (code - 8);
1028
+ }
1029
+ let red;
1030
+ let green;
1031
+ let blue;
1032
+ if (code >= 232) {
1033
+ red = ((code - 232) * 10 + 8) / 255;
1034
+ green = red;
1035
+ blue = red;
1036
+ } else {
1037
+ code -= 16;
1038
+ const remainder = code % 36;
1039
+ red = Math.floor(code / 36) / 5;
1040
+ green = Math.floor(remainder / 6) / 5;
1041
+ blue = remainder % 6 / 5;
1042
+ }
1043
+ const value = Math.max(red, green, blue) * 2;
1044
+ if (value === 0) {
1045
+ return 30;
1046
+ }
1047
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
1048
+ if (value === 2) {
1049
+ result += 60;
1050
+ }
1051
+ return result;
1052
+ },
1053
+ enumerable: false
1054
+ },
1055
+ rgbToAnsi: {
1056
+ value: (red, green, blue) => styles3.ansi256ToAnsi(styles3.rgbToAnsi256(red, green, blue)),
1057
+ enumerable: false
1058
+ },
1059
+ hexToAnsi: {
1060
+ value: (hex) => styles3.ansi256ToAnsi(styles3.hexToAnsi256(hex)),
1061
+ enumerable: false
1062
+ }
1063
+ });
1064
+ return styles3;
1065
+ }
1066
+ var ansiStyles2 = assembleStyles2();
1067
+ var ansi_styles_default2 = ansiStyles2;
1068
+ var ESCAPES = new Set([
1069
+ "\x1B",
1070
+ "›"
1071
+ ]);
1072
+ var END_CODE = 39;
1073
+ var ANSI_ESCAPE_BELL = "\x07";
1074
+ var ANSI_CSI = "[";
1075
+ var ANSI_OSC = "]";
1076
+ var ANSI_SGR_TERMINATOR = "m";
1077
+ var ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`;
1078
+ var wrapAnsiCode = (code) => `${ESCAPES.values().next().value}${ANSI_CSI}${code}${ANSI_SGR_TERMINATOR}`;
1079
+ var wrapAnsiHyperlink = (uri) => `${ESCAPES.values().next().value}${ANSI_ESCAPE_LINK}${uri}${ANSI_ESCAPE_BELL}`;
1080
+ var wordLengths = (string) => string.split(" ").map((character) => stringWidth(character));
1081
+ var wrapWord = (rows, word, columns) => {
1082
+ const characters = [...word];
1083
+ let isInsideEscape = false;
1084
+ let isInsideLinkEscape = false;
1085
+ let visible = stringWidth(stripAnsi(rows[rows.length - 1]));
1086
+ for (const [index, character] of characters.entries()) {
1087
+ const characterLength = stringWidth(character);
1088
+ if (visible + characterLength <= columns) {
1089
+ rows[rows.length - 1] += character;
1090
+ } else {
1091
+ rows.push(character);
1092
+ visible = 0;
1093
+ }
1094
+ if (ESCAPES.has(character)) {
1095
+ isInsideEscape = true;
1096
+ isInsideLinkEscape = characters.slice(index + 1).join("").startsWith(ANSI_ESCAPE_LINK);
1097
+ }
1098
+ if (isInsideEscape) {
1099
+ if (isInsideLinkEscape) {
1100
+ if (character === ANSI_ESCAPE_BELL) {
1101
+ isInsideEscape = false;
1102
+ isInsideLinkEscape = false;
1103
+ }
1104
+ } else if (character === ANSI_SGR_TERMINATOR) {
1105
+ isInsideEscape = false;
1106
+ }
1107
+ continue;
1108
+ }
1109
+ visible += characterLength;
1110
+ if (visible === columns && index < characters.length - 1) {
1111
+ rows.push("");
1112
+ visible = 0;
1113
+ }
1114
+ }
1115
+ if (!visible && rows[rows.length - 1].length > 0 && rows.length > 1) {
1116
+ rows[rows.length - 2] += rows.pop();
1117
+ }
1118
+ };
1119
+ var stringVisibleTrimSpacesRight = (string) => {
1120
+ const words = string.split(" ");
1121
+ let last = words.length;
1122
+ while (last > 0) {
1123
+ if (stringWidth(words[last - 1]) > 0) {
1124
+ break;
1125
+ }
1126
+ last--;
1127
+ }
1128
+ if (last === words.length) {
1129
+ return string;
1130
+ }
1131
+ return words.slice(0, last).join(" ") + words.slice(last).join("");
1132
+ };
1133
+ var exec = (string, columns, options = {}) => {
1134
+ if (options.trim !== false && string.trim() === "") {
1135
+ return "";
1136
+ }
1137
+ let returnValue = "";
1138
+ let escapeCode;
1139
+ let escapeUrl;
1140
+ const lengths = wordLengths(string);
1141
+ let rows = [""];
1142
+ for (const [index, word] of string.split(" ").entries()) {
1143
+ if (options.trim !== false) {
1144
+ rows[rows.length - 1] = rows[rows.length - 1].trimStart();
1145
+ }
1146
+ let rowLength = stringWidth(rows[rows.length - 1]);
1147
+ if (index !== 0) {
1148
+ if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) {
1149
+ rows.push("");
1150
+ rowLength = 0;
1151
+ }
1152
+ if (rowLength > 0 || options.trim === false) {
1153
+ rows[rows.length - 1] += " ";
1154
+ rowLength++;
1155
+ }
1156
+ }
1157
+ if (options.hard && lengths[index] > columns) {
1158
+ const remainingColumns = columns - rowLength;
1159
+ const breaksStartingThisLine = 1 + Math.floor((lengths[index] - remainingColumns - 1) / columns);
1160
+ const breaksStartingNextLine = Math.floor((lengths[index] - 1) / columns);
1161
+ if (breaksStartingNextLine < breaksStartingThisLine) {
1162
+ rows.push("");
1163
+ }
1164
+ wrapWord(rows, word, columns);
1165
+ continue;
1166
+ }
1167
+ if (rowLength + lengths[index] > columns && rowLength > 0 && lengths[index] > 0) {
1168
+ if (options.wordWrap === false && rowLength < columns) {
1169
+ wrapWord(rows, word, columns);
1170
+ continue;
1171
+ }
1172
+ rows.push("");
1173
+ }
1174
+ if (rowLength + lengths[index] > columns && options.wordWrap === false) {
1175
+ wrapWord(rows, word, columns);
1176
+ continue;
1177
+ }
1178
+ rows[rows.length - 1] += word;
1179
+ }
1180
+ if (options.trim !== false) {
1181
+ rows = rows.map((row) => stringVisibleTrimSpacesRight(row));
1182
+ }
1183
+ const pre = [...rows.join(`
1184
+ `)];
1185
+ for (const [index, character] of pre.entries()) {
1186
+ returnValue += character;
1187
+ if (ESCAPES.has(character)) {
1188
+ const { groups } = new RegExp(`(?:\\${ANSI_CSI}(?<code>\\d+)m|\\${ANSI_ESCAPE_LINK}(?<uri>.*)${ANSI_ESCAPE_BELL})`).exec(pre.slice(index).join("")) || { groups: {} };
1189
+ if (groups.code !== undefined) {
1190
+ const code2 = Number.parseFloat(groups.code);
1191
+ escapeCode = code2 === END_CODE ? undefined : code2;
1192
+ } else if (groups.uri !== undefined) {
1193
+ escapeUrl = groups.uri.length === 0 ? undefined : groups.uri;
1194
+ }
1195
+ }
1196
+ const code = ansi_styles_default2.codes.get(Number(escapeCode));
1197
+ if (pre[index + 1] === `
1198
+ `) {
1199
+ if (escapeUrl) {
1200
+ returnValue += wrapAnsiHyperlink("");
1201
+ }
1202
+ if (escapeCode && code) {
1203
+ returnValue += wrapAnsiCode(code);
1204
+ }
1205
+ } else if (character === `
1206
+ `) {
1207
+ if (escapeCode && code) {
1208
+ returnValue += wrapAnsiCode(escapeCode);
1209
+ }
1210
+ if (escapeUrl) {
1211
+ returnValue += wrapAnsiHyperlink(escapeUrl);
1212
+ }
1213
+ }
1214
+ }
1215
+ return returnValue;
1216
+ };
1217
+ function wrapAnsi(string, columns, options) {
1218
+ return String(string).normalize().replace(/\r\n/g, `
1219
+ `).split(`
1220
+ `).map((line) => exec(line, columns, options)).join(`
1221
+ `);
1222
+ }
1223
+ var import_eastasianwidth2 = __toESM2(require_eastasianwidth(), 1);
1224
+ var import_emoji_regex2 = __toESM2(require_emoji_regex2(), 1);
1225
+ function stringWidth2(string, options) {
1226
+ if (typeof string !== "string" || string.length === 0) {
1227
+ return 0;
1228
+ }
1229
+ options = {
1230
+ ambiguousIsNarrow: true,
1231
+ countAnsiEscapeCodes: false,
1232
+ ...options
1233
+ };
1234
+ if (!options.countAnsiEscapeCodes) {
1235
+ string = stripAnsi(string);
1236
+ }
1237
+ if (string.length === 0) {
1238
+ return 0;
1239
+ }
1240
+ const ambiguousCharacterWidth = options.ambiguousIsNarrow ? 1 : 2;
1241
+ let width = 0;
1242
+ for (const { segment: character } of new Intl.Segmenter().segment(string)) {
1243
+ const codePoint = character.codePointAt(0);
1244
+ if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
1245
+ continue;
1246
+ }
1247
+ if (codePoint >= 768 && codePoint <= 879) {
1248
+ continue;
1249
+ }
1250
+ if (import_emoji_regex2.default().test(character)) {
1251
+ width += 2;
1252
+ continue;
1253
+ }
1254
+ const code = import_eastasianwidth2.default.eastAsianWidth(character);
1255
+ switch (code) {
1256
+ case "F":
1257
+ case "W": {
1258
+ width += 2;
1259
+ break;
1260
+ }
1261
+ case "A": {
1262
+ width += ambiguousCharacterWidth;
1263
+ break;
1264
+ }
1265
+ default: {
1266
+ width += 1;
1267
+ }
1268
+ }
1269
+ }
1270
+ return width;
1271
+ }
1272
+ var import_cli_boxes = __toESM2(require_cli_boxes(), 1);
1273
+ var border = import_cli_boxes.default.round;
1274
+ var leftOffset = 17;
1275
+ var defaultGreeting = `
1276
+ _-----_ ` + `
1277
+ | | ` + `
1278
+ |` + source_default.red("--(o)--") + "| " + "\n `---------´ " + `
1279
+ ` + source_default.yellow("(") + " _" + source_default.yellow("´U`") + "_ " + source_default.yellow(")") + " " + `
1280
+ /___A___\\ /` + `
1281
+ ` + source_default.yellow("| ~ |") + " " + `
1282
+ __` + source_default.yellow("'.___.'") + "__ " + `
1283
+ ´ ` + source_default.red("` |") + "° " + source_default.red("´ Y") + " ` ";
1284
+ function yosay(message, options = {}) {
1285
+ message = (message ?? "Welcome to Yeoman, ladies and gentlemen!").trim();
1286
+ const styledIndexes = {};
1287
+ let maxLength = 24;
1288
+ let topOffset = 4;
1289
+ let completedString = "";
1290
+ const YEOMAN_CHARACTER_WIDTH = 17;
1291
+ const DEFAULT_TOP_FRAME_WIDTH = 28;
1292
+ const MAX_MESSAGE_LINES_BEFORE_OVERFLOW = 7;
1293
+ let TOTAL_CHARACTERS_PER_LINE = YEOMAN_CHARACTER_WIDTH + DEFAULT_TOP_FRAME_WIDTH;
1294
+ if (options.maxLength) {
1295
+ maxLength = stripAnsi(message).toLowerCase().split(" ").sort()[0].length;
1296
+ if (maxLength < options.maxLength) {
1297
+ maxLength = options.maxLength;
1298
+ TOTAL_CHARACTERS_PER_LINE = maxLength + YEOMAN_CHARACTER_WIDTH + topOffset;
1299
+ }
1300
+ }
1301
+ const regexNewline = new RegExp(`\\s{${maxLength}}`);
1302
+ const borderHorizontal = border.top.repeat(maxLength + 2);
1303
+ const frame = {
1304
+ top: border.topLeft + borderHorizontal + border.topRight,
1305
+ side: ansi_styles_default2.reset.open + border.left + ansi_styles_default2.reset.open,
1306
+ bottom: ansi_styles_default2.reset.open + border.bottomLeft + borderHorizontal + border.bottomRight
1307
+ };
1308
+ message.replace(ansiRegex(), (match, offset) => {
1309
+ for (const value of Object.values(styledIndexes)) {
1310
+ offset -= value.length;
1311
+ }
1312
+ styledIndexes[offset] = styledIndexes[offset] ? styledIndexes[offset] + match : match;
1313
+ });
1314
+ const strippedMessage = stripAnsi(message);
1315
+ const spacesIndex = [];
1316
+ strippedMessage.split(" ").reduce((accumulator, currentValue) => {
1317
+ spacesIndex.push(accumulator + currentValue.length);
1318
+ return spacesIndex.at(-1) + 1;
1319
+ }, 0);
1320
+ return wrapAnsi(strippedMessage, maxLength, { hard: true }).split(/\n/).reduce((greeting, string_, index, array) => {
1321
+ if (!regexNewline.test(string_)) {
1322
+ string_ = string_.trim();
1323
+ }
1324
+ completedString += string_;
1325
+ let offset = 0;
1326
+ for (const element of spacesIndex) {
1327
+ const character = completedString[element - offset];
1328
+ if (character) {
1329
+ if (character !== " ") {
1330
+ offset += 1;
1331
+ }
1332
+ } else {
1333
+ break;
1334
+ }
1335
+ }
1336
+ string_ = completedString.slice(completedString.length - string_.length).replaceAll(/./g, (character, characterIndex) => {
1337
+ characterIndex += completedString.length - string_.length + offset;
1338
+ let hasContinuedStyle = 0;
1339
+ let continuedStyle;
1340
+ for (const offset2 of Object.keys(styledIndexes)) {
1341
+ if (characterIndex > offset2) {
1342
+ hasContinuedStyle++;
1343
+ continuedStyle = styledIndexes[offset2];
1344
+ }
1345
+ if (hasContinuedStyle === 1 && characterIndex < offset2) {
1346
+ hasContinuedStyle++;
1347
+ }
1348
+ }
1349
+ if (styledIndexes[characterIndex]) {
1350
+ return styledIndexes[characterIndex] + character;
1351
+ }
1352
+ if (hasContinuedStyle >= 2) {
1353
+ return continuedStyle + character;
1354
+ }
1355
+ return character;
1356
+ }).trim();
1357
+ const paddedString = import_pad_component.default({
1358
+ length: stringWidth2(string_),
1359
+ valueOf() {
1360
+ return ansi_styles_default2.reset.open + string_ + ansi_styles_default2.reset.open;
1361
+ }
1362
+ }, maxLength);
1363
+ if (index === 0) {
1364
+ if (array.length === 2) {
1365
+ topOffset -= 1;
1366
+ }
1367
+ if (array.length >= 3) {
1368
+ topOffset -= 2;
1369
+ }
1370
+ if (array.length > MAX_MESSAGE_LINES_BEFORE_OVERFLOW) {
1371
+ const emptyLines = Math.ceil((array.length - MAX_MESSAGE_LINES_BEFORE_OVERFLOW) / 2);
1372
+ for (let i = 0;i < emptyLines; i++) {
1373
+ greeting.unshift("");
1374
+ }
1375
+ frame.top = import_pad_component.default.left(frame.top, TOTAL_CHARACTERS_PER_LINE);
1376
+ }
1377
+ greeting[topOffset - 1] += frame.top;
1378
+ }
1379
+ greeting[index + topOffset] = (greeting[index + topOffset] || import_pad_component.default.left("", leftOffset)) + frame.side + " " + paddedString + " " + frame.side;
1380
+ if (array.length === index + 1) {
1381
+ greeting[index + topOffset + 1] = (greeting[index + topOffset + 1] || import_pad_component.default.left("", leftOffset)) + frame.bottom;
1382
+ }
1383
+ return greeting;
1384
+ }, defaultGreeting.split(/\n/)).join(`
1385
+ `) + `
1386
+ `;
1387
+ }
1388
+ var optsArg = (opts) => {
1389
+ if (!opts) {
1390
+ opts = { mode: 511 };
1391
+ } else if (typeof opts === "object") {
1392
+ opts = { mode: 511, ...opts };
1393
+ } else if (typeof opts === "number") {
1394
+ opts = { mode: opts };
1395
+ } else if (typeof opts === "string") {
1396
+ opts = { mode: parseInt(opts, 8) };
1397
+ } else {
1398
+ throw new TypeError("invalid options argument");
1399
+ }
1400
+ const resolved = opts;
1401
+ const optsFs = opts.fs || {};
1402
+ opts.mkdir = opts.mkdir || optsFs.mkdir || import_fs.mkdir;
1403
+ opts.mkdirAsync = opts.mkdirAsync ? opts.mkdirAsync : async (path2, options) => {
1404
+ return new Promise((res, rej) => resolved.mkdir(path2, options, (er, made) => er ? rej(er) : res(made)));
1405
+ };
1406
+ opts.stat = opts.stat || optsFs.stat || import_fs.stat;
1407
+ opts.statAsync = opts.statAsync ? opts.statAsync : async (path2) => new Promise((res, rej) => resolved.stat(path2, (err, stats) => err ? rej(err) : res(stats)));
1408
+ opts.statSync = opts.statSync || optsFs.statSync || import_fs.statSync;
1409
+ opts.mkdirSync = opts.mkdirSync || optsFs.mkdirSync || import_fs.mkdirSync;
1410
+ return resolved;
1411
+ };
1412
+ var mkdirpManualSync = (path2, options, made) => {
1413
+ const parent = import_path.dirname(path2);
1414
+ const opts = { ...optsArg(options), recursive: false };
1415
+ if (parent === path2) {
1416
+ try {
1417
+ return opts.mkdirSync(path2, opts);
1418
+ } catch (er) {
1419
+ const fer = er;
1420
+ if (fer && fer.code !== "EISDIR") {
1421
+ throw er;
1422
+ }
1423
+ return;
1424
+ }
1425
+ }
1426
+ try {
1427
+ opts.mkdirSync(path2, opts);
1428
+ return made || path2;
1429
+ } catch (er) {
1430
+ const fer = er;
1431
+ if (fer && fer.code === "ENOENT") {
1432
+ return mkdirpManualSync(path2, opts, mkdirpManualSync(parent, opts, made));
1433
+ }
1434
+ if (fer && fer.code !== "EEXIST" && fer && fer.code !== "EROFS") {
1435
+ throw er;
1436
+ }
1437
+ try {
1438
+ if (!opts.statSync(path2).isDirectory())
1439
+ throw er;
1440
+ } catch (_) {
1441
+ throw er;
1442
+ }
1443
+ }
1444
+ };
1445
+ var mkdirpManual = Object.assign(async (path2, options, made) => {
1446
+ const opts = optsArg(options);
1447
+ opts.recursive = false;
1448
+ const parent = import_path.dirname(path2);
1449
+ if (parent === path2) {
1450
+ return opts.mkdirAsync(path2, opts).catch((er) => {
1451
+ const fer = er;
1452
+ if (fer && fer.code !== "EISDIR") {
1453
+ throw er;
1454
+ }
1455
+ });
1456
+ }
1457
+ return opts.mkdirAsync(path2, opts).then(() => made || path2, async (er) => {
1458
+ const fer = er;
1459
+ if (fer && fer.code === "ENOENT") {
1460
+ return mkdirpManual(parent, opts).then((made2) => mkdirpManual(path2, opts, made2));
1461
+ }
1462
+ if (fer && fer.code !== "EEXIST" && fer.code !== "EROFS") {
1463
+ throw er;
1464
+ }
1465
+ return opts.statAsync(path2).then((st) => {
1466
+ if (st.isDirectory()) {
1467
+ return made;
1468
+ } else {
1469
+ throw er;
1470
+ }
1471
+ }, () => {
1472
+ throw er;
1473
+ });
1474
+ });
1475
+ }, { sync: mkdirpManualSync });
1476
+ var findMade = async (opts, parent, path2) => {
1477
+ if (path2 === parent) {
1478
+ return;
1479
+ }
1480
+ return opts.statAsync(parent).then((st) => st.isDirectory() ? path2 : undefined, (er) => {
1481
+ const fer = er;
1482
+ return fer && fer.code === "ENOENT" ? findMade(opts, import_path3.dirname(parent), parent) : undefined;
1483
+ });
1484
+ };
1485
+ var findMadeSync = (opts, parent, path2) => {
1486
+ if (path2 === parent) {
1487
+ return;
1488
+ }
1489
+ try {
1490
+ return opts.statSync(parent).isDirectory() ? path2 : undefined;
1491
+ } catch (er) {
1492
+ const fer = er;
1493
+ return fer && fer.code === "ENOENT" ? findMadeSync(opts, import_path3.dirname(parent), parent) : undefined;
1494
+ }
1495
+ };
1496
+ var mkdirpNativeSync = (path2, options) => {
1497
+ const opts = optsArg(options);
1498
+ opts.recursive = true;
1499
+ const parent = import_path2.dirname(path2);
1500
+ if (parent === path2) {
1501
+ return opts.mkdirSync(path2, opts);
1502
+ }
1503
+ const made = findMadeSync(opts, path2);
1504
+ try {
1505
+ opts.mkdirSync(path2, opts);
1506
+ return made;
1507
+ } catch (er) {
1508
+ const fer = er;
1509
+ if (fer && fer.code === "ENOENT") {
1510
+ return mkdirpManualSync(path2, opts);
1511
+ } else {
1512
+ throw er;
1513
+ }
1514
+ }
1515
+ };
1516
+ var mkdirpNative = Object.assign(async (path2, options) => {
1517
+ const opts = { ...optsArg(options), recursive: true };
1518
+ const parent = import_path2.dirname(path2);
1519
+ if (parent === path2) {
1520
+ return await opts.mkdirAsync(path2, opts);
1521
+ }
1522
+ return findMade(opts, path2).then((made) => opts.mkdirAsync(path2, opts).then((m) => made || m).catch((er) => {
1523
+ const fer = er;
1524
+ if (fer && fer.code === "ENOENT") {
1525
+ return mkdirpManual(path2, opts);
1526
+ } else {
1527
+ throw er;
1528
+ }
1529
+ }));
1530
+ }, { sync: mkdirpNativeSync });
1531
+ var platform = process.env.__TESTING_MKDIRP_PLATFORM__ || process.platform;
1532
+ var pathArg = (path2) => {
1533
+ if (/\0/.test(path2)) {
1534
+ throw Object.assign(new TypeError("path must be a string without null bytes"), {
1535
+ path: path2,
1536
+ code: "ERR_INVALID_ARG_VALUE"
1537
+ });
1538
+ }
1539
+ path2 = import_path4.resolve(path2);
1540
+ if (platform === "win32") {
1541
+ const badWinChars = /[*|"<>?:]/;
1542
+ const { root } = import_path4.parse(path2);
1543
+ if (badWinChars.test(path2.substring(root.length))) {
1544
+ throw Object.assign(new Error("Illegal characters in path."), {
1545
+ path: path2,
1546
+ code: "EINVAL"
1547
+ });
1548
+ }
1549
+ }
1550
+ return path2;
1551
+ };
1552
+ var version = process.env.__TESTING_MKDIRP_NODE_VERSION__ || process.version;
1553
+ var versArr = version.replace(/^v/, "").split(".");
1554
+ var hasNative = +versArr[0] > 10 || +versArr[0] === 10 && +versArr[1] >= 12;
1555
+ var useNativeSync = !hasNative ? () => false : (opts) => optsArg(opts).mkdirSync === import_fs2.mkdirSync;
1556
+ var useNative = Object.assign(!hasNative ? () => false : (opts) => optsArg(opts).mkdir === import_fs2.mkdir, {
1557
+ sync: useNativeSync
1558
+ });
1559
+ var mkdirpSync = (path2, opts) => {
1560
+ path2 = pathArg(path2);
1561
+ const resolved = optsArg(opts);
1562
+ return useNativeSync(resolved) ? mkdirpNativeSync(path2, resolved) : mkdirpManualSync(path2, resolved);
1563
+ };
1564
+ var mkdirp = Object.assign(async (path2, opts) => {
1565
+ path2 = pathArg(path2);
1566
+ const resolved = optsArg(opts);
1567
+ return useNative(resolved) ? mkdirpNative(path2, resolved) : mkdirpManual(path2, resolved);
1568
+ }, {
1569
+ mkdirpSync,
1570
+ mkdirpNative,
1571
+ mkdirpNativeSync,
1572
+ mkdirpManual,
1573
+ mkdirpManualSync,
1574
+ sync: mkdirpSync,
1575
+ native: mkdirpNative,
1576
+ nativeSync: mkdirpNativeSync,
1577
+ manual: mkdirpManual,
1578
+ manualSync: mkdirpManualSync,
1579
+ useNative,
1580
+ useNativeSync
1581
+ });
1582
+ var globSync = (folderPath, callback, firstLevelOnly) => {
1583
+ const fileArr = FS4.readdirSync(folderPath);
1584
+ while (fileArr.length !== 0) {
1585
+ const relativePath = fileArr.shift();
1586
+ const fullPath = PATH2.join(folderPath, relativePath);
1587
+ if (FS4.statSync(fullPath).isDirectory()) {
1588
+ if (!firstLevelOnly) {
1589
+ fileArr.push(...FS4.readdirSync(fullPath).map((v) => PATH2.join(relativePath, v)));
1590
+ }
1591
+ } else {
1592
+ const extname2 = PATH2.extname(relativePath);
1593
+ callback({
1594
+ fullPath,
1595
+ relativePath,
1596
+ extname: extname2,
1597
+ filename: PATH2.basename(relativePath, extname2),
1598
+ basename: PATH2.basename(relativePath),
1599
+ dirname: PATH2.dirname(relativePath)
1600
+ });
1601
+ }
1602
+ }
1603
+ };
1604
+ var globSync_default = globSync;
1605
+ var handleRepository = (oGen) => {
1606
+ const { payload } = oGen;
1607
+ if (!payload.repositoryName) {
1608
+ payload.repositoryName = payload.mainName;
1609
+ }
1610
+ const url = `https://github.com/${payload.repositoryOrgName ? payload.repositoryOrgName + "/" : ""}${payload.repositoryName}`;
1611
+ const gitUrl = `git+${url}`;
1612
+ payload.repository = { type: "git", url: gitUrl };
1613
+ payload.repositoryUrl = url;
1614
+ if (payload.babelRootMode) {
1615
+ let pkgPath = `packages/${payload.mainName}`;
1616
+ if (payload.repositoryName) {
1617
+ const destFolder = oGen.destinationRoot();
1618
+ const findRepositoryName = destFolder.lastIndexOf(payload.repositoryName);
1619
+ if (findRepositoryName !== -1) {
1620
+ pkgPath = destFolder.substring(findRepositoryName + payload.repositoryName.length + 1);
1621
+ }
1622
+ }
1623
+ payload.repository.directory = pkgPath;
1624
+ payload.repositoryHomepage = `${url}/tree/main/${pkgPath}`;
1625
+ } else {
1626
+ payload.repositoryHomepage = url;
1627
+ }
1628
+ };
1629
+ var handleAnswers = (oGen) => (answers, cb = () => {}) => {
1630
+ const { mainName, isUseWebpack } = answers;
1631
+ oGen.mainName = mainName;
1632
+ oGen.payload = {
1633
+ ...answers,
1634
+ description: answers.description || "TODO: description",
1635
+ keyword: answers.keyword || mainName,
1636
+ npmDependencies: {},
1637
+ babelRootMode: "",
1638
+ webpackEnabled: ""
1639
+ };
1640
+ if (answers.babelRootMode) {
1641
+ oGen.payload.babelRootMode = " --root-mode upward";
1642
+ }
1643
+ if (isUseWebpack) {
1644
+ oGen.payload.webpackEnabled = "on";
1645
+ oGen.payload.npmDependencies["reshow-app"] = "*";
1646
+ }
1647
+ handleRepository(oGen);
1648
+ cb(oGen.payload);
1649
+ };
1650
+ var handleAnswers_default = handleAnswers;
1651
+ var import_handleKeywords = __toESM2(require_handleKeywords(), 1);
1652
+ var isPrototypePolluted = function isPrototypePolluted2(arrPath) {
1653
+ var joinPath = "|" + arrPath.join("|") + "|";
1654
+ return ["__proto__", "constructor", "prototype"].some(function(key) {
1655
+ return joinPath.indexOf("|" + key + "|") !== -1;
1656
+ });
1657
+ };
1658
+ var replaceValue = function replaceValue2(obj, arrPath, val, isAppend, unSafe) {
1659
+ if (!unSafe && isPrototypePolluted(arrPath)) {
1660
+ throw "Contain un-safe key.";
1661
+ }
1662
+ var last = arrPath.pop();
1663
+ var linkObj = obj;
1664
+ arrPath.forEach(function(k) {
1665
+ var _linkObj$k;
1666
+ linkObj[k] = (_linkObj$k = linkObj[k]) !== null && _linkObj$k !== undefined ? _linkObj$k : Object.create(null);
1667
+ linkObj = linkObj[k];
1668
+ });
1669
+ if (isAppend && (!linkObj[last] || !linkObj[last].push)) {
1670
+ if (!linkObj[last]) {
1671
+ linkObj[last] = [val];
1672
+ } else {
1673
+ linkObj[last] = [linkObj[last], val];
1674
+ }
1675
+ } else if (isAppend && linkObj[last].push) {
1676
+ linkObj[last].push(val);
1677
+ } else {
1678
+ linkObj[last] = val;
1679
+ }
1680
+ };
1681
+ var src_default = replaceValue;
1682
+ var nest = function nest2(a, delimiter) {
1683
+ delimiter = delimiter || ".";
1684
+ var tree = {};
1685
+ KEYS(a).forEach(function(k) {
1686
+ if (k.indexOf(delimiter) === -1) {
1687
+ tree[k] = a[k];
1688
+ return;
1689
+ }
1690
+ var subKeys = k.split(delimiter);
1691
+ src_default(tree, subKeys, a[k]);
1692
+ });
1693
+ return tree;
1694
+ };
1695
+ var nest_default = nest;
1696
+ var fileGetContents = (f) => isFile_default(f) && FS5.readFileSync(f, "utf8");
1697
+ var fileGetContents_default = fileGetContents;
1698
+ var searchDotYo = (path2, isRoot) => {
1699
+ const dirs = path2.split("/");
1700
+ if (isRoot) {
1701
+ dirs.pop();
1702
+ }
1703
+ while (dirs.length !== 0) {
1704
+ const curDotYo = "/" + PATH3.join(...dirs, ".yo");
1705
+ if (isFile_default(curDotYo)) {
1706
+ return curDotYo;
1707
+ }
1708
+ dirs.pop();
1709
+ }
1710
+ return;
1711
+ };
1712
+ var getIni = (f) => nest_default(import_parse_ini_string.default(fileGetContents_default(f)), "_");
1713
+ var getDotYo = ({ bGetHomeYo = true, pwd = process.cwd() } = {}) => {
1714
+ const homeYo = PATH3.join(OS.homedir(), ".yo");
1715
+ let homeData;
1716
+ if (isFile_default(homeYo) && bGetHomeYo) {
1717
+ homeData = getIni(homeYo);
1718
+ }
1719
+ const rootYo = searchDotYo(pwd, true);
1720
+ let rootData;
1721
+ if (rootYo && isFile_default(rootYo)) {
1722
+ rootData = getIni(rootYo);
1723
+ }
1724
+ const dotYo = searchDotYo(pwd);
1725
+ const data = dotYo ? getIni(dotYo) : {};
1726
+ return {
1727
+ ...homeData,
1728
+ ...rootData,
1729
+ ...data
1730
+ };
1731
+ };
1732
+ var promptResetDefault = (prompts, yoData = getDotYo()) => {
1733
+ prompts.forEach((oPrompt) => {
1734
+ const hasYoData = yoData[oPrompt.name];
1735
+ if (hasYoData != null) {
1736
+ oPrompt.default = hasYoData;
1737
+ }
1738
+ });
1739
+ return prompts;
1740
+ };
1741
+ var promptFilterByOptions = (prompts, yoData = getDotYo()) => {
1742
+ const nextAnswer = {};
1743
+ const nextPrompts = prompts.filter((oPrompt) => {
1744
+ const hasYoData = yoData[oPrompt.name];
1745
+ if (hasYoData != null) {
1746
+ nextAnswer[oPrompt.name] = hasYoData;
1747
+ return false;
1748
+ } else {
1749
+ return true;
1750
+ }
1751
+ });
1752
+ return { nextAnswer, nextPrompts };
1753
+ };
1754
+ var lastAns = { current: {} };
1755
+ var exitCb = { current: null };
1756
+ var onExit = (cb) => cb && (exitCb.current = cb);
1757
+ process.once("exit", () => {
1758
+ if (FUNCTION === typeof exitCb.current && exitCb.current !== null) {
1759
+ exitCb.current();
1760
+ }
1761
+ process.exit(0);
1762
+ });
1763
+ var RUN_CP = (oGen) => (src, dest, options, bOverwrite) => {
1764
+ const oGenFs = oGen.fs;
1765
+ const action = options ? oGenFs.copyTpl : oGenFs.copy;
1766
+ let actualSrc;
1767
+ if (!isFile_default(src) || isFile_default(oGen.templatePath(src))) {
1768
+ dest = dest || (isDir_default(src) ? PATH4.basename(src) : src);
1769
+ actualSrc = oGen.templatePath(src);
1770
+ } else {
1771
+ dest = dest || PATH4.basename(src);
1772
+ actualSrc = src;
1773
+ }
1774
+ try {
1775
+ const realDestFile = oGen.destinationPath(dest);
1776
+ if (!isFile_default(realDestFile) || bOverwrite) {
1777
+ if (isFile_default(realDestFile) && bOverwrite) {
1778
+ unlink_default(realDestFile);
1779
+ }
1780
+ action.call(oGenFs, actualSrc, realDestFile, options);
1781
+ }
1782
+ } catch (e) {
1783
+ throw e;
1784
+ }
1785
+ return dest;
1786
+ };
1787
+ var RUN_SAY = (oGen) => (message, options = { maxLength: 30 }) => {
1788
+ if (STRING !== typeof message) {
1789
+ oGen.log(JSON.stringify(message, null, "\t"));
1790
+ } else {
1791
+ oGen.log(yosay(message, options));
1792
+ }
1793
+ };
1794
+ var promptChainLocator = (prompts) => () => prompts.shift();
1795
+ var YoHelper = (oGen) => {
1796
+ const mkdir3 = (dir) => mkdirp(oGen.destinationPath(dir));
1797
+ const chdir = (dir) => oGen.destinationRoot(dir);
1798
+ const cp = RUN_CP(oGen);
1799
+ const say = RUN_SAY(oGen);
1800
+ if (!exitCb.current) {
1801
+ onExit(() => say(`Bye from us!
1802
+ Chat soon.`));
1803
+ }
1804
+ const promptChain = (promptLocator, cb, nextAnswer = {}) => {
1805
+ cb = cb || (() => true);
1806
+ let i = 0;
1807
+ lastAns.current = nextAnswer;
1808
+ const go = (thisPrompt) => {
1809
+ return thisPrompt ? oGen.prompt(thisPrompt).then((props) => {
1810
+ lastAns.current = { ...lastAns.current, ...props };
1811
+ const isContinue = cb(lastAns.current);
1812
+ if (isContinue) {
1813
+ i++;
1814
+ return go(promptLocator(i, lastAns.current));
1815
+ } else {
1816
+ return oGen.prompt([]);
1817
+ }
1818
+ }) : OBJ_SIZE(lastAns.current) ? lastAns.current : oGen.prompt([]);
1819
+ };
1820
+ return go(promptLocator(i, lastAns));
1821
+ };
1822
+ const chainUtil = {
1823
+ mergePromptOrOption: (prompts, cb = (nextPrompts, nextAnswer) => promptChain(promptChainLocator(nextPrompts), undefined, nextAnswer)) => {
1824
+ const options = {
1825
+ ...oGen.options,
1826
+ ...getDotYo(oGen.options)
1827
+ };
1828
+ const { nextAnswer, nextPrompts } = promptFilterByOptions(prompts, options);
1829
+ if (isNodePkgExecute()) {
1830
+ nextPrompts.forEach((p) => {
1831
+ if (p.name && p.default !== undefined) {
1832
+ nextAnswer[p.name] = typeof p.default === "function" ? p.default() : p.default;
1833
+ }
1834
+ });
1835
+ return Promise.resolve(nextAnswer);
1836
+ }
1837
+ return cb(nextPrompts, nextAnswer).then((props) => ({
1838
+ ...props,
1839
+ ...nextAnswer
1840
+ }));
1841
+ },
1842
+ promptChainLocator,
1843
+ promptChain
1844
+ };
1845
+ const syncJSON = (src, dest, options, cb) => {
1846
+ if (src != null) {
1847
+ dest = cp(src, dest, options);
1848
+ }
1849
+ cb = cb || ((json2) => json2);
1850
+ const json = oGen.readDestinationJSON(dest);
1851
+ const nextJson = cb(json, options);
1852
+ if (nextJson && dest != null) {
1853
+ return { json: nextJson, dest };
1854
+ }
1855
+ return;
1856
+ };
1857
+ const updateDestJSON = (dest, options, cb) => {
1858
+ const json = oGen.readDestinationJSON(dest);
1859
+ cb = cb || ((json2) => json2);
1860
+ const nextJson = cb(json, options);
1861
+ if (nextJson) {
1862
+ oGen.writeDestinationJSON(dest, json);
1863
+ return { json };
1864
+ }
1865
+ return;
1866
+ };
1867
+ return {
1868
+ say,
1869
+ cp,
1870
+ mkdir: mkdir3,
1871
+ getDestFolderName: () => getDestFolderName_default(oGen),
1872
+ chdir,
1873
+ chMainName: (name = oGen.mainName) => {
1874
+ if (name !== getDestFolderName_default(oGen)) {
1875
+ chdir(name);
1876
+ }
1877
+ },
1878
+ syncJSON,
1879
+ updateDestJSON,
1880
+ updateJSON: (src, dest, options, cb) => {
1881
+ const result = syncJSON(src, dest, options, cb);
1882
+ if (result) {
1883
+ const { json, dest: resolvedDest } = result;
1884
+ oGen.writeDestinationJSON(resolvedDest, json);
1885
+ return { json };
1886
+ }
1887
+ return;
1888
+ },
1889
+ onExit,
1890
+ exit: (cb, statusCode = 0) => {
1891
+ onExit(cb);
1892
+ process.exit(statusCode);
1893
+ },
1894
+ getDotYo,
1895
+ isFile: (f) => {
1896
+ const destPath = oGen.destinationPath(f);
1897
+ if (isFile_default(destPath)) {
1898
+ return destPath;
1899
+ } else {
1900
+ return false;
1901
+ }
1902
+ },
1903
+ glob: (srcPath, ...p) => {
1904
+ const actualSrc = isDir_default(srcPath) ? srcPath : oGen.templatePath(srcPath || "");
1905
+ globSync_default(actualSrc, p[0], p[1]);
1906
+ },
1907
+ promptResetDefault,
1908
+ ...chainUtil,
1909
+ promptChainAll: (prompts, {
1910
+ locator = chainUtil.promptChainLocator,
1911
+ callback
1912
+ } = {}) => {
1913
+ return chainUtil.mergePromptOrOption(prompts, (nextPrompts, nextAnswer) => {
1914
+ return chainUtil.promptChain(locator(nextPrompts), callback, nextAnswer);
1915
+ });
1916
+ },
1917
+ getAllAns: (customAns) => {
1918
+ return { ...customAns, ...lastAns.current };
1919
+ },
1920
+ handleAnswers: handleAnswers_default(oGen),
1921
+ handleKeywords: import_handleKeywords.default,
1922
+ composeWithBefore: (generatorPath, options) => {
1923
+ const ALL_PHASES = [
1924
+ "initializing",
1925
+ "prompting",
1926
+ "configuring",
1927
+ "default",
1928
+ "writing",
1929
+ "conflicts",
1930
+ "install",
1931
+ "end"
1932
+ ];
1933
+ const resolvedPath = __require.resolve(generatorPath);
1934
+ const GenClass = __require(resolvedPath);
1935
+ const ChildClass = GenClass.default || GenClass;
1936
+ const child = new ChildClass([], {
1937
+ ...oGen.options,
1938
+ ...options,
1939
+ env: oGen.env,
1940
+ resolved: resolvedPath
1941
+ });
1942
+ const runLoop = oGen.env.runLoop;
1943
+ ALL_PHASES.forEach((phase) => {
1944
+ const childFn = child[phase];
1945
+ if (typeof childFn !== "function")
1946
+ return;
1947
+ const subQueue = `before:${phase}`;
1948
+ runLoop.addSubQueue(subQueue, phase);
1949
+ runLoop.add(subQueue, (done) => {
1950
+ Promise.resolve(childFn.call(child)).then(done);
1951
+ });
1952
+ });
1953
+ }
1954
+ };
1955
+ };
1956
+ var YoHelper_default = YoHelper;
1957
+ var callFunc = function callFunc2(maybeFunc, functionArguments, scope, defaultReturns) {
1958
+ if (functionArguments === undefined) {
1959
+ functionArguments = [];
1960
+ }
1961
+ if (scope === undefined) {
1962
+ scope = T_UNDEFINED;
1963
+ }
1964
+ if (defaultReturns === undefined) {
1965
+ defaultReturns = T_UNDEFINED;
1966
+ }
1967
+ return FUNCTION === typeof maybeFunc ? maybeFunc.apply(scope, functionArguments) : UNDEFINED !== typeof defaultReturns ? defaultReturns : maybeFunc;
1968
+ };
1969
+ var callfunc_default = callFunc;
1970
+ var defaultI18n = {
1971
+ tip: ({ namespace }) => `Generate "${namespace}"
1972
+
1973
+ !!
1974
+
1975
+ You need create folder
1976
+ by yourself.`,
1977
+ isReady: ({ destFolderName }) => `We will put files to [${destFolderName}], do you confirm it?`,
1978
+ notReady: "Exit for not ready to create folder.",
1979
+ mainName: "Please confirm your naming? Or rename it."
1980
+ };
1981
+ var mainNamePrompt = (oGen, i18n) => {
1982
+ const { say, getDestFolderName: getDestFolderName2, getAllAns, exit } = YoHelper_default(oGen);
1983
+ const mergedI18n = { ...defaultI18n, ...i18n };
1984
+ oGen.argument("argMainName", { type: String, required: false });
1985
+ const { argMainName, namespace } = oGen.options;
1986
+ oGen.options.subGeneratorName = namespace.split(":")[1];
1987
+ const prompts = [];
1988
+ if (!argMainName) {
1989
+ say(callfunc_default(mergedI18n.tip, [{ namespace }]));
1990
+ prompts.push({
1991
+ type: "confirm",
1992
+ name: "isReady",
1993
+ message: callfunc_default(mergedI18n.isReady, [
1994
+ { destFolderName: getDestFolderName2() }
1995
+ ]),
1996
+ default: isNodePkgExecute()
1997
+ }, {
1998
+ when: (response) => {
1999
+ const allAns = getAllAns(response);
2000
+ if (!allAns.isReady) {
2001
+ exit(() => say(callfunc_default(mergedI18n.notReady)));
2002
+ }
2003
+ }
2004
+ });
2005
+ }
2006
+ prompts.push({
2007
+ type: "input",
2008
+ name: "mainName",
2009
+ message: callfunc_default(mergedI18n.mainName),
2010
+ default: argMainName || getDestFolderName2()
2011
+ });
2012
+ return prompts;
2013
+ };
2014
+ var mainNamePrompt_default = mainNamePrompt;
2015
+ var commonPrompt = {
2016
+ mainName: mainNamePrompt_default,
2017
+ desc: (oGen, { keyword = true } = {}) => {
2018
+ const nextPrompts = [
2019
+ {
2020
+ type: "input",
2021
+ name: "description",
2022
+ message: "Please input this description?",
2023
+ default: ""
2024
+ }
2025
+ ];
2026
+ if (keyword) {
2027
+ nextPrompts.push({
2028
+ type: "input",
2029
+ name: "keyword",
2030
+ message: "Please input keyword?",
2031
+ default: ""
2032
+ });
2033
+ }
2034
+ return nextPrompts;
2035
+ },
2036
+ author: (oGen) => [
2037
+ {
2038
+ type: "input",
2039
+ name: "authorName",
2040
+ message: "Please input author Name?",
2041
+ default: ""
2042
+ },
2043
+ {
2044
+ type: "input",
2045
+ name: "authorEmail",
2046
+ message: "Please input author Email?",
2047
+ default: ""
2048
+ }
2049
+ ],
2050
+ repository: (oGen, { defaultRepositoryName, defaultRepositoryOrgName } = {}) => [
2051
+ {
2052
+ type: "input",
2053
+ name: "repositoryName",
2054
+ message: "Please input code repository name ?",
2055
+ default: defaultRepositoryName
2056
+ },
2057
+ {
2058
+ type: "input",
2059
+ name: "repositoryOrgName",
2060
+ message: "Please input code repository organization name ?",
2061
+ default: defaultRepositoryOrgName
2062
+ }
2063
+ ],
2064
+ babel: (oGen) => [
2065
+ {
2066
+ type: "confirm",
2067
+ name: "isUseBabel",
2068
+ message: "Do you plan use babel ?",
2069
+ default: true
2070
+ },
2071
+ {
2072
+ type: "confirm",
2073
+ name: "babelRootMode",
2074
+ message: "will you push this under a monorepo (sub-package) ?",
2075
+ default: false,
2076
+ when: (response) => {
2077
+ const { getAllAns } = YoHelper_default(oGen);
2078
+ const allAns = getAllAns(response);
2079
+ if (allAns.isUseBabel) {
2080
+ return true;
2081
+ }
2082
+ return;
2083
+ }
2084
+ },
2085
+ {
2086
+ type: "confirm",
2087
+ name: "isUseBabelUI",
2088
+ message: "Is is a babel UI library?",
2089
+ default: false,
2090
+ when: (response) => {
2091
+ const { getAllAns } = YoHelper_default(oGen);
2092
+ const allAns = getAllAns(response);
2093
+ if (allAns.isUseBabel) {
2094
+ return true;
2095
+ }
2096
+ return;
2097
+ }
2098
+ },
2099
+ {
2100
+ type: "confirm",
2101
+ name: "isUseWebpack",
2102
+ message: "Do you use webpack ?",
2103
+ default: false
2104
+ }
2105
+ ]
2106
+ };
2107
+ var commonPrompt_default = commonPrompt;
2108
+ var getSubGenerators = (generatorsDir, exclude) => fs.readdirSync(generatorsDir).filter((name) => name !== exclude && fs.statSync(path.join(generatorsDir, name)).isDirectory()).sort();
2109
+ var isDirectInvocation = () => process.argv.some((arg) => arg.includes(":"));
2110
+ var promptSubGenerator = async (oGen, {
2111
+ currentDir,
2112
+ exclude = "app",
2113
+ first = "app"
2114
+ }) => {
2115
+ if (isDirectInvocation()) {
2116
+ return null;
2117
+ }
2118
+ const generatorsDir = path.resolve(currentDir, "..");
2119
+ const subGenerators = getSubGenerators(generatorsDir, exclude);
2120
+ const { generator: selected } = await oGen.prompt([
2121
+ {
2122
+ type: "list",
2123
+ name: "generator",
2124
+ message: "Which generator would you like to run?",
2125
+ choices: [first, ...subGenerators]
2126
+ }
2127
+ ]);
2128
+ if (selected && selected !== first) {
2129
+ oGen.composeWith(__require.resolve(path.join(generatorsDir, selected)), {
2130
+ ...oGen.options
2131
+ });
2132
+ return selected;
2133
+ }
2134
+ return null;
2135
+ };
2136
+
2137
+ // src/package-json/index.ts
2138
+ class package_json_default extends YoGenerator_default {
2139
+ writing() {
2140
+ const { getDotYo: getDotYo2, handleKeywords, updateJSON } = YoHelper_default(this);
2141
+ const payload = {
2142
+ mainName: "",
2143
+ description: "",
2144
+ babelRootMode: "",
2145
+ authorName: "",
2146
+ authorEmail: "",
2147
+ ...this.payload,
2148
+ ...this.options,
2149
+ ...getDotYo2(this.options)
2150
+ };
2151
+ updateJSON("package.json", null, payload, (data, {
2152
+ keyword,
2153
+ repository,
2154
+ repositoryHomepage
2155
+ }) => {
2156
+ handleKeywords(keyword, (arr) => data.keywords = arr);
2157
+ data.repository = repository;
2158
+ data.homepage = repositoryHomepage;
2159
+ return data;
2160
+ });
2161
+ }
2162
+ }
2163
+
2164
+ // src/babel-package-json/index.ts
2165
+ var exports_babel_package_json = {};
2166
+ __export(exports_babel_package_json, {
2167
+ default: () => babel_package_json_default
2168
+ });
2169
+ module.exports = __toCommonJS(exports_babel_package_json);
2170
+ var getUIBuildTypeScript = (filePattern) => `npx -p typescript tsc src/*.js ${filePattern} --jsx react-jsx --lib esnext,dom --declaration --allowJs --emitDeclarationOnly --skipLibCheck --declarationDir types`;
2171
+ var defaultPackageJSON = {
2172
+ dependencies: {
2173
+ "reshow-constant": "*",
2174
+ "reshow-runtime": "*"
2175
+ },
2176
+ devDependencies: {
2177
+ "@babel/cli": "^7.x",
2178
+ "reshow-unit-dom": "*"
2179
+ },
2180
+ scripts: {
2181
+ "update-compile-sh": "yo reshow:compile-sh",
2182
+ webpack: "webpack",
2183
+ start: "ws",
2184
+ format: "prettier-eslint --write 'src/**/*.js'",
2185
+ "clean:webpack": "find ./assets -name '*.*' | xargs rm -rf",
2186
+ clean: "find ./build ./types -name '*.*' | xargs rm -rf",
2187
+ "build:cjs": "BABEL_ENV=cjs babel src -d build/cjs/src --ignore /**/__tests__<%= babelRootMode %>",
2188
+ "build:es": "BABEL_ENV=es babel src -d build/es/src --out-file-extension .mjs<%= babelRootMode %>",
2189
+ "build:type": "npx -p typescript tsc src/*.js src/**/*.js --lib esnext --declaration --allowJs --emitDeclarationOnly --skipLibCheck --declarationDir types",
2190
+ build: "npm run clean && npm run build:cjs && npm run build:es && npm run build:type",
2191
+ mochaFor: "STRICT_MODE=on mocha -r global-jsdom/register",
2192
+ mocha: "npm run mochaFor -- 'build/{cjs,es}/**/__tests__/*.{js,mjs}'",
2193
+ "test:report": "npm run build && npm run mochaFor -- --reporter mocha-junit-reporter --reporter-options mochaFile=./test_output/mocha.xml 'build/{cjs,es}/**/__tests__/*.{js,mjs}'",
2194
+ test: "npm run build && npm run mocha",
2195
+ prepublishOnly: "npm run test"
2196
+ },
2197
+ files: ["types", "build", "package.json", "README.md"]
2198
+ };
2199
+
2200
+ class babel_package_json_default extends YoGenerator_default {
2201
+ default() {
2202
+ const { getDotYo: getDotYo2, composeWithBefore } = YoHelper_default(this);
2203
+ this.payload = {
2204
+ mainName: "",
2205
+ description: "",
2206
+ babelRootMode: "",
2207
+ authorName: "",
2208
+ authorEmail: "",
2209
+ ...this.payload,
2210
+ ...this.options,
2211
+ ...getDotYo2(this.options)
2212
+ };
2213
+ composeWithBefore(require.resolve("../package-json"), this.payload);
2214
+ }
2215
+ writing() {
2216
+ const { cp, handleKeywords, updateDestJSON } = YoHelper_default(this);
2217
+ const payload = this.payload;
2218
+ updateDestJSON("package.json", payload, (data = {}, {
2219
+ isApp,
2220
+ isUseWebpack,
2221
+ isUseBabel,
2222
+ isUseBabelUI,
2223
+ keyword,
2224
+ repository,
2225
+ repositoryHomepage,
2226
+ npmDependencies,
2227
+ mainName
2228
+ }) => {
2229
+ handleKeywords(keyword, (arr) => data.keywords = arr);
2230
+ const { scripts: defaultScripts, ...restDefaults } = defaultPackageJSON;
2231
+ Object.assign(data, restDefaults);
2232
+ data.scripts = { ...defaultScripts, ...data.scripts };
2233
+ data.repository = repository;
2234
+ data.homepage = repositoryHomepage;
2235
+ if (isApp) {
2236
+ data.private = true;
2237
+ data.dependencies = {
2238
+ pmvc_react_admin: "*",
2239
+ react: "^18.x",
2240
+ "react-dom": "^18.x",
2241
+ "reshow-app": "*",
2242
+ ...npmDependencies
2243
+ };
2244
+ delete data.devDependencies;
2245
+ delete data.version;
2246
+ data.scripts.prepublishOnly = "exit 1;";
2247
+ data.scripts.build = "npm run clean && npm run build:es";
2248
+ data.scripts["build:type"] = getUIBuildTypeScript("src/ui/**/*.jsx");
2249
+ } else {
2250
+ delete data.private;
2251
+ data.dependencies = {
2252
+ ...data.dependencies,
2253
+ ...npmDependencies
2254
+ };
2255
+ }
2256
+ if (!isUseBabel) {
2257
+ if (data.devDependencies) {
2258
+ delete data.devDependencies["@babel/cli"];
2259
+ }
2260
+ delete data.exports;
2261
+ delete data.module;
2262
+ delete data.scripts["build:cjs"];
2263
+ data.main = "./src/index.js";
2264
+ data.bin = { ...data.bin || {}, [mainName]: "./src/index.js" };
2265
+ data.files = data.files.filter((f) => f !== "build");
2266
+ data.files.push("src");
2267
+ } else {
2268
+ data.devDependencies["react-atomic-atom"] = "*";
2269
+ }
2270
+ if (isUseBabelUI) {
2271
+ delete data.bin;
2272
+ data.devDependencies["react"] = "^18.x";
2273
+ data.devDependencies["react-dom"] = "^18.x";
2274
+ data.devDependencies["reshow-unit"] = "*";
2275
+ data.scripts["build:type"] = getUIBuildTypeScript("src/ui/**/*.jsx");
2276
+ delete data.devDependencies["reshow-unit-dom"];
2277
+ }
2278
+ if (!isUseWebpack) {
2279
+ delete data.scripts["webpack"];
2280
+ delete data.scripts["clean:webpack"];
2281
+ } else {
2282
+ cp(".yo");
2283
+ }
2284
+ if (!isApp && !isUseBabel) {
2285
+ delete data.scripts["build:es"];
2286
+ delete data.scripts.build;
2287
+ delete data.scripts.clean;
2288
+ data.scripts.test = "npm run mocha";
2289
+ data.scripts.mocha = "npm run mochaFor -- 'src/**/__tests__/*.{js,mjs}'";
2290
+ }
2291
+ return data;
2292
+ });
2293
+ }
2294
+ }