@hot-updater/firebase 0.20.0-rc.0 → 0.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/iac/index.js CHANGED
@@ -48,7 +48,7 @@ var __require = /* @__PURE__ */ createRequire(import.meta.url);
48
48
 
49
49
  //#endregion
50
50
  //#region ../../node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js
51
- var require_src = __commonJS({ "../../node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js"(exports, module) {
51
+ var require_src = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js": ((exports, module) => {
52
52
  const ESC = "\x1B";
53
53
  const CSI = `${ESC}[`;
54
54
  const beep = "\x07";
@@ -101,11 +101,11 @@ var require_src = __commonJS({ "../../node_modules/.pnpm/sisteransi@1.0.5/node_m
101
101
  erase,
102
102
  beep
103
103
  };
104
- } });
104
+ }) });
105
105
 
106
106
  //#endregion
107
107
  //#region ../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js
108
- var require_picocolors = __commonJS({ "../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js"(exports, module) {
108
+ var require_picocolors = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js": ((exports, module) => {
109
109
  let p = process || {}, argv = p.argv || [], env = p.env || {};
110
110
  let isColorSupported = !(!!env.NO_COLOR || argv.includes("--no-color")) && (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env.TERM !== "dumb" || !!env.CI);
111
111
  let formatter = (open, close, replace = open) => (input) => {
@@ -170,12 +170,12 @@ var require_picocolors = __commonJS({ "../../node_modules/.pnpm/picocolors@1.1.1
170
170
  };
171
171
  module.exports = createColors();
172
172
  module.exports.createColors = createColors;
173
- } });
173
+ }) });
174
174
 
175
175
  //#endregion
176
176
  //#region ../../node_modules/.pnpm/@clack+core@0.4.1/node_modules/@clack/core/dist/index.mjs
177
- var import_src$1 = __toESM(require_src(), 1);
178
- var import_picocolors$1 = __toESM(require_picocolors(), 1);
177
+ var import_src$1 = /* @__PURE__ */ __toESM(require_src(), 1);
178
+ var import_picocolors$1 = /* @__PURE__ */ __toESM(require_picocolors(), 1);
179
179
  function J$1({ onlyFirst: t = !1 } = {}) {
180
180
  const F$1 = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");
181
181
  return new RegExp(F$1, t ? void 0 : "g");
@@ -420,7 +420,7 @@ const iD = sD(), v = new Set(["\x1B", "›"]), CD = 39, w$1 = "\x07", W$1 = "[",
420
420
  `)];
421
421
  for (const [E, a$1] of o$2.entries()) {
422
422
  if (e$1 += a$1, v.has(a$1)) {
423
- const { groups: B$1 } = new RegExp(`(?:\\${W$1}(?<code>\\d+)m|\\${y}(?<uri>.*)${w$1})`).exec(o$2.slice(E).join("")) || { groups: {} };
423
+ const { groups: B$1 } = (/* @__PURE__ */ new RegExp(`(?:\\${W$1}(?<code>\\d+)m|\\${y}(?<uri>.*)${w$1})`)).exec(o$2.slice(E).join("")) || { groups: {} };
424
424
  if (B$1.code !== void 0) {
425
425
  const p$1 = Number.parseFloat(B$1.code);
426
426
  s = p$1 === CD ? void 0 : p$1;
@@ -813,8 +813,8 @@ var PD = class extends x {
813
813
 
814
814
  //#endregion
815
815
  //#region ../../node_modules/.pnpm/@clack+prompts@0.10.0/node_modules/@clack/prompts/dist/index.mjs
816
- var import_picocolors = __toESM(require_picocolors(), 1);
817
- var import_src = __toESM(require_src(), 1);
816
+ var import_picocolors = /* @__PURE__ */ __toESM(require_picocolors(), 1);
817
+ var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
818
818
  function ce() {
819
819
  return g.platform !== "win32" ? g.env.TERM !== "linux" : !!g.env.CI || !!g.env.WT_SESSION || !!g.env.TERMINUS_SUBLIME || g.env.ConEmuTask === "{cmd::Cmder}" || g.env.TERM_PROGRAM === "Terminus-Sublime" || g.env.TERM_PROGRAM === "vscode" || g.env.TERM === "xterm-256color" || g.env.TERM === "alacritty" || g.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
820
820
  }
@@ -1387,11 +1387,10 @@ function areObjectsEqual(a$1, b$2, stack, areValuesEqual) {
1387
1387
  stack.set(b$2, a$1);
1388
1388
  try {
1389
1389
  switch (aTag) {
1390
- case mapTag: {
1390
+ case mapTag:
1391
1391
  if (a$1.size !== b$2.size) return false;
1392
1392
  for (const [key, value] of a$1.entries()) if (!b$2.has(key) || !isEqualWithImpl(value, b$2.get(key), key, a$1, b$2, stack, areValuesEqual)) return false;
1393
1393
  return true;
1394
- }
1395
1394
  case setTag: {
1396
1395
  if (a$1.size !== b$2.size) return false;
1397
1396
  const aValues = Array.from(a$1.values());
@@ -1417,20 +1416,17 @@ function areObjectsEqual(a$1, b$2, stack, areValuesEqual) {
1417
1416
  case int32ArrayTag:
1418
1417
  case bigInt64ArrayTag:
1419
1418
  case float32ArrayTag:
1420
- case float64ArrayTag: {
1419
+ case float64ArrayTag:
1421
1420
  if (typeof Buffer !== "undefined" && Buffer.isBuffer(a$1) !== Buffer.isBuffer(b$2)) return false;
1422
1421
  if (a$1.length !== b$2.length) return false;
1423
1422
  for (let i$1 = 0; i$1 < a$1.length; i$1++) if (!isEqualWithImpl(a$1[i$1], b$2[i$1], i$1, a$1, b$2, stack, areValuesEqual)) return false;
1424
1423
  return true;
1425
- }
1426
- case arrayBufferTag: {
1424
+ case arrayBufferTag:
1427
1425
  if (a$1.byteLength !== b$2.byteLength) return false;
1428
1426
  return areObjectsEqual(new Uint8Array(a$1), new Uint8Array(b$2), stack, areValuesEqual);
1429
- }
1430
- case dataViewTag: {
1427
+ case dataViewTag:
1431
1428
  if (a$1.byteLength !== b$2.byteLength || a$1.byteOffset !== b$2.byteOffset) return false;
1432
1429
  return areObjectsEqual(new Uint8Array(a$1), new Uint8Array(b$2), stack, areValuesEqual);
1433
- }
1434
1430
  case errorTag: return a$1.name === b$2.name && a$1.message === b$2.message;
1435
1431
  case objectTag: {
1436
1432
  const areEqualInstances = areObjectsEqual(a$1.constructor, b$2.constructor, stack, areValuesEqual) || isPlainObject$1(a$1) && isPlainObject$1(b$2);
@@ -2262,10 +2258,10 @@ const handleCommand = (filePath, rawArguments, rawOptions) => {
2262
2258
 
2263
2259
  //#endregion
2264
2260
  //#region ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js
2265
- var require_windows = __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js"(exports, module) {
2261
+ var require_windows = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js": ((exports, module) => {
2266
2262
  module.exports = isexe$3;
2267
2263
  isexe$3.sync = sync$2;
2268
- var fs$4 = __require("fs");
2264
+ var fs$3 = __require("fs");
2269
2265
  function checkPathExt(path$5, options) {
2270
2266
  var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT;
2271
2267
  if (!pathext) return true;
@@ -2282,28 +2278,28 @@ var require_windows = __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_mo
2282
2278
  return checkPathExt(path$5, options);
2283
2279
  }
2284
2280
  function isexe$3(path$5, options, cb) {
2285
- fs$4.stat(path$5, function(er, stat) {
2281
+ fs$3.stat(path$5, function(er, stat) {
2286
2282
  cb(er, er ? false : checkStat$1(stat, path$5, options));
2287
2283
  });
2288
2284
  }
2289
2285
  function sync$2(path$5, options) {
2290
- return checkStat$1(fs$4.statSync(path$5), path$5, options);
2286
+ return checkStat$1(fs$3.statSync(path$5), path$5, options);
2291
2287
  }
2292
- } });
2288
+ }) });
2293
2289
 
2294
2290
  //#endregion
2295
2291
  //#region ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js
2296
- var require_mode = __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js"(exports, module) {
2292
+ var require_mode = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js": ((exports, module) => {
2297
2293
  module.exports = isexe$2;
2298
2294
  isexe$2.sync = sync$1;
2299
- var fs$3 = __require("fs");
2295
+ var fs$2 = __require("fs");
2300
2296
  function isexe$2(path$5, options, cb) {
2301
- fs$3.stat(path$5, function(er, stat) {
2297
+ fs$2.stat(path$5, function(er, stat) {
2302
2298
  cb(er, er ? false : checkStat(stat, options));
2303
2299
  });
2304
2300
  }
2305
2301
  function sync$1(path$5, options) {
2306
- return checkStat(fs$3.statSync(path$5), options);
2302
+ return checkStat(fs$2.statSync(path$5), options);
2307
2303
  }
2308
2304
  function checkStat(stat, options) {
2309
2305
  return stat.isFile() && checkMode(stat, options);
@@ -2321,12 +2317,12 @@ var require_mode = __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modul
2321
2317
  var ret = mod & o$2 || mod & g$2 && gid === myGid || mod & u$2 && uid === myUid || mod & ug && myUid === 0;
2322
2318
  return ret;
2323
2319
  }
2324
- } });
2320
+ }) });
2325
2321
 
2326
2322
  //#endregion
2327
2323
  //#region ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js
2328
- var require_isexe = __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js"(exports, module) {
2329
- var fs$2 = __require("fs");
2324
+ var require_isexe = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js": ((exports, module) => {
2325
+ __require("fs");
2330
2326
  var core;
2331
2327
  if (process.platform === "win32" || global.TESTING_WINDOWS) core = require_windows();
2332
2328
  else core = require_mode();
@@ -2364,16 +2360,16 @@ var require_isexe = __commonJS({ "../../node_modules/.pnpm/isexe@2.0.0/node_modu
2364
2360
  else throw er;
2365
2361
  }
2366
2362
  }
2367
- } });
2363
+ }) });
2368
2364
 
2369
2365
  //#endregion
2370
2366
  //#region ../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js
2371
- var require_which = __commonJS({ "../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js"(exports, module) {
2367
+ var require_which = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js": ((exports, module) => {
2372
2368
  const isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys";
2373
2369
  const path$4 = __require("path");
2374
2370
  const COLON = isWindows ? ";" : ":";
2375
2371
  const isexe = require_isexe();
2376
- const getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
2372
+ const getNotFoundError = (cmd) => Object.assign(/* @__PURE__ */ new Error(`not found: ${cmd}`), { code: "ENOENT" });
2377
2373
  const getPathInfo = (cmd, opt) => {
2378
2374
  const colon = opt.colon || COLON;
2379
2375
  const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [""] : [...isWindows ? [process.cwd()] : [], ...(opt.path || process.env.PATH || "").split(colon)];
@@ -2439,11 +2435,11 @@ var require_which = __commonJS({ "../../node_modules/.pnpm/which@2.0.2/node_modu
2439
2435
  };
2440
2436
  module.exports = which$1;
2441
2437
  which$1.sync = whichSync;
2442
- } });
2438
+ }) });
2443
2439
 
2444
2440
  //#endregion
2445
2441
  //#region ../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js
2446
- var require_path_key = __commonJS({ "../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js"(exports, module) {
2442
+ var require_path_key = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js": ((exports, module) => {
2447
2443
  const pathKey$1 = (options = {}) => {
2448
2444
  const environment = options.env || process.env;
2449
2445
  const platform$1 = options.platform || process.platform;
@@ -2452,11 +2448,11 @@ var require_path_key = __commonJS({ "../../node_modules/.pnpm/path-key@3.1.1/nod
2452
2448
  };
2453
2449
  module.exports = pathKey$1;
2454
2450
  module.exports.default = pathKey$1;
2455
- } });
2451
+ }) });
2456
2452
 
2457
2453
  //#endregion
2458
2454
  //#region ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js
2459
- var require_resolveCommand = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports, module) {
2455
+ var require_resolveCommand = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js": ((exports, module) => {
2460
2456
  const path$3 = __require("path");
2461
2457
  const which = require_which();
2462
2458
  const getPathKey = require_path_key();
@@ -2484,11 +2480,11 @@ var require_resolveCommand = __commonJS({ "../../node_modules/.pnpm/cross-spawn@
2484
2480
  return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true);
2485
2481
  }
2486
2482
  module.exports = resolveCommand$1;
2487
- } });
2483
+ }) });
2488
2484
 
2489
2485
  //#endregion
2490
2486
  //#region ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js
2491
- var require_escape = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js"(exports, module) {
2487
+ var require_escape = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js": ((exports, module) => {
2492
2488
  const metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g;
2493
2489
  function escapeCommand(arg) {
2494
2490
  arg = arg.replace(metaCharsRegExp, "^$1");
@@ -2505,17 +2501,17 @@ var require_escape = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/no
2505
2501
  }
2506
2502
  module.exports.command = escapeCommand;
2507
2503
  module.exports.argument = escapeArgument;
2508
- } });
2504
+ }) });
2509
2505
 
2510
2506
  //#endregion
2511
2507
  //#region ../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js
2512
- var require_shebang_regex = __commonJS({ "../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js"(exports, module) {
2508
+ var require_shebang_regex = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js": ((exports, module) => {
2513
2509
  module.exports = /^#!(.*)/;
2514
- } });
2510
+ }) });
2515
2511
 
2516
2512
  //#endregion
2517
2513
  //#region ../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js
2518
- var require_shebang_command = __commonJS({ "../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js"(exports, module) {
2514
+ var require_shebang_command = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js": ((exports, module) => {
2519
2515
  const shebangRegex = require_shebang_regex();
2520
2516
  module.exports = (string = "") => {
2521
2517
  const match = string.match(shebangRegex);
@@ -2525,11 +2521,11 @@ var require_shebang_command = __commonJS({ "../../node_modules/.pnpm/shebang-com
2525
2521
  if (binary === "env") return argument;
2526
2522
  return argument ? `${binary} ${argument}` : binary;
2527
2523
  };
2528
- } });
2524
+ }) });
2529
2525
 
2530
2526
  //#endregion
2531
2527
  //#region ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js
2532
- var require_readShebang = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js"(exports, module) {
2528
+ var require_readShebang = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js": ((exports, module) => {
2533
2529
  const fs$1 = __require("fs");
2534
2530
  const shebangCommand = require_shebang_command();
2535
2531
  function readShebang$1(command) {
@@ -2544,11 +2540,11 @@ var require_readShebang = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0
2544
2540
  return shebangCommand(buffer.toString());
2545
2541
  }
2546
2542
  module.exports = readShebang$1;
2547
- } });
2543
+ }) });
2548
2544
 
2549
2545
  //#endregion
2550
2546
  //#region ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js
2551
- var require_parse = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js"(exports, module) {
2547
+ var require_parse = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js": ((exports, module) => {
2552
2548
  const path$2 = __require("path");
2553
2549
  const resolveCommand = require_resolveCommand();
2554
2550
  const escape = require_escape();
@@ -2607,14 +2603,14 @@ var require_parse = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/nod
2607
2603
  return options.shell ? parsed : parseNonShell(parsed);
2608
2604
  }
2609
2605
  module.exports = parse$1;
2610
- } });
2606
+ }) });
2611
2607
 
2612
2608
  //#endregion
2613
2609
  //#region ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js
2614
- var require_enoent = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js"(exports, module) {
2610
+ var require_enoent = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js": ((exports, module) => {
2615
2611
  const isWin = process.platform === "win32";
2616
2612
  function notFoundError(original, syscall) {
2617
- return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), {
2613
+ return Object.assign(/* @__PURE__ */ new Error(`${syscall} ${original.command} ENOENT`), {
2618
2614
  code: "ENOENT",
2619
2615
  errno: "ENOENT",
2620
2616
  syscall: `${syscall} ${original.command}`,
@@ -2647,11 +2643,11 @@ var require_enoent = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/no
2647
2643
  verifyENOENTSync,
2648
2644
  notFoundError
2649
2645
  };
2650
- } });
2646
+ }) });
2651
2647
 
2652
2648
  //#endregion
2653
2649
  //#region ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js
2654
- var require_cross_spawn = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js"(exports, module) {
2650
+ var require_cross_spawn = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js": ((exports, module) => {
2655
2651
  const cp = __require("child_process");
2656
2652
  const parse = require_parse();
2657
2653
  const enoent = require_enoent();
@@ -2672,10 +2668,11 @@ var require_cross_spawn = __commonJS({ "../../node_modules/.pnpm/cross-spawn@7.0
2672
2668
  module.exports.sync = spawnSync$1;
2673
2669
  module.exports._parse = parse;
2674
2670
  module.exports._enoent = enoent;
2675
- } });
2671
+ }) });
2676
2672
 
2677
2673
  //#endregion
2678
2674
  //#region ../../node_modules/.pnpm/path-key@4.0.0/node_modules/path-key/index.js
2675
+ var import_cross_spawn = /* @__PURE__ */ __toESM(require_cross_spawn(), 1);
2679
2676
  function pathKey(options = {}) {
2680
2677
  const { env: env$1 = process.env, platform: platform$1 = process.platform } = options;
2681
2678
  if (platform$1 !== "win32") return "PATH";
@@ -3246,7 +3243,7 @@ const throwOnMissingStrict = (isSubprocess) => {
3246
3243
  const throwOnStrictDisconnect = (isSubprocess) => {
3247
3244
  throw new Error(`${getMethodName("sendMessage", isSubprocess)} failed: the ${getOtherProcessName(isSubprocess)} exited without listening to incoming messages.`);
3248
3245
  };
3249
- const getAbortDisconnectError = () => new Error(`\`cancelSignal\` aborted: the ${getOtherProcessName(true)} disconnected.`);
3246
+ const getAbortDisconnectError = () => /* @__PURE__ */ new Error(`\`cancelSignal\` aborted: the ${getOtherProcessName(true)} disconnected.`);
3250
3247
  const throwOnMissingParent = () => {
3251
3248
  throw new Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.");
3252
3249
  };
@@ -3884,7 +3881,6 @@ const fixCwdError = (originalMessage, cwd) => {
3884
3881
 
3885
3882
  //#endregion
3886
3883
  //#region ../../node_modules/.pnpm/execa@9.5.2/node_modules/execa/lib/arguments/options.js
3887
- var import_cross_spawn = __toESM(require_cross_spawn(), 1);
3888
3884
  const normalizeOptions = (filePath, rawArguments, rawOptions) => {
3889
3885
  rawOptions.cwd = normalizeCwd(rawOptions.cwd);
3890
3886
  const [processedFile, processedArguments, processedOptions] = handleNodeOption(filePath, rawArguments, rawOptions);
@@ -4212,7 +4208,7 @@ const arrayMethods = {
4212
4208
  async function getStreamAsArrayBuffer(stream, options) {
4213
4209
  return getStreamContents$1(stream, arrayBufferMethods, options);
4214
4210
  }
4215
- const initArrayBuffer = () => ({ contents: new ArrayBuffer(0) });
4211
+ const initArrayBuffer = () => ({ contents: /* @__PURE__ */ new ArrayBuffer(0) });
4216
4212
  const useTextEncoder = (chunk) => textEncoder.encode(chunk);
4217
4213
  const textEncoder = new TextEncoder();
4218
4214
  const useUint8Array = (chunk) => new Uint8Array(chunk);
@@ -4561,10 +4557,9 @@ function parseBigint(milliseconds) {
4561
4557
  }
4562
4558
  function parseMilliseconds(milliseconds) {
4563
4559
  switch (typeof milliseconds) {
4564
- case "number": {
4560
+ case "number":
4565
4561
  if (Number.isFinite(milliseconds)) return parseNumber(milliseconds);
4566
4562
  break;
4567
- }
4568
4563
  case "bigint": return parseBigint(milliseconds);
4569
4564
  }
4570
4565
  throw new TypeError("Expected a finite number or bigint");
@@ -5104,10 +5099,10 @@ const getDuplicateStream = ({ stdioItem: { type, value, optionName }, direction,
5104
5099
  optionName
5105
5100
  });
5106
5101
  };
5107
- const getOtherStdioItems = (fileDescriptors, type) => fileDescriptors.flatMap(({ direction, stdioItems }) => stdioItems.filter((stdioItem) => stdioItem.type === type).map((stdioItem) => ({
5102
+ const getOtherStdioItems = (fileDescriptors, type) => fileDescriptors.flatMap(({ direction, stdioItems }) => stdioItems.filter((stdioItem) => stdioItem.type === type).map(((stdioItem) => ({
5108
5103
  ...stdioItem,
5109
5104
  direction
5110
- })));
5105
+ }))));
5111
5106
  const validateDuplicateStreamSync = ({ otherStdioItems, type, value, optionName, direction }) => {
5112
5107
  if (SPECIAL_DUPLICATE_TYPES_SYNC.has(type)) getDuplicateStreamInstance({
5113
5108
  otherStdioItems,
@@ -5624,7 +5619,7 @@ const logLine = (line, fdNumber, verboseInfo) => {
5624
5619
  const transformOutputSync = ({ fileDescriptors, syncResult: { output }, options, isMaxBuffer, verboseInfo }) => {
5625
5620
  if (output === null) return { output: Array.from({ length: 3 }) };
5626
5621
  const state = {};
5627
- const outputFiles = new Set([]);
5622
+ const outputFiles = /* @__PURE__ */ new Set([]);
5628
5623
  const transformedOutput = output.map((result, fdNumber) => transformOutputResultSync({
5629
5624
  result,
5630
5625
  fileDescriptors,
@@ -6186,9 +6181,9 @@ const getHighWaterMark = (streams, objectMode) => {
6186
6181
  return Math.max(...highWaterMarks);
6187
6182
  };
6188
6183
  var MergedStream = class extends PassThrough {
6189
- #streams = new Set([]);
6190
- #ended = new Set([]);
6191
- #aborted = new Set([]);
6184
+ #streams = /* @__PURE__ */ new Set([]);
6185
+ #ended = /* @__PURE__ */ new Set([]);
6186
+ #aborted = /* @__PURE__ */ new Set([]);
6192
6187
  #onFinished;
6193
6188
  #unpipeEvent = Symbol("unpipe");
6194
6189
  #streamPromises = /* @__PURE__ */ new WeakMap();
@@ -6787,7 +6782,7 @@ const unpipeOnAbort = (unpipeSignal, unpipeContext) => unpipeSignal === void 0 ?
6787
6782
  const unpipeOnSignalAbort = async (unpipeSignal, { sourceStream, mergedStream, fileDescriptors, sourceOptions, startTime }) => {
6788
6783
  await aborted(unpipeSignal, sourceStream);
6789
6784
  await mergedStream.remove(sourceStream);
6790
- const error = new Error("Pipe canceled by `unpipeSignal` option.");
6785
+ const error = /* @__PURE__ */ new Error("Pipe canceled by `unpipeSignal` option.");
6791
6786
  throw createNonCommandError({
6792
6787
  error,
6793
6788
  fileDescriptors,
@@ -8418,7 +8413,7 @@ const runInit = async ({ build }) => {
8418
8413
  }
8419
8414
  await printTemplate(initializeVariable.projectId, currentRegion);
8420
8415
  await removeTmpDir();
8421
- f.message(`Next step: ${link("https://gronxb.github.io/hot-updater/guide/providers/4_firebase.html#step-3-generated-configurations")}`);
8416
+ f.message(`Next step: ${link("https://hot-updater.dev/guide/providers/4_firebase.html#step-3-generated-configurations")}`);
8422
8417
  f.message("Next step: Change GOOGLE_APPLICATION_CREDENTIALS=your-credentials.json in .env file");
8423
8418
  f.success("Done! 🎉");
8424
8419
  };
package/dist/index.cjs CHANGED
@@ -22,9 +22,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
22
22
 
23
23
  //#endregion
24
24
  const path = __toESM(require("path"));
25
+ const __hot_updater_plugin_core = __toESM(require("@hot-updater/plugin-core"));
25
26
  const firebase_admin = __toESM(require("firebase-admin"));
26
27
  const fs_promises = __toESM(require("fs/promises"));
27
- const __hot_updater_plugin_core = __toESM(require("@hot-updater/plugin-core"));
28
28
 
29
29
  //#region ../../node_modules/.pnpm/mime@4.0.4/node_modules/mime/dist/types/other.js
30
30
  const types$1 = {
@@ -1374,14 +1374,15 @@ const firebaseStorage = (config, hooks) => (_) => {
1374
1374
  app = firebase_admin.initializeApp(config);
1375
1375
  }
1376
1376
  const bucket = app.storage().bucket(config.storageBucket);
1377
+ const getStorageKey = (0, __hot_updater_plugin_core.createStorageKeyBuilder)(config.basePath);
1377
1378
  return {
1378
1379
  name: "firebaseStorage",
1379
1380
  async deleteBundle(bundleId) {
1380
- const Key = `${bundleId}/bundle.zip`;
1381
+ const key = getStorageKey(bundleId, "bundle.zip");
1381
1382
  try {
1382
- const [files] = await bucket.getFiles({ prefix: Key });
1383
+ const [files] = await bucket.getFiles({ prefix: key });
1383
1384
  await Promise.all(files.map((file) => file.delete()));
1384
- return { storageUri: `gs://${config.storageBucket}/${Key}` };
1385
+ return { storageUri: `gs://${config.storageBucket}/${key}` };
1385
1386
  } catch (e) {
1386
1387
  console.error("Error listing or deleting files:", e);
1387
1388
  throw new Error("Bundle Not Found");
@@ -1392,13 +1393,14 @@ const firebaseStorage = (config, hooks) => (_) => {
1392
1393
  const fileContent = await fs_promises.default.readFile(bundlePath);
1393
1394
  const contentType = src_default.getType(bundlePath) ?? "application/octet-stream";
1394
1395
  const filename = path.default.basename(bundlePath);
1395
- const key = `${bundleId}/${filename}`;
1396
+ const key = getStorageKey(bundleId, filename);
1396
1397
  const file = bucket.file(key);
1397
1398
  await file.save(fileContent, { metadata: { contentType } });
1398
1399
  hooks?.onStorageUploaded?.();
1399
1400
  return { storageUri: `gs://${config.storageBucket}/${key}` };
1400
1401
  } catch (error) {
1401
- if (error instanceof Error) throw new Error(error.message);
1402
+ console.error("Error uploading bundle:", error);
1403
+ if (error instanceof Error) throw new Error(`Failed to upload bundle: ${error.message}`);
1402
1404
  throw error;
1403
1405
  }
1404
1406
  }
package/dist/index.d.cts CHANGED
@@ -1,11 +1,14 @@
1
1
  import * as _hot_updater_plugin_core0 from "@hot-updater/plugin-core";
2
2
  import { BasePluginArgs, DatabasePluginHooks, StoragePlugin, StoragePluginHooks } from "@hot-updater/plugin-core";
3
- import * as admin$1 from "firebase-admin";
4
3
  import * as admin from "firebase-admin";
5
4
 
6
5
  //#region src/firebaseStorage.d.ts
7
- interface FirebaseStorageConfig extends admin$1.AppOptions {
6
+ interface FirebaseStorageConfig extends admin.AppOptions {
8
7
  storageBucket: string;
8
+ /**
9
+ * Base path where bundles will be stored in the bucket
10
+ */
11
+ basePath?: string;
9
12
  }
10
13
  declare const firebaseStorage: (config: FirebaseStorageConfig, hooks?: StoragePluginHooks) => (_: BasePluginArgs) => StoragePlugin;
11
14
  //#endregion
package/dist/index.d.ts CHANGED
@@ -1,11 +1,14 @@
1
- import * as admin$1 from "firebase-admin";
2
- import * as admin from "firebase-admin";
3
1
  import * as _hot_updater_plugin_core0 from "@hot-updater/plugin-core";
4
2
  import { BasePluginArgs, DatabasePluginHooks, StoragePlugin, StoragePluginHooks } from "@hot-updater/plugin-core";
3
+ import * as admin from "firebase-admin";
5
4
 
6
5
  //#region src/firebaseStorage.d.ts
7
- interface FirebaseStorageConfig extends admin$1.AppOptions {
6
+ interface FirebaseStorageConfig extends admin.AppOptions {
8
7
  storageBucket: string;
8
+ /**
9
+ * Base path where bundles will be stored in the bucket
10
+ */
11
+ basePath?: string;
9
12
  }
10
13
  declare const firebaseStorage: (config: FirebaseStorageConfig, hooks?: StoragePluginHooks) => (_: BasePluginArgs) => StoragePlugin;
11
14
  //#endregion
package/dist/index.js CHANGED
@@ -1,8 +1,7 @@
1
1
  import path from "path";
2
- import * as admin$1 from "firebase-admin";
2
+ import { calculatePagination, createDatabasePlugin, createStorageKeyBuilder } from "@hot-updater/plugin-core";
3
3
  import * as admin from "firebase-admin";
4
4
  import fs from "fs/promises";
5
- import { calculatePagination, createDatabasePlugin } from "@hot-updater/plugin-core";
6
5
 
7
6
  //#region ../../node_modules/.pnpm/mime@4.0.4/node_modules/mime/dist/types/other.js
8
7
  const types$1 = {
@@ -1347,19 +1346,20 @@ var src_default = new Mime_default(standard_default, other_default)._freeze();
1347
1346
  const firebaseStorage = (config, hooks) => (_) => {
1348
1347
  let app;
1349
1348
  try {
1350
- app = admin$1.app();
1349
+ app = admin.app();
1351
1350
  } catch (e) {
1352
- app = admin$1.initializeApp(config);
1351
+ app = admin.initializeApp(config);
1353
1352
  }
1354
1353
  const bucket = app.storage().bucket(config.storageBucket);
1354
+ const getStorageKey = createStorageKeyBuilder(config.basePath);
1355
1355
  return {
1356
1356
  name: "firebaseStorage",
1357
1357
  async deleteBundle(bundleId) {
1358
- const Key = `${bundleId}/bundle.zip`;
1358
+ const key = getStorageKey(bundleId, "bundle.zip");
1359
1359
  try {
1360
- const [files] = await bucket.getFiles({ prefix: Key });
1360
+ const [files] = await bucket.getFiles({ prefix: key });
1361
1361
  await Promise.all(files.map((file) => file.delete()));
1362
- return { storageUri: `gs://${config.storageBucket}/${Key}` };
1362
+ return { storageUri: `gs://${config.storageBucket}/${key}` };
1363
1363
  } catch (e) {
1364
1364
  console.error("Error listing or deleting files:", e);
1365
1365
  throw new Error("Bundle Not Found");
@@ -1370,13 +1370,14 @@ const firebaseStorage = (config, hooks) => (_) => {
1370
1370
  const fileContent = await fs.readFile(bundlePath);
1371
1371
  const contentType = src_default.getType(bundlePath) ?? "application/octet-stream";
1372
1372
  const filename = path.basename(bundlePath);
1373
- const key = `${bundleId}/${filename}`;
1373
+ const key = getStorageKey(bundleId, filename);
1374
1374
  const file = bucket.file(key);
1375
1375
  await file.save(fileContent, { metadata: { contentType } });
1376
1376
  hooks?.onStorageUploaded?.();
1377
1377
  return { storageUri: `gs://${config.storageBucket}/${key}` };
1378
1378
  } catch (error) {
1379
- if (error instanceof Error) throw new Error(error.message);
1379
+ console.error("Error uploading bundle:", error);
1380
+ if (error instanceof Error) throw new Error(`Failed to upload bundle: ${error.message}`);
1380
1381
  throw error;
1381
1382
  }
1382
1383
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hot-updater/firebase",
3
3
  "type": "module",
4
- "version": "0.20.0-rc.0",
4
+ "version": "0.20.1",
5
5
  "description": "React Native OTA solution for self-hosted",
6
6
  "main": "dist/index.cjs",
7
7
  "types": "dist/index.d.ts",
@@ -34,8 +34,8 @@
34
34
  ],
35
35
  "dependencies": {
36
36
  "firebase": "^11.3.1",
37
- "@hot-updater/core": "0.20.0-rc.0",
38
- "@hot-updater/plugin-core": "0.20.0-rc.0"
37
+ "@hot-updater/core": "0.20.1",
38
+ "@hot-updater/plugin-core": "0.20.1"
39
39
  },
40
40
  "publishConfig": {
41
41
  "access": "public"
@@ -53,7 +53,7 @@
53
53
  "hono": "^4.6.3",
54
54
  "mime": "^4.0.4",
55
55
  "picocolors": "^1.0.0",
56
- "@hot-updater/js": "0.20.0-rc.0"
56
+ "@hot-updater/js": "0.20.1"
57
57
  },
58
58
  "peerDependencies": {
59
59
  "firebase-admin": "*"