omegga 1.0.39 → 1.1.0

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 (151) hide show
  1. package/README.md +9 -1
  2. package/dist/brickadia/config.js +23 -12
  3. package/dist/brickadia/config.js.map +1 -1
  4. package/dist/brickadia/presets.d.ts +2 -2
  5. package/dist/brickadia/server.d.ts +0 -1
  6. package/dist/brickadia/server.js +68 -23
  7. package/dist/brickadia/server.js.map +1 -1
  8. package/dist/cli/auth.d.ts +8 -2
  9. package/dist/cli/auth.js +97 -16
  10. package/dist/cli/auth.js.map +1 -1
  11. package/dist/cli/config.d.ts +1 -1
  12. package/dist/cli/config.js.map +1 -1
  13. package/dist/cli/index.d.ts +10 -5
  14. package/dist/cli/installer.js.map +1 -1
  15. package/dist/cli/plugin.js +22 -24
  16. package/dist/cli/plugin.js.map +1 -1
  17. package/dist/cli/terminal.d.ts +0 -1
  18. package/dist/cli/terminal.js +185 -4
  19. package/dist/cli/terminal.js.map +1 -1
  20. package/dist/config/authorizer.js.map +1 -1
  21. package/dist/config/index.js +0 -1
  22. package/dist/config/index.js.map +1 -1
  23. package/dist/config/types.d.ts +12 -4
  24. package/dist/config/validator.js +5 -2
  25. package/dist/config/validator.js.map +1 -1
  26. package/dist/index.js +17 -7
  27. package/dist/index.js.map +1 -1
  28. package/dist/info/default_commands.json +20 -19
  29. package/dist/logger.js +1 -5
  30. package/dist/logger.js.map +1 -1
  31. package/dist/main.js +196 -50
  32. package/dist/main.js.map +1 -1
  33. package/dist/omegga/auth.d.ts +5 -3
  34. package/dist/omegga/auth.js +39 -16
  35. package/dist/omegga/auth.js.map +1 -1
  36. package/dist/omegga/commandInjector.d.ts +1 -1
  37. package/dist/omegga/commandInjector.js +4 -4
  38. package/dist/omegga/commandInjector.js.map +1 -1
  39. package/dist/omegga/index.js +17 -7
  40. package/dist/omegga/index.js.map +1 -1
  41. package/dist/omegga/logWrangler.d.ts +1 -1
  42. package/dist/omegga/logWrangler.js +19 -12
  43. package/dist/omegga/logWrangler.js.map +1 -1
  44. package/dist/omegga/matchers/auth.d.ts +1 -0
  45. package/dist/omegga/matchers/auth.js +5 -5
  46. package/dist/omegga/matchers/auth.js.map +1 -1
  47. package/dist/omegga/matchers/chat.d.ts +1 -0
  48. package/dist/omegga/matchers/chat.js +13 -7
  49. package/dist/omegga/matchers/chat.js.map +1 -1
  50. package/dist/omegga/matchers/command.js +1 -1
  51. package/dist/omegga/matchers/command.js.map +1 -1
  52. package/dist/omegga/matchers/init.js.map +1 -1
  53. package/dist/omegga/matchers/interact.js.map +1 -1
  54. package/dist/omegga/matchers/join.js +12 -10
  55. package/dist/omegga/matchers/join.js.map +1 -1
  56. package/dist/omegga/matchers/leave.js.map +1 -1
  57. package/dist/omegga/matchers/mapChange.js.map +1 -1
  58. package/dist/omegga/matchers/minigameJoin.js.map +1 -1
  59. package/dist/omegga/matchers/types.d.ts +1 -1
  60. package/dist/omegga/matchers/types.js +0 -4
  61. package/dist/omegga/matchers/types.js.map +1 -1
  62. package/dist/omegga/matchers/version.js +36 -30
  63. package/dist/omegga/matchers/version.js.map +1 -1
  64. package/dist/omegga/player.d.ts +4 -2
  65. package/dist/omegga/player.js +50 -66
  66. package/dist/omegga/player.js.map +1 -1
  67. package/dist/omegga/plugin/plugin_jsonrpc_stdio.js +15 -16
  68. package/dist/omegga/plugin/plugin_jsonrpc_stdio.js.map +1 -1
  69. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.d.ts +13 -1
  70. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.js +34 -1
  71. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.js.map +1 -1
  72. package/dist/omegga/plugin/plugin_node_safe/worker.js +3 -4
  73. package/dist/omegga/plugin/plugin_node_safe/worker.js.map +1 -1
  74. package/dist/omegga/plugin/plugin_node_safe.d.ts +0 -1
  75. package/dist/omegga/plugin/plugin_node_safe.js +15 -16
  76. package/dist/omegga/plugin/plugin_node_safe.js.map +1 -1
  77. package/dist/omegga/plugin/plugin_node_unsafe.js +17 -8
  78. package/dist/omegga/plugin/plugin_node_unsafe.js.map +1 -1
  79. package/dist/omegga/plugin.d.ts +1 -1
  80. package/dist/omegga/plugin.js +14 -10
  81. package/dist/omegga/plugin.js.map +1 -1
  82. package/dist/omegga/server.d.ts +13 -0
  83. package/dist/omegga/server.js +103 -11
  84. package/dist/omegga/server.js.map +1 -1
  85. package/dist/omegga/types.d.ts +3 -3
  86. package/dist/omegga/wrapper.d.ts +0 -1
  87. package/dist/omegga/wrapper.js +2 -1
  88. package/dist/omegga/wrapper.js.map +1 -1
  89. package/dist/plugin.d.ts +61 -16
  90. package/dist/plugin.js.map +1 -1
  91. package/dist/softconfig.d.ts +15 -0
  92. package/dist/softconfig.js +23 -1
  93. package/dist/softconfig.js.map +1 -1
  94. package/dist/tsconfig.tsbuildinfo +1 -0
  95. package/dist/util/brick/checkBounds.js +1 -2
  96. package/dist/util/brick/checkBounds.js.map +1 -1
  97. package/dist/util/brick/constants.js +1 -0
  98. package/dist/util/brick/constants.js.map +1 -1
  99. package/dist/util/brick/displayName.d.ts +1 -1
  100. package/dist/util/brick/displayName.js +2 -2
  101. package/dist/util/brick/displayName.js.map +1 -1
  102. package/dist/util/brick/getBounds.js +2 -3
  103. package/dist/util/brick/getBounds.js.map +1 -1
  104. package/dist/util/brick/getBrickSize.js +1 -2
  105. package/dist/util/brick/getBrickSize.js.map +1 -1
  106. package/dist/util/brick/getScaleAxis.js +1 -2
  107. package/dist/util/brick/getScaleAxis.js.map +1 -1
  108. package/dist/util/brick/rotate.js +6 -6
  109. package/dist/util/brick/rotate.js.map +1 -1
  110. package/dist/util/brick/setOwnership.js +5 -3
  111. package/dist/util/brick/setOwnership.js.map +1 -1
  112. package/dist/util/chat.d.ts +1 -1
  113. package/dist/util/color.js +2 -2
  114. package/dist/util/color.js.map +1 -1
  115. package/dist/util/file.js +5 -6
  116. package/dist/util/file.js.map +1 -1
  117. package/dist/util/index.d.ts +6 -7
  118. package/dist/util/index.js +19 -8
  119. package/dist/util/index.js.map +1 -1
  120. package/dist/util/map.js +3 -3
  121. package/dist/util/map.js.map +1 -1
  122. package/dist/util/time.js +8 -8
  123. package/dist/util/time.js.map +1 -1
  124. package/dist/util/wsl.d.ts +1 -1
  125. package/dist/util/wsl.js +8 -6
  126. package/dist/util/wsl.js.map +1 -1
  127. package/dist/webserver/backend/api.js +51 -22
  128. package/dist/webserver/backend/api.js.map +1 -1
  129. package/dist/webserver/backend/database.d.ts +0 -1
  130. package/dist/webserver/backend/database.js +67 -32
  131. package/dist/webserver/backend/database.js.map +1 -1
  132. package/dist/webserver/backend/index.d.ts +0 -1
  133. package/dist/webserver/backend/index.js +18 -9
  134. package/dist/webserver/backend/index.js.map +1 -1
  135. package/dist/webserver/backend/metrics.js +6 -3
  136. package/dist/webserver/backend/metrics.js.map +1 -1
  137. package/dist/webserver/backend/types.d.ts +2 -3
  138. package/dist/webserver/backend/util.js +2 -3
  139. package/dist/webserver/backend/util.js.map +1 -1
  140. package/omegga-config.yml +7 -0
  141. package/package.json +11 -10
  142. package/public/app.bundle.js +31209 -25722
  143. package/public/app.bundle.js.map +1 -1
  144. package/public/app.css +2 -2
  145. package/public/auth.bundle.js +12762 -13651
  146. package/public/auth.bundle.js.map +1 -1
  147. package/public/auth.css +2 -2
  148. package/templates/safe-ts/omegga.d.ts +109 -25
  149. package/tools/install_launcher.sh +0 -5
  150. package/tools/install_steamcmd.sh +88 -0
  151. package/templates/rust/src/main.rs +0 -25
@@ -1 +1 @@
1
- {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/util/map.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG;IAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE;IACnD,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,0BAA0B,EAAE;IACrD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,0BAA0B,EAAE;IACtD,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE;CACpD,CAAC;AAEF,6BAA6B;AAC7B,SAAgB,KAAK,CAAC,MAAc;IAClC,MAAM,GAAG,GAAG,oBAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAC5D,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IACzB,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,sBAIC;AAED,6BAA6B;AAC7B,SAAgB,KAAK,CAAC,IAAY;IAChC,MAAM,GAAG,GAAG,oBAAY,CAAC,IAAI,CAC3B,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,CACjD,CAAC;IACF,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC;AAND,sBAMC"}
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/util/map.ts"],"names":[],"mappings":";;;AAQA,sBAIC;AAGD,sBAMC;AArBY,QAAA,YAAY,GAAG;IAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE;IACnD,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,0BAA0B,EAAE;IACrD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,0BAA0B,EAAE;IACtD,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE;CACpD,CAAC;AAEF,6BAA6B;AAC7B,SAAgB,KAAK,CAAC,MAAc;IAClC,MAAM,GAAG,GAAG,oBAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAC5D,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IACzB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,6BAA6B;AAC7B,SAAgB,KAAK,CAAC,IAAY;IAChC,MAAM,GAAG,GAAG,oBAAY,CAAC,IAAI,CAC3B,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,CACjD,CAAC;IACF,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/util/time.js CHANGED
@@ -3,15 +3,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.parseBrickadiaTime = exports.parseDuration = exports.debounce = void 0;
6
+ exports.debounce = void 0;
7
+ exports.parseDuration = parseDuration;
8
+ exports.parseBrickadiaTime = parseBrickadiaTime;
7
9
  const debounce_1 = __importDefault(require("lodash/debounce"));
8
10
  exports.debounce = debounce_1.default;
9
11
  const UNIT_CONVERSION = {
10
- ms: 1,
11
- s: 1000,
12
- m: 60 * 1000,
13
- h: 60 * 60 * 1000,
14
- d: 24 * 60 * 60 * 1000,
12
+ ms: 1, // milliseconds
13
+ s: 1000, // seconds
14
+ m: 60 * 1000, // minutes
15
+ h: 60 * 60 * 1000, // hours
16
+ d: 24 * 60 * 60 * 1000, // days
15
17
  w: 7 * 24 * 60 * 60 * 1000, // weeks
16
18
  };
17
19
  // sum duration from a string like '1d 4h 3m 25s 30ms'
@@ -31,11 +33,9 @@ function parseDuration(str) {
31
33
  }
32
34
  return total;
33
35
  }
34
- exports.parseDuration = parseDuration;
35
36
  // parse brickadia's time format (YYYY.MM.DD-HH-MM-SS) into a time object
36
37
  function parseBrickadiaTime(str) {
37
38
  const [date, time] = str.split('-');
38
39
  return new Date(date.replace(/\./g, '-') + 'T' + time.replace(/\./g, ':')).getTime();
39
40
  }
40
- exports.parseBrickadiaTime = parseBrickadiaTime;
41
41
  //# sourceMappingURL=time.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/util/time.ts"],"names":[],"mappings":";;;;;;AAAA,+DAAwC;AAyC3B,QAAA,QAAQ,GAUQ,kBAAS,CAAC;AAEvC,MAAM,eAAe,GAA2B;IAC9C,EAAE,EAAE,CAAC;IACL,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,EAAE,GAAG,IAAI;IACZ,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;IACjB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IACtB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ;CACrC,CAAC;AAEF,sDAAsD;AACtD,SAAgB,aAAa,CAAC,GAAW;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,+CAA+C;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9B,mBAAmB;IACnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,+CAA+C;QAC/C,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAE7D,wBAAwB;QACxB,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAAE,SAAS;QAE3D,sCAAsC;QACtC,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;KACnD;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAnBD,sCAmBC;AAED,yEAAyE;AACzE,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAC1D,CAAC,OAAO,EAAE,CAAC;AACd,CAAC;AALD,gDAKC"}
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/util/time.ts"],"names":[],"mappings":";;;;;;AA+DA,sCAmBC;AAGD,gDAKC;AA1FD,+DAAwC;AAyC3B,QAAA,QAAQ,GAUQ,kBAAS,CAAC;AAEvC,MAAM,eAAe,GAA2B;IAC9C,EAAE,EAAE,CAAC,EAAE,eAAe;IACtB,CAAC,EAAE,IAAI,EAAE,UAAU;IACnB,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU;IACxB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ;IAC3B,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO;IAC/B,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ;CACrC,CAAC;AAEF,sDAAsD;AACtD,SAAgB,aAAa,CAAC,GAAW;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,+CAA+C;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9B,mBAAmB;IACnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,+CAA+C;QAC/C,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAE7D,wBAAwB;QACxB,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAAE,SAAS;QAE3D,sCAAsC;QACtC,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,yEAAyE;AACzE,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAC1D,CAAC,OAAO,EAAE,CAAC;AACd,CAAC"}
@@ -1 +1 @@
1
- export {};
1
+ export declare function checkWsl(): number;
package/dist/util/wsl.js CHANGED
@@ -2,13 +2,15 @@
2
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
- var _a;
6
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.checkWsl = checkWsl;
7
7
  const child_process_1 = require("child_process");
8
8
  const path_1 = __importDefault(require("path"));
9
- // run script that checks wsl version
10
- const TOOL_PATH = path_1.default.join(__dirname, '../../tools/check_wsl.sh');
11
- const out = (0, child_process_1.execSync)(TOOL_PATH, { shell: 'bash' }).toString();
12
- // return 1 for wsl1, 2 for wsl2 and 0 for neither
13
- module.exports = (_a = { WSL1: 1, WSL2: 2 }[out.trim()]) !== null && _a !== void 0 ? _a : 0;
9
+ function checkWsl() {
10
+ var _a;
11
+ // run script that checks wsl version
12
+ const TOOL_PATH = path_1.default.join(__dirname, '../../tools/check_wsl.sh');
13
+ const out = (0, child_process_1.execSync)(TOOL_PATH, { shell: 'bash' }).toString();
14
+ return (_a = { WSL1: 1, WSL2: 2 }[out.trim()]) !== null && _a !== void 0 ? _a : 0;
15
+ }
14
16
  //# sourceMappingURL=wsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wsl.js","sourceRoot":"","sources":["../../src/util/wsl.ts"],"names":[],"mappings":";;;;;;AAAA,iDAAyC;AACzC,gDAAwB;AAExB,qCAAqC;AACrC,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;AACnE,MAAM,GAAG,GAAG,IAAA,wBAAQ,EAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AAE9D,kDAAkD;AAClD,MAAM,CAAC,OAAO,GAAG,MAAA,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,mCAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"wsl.js","sourceRoot":"","sources":["../../src/util/wsl.ts"],"names":[],"mappings":";;;;;AAGA,4BAKC;AARD,iDAAyC;AACzC,gDAAwB;AAExB,SAAgB,QAAQ;;IACtB,qCAAqC;IACrC,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,IAAA,wBAAQ,EAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9D,OAAO,MAAA,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,mCAAI,CAAC,CAAC;AAC/C,CAAC"}
@@ -15,17 +15,28 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.default = default_1;
29
40
  const logger_1 = __importDefault(require("../../logger"));
30
41
  const player_1 = __importDefault(require("../../omegga/player"));
31
42
  const chat_1 = require("../../util/chat");
@@ -99,7 +110,7 @@ function default_1(server, io) {
99
110
  roles,
100
111
  version: pkg.version,
101
112
  canLogOut: socket.data.user.username !== '',
102
- now: Date.now(),
113
+ now: Date.now(), // this can be used for the frontend to anticipate drift
103
114
  userless: !socket.data.user.username,
104
115
  user: {
105
116
  username: socket.data.user.username || 'Admin',
@@ -228,12 +239,16 @@ function default_1(server, io) {
228
239
  const created = (0, time_1.parseBrickadiaTime)(foundBan.created);
229
240
  const expires = (0, time_1.parseBrickadiaTime)(foundBan.expires);
230
241
  // create a clone of the object
231
- let currentBan = Object.assign(Object.assign({}, foundBan), {
242
+ let currentBan = {
243
+ ...foundBan,
232
244
  // parse the times in the current ban
233
245
  created,
234
- expires, duration: expires - created, remainingTime: expires - now,
246
+ expires,
247
+ duration: expires - created,
248
+ remainingTime: expires - now,
235
249
  // lookup banner name
236
- bannerName: lodash_1.default.get(omegga.getNameCache(), ['savedPlayerNames', foundBan.bannerId], '') });
250
+ bannerName: lodash_1.default.get(omegga.getNameCache(), ['savedPlayerNames', foundBan.bannerId], ''),
251
+ };
237
252
  // if the ban is expired, it should not be listed
238
253
  if (currentBan.expires < now && currentBan.duration > 0)
239
254
  currentBan = null;
@@ -245,6 +260,7 @@ function default_1(server, io) {
245
260
  // get a specific player's info
246
261
  // TODO: add permission check
247
262
  rpc.addMethod('player.get', async ([id]) => {
263
+ var _a;
248
264
  const entry = await database.getPlayer(id);
249
265
  if (!entry)
250
266
  return null;
@@ -255,7 +271,7 @@ function default_1(server, io) {
255
271
  n.ago = now - n.date;
256
272
  // combine player roles with server roles
257
273
  const playerRoles = player_1.default.getRoles(omegga, id) || [];
258
- const { roles: serverRoles } = omegga.getRoleSetup();
274
+ const { roles: serverRoles = [] } = (_a = omegga.getRoleSetup()) !== null && _a !== void 0 ? _a : {};
259
275
  // Get banner name and duration from list of bans
260
276
  for (const b of entry.banHistory) {
261
277
  b.duration = b.expires - b.created;
@@ -274,19 +290,27 @@ function default_1(server, io) {
274
290
  const created = (0, time_1.parseBrickadiaTime)(foundBan.created);
275
291
  const expires = (0, time_1.parseBrickadiaTime)(foundBan.expires);
276
292
  // create a clone of the object
277
- currentBan = Object.assign(Object.assign({}, foundBan), { created,
278
- expires, duration: expires - created, remainingTime: expires - now,
293
+ currentBan = {
294
+ ...foundBan,
295
+ created,
296
+ expires,
297
+ duration: expires - created,
298
+ remainingTime: expires - now,
279
299
  // lookup banner name
280
- bannerName: lodash_1.default.get(omegga.getNameCache(), ['savedPlayerNames', foundBan.bannerId], '') });
300
+ bannerName: lodash_1.default.get(omegga.getNameCache(), ['savedPlayerNames', foundBan.bannerId], ''),
301
+ };
281
302
  // if the ban is expired, it should not be listed
282
303
  if (currentBan.expires < now && currentBan.duration > 0)
283
304
  currentBan = null;
284
305
  }
285
- return Object.assign(Object.assign({}, entry), {
306
+ return {
307
+ // database results
308
+ ...entry,
286
309
  // player is host
287
- isHost: omegga.getHostId() === id, isOnline: omegga.players.some(p => p.id === id),
310
+ isHost: omegga.getHostId() === id,
311
+ isOnline: omegga.players.some(p => p.id === id),
288
312
  // player's current ban state
289
- currentBan,
313
+ currentBan,
290
314
  // all player's roles w/ colors
291
315
  roles: playerRoles.map(r => {
292
316
  // default role color is white
@@ -299,7 +323,8 @@ function default_1(server, io) {
299
323
  name: r,
300
324
  color: color,
301
325
  };
302
- }) });
326
+ }),
327
+ };
303
328
  });
304
329
  rpc.addMethod('player.ban', async ([id, duration = -1, reason = 'No Reason']) => {
305
330
  var _a, _b, _c;
@@ -500,14 +525,19 @@ function default_1(server, io) {
500
525
  // get a list of roles
501
526
  // TODO: add permission check
502
527
  rpc.addMethod('roles.list', () => {
503
- return lodash_1.default.sortBy(omegga.getRoleSetup().roles, p => p.name.toLowerCase());
528
+ var _a, _b;
529
+ return lodash_1.default.sortBy((_b = (_a = omegga.getRoleSetup()) === null || _a === void 0 ? void 0 : _a.roles) !== null && _b !== void 0 ? _b : [], p => p.name.toLowerCase());
504
530
  });
505
531
  // get a paginated list of users
506
532
  // TODO: add permission check
507
533
  rpc.addMethod('users.list', async ([{ page = 0, search = '', sort = 'name', direction = '1' } = {}]) => {
508
534
  const resp = await database.getUsers({ page, search, sort, direction });
509
535
  const now = Date.now();
510
- resp.users = resp.users.map(user => (Object.assign(Object.assign({}, user), { seenAgo: user.lastOnline ? now - user.lastOnline : Infinity, createdAgo: now - user.created })));
536
+ resp.users = resp.users.map(user => ({
537
+ ...user,
538
+ seenAgo: user.lastOnline ? now - user.lastOnline : Infinity,
539
+ createdAgo: now - user.created,
540
+ }));
511
541
  return resp;
512
542
  });
513
543
  // create a new user (host only at the moment)
@@ -681,5 +711,4 @@ function default_1(server, io) {
681
711
  server.app.use('/api/v1', openApi);
682
712
  server.app.use('/api/v1', api);
683
713
  }
684
- exports.default = default_1;
685
714
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/webserver/backend/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/webserver/backend/api.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { IServerConfig } from "../../config/types";
3
2
  import type Omegga from "../../omegga/server";
4
3
  import EventEmitter from 'events';
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const softconfig_1 = __importDefault(require("../../softconfig"));
7
- const server_1 = __importDefault(require("../../omegga/server"));
8
7
  const pattern_1 = require("../../util/pattern");
9
8
  const time_1 = require("../../util/time");
10
9
  const bcryptjs_1 = __importDefault(require("bcryptjs"));
@@ -36,11 +35,26 @@ class Database extends events_1.default {
36
35
  };
37
36
  // create all the stores
38
37
  this.stores = {
39
- users: nedb_promises_1.default.create(Object.assign({ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.USER_STORE) }, dbOpts)),
40
- chat: nedb_promises_1.default.create(Object.assign({ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.CHAT_STORE) }, dbOpts)),
41
- players: nedb_promises_1.default.create(Object.assign({ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.PLAYER_STORE) }, dbOpts)),
42
- status: nedb_promises_1.default.create(Object.assign({ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.STATUS_STORE) }, dbOpts)),
43
- server: nedb_promises_1.default.create(Object.assign({ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.SERVER_STORE) }, dbOpts)),
38
+ users: nedb_promises_1.default.create({
39
+ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.USER_STORE),
40
+ ...dbOpts,
41
+ }),
42
+ chat: nedb_promises_1.default.create({
43
+ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.CHAT_STORE),
44
+ ...dbOpts,
45
+ }),
46
+ players: nedb_promises_1.default.create({
47
+ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.PLAYER_STORE),
48
+ ...dbOpts,
49
+ }),
50
+ status: nedb_promises_1.default.create({
51
+ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.STATUS_STORE),
52
+ ...dbOpts,
53
+ }),
54
+ server: nedb_promises_1.default.create({
55
+ filename: path_1.default.join(omegga.dataPath, softconfig_1.default.SERVER_STORE),
56
+ ...dbOpts,
57
+ }),
44
58
  };
45
59
  }
46
60
  // make sure all the databases have valid store versions
@@ -65,7 +79,7 @@ class Database extends events_1.default {
65
79
  // example migration list (all version upgrades go up by 1)
66
80
  dummy: [
67
81
  {
68
- version: 1,
82
+ version: 1, // target version
69
83
  upgrade: async (_store) => { }, // upgrade function (does not include updating version)
70
84
  },
71
85
  ],
@@ -267,17 +281,27 @@ class Database extends events_1.default {
267
281
  // add a chat message to the chat log store
268
282
  async addChatLog(action, user, message) {
269
283
  this.calendar.addDate(Date.now());
270
- return await this.stores.chat.insert(Object.assign({ type: 'chat', created: Date.now(), instanceId: await this.getInstanceId(), action,
271
- user }, (message ? { message } : {})));
284
+ return await this.stores.chat.insert({
285
+ type: 'chat',
286
+ created: Date.now(),
287
+ instanceId: await this.getInstanceId(),
288
+ action,
289
+ user,
290
+ ...(message ? { message } : {}),
291
+ });
272
292
  }
273
293
  // get recent chat activity
274
294
  async getChats({ count = 50, sameServer, before, after, } = {}) {
275
295
  return await this.stores.chat
276
- .find(Object.assign(Object.assign({ type: 'chat' }, (sameServer ? { instanceId: await this.getInstanceId() } : {})), { created: before
296
+ .find({
297
+ type: 'chat',
298
+ ...(sameServer ? { instanceId: await this.getInstanceId() } : {}),
299
+ created: before
277
300
  ? { $lt: before }
278
301
  : after
279
302
  ? { $gt: after }
280
- : { $lt: Date.now() } }))
303
+ : { $lt: Date.now() },
304
+ })
281
305
  .sort({ created: !before && after ? 1 : -1 })
282
306
  .limit(count)
283
307
  .exec();
@@ -357,16 +381,20 @@ class Database extends events_1.default {
357
381
  async getUsers({ count = 50, search = '', page = 0, sort = 'name', direction = '1', } = {}) {
358
382
  const pattern = (0, pattern_1.explode)(search);
359
383
  // the query used for finding which players are available
360
- const query = Object.assign({ type: 'user' }, (search.length > 0
361
- ? {
362
- $or: [
363
- // id was pasted in
364
- { playerId: search },
365
- // user's current name
366
- { name: { $regex: pattern } },
367
- ],
368
- }
369
- : {}));
384
+ const query = {
385
+ type: 'user',
386
+ // only filter if there's a query
387
+ ...(search.length > 0
388
+ ? {
389
+ $or: [
390
+ // id was pasted in
391
+ { playerId: search },
392
+ // user's current name
393
+ { name: { $regex: pattern } },
394
+ ],
395
+ }
396
+ : {}),
397
+ };
370
398
  // count players and query players
371
399
  const [total, users] = await Promise.all([
372
400
  this.stores.users.count(query),
@@ -406,7 +434,7 @@ class Database extends events_1.default {
406
434
  ]);
407
435
  if (!player)
408
436
  return null;
409
- return Object.assign(Object.assign({}, player), { banHistory, kickHistory, notes });
437
+ return { ...player, banHistory, kickHistory, notes };
410
438
  }
411
439
  // add a user to the visit history, returns true if this is a first visit
412
440
  async addVisit(user) {
@@ -445,22 +473,27 @@ class Database extends events_1.default {
445
473
  return true;
446
474
  }
447
475
  else {
448
- await this.stores.players.update({ _id: existing._id }, Object.assign({ $inc: {
476
+ await this.stores.players.update({ _id: existing._id }, {
477
+ $inc: {
449
478
  // increment number of sessions if the player hasn't been seen for an hour
450
479
  sessions: existing.lastSeen < now - 60 * 60 * 1000 ? 1 : 0,
451
480
  // increment the number of instances this player has joined
452
481
  instances: existing.lastInstanceId === instanceId ? 1 : 0,
453
- }, $set: {
482
+ },
483
+ $set: {
454
484
  // update last seen time and user name
455
485
  lastSeen: now,
456
486
  name: user.name,
457
487
  // set the last joined instance
458
488
  lastInstanceId: instanceId,
459
- } }, (existing.nameHistory.some(h => h.name === user.name)
460
- ? {}
461
- : {
462
- $addToSet: { nameHistory: { name: user.name, date: now } },
463
- })));
489
+ },
490
+ // add the name to the history if it was not already in it
491
+ ...(existing.nameHistory.some(h => h.name === user.name)
492
+ ? {}
493
+ : {
494
+ $addToSet: { nameHistory: { name: user.name, date: now } },
495
+ }),
496
+ });
464
497
  return false;
465
498
  }
466
499
  }
@@ -504,9 +537,9 @@ class Database extends events_1.default {
504
537
  config = await this.stores.server.insert({
505
538
  type: 'autoRestartConfig',
506
539
  maxUptime: 48,
507
- maxUptimeEnabled: true,
540
+ maxUptimeEnabled: false,
508
541
  emptyUptime: 24,
509
- emptyUptimeEnabled: true,
542
+ emptyUptimeEnabled: false,
510
543
  dailyHour: 2,
511
544
  dailyHourEnabled: false,
512
545
  announcementEnabled: true,
@@ -523,7 +556,9 @@ class Database extends events_1.default {
523
556
  config.emptyUptime = Math.round(Math.max(1, Math.min(config.emptyUptime, 168)));
524
557
  config.dailyHour = Math.round(Math.max(0, Math.min(config.dailyHour, 23)));
525
558
  await this.stores.server.update({ type: 'autoRestartConfig' }, {
526
- $set: Object.assign({}, config),
559
+ $set: {
560
+ ...config,
561
+ },
527
562
  }, { upsert: false });
528
563
  }
529
564
  // update player online-time punchcard