@camstack/system 1.2.436 → 1.2.437

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/{agent-https-B8lKYVtU.mjs → agent-https-BPfHrI4c.mjs} +3 -3
  2. package/dist/auth/login-session-manager.d.ts +2 -0
  3. package/dist/auth/session-revocation-bus.d.ts +32 -0
  4. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  5. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  6. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  7. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  8. package/dist/builtins/alerts/alerts.addon.js +1 -1
  9. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  10. package/dist/builtins/autotrack/index.js +1 -1
  11. package/dist/builtins/autotrack/index.mjs +1 -1
  12. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  13. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  14. package/dist/builtins/calendars/calendars.addon.js +1 -1
  15. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  16. package/dist/builtins/camera-grid/index.js +1 -1
  17. package/dist/builtins/camera-grid/index.mjs +1 -1
  18. package/dist/builtins/composer/composer.addon.js +2 -2
  19. package/dist/builtins/composer/composer.addon.mjs +2 -2
  20. package/dist/builtins/console-logging/index.js +1 -1
  21. package/dist/builtins/console-logging/index.mjs +1 -1
  22. package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
  23. package/dist/builtins/core-blocks/core-blocks.addon.mjs +5 -5
  24. package/dist/builtins/device-manager/device-manager.addon.js +2 -2
  25. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  26. package/dist/builtins/hub-forwarder/index.js +1 -1
  27. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  28. package/dist/builtins/keychain/index.js +3 -3
  29. package/dist/builtins/keychain/index.mjs +3 -3
  30. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  31. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  32. package/dist/builtins/local-auth/local-auth.addon.js +43 -2
  33. package/dist/builtins/local-auth/local-auth.addon.mjs +43 -3
  34. package/dist/builtins/local-network/local-network.addon.js +1 -1
  35. package/dist/builtins/local-network/local-network.addon.mjs +4 -4
  36. package/dist/builtins/loki-logging/index.js +1 -1
  37. package/dist/builtins/loki-logging/index.mjs +1 -1
  38. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  39. package/dist/builtins/native-metrics/native-metrics.addon.mjs +10 -10
  40. package/dist/builtins/platform-probe/index.js +1 -1
  41. package/dist/builtins/platform-probe/index.mjs +8 -8
  42. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  43. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  44. package/dist/builtins/snapshot/index.js +1 -1
  45. package/dist/builtins/snapshot/index.mjs +1 -1
  46. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  47. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  48. package/dist/builtins/sqlite-storage/index.js +1 -1
  49. package/dist/builtins/sqlite-storage/index.mjs +1 -1
  50. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +3 -3
  51. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +3 -3
  52. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  53. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  54. package/dist/builtins/system-config/system-config.addon.d.ts +9 -0
  55. package/dist/builtins/system-config/system-config.addon.js +117 -72
  56. package/dist/builtins/system-config/system-config.addon.mjs +117 -73
  57. package/dist/builtins/winston-logging/index.js +1 -1
  58. package/dist/builtins/winston-logging/index.mjs +1 -1
  59. package/dist/{composition-sources-BAOlCu4j.js → composition-sources-BIT8IUKm.js} +1 -1
  60. package/dist/{composition-sources-gN_BWUKp.mjs → composition-sources-tpYR0f1x.mjs} +1 -1
  61. package/dist/{constants-BFpowodq.mjs → constants-Bc6trhoW.mjs} +1 -1
  62. package/dist/{constants-GENKqk9k.js → constants-CwRY32Nx.js} +1 -1
  63. package/dist/{device-ca-BNM5ai4t.mjs → device-ca-BhdBByGD.mjs} +1 -1
  64. package/dist/{device-ca-CuWuRW9N.js → device-ca-DImD8IzR.js} +1 -1
  65. package/dist/{dist-DVe0Nsp8.js → dist-CEAyXW3Q.js} +44 -2
  66. package/dist/{dist-DjD2M79P.mjs → dist-m5JkT8UN.mjs} +33 -3
  67. package/dist/file-host-worker.js +1 -1
  68. package/dist/file-host-worker.mjs +1 -1
  69. package/dist/{hub-mdns-ciao-DJRwtlA8.mjs → hub-mdns-ciao-DMlQTdPU.mjs} +1 -1
  70. package/dist/index.d.ts +2 -0
  71. package/dist/index.js +8 -6
  72. package/dist/index.mjs +23 -22
  73. package/dist/{restore-archive-D4h904rb.js → restore-archive-C75srVbG.js} +1 -1
  74. package/dist/{restore-archive-BxmP1ChO.mjs → restore-archive-DNxAStrJ.mjs} +1 -1
  75. package/dist/{retired-settings-keys-CQaknvx1.mjs → retired-settings-keys-C5qP9QIf.mjs} +1 -1
  76. package/dist/{retired-settings-keys-CYP5IZJ5.js → retired-settings-keys-DNfV28R_.js} +1 -1
  77. package/dist/{wal-maintenance-Br60onAQ.js → wal-maintenance-Ch79gy9S.js} +0 -0
  78. package/dist/{wal-maintenance-CaDsrJM_.mjs → wal-maintenance-DvnVO5IK.mjs} +0 -0
  79. package/package.json +1 -1
@@ -3,17 +3,19 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-DVe0Nsp8.js");
6
+ const require_dist = require("../../dist-CEAyXW3Q.js");
7
7
  const require_safe_buffer$1 = require("../../safe-buffer-D3aoa-7X.js");
8
8
  const require_x509_es = require("../../x509.es-r7Ht1thA.js");
9
9
  const require_agent_https = require("../../agent-https-BZIwS4xF.js");
10
- const require_constants$8 = require("../../constants-GENKqk9k.js");
10
+ const require_constants$8 = require("../../constants-CwRY32Nx.js");
11
11
  const require_src$1 = require("../../src-CnAqG6EF.js");
12
12
  let zod = require("zod");
13
13
  let node_crypto = require("node:crypto");
14
14
  let node_net = require("node:net");
15
15
  let node_fs_promises = require("node:fs/promises");
16
16
  let node_path = require("node:path");
17
+ let node_os = require("node:os");
18
+ node_os = require_chunk.__toESM(node_os);
17
19
  let node_url = require("node:url");
18
20
  let node_fs = require("node:fs");
19
21
  node_fs = require_chunk.__toESM(node_fs, 1);
@@ -21365,7 +21367,7 @@ var require_kleur = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modul
21365
21367
  //#region ../../node_modules/moleculer/src/utils.js
21366
21368
  var require_utils$3 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
21367
21369
  var kleur = require_kleur();
21368
- var os$18 = require("os");
21370
+ var os$19 = require("os");
21369
21371
  var path$40 = require("path");
21370
21372
  var fs$20 = require("fs");
21371
21373
  var { TimeoutError } = require_errors$2();
@@ -21464,7 +21466,7 @@ var require_utils$3 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
21464
21466
  * @returns
21465
21467
  */
21466
21468
  getNodeID() {
21467
- return os$18.hostname().toLowerCase() + "-" + process.pid;
21469
+ return os$19.hostname().toLowerCase() + "-" + process.pid;
21468
21470
  },
21469
21471
  /**
21470
21472
  * Get list of local IPs
@@ -21474,7 +21476,7 @@ var require_utils$3 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
21474
21476
  getIpList() {
21475
21477
  const list = [];
21476
21478
  const ilist = [];
21477
- const interfaces = os$18.networkInterfaces();
21479
+ const interfaces = os$19.networkInterfaces();
21478
21480
  for (let iface in interfaces) for (let i in interfaces[iface]) {
21479
21481
  const f = interfaces[iface]?.[i];
21480
21482
  if (f.family === "IPv4") if (f.internal) {
@@ -23160,7 +23162,7 @@ var require_event$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
23160
23162
  var require_datadog$2 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
23161
23163
  var BaseReporter = require_base$8();
23162
23164
  var _ = require_lodash();
23163
- var os$17 = require("os");
23165
+ var os$18 = require("os");
23164
23166
  var { MoleculerError } = require_errors$2();
23165
23167
  var METRIC = require_constants$6();
23166
23168
  var { isFunction } = require_utils$3();
@@ -23193,7 +23195,7 @@ var require_datadog$2 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, m
23193
23195
  super(opts);
23194
23196
  /** @type {DatadogReporterOptions} */
23195
23197
  this.opts = _.defaultsDeep(this.opts, {
23196
- host: os$17.hostname(),
23198
+ host: os$18.hostname(),
23197
23199
  baseUrl: BASE_URL,
23198
23200
  apiVersion: "v1",
23199
23201
  path: "/series",
@@ -23869,18 +23871,18 @@ var require_cpu_usage$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports,
23869
23871
  *
23870
23872
  * Based on: https://github.com/icebob/cpu
23871
23873
  */
23872
- var os$16 = require("os");
23874
+ var os$17 = require("os");
23873
23875
  /* istanbul ignore next */
23874
23876
  module.exports = function getCpuUsage(sampleTime = 100) {
23875
23877
  return new Promise((resolve, reject) => {
23876
23878
  try {
23877
- const first = os$16.cpus().map((cpu) => cpu.times);
23879
+ const first = os$17.cpus().map((cpu) => cpu.times);
23878
23880
  setTimeout(() => {
23879
23881
  try {
23880
- const second = os$16.cpus().map((cpu) => cpu.times);
23882
+ const second = os$17.cpus().map((cpu) => cpu.times);
23881
23883
  setTimeout(() => {
23882
23884
  try {
23883
- const third = os$16.cpus().map((cpu) => cpu.times);
23885
+ const third = os$17.cpus().map((cpu) => cpu.times);
23884
23886
  const usages = [];
23885
23887
  for (let i = 0; i < first.length; i++) {
23886
23888
  const first_idle = first[i].idle;
@@ -23913,7 +23915,7 @@ var require_cpu_usage$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports,
23913
23915
  //#endregion
23914
23916
  //#region ../../node_modules/moleculer/src/metrics/commons.js
23915
23917
  var require_commons = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
23916
- var os$15 = require("os");
23918
+ var os$16 = require("os");
23917
23919
  var METRIC = require_constants$6();
23918
23920
  var cpuUsage = require_cpu_usage$1();
23919
23921
  var v8;
@@ -24092,27 +24094,27 @@ var require_commons = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
24092
24094
  name: METRIC.OS_TYPE,
24093
24095
  type: METRIC.TYPE_INFO,
24094
24096
  description: "OS type"
24095
- }).set(os$15.type());
24097
+ }).set(os$16.type());
24096
24098
  this.register({
24097
24099
  name: METRIC.OS_RELEASE,
24098
24100
  type: METRIC.TYPE_INFO,
24099
24101
  description: "OS release"
24100
- }).set(os$15.release());
24102
+ }).set(os$16.release());
24101
24103
  this.register({
24102
24104
  name: METRIC.OS_HOSTNAME,
24103
24105
  type: METRIC.TYPE_INFO,
24104
24106
  description: "Hostname"
24105
- }).set(os$15.hostname());
24107
+ }).set(os$16.hostname());
24106
24108
  this.register({
24107
24109
  name: METRIC.OS_ARCH,
24108
24110
  type: METRIC.TYPE_INFO,
24109
24111
  description: "OS architecture"
24110
- }).set(os$15.arch());
24112
+ }).set(os$16.arch());
24111
24113
  this.register({
24112
24114
  name: METRIC.OS_PLATFORM,
24113
24115
  type: METRIC.TYPE_INFO,
24114
24116
  description: "OS platform"
24115
- }).set(os$15.platform());
24117
+ }).set(os$16.platform());
24116
24118
  const userInfo = getUserInfo();
24117
24119
  this.register({
24118
24120
  name: METRIC.OS_USER_UID,
@@ -24263,22 +24265,22 @@ var require_commons = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
24263
24265
  }
24264
24266
  this.set(METRIC.PROCESS_UPTIME, process.uptime());
24265
24267
  this.set(METRIC.PROCESS_INTERNAL_ACTIVE_HANDLES, process.getActiveResourcesInfo().length);
24266
- const freeMem = os$15.freemem();
24267
- const totalMem = os$15.totalmem();
24268
+ const freeMem = os$16.freemem();
24269
+ const totalMem = os$16.totalmem();
24268
24270
  const usedMem = totalMem - freeMem;
24269
24271
  this.set(METRIC.OS_MEMORY_FREE, freeMem);
24270
24272
  this.set(METRIC.OS_MEMORY_USED, usedMem);
24271
24273
  this.set(METRIC.OS_MEMORY_TOTAL, totalMem);
24272
- this.set(METRIC.OS_UPTIME, os$15.uptime());
24273
- this.set(METRIC.OS_TYPE, os$15.type());
24274
- this.set(METRIC.OS_RELEASE, os$15.release());
24275
- this.set(METRIC.OS_HOSTNAME, os$15.hostname());
24276
- this.set(METRIC.OS_ARCH, os$15.arch());
24277
- this.set(METRIC.OS_PLATFORM, os$15.platform());
24274
+ this.set(METRIC.OS_UPTIME, os$16.uptime());
24275
+ this.set(METRIC.OS_TYPE, os$16.type());
24276
+ this.set(METRIC.OS_RELEASE, os$16.release());
24277
+ this.set(METRIC.OS_HOSTNAME, os$16.hostname());
24278
+ this.set(METRIC.OS_ARCH, os$16.arch());
24279
+ this.set(METRIC.OS_PLATFORM, os$16.platform());
24278
24280
  const getNetworkInterfaces = () => {
24279
24281
  const list = [];
24280
24282
  const ilist = [];
24281
- const interfaces = os$15.networkInterfaces();
24283
+ const interfaces = os$16.networkInterfaces();
24282
24284
  for (let iface in interfaces) for (let i in interfaces[iface]) {
24283
24285
  const f = interfaces[iface][i];
24284
24286
  if (f.internal) ilist.push({
@@ -24308,7 +24310,7 @@ var require_commons = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
24308
24310
  this.set(METRIC.OS_DATETIME_ISO, d.toISOString());
24309
24311
  this.set(METRIC.OS_DATETIME_UTC, d.toUTCString());
24310
24312
  this.set(METRIC.OS_DATETIME_TZ_OFFSET, d.getTimezoneOffset());
24311
- const load = os$15.loadavg();
24313
+ const load = os$16.loadavg();
24312
24314
  this.set(METRIC.OS_CPU_LOAD_1, load[0]);
24313
24315
  this.set(METRIC.OS_CPU_LOAD_5, load[1]);
24314
24316
  this.set(METRIC.OS_CPU_LOAD_15, load[2]);
@@ -24316,7 +24318,7 @@ var require_commons = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
24316
24318
  return this.broker.Promise.resolve().then(() => cpuUsage().then((res) => {
24317
24319
  this.set(METRIC.OS_CPU_UTILIZATION, res.avg);
24318
24320
  try {
24319
- const cpus = os$15.cpus();
24321
+ const cpus = os$16.cpus();
24320
24322
  this.set(METRIC.OS_CPU_TOTAL, cpus.length);
24321
24323
  this.set(METRIC.OS_CPU_USER, cpus.reduce((a, b) => a + b.times.user, 0));
24322
24324
  this.set(METRIC.OS_CPU_SYSTEM, cpus.reduce((a, b) => a + b.times.sys, 0));
@@ -24338,7 +24340,7 @@ var require_commons = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
24338
24340
  */
24339
24341
  function getUserInfo() {
24340
24342
  try {
24341
- return os$15.userInfo();
24343
+ return os$16.userInfo();
24342
24344
  } catch {
24343
24345
  /* istanbul ignore next */
24344
24346
  return {};
@@ -34560,7 +34562,7 @@ var require_node = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module
34560
34562
  //#region ../../node_modules/moleculer/src/registry/node-catalog.js
34561
34563
  var require_node_catalog = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
34562
34564
  var _ = require_lodash();
34563
- var os$14 = require("os");
34565
+ var os$15 = require("os");
34564
34566
  var Node = require_node();
34565
34567
  var { getIpList } = require_utils$3();
34566
34568
  /**
@@ -34606,7 +34608,7 @@ var require_node_catalog = /* @__PURE__ */ require_chunk.__commonJSMin(((exports
34606
34608
  node.local = true;
34607
34609
  node.ipList = getIpList();
34608
34610
  node.instanceID = this.broker.instanceID;
34609
- node.hostname = os$14.hostname();
34611
+ node.hostname = os$15.hostname();
34610
34612
  node.client = {
34611
34613
  type: "nodejs",
34612
34614
  version: this.broker.MOLECULER_VERSION,
@@ -36680,7 +36682,7 @@ var require_console$2 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, m
36680
36682
  var require_datadog$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
36681
36683
  var BaseLogger = require_base$4();
36682
36684
  var _ = require_lodash();
36683
- var os$13 = require("os");
36685
+ var os$14 = require("os");
36684
36686
  var { MoleculerError } = require_errors$2();
36685
36687
  var util$6 = require("util");
36686
36688
  var { isObject } = require_utils$3();
@@ -36713,7 +36715,7 @@ var require_datadog$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, m
36713
36715
  apiKey: process.env.DATADOG_API_KEY,
36714
36716
  ddSource: "moleculer",
36715
36717
  env: void 0,
36716
- hostname: os$13.hostname(),
36718
+ hostname: os$14.hostname(),
36717
36719
  objectPrinter: null,
36718
36720
  interval: 10 * 1e3
36719
36721
  });
@@ -36909,7 +36911,7 @@ var require_file$2 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
36909
36911
  var _ = require_lodash();
36910
36912
  var fs$16 = require("fs/promises");
36911
36913
  var path$37 = require("path");
36912
- var os$12 = require("os");
36914
+ var os$13 = require("os");
36913
36915
  var { makeDirs } = require_utils$3();
36914
36916
  /**
36915
36917
  * Import types
@@ -36938,7 +36940,7 @@ var require_file$2 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
36938
36940
  this.opts = _.defaultsDeep(this.opts, {
36939
36941
  folder: "./logs",
36940
36942
  filename: "moleculer-{date}.log",
36941
- eol: os$12.EOL,
36943
+ eol: os$13.EOL,
36942
36944
  interval: 1 * 1e3
36943
36945
  });
36944
36946
  this.opts.colors = false;
@@ -37358,7 +37360,7 @@ var require_lib$5 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modul
37358
37360
  //#region ../../node_modules/log4js/lib/layouts.js
37359
37361
  var require_layouts = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
37360
37362
  var dateFormat = require_lib$5();
37361
- var os$11 = require("os");
37363
+ var os$12 = require("os");
37362
37364
  var util$4 = require("util");
37363
37365
  var path$36 = require("path");
37364
37366
  var styles = {
@@ -37484,13 +37486,13 @@ var require_layouts = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mod
37484
37486
  return dateFormat.asString(format, loggingEvent.startTime);
37485
37487
  }
37486
37488
  function hostname() {
37487
- return os$11.hostname().toString();
37489
+ return os$12.hostname().toString();
37488
37490
  }
37489
37491
  function formatMessage(loggingEvent) {
37490
37492
  return util$4.format(...loggingEvent.data);
37491
37493
  }
37492
37494
  function endOfLine() {
37493
- return os$11.EOL;
37495
+ return os$12.EOL;
37494
37496
  }
37495
37497
  function logLevel(loggingEvent) {
37496
37498
  return loggingEvent.level.toString();
@@ -39089,11 +39091,11 @@ var require_mkdirs = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
39089
39091
  //#region ../../node_modules/streamroller/node_modules/fs-extra/lib/util/utimes.js
39090
39092
  var require_utimes = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
39091
39093
  var fs = require_graceful_fs();
39092
- var os$10 = require("os");
39094
+ var os$11 = require("os");
39093
39095
  var path$32 = require("path");
39094
39096
  function hasMillisResSync() {
39095
39097
  let tmpfile = path$32.join("millis-test-sync" + Date.now().toString() + Math.random().toString().slice(2));
39096
- tmpfile = path$32.join(os$10.tmpdir(), tmpfile);
39098
+ tmpfile = path$32.join(os$11.tmpdir(), tmpfile);
39097
39099
  const d = /* @__PURE__ */ new Date(1435410243862);
39098
39100
  fs.writeFileSync(tmpfile, "https://github.com/jprichardson/node-fs-extra/pull/141");
39099
39101
  const fd = fs.openSync(tmpfile, "r+");
@@ -39103,7 +39105,7 @@ var require_utimes = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
39103
39105
  }
39104
39106
  function hasMillisRes(callback) {
39105
39107
  let tmpfile = path$32.join("millis-test" + Date.now().toString() + Math.random().toString().slice(2));
39106
- tmpfile = path$32.join(os$10.tmpdir(), tmpfile);
39108
+ tmpfile = path$32.join(os$11.tmpdir(), tmpfile);
39107
39109
  const d = /* @__PURE__ */ new Date(1435410243862);
39108
39110
  fs.writeFile(tmpfile, "https://github.com/jprichardson/node-fs-extra/pull/141", (err) => {
39109
39111
  if (err) return callback(err);
@@ -45405,7 +45407,7 @@ var require_multistream = /* @__PURE__ */ require_chunk.__commonJSMin(((exports,
45405
45407
  //#endregion
45406
45408
  //#region ../../node_modules/pino/pino.js
45407
45409
  var require_pino$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
45408
- var os$9 = require("node:os");
45410
+ var os$10 = require("node:os");
45409
45411
  var stdSerializers = require_pino_std_serializers();
45410
45412
  var caller = require_caller();
45411
45413
  var redaction = require_redaction();
@@ -45420,7 +45422,7 @@ var require_pino$1 = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
45420
45422
  var { chindingsSym, redactFmtSym, serializersSym, timeSym, timeSliceIndexSym, streamSym, stringifySym, stringifySafeSym, stringifiersSym, setLevelSym, endSym, formatOptsSym, messageKeySym, errorKeySym, nestedKeySym, mixinSym, levelCompSym, useOnlyCustomLevelsSym, formattersSym, hooksSym, nestedKeyStrSym, mixinMergeStrategySym, msgPrefixSym } = symbols;
45421
45423
  var { epochTime, nullTime } = time;
45422
45424
  var { pid } = process;
45423
- var hostname = os$9.hostname();
45425
+ var hostname = os$10.hostname();
45424
45426
  var defaultErrorSerializer = stdSerializers.err;
45425
45427
  var normalize = createArgsNormalizer({
45426
45428
  level: "info",
@@ -71525,7 +71527,7 @@ var require_ipaddr = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
71525
71527
  //#region ../../node_modules/moleculer/src/transporters/tcp/udp-broadcaster.js
71526
71528
  var require_udp_broadcaster = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
71527
71529
  var EventEmitter$2 = require("events");
71528
- var os$8 = require("os");
71530
+ var os$9 = require("os");
71529
71531
  var dgram = require("dgram");
71530
71532
  var ipaddr = require_ipaddr();
71531
71533
  var { randomInt } = require_utils$3();
@@ -71736,7 +71738,7 @@ var require_udp_broadcaster = /* @__PURE__ */ require_chunk.__commonJSMin(((expo
71736
71738
  */
71737
71739
  getBroadcastAddresses() {
71738
71740
  const list = [];
71739
- const interfaces = os$8.networkInterfaces();
71741
+ const interfaces = os$9.networkInterfaces();
71740
71742
  for (let iface in interfaces) for (let i in interfaces[iface]) {
71741
71743
  const f = interfaces[iface][i];
71742
71744
  if (f.family === "IPv4") list.push(ipaddr.IPv4.broadcastAddressFromCIDR(f.cidr).toString());
@@ -71751,7 +71753,7 @@ var require_udp_broadcaster = /* @__PURE__ */ require_chunk.__commonJSMin(((expo
71751
71753
  */
71752
71754
  getInterfaceAddresses() {
71753
71755
  const list = [];
71754
- const interfaces = os$8.networkInterfaces();
71756
+ const interfaces = os$9.networkInterfaces();
71755
71757
  for (let iface in interfaces) for (let i in interfaces[iface]) {
71756
71758
  const f = interfaces[iface][i];
71757
71759
  if (f.family === "IPv4") list.push(f.address);
@@ -73034,7 +73036,7 @@ var init_package = require_chunk.__esmMin((() => {
73034
73036
  //#endregion
73035
73037
  //#region ../../node_modules/moleculer/src/health.js
73036
73038
  var require_health = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
73037
- var os$7 = require("os");
73039
+ var os$8 = require("os");
73038
73040
  var { getIpList } = require_utils$3();
73039
73041
  var MOLECULER_VERSION = (init_package(), require_chunk.__toCommonJS(package_exports).default).version;
73040
73042
  /**
@@ -73050,9 +73052,9 @@ var require_health = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
73050
73052
  };
73051
73053
  };
73052
73054
  var getCpuInfo = () => {
73053
- const cpus = os$7.cpus();
73054
- const load = os$7.loadavg();
73055
- const cores = Array.isArray(cpus) ? os$7.cpus().length : null;
73055
+ const cpus = os$8.cpus();
73056
+ const load = os$8.loadavg();
73057
+ const cores = Array.isArray(cpus) ? os$8.cpus().length : null;
73056
73058
  return {
73057
73059
  load1: load[0],
73058
73060
  load5: load[1],
@@ -73063,8 +73065,8 @@ var require_health = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
73063
73065
  };
73064
73066
  var getMemoryInfo = () => {
73065
73067
  const mem = {
73066
- free: os$7.freemem(),
73067
- total: os$7.totalmem(),
73068
+ free: os$8.freemem(),
73069
+ total: os$8.totalmem(),
73068
73070
  percent: null
73069
73071
  };
73070
73072
  mem.percent = mem.free * 100 / mem.total;
@@ -73076,19 +73078,19 @@ var require_health = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
73076
73078
  */
73077
73079
  var getUserInfo = () => {
73078
73080
  try {
73079
- return os$7.userInfo();
73081
+ return os$8.userInfo();
73080
73082
  } catch {
73081
73083
  return {};
73082
73084
  }
73083
73085
  };
73084
73086
  var getOsInfo = () => {
73085
73087
  return {
73086
- uptime: os$7.uptime(),
73087
- type: os$7.type(),
73088
- release: os$7.release(),
73089
- hostname: os$7.hostname(),
73090
- arch: os$7.arch(),
73091
- platform: os$7.platform(),
73088
+ uptime: os$8.uptime(),
73089
+ type: os$8.type(),
73090
+ release: os$8.release(),
73091
+ hostname: os$8.hostname(),
73092
+ arch: os$8.arch(),
73093
+ platform: os$8.platform(),
73092
73094
  user: getUserInfo()
73093
73095
  };
73094
73096
  };
@@ -74781,11 +74783,11 @@ var require_ttl = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module)
74781
74783
  //#endregion
74782
74784
  //#region ../../node_modules/recursive-watch/index.js
74783
74785
  var require_recursive_watch = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
74784
- var os$6 = require("os");
74786
+ var os$7 = require("os");
74785
74787
  var fs$9 = require("fs");
74786
74788
  var path$11 = require("path");
74787
74789
  var Cache = require_ttl();
74788
- var watchDirectory = os$6.platform() === "linux" ? watchFallback : watchRecursive;
74790
+ var watchDirectory = os$7.platform() === "linux" ? watchFallback : watchRecursive;
74789
74791
  module.exports = watch;
74790
74792
  function watch(name, onchange) {
74791
74793
  var clear = null;
@@ -81761,7 +81763,7 @@ var require_has_flag = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, mo
81761
81763
  //#endregion
81762
81764
  //#region ../../node_modules/args/node_modules/supports-color/index.js
81763
81765
  var require_supports_color = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
81764
- var os$5 = require("os");
81766
+ var os$6 = require("os");
81765
81767
  var hasFlag = require_has_flag();
81766
81768
  var env = process.env;
81767
81769
  var forceColor;
@@ -81784,7 +81786,7 @@ var require_supports_color = /* @__PURE__ */ require_chunk.__commonJSMin(((expor
81784
81786
  if (stream && !stream.isTTY && forceColor !== true) return 0;
81785
81787
  const min = forceColor ? 1 : 0;
81786
81788
  if (process.platform === "win32") {
81787
- const osRelease = os$5.release().split(".");
81789
+ const osRelease = os$6.release().split(".");
81788
81790
  if (Number(process.versions.node.split(".")[0]) >= 8 && Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) return Number(osRelease[2]) >= 14931 ? 3 : 2;
81789
81791
  return 1;
81790
81792
  }
@@ -82674,7 +82676,7 @@ var require_lib = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module)
82674
82676
  var require_main = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module) => {
82675
82677
  var fs$4 = require("fs");
82676
82678
  var path$3 = require("path");
82677
- var os$4 = require("os");
82679
+ var os$5 = require("os");
82678
82680
  var crypto = require("crypto");
82679
82681
  var TIPS = [
82680
82682
  "◈ encrypted .env [www.dotenvx.com]",
@@ -82807,7 +82809,7 @@ var require_main = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, module
82807
82809
  return null;
82808
82810
  }
82809
82811
  function _resolveHome(envPath) {
82810
- return envPath[0] === "~" ? path$3.join(os$4.homedir(), envPath.slice(1)) : envPath;
82812
+ return envPath[0] === "~" ? path$3.join(os$5.homedir(), envPath.slice(1)) : envPath;
82811
82813
  }
82812
82814
  function _configVault(options) {
82813
82815
  const debug = parseBoolean(process.env.DOTENV_CONFIG_DEBUG || options && options.debug);
@@ -82955,7 +82957,7 @@ var require_runner = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
82955
82957
  var inspect$1 = require("util").inspect;
82956
82958
  var _ = require_lodash();
82957
82959
  var Args = require_lib();
82958
- var os$3 = require("os");
82960
+ var os$4 = require("os");
82959
82961
  /** @type {Cluster} */
82960
82962
  var cluster$2 = require("cluster");
82961
82963
  var kleur = require_kleur();
@@ -83261,7 +83263,7 @@ var require_runner = /* @__PURE__ */ require_chunk.__commonJSMin(((exports, modu
83261
83263
  logger.info(`Worker #${worker.id} restarted`);
83262
83264
  } else process.exit(code);
83263
83265
  });
83264
- const workerCount = Number.isInteger(instances) && instances > 0 ? instances : os$3.cpus().length;
83266
+ const workerCount = Number.isInteger(instances) && instances > 0 ? instances : os$4.cpus().length;
83265
83267
  logger.info(`Starting ${workerCount} workers...`);
83266
83268
  for (let i = 0; i < workerCount; i++) cluster$2.fork();
83267
83269
  stopSignals.forEach(function(signal) {
@@ -83399,7 +83401,7 @@ var Gt = (n, t, e) => {
83399
83401
  }
83400
83402
  return h;
83401
83403
  };
83402
- var fe = "\0SLASH" + Math.random() + "\0", ue = "\0OPEN" + Math.random() + "\0", qt = "\0CLOSE" + Math.random() + "\0", de = "\0COMMA" + Math.random() + "\0", pe = "\0PERIOD" + Math.random() + "\0", is = new RegExp(fe, "g"), rs = new RegExp(ue, "g"), ns = new RegExp(qt, "g"), os$2 = new RegExp(de, "g"), hs = new RegExp(pe, "g"), as = /\\\\/g, ls = /\\{/g, cs = /\\}/g, fs$2 = /\\,/g, us = /\\./g, ds = 1e5;
83404
+ var fe = "\0SLASH" + Math.random() + "\0", ue = "\0OPEN" + Math.random() + "\0", qt = "\0CLOSE" + Math.random() + "\0", de = "\0COMMA" + Math.random() + "\0", pe = "\0PERIOD" + Math.random() + "\0", is = new RegExp(fe, "g"), rs = new RegExp(ue, "g"), ns = new RegExp(qt, "g"), os$3 = new RegExp(de, "g"), hs = new RegExp(pe, "g"), as = /\\\\/g, ls = /\\{/g, cs = /\\}/g, fs$2 = /\\,/g, us = /\\./g, ds = 1e5;
83403
83405
  function Ht(n) {
83404
83406
  return isNaN(n) ? n.charCodeAt(0) : parseInt(n, 10);
83405
83407
  }
@@ -83407,7 +83409,7 @@ function ps(n) {
83407
83409
  return n.replace(as, fe).replace(ls, ue).replace(cs, qt).replace(fs$2, de).replace(us, pe);
83408
83410
  }
83409
83411
  function ms(n) {
83410
- return n.replace(is, "\\").replace(rs, "{").replace(ns, "}").replace(os$2, ",").replace(hs, ".");
83412
+ return n.replace(is, "\\").replace(rs, "{").replace(ns, "}").replace(os$3, ",").replace(hs, ".");
83411
83413
  }
83412
83414
  function me(n) {
83413
83415
  if (!n) return [""];
@@ -88362,7 +88364,8 @@ var MESH_REAP_MS = 24 * 36e5;
88362
88364
  * state of their own (the session token lifetime).
88363
88365
  *
88364
88366
  * Sections exposed — this list is the whole of it:
88365
- * - server (port, host, dataPath — READ-ONLY, loaded from config.yaml at bootstrap)
88367
+ * - server (port, host, dataPath — READ-ONLY, loaded from config.yaml at bootstrap;
88368
+ * name = the hub's human name, `server.name`, editable — D861)
88366
88369
  * - auth (tokenExpiry = session lifetime, accessTokenExpiry, trustedProxies,
88367
88370
  * trustedNetworks)
88368
88371
  * - cluster (no operator field remains: the cluster secret and the mesh auth
@@ -88401,12 +88404,15 @@ var SECTION_TITLES = {
88401
88404
  };
88402
88405
  /** The keychain owner of the hub's own secrets (D797). */
88403
88406
  var SYSTEM_SECRET_OWNER = "system";
88407
+ /** The form key (and the `server` section key) of the hub's human name (D861). */
88408
+ var SERVER_NAME_FIELD = "name";
88404
88409
  /** Keys that map 1:1 to a given yml section — used by `updateGlobalSettings`
88405
88410
  * to figure out which section owns each key in the incoming patch. */
88406
88411
  var KEY_TO_SECTION = {
88407
88412
  port: "server",
88408
88413
  host: "server",
88409
88414
  dataPath: "server",
88415
+ [SERVER_NAME_FIELD]: "server",
88410
88416
  tokenExpiry: "auth",
88411
88417
  accessTokenExpiry: "auth",
88412
88418
  trustedProxies: "auth",
@@ -88597,14 +88603,22 @@ var SystemConfigAddon = class extends require_dist.BaseAddon {
88597
88603
  {
88598
88604
  id: "system-config-server",
88599
88605
  title: SECTION_TITLES["server"],
88600
- description: "Core server connection settings — read-only, loaded from config.yaml at bootstrap.",
88606
+ description: "The name of this server, and its connection settings (read-only, loaded from config.yaml at bootstrap).",
88601
88607
  columns: 2,
88602
88608
  fields: [
88609
+ {
88610
+ type: "text",
88611
+ key: SERVER_NAME_FIELD,
88612
+ label: "Server name",
88613
+ description: `Shown in the admin UI and on the apps' sign-in screen (1 to 48 characters). Leave empty to use this machine's hostname.`,
88614
+ placeholder: hostnameWithoutDomain(),
88615
+ span: 2
88616
+ },
88603
88617
  {
88604
88618
  type: "info",
88605
88619
  key: "server-restart-note",
88606
88620
  label: "Restart required",
88607
- content: "Server settings are read-only. Change them in config.yaml and restart.",
88621
+ content: "Port, host and data path are read-only. Change them in config.yaml and restart.",
88608
88622
  variant: "warning"
88609
88623
  },
88610
88624
  {
@@ -88711,6 +88725,25 @@ var SystemConfigAddon = class extends require_dist.BaseAddon {
88711
88725
  async updateGlobalSettingsAsOperator(patch, _nodeId) {
88712
88726
  await this.updateGlobalSettings(patch);
88713
88727
  }
88728
+ /**
88729
+ * The value to store for a `name` in a save, or `undefined` for "leave the row
88730
+ * alone". The whole form posts every field, so an empty box on a hub that was
88731
+ * never named is the NORMAL case and must write nothing (D861: a seed never
88732
+ * overwrites); an empty box over a stored name is the operator clearing it,
88733
+ * which stores `''` (readers treat it as unset). Anything else must be a valid
88734
+ * name — refused whole, like the network lists.
88735
+ */
88736
+ async normalizeServerName(value) {
88737
+ if (value === void 0 || value === null) return void 0;
88738
+ if (typeof value !== "string") throw new Error("The server name must be text");
88739
+ if (value.trim() === "") {
88740
+ const current = (await this.ctx.settings.getSection("server"))[SERVER_NAME_FIELD];
88741
+ return typeof current === "string" && current !== "" ? "" : void 0;
88742
+ }
88743
+ const parsed = require_dist.ServerNameSchema.safeParse(value);
88744
+ if (!parsed.success) throw new Error(parsed.error.issues[0]?.message ?? "The server name is not valid");
88745
+ return parsed.data;
88746
+ }
88714
88747
  async updateGlobalSettings(patch) {
88715
88748
  if (!this.ctx.settings) throw new Error("system-config: ctx.settings not available — cannot write sections");
88716
88749
  const perSection = /* @__PURE__ */ new Map();
@@ -88732,6 +88765,14 @@ var SystemConfigAddon = class extends require_dist.BaseAddon {
88732
88765
  this.ctx.logger.warn("update ignored unknown key (not mapped to any section)", { meta: { key } });
88733
88766
  continue;
88734
88767
  }
88768
+ if (key === SERVER_NAME_FIELD) {
88769
+ const name = await this.normalizeServerName(value);
88770
+ if (name === void 0) continue;
88771
+ const bucket = perSection.get("server") ?? {};
88772
+ bucket[key] = name;
88773
+ perSection.set("server", bucket);
88774
+ continue;
88775
+ }
88735
88776
  if (section === "server") {
88736
88777
  this.ctx.logger.warn("update ignored read-only server-section key", { meta: { key } });
88737
88778
  continue;
@@ -88756,6 +88797,10 @@ var SystemConfigAddon = class extends require_dist.BaseAddon {
88756
88797
  }
88757
88798
  }
88758
88799
  };
88800
+ /** This machine's hostname without its domain: what an unnamed hub is called. */
88801
+ function hostnameWithoutDomain() {
88802
+ return require_dist.shortHostname(node_os.default.hostname());
88803
+ }
88759
88804
  function parseMintUnlockInput(input) {
88760
88805
  if (input === null || typeof input !== "object") throw new Error("system-config: mintAgentUiUnlockTicket requires { nodeId }");
88761
88806
  const nodeId = Reflect.get(input, "nodeId");