@base44-preview/cli 0.1.2-pr.561.234c4ed → 0.1.2-pr.563.1f1fb0e

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/cli/index.js CHANGED
@@ -12980,11 +12980,11 @@ var require_ejs = __commonJS((exports) => {
12980
12980
  exports.localsName = _DEFAULT_LOCALS_NAME;
12981
12981
  exports.promiseImpl = new Function("return this;")().Promise;
12982
12982
  exports.resolveInclude = function(name2, filename, isDir) {
12983
- var dirname9 = path11.dirname;
12984
- var extname = path11.extname;
12985
- var resolve2 = path11.resolve;
12986
- var includePath = resolve2(isDir ? filename : dirname9(filename), name2);
12987
- var ext = extname(name2);
12983
+ var dirname10 = path11.dirname;
12984
+ var extname2 = path11.extname;
12985
+ var resolve4 = path11.resolve;
12986
+ var includePath = resolve4(isDir ? filename : dirname10(filename), name2);
12987
+ var ext = extname2(name2);
12988
12988
  if (!ext) {
12989
12989
  includePath += ".ejs";
12990
12990
  }
@@ -13058,10 +13058,10 @@ var require_ejs = __commonJS((exports) => {
13058
13058
  var result;
13059
13059
  if (!cb) {
13060
13060
  if (typeof exports.promiseImpl == "function") {
13061
- return new exports.promiseImpl(function(resolve2, reject) {
13061
+ return new exports.promiseImpl(function(resolve4, reject) {
13062
13062
  try {
13063
13063
  result = handleCache(options)(data);
13064
- resolve2(result);
13064
+ resolve4(result);
13065
13065
  } catch (err) {
13066
13066
  reject(err);
13067
13067
  }
@@ -16499,12 +16499,12 @@ var require_isexe = __commonJS((exports, module) => {
16499
16499
  if (typeof Promise !== "function") {
16500
16500
  throw new TypeError("callback not provided");
16501
16501
  }
16502
- return new Promise(function(resolve3, reject) {
16502
+ return new Promise(function(resolve5, reject) {
16503
16503
  isexe(path11, options || {}, function(er, is) {
16504
16504
  if (er) {
16505
16505
  reject(er);
16506
16506
  } else {
16507
- resolve3(is);
16507
+ resolve5(is);
16508
16508
  }
16509
16509
  });
16510
16510
  });
@@ -16566,27 +16566,27 @@ var require_which = __commonJS((exports, module) => {
16566
16566
  opt = {};
16567
16567
  const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
16568
16568
  const found = [];
16569
- const step = (i) => new Promise((resolve3, reject) => {
16569
+ const step = (i) => new Promise((resolve5, reject) => {
16570
16570
  if (i === pathEnv.length)
16571
- return opt.all && found.length ? resolve3(found) : reject(getNotFoundError(cmd));
16571
+ return opt.all && found.length ? resolve5(found) : reject(getNotFoundError(cmd));
16572
16572
  const ppRaw = pathEnv[i];
16573
16573
  const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
16574
16574
  const pCmd = path11.join(pathPart, cmd);
16575
16575
  const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
16576
- resolve3(subStep(p, i, 0));
16576
+ resolve5(subStep(p, i, 0));
16577
16577
  });
16578
- const subStep = (p, i, ii) => new Promise((resolve3, reject) => {
16578
+ const subStep = (p, i, ii) => new Promise((resolve5, reject) => {
16579
16579
  if (ii === pathExt.length)
16580
- return resolve3(step(i + 1));
16580
+ return resolve5(step(i + 1));
16581
16581
  const ext = pathExt[ii];
16582
16582
  isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {
16583
16583
  if (!er && is) {
16584
16584
  if (opt.all)
16585
16585
  found.push(p + ext);
16586
16586
  else
16587
- return resolve3(p + ext);
16587
+ return resolve5(p + ext);
16588
16588
  }
16589
- return resolve3(subStep(p, i, ii + 1));
16589
+ return resolve5(subStep(p, i, ii + 1));
16590
16590
  });
16591
16591
  });
16592
16592
  return cb ? step(0).then((res) => cb(null, res), cb) : step(0);
@@ -121156,7 +121156,7 @@ function getDataProtocolModuleFormat(parsed) {
121156
121156
  const { 1: mime } = /^([^/]+\/[^;,]+)[^,]*?(;base64)?,/.exec(parsed.pathname) || [null, null, null];
121157
121157
  return mimeToFormat(mime);
121158
121158
  }
121159
- function extname(url3) {
121159
+ function extname2(url3) {
121160
121160
  const pathname = url3.pathname;
121161
121161
  let index = pathname.length;
121162
121162
  while (index--) {
@@ -121171,7 +121171,7 @@ function extname(url3) {
121171
121171
  return "";
121172
121172
  }
121173
121173
  function getFileProtocolModuleFormat(url3, _context, ignoreErrors) {
121174
- const value = extname(url3);
121174
+ const value = extname2(url3);
121175
121175
  if (value === ".js") {
121176
121176
  const packageType = getPackageType(url3);
121177
121177
  if (packageType !== "none") {
@@ -138269,11 +138269,11 @@ var require_prettier = __commonJS((exports, module) => {
138269
138269
  var require_formatter = __commonJS((exports) => {
138270
138270
  var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P9, generator) {
138271
138271
  function adopt(value) {
138272
- return value instanceof P9 ? value : new P9(function(resolve12) {
138273
- resolve12(value);
138272
+ return value instanceof P9 ? value : new P9(function(resolve14) {
138273
+ resolve14(value);
138274
138274
  });
138275
138275
  }
138276
- return new (P9 || (P9 = Promise))(function(resolve12, reject) {
138276
+ return new (P9 || (P9 = Promise))(function(resolve14, reject) {
138277
138277
  function fulfilled(value) {
138278
138278
  try {
138279
138279
  step(generator.next(value));
@@ -138289,7 +138289,7 @@ var require_formatter = __commonJS((exports) => {
138289
138289
  }
138290
138290
  }
138291
138291
  function step(result) {
138292
- result.done ? resolve12(result.value) : adopt(result.value).then(fulfilled, rejected);
138292
+ result.done ? resolve14(result.value) : adopt(result.value).then(fulfilled, rejected);
138293
138293
  }
138294
138294
  step((generator = generator.apply(thisArg, _arguments || [])).next());
138295
138295
  });
@@ -142942,7 +142942,7 @@ var require_url = __commonJS((exports) => {
142942
142942
  };
142943
142943
  Object.defineProperty(exports, "__esModule", { value: true });
142944
142944
  exports.parse = undefined;
142945
- exports.resolve = resolve12;
142945
+ exports.resolve = resolve14;
142946
142946
  exports.cwd = cwd;
142947
142947
  exports.getProtocol = getProtocol;
142948
142948
  exports.getExtension = getExtension;
@@ -142954,7 +142954,7 @@ var require_url = __commonJS((exports) => {
142954
142954
  exports.fromFileSystemPath = fromFileSystemPath;
142955
142955
  exports.toFileSystemPath = toFileSystemPath;
142956
142956
  exports.safePointerToPath = safePointerToPath;
142957
- exports.relative = relative4;
142957
+ exports.relative = relative5;
142958
142958
  var convert_path_to_posix_1 = __importDefault(require_convert_path_to_posix());
142959
142959
  var path_1 = __importStar(__require("path"));
142960
142960
  var forwardSlashPattern = /\//g;
@@ -142970,7 +142970,7 @@ var require_url = __commonJS((exports) => {
142970
142970
  var urlDecodePatterns = [/%23/g, "#", /%24/g, "$", /%26/g, "&", /%2C/g, ",", /%40/g, "@"];
142971
142971
  var parse11 = (u4) => new URL(u4);
142972
142972
  exports.parse = parse11;
142973
- function resolve12(from, to5) {
142973
+ function resolve14(from, to5) {
142974
142974
  const fromUrl = new URL((0, convert_path_to_posix_1.default)(from), "https://aaa.nonexistanturl.com");
142975
142975
  const resolvedUrl = new URL((0, convert_path_to_posix_1.default)(to5), fromUrl);
142976
142976
  const endSpaces = to5.match(/(\s*)$/)?.[1] || "";
@@ -143104,9 +143104,9 @@ var require_url = __commonJS((exports) => {
143104
143104
  return decodeURIComponent(value).replace(jsonPointerSlash, "/").replace(jsonPointerTilde, "~");
143105
143105
  });
143106
143106
  }
143107
- function relative4(from, to5) {
143107
+ function relative5(from, to5) {
143108
143108
  if (!isFileSystemPath(from) || !isFileSystemPath(to5)) {
143109
- return resolve12(from, to5);
143109
+ return resolve14(from, to5);
143110
143110
  }
143111
143111
  const fromDir = path_1.default.dirname(stripHash(from));
143112
143112
  const toPath4 = stripHash(to5);
@@ -143782,7 +143782,7 @@ var require_plugins = __commonJS((exports) => {
143782
143782
  let plugin;
143783
143783
  let lastError;
143784
143784
  let index = 0;
143785
- return new Promise((resolve12, reject) => {
143785
+ return new Promise((resolve14, reject) => {
143786
143786
  runNextPlugin();
143787
143787
  function runNextPlugin() {
143788
143788
  plugin = plugins[index++];
@@ -143810,7 +143810,7 @@ var require_plugins = __commonJS((exports) => {
143810
143810
  }
143811
143811
  }
143812
143812
  function onSuccess(result) {
143813
- resolve12({
143813
+ resolve14({
143814
143814
  plugin,
143815
143815
  result
143816
143816
  });
@@ -145143,11 +145143,11 @@ var require_lib3 = __commonJS((exports) => {
145143
145143
  var require_resolver = __commonJS((exports) => {
145144
145144
  var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P9, generator) {
145145
145145
  function adopt(value) {
145146
- return value instanceof P9 ? value : new P9(function(resolve12) {
145147
- resolve12(value);
145146
+ return value instanceof P9 ? value : new P9(function(resolve14) {
145147
+ resolve14(value);
145148
145148
  });
145149
145149
  }
145150
- return new (P9 || (P9 = Promise))(function(resolve12, reject) {
145150
+ return new (P9 || (P9 = Promise))(function(resolve14, reject) {
145151
145151
  function fulfilled(value) {
145152
145152
  try {
145153
145153
  step(generator.next(value));
@@ -145163,7 +145163,7 @@ var require_resolver = __commonJS((exports) => {
145163
145163
  }
145164
145164
  }
145165
145165
  function step(result) {
145166
- result.done ? resolve12(result.value) : adopt(result.value).then(fulfilled, rejected);
145166
+ result.done ? resolve14(result.value) : adopt(result.value).then(fulfilled, rejected);
145167
145167
  }
145168
145168
  step((generator = generator.apply(thisArg, _arguments || [])).next());
145169
145169
  });
@@ -145284,11 +145284,11 @@ var require_optionValidator = __commonJS((exports) => {
145284
145284
  var require_src3 = __commonJS((exports) => {
145285
145285
  var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P9, generator) {
145286
145286
  function adopt(value) {
145287
- return value instanceof P9 ? value : new P9(function(resolve12) {
145288
- resolve12(value);
145287
+ return value instanceof P9 ? value : new P9(function(resolve14) {
145288
+ resolve14(value);
145289
145289
  });
145290
145290
  }
145291
- return new (P9 || (P9 = Promise))(function(resolve12, reject) {
145291
+ return new (P9 || (P9 = Promise))(function(resolve14, reject) {
145292
145292
  function fulfilled(value) {
145293
145293
  try {
145294
145294
  step(generator.next(value));
@@ -145304,7 +145304,7 @@ var require_src3 = __commonJS((exports) => {
145304
145304
  }
145305
145305
  }
145306
145306
  function step(result) {
145307
- result.done ? resolve12(result.value) : adopt(result.value).then(fulfilled, rejected);
145307
+ result.done ? resolve14(result.value) : adopt(result.value).then(fulfilled, rejected);
145308
145308
  }
145309
145309
  step((generator = generator.apply(thisArg, _arguments || [])).next());
145310
145310
  });
@@ -146286,7 +146286,7 @@ var require_depd = __commonJS((exports, module) => {
146286
146286
  * Copyright(c) 2014-2018 Douglas Christopher Wilson
146287
146287
  * MIT Licensed
146288
146288
  */
146289
- var relative4 = __require("path").relative;
146289
+ var relative5 = __require("path").relative;
146290
146290
  module.exports = depd;
146291
146291
  var basePath = process.cwd();
146292
146292
  function containsNamespace(str, namespace) {
@@ -146482,7 +146482,7 @@ var require_depd = __commonJS((exports, module) => {
146482
146482
  return formatted;
146483
146483
  }
146484
146484
  function formatLocation(callSite) {
146485
- return relative4(basePath, callSite[0]) + ":" + callSite[1] + ":" + callSite[2];
146485
+ return relative5(basePath, callSite[0]) + ":" + callSite[1] + ":" + callSite[2];
146486
146486
  }
146487
146487
  function getStack() {
146488
146488
  var limit = Error.stackTraceLimit;
@@ -150819,11 +150819,11 @@ var require_raw_body = __commonJS((exports, module) => {
150819
150819
  if (done) {
150820
150820
  return readStream(stream, encoding, length, limit, wrap(done));
150821
150821
  }
150822
- return new Promise(function executor(resolve12, reject) {
150822
+ return new Promise(function executor(resolve14, reject) {
150823
150823
  readStream(stream, encoding, length, limit, function onRead2(err, buf) {
150824
150824
  if (err)
150825
150825
  return reject(err);
150826
- resolve12(buf);
150826
+ resolve14(buf);
150827
150827
  });
150828
150828
  });
150829
150829
  }
@@ -160627,7 +160627,7 @@ var require_mime_types = __commonJS((exports) => {
160627
160627
  * MIT Licensed
160628
160628
  */
160629
160629
  var db2 = require_db();
160630
- var extname2 = __require("path").extname;
160630
+ var extname3 = __require("path").extname;
160631
160631
  var mimeScore = require_mimeScore();
160632
160632
  var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/;
160633
160633
  var TEXT_TYPE_REGEXP = /^text\//i;
@@ -160684,7 +160684,7 @@ var require_mime_types = __commonJS((exports) => {
160684
160684
  if (!path18 || typeof path18 !== "string") {
160685
160685
  return false;
160686
160686
  }
160687
- var extension2 = extname2("x." + path18).toLowerCase().slice(1);
160687
+ var extension2 = extname3("x." + path18).toLowerCase().slice(1);
160688
160688
  if (!extension2) {
160689
160689
  return false;
160690
160690
  }
@@ -163944,16 +163944,16 @@ var require_view = __commonJS((exports, module) => {
163944
163944
  var debug = require_src4()("express:view");
163945
163945
  var path18 = __require("node:path");
163946
163946
  var fs28 = __require("node:fs");
163947
- var dirname19 = path18.dirname;
163947
+ var dirname20 = path18.dirname;
163948
163948
  var basename6 = path18.basename;
163949
- var extname2 = path18.extname;
163949
+ var extname3 = path18.extname;
163950
163950
  var join25 = path18.join;
163951
- var resolve12 = path18.resolve;
163951
+ var resolve14 = path18.resolve;
163952
163952
  module.exports = View;
163953
163953
  function View(name2, options8) {
163954
163954
  var opts = options8 || {};
163955
163955
  this.defaultEngine = opts.defaultEngine;
163956
- this.ext = extname2(name2);
163956
+ this.ext = extname3(name2);
163957
163957
  this.name = name2;
163958
163958
  this.root = opts.root;
163959
163959
  if (!this.ext && !this.defaultEngine) {
@@ -163982,8 +163982,8 @@ var require_view = __commonJS((exports, module) => {
163982
163982
  debug('lookup "%s"', name2);
163983
163983
  for (var i5 = 0;i5 < roots.length && !path19; i5++) {
163984
163984
  var root2 = roots[i5];
163985
- var loc = resolve12(root2, name2);
163986
- var dir = dirname19(loc);
163985
+ var loc = resolve14(root2, name2);
163986
+ var dir = dirname20(loc);
163987
163987
  var file2 = basename6(loc);
163988
163988
  path19 = this.resolve(dir, file2);
163989
163989
  }
@@ -164007,7 +164007,7 @@ var require_view = __commonJS((exports, module) => {
164007
164007
  });
164008
164008
  sync = false;
164009
164009
  };
164010
- View.prototype.resolve = function resolve13(dir, file2) {
164010
+ View.prototype.resolve = function resolve15(dir, file2) {
164011
164011
  var ext = this.ext;
164012
164012
  var path19 = join25(dir, file2);
164013
164013
  var stat2 = tryStat(path19);
@@ -166166,7 +166166,7 @@ var require_application = __commonJS((exports, module) => {
166166
166166
  var compileETag = require_utils10().compileETag;
166167
166167
  var compileQueryParser = require_utils10().compileQueryParser;
166168
166168
  var compileTrust = require_utils10().compileTrust;
166169
- var resolve12 = __require("node:path").resolve;
166169
+ var resolve14 = __require("node:path").resolve;
166170
166170
  var once9 = require_once();
166171
166171
  var Router = require_router();
166172
166172
  var slice = Array.prototype.slice;
@@ -166220,7 +166220,7 @@ var require_application = __commonJS((exports, module) => {
166220
166220
  this.mountpath = "/";
166221
166221
  this.locals.settings = this.settings;
166222
166222
  this.set("view", View);
166223
- this.set("views", resolve12("views"));
166223
+ this.set("views", resolve14("views"));
166224
166224
  this.set("jsonp callback name", "callback");
166225
166225
  if (env3 === "production") {
166226
166226
  this.enable("view cache");
@@ -167708,10 +167708,10 @@ var require_send = __commonJS((exports, module) => {
167708
167708
  var statuses = require_statuses();
167709
167709
  var Stream2 = __require("stream");
167710
167710
  var util2 = __require("util");
167711
- var extname2 = path18.extname;
167711
+ var extname3 = path18.extname;
167712
167712
  var join25 = path18.join;
167713
167713
  var normalize2 = path18.normalize;
167714
- var resolve12 = path18.resolve;
167714
+ var resolve14 = path18.resolve;
167715
167715
  var sep = path18.sep;
167716
167716
  var BYTES_RANGE_REGEXP = /^ *bytes=/;
167717
167717
  var MAX_MAXAGE = 60 * 60 * 24 * 365 * 1000;
@@ -167740,7 +167740,7 @@ var require_send = __commonJS((exports, module) => {
167740
167740
  this._maxage = opts.maxAge || opts.maxage;
167741
167741
  this._maxage = typeof this._maxage === "string" ? ms9(this._maxage) : Number(this._maxage);
167742
167742
  this._maxage = !isNaN(this._maxage) ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE) : 0;
167743
- this._root = opts.root ? resolve12(opts.root) : null;
167743
+ this._root = opts.root ? resolve14(opts.root) : null;
167744
167744
  }
167745
167745
  util2.inherits(SendStream, Stream2);
167746
167746
  SendStream.prototype.error = function error48(status, err) {
@@ -167889,7 +167889,7 @@ var require_send = __commonJS((exports, module) => {
167889
167889
  return res;
167890
167890
  }
167891
167891
  parts = normalize2(path19).split(sep);
167892
- path19 = resolve12(path19);
167892
+ path19 = resolve14(path19);
167893
167893
  }
167894
167894
  if (containsDotFile(parts)) {
167895
167895
  debug('%s dotfile "%s"', this._dotfiles, path19);
@@ -167984,7 +167984,7 @@ var require_send = __commonJS((exports, module) => {
167984
167984
  debug('stat "%s"', path19);
167985
167985
  fs28.stat(path19, function onstat(err, stat2) {
167986
167986
  var pathEndsWithSep = path19[path19.length - 1] === sep;
167987
- if (err && err.code === "ENOENT" && !extname2(path19) && !pathEndsWithSep) {
167987
+ if (err && err.code === "ENOENT" && !extname3(path19) && !pathEndsWithSep) {
167988
167988
  return next(err);
167989
167989
  }
167990
167990
  if (err)
@@ -168056,7 +168056,7 @@ var require_send = __commonJS((exports, module) => {
168056
168056
  var res = this.res;
168057
168057
  if (res.getHeader("Content-Type"))
168058
168058
  return;
168059
- var ext = extname2(path19);
168059
+ var ext = extname3(path19);
168060
168060
  var type2 = mime.contentType(ext) || "application/octet-stream";
168061
168061
  debug("content-type %s", type2);
168062
168062
  res.setHeader("Content-Type", type2);
@@ -168216,8 +168216,8 @@ var require_response = __commonJS((exports, module) => {
168216
168216
  var setCharset = require_utils10().setCharset;
168217
168217
  var cookie = require_cookie();
168218
168218
  var send = require_send();
168219
- var extname2 = path18.extname;
168220
- var resolve12 = path18.resolve;
168219
+ var extname3 = path18.extname;
168220
+ var resolve14 = path18.resolve;
168221
168221
  var vary = require_vary();
168222
168222
  var { Buffer: Buffer7 } = __require("node:buffer");
168223
168223
  var res = Object.create(http.ServerResponse.prototype);
@@ -168426,7 +168426,7 @@ var require_response = __commonJS((exports, module) => {
168426
168426
  }
168427
168427
  opts = Object.create(opts);
168428
168428
  opts.headers = headers;
168429
- var fullPath = !opts.root ? resolve12(path19) : path19;
168429
+ var fullPath = !opts.root ? resolve14(path19) : path19;
168430
168430
  return this.sendFile(fullPath, opts, done);
168431
168431
  };
168432
168432
  res.contentType = res.type = function contentType(type) {
@@ -168457,7 +168457,7 @@ var require_response = __commonJS((exports, module) => {
168457
168457
  };
168458
168458
  res.attachment = function attachment(filename) {
168459
168459
  if (filename) {
168460
- this.type(extname2(filename));
168460
+ this.type(extname3(filename));
168461
168461
  }
168462
168462
  this.set("Content-Disposition", contentDisposition(filename));
168463
168463
  return this;
@@ -168687,7 +168687,7 @@ var require_serve_static = __commonJS((exports, module) => {
168687
168687
  var encodeUrl = require_encodeurl();
168688
168688
  var escapeHtml = require_escape_html();
168689
168689
  var parseUrl = require_parseurl();
168690
- var resolve12 = __require("path").resolve;
168690
+ var resolve14 = __require("path").resolve;
168691
168691
  var send = require_send();
168692
168692
  var url3 = __require("url");
168693
168693
  module.exports = serveStatic;
@@ -168706,7 +168706,7 @@ var require_serve_static = __commonJS((exports, module) => {
168706
168706
  throw new TypeError("option setHeaders must be function");
168707
168707
  }
168708
168708
  opts.maxage = opts.maxage || opts.maxAge || 0;
168709
- opts.root = resolve12(root2);
168709
+ opts.root = resolve14(root2);
168710
168710
  var onDirectory = redirect ? createRedirectDirectoryListener() : createNotFoundDirectoryListener();
168711
168711
  return function serveStatic2(req, res, next) {
168712
168712
  if (req.method !== "GET" && req.method !== "HEAD") {
@@ -169630,8 +169630,8 @@ var require_follow_redirects = __commonJS((exports, module) => {
169630
169630
  }
169631
169631
  return parsed;
169632
169632
  }
169633
- function resolveUrl(relative4, base) {
169634
- return useNativeURL ? new URL2(relative4, base) : parseUrl(url3.resolve(base, relative4));
169633
+ function resolveUrl(relative5, base) {
169634
+ return useNativeURL ? new URL2(relative5, base) : parseUrl(url3.resolve(base, relative5));
169635
169635
  }
169636
169636
  function validateUrl(input) {
169637
169637
  if (/^\[/.test(input.hostname) && !/^\[[:0-9a-f]+\]$/i.test(input.hostname)) {
@@ -172080,8 +172080,8 @@ var require_executor = __commonJS((exports, module) => {
172080
172080
  }
172081
172081
  resetBuffer() {
172082
172082
  this.buffer = new Waterfall;
172083
- this.buffer.chain(new Promise((resolve12) => {
172084
- this._triggerBuffer = resolve12;
172083
+ this.buffer.chain(new Promise((resolve14) => {
172084
+ this._triggerBuffer = resolve14;
172085
172085
  }));
172086
172086
  if (this.ready)
172087
172087
  this._triggerBuffer();
@@ -173101,7 +173101,7 @@ var require_storage = __commonJS((exports, module) => {
173101
173101
  throw e8;
173102
173102
  }
173103
173103
  };
173104
- var writeFileLinesAsync = (filename, lines, mode = DEFAULT_FILE_MODE) => new Promise((resolve12, reject) => {
173104
+ var writeFileLinesAsync = (filename, lines, mode = DEFAULT_FILE_MODE) => new Promise((resolve14, reject) => {
173105
173105
  try {
173106
173106
  const stream = writeFileStream(filename, { mode });
173107
173107
  const readable2 = Readable6.from(lines);
@@ -173118,7 +173118,7 @@ var require_storage = __commonJS((exports, module) => {
173118
173118
  if (err)
173119
173119
  reject(err);
173120
173120
  else
173121
- resolve12();
173121
+ resolve14();
173122
173122
  });
173123
173123
  });
173124
173124
  readable2.on("error", (err) => {
@@ -173289,7 +173289,7 @@ var require_persistence = __commonJS((exports, module) => {
173289
173289
  return { data: tdata, indexes };
173290
173290
  }
173291
173291
  treatRawStreamAsync(rawStream) {
173292
- return new Promise((resolve12, reject) => {
173292
+ return new Promise((resolve14, reject) => {
173293
173293
  const dataById = {};
173294
173294
  const indexes = {};
173295
173295
  let corruptItems = 0;
@@ -173332,7 +173332,7 @@ var require_persistence = __commonJS((exports, module) => {
173332
173332
  }
173333
173333
  }
173334
173334
  const data = Object.values(dataById);
173335
- resolve12({ data, indexes });
173335
+ resolve14({ data, indexes });
173336
173336
  });
173337
173337
  lineStream.on("error", function(err) {
173338
173338
  reject(err, null);
@@ -182865,7 +182865,7 @@ var require_mime_types2 = __commonJS((exports) => {
182865
182865
  * MIT Licensed
182866
182866
  */
182867
182867
  var db2 = require_db2();
182868
- var extname2 = __require("path").extname;
182868
+ var extname3 = __require("path").extname;
182869
182869
  var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/;
182870
182870
  var TEXT_TYPE_REGEXP = /^text\//i;
182871
182871
  exports.charset = charset;
@@ -182920,7 +182920,7 @@ var require_mime_types2 = __commonJS((exports) => {
182920
182920
  if (!path18 || typeof path18 !== "string") {
182921
182921
  return false;
182922
182922
  }
182923
- var extension2 = extname2("x." + path18).toLowerCase().substr(1);
182923
+ var extension2 = extname3("x." + path18).toLowerCase().substr(1);
182924
182924
  if (!extension2) {
182925
182925
  return false;
182926
182926
  }
@@ -192912,7 +192912,7 @@ var require_mime_types3 = __commonJS((exports) => {
192912
192912
  * MIT Licensed
192913
192913
  */
192914
192914
  var db2 = require_db3();
192915
- var extname2 = __require("path").extname;
192915
+ var extname3 = __require("path").extname;
192916
192916
  var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/;
192917
192917
  var TEXT_TYPE_REGEXP = /^text\//i;
192918
192918
  exports.charset = charset;
@@ -192967,7 +192967,7 @@ var require_mime_types3 = __commonJS((exports) => {
192967
192967
  if (!path18 || typeof path18 !== "string") {
192968
192968
  return false;
192969
192969
  }
192970
- var extension2 = extname2("x." + path18).toLowerCase().substr(1);
192970
+ var extension2 = extname3("x." + path18).toLowerCase().substr(1);
192971
192971
  if (!extension2) {
192972
192972
  return false;
192973
192973
  }
@@ -198943,13 +198943,13 @@ var require_broadcast_operator = __commonJS((exports) => {
198943
198943
  return true;
198944
198944
  }
198945
198945
  emitWithAck(ev2, ...args) {
198946
- return new Promise((resolve12, reject) => {
198946
+ return new Promise((resolve14, reject) => {
198947
198947
  args.push((err, responses) => {
198948
198948
  if (err) {
198949
198949
  err.responses = responses;
198950
198950
  return reject(err);
198951
198951
  } else {
198952
- return resolve12(responses);
198952
+ return resolve14(responses);
198953
198953
  }
198954
198954
  });
198955
198955
  this.emit(ev2, ...args);
@@ -199137,12 +199137,12 @@ var require_socket2 = __commonJS((exports) => {
199137
199137
  }
199138
199138
  emitWithAck(ev2, ...args) {
199139
199139
  const withErr = this.flags.timeout !== undefined;
199140
- return new Promise((resolve12, reject) => {
199140
+ return new Promise((resolve14, reject) => {
199141
199141
  args.push((arg1, arg2) => {
199142
199142
  if (withErr) {
199143
- return arg1 ? reject(arg1) : resolve12(arg2);
199143
+ return arg1 ? reject(arg1) : resolve14(arg2);
199144
199144
  } else {
199145
- return resolve12(arg1);
199145
+ return resolve14(arg1);
199146
199146
  }
199147
199147
  });
199148
199148
  this.emit(ev2, ...args);
@@ -199597,13 +199597,13 @@ var require_namespace = __commonJS((exports) => {
199597
199597
  return true;
199598
199598
  }
199599
199599
  serverSideEmitWithAck(ev2, ...args) {
199600
- return new Promise((resolve12, reject) => {
199600
+ return new Promise((resolve14, reject) => {
199601
199601
  args.push((err, responses) => {
199602
199602
  if (err) {
199603
199603
  err.responses = responses;
199604
199604
  return reject(err);
199605
199605
  } else {
199606
- return resolve12(responses);
199606
+ return resolve14(responses);
199607
199607
  }
199608
199608
  });
199609
199609
  this.serverSideEmit(ev2, ...args);
@@ -200287,7 +200287,7 @@ var require_cluster_adapter = __commonJS((exports) => {
200287
200287
  return localSockets;
200288
200288
  }
200289
200289
  const requestId = randomId();
200290
- return new Promise((resolve12, reject) => {
200290
+ return new Promise((resolve14, reject) => {
200291
200291
  const timeout3 = setTimeout(() => {
200292
200292
  const storedRequest2 = this.requests.get(requestId);
200293
200293
  if (storedRequest2) {
@@ -200297,7 +200297,7 @@ var require_cluster_adapter = __commonJS((exports) => {
200297
200297
  }, opts.flags.timeout || DEFAULT_TIMEOUT);
200298
200298
  const storedRequest = {
200299
200299
  type: MessageType.FETCH_SOCKETS,
200300
- resolve: resolve12,
200300
+ resolve: resolve14,
200301
200301
  timeout: timeout3,
200302
200302
  current: 0,
200303
200303
  expected: expectedResponseCount,
@@ -200507,7 +200507,7 @@ var require_cluster_adapter = __commonJS((exports) => {
200507
200507
  return localSockets;
200508
200508
  }
200509
200509
  const requestId = randomId();
200510
- return new Promise((resolve12, reject) => {
200510
+ return new Promise((resolve14, reject) => {
200511
200511
  const timeout3 = setTimeout(() => {
200512
200512
  const storedRequest2 = this.customRequests.get(requestId);
200513
200513
  if (storedRequest2) {
@@ -200517,7 +200517,7 @@ var require_cluster_adapter = __commonJS((exports) => {
200517
200517
  }, opts.flags.timeout || DEFAULT_TIMEOUT);
200518
200518
  const storedRequest = {
200519
200519
  type: MessageType.FETCH_SOCKETS,
200520
- resolve: resolve12,
200520
+ resolve: resolve14,
200521
200521
  timeout: timeout3,
200522
200522
  missingUids: new Set([...this.nodesMap.keys()]),
200523
200523
  responses: localSockets
@@ -201246,13 +201246,13 @@ var require_dist4 = __commonJS((exports, module) => {
201246
201246
  this.engine.close();
201247
201247
  (0, uws_1.restoreAdapter)();
201248
201248
  if (this.httpServer) {
201249
- return new Promise((resolve12) => {
201249
+ return new Promise((resolve14) => {
201250
201250
  this.httpServer.close((err) => {
201251
201251
  fn9 && fn9(err);
201252
201252
  if (err) {
201253
201253
  debug("server was not running");
201254
201254
  }
201255
- resolve12();
201255
+ resolve14();
201256
201256
  });
201257
201257
  });
201258
201258
  } else {
@@ -209988,7 +209988,7 @@ var require_mime_types4 = __commonJS((exports) => {
209988
209988
  * MIT Licensed
209989
209989
  */
209990
209990
  var db2 = require_db4();
209991
- var extname2 = __require("path").extname;
209991
+ var extname3 = __require("path").extname;
209992
209992
  var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/;
209993
209993
  var TEXT_TYPE_REGEXP = /^text\//i;
209994
209994
  exports.charset = charset;
@@ -210043,7 +210043,7 @@ var require_mime_types4 = __commonJS((exports) => {
210043
210043
  if (!path18 || typeof path18 !== "string") {
210044
210044
  return false;
210045
210045
  }
210046
- var extension2 = extname2("x." + path18).toLowerCase().substr(1);
210046
+ var extension2 = extname3("x." + path18).toLowerCase().substr(1);
210047
210047
  if (!extension2) {
210048
210048
  return false;
210049
210049
  }
@@ -215914,14 +215914,14 @@ var require_async_iterator = __commonJS((exports, module) => {
215914
215914
  };
215915
215915
  }
215916
215916
  function readAndResolve(iter) {
215917
- var resolve12 = iter[kLastResolve];
215918
- if (resolve12 !== null) {
215917
+ var resolve14 = iter[kLastResolve];
215918
+ if (resolve14 !== null) {
215919
215919
  var data = iter[kStream].read();
215920
215920
  if (data !== null) {
215921
215921
  iter[kLastPromise] = null;
215922
215922
  iter[kLastResolve] = null;
215923
215923
  iter[kLastReject] = null;
215924
- resolve12(createIterResult(data, false));
215924
+ resolve14(createIterResult(data, false));
215925
215925
  }
215926
215926
  }
215927
215927
  }
@@ -215929,13 +215929,13 @@ var require_async_iterator = __commonJS((exports, module) => {
215929
215929
  process.nextTick(readAndResolve, iter);
215930
215930
  }
215931
215931
  function wrapForNext(lastPromise, iter) {
215932
- return function(resolve12, reject) {
215932
+ return function(resolve14, reject) {
215933
215933
  lastPromise.then(function() {
215934
215934
  if (iter[kEnded]) {
215935
- resolve12(createIterResult(undefined, true));
215935
+ resolve14(createIterResult(undefined, true));
215936
215936
  return;
215937
215937
  }
215938
- iter[kHandlePromise](resolve12, reject);
215938
+ iter[kHandlePromise](resolve14, reject);
215939
215939
  }, reject);
215940
215940
  };
215941
215941
  }
@@ -215954,12 +215954,12 @@ var require_async_iterator = __commonJS((exports, module) => {
215954
215954
  return Promise.resolve(createIterResult(undefined, true));
215955
215955
  }
215956
215956
  if (this[kStream].destroyed) {
215957
- return new Promise(function(resolve12, reject) {
215957
+ return new Promise(function(resolve14, reject) {
215958
215958
  process.nextTick(function() {
215959
215959
  if (_this[kError]) {
215960
215960
  reject(_this[kError]);
215961
215961
  } else {
215962
- resolve12(createIterResult(undefined, true));
215962
+ resolve14(createIterResult(undefined, true));
215963
215963
  }
215964
215964
  });
215965
215965
  });
@@ -215982,13 +215982,13 @@ var require_async_iterator = __commonJS((exports, module) => {
215982
215982
  return this;
215983
215983
  }), _defineProperty(_Object$setPrototypeO, "return", function _return() {
215984
215984
  var _this2 = this;
215985
- return new Promise(function(resolve12, reject) {
215985
+ return new Promise(function(resolve14, reject) {
215986
215986
  _this2[kStream].destroy(null, function(err) {
215987
215987
  if (err) {
215988
215988
  reject(err);
215989
215989
  return;
215990
215990
  }
215991
- resolve12(createIterResult(undefined, true));
215991
+ resolve14(createIterResult(undefined, true));
215992
215992
  });
215993
215993
  });
215994
215994
  }), _Object$setPrototypeO), AsyncIteratorPrototype);
@@ -216010,15 +216010,15 @@ var require_async_iterator = __commonJS((exports, module) => {
216010
216010
  value: stream._readableState.endEmitted,
216011
216011
  writable: true
216012
216012
  }), _defineProperty(_Object$create, kHandlePromise, {
216013
- value: function value(resolve12, reject) {
216013
+ value: function value(resolve14, reject) {
216014
216014
  var data = iterator[kStream].read();
216015
216015
  if (data) {
216016
216016
  iterator[kLastPromise] = null;
216017
216017
  iterator[kLastResolve] = null;
216018
216018
  iterator[kLastReject] = null;
216019
- resolve12(createIterResult(data, false));
216019
+ resolve14(createIterResult(data, false));
216020
216020
  } else {
216021
- iterator[kLastResolve] = resolve12;
216021
+ iterator[kLastResolve] = resolve14;
216022
216022
  iterator[kLastReject] = reject;
216023
216023
  }
216024
216024
  },
@@ -216037,12 +216037,12 @@ var require_async_iterator = __commonJS((exports, module) => {
216037
216037
  iterator[kError] = err;
216038
216038
  return;
216039
216039
  }
216040
- var resolve12 = iterator[kLastResolve];
216041
- if (resolve12 !== null) {
216040
+ var resolve14 = iterator[kLastResolve];
216041
+ if (resolve14 !== null) {
216042
216042
  iterator[kLastPromise] = null;
216043
216043
  iterator[kLastResolve] = null;
216044
216044
  iterator[kLastReject] = null;
216045
- resolve12(createIterResult(undefined, true));
216045
+ resolve14(createIterResult(undefined, true));
216046
216046
  }
216047
216047
  iterator[kEnded] = true;
216048
216048
  });
@@ -216054,7 +216054,7 @@ var require_async_iterator = __commonJS((exports, module) => {
216054
216054
 
216055
216055
  // ../../node_modules/readable-stream/lib/internal/streams/from.js
216056
216056
  var require_from = __commonJS((exports, module) => {
216057
- function asyncGeneratorStep(gen, resolve12, reject, _next, _throw, key2, arg) {
216057
+ function asyncGeneratorStep(gen, resolve14, reject, _next, _throw, key2, arg) {
216058
216058
  try {
216059
216059
  var info = gen[key2](arg);
216060
216060
  var value = info.value;
@@ -216063,7 +216063,7 @@ var require_from = __commonJS((exports, module) => {
216063
216063
  return;
216064
216064
  }
216065
216065
  if (info.done) {
216066
- resolve12(value);
216066
+ resolve14(value);
216067
216067
  } else {
216068
216068
  Promise.resolve(value).then(_next, _throw);
216069
216069
  }
@@ -216071,13 +216071,13 @@ var require_from = __commonJS((exports, module) => {
216071
216071
  function _asyncToGenerator(fn9) {
216072
216072
  return function() {
216073
216073
  var self2 = this, args = arguments;
216074
- return new Promise(function(resolve12, reject) {
216074
+ return new Promise(function(resolve14, reject) {
216075
216075
  var gen = fn9.apply(self2, args);
216076
216076
  function _next(value) {
216077
- asyncGeneratorStep(gen, resolve12, reject, _next, _throw, "next", value);
216077
+ asyncGeneratorStep(gen, resolve14, reject, _next, _throw, "next", value);
216078
216078
  }
216079
216079
  function _throw(err) {
216080
- asyncGeneratorStep(gen, resolve12, reject, _next, _throw, "throw", err);
216080
+ asyncGeneratorStep(gen, resolve14, reject, _next, _throw, "throw", err);
216081
216081
  }
216082
216082
  _next(undefined);
216083
216083
  });
@@ -234018,7 +234018,7 @@ function normalizeBase44Env() {
234018
234018
  loadProjectEnvFiles();
234019
234019
 
234020
234020
  // src/cli/index.ts
234021
- import { dirname as dirname23, join as join28 } from "node:path";
234021
+ import { dirname as dirname24, join as join28 } from "node:path";
234022
234022
  import { fileURLToPath as fileURLToPath6 } from "node:url";
234023
234023
 
234024
234024
  // ../../node_modules/@clack/core/dist/index.mjs
@@ -235226,7 +235226,7 @@ var {
235226
235226
  } = import__.default;
235227
235227
 
235228
235228
  // src/cli/commands/agents/pull.ts
235229
- import { dirname as dirname10, join as join14 } from "node:path";
235229
+ import { dirname as dirname11, join as join14 } from "node:path";
235230
235230
  // ../../node_modules/chalk/source/vendor/ansi-styles/index.js
235231
235231
  var ANSI_BACKGROUND_OFFSET = 10;
235232
235232
  var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
@@ -241894,7 +241894,7 @@ async function getSiteUrl() {
241894
241894
  return result.data.url;
241895
241895
  }
241896
241896
  // src/core/project/config.ts
241897
- import { dirname as dirname8, join as join10 } from "node:path";
241897
+ import { dirname as dirname9, join as join10 } from "node:path";
241898
241898
 
241899
241899
  // src/core/project/plugins.ts
241900
241900
  import { createRequire as createRequire2 } from "node:module";
@@ -243424,9 +243424,14 @@ var FunctionConfigSchema = exports_external.object({
243424
243424
  entry: exports_external.string().min(1, "Entry point cannot be empty"),
243425
243425
  automations: exports_external.array(AutomationSchema).optional()
243426
243426
  });
243427
+ var OutOfBoundsImportSchema = exports_external.object({
243428
+ importer: exports_external.string(),
243429
+ specifier: exports_external.string()
243430
+ });
243427
243431
  var BackendFunctionSchema = FunctionConfigSchema.extend({
243428
243432
  entryPath: exports_external.string().min(1, "Entry path cannot be empty"),
243429
243433
  filePaths: exports_external.array(exports_external.string()).min(1, "Function must have at least one file"),
243434
+ outOfBoundsImports: exports_external.array(OutOfBoundsImportSchema).optional().default([]),
243430
243435
  source: ResourceSourceSchema
243431
243436
  });
243432
243437
  var DeploySingleFunctionResponseSchema = exports_external.object({
@@ -243536,7 +243541,75 @@ async function fetchFunctionLogs(functionName, filters = {}) {
243536
243541
  return result.data;
243537
243542
  }
243538
243543
  // src/core/resources/function/config.ts
243539
- import { basename as basename3, dirname as dirname6, join as join8, relative } from "node:path";
243544
+ import { basename as basename3, dirname as dirname7, join as join8, relative as relative2, resolve as resolve3 } from "node:path";
243545
+
243546
+ // src/core/resources/function/reachability.ts
243547
+ import { dirname as dirname6, extname, relative, resolve as resolve2 } from "node:path";
243548
+ var RELATIVE_IMPORT_RE = /(?:from|import|require)\s*\(?['"`](\.\.?\/[^'"`\s]+)['"`]/g;
243549
+ async function resolveSpecifier(specifier, fromDir) {
243550
+ const base = resolve2(fromDir, specifier);
243551
+ const ext = extname(base);
243552
+ if (ext) {
243553
+ if (ext === ".js") {
243554
+ const asTts = `${base.slice(0, -3)}.ts`;
243555
+ if (await pathExists(asTts))
243556
+ return asTts;
243557
+ }
243558
+ if (await pathExists(base))
243559
+ return base;
243560
+ return null;
243561
+ }
243562
+ for (const candidate of [
243563
+ `${base}.ts`,
243564
+ `${base}.js`,
243565
+ `${base}.json`,
243566
+ resolve2(base, "index.ts"),
243567
+ resolve2(base, "index.js")
243568
+ ]) {
243569
+ if (await pathExists(candidate))
243570
+ return candidate;
243571
+ }
243572
+ return null;
243573
+ }
243574
+ async function collectReachableBackendFiles(_entryPath, functionFilePaths, backendRoot) {
243575
+ const visited = new Set(functionFilePaths);
243576
+ const queue = [...functionFilePaths];
243577
+ const extra = [];
243578
+ const outOfBounds = [];
243579
+ while (queue.length > 0) {
243580
+ const filePath = queue.shift();
243581
+ let content;
243582
+ try {
243583
+ content = await readTextFile(filePath);
243584
+ } catch {
243585
+ continue;
243586
+ }
243587
+ const dir = dirname6(filePath);
243588
+ for (const match of content.matchAll(RELATIVE_IMPORT_RE)) {
243589
+ const specifier = match[1];
243590
+ const resolved = await resolveSpecifier(specifier, dir);
243591
+ if (!resolved)
243592
+ continue;
243593
+ const rel = relative(backendRoot, resolved);
243594
+ if (rel.startsWith("..")) {
243595
+ outOfBounds.push({ importer: filePath, specifier });
243596
+ continue;
243597
+ }
243598
+ if (!visited.has(resolved)) {
243599
+ visited.add(resolved);
243600
+ queue.push(resolved);
243601
+ extra.push(resolved);
243602
+ }
243603
+ }
243604
+ }
243605
+ const functionSet = new Set(functionFilePaths);
243606
+ return {
243607
+ extra: extra.filter((p) => !functionSet.has(p)),
243608
+ outOfBounds
243609
+ };
243610
+ }
243611
+
243612
+ // src/core/resources/function/config.ts
243540
243613
  async function readFunctionConfig(configPath) {
243541
243614
  const parsed = await readJsonFile(configPath);
243542
243615
  const result = FunctionConfigSchema.safeParse(parsed);
@@ -243545,9 +243618,9 @@ async function readFunctionConfig(configPath) {
243545
243618
  }
243546
243619
  return result.data;
243547
243620
  }
243548
- async function readFunction(configPath) {
243621
+ async function readFunction(configPath, backendRoot) {
243549
243622
  const config7 = await readFunctionConfig(configPath);
243550
- const functionDir = dirname6(configPath);
243623
+ const functionDir = dirname7(configPath);
243551
243624
  const entryPath = join8(functionDir, config7.entry);
243552
243625
  if (!await pathExists(entryPath)) {
243553
243626
  throw new InvalidInputError(`Function entry file not found: ${entryPath} (referenced in ${configPath})`, {
@@ -243558,10 +243631,13 @@ async function readFunction(configPath) {
243558
243631
  cwd: functionDir,
243559
243632
  absolute: true
243560
243633
  });
243634
+ const { extra, outOfBounds } = await collectReachableBackendFiles(entryPath, filePaths, backendRoot);
243635
+ const allFilePaths = [...new Set([...filePaths, ...extra])];
243561
243636
  const functionData = {
243562
243637
  ...config7,
243563
243638
  entryPath,
243564
- filePaths,
243639
+ filePaths: allFilePaths,
243640
+ outOfBoundsImports: outOfBounds,
243565
243641
  source: { type: "project" }
243566
243642
  };
243567
243643
  return functionData;
@@ -243579,16 +243655,19 @@ async function readAllFunctions(functionsDir) {
243579
243655
  absolute: true,
243580
243656
  ignore: ENTRY_IGNORE_DOT_PATHS
243581
243657
  });
243582
- const configFilesDirs = new Set(configFiles.map((f) => dirname6(f)));
243583
- const entryFilesWithoutConfig = entryFiles.filter((entryFile) => !configFilesDirs.has(dirname6(entryFile)));
243584
- const functionsFromConfig = await Promise.all(configFiles.map((configPath) => readFunction(configPath)));
243658
+ const configFilesDirs = new Set(configFiles.map((f) => dirname7(f)));
243659
+ const entryFilesWithoutConfig = entryFiles.filter((entryFile) => !configFilesDirs.has(dirname7(entryFile)));
243660
+ const backendRoot = resolve3(functionsDir, "..");
243661
+ const functionsFromConfig = await Promise.all(configFiles.map((configPath) => readFunction(configPath, backendRoot)));
243585
243662
  const functionsWithoutConfig = await Promise.all(entryFilesWithoutConfig.map(async (entryFile) => {
243586
- const functionDir = dirname6(entryFile);
243663
+ const functionDir = dirname7(entryFile);
243587
243664
  const filePaths = await globby("**/*.{js,ts,json}", {
243588
243665
  cwd: functionDir,
243589
243666
  absolute: true
243590
243667
  });
243591
- const name2 = relative(functionsDir, functionDir).split(/[/\\]/).join("/");
243668
+ const { extra, outOfBounds } = await collectReachableBackendFiles(entryFile, filePaths, backendRoot);
243669
+ const allFilePaths = [...new Set([...filePaths, ...extra])];
243670
+ const name2 = relative2(functionsDir, functionDir).split(/[/\\]/).join("/");
243592
243671
  if (!name2) {
243593
243672
  throw new InvalidInputError("entry.ts found directly in the functions directory — it must be inside a named subfolder", {
243594
243673
  hints: [
@@ -243603,7 +243682,8 @@ async function readAllFunctions(functionsDir) {
243603
243682
  name: name2,
243604
243683
  entry,
243605
243684
  entryPath: entryFile,
243606
- filePaths,
243685
+ filePaths: allFilePaths,
243686
+ outOfBoundsImports: outOfBounds,
243607
243687
  source: { type: "project" }
243608
243688
  };
243609
243689
  return functionData;
@@ -243625,12 +243705,12 @@ async function readAllFunctions(functionsDir) {
243625
243705
  return functions;
243626
243706
  }
243627
243707
  // src/core/resources/function/deploy.ts
243628
- import { dirname as dirname7, relative as relative2 } from "node:path";
243708
+ import { dirname as dirname8, relative as relative3 } from "node:path";
243629
243709
  async function loadFunctionCode(fn) {
243630
- const functionDir = dirname7(fn.entryPath);
243710
+ const functionDir = dirname8(fn.entryPath);
243631
243711
  const resolvedFiles = await Promise.all(fn.filePaths.map(async (filePath) => {
243632
243712
  const content = await readTextFile(filePath);
243633
- const path11 = relative2(functionDir, filePath).split(/[/\\]/).join("/");
243713
+ const path11 = relative3(functionDir, filePath).split(/[/\\]/).join("/");
243634
243714
  return { path: path11, content };
243635
243715
  }));
243636
243716
  return { ...fn, files: resolvedFiles };
@@ -243804,7 +243884,7 @@ class ProjectConfigReader {
243804
243884
  return result.data;
243805
243885
  }
243806
243886
  async readProjectResources(configPath, project) {
243807
- const configDir = dirname8(configPath);
243887
+ const configDir = dirname9(configPath);
243808
243888
  const [entities, functions, agents, connectors, authConfig] = await Promise.all([
243809
243889
  entityResource.readAll(join10(configDir, project.entitiesDir)),
243810
243890
  functionResource.readAll(join10(configDir, project.functionsDir)),
@@ -243833,7 +243913,7 @@ class ProjectConfigReader {
243833
243913
  this.pluginSourceByNamespace.set(namespace, source);
243834
243914
  }
243835
243915
  async readPluginConfig(plugin, hostConfigPath) {
243836
- const pluginRoot = resolvePluginRoot(plugin.source, dirname8(hostConfigPath));
243916
+ const pluginRoot = resolvePluginRoot(plugin.source, dirname9(hostConfigPath));
243837
243917
  const { configPath } = await this.findConfigOrThrow(pluginRoot);
243838
243918
  const project = await this.readConfigFile(configPath);
243839
243919
  const namespace = requirePluginNamespace(project, plugin.source, configPath);
@@ -243911,7 +243991,7 @@ async function readProjectConfig(projectRoot) {
243911
243991
  // src/core/project/template.ts
243912
243992
  var import_ejs = __toESM(require_ejs(), 1);
243913
243993
  var import_front_matter = __toESM(require_front_matter(), 1);
243914
- import { dirname as dirname9, join as join12 } from "node:path";
243994
+ import { dirname as dirname10, join as join12 } from "node:path";
243915
243995
 
243916
243996
  // src/core/assets.ts
243917
243997
  import { cpSync, existsSync } from "node:fs";
@@ -244063,7 +244143,7 @@ async function renderTemplate(template, destPath, data, options = {}) {
244063
244143
  if (file2.endsWith(".ejs")) {
244064
244144
  const rendered = await import_ejs.default.renderFile(srcPath, data);
244065
244145
  const { attributes, body } = import_front_matter.default(rendered);
244066
- const destFile = attributes.outputFileName ? join12(dirname9(file2), attributes.outputFileName) : file2.replace(/\.ejs$/, "");
244146
+ const destFile = attributes.outputFileName ? join12(dirname10(file2), attributes.outputFileName) : file2.replace(/\.ejs$/, "");
244067
244147
  const destFilePath = join12(destPath, destFile);
244068
244148
  if (skipExisting && await pathExists(destFilePath)) {
244069
244149
  skipped.push(destFile);
@@ -244130,7 +244210,7 @@ async function createProjectFilesForExistingProject(options) {
244130
244210
  };
244131
244211
  }
244132
244212
  // src/core/project/deploy.ts
244133
- import { resolve as resolve2 } from "node:path";
244213
+ import { resolve as resolve4 } from "node:path";
244134
244214
 
244135
244215
  // src/core/site/api.ts
244136
244216
  async function uploadSite(archivePath) {
@@ -244219,7 +244299,7 @@ async function deployAll(projectData, options) {
244219
244299
  await authConfigResource.push(authConfig);
244220
244300
  const { results: connectorResults } = await pushConnectors(connectors);
244221
244301
  if (project.site?.outputDirectory) {
244222
- const outputDir = resolve2(project.root, project.site.outputDirectory);
244302
+ const outputDir = resolve4(project.root, project.site.outputDirectory);
244223
244303
  const { appUrl } = await deploySite(outputDir);
244224
244304
  return { appUrl, connectorResults };
244225
244305
  }
@@ -246041,8 +246121,8 @@ var disconnect = (anyProcess) => {
246041
246121
  // ../../node_modules/execa/lib/utils/deferred.js
246042
246122
  var createDeferred = () => {
246043
246123
  const methods = {};
246044
- const promise2 = new Promise((resolve3, reject) => {
246045
- Object.assign(methods, { resolve: resolve3, reject });
246124
+ const promise2 = new Promise((resolve5, reject) => {
246125
+ Object.assign(methods, { resolve: resolve5, reject });
246046
246126
  });
246047
246127
  return Object.assign(promise2, methods);
246048
246128
  };
@@ -250406,11 +250486,11 @@ var addConcurrentStream = (concurrentStreams, stream, waitName) => {
250406
250486
  const promises = weakMap.get(stream);
250407
250487
  const promise2 = createDeferred();
250408
250488
  promises.push(promise2);
250409
- const resolve3 = promise2.resolve.bind(promise2);
250410
- return { resolve: resolve3, promises };
250489
+ const resolve5 = promise2.resolve.bind(promise2);
250490
+ return { resolve: resolve5, promises };
250411
250491
  };
250412
- var waitForConcurrentStreams = async ({ resolve: resolve3, promises }, subprocess) => {
250413
- resolve3();
250492
+ var waitForConcurrentStreams = async ({ resolve: resolve5, promises }, subprocess) => {
250493
+ resolve5();
250414
250494
  const [isSubprocessExit] = await Promise.race([
250415
250495
  Promise.allSettled([true, subprocess]),
250416
250496
  Promise.all([false, ...promises])
@@ -251411,7 +251491,7 @@ async function pullAgentsAction({
251411
251491
  runTask: runTask2
251412
251492
  }) {
251413
251493
  const { project: project2 } = await readProjectConfig();
251414
- const configDir = dirname10(project2.configPath);
251494
+ const configDir = dirname11(project2.configPath);
251415
251495
  const agentsDir = join14(configDir, project2.agentsDir);
251416
251496
  const remoteAgents = await runTask2("Fetching agents from Base44", async () => {
251417
251497
  return await fetchAgents();
@@ -251476,11 +251556,11 @@ function getAgentsCommand() {
251476
251556
  }
251477
251557
 
251478
251558
  // src/cli/commands/auth/password-login.ts
251479
- import { dirname as dirname11, join as join15 } from "node:path";
251559
+ import { dirname as dirname12, join as join15 } from "node:path";
251480
251560
  async function passwordLoginAction({ log, runTask: runTask2 }, action) {
251481
251561
  const shouldEnable = action === "enable";
251482
251562
  const { project: project2 } = await readProjectConfig();
251483
- const configDir = dirname11(project2.configPath);
251563
+ const configDir = dirname12(project2.configPath);
251484
251564
  const authDir = join15(configDir, project2.authDir);
251485
251565
  const updated = await runTask2("Updating local auth config", async () => {
251486
251566
  const current = await readAuthConfig(authDir) ?? DEFAULT_AUTH_CONFIG;
@@ -251501,13 +251581,13 @@ function getPasswordLoginCommand() {
251501
251581
  }
251502
251582
 
251503
251583
  // src/cli/commands/auth/pull.ts
251504
- import { dirname as dirname12, join as join16 } from "node:path";
251584
+ import { dirname as dirname13, join as join16 } from "node:path";
251505
251585
  async function pullAuthAction({
251506
251586
  log,
251507
251587
  runTask: runTask2
251508
251588
  }) {
251509
251589
  const { project: project2 } = await readProjectConfig();
251510
- const configDir = dirname12(project2.configPath);
251590
+ const configDir = dirname13(project2.configPath);
251511
251591
  const authDir = join16(configDir, project2.authDir);
251512
251592
  const remoteConfig = await runTask2("Fetching auth config from Base44", async () => {
251513
251593
  return await pullAuthConfig();
@@ -251572,7 +251652,7 @@ function getAuthPushCommand() {
251572
251652
  }
251573
251653
 
251574
251654
  // src/cli/commands/auth/social-login.ts
251575
- import { dirname as dirname13, join as join17, resolve as resolve3 } from "node:path";
251655
+ import { dirname as dirname14, join as join17, resolve as resolve5 } from "node:path";
251576
251656
  var PROVIDER_LABELS = {
251577
251657
  google: "Google",
251578
251658
  microsoft: "Microsoft",
@@ -251612,7 +251692,7 @@ async function socialLoginAction({ log, isNonInteractive, runTask: runTask2 }, p
251612
251692
  let clientSecret;
251613
251693
  if (useCustomOAuth && oauth && oauthCli && hasSecretOptions(options)) {
251614
251694
  if (options.envFile) {
251615
- const secrets = await parseEnvFile(resolve3(options.envFile));
251695
+ const secrets = await parseEnvFile(resolve5(options.envFile));
251616
251696
  const value = secrets[oauthCli.envVar];
251617
251697
  if (!value) {
251618
251698
  throw new InvalidInputError(`Key "${oauthCli.envVar}" not found in ${options.envFile}.`);
@@ -251642,7 +251722,7 @@ async function socialLoginAction({ log, isNonInteractive, runTask: runTask2 }, p
251642
251722
  }
251643
251723
  }
251644
251724
  const { project: project2 } = await readProjectConfig();
251645
- const configDir = dirname13(project2.configPath);
251725
+ const configDir = dirname14(project2.configPath);
251646
251726
  const authDir = join17(configDir, project2.authDir);
251647
251727
  const { config: updated } = await runTask2("Updating local auth config", async () => updateSocialLoginConfig(authDir, provider, shouldEnable, useCustomOAuth && options.clientId ? { clientId: options.clientId } : undefined));
251648
251728
  if (clientSecret) {
@@ -251668,7 +251748,7 @@ function getSocialLoginCommand() {
251668
251748
  }
251669
251749
 
251670
251750
  // src/cli/commands/auth/sso.ts
251671
- import { dirname as dirname14, join as join18, resolve as resolve4 } from "node:path";
251751
+ import { dirname as dirname15, join as join18, resolve as resolve6 } from "node:path";
251672
251752
  var SSOConfigFileSchema = exports_external.object({
251673
251753
  provider: exports_external.enum(Object.values(KNOWN_SSO_PROVIDERS)),
251674
251754
  clientId: exports_external.string(),
@@ -251684,7 +251764,7 @@ var SSOConfigFileSchema = exports_external.object({
251684
251764
  ssoName: exports_external.string().optional()
251685
251765
  });
251686
251766
  async function loadSSOConfigFile(filePath) {
251687
- const resolved = resolve4(filePath);
251767
+ const resolved = resolve6(filePath);
251688
251768
  const raw2 = await readJsonFile(resolved);
251689
251769
  const result = SSOConfigFileSchema.safeParse(raw2);
251690
251770
  if (!result.success) {
@@ -251772,7 +251852,7 @@ async function ssoEnableAction({ isNonInteractive, runTask: runTask2 }, options)
251772
251852
  }
251773
251853
  let clientSecret;
251774
251854
  if (merged.envFile && !merged.clientSecret) {
251775
- const secrets2 = await parseEnvFile(resolve4(merged.envFile));
251855
+ const secrets2 = await parseEnvFile(resolve6(merged.envFile));
251776
251856
  const value = secrets2.sso_client_secret;
251777
251857
  if (!value) {
251778
251858
  throw new InvalidInputError(`Key "sso_client_secret" not found in ${merged.envFile}.`);
@@ -251831,7 +251911,7 @@ async function ssoEnableAction({ isNonInteractive, runTask: runTask2 }, options)
251831
251911
  throw error48;
251832
251912
  }
251833
251913
  const { project: project2 } = await readProjectConfig();
251834
- const configDir = dirname14(project2.configPath);
251914
+ const configDir = dirname15(project2.configPath);
251835
251915
  const authDir = join18(configDir, project2.authDir);
251836
251916
  await runTask2("Updating local auth config", async () => updateSSOConfig(authDir, provider, true));
251837
251917
  await runTask2("Saving SSO credentials", async () => pushSSOSecrets(secrets));
@@ -251847,7 +251927,7 @@ async function ssoDisableAction({ log, runTask: runTask2 }, options) {
251847
251927
  throw new InvalidInputError("Configuration options cannot be used with disable. To disable SSO: base44 auth sso disable");
251848
251928
  }
251849
251929
  const { project: project2 } = await readProjectConfig();
251850
- const configDir = dirname14(project2.configPath);
251930
+ const configDir = dirname15(project2.configPath);
251851
251931
  const authDir = join18(configDir, project2.authDir);
251852
251932
  const updated = await runTask2("Updating local auth config", async () => updateSSOConfig(authDir, null, false));
251853
251933
  await runTask2("Removing SSO credentials", async () => deleteSSOSecrets());
@@ -252404,19 +252484,19 @@ var baseOpen = async (options) => {
252404
252484
  }
252405
252485
  const subprocess = childProcess3.spawn(command2, cliArguments, childProcessOptions);
252406
252486
  if (options.wait) {
252407
- return new Promise((resolve5, reject) => {
252487
+ return new Promise((resolve7, reject) => {
252408
252488
  subprocess.once("error", reject);
252409
252489
  subprocess.once("close", (exitCode) => {
252410
252490
  if (!options.allowNonzeroExitCode && exitCode !== 0) {
252411
252491
  reject(new Error(`Exited with code ${exitCode}`));
252412
252492
  return;
252413
252493
  }
252414
- resolve5(subprocess);
252494
+ resolve7(subprocess);
252415
252495
  });
252416
252496
  });
252417
252497
  }
252418
252498
  if (isFallbackAttempt) {
252419
- return new Promise((resolve5, reject) => {
252499
+ return new Promise((resolve7, reject) => {
252420
252500
  subprocess.once("error", reject);
252421
252501
  subprocess.once("spawn", () => {
252422
252502
  subprocess.once("close", (exitCode) => {
@@ -252426,17 +252506,17 @@ var baseOpen = async (options) => {
252426
252506
  return;
252427
252507
  }
252428
252508
  subprocess.unref();
252429
- resolve5(subprocess);
252509
+ resolve7(subprocess);
252430
252510
  });
252431
252511
  });
252432
252512
  });
252433
252513
  }
252434
252514
  subprocess.unref();
252435
- return new Promise((resolve5, reject) => {
252515
+ return new Promise((resolve7, reject) => {
252436
252516
  subprocess.once("error", reject);
252437
252517
  subprocess.once("spawn", () => {
252438
252518
  subprocess.off("error", reject);
252439
- resolve5(subprocess);
252519
+ resolve7(subprocess);
252440
252520
  });
252441
252521
  });
252442
252522
  };
@@ -252699,13 +252779,13 @@ function getConnectorsListAvailableCommand() {
252699
252779
  }
252700
252780
 
252701
252781
  // src/cli/commands/connectors/pull.ts
252702
- import { dirname as dirname15, join as join19, resolve as resolve5 } from "node:path";
252782
+ import { dirname as dirname16, join as join19, resolve as resolve7 } from "node:path";
252703
252783
  async function resolveConnectorsDir(options) {
252704
252784
  if (!getAppContext().projectRoot) {
252705
- return resolve5(options.dir ?? "connectors");
252785
+ return resolve7(options.dir ?? "connectors");
252706
252786
  }
252707
252787
  const { project: project2 } = await readProjectConfig();
252708
- return join19(dirname15(project2.configPath), project2.connectorsDir);
252788
+ return join19(dirname16(project2.configPath), project2.connectorsDir);
252709
252789
  }
252710
252790
  async function pullConnectorsAction({ log, runTask: runTask2, jsonMode }, options) {
252711
252791
  const connectorsDir = await resolveConnectorsDir(options);
@@ -252746,10 +252826,10 @@ function getConnectorsPullCommand() {
252746
252826
  }
252747
252827
 
252748
252828
  // src/cli/commands/connectors/push.ts
252749
- import { resolve as resolve6 } from "node:path";
252829
+ import { resolve as resolve8 } from "node:path";
252750
252830
  async function readConnectorsToPush(options) {
252751
252831
  if (!getAppContext().projectRoot) {
252752
- return readAllConnectors(resolve6(options.dir ?? "connectors"));
252832
+ return readAllConnectors(resolve8(options.dir ?? "connectors"));
252753
252833
  }
252754
252834
  const { connectors } = await readProjectConfig();
252755
252835
  return connectors;
@@ -253030,6 +253110,15 @@ async function deployFunctionsAction({ log }, names, options) {
253030
253110
  };
253031
253111
  }
253032
253112
  log.info(`Found ${toDeploy.length} ${toDeploy.length === 1 ? "function" : "functions"} to deploy`);
253113
+ for (const fn of toDeploy) {
253114
+ if (fn.outOfBoundsImports && fn.outOfBoundsImports.length > 0) {
253115
+ for (const { importer, specifier } of fn.outOfBoundsImports) {
253116
+ const rel = importer.includes(fn.name) ? importer.slice(importer.lastIndexOf(fn.name)) : importer;
253117
+ log.error(`[${fn.name}] Cannot import "${specifier}" in ${rel}: the file is outside base44/ and cannot be uploaded. Move it to base44/shared/ to share it across functions. Functions run on Deno — use npm: or jsr: specifiers (not package.json) for external packages.`);
253118
+ }
253119
+ throw new CLIExitError(1);
253120
+ }
253121
+ }
253033
253122
  let completed = 0;
253034
253123
  const total = toDeploy.length;
253035
253124
  const results = await deployFunctionsSequentially(toDeploy, {
@@ -253098,10 +253187,10 @@ function getListCommand() {
253098
253187
  }
253099
253188
 
253100
253189
  // src/cli/commands/functions/pull.ts
253101
- import { dirname as dirname16, join as join20 } from "node:path";
253190
+ import { dirname as dirname17, join as join20 } from "node:path";
253102
253191
  async function pullFunctionsAction({ log, runTask: runTask2 }, name2) {
253103
253192
  const { project: project2, functions } = await readProjectConfig();
253104
- const configDir = dirname16(project2.configPath);
253193
+ const configDir = dirname17(project2.configPath);
253105
253194
  const functionsDir = join20(configDir, project2.functionsDir);
253106
253195
  const pluginFunctionNames = new Set(functions.filter((fn) => fn.source.type === "plugin").map((fn) => fn.name));
253107
253196
  const remoteFunctions = await runTask2("Fetching functions from Base44", async () => {
@@ -253161,7 +253250,7 @@ function getFunctionsCommand() {
253161
253250
  }
253162
253251
 
253163
253252
  // src/cli/commands/project/create.ts
253164
- import { basename as basename4, resolve as resolve7 } from "node:path";
253253
+ import { basename as basename4, resolve as resolve9 } from "node:path";
253165
253254
  var import_kebabCase = __toESM(require_kebabCase(), 1);
253166
253255
 
253167
253256
  // src/cli/commands/project/scaffold-shared.ts
@@ -253315,7 +253404,7 @@ async function createInteractive(options, ctx) {
253315
253404
  }, ctx);
253316
253405
  }
253317
253406
  async function createNonInteractive(options, ctx) {
253318
- ctx.log.info(`Creating a new project at ${resolve7(options.path)}`);
253407
+ ctx.log.info(`Creating a new project at ${resolve9(options.path)}`);
253319
253408
  const template2 = await getTemplateById(options.template ?? DEFAULT_TEMPLATE_ID);
253320
253409
  return await executeCreate({
253321
253410
  template: template2,
@@ -253337,7 +253426,7 @@ async function executeCreate({
253337
253426
  }, ctx) {
253338
253427
  const { log, runTask: runTask2 } = ctx;
253339
253428
  const name2 = rawName.trim();
253340
- const resolvedPath = resolve7(projectPath);
253429
+ const resolvedPath = resolve9(projectPath);
253341
253430
  const { projectId } = await runTask2("Setting up your project...", async () => {
253342
253431
  return await createProjectFiles({
253343
253432
  name: name2,
@@ -253733,7 +253822,7 @@ async function followLogs(functionNames, options, availableFunctionNames, jsonMo
253733
253822
  for (const entry of fresh)
253734
253823
  writeFollowLine(entry, jsonMode);
253735
253824
  first = false;
253736
- await new Promise((resolve8) => setTimeout(resolve8, 2000));
253825
+ await new Promise((resolve10) => setTimeout(resolve10, 2000));
253737
253826
  }
253738
253827
  }
253739
253828
  function formatLogs(entries, env3) {
@@ -253782,8 +253871,7 @@ async function fetchLogsForFunctions(functionNames, options, availableFunctionNa
253782
253871
  }
253783
253872
  throw error48;
253784
253873
  }
253785
- const matchingLogs = filters.level ? logs.filter((entry) => entry.level === filters.level) : logs;
253786
- allEntries.push(...matchingLogs.map((entry) => normalizeLogEntry(entry, functionName)));
253874
+ allEntries.push(...logs.map((entry) => normalizeLogEntry(entry, functionName)));
253787
253875
  }
253788
253876
  if (functionNames.length > 1) {
253789
253877
  const order = options.order?.toUpperCase() === "ASC" ? 1 : -1;
@@ -253847,7 +253935,7 @@ function getLogsCommand() {
253847
253935
  }
253848
253936
 
253849
253937
  // src/cli/commands/project/scaffold.ts
253850
- import { basename as basename5, resolve as resolve8 } from "node:path";
253938
+ import { basename as basename5, resolve as resolve10 } from "node:path";
253851
253939
  function resolveAppId(options) {
253852
253940
  const appId = options.appId;
253853
253941
  if (!appId) {
@@ -253863,7 +253951,7 @@ function resolveAppId(options) {
253863
253951
  async function scaffoldAction(ctx, name2, options, command2) {
253864
253952
  const { log, runTask: runTask2 } = ctx;
253865
253953
  const appId = resolveAppId(command2.optsWithGlobals());
253866
- const resolvedPath = resolve8("./");
253954
+ const resolvedPath = resolve10("./");
253867
253955
  const projectName = (name2 ?? basename5(resolvedPath)).trim();
253868
253956
  const template2 = await getTemplateById("backend-only");
253869
253957
  log.info(`Scaffolding project at ${resolvedPath}`);
@@ -254253,7 +254341,7 @@ function getSecretsListCommand() {
254253
254341
  }
254254
254342
 
254255
254343
  // src/cli/commands/secrets/set.ts
254256
- import { resolve as resolve9 } from "node:path";
254344
+ import { resolve as resolve11 } from "node:path";
254257
254345
  function parseEntries(entries) {
254258
254346
  const secrets = {};
254259
254347
  for (const entry of entries) {
@@ -254284,7 +254372,7 @@ async function setSecretsAction({ log, runTask: runTask2 }, entries, options) {
254284
254372
  validateInput(entries, options);
254285
254373
  let secrets;
254286
254374
  if (options.envFile) {
254287
- secrets = await parseEnvFile(resolve9(options.envFile));
254375
+ secrets = await parseEnvFile(resolve11(options.envFile));
254288
254376
  if (Object.keys(secrets).length === 0) {
254289
254377
  throw new InvalidInputError("The env file contains no valid KEY=VALUE entries.");
254290
254378
  }
@@ -254313,7 +254401,7 @@ function getSecretsCommand() {
254313
254401
  }
254314
254402
 
254315
254403
  // src/cli/commands/site/deploy.ts
254316
- import { resolve as resolve10 } from "node:path";
254404
+ import { resolve as resolve12 } from "node:path";
254317
254405
  async function deployAction2({ isNonInteractive, runTask: runTask2 }, options) {
254318
254406
  if (isNonInteractive && !options.yes) {
254319
254407
  throw new InvalidInputError("--yes is required in non-interactive mode");
@@ -254328,7 +254416,7 @@ async function deployAction2({ isNonInteractive, runTask: runTask2 }, options) {
254328
254416
  ]
254329
254417
  });
254330
254418
  }
254331
- const outputDir = resolve10(project2.root, project2.site.outputDirectory);
254419
+ const outputDir = resolve12(project2.root, project2.site.outputDirectory);
254332
254420
  if (!options.yes) {
254333
254421
  const shouldDeploy = await Re({
254334
254422
  message: `Deploy site from ${project2.site.outputDirectory}?`
@@ -254507,7 +254595,7 @@ function getTypesCommand() {
254507
254595
  // src/cli/dev/dev-server/main.ts
254508
254596
  var import_cors = __toESM(require_lib4(), 1);
254509
254597
  var import_express6 = __toESM(require_express(), 1);
254510
- import { dirname as dirname21, join as join27 } from "node:path";
254598
+ import { dirname as dirname22, join as join27 } from "node:path";
254511
254599
 
254512
254600
  // ../../node_modules/get-port/index.js
254513
254601
  import net from "node:net";
@@ -254534,14 +254622,14 @@ var getLocalHosts = () => {
254534
254622
  }
254535
254623
  return results;
254536
254624
  };
254537
- var checkAvailablePort = (options8) => new Promise((resolve12, reject) => {
254625
+ var checkAvailablePort = (options8) => new Promise((resolve14, reject) => {
254538
254626
  const server = net.createServer();
254539
254627
  server.unref();
254540
254628
  server.on("error", reject);
254541
254629
  server.listen(options8, () => {
254542
254630
  const { port } = server.address();
254543
254631
  server.close(() => {
254544
- resolve12(port);
254632
+ resolve14(port);
254545
254633
  });
254546
254634
  });
254547
254635
  });
@@ -254800,7 +254888,7 @@ class FunctionManager {
254800
254888
  });
254801
254889
  }
254802
254890
  waitForReady(name2, runningFunc) {
254803
- return new Promise((resolve12, reject) => {
254891
+ return new Promise((resolve14, reject) => {
254804
254892
  runningFunc.process.on("exit", (code2) => {
254805
254893
  if (!runningFunc.ready) {
254806
254894
  clearTimeout(timeout3);
@@ -254823,7 +254911,7 @@ class FunctionManager {
254823
254911
  runningFunc.ready = true;
254824
254912
  clearTimeout(timeout3);
254825
254913
  runningFunc.process.stdout?.off("data", onData);
254826
- resolve12(runningFunc.port);
254914
+ resolve14(runningFunc.port);
254827
254915
  }
254828
254916
  };
254829
254917
  runningFunc.process.stdout?.on("data", onData);
@@ -256081,15 +256169,15 @@ class ServeRunner {
256081
256169
  return;
256082
256170
  }
256083
256171
  this.stopping = true;
256084
- const exited = new Promise((resolve12) => child.once("exit", () => resolve12()));
256172
+ const exited = new Promise((resolve14) => child.once("exit", () => resolve14()));
256085
256173
  if (process21.platform === "win32" && child.pid) {
256086
256174
  const taskkill = spawn3("taskkill", ["/pid", String(child.pid), "/T", "/F"], {
256087
256175
  stdio: "ignore",
256088
256176
  windowsHide: true
256089
256177
  });
256090
- await new Promise((resolve12) => {
256091
- taskkill.once("exit", () => resolve12());
256092
- taskkill.once("error", () => resolve12());
256178
+ await new Promise((resolve14) => {
256179
+ taskkill.once("exit", () => resolve14());
256180
+ taskkill.once("error", () => resolve14());
256093
256181
  });
256094
256182
  } else if (child.pid) {
256095
256183
  try {
@@ -256135,7 +256223,7 @@ class ServeRunner {
256135
256223
 
256136
256224
  // src/cli/dev/dev-server/watcher.ts
256137
256225
  import { EventEmitter as EventEmitter4 } from "node:events";
256138
- import { relative as relative6 } from "node:path";
256226
+ import { relative as relative7 } from "node:path";
256139
256227
 
256140
256228
  // ../../node_modules/chokidar/index.js
256141
256229
  import { EventEmitter as EventEmitter3 } from "node:events";
@@ -256865,9 +256953,9 @@ class NodeFsHandler {
256865
256953
  if (this.fsw.closed) {
256866
256954
  return;
256867
256955
  }
256868
- const dirname20 = sp2.dirname(file2);
256956
+ const dirname21 = sp2.dirname(file2);
256869
256957
  const basename7 = sp2.basename(file2);
256870
- const parent = this.fsw._getWatchedDir(dirname20);
256958
+ const parent = this.fsw._getWatchedDir(dirname21);
256871
256959
  let prevStats = stats;
256872
256960
  if (parent.has(basename7))
256873
256961
  return;
@@ -256894,7 +256982,7 @@ class NodeFsHandler {
256894
256982
  prevStats = newStats2;
256895
256983
  }
256896
256984
  } catch (error48) {
256897
- this.fsw._remove(dirname20, basename7);
256985
+ this.fsw._remove(dirname21, basename7);
256898
256986
  }
256899
256987
  } else if (parent.has(basename7)) {
256900
256988
  const at13 = newStats.atimeMs;
@@ -256983,7 +257071,7 @@ class NodeFsHandler {
256983
257071
  this._addToNodeFs(path19, initialAdd, wh2, depth + 1);
256984
257072
  }
256985
257073
  }).on(EV.ERROR, this._boundHandleError);
256986
- return new Promise((resolve13, reject) => {
257074
+ return new Promise((resolve15, reject) => {
256987
257075
  if (!stream)
256988
257076
  return reject();
256989
257077
  stream.once(STR_END, () => {
@@ -256992,7 +257080,7 @@ class NodeFsHandler {
256992
257080
  return;
256993
257081
  }
256994
257082
  const wasThrottled = throttler ? throttler.clear() : false;
256995
- resolve13(undefined);
257083
+ resolve15(undefined);
256996
257084
  previous.getChildren().filter((item) => {
256997
257085
  return item !== directory && !current.has(item);
256998
257086
  }).forEach((item) => {
@@ -257117,11 +257205,11 @@ function createPattern(matcher) {
257117
257205
  if (matcher.path === string4)
257118
257206
  return true;
257119
257207
  if (matcher.recursive) {
257120
- const relative6 = sp3.relative(matcher.path, string4);
257121
- if (!relative6) {
257208
+ const relative7 = sp3.relative(matcher.path, string4);
257209
+ if (!relative7) {
257122
257210
  return false;
257123
257211
  }
257124
- return !relative6.startsWith("..") && !sp3.isAbsolute(relative6);
257212
+ return !relative7.startsWith("..") && !sp3.isAbsolute(relative7);
257125
257213
  }
257126
257214
  return false;
257127
257215
  };
@@ -257820,7 +257908,7 @@ class WatchBase44 extends EventEmitter4 {
257820
257908
  ignoreInitial: true
257821
257909
  });
257822
257910
  watcher.on("all", import_debounce.default(async (_event, path19) => {
257823
- this.emit("change", name2, relative6(targetPath, path19));
257911
+ this.emit("change", name2, relative7(targetPath, path19));
257824
257912
  }, WATCH_DEBOUNCE_MS));
257825
257913
  watcher.on("error", (err) => {
257826
257914
  this.logger.error(`Watch handler failed for ${targetPath}`, err);
@@ -257909,7 +257997,7 @@ async function createDevServer(options8) {
257909
257997
  }
257910
257998
  remoteProxy(req, res, next);
257911
257999
  });
257912
- const server = await new Promise((resolve14, reject) => {
258000
+ const server = await new Promise((resolve16, reject) => {
257913
258001
  const s5 = app.listen(port, "127.0.0.1", (err) => {
257914
258002
  if (err) {
257915
258003
  if ("code" in err && err.code === "EADDRINUSE") {
@@ -257918,7 +258006,7 @@ async function createDevServer(options8) {
257918
258006
  reject(err);
257919
258007
  }
257920
258008
  } else {
257921
- resolve14(s5);
258009
+ resolve16(s5);
257922
258010
  }
257923
258011
  });
257924
258012
  });
@@ -257927,8 +258015,8 @@ async function createDevServer(options8) {
257927
258015
  broadcastEntityEvent(io6, appId, entityName, event);
257928
258016
  };
257929
258017
  const base44ConfigWatcher = new WatchBase44({
257930
- functions: join27(dirname21(project2.configPath), project2.functionsDir),
257931
- entities: join27(dirname21(project2.configPath), project2.entitiesDir)
258018
+ functions: join27(dirname22(project2.configPath), project2.functionsDir),
258019
+ entities: join27(dirname22(project2.configPath), project2.entitiesDir)
257932
258020
  }, devLogger);
257933
258021
  base44ConfigWatcher.on("change", async (name2) => {
257934
258022
  try {
@@ -257981,13 +258069,13 @@ async function createDevServer(options8) {
257981
258069
  if (!server.listening) {
257982
258070
  return;
257983
258071
  }
257984
- await new Promise((resolve14, reject) => {
258072
+ await new Promise((resolve16, reject) => {
257985
258073
  server.close((error48) => {
257986
258074
  if (error48) {
257987
258075
  reject(error48);
257988
258076
  return;
257989
258077
  }
257990
- resolve14();
258078
+ resolve16();
257991
258079
  });
257992
258080
  });
257993
258081
  };
@@ -258096,13 +258184,13 @@ async function runScript(options8) {
258096
258184
  }
258097
258185
  // src/cli/commands/exec.ts
258098
258186
  function readStdin2() {
258099
- return new Promise((resolve14, reject) => {
258187
+ return new Promise((resolve16, reject) => {
258100
258188
  let data = "";
258101
258189
  process.stdin.setEncoding("utf-8");
258102
258190
  process.stdin.on("data", (chunk) => {
258103
258191
  data += chunk;
258104
258192
  });
258105
- process.stdin.on("end", () => resolve14(data));
258193
+ process.stdin.on("end", () => resolve16(data));
258106
258194
  process.stdin.on("error", reject);
258107
258195
  });
258108
258196
  }
@@ -258144,7 +258232,7 @@ Examples:
258144
258232
  }
258145
258233
 
258146
258234
  // src/cli/commands/project/eject.ts
258147
- import { resolve as resolve14 } from "node:path";
258235
+ import { resolve as resolve16 } from "node:path";
258148
258236
  var import_kebabCase2 = __toESM(require_kebabCase(), 1);
258149
258237
  async function eject(ctx, options8, command2) {
258150
258238
  const { log, runTask: runTask2, isNonInteractive } = ctx;
@@ -258208,7 +258296,7 @@ async function eject(ctx, options8, command2) {
258208
258296
  Ne("Operation cancelled.");
258209
258297
  throw new CLIExitError(0);
258210
258298
  }
258211
- const resolvedPath = resolve14(selectedPath);
258299
+ const resolvedPath = resolve16(selectedPath);
258212
258300
  await runTask2("Downloading your project's code...", async (updateMessage) => {
258213
258301
  await createProjectFilesForExistingProject({
258214
258302
  projectId,
@@ -258293,7 +258381,7 @@ var import_detect_agent = __toESM(require_dist5(), 1);
258293
258381
  import { release, type } from "node:os";
258294
258382
 
258295
258383
  // ../../node_modules/posthog-node/dist/extensions/error-tracking/modifiers/module.node.mjs
258296
- import { dirname as dirname22, posix, sep } from "path";
258384
+ import { dirname as dirname23, posix, sep } from "path";
258297
258385
  function createModulerModifier() {
258298
258386
  const getModuleFromFileName = createGetModuleFromFilename();
258299
258387
  return async (frames) => {
@@ -258302,7 +258390,7 @@ function createModulerModifier() {
258302
258390
  return frames;
258303
258391
  };
258304
258392
  }
258305
- function createGetModuleFromFilename(basePath = process.argv[1] ? dirname22(process.argv[1]) : process.cwd(), isWindows5 = sep === "\\") {
258393
+ function createGetModuleFromFilename(basePath = process.argv[1] ? dirname23(process.argv[1]) : process.cwd(), isWindows5 = sep === "\\") {
258306
258394
  const normalizedBase = isWindows5 ? normalizeWindowsPath2(basePath) : basePath;
258307
258395
  return (filename) => {
258308
258396
  if (!filename)
@@ -260580,14 +260668,14 @@ async function addSourceContext(frames) {
260580
260668
  return frames;
260581
260669
  }
260582
260670
  function getContextLinesFromFile(path19, ranges, output) {
260583
- return new Promise((resolve15) => {
260671
+ return new Promise((resolve17) => {
260584
260672
  const stream = createReadStream2(path19);
260585
260673
  const lineReaded = createInterface2({
260586
260674
  input: stream
260587
260675
  });
260588
260676
  function destroyStreamAndResolve() {
260589
260677
  stream.destroy();
260590
- resolve15();
260678
+ resolve17();
260591
260679
  }
260592
260680
  let lineNumber = 0;
260593
260681
  let currentRangeIndex = 0;
@@ -261699,15 +261787,15 @@ class PostHogBackendClient extends PostHogCoreStateless {
261699
261787
  return true;
261700
261788
  if (this.featureFlagsPoller === undefined)
261701
261789
  return false;
261702
- return new Promise((resolve15) => {
261790
+ return new Promise((resolve17) => {
261703
261791
  const timeout3 = setTimeout(() => {
261704
261792
  cleanup();
261705
- resolve15(false);
261793
+ resolve17(false);
261706
261794
  }, timeoutMs);
261707
261795
  const cleanup = this._events.on("localEvaluationFlagsLoaded", (count2) => {
261708
261796
  clearTimeout(timeout3);
261709
261797
  cleanup();
261710
- resolve15(count2 > 0);
261798
+ resolve17(count2 > 0);
261711
261799
  });
261712
261800
  });
261713
261801
  }
@@ -262491,7 +262579,7 @@ function addCommandInfoToErrorReporter(program2, errorReporter) {
262491
262579
  });
262492
262580
  }
262493
262581
  // src/cli/index.ts
262494
- var __dirname4 = dirname23(fileURLToPath6(import.meta.url));
262582
+ var __dirname4 = dirname24(fileURLToPath6(import.meta.url));
262495
262583
  async function runCLI(options8) {
262496
262584
  ensureNpmAssets(join28(__dirname4, "../assets"));
262497
262585
  const errorReporter = new ErrorReporter;
@@ -262532,4 +262620,4 @@ export {
262532
262620
  CLIExitError
262533
262621
  };
262534
262622
 
262535
- //# debugId=606087EF0C91158C64756E2164756E21
262623
+ //# debugId=B8C7F17D9436926E64756E2164756E21