unplugin-https-reverse-proxy 0.0.20 → 0.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -49,12 +49,14 @@ __export(src_exports, {
49
49
  unpluginFactory: () => unpluginFactory
50
50
  });
51
51
  module.exports = __toCommonJS(src_exports);
52
- var import_node_process3 = __toESM(require("process"), 1);
52
+ var import_node_process4 = __toESM(require("process"), 1);
53
53
  var import_node_fs2 = require("fs");
54
54
  var import_unplugin = require("unplugin");
55
55
  var import_picocolors = __toESM(require("picocolors"), 1);
56
56
 
57
57
  // src/utils.ts
58
+ var import_node_process = __toESM(require("process"), 1);
59
+ var import_node_child_process = require("child_process");
58
60
  var import_consola = require("consola");
59
61
  var consola = (0, import_consola.createConsola)({
60
62
  level: 3
@@ -68,12 +70,24 @@ function once(fn) {
68
70
  return fn(...args);
69
71
  };
70
72
  }
73
+ function isAdmin() {
74
+ if (import_node_process.default.platform === "win32") {
75
+ try {
76
+ (0, import_node_child_process.execSync)("net session", { stdio: "ignore" });
77
+ return true;
78
+ } catch (e) {
79
+ return false;
80
+ }
81
+ } else {
82
+ return import_node_process.default.getuid && import_node_process.default.getuid() === 0;
83
+ }
84
+ }
71
85
 
72
86
  // src/caddy/index.ts
73
87
  var import_node_os = require("os");
74
- var import_node_process2 = __toESM(require("process"), 1);
88
+ var import_node_process3 = __toESM(require("process"), 1);
75
89
  var import_node_fs = require("fs");
76
- var import_node_child_process = require("child_process");
90
+ var import_node_child_process2 = require("child_process");
77
91
  var import_got_cjs = require("got-cjs");
78
92
  var import_http_proxy_agent = require("http-proxy-agent");
79
93
  var import_https_proxy_agent = require("https-proxy-agent");
@@ -82,9 +96,9 @@ var import_kill_port = __toESM(require("kill-port"), 1);
82
96
 
83
97
  // src/caddy/constants.ts
84
98
  var import_node_path = require("path");
85
- var import_node_process = __toESM(require("process"), 1);
86
- var TEMP_DIR = import_node_process.default.env.TEMP || import_node_process.default.env.TMPDIR || "/tmp";
87
- var caddyPath = (0, import_node_path.join)(TEMP_DIR, `caddy${import_node_process.default.platform === "win32" ? ".exe" : ""}`);
99
+ var import_node_process2 = __toESM(require("process"), 1);
100
+ var TEMP_DIR = import_node_process2.default.env.TEMP || import_node_process2.default.env.TMPDIR || "/tmp";
101
+ var caddyPath = (0, import_node_path.join)(TEMP_DIR, `caddy${import_node_process2.default.platform === "win32" ? ".exe" : ""}`);
88
102
  var caddyFilePath = (0, import_node_path.join)(TEMP_DIR, "CADDYFILE");
89
103
  var supportList = [
90
104
  {
@@ -261,15 +275,15 @@ async function download() {
261
275
  const file = (0, import_node_fs.createWriteStream)(caddyPath);
262
276
  let _platform = (0, import_node_os.platform)().toString();
263
277
  _platform === "win32" && (_platform = "windows");
264
- let _arch = import_node_process2.default.arch.toString();
278
+ let _arch = import_node_process3.default.arch.toString();
265
279
  _arch === "x64" && (_arch = "amd64");
266
280
  const support = supportList.find((item) => item.platform === _platform && item.arch === _arch);
267
281
  if (!support)
268
282
  return reject(new Error("not support"));
269
283
  const dowmloadLink = `https://caddyserver.com/api/download?os=${support.platform}&arch=${support.arch}`;
270
284
  (0, import_node_fs.existsSync)(caddyPath) && (0, import_node_fs.unlinkSync)(caddyPath);
271
- const httpProxy = import_node_process2.default.env.HTTP_PROXY || import_node_process2.default.env.http_proxy;
272
- const httpsProxy = import_node_process2.default.env.HTTPS_PROXY || import_node_process2.default.env.https_proxy;
285
+ const httpProxy = import_node_process3.default.env.HTTP_PROXY || import_node_process3.default.env.http_proxy;
286
+ const httpsProxy = import_node_process3.default.env.HTTPS_PROXY || import_node_process3.default.env.https_proxy;
273
287
  const httpAgent = httpProxy ? new import_http_proxy_agent.HttpProxyAgent(httpProxy) : void 0;
274
288
  const httpsAgent = httpsProxy ? new import_https_proxy_agent.HttpsProxyAgent(httpsProxy) : void 0;
275
289
  import_got_cjs.got.stream(dowmloadLink, {
@@ -281,7 +295,7 @@ async function download() {
281
295
  logProgress(progress.percent);
282
296
  }).pipe(file).on("finish", () => {
283
297
  logProgressOver();
284
- if (import_node_process2.default.platform === "win32")
298
+ if (import_node_process3.default.platform === "win32")
285
299
  return resolve(caddyPath);
286
300
  (0, import_node_fs.chmodSync)(caddyPath, 493);
287
301
  resolve(caddyPath);
@@ -295,7 +309,7 @@ function testCaddy() {
295
309
  if (!(0, import_node_fs.existsSync)(caddyPath))
296
310
  return resolve(false);
297
311
  (0, import_node_fs.chmodSync)(caddyPath, 493);
298
- const child = import_node_process2.default.platform === "win32" ? (0, import_node_child_process.spawn)(caddyPath, []) : (0, import_node_child_process.spawn)("sudo", ["-E", caddyPath]);
312
+ const child = import_node_process3.default.platform === "win32" ? (0, import_node_child_process2.spawn)(caddyPath, []) : (0, import_node_child_process2.spawn)("sudo", ["-E", caddyPath]);
299
313
  child.on("close", () => {
300
314
  return resolve(false);
301
315
  });
@@ -326,15 +340,15 @@ var CaddyInstant = class {
326
340
  this.host.add(ip, host);
327
341
  await this.host.updateFinish();
328
342
  return new Promise((resolve, reject) => {
329
- if (import_node_process2.default.platform === "win32") {
330
- (0, import_node_child_process.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
343
+ if (import_node_process3.default.platform === "win32") {
344
+ (0, import_node_child_process2.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
331
345
  consola.error(err);
332
346
  return resolve(false);
333
347
  }).on("close", () => {
334
348
  resolve(true);
335
349
  });
336
350
  } else {
337
- (0, import_node_child_process.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
351
+ (0, import_node_child_process2.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
338
352
  consola.error(err);
339
353
  return resolve(false);
340
354
  }).on("close", () => {
@@ -348,15 +362,15 @@ var CaddyInstant = class {
348
362
  this.host.remove(ip, host);
349
363
  await this.host.updateFinish();
350
364
  return new Promise((resolve, reject) => {
351
- if (import_node_process2.default.platform === "win32") {
352
- (0, import_node_child_process.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
365
+ if (import_node_process3.default.platform === "win32") {
366
+ (0, import_node_child_process2.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
353
367
  consola.error(err);
354
368
  return resolve(false);
355
369
  }).on("close", () => {
356
370
  resolve(true);
357
371
  });
358
372
  } else {
359
- (0, import_node_child_process.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
373
+ (0, import_node_child_process2.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
360
374
  consola.error(err);
361
375
  return resolve(false);
362
376
  }).on("close", () => {
@@ -382,13 +396,13 @@ var CaddyInstant = class {
382
396
  await this.init();
383
397
  if (https && await tryPort(443))
384
398
  await (0, import_kill_port.default)(443, "tcp");
385
- if ((import_node_process2.default.platform === "win32" || !https) && await tryPort(80))
399
+ if ((import_node_process3.default.platform === "win32" || !https) && await tryPort(80))
386
400
  await (0, import_kill_port.default)(80, "tcp");
387
401
  if (!await this.updateHost(source.split(":")[0], target.split(":")[0]))
388
402
  throw new Error("update host failed");
389
403
  consola.success("update host success\n");
390
404
  return new Promise((resolve, reject) => {
391
- const child = import_node_process2.default.platform !== "win32" ? (0, import_node_child_process.spawn)("sudo", ["-E", caddyPath, "reverse-proxy", "--from", `${target.split(":")[0]}${https ? "" : ":80"}`, "--to", `${source}`, "--internal-certs", "--insecure", "--disable-redirects"]) : (0, import_node_child_process.spawn)(caddyPath, ["reverse-proxy", "--from", `${target.split(":")[0]}`, "--to", `${source}`, "--internal-certs"]);
405
+ const child = import_node_process3.default.platform !== "win32" ? (0, import_node_child_process2.spawn)("sudo", ["-E", caddyPath, "reverse-proxy", "--from", `${target.split(":")[0]}${https ? "" : ":80"}`, "--to", `${source}`, "--internal-certs", "--insecure", "--disable-redirects"]) : (0, import_node_child_process2.spawn)(caddyPath, ["reverse-proxy", "--from", `${target.split(":")[0]}`, "--to", `${source}`, "--internal-certs"]);
392
406
  child.on("error", (err) => {
393
407
  return reject(err);
394
408
  });
@@ -431,30 +445,30 @@ var caddy;
431
445
  var _stop;
432
446
  var _servce;
433
447
  function registerExit(clear) {
434
- import_node_process3.default.on("beforeExit", async (_code) => {
448
+ import_node_process4.default.on("beforeExit", async (_code) => {
435
449
  await clear();
436
450
  });
437
- import_node_process3.default.on("uncaughtException", async (err) => {
451
+ import_node_process4.default.on("uncaughtException", async (err) => {
438
452
  console.error("An uncaught error occurred!", err.stack);
439
453
  await clear();
440
- import_node_process3.default.nextTick(() => {
441
- import_node_process3.default.exit(1);
454
+ import_node_process4.default.nextTick(() => {
455
+ import_node_process4.default.exit(1);
442
456
  });
443
457
  });
444
- import_node_process3.default.on("unhandledRejection", async (reason, promise) => {
458
+ import_node_process4.default.on("unhandledRejection", async (reason, promise) => {
445
459
  console.error("Unhandled Rejection at:", promise, "reason:", reason);
446
460
  await clear();
447
- import_node_process3.default.nextTick(() => {
448
- import_node_process3.default.exit(1);
461
+ import_node_process4.default.nextTick(() => {
462
+ import_node_process4.default.exit(1);
449
463
  });
450
464
  });
451
- import_node_process3.default.once("SIGINT", async () => {
465
+ import_node_process4.default.once("SIGINT", async () => {
452
466
  await clear();
453
- import_node_process3.default.exit(0);
467
+ import_node_process4.default.exit(0);
454
468
  });
455
- import_node_process3.default.once("SIGTERM", async () => {
469
+ import_node_process4.default.once("SIGTERM", async () => {
456
470
  await clear();
457
- import_node_process3.default.exit(0);
471
+ import_node_process4.default.exit(0);
458
472
  });
459
473
  }
460
474
  var unpluginFactory = (options) => ({
@@ -479,6 +493,10 @@ var unpluginFactory = (options) => ({
479
493
  });
480
494
  },
481
495
  configureServer(server) {
496
+ if (!isAdmin()) {
497
+ consola.warn("please run as administrator");
498
+ return;
499
+ }
482
500
  if (config.command === "build")
483
501
  return;
484
502
  const {
@@ -496,9 +514,10 @@ var unpluginFactory = (options) => ({
496
514
  server.printUrls = () => {
497
515
  var _a;
498
516
  _printUrls();
499
- const pwd = import_node_process3.default.cwd();
517
+ const pwd = import_node_process4.default.cwd();
500
518
  const vireCacheDir = `${pwd}/node_modules/.vite`;
501
- (0, import_node_fs2.chmodSync)(vireCacheDir, 511);
519
+ if ((0, import_node_fs2.existsSync)(vireCacheDir))
520
+ (0, import_node_fs2.chmodSync)(vireCacheDir, 511);
502
521
  let source = `localhost:${config.server.port}`;
503
522
  const url = (_a = server.resolvedUrls) == null ? void 0 : _a.local[0];
504
523
  if (url) {
@@ -526,7 +545,12 @@ var unpluginFactory = (options) => ({
526
545
  }
527
546
  },
528
547
  webpack(compiler) {
529
- if (import_node_process3.default.env.NODE_ENV !== "development")
548
+ var _a;
549
+ if (!isAdmin()) {
550
+ consola.warn("please run as administrator");
551
+ return;
552
+ }
553
+ if (import_node_process4.default.env.NODE_ENV !== "development")
530
554
  return;
531
555
  const {
532
556
  enable = true,
@@ -542,21 +566,31 @@ var unpluginFactory = (options) => ({
542
566
  const devServer = __spreadValues(__spreadValues({
543
567
  host: "localhost",
544
568
  port: 8080
545
- }, compiler.options.devServer), import_node_process3.default.VUE_CLI_SERVICE.projectOptions.devServer);
569
+ }, compiler.options.devServer), import_node_process4.default.VUE_CLI_SERVICE.projectOptions.devServer);
546
570
  const source = `${devServer.host}:${devServer.port}`;
547
571
  if (caddy)
548
572
  return;
549
- const _close = compiler.close.bind(compiler);
550
- compiler.close = async (callback) => {
551
- try {
552
- _stop && await _stop(() => {
553
- _close && _close(callback);
554
- });
555
- } catch (e) {
556
- consola.error(e);
557
- import_node_process3.default.exit(1);
558
- }
559
- };
573
+ const _close = (_a = compiler.close) == null ? void 0 : _a.bind(compiler);
574
+ if (_close) {
575
+ compiler.close = async (callback) => {
576
+ try {
577
+ _stop && await _stop(() => {
578
+ _close && _close(callback);
579
+ });
580
+ } catch (e) {
581
+ consola.error(e);
582
+ import_node_process4.default.exit(1);
583
+ }
584
+ };
585
+ } else {
586
+ registerExit(async () => {
587
+ try {
588
+ _stop && await _stop();
589
+ } catch (e) {
590
+ consola.error(e);
591
+ }
592
+ });
593
+ }
560
594
  caddy = new CaddyInstant();
561
595
  caddy.run(source, target, __spreadValues({}, options)).then((stop) => {
562
596
  const colorUrl = (url) => import_picocolors.default.green(url.replace(/:(\d+)\//, (_, port) => `:${import_picocolors.default.bold(port)}/`));
package/dist/index.js CHANGED
@@ -2,8 +2,8 @@ import {
2
2
  src_default,
3
3
  unplugin,
4
4
  unpluginFactory
5
- } from "./chunk-KYPQLMHO.js";
6
- import "./chunk-CQC5SSJR.js";
5
+ } from "./chunk-BTWCTT26.js";
6
+ import "./chunk-NNO3ZUSU.js";
7
7
  export {
8
8
  src_default as default,
9
9
  unplugin,
package/dist/nuxt.cjs CHANGED
@@ -53,12 +53,14 @@ var import_kit = require("@nuxt/kit");
53
53
  var import_unplugin2 = require("unplugin");
54
54
 
55
55
  // src/index.ts
56
- var import_node_process3 = __toESM(require("process"), 1);
56
+ var import_node_process4 = __toESM(require("process"), 1);
57
57
  var import_node_fs2 = require("fs");
58
58
  var import_unplugin = require("unplugin");
59
59
  var import_picocolors = __toESM(require("picocolors"), 1);
60
60
 
61
61
  // src/utils.ts
62
+ var import_node_process = __toESM(require("process"), 1);
63
+ var import_node_child_process = require("child_process");
62
64
  var import_consola = require("consola");
63
65
  var consola = (0, import_consola.createConsola)({
64
66
  level: 3
@@ -72,12 +74,24 @@ function once(fn) {
72
74
  return fn(...args);
73
75
  };
74
76
  }
77
+ function isAdmin() {
78
+ if (import_node_process.default.platform === "win32") {
79
+ try {
80
+ (0, import_node_child_process.execSync)("net session", { stdio: "ignore" });
81
+ return true;
82
+ } catch (e) {
83
+ return false;
84
+ }
85
+ } else {
86
+ return import_node_process.default.getuid && import_node_process.default.getuid() === 0;
87
+ }
88
+ }
75
89
 
76
90
  // src/caddy/index.ts
77
91
  var import_node_os = require("os");
78
- var import_node_process2 = __toESM(require("process"), 1);
92
+ var import_node_process3 = __toESM(require("process"), 1);
79
93
  var import_node_fs = require("fs");
80
- var import_node_child_process = require("child_process");
94
+ var import_node_child_process2 = require("child_process");
81
95
  var import_got_cjs = require("got-cjs");
82
96
  var import_http_proxy_agent = require("http-proxy-agent");
83
97
  var import_https_proxy_agent = require("https-proxy-agent");
@@ -86,9 +100,9 @@ var import_kill_port = __toESM(require("kill-port"), 1);
86
100
 
87
101
  // src/caddy/constants.ts
88
102
  var import_node_path = require("path");
89
- var import_node_process = __toESM(require("process"), 1);
90
- var TEMP_DIR = import_node_process.default.env.TEMP || import_node_process.default.env.TMPDIR || "/tmp";
91
- var caddyPath = (0, import_node_path.join)(TEMP_DIR, `caddy${import_node_process.default.platform === "win32" ? ".exe" : ""}`);
103
+ var import_node_process2 = __toESM(require("process"), 1);
104
+ var TEMP_DIR = import_node_process2.default.env.TEMP || import_node_process2.default.env.TMPDIR || "/tmp";
105
+ var caddyPath = (0, import_node_path.join)(TEMP_DIR, `caddy${import_node_process2.default.platform === "win32" ? ".exe" : ""}`);
92
106
  var caddyFilePath = (0, import_node_path.join)(TEMP_DIR, "CADDYFILE");
93
107
  var supportList = [
94
108
  {
@@ -265,15 +279,15 @@ async function download() {
265
279
  const file = (0, import_node_fs.createWriteStream)(caddyPath);
266
280
  let _platform = (0, import_node_os.platform)().toString();
267
281
  _platform === "win32" && (_platform = "windows");
268
- let _arch = import_node_process2.default.arch.toString();
282
+ let _arch = import_node_process3.default.arch.toString();
269
283
  _arch === "x64" && (_arch = "amd64");
270
284
  const support = supportList.find((item) => item.platform === _platform && item.arch === _arch);
271
285
  if (!support)
272
286
  return reject(new Error("not support"));
273
287
  const dowmloadLink = `https://caddyserver.com/api/download?os=${support.platform}&arch=${support.arch}`;
274
288
  (0, import_node_fs.existsSync)(caddyPath) && (0, import_node_fs.unlinkSync)(caddyPath);
275
- const httpProxy = import_node_process2.default.env.HTTP_PROXY || import_node_process2.default.env.http_proxy;
276
- const httpsProxy = import_node_process2.default.env.HTTPS_PROXY || import_node_process2.default.env.https_proxy;
289
+ const httpProxy = import_node_process3.default.env.HTTP_PROXY || import_node_process3.default.env.http_proxy;
290
+ const httpsProxy = import_node_process3.default.env.HTTPS_PROXY || import_node_process3.default.env.https_proxy;
277
291
  const httpAgent = httpProxy ? new import_http_proxy_agent.HttpProxyAgent(httpProxy) : void 0;
278
292
  const httpsAgent = httpsProxy ? new import_https_proxy_agent.HttpsProxyAgent(httpsProxy) : void 0;
279
293
  import_got_cjs.got.stream(dowmloadLink, {
@@ -285,7 +299,7 @@ async function download() {
285
299
  logProgress(progress.percent);
286
300
  }).pipe(file).on("finish", () => {
287
301
  logProgressOver();
288
- if (import_node_process2.default.platform === "win32")
302
+ if (import_node_process3.default.platform === "win32")
289
303
  return resolve(caddyPath);
290
304
  (0, import_node_fs.chmodSync)(caddyPath, 493);
291
305
  resolve(caddyPath);
@@ -299,7 +313,7 @@ function testCaddy() {
299
313
  if (!(0, import_node_fs.existsSync)(caddyPath))
300
314
  return resolve(false);
301
315
  (0, import_node_fs.chmodSync)(caddyPath, 493);
302
- const child = import_node_process2.default.platform === "win32" ? (0, import_node_child_process.spawn)(caddyPath, []) : (0, import_node_child_process.spawn)("sudo", ["-E", caddyPath]);
316
+ const child = import_node_process3.default.platform === "win32" ? (0, import_node_child_process2.spawn)(caddyPath, []) : (0, import_node_child_process2.spawn)("sudo", ["-E", caddyPath]);
303
317
  child.on("close", () => {
304
318
  return resolve(false);
305
319
  });
@@ -330,15 +344,15 @@ var CaddyInstant = class {
330
344
  this.host.add(ip, host);
331
345
  await this.host.updateFinish();
332
346
  return new Promise((resolve, reject) => {
333
- if (import_node_process2.default.platform === "win32") {
334
- (0, import_node_child_process.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
347
+ if (import_node_process3.default.platform === "win32") {
348
+ (0, import_node_child_process2.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
335
349
  consola.error(err);
336
350
  return resolve(false);
337
351
  }).on("close", () => {
338
352
  resolve(true);
339
353
  });
340
354
  } else {
341
- (0, import_node_child_process.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
355
+ (0, import_node_child_process2.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
342
356
  consola.error(err);
343
357
  return resolve(false);
344
358
  }).on("close", () => {
@@ -352,15 +366,15 @@ var CaddyInstant = class {
352
366
  this.host.remove(ip, host);
353
367
  await this.host.updateFinish();
354
368
  return new Promise((resolve, reject) => {
355
- if (import_node_process2.default.platform === "win32") {
356
- (0, import_node_child_process.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
369
+ if (import_node_process3.default.platform === "win32") {
370
+ (0, import_node_child_process2.spawn)("ipconfig", ["/flushdns"]).on("error", (err) => {
357
371
  consola.error(err);
358
372
  return resolve(false);
359
373
  }).on("close", () => {
360
374
  resolve(true);
361
375
  });
362
376
  } else {
363
- (0, import_node_child_process.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
377
+ (0, import_node_child_process2.spawn)("sudo", ["-E", "killall", "-HUP", "mDNSResponder"]).on("error", (err) => {
364
378
  consola.error(err);
365
379
  return resolve(false);
366
380
  }).on("close", () => {
@@ -386,13 +400,13 @@ var CaddyInstant = class {
386
400
  await this.init();
387
401
  if (https && await tryPort(443))
388
402
  await (0, import_kill_port.default)(443, "tcp");
389
- if ((import_node_process2.default.platform === "win32" || !https) && await tryPort(80))
403
+ if ((import_node_process3.default.platform === "win32" || !https) && await tryPort(80))
390
404
  await (0, import_kill_port.default)(80, "tcp");
391
405
  if (!await this.updateHost(source.split(":")[0], target.split(":")[0]))
392
406
  throw new Error("update host failed");
393
407
  consola.success("update host success\n");
394
408
  return new Promise((resolve, reject) => {
395
- const child = import_node_process2.default.platform !== "win32" ? (0, import_node_child_process.spawn)("sudo", ["-E", caddyPath, "reverse-proxy", "--from", `${target.split(":")[0]}${https ? "" : ":80"}`, "--to", `${source}`, "--internal-certs", "--insecure", "--disable-redirects"]) : (0, import_node_child_process.spawn)(caddyPath, ["reverse-proxy", "--from", `${target.split(":")[0]}`, "--to", `${source}`, "--internal-certs"]);
409
+ const child = import_node_process3.default.platform !== "win32" ? (0, import_node_child_process2.spawn)("sudo", ["-E", caddyPath, "reverse-proxy", "--from", `${target.split(":")[0]}${https ? "" : ":80"}`, "--to", `${source}`, "--internal-certs", "--insecure", "--disable-redirects"]) : (0, import_node_child_process2.spawn)(caddyPath, ["reverse-proxy", "--from", `${target.split(":")[0]}`, "--to", `${source}`, "--internal-certs"]);
396
410
  child.on("error", (err) => {
397
411
  return reject(err);
398
412
  });
@@ -435,30 +449,30 @@ var caddy;
435
449
  var _stop;
436
450
  var _servce;
437
451
  function registerExit(clear) {
438
- import_node_process3.default.on("beforeExit", async (_code) => {
452
+ import_node_process4.default.on("beforeExit", async (_code) => {
439
453
  await clear();
440
454
  });
441
- import_node_process3.default.on("uncaughtException", async (err) => {
455
+ import_node_process4.default.on("uncaughtException", async (err) => {
442
456
  console.error("An uncaught error occurred!", err.stack);
443
457
  await clear();
444
- import_node_process3.default.nextTick(() => {
445
- import_node_process3.default.exit(1);
458
+ import_node_process4.default.nextTick(() => {
459
+ import_node_process4.default.exit(1);
446
460
  });
447
461
  });
448
- import_node_process3.default.on("unhandledRejection", async (reason, promise) => {
462
+ import_node_process4.default.on("unhandledRejection", async (reason, promise) => {
449
463
  console.error("Unhandled Rejection at:", promise, "reason:", reason);
450
464
  await clear();
451
- import_node_process3.default.nextTick(() => {
452
- import_node_process3.default.exit(1);
465
+ import_node_process4.default.nextTick(() => {
466
+ import_node_process4.default.exit(1);
453
467
  });
454
468
  });
455
- import_node_process3.default.once("SIGINT", async () => {
469
+ import_node_process4.default.once("SIGINT", async () => {
456
470
  await clear();
457
- import_node_process3.default.exit(0);
471
+ import_node_process4.default.exit(0);
458
472
  });
459
- import_node_process3.default.once("SIGTERM", async () => {
473
+ import_node_process4.default.once("SIGTERM", async () => {
460
474
  await clear();
461
- import_node_process3.default.exit(0);
475
+ import_node_process4.default.exit(0);
462
476
  });
463
477
  }
464
478
  var unpluginFactory = (options) => ({
@@ -483,6 +497,10 @@ var unpluginFactory = (options) => ({
483
497
  });
484
498
  },
485
499
  configureServer(server) {
500
+ if (!isAdmin()) {
501
+ consola.warn("please run as administrator");
502
+ return;
503
+ }
486
504
  if (config.command === "build")
487
505
  return;
488
506
  const {
@@ -500,9 +518,10 @@ var unpluginFactory = (options) => ({
500
518
  server.printUrls = () => {
501
519
  var _a;
502
520
  _printUrls();
503
- const pwd = import_node_process3.default.cwd();
521
+ const pwd = import_node_process4.default.cwd();
504
522
  const vireCacheDir = `${pwd}/node_modules/.vite`;
505
- (0, import_node_fs2.chmodSync)(vireCacheDir, 511);
523
+ if ((0, import_node_fs2.existsSync)(vireCacheDir))
524
+ (0, import_node_fs2.chmodSync)(vireCacheDir, 511);
506
525
  let source = `localhost:${config.server.port}`;
507
526
  const url = (_a = server.resolvedUrls) == null ? void 0 : _a.local[0];
508
527
  if (url) {
@@ -530,7 +549,12 @@ var unpluginFactory = (options) => ({
530
549
  }
531
550
  },
532
551
  webpack(compiler) {
533
- if (import_node_process3.default.env.NODE_ENV !== "development")
552
+ var _a;
553
+ if (!isAdmin()) {
554
+ consola.warn("please run as administrator");
555
+ return;
556
+ }
557
+ if (import_node_process4.default.env.NODE_ENV !== "development")
534
558
  return;
535
559
  const {
536
560
  enable = true,
@@ -546,21 +570,31 @@ var unpluginFactory = (options) => ({
546
570
  const devServer = __spreadValues(__spreadValues({
547
571
  host: "localhost",
548
572
  port: 8080
549
- }, compiler.options.devServer), import_node_process3.default.VUE_CLI_SERVICE.projectOptions.devServer);
573
+ }, compiler.options.devServer), import_node_process4.default.VUE_CLI_SERVICE.projectOptions.devServer);
550
574
  const source = `${devServer.host}:${devServer.port}`;
551
575
  if (caddy)
552
576
  return;
553
- const _close = compiler.close.bind(compiler);
554
- compiler.close = async (callback) => {
555
- try {
556
- _stop && await _stop(() => {
557
- _close && _close(callback);
558
- });
559
- } catch (e) {
560
- consola.error(e);
561
- import_node_process3.default.exit(1);
562
- }
563
- };
577
+ const _close = (_a = compiler.close) == null ? void 0 : _a.bind(compiler);
578
+ if (_close) {
579
+ compiler.close = async (callback) => {
580
+ try {
581
+ _stop && await _stop(() => {
582
+ _close && _close(callback);
583
+ });
584
+ } catch (e) {
585
+ consola.error(e);
586
+ import_node_process4.default.exit(1);
587
+ }
588
+ };
589
+ } else {
590
+ registerExit(async () => {
591
+ try {
592
+ _stop && await _stop();
593
+ } catch (e) {
594
+ consola.error(e);
595
+ }
596
+ });
597
+ }
564
598
  caddy = new CaddyInstant();
565
599
  caddy.run(source, target, __spreadValues({}, options)).then((stop) => {
566
600
  const colorUrl = (url) => import_picocolors.default.green(url.replace(/:(\d+)\//, (_, port) => `:${import_picocolors.default.bold(port)}/`));
package/dist/nuxt.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  vite_default
3
- } from "./chunk-CVO5VP4I.js";
3
+ } from "./chunk-5MGNE7J4.js";
4
4
  import {
5
5
  webpack_default
6
- } from "./chunk-VXVYW4ZE.js";
7
- import "./chunk-KYPQLMHO.js";
8
- import "./chunk-CQC5SSJR.js";
6
+ } from "./chunk-Q7NSASV3.js";
7
+ import "./chunk-BTWCTT26.js";
8
+ import "./chunk-NNO3ZUSU.js";
9
9
 
10
10
  // src/nuxt.ts
11
11
  import { addVitePlugin, addWebpackPlugin, defineNuxtModule } from "@nuxt/kit";