flash-builder 1.0.14 → 1.0.15

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.
package/dist/index.cjs CHANGED
@@ -1,6 +1,5 @@
1
- #!/usr/bin/env bun
2
- // @bun @bun-cjs
3
- (function(exports, require, module, __filename, __dirname) {var __create = Object.create;
1
+ #!/usr/bin/env node
2
+ var __create = Object.create;
4
3
  var __getProtoOf = Object.getPrototypeOf;
5
4
  var __defProp = Object.defineProperty;
6
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -98,17 +97,17 @@ var require_main = __commonJS((exports2, module2) => {
98
97
  "\uD83D\uDD10 prevent building .env in docker: https://dotenvx.com/prebuild",
99
98
  "\uD83D\uDCE1 add observability to secrets: https://dotenvx.com/ops",
100
99
  "\uD83D\uDC65 sync secrets across teammates & machines: https://dotenvx.com/ops",
101
- "\uD83D\uDDC2\uFE0F backup and recover secrets: https://dotenvx.com/ops",
102
- "\u2705 audit secrets and track compliance: https://dotenvx.com/ops",
100
+ "\uD83D\uDDC2 backup and recover secrets: https://dotenvx.com/ops",
101
+ " audit secrets and track compliance: https://dotenvx.com/ops",
103
102
  "\uD83D\uDD04 add secrets lifecycle management: https://dotenvx.com/ops",
104
103
  "\uD83D\uDD11 add access controls to secrets: https://dotenvx.com/ops",
105
- "\uD83D\uDEE0\uFE0F run anywhere with `dotenvx run -- yourcommand`",
106
- "\u2699\uFE0F specify custom .env file path with { path: '/custom/path/.env' }",
107
- "\u2699\uFE0F enable debug logging with { debug: true }",
108
- "\u2699\uFE0F override existing env vars with { override: true }",
109
- "\u2699\uFE0F suppress all logs with { quiet: true }",
110
- "\u2699\uFE0F write to custom object with { processEnv: myObject }",
111
- "\u2699\uFE0F load multiple .env files with { path: ['.env.local', '.env'] }"
104
+ "\uD83D\uDEE0 run anywhere with `dotenvx run -- yourcommand`",
105
+ "⚙️ specify custom .env file path with { path: '/custom/path/.env' }",
106
+ "⚙️ enable debug logging with { debug: true }",
107
+ "⚙️ override existing env vars with { override: true }",
108
+ "⚙️ suppress all logs with { quiet: true }",
109
+ "⚙️ write to custom object with { processEnv: myObject }",
110
+ "⚙️ load multiple .env files with { path: ['.env.local', '.env'] }"
112
111
  ];
113
112
  function _getRandomTip() {
114
113
  return TIPS[Math.floor(Math.random() * TIPS.length)];
@@ -414,17 +413,17 @@ var require_main = __commonJS((exports2, module2) => {
414
413
  });
415
414
 
416
415
  // node_modules/meow/build/index.js
417
- var import_node_process4 = __toESM(require("process"));
416
+ var import_node_process4 = __toESM(require("node:process"));
418
417
 
419
418
  // node_modules/meow/build/dependencies.js
420
419
  var import_util = __toESM(require("util"));
421
420
  var import_path = require("path");
422
421
  var import_fs = require("fs");
423
- var import_node_module = __toESM(require("module"));
424
- var import_node_path = __toESM(require("path"));
425
- var import_node_process = __toESM(require("process"));
426
- var import_node_url = __toESM(require("url"));
427
- var import_node_fs = __toESM(require("fs"));
422
+ var import_node_module = __toESM(require("node:module"));
423
+ var import_node_path = __toESM(require("node:path"));
424
+ var import_node_process = __toESM(require("node:process"));
425
+ var import_node_url = __toESM(require("node:url"));
426
+ var import_node_fs = __toESM(require("node:fs"));
428
427
  var import_url = __toESM(require("url"));
429
428
  function camelCase$1(str) {
430
429
  const isCamelCase = str !== str.toLowerCase() && str !== str.toUpperCase();
@@ -2036,8 +2035,8 @@ function requireIdentifier() {
2036
2035
  identifier.isIdentifierChar = isIdentifierChar;
2037
2036
  identifier.isIdentifierName = isIdentifierName;
2038
2037
  identifier.isIdentifierStart = isIdentifierStart;
2039
- let nonASCIIidentifierStartChars = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC";
2040
- let nonASCIIidentifierChars = "\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65";
2038
+ let nonASCIIidentifierStartChars = "ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲊᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟍꟐꟑꟓꟕ-Ƛꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ";
2039
+ let nonASCIIidentifierChars = "·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࢗ-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‌‍‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";
2041
2040
  const nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]");
2042
2041
  const nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]");
2043
2042
  nonASCIIidentifierStartChars = nonASCIIidentifierChars = null;
@@ -9498,9 +9497,9 @@ function decamelizeKeys(input, options) {
9498
9497
  }
9499
9498
 
9500
9499
  // node_modules/meow/build/options.js
9501
- var import_node_process2 = __toESM(require("process"));
9502
- var import_node_path2 = __toESM(require("path"));
9503
- var import_node_url2 = require("url");
9500
+ var import_node_process2 = __toESM(require("node:process"));
9501
+ var import_node_path2 = __toESM(require("node:path"));
9502
+ var import_node_url2 = require("node:url");
9504
9503
 
9505
9504
  // node_modules/meow/build/utils.js
9506
9505
  var decamelizeFlagKey = (flagKey) => `--${decamelize(flagKey, { separator: "-" })}`;
@@ -9645,7 +9644,7 @@ var buildParserOptions = (options) => {
9645
9644
  };
9646
9645
 
9647
9646
  // node_modules/meow/build/validate.js
9648
- var import_node_process3 = __toESM(require("process"));
9647
+ var import_node_process3 = __toESM(require("node:process"));
9649
9648
  var validateFlags = (flags, options) => {
9650
9649
  for (const [flagKey, flagValue] of Object.entries(options.flags)) {
9651
9650
  if (flagKey !== "--" && !flagValue.isMultiple && Array.isArray(flags[flagKey])) {
@@ -9819,7 +9818,7 @@ var meow = (helpText, options = {}) => {
9819
9818
  };
9820
9819
 
9821
9820
  // version.ts
9822
- var version = "1.0.14";
9821
+ var version = "1.0.15";
9823
9822
  var version_default = version;
9824
9823
 
9825
9824
  // src/banner.ts
@@ -9847,8 +9846,8 @@ var LLM_BASE_URL = ENV.LLM_BASE_URL;
9847
9846
  var LLM_API_KEY = ENV.LLM_API_KEY || "";
9848
9847
 
9849
9848
  // src/commands/be/index.ts
9850
- var import_node_fs2 = require("fs");
9851
- var import_node_path3 = require("path");
9849
+ var import_node_fs2 = require("node:fs");
9850
+ var import_node_path3 = require("node:path");
9852
9851
 
9853
9852
  // src/utils/logger.ts
9854
9853
  function log(message, isVerbose = false, verbose = false) {
@@ -9919,7 +9918,7 @@ var envFile = `PORT=3000
9919
9918
  // src/commands/be/index.ts
9920
9919
  function beCommand(projectName, verbose, targetPath) {
9921
9920
  if (!projectName) {
9922
- console.error("\u274C Error: Project name is required");
9921
+ console.error(" Error: Project name is required");
9923
9922
  console.log("Usage: fbi be <project-name>");
9924
9923
  process.exit(1);
9925
9924
  }
@@ -9933,13 +9932,13 @@ function beCommand(projectName, verbose, targetPath) {
9933
9932
  const dirContent = import_node_fs2.readdirSync(projectPath);
9934
9933
  const hasContent = dirContent.length > 0;
9935
9934
  if (IS_NPMJS && hasContent) {
9936
- console.warn(`\u26A0\uFE0F Warning: Directory '${projectName}' already exists and is not empty`);
9935
+ console.warn(`⚠️ Warning: Directory '${projectName}' already exists and is not empty`);
9937
9936
  const answer = prompt("Do you want to continue and overwrite? (y/n): ");
9938
9937
  if (answer?.toLowerCase() !== "y") {
9939
- console.log("\u274C Operation cancelled");
9938
+ console.log(" Operation cancelled");
9940
9939
  process.exit(1);
9941
9940
  }
9942
- console.log("\u2705 Continuing...");
9941
+ console.log(" Continuing...");
9943
9942
  }
9944
9943
  }
9945
9944
  if (!IS_NPMJS) {
@@ -9958,7 +9957,7 @@ function beCommand(projectName, verbose, targetPath) {
9958
9957
  import_node_fs2.writeFileSync(import_node_path3.join(projectPath, ".env"), envFile);
9959
9958
  import_node_fs2.writeFileSync(import_node_path3.join(projectPath, ".gitignore"), gitignore);
9960
9959
  import_node_fs2.writeFileSync(import_node_path3.join(projectPath, "README.md"), readme(projectName));
9961
- log(`\u2705 Backend project '${projectName}' created successfully!`, false, verbose);
9960
+ log(`✅ Backend project '${projectName}' created successfully!`, false, verbose);
9962
9961
  log(`
9963
9962
  \uD83D\uDCE6 Installing dependencies...`, false, verbose);
9964
9963
  const installProcess = Bun.spawnSync(["bun", "install"], {
@@ -9967,9 +9966,9 @@ function beCommand(projectName, verbose, targetPath) {
9967
9966
  stderr: "inherit"
9968
9967
  });
9969
9968
  if (installProcess.exitCode === 0) {
9970
- log(`\u2705 Dependencies installed successfully!`, false, verbose);
9969
+ log(`✅ Dependencies installed successfully!`, false, verbose);
9971
9970
  } else {
9972
- log(`\u274C Failed to install dependencies`, false, verbose);
9971
+ log(`❌ Failed to install dependencies`, false, verbose);
9973
9972
  }
9974
9973
  log(`
9975
9974
  Next steps:`, true, verbose);
@@ -9980,17 +9979,17 @@ Next steps:`, true, verbose);
9980
9979
  }
9981
9980
 
9982
9981
  // src/commands/mcp/index.ts
9983
- var import_node_fs3 = require("fs");
9984
- var import_node_path4 = require("path");
9982
+ var import_node_fs3 = require("node:fs");
9983
+ var import_node_path4 = require("node:path");
9985
9984
  function mcpCommand(projectName, verbose) {
9986
9985
  if (!projectName) {
9987
- console.error("\u274C Error: Project name is required");
9986
+ console.error(" Error: Project name is required");
9988
9987
  console.log("Usage: fbi mcp <project-name>");
9989
9988
  process.exit(1);
9990
9989
  }
9991
9990
  const projectPath = import_node_path4.join(PWD, projectName);
9992
9991
  if (import_node_fs3.existsSync(projectPath)) {
9993
- console.error(`\u274C Error: Directory '${projectName}' already exists`);
9992
+ console.error(`❌ Error: Directory '${projectName}' already exists`);
9994
9993
  process.exit(1);
9995
9994
  }
9996
9995
  log(`\uD83D\uDE80 Creating new MCP server project: ${projectName}`, false, verbose);
@@ -10060,7 +10059,7 @@ bun install
10060
10059
  bun run dev
10061
10060
  \`\`\`
10062
10061
  `);
10063
- log(`\u2705 MCP server project '${projectName}' created successfully!`, false, verbose);
10062
+ log(`✅ MCP server project '${projectName}' created successfully!`, false, verbose);
10064
10063
  log(`
10065
10064
  Next steps:`, true, verbose);
10066
10065
  log(` cd ${projectName}`, true, verbose);
@@ -10069,13 +10068,13 @@ Next steps:`, true, verbose);
10069
10068
  }
10070
10069
 
10071
10070
  // src/commands/sync/index.ts
10072
- var import_node_fs4 = require("fs");
10073
- var import_node_path5 = require("path");
10071
+ var import_node_fs4 = require("node:fs");
10072
+ var import_node_path5 = require("node:path");
10074
10073
  function syncCommand(verbose) {
10075
10074
  log(`\uD83D\uDD04 Syncing backend interface with application target...`, false, verbose);
10076
10075
  const packageJsonPath = import_node_path5.join(PWD, "package.json");
10077
10076
  if (!import_node_fs4.existsSync(packageJsonPath)) {
10078
- console.error("\u274C Error: package.json not found in current directory");
10077
+ console.error(" Error: package.json not found in current directory");
10079
10078
  console.log("Make sure you're in a project directory");
10080
10079
  process.exit(1);
10081
10080
  }
@@ -10083,9 +10082,9 @@ function syncCommand(verbose) {
10083
10082
  const packageJson2 = JSON.parse(import_node_fs4.readFileSync(packageJsonPath, "utf-8"));
10084
10083
  log(`Project: ${packageJson2.name}`, true, verbose);
10085
10084
  log(`Version: ${packageJson2.version}`, true, verbose);
10086
- log(`\u2705 Sync completed successfully!`, false, verbose);
10085
+ log(`✅ Sync completed successfully!`, false, verbose);
10087
10086
  } catch (error) {
10088
- console.error("\u274C Error reading package.json:", error);
10087
+ console.error(" Error reading package.json:", error);
10089
10088
  process.exit(1);
10090
10089
  }
10091
10090
  }
@@ -10133,9 +10132,8 @@ switch (command) {
10133
10132
  break;
10134
10133
  default:
10135
10134
  if (command) {
10136
- console.error(`\u274C Unknown command: ${command}`);
10135
+ console.error(`❌ Unknown command: ${command}`);
10137
10136
  }
10138
10137
  cli.showHelp();
10139
10138
  process.exit(command ? 1 : 0);
10140
10139
  }
10141
- })
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- #!/usr/bin/env bun
2
- // @bun
1
+ #!/usr/bin/env node
2
+ import { createRequire } from "node:module";
3
3
  var __create = Object.create;
4
4
  var __getProtoOf = Object.getPrototypeOf;
5
5
  var __defProp = Object.defineProperty;
@@ -17,7 +17,7 @@ var __toESM = (mod, isNodeMode, target) => {
17
17
  return to;
18
18
  };
19
19
  var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
20
- var __require = import.meta.require;
20
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
21
21
 
22
22
  // node_modules/dotenv/package.json
23
23
  var require_package = __commonJS((exports, module) => {
@@ -99,17 +99,17 @@ var require_main = __commonJS((exports, module) => {
99
99
  "\uD83D\uDD10 prevent building .env in docker: https://dotenvx.com/prebuild",
100
100
  "\uD83D\uDCE1 add observability to secrets: https://dotenvx.com/ops",
101
101
  "\uD83D\uDC65 sync secrets across teammates & machines: https://dotenvx.com/ops",
102
- "\uD83D\uDDC2\uFE0F backup and recover secrets: https://dotenvx.com/ops",
103
- "\u2705 audit secrets and track compliance: https://dotenvx.com/ops",
102
+ "\uD83D\uDDC2 backup and recover secrets: https://dotenvx.com/ops",
103
+ " audit secrets and track compliance: https://dotenvx.com/ops",
104
104
  "\uD83D\uDD04 add secrets lifecycle management: https://dotenvx.com/ops",
105
105
  "\uD83D\uDD11 add access controls to secrets: https://dotenvx.com/ops",
106
- "\uD83D\uDEE0\uFE0F run anywhere with `dotenvx run -- yourcommand`",
107
- "\u2699\uFE0F specify custom .env file path with { path: '/custom/path/.env' }",
108
- "\u2699\uFE0F enable debug logging with { debug: true }",
109
- "\u2699\uFE0F override existing env vars with { override: true }",
110
- "\u2699\uFE0F suppress all logs with { quiet: true }",
111
- "\u2699\uFE0F write to custom object with { processEnv: myObject }",
112
- "\u2699\uFE0F load multiple .env files with { path: ['.env.local', '.env'] }"
106
+ "\uD83D\uDEE0 run anywhere with `dotenvx run -- yourcommand`",
107
+ "⚙️ specify custom .env file path with { path: '/custom/path/.env' }",
108
+ "⚙️ enable debug logging with { debug: true }",
109
+ "⚙️ override existing env vars with { override: true }",
110
+ "⚙️ suppress all logs with { quiet: true }",
111
+ "⚙️ write to custom object with { processEnv: myObject }",
112
+ "⚙️ load multiple .env files with { path: ['.env.local', '.env'] }"
113
113
  ];
114
114
  function _getRandomTip() {
115
115
  return TIPS[Math.floor(Math.random() * TIPS.length)];
@@ -415,17 +415,17 @@ var require_main = __commonJS((exports, module) => {
415
415
  });
416
416
 
417
417
  // node_modules/meow/build/index.js
418
- import process4 from "process";
418
+ import process4 from "node:process";
419
419
 
420
420
  // node_modules/meow/build/dependencies.js
421
421
  import require$$0$1, { format } from "util";
422
422
  import { resolve, normalize } from "path";
423
423
  import { readFileSync } from "fs";
424
- import require$$4, { createRequire } from "module";
425
- import path from "path";
426
- import process$1 from "process";
427
- import require$$0$2, { fileURLToPath } from "url";
428
- import fs from "fs";
424
+ import require$$4, { createRequire as createRequire2 } from "node:module";
425
+ import path from "node:path";
426
+ import process$1 from "node:process";
427
+ import require$$0$2, { fileURLToPath } from "node:url";
428
+ import fs from "node:fs";
429
429
  import require$$0 from "url";
430
430
  function camelCase$1(str) {
431
431
  const isCamelCase = str !== str.toLowerCase() && str !== str.toUpperCase();
@@ -1364,7 +1364,7 @@ if (nodeVersion) {
1364
1364
  }
1365
1365
  }
1366
1366
  var env = process ? process.env : {};
1367
- var require2 = createRequire ? createRequire(import.meta.url) : undefined;
1367
+ var require2 = createRequire2 ? createRequire2(import.meta.url) : undefined;
1368
1368
  var parser = new YargsParser({
1369
1369
  cwd: process.cwd,
1370
1370
  env: () => {
@@ -2037,8 +2037,8 @@ function requireIdentifier() {
2037
2037
  identifier.isIdentifierChar = isIdentifierChar;
2038
2038
  identifier.isIdentifierName = isIdentifierName;
2039
2039
  identifier.isIdentifierStart = isIdentifierStart;
2040
- let nonASCIIidentifierStartChars = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC";
2041
- let nonASCIIidentifierChars = "\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65";
2040
+ let nonASCIIidentifierStartChars = "ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲊᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟍꟐꟑꟓꟕ-Ƛꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ";
2041
+ let nonASCIIidentifierChars = "·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࢗ-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‌‍‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";
2042
2042
  const nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]");
2043
2043
  const nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]");
2044
2044
  nonASCIIidentifierStartChars = nonASCIIidentifierChars = null;
@@ -9499,9 +9499,9 @@ function decamelizeKeys(input, options) {
9499
9499
  }
9500
9500
 
9501
9501
  // node_modules/meow/build/options.js
9502
- import process2 from "process";
9503
- import path2 from "path";
9504
- import { fileURLToPath as fileURLToPath2 } from "url";
9502
+ import process2 from "node:process";
9503
+ import path2 from "node:path";
9504
+ import { fileURLToPath as fileURLToPath2 } from "node:url";
9505
9505
 
9506
9506
  // node_modules/meow/build/utils.js
9507
9507
  var decamelizeFlagKey = (flagKey) => `--${decamelize(flagKey, { separator: "-" })}`;
@@ -9646,7 +9646,7 @@ var buildParserOptions = (options) => {
9646
9646
  };
9647
9647
 
9648
9648
  // node_modules/meow/build/validate.js
9649
- import process3 from "process";
9649
+ import process3 from "node:process";
9650
9650
  var validateFlags = (flags, options) => {
9651
9651
  for (const [flagKey, flagValue] of Object.entries(options.flags)) {
9652
9652
  if (flagKey !== "--" && !flagValue.isMultiple && Array.isArray(flags[flagKey])) {
@@ -9820,7 +9820,7 @@ var meow = (helpText, options = {}) => {
9820
9820
  };
9821
9821
 
9822
9822
  // version.ts
9823
- var version = "1.0.14";
9823
+ var version = "1.0.15";
9824
9824
  var version_default = version;
9825
9825
 
9826
9826
  // src/banner.ts
@@ -9854,8 +9854,8 @@ import {
9854
9854
  writeFileSync,
9855
9855
  rmSync,
9856
9856
  readdirSync
9857
- } from "fs";
9858
- import { join } from "path";
9857
+ } from "node:fs";
9858
+ import { join } from "node:path";
9859
9859
 
9860
9860
  // src/utils/logger.ts
9861
9861
  function log(message, isVerbose = false, verbose = false) {
@@ -9926,7 +9926,7 @@ var envFile = `PORT=3000
9926
9926
  // src/commands/be/index.ts
9927
9927
  function beCommand(projectName, verbose, targetPath) {
9928
9928
  if (!projectName) {
9929
- console.error("\u274C Error: Project name is required");
9929
+ console.error(" Error: Project name is required");
9930
9930
  console.log("Usage: fbi be <project-name>");
9931
9931
  process.exit(1);
9932
9932
  }
@@ -9940,13 +9940,13 @@ function beCommand(projectName, verbose, targetPath) {
9940
9940
  const dirContent = readdirSync(projectPath);
9941
9941
  const hasContent = dirContent.length > 0;
9942
9942
  if (IS_NPMJS && hasContent) {
9943
- console.warn(`\u26A0\uFE0F Warning: Directory '${projectName}' already exists and is not empty`);
9943
+ console.warn(`⚠️ Warning: Directory '${projectName}' already exists and is not empty`);
9944
9944
  const answer = prompt("Do you want to continue and overwrite? (y/n): ");
9945
9945
  if (answer?.toLowerCase() !== "y") {
9946
- console.log("\u274C Operation cancelled");
9946
+ console.log(" Operation cancelled");
9947
9947
  process.exit(1);
9948
9948
  }
9949
- console.log("\u2705 Continuing...");
9949
+ console.log(" Continuing...");
9950
9950
  }
9951
9951
  }
9952
9952
  if (!IS_NPMJS) {
@@ -9965,7 +9965,7 @@ function beCommand(projectName, verbose, targetPath) {
9965
9965
  writeFileSync(join(projectPath, ".env"), envFile);
9966
9966
  writeFileSync(join(projectPath, ".gitignore"), gitignore);
9967
9967
  writeFileSync(join(projectPath, "README.md"), readme(projectName));
9968
- log(`\u2705 Backend project '${projectName}' created successfully!`, false, verbose);
9968
+ log(`✅ Backend project '${projectName}' created successfully!`, false, verbose);
9969
9969
  log(`
9970
9970
  \uD83D\uDCE6 Installing dependencies...`, false, verbose);
9971
9971
  const installProcess = Bun.spawnSync(["bun", "install"], {
@@ -9974,9 +9974,9 @@ function beCommand(projectName, verbose, targetPath) {
9974
9974
  stderr: "inherit"
9975
9975
  });
9976
9976
  if (installProcess.exitCode === 0) {
9977
- log(`\u2705 Dependencies installed successfully!`, false, verbose);
9977
+ log(`✅ Dependencies installed successfully!`, false, verbose);
9978
9978
  } else {
9979
- log(`\u274C Failed to install dependencies`, false, verbose);
9979
+ log(`❌ Failed to install dependencies`, false, verbose);
9980
9980
  }
9981
9981
  log(`
9982
9982
  Next steps:`, true, verbose);
@@ -9987,17 +9987,17 @@ Next steps:`, true, verbose);
9987
9987
  }
9988
9988
 
9989
9989
  // src/commands/mcp/index.ts
9990
- import { existsSync as existsSync2, mkdirSync as mkdirSync2, writeFileSync as writeFileSync2 } from "fs";
9991
- import { join as join2 } from "path";
9990
+ import { existsSync as existsSync2, mkdirSync as mkdirSync2, writeFileSync as writeFileSync2 } from "node:fs";
9991
+ import { join as join2 } from "node:path";
9992
9992
  function mcpCommand(projectName, verbose) {
9993
9993
  if (!projectName) {
9994
- console.error("\u274C Error: Project name is required");
9994
+ console.error(" Error: Project name is required");
9995
9995
  console.log("Usage: fbi mcp <project-name>");
9996
9996
  process.exit(1);
9997
9997
  }
9998
9998
  const projectPath = join2(PWD, projectName);
9999
9999
  if (existsSync2(projectPath)) {
10000
- console.error(`\u274C Error: Directory '${projectName}' already exists`);
10000
+ console.error(`❌ Error: Directory '${projectName}' already exists`);
10001
10001
  process.exit(1);
10002
10002
  }
10003
10003
  log(`\uD83D\uDE80 Creating new MCP server project: ${projectName}`, false, verbose);
@@ -10067,7 +10067,7 @@ bun install
10067
10067
  bun run dev
10068
10068
  \`\`\`
10069
10069
  `);
10070
- log(`\u2705 MCP server project '${projectName}' created successfully!`, false, verbose);
10070
+ log(`✅ MCP server project '${projectName}' created successfully!`, false, verbose);
10071
10071
  log(`
10072
10072
  Next steps:`, true, verbose);
10073
10073
  log(` cd ${projectName}`, true, verbose);
@@ -10076,13 +10076,13 @@ Next steps:`, true, verbose);
10076
10076
  }
10077
10077
 
10078
10078
  // src/commands/sync/index.ts
10079
- import { existsSync as existsSync3, readFileSync as readFileSync2 } from "fs";
10080
- import { join as join3 } from "path";
10079
+ import { existsSync as existsSync3, readFileSync as readFileSync2 } from "node:fs";
10080
+ import { join as join3 } from "node:path";
10081
10081
  function syncCommand(verbose) {
10082
10082
  log(`\uD83D\uDD04 Syncing backend interface with application target...`, false, verbose);
10083
10083
  const packageJsonPath = join3(PWD, "package.json");
10084
10084
  if (!existsSync3(packageJsonPath)) {
10085
- console.error("\u274C Error: package.json not found in current directory");
10085
+ console.error(" Error: package.json not found in current directory");
10086
10086
  console.log("Make sure you're in a project directory");
10087
10087
  process.exit(1);
10088
10088
  }
@@ -10090,9 +10090,9 @@ function syncCommand(verbose) {
10090
10090
  const packageJson2 = JSON.parse(readFileSync2(packageJsonPath, "utf-8"));
10091
10091
  log(`Project: ${packageJson2.name}`, true, verbose);
10092
10092
  log(`Version: ${packageJson2.version}`, true, verbose);
10093
- log(`\u2705 Sync completed successfully!`, false, verbose);
10093
+ log(`✅ Sync completed successfully!`, false, verbose);
10094
10094
  } catch (error) {
10095
- console.error("\u274C Error reading package.json:", error);
10095
+ console.error(" Error reading package.json:", error);
10096
10096
  process.exit(1);
10097
10097
  }
10098
10098
  }
@@ -10140,7 +10140,7 @@ switch (command) {
10140
10140
  break;
10141
10141
  default:
10142
10142
  if (command) {
10143
- console.error(`\u274C Unknown command: ${command}`);
10143
+ console.error(`❌ Unknown command: ${command}`);
10144
10144
  }
10145
10145
  cli.showHelp();
10146
10146
  process.exit(command ? 1 : 0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flash-builder",
3
- "version": "1.0.14",
3
+ "version": "1.0.15",
4
4
  "description": "",
5
5
  "homepage": "https://github.com/jefripunza/flash-builder-cli#readme",
6
6
  "repository": {