omegga 1.2.8 → 1.3.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 (255) hide show
  1. package/README.md +20 -1
  2. package/dist/brickadia/config.js +26 -90
  3. package/dist/brickadia/config.js.map +1 -1
  4. package/dist/brickadia/server.js +294 -293
  5. package/dist/brickadia/server.js.map +1 -1
  6. package/dist/cli/auth.js +149 -177
  7. package/dist/cli/auth.js.map +1 -1
  8. package/dist/cli/config.js +64 -66
  9. package/dist/cli/config.js.map +1 -1
  10. package/dist/cli/index.js +14 -14
  11. package/dist/cli/index.js.map +1 -1
  12. package/dist/cli/installer.js +37 -43
  13. package/dist/cli/installer.js.map +1 -1
  14. package/dist/cli/plugin.js +651 -682
  15. package/dist/cli/plugin.js.map +1 -1
  16. package/dist/cli/terminal.js +811 -733
  17. package/dist/cli/terminal.js.map +1 -1
  18. package/dist/config/formats/format_js.js +6 -6
  19. package/dist/config/formats/format_js.js.map +1 -1
  20. package/dist/config/formats/format_yml.js +7 -10
  21. package/dist/config/formats/format_yml.js.map +1 -1
  22. package/dist/config/index.js +46 -68
  23. package/dist/config/index.js.map +1 -1
  24. package/dist/config/reader.js +16 -27
  25. package/dist/config/reader.js.map +1 -1
  26. package/dist/config/validator.js +23 -25
  27. package/dist/config/validator.js.map +1 -1
  28. package/dist/config/writer.js +11 -21
  29. package/dist/config/writer.js.map +1 -1
  30. package/dist/index.js +18 -64
  31. package/dist/index.js.map +1 -1
  32. package/dist/info/default_commands.json.js +39 -0
  33. package/dist/info/default_commands.json.js.map +1 -0
  34. package/dist/logger.js +61 -60
  35. package/dist/logger.js.map +1 -1
  36. package/dist/main.js +424 -471
  37. package/dist/main.js.map +1 -1
  38. package/dist/omegga/auth.js +101 -148
  39. package/dist/omegga/auth.js.map +1 -1
  40. package/dist/omegga/commandInjector.js +261 -251
  41. package/dist/omegga/commandInjector.js.map +1 -1
  42. package/dist/omegga/index.js +14 -52
  43. package/dist/omegga/index.js.map +1 -1
  44. package/dist/omegga/logWrangler.js +224 -275
  45. package/dist/omegga/logWrangler.js.map +1 -1
  46. package/dist/omegga/matchers/auth.js +36 -50
  47. package/dist/omegga/matchers/auth.js.map +1 -1
  48. package/dist/omegga/matchers/chat.js +49 -71
  49. package/dist/omegga/matchers/chat.js.map +1 -1
  50. package/dist/omegga/matchers/command.js +25 -36
  51. package/dist/omegga/matchers/command.js.map +1 -1
  52. package/dist/omegga/matchers/exit.js +15 -18
  53. package/dist/omegga/matchers/exit.js.map +1 -1
  54. package/dist/omegga/matchers/index.js +26 -40
  55. package/dist/omegga/matchers/index.js.map +1 -1
  56. package/dist/omegga/matchers/init.js +20 -23
  57. package/dist/omegga/matchers/init.js.map +1 -1
  58. package/dist/omegga/matchers/interact.js +58 -64
  59. package/dist/omegga/matchers/interact.js.map +1 -1
  60. package/dist/omegga/matchers/join.js +74 -95
  61. package/dist/omegga/matchers/join.js.map +1 -1
  62. package/dist/omegga/matchers/leave.js +43 -56
  63. package/dist/omegga/matchers/leave.js.map +1 -1
  64. package/dist/omegga/matchers/mapChange.js +26 -35
  65. package/dist/omegga/matchers/mapChange.js.map +1 -1
  66. package/dist/omegga/matchers/minigameJoin.js +24 -31
  67. package/dist/omegga/matchers/minigameJoin.js.map +1 -1
  68. package/dist/omegga/matchers/version.js +42 -49
  69. package/dist/omegga/matchers/version.js.map +1 -1
  70. package/dist/omegga/player.js +527 -527
  71. package/dist/omegga/player.js.map +1 -1
  72. package/dist/omegga/plugin/interface.js +91 -98
  73. package/dist/omegga/plugin/interface.js.map +1 -1
  74. package/dist/omegga/plugin/plugin_jsonrpc_stdio.js +524 -429
  75. package/dist/omegga/plugin/plugin_jsonrpc_stdio.js.map +1 -1
  76. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.js +282 -294
  77. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.js.map +1 -1
  78. package/dist/omegga/plugin/plugin_node_safe.js +365 -393
  79. package/dist/omegga/plugin/plugin_node_safe.js.map +1 -1
  80. package/dist/omegga/plugin/plugin_node_unsafe.js +119 -179
  81. package/dist/omegga/plugin/plugin_node_unsafe.js.map +1 -1
  82. package/dist/omegga/plugin.js +402 -347
  83. package/dist/omegga/plugin.js.map +1 -1
  84. package/dist/omegga/server.js +742 -774
  85. package/dist/omegga/server.js.map +1 -1
  86. package/dist/omegga/wrapper.js +64 -91
  87. package/dist/omegga/wrapper.js.map +1 -1
  88. package/dist/plugin.js +11 -31
  89. package/dist/plugin.js.map +1 -1
  90. package/dist/softconfig.js +121 -100
  91. package/dist/softconfig.js.map +1 -1
  92. package/dist/updater/steam.js +97 -112
  93. package/dist/updater/steam.js.map +1 -1
  94. package/dist/util/brdb.js +496 -528
  95. package/dist/util/brdb.js.map +1 -1
  96. package/dist/util/brick/checkBounds.js +11 -15
  97. package/dist/util/brick/checkBounds.js.map +1 -1
  98. package/dist/util/brick/constants.js +723 -174
  99. package/dist/util/brick/constants.js.map +1 -1
  100. package/dist/util/brick/displayName.js +204 -211
  101. package/dist/util/brick/displayName.js.map +1 -1
  102. package/dist/util/brick/getBounds.js +29 -41
  103. package/dist/util/brick/getBounds.js.map +1 -1
  104. package/dist/util/brick/getBrickSize.js +6 -7
  105. package/dist/util/brick/getBrickSize.js.map +1 -1
  106. package/dist/util/brick/getScaleAxis.js +24 -30
  107. package/dist/util/brick/getScaleAxis.js.map +1 -1
  108. package/dist/util/brick/index.js +8 -29
  109. package/dist/util/brick/index.js.map +1 -1
  110. package/dist/util/brick/rotate.js +29 -34
  111. package/dist/util/brick/rotate.js.map +1 -1
  112. package/dist/util/brick/setOwnership.js +13 -19
  113. package/dist/util/brick/setOwnership.js.map +1 -1
  114. package/dist/util/chat.js +53 -44
  115. package/dist/util/chat.js.map +1 -1
  116. package/dist/util/color.js +112 -124
  117. package/dist/util/color.js.map +1 -1
  118. package/dist/util/file.js +54 -98
  119. package/dist/util/file.js.map +1 -1
  120. package/dist/util/index.js +84 -106
  121. package/dist/util/index.js.map +1 -1
  122. package/dist/util/map.js +18 -20
  123. package/dist/util/map.js.map +1 -1
  124. package/dist/util/pattern.js +6 -9
  125. package/dist/util/pattern.js.map +1 -1
  126. package/dist/util/time.js +31 -34
  127. package/dist/util/time.js.map +1 -1
  128. package/dist/util/uuid.js +10 -8
  129. package/dist/util/uuid.js.map +1 -1
  130. package/dist/util/wsl.js +19 -25
  131. package/dist/util/wsl.js.map +1 -1
  132. package/dist/version.js +7 -9
  133. package/dist/version.js.map +1 -1
  134. package/dist/webserver/backend/api.js +784 -874
  135. package/dist/webserver/backend/api.js.map +1 -1
  136. package/dist/webserver/backend/calendar.js +14 -17
  137. package/dist/webserver/backend/calendar.js.map +1 -1
  138. package/dist/webserver/backend/database.js +563 -613
  139. package/dist/webserver/backend/database.js.map +1 -1
  140. package/dist/webserver/backend/index.js +153 -191
  141. package/dist/webserver/backend/index.js.map +1 -1
  142. package/dist/webserver/backend/metrics.js +219 -248
  143. package/dist/webserver/backend/metrics.js.map +1 -1
  144. package/dist/webserver/backend/util.js +47 -68
  145. package/dist/webserver/backend/util.js.map +1 -1
  146. package/dist/worker.js +322 -0
  147. package/dist/worker.js.map +1 -0
  148. package/package.json +14 -10
  149. package/templates/safe-ts/omegga.d.ts +2 -2
  150. package/vite.backend.config.mts +46 -0
  151. package/vite.frontend.config.mts +58 -0
  152. package/vitest.backend.config.mts +7 -0
  153. package/dist/brickadia/config.d.ts +0 -3
  154. package/dist/brickadia/presets.d.ts +0 -65
  155. package/dist/brickadia/presets.js +0 -3
  156. package/dist/brickadia/presets.js.map +0 -1
  157. package/dist/brickadia/server.d.ts +0 -36
  158. package/dist/brickadia/types.d.ts +0 -45
  159. package/dist/brickadia/types.js +0 -3
  160. package/dist/brickadia/types.js.map +0 -1
  161. package/dist/cli/auth.d.ts +0 -26
  162. package/dist/cli/config.d.ts +0 -10
  163. package/dist/cli/index.d.ts +0 -30
  164. package/dist/cli/installer.d.ts +0 -1
  165. package/dist/cli/plugin.d.ts +0 -22
  166. package/dist/cli/terminal.d.ts +0 -25
  167. package/dist/config/authorizer.d.ts +0 -2
  168. package/dist/config/authorizer.js +0 -38
  169. package/dist/config/authorizer.js.map +0 -1
  170. package/dist/config/formats/format_js.d.ts +0 -3
  171. package/dist/config/formats/format_yml.d.ts +0 -3
  172. package/dist/config/index.d.ts +0 -18
  173. package/dist/config/reader.d.ts +0 -3
  174. package/dist/config/types.d.ts +0 -50
  175. package/dist/config/types.js +0 -3
  176. package/dist/config/types.js.map +0 -1
  177. package/dist/config/validator.d.ts +0 -6
  178. package/dist/config/writer.d.ts +0 -3
  179. package/dist/index.d.ts +0 -22
  180. package/dist/info/default_commands.json +0 -29
  181. package/dist/logger.d.ts +0 -41
  182. package/dist/main.d.ts +0 -1
  183. package/dist/omegga/auth.d.ts +0 -9
  184. package/dist/omegga/commandInjector.d.ts +0 -35
  185. package/dist/omegga/index.d.ts +0 -7
  186. package/dist/omegga/logWrangler.d.ts +0 -32
  187. package/dist/omegga/matchers/auth.d.ts +0 -10
  188. package/dist/omegga/matchers/chat.d.ts +0 -10
  189. package/dist/omegga/matchers/command.d.ts +0 -7
  190. package/dist/omegga/matchers/exit.d.ts +0 -3
  191. package/dist/omegga/matchers/index.d.ts +0 -3
  192. package/dist/omegga/matchers/init.d.ts +0 -3
  193. package/dist/omegga/matchers/interact.d.ts +0 -4
  194. package/dist/omegga/matchers/join.d.ts +0 -4
  195. package/dist/omegga/matchers/leave.d.ts +0 -4
  196. package/dist/omegga/matchers/mapChange.d.ts +0 -3
  197. package/dist/omegga/matchers/minigameJoin.d.ts +0 -9
  198. package/dist/omegga/matchers/types.d.ts +0 -5
  199. package/dist/omegga/matchers/types.js +0 -3
  200. package/dist/omegga/matchers/types.js.map +0 -1
  201. package/dist/omegga/matchers/version.d.ts +0 -3
  202. package/dist/omegga/player.d.ts +0 -81
  203. package/dist/omegga/plugin/interface.d.ts +0 -30
  204. package/dist/omegga/plugin/plugin_jsonrpc_stdio.d.ts +0 -23
  205. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.d.ts +0 -145
  206. package/dist/omegga/plugin/plugin_node_safe/worker.d.ts +0 -1
  207. package/dist/omegga/plugin/plugin_node_safe/worker.js +0 -367
  208. package/dist/omegga/plugin/plugin_node_safe/worker.js.map +0 -1
  209. package/dist/omegga/plugin/plugin_node_safe.d.ts +0 -23
  210. package/dist/omegga/plugin/plugin_node_unsafe.d.ts +0 -13
  211. package/dist/omegga/plugin.d.ts +0 -63
  212. package/dist/omegga/server.d.ts +0 -166
  213. package/dist/omegga/types.d.ts +0 -49
  214. package/dist/omegga/types.js +0 -3
  215. package/dist/omegga/types.js.map +0 -1
  216. package/dist/omegga/wrapper.d.ts +0 -32
  217. package/dist/plugin.d.ts +0 -916
  218. package/dist/softconfig.d.ts +0 -67
  219. package/dist/tsconfig.tsbuildinfo +0 -1
  220. package/dist/updater/index.d.ts +0 -1
  221. package/dist/updater/index.js +0 -10
  222. package/dist/updater/index.js.map +0 -1
  223. package/dist/updater/steam.d.ts +0 -52
  224. package/dist/util/brdb.d.ts +0 -31
  225. package/dist/util/brick/checkBounds.d.ts +0 -8
  226. package/dist/util/brick/constants.d.ts +0 -18
  227. package/dist/util/brick/displayName.d.ts +0 -7
  228. package/dist/util/brick/getBounds.d.ts +0 -5
  229. package/dist/util/brick/getBrickSize.d.ts +0 -3
  230. package/dist/util/brick/getScaleAxis.d.ts +0 -3
  231. package/dist/util/brick/index.d.ts +0 -14
  232. package/dist/util/brick/rotate.d.ts +0 -16
  233. package/dist/util/brick/setOwnership.d.ts +0 -12
  234. package/dist/util/chat.d.ts +0 -23
  235. package/dist/util/color.d.ts +0 -13
  236. package/dist/util/file.d.ts +0 -5
  237. package/dist/util/index.d.ts +0 -183
  238. package/dist/util/map.d.ts +0 -6
  239. package/dist/util/pattern.d.ts +0 -1
  240. package/dist/util/time.d.ts +0 -39
  241. package/dist/util/uuid.d.ts +0 -3
  242. package/dist/util/wsl.d.ts +0 -2
  243. package/dist/version.d.ts +0 -2
  244. package/dist/webserver/backend/api.d.ts +0 -115
  245. package/dist/webserver/backend/calendar.d.ts +0 -5
  246. package/dist/webserver/backend/database.d.ts +0 -150
  247. package/dist/webserver/backend/index.d.ts +0 -30
  248. package/dist/webserver/backend/metrics.d.ts +0 -3
  249. package/dist/webserver/backend/types.d.ts +0 -114
  250. package/dist/webserver/backend/types.js +0 -3
  251. package/dist/webserver/backend/types.js.map +0 -1
  252. package/dist/webserver/backend/util.d.ts +0 -2
  253. package/dist/webserver/index.d.ts +0 -2
  254. package/dist/webserver/index.js +0 -9
  255. package/dist/webserver/index.js.map +0 -1
@@ -1,130 +1,118 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_COLORSET = exports.rgbToHex = exports.sRGB = exports.linearRGB = void 0;
4
- exports.hsv = hsv;
5
- /* accepts parameters
6
- * h Object = {h:x, s:y, v:z}
7
- * OR
8
- * h, s, v
9
- */
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
10
3
  function hsv(h, s, v) {
11
- var r, g, b, i, f, p, q, t;
12
- if (arguments.length === 1 && typeof h === 'object') {
13
- ((s = h.s), (v = h.v), (h = h.h));
14
- }
15
- h = h;
16
- i = Math.floor(h * 6);
17
- f = h * 6 - i;
18
- p = v * (1 - s);
19
- q = v * (1 - f * s);
20
- t = v * (1 - (1 - f) * s);
21
- switch (i % 6) {
22
- case 0:
23
- ((r = v), (g = t), (b = p));
24
- break;
25
- case 1:
26
- ((r = q), (g = v), (b = p));
27
- break;
28
- case 2:
29
- ((r = p), (g = v), (b = t));
30
- break;
31
- case 3:
32
- ((r = p), (g = q), (b = v));
33
- break;
34
- case 4:
35
- ((r = t), (g = p), (b = v));
36
- break;
37
- case 5:
38
- ((r = v), (g = p), (b = q));
39
- break;
40
- }
41
- return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
4
+ var r, g, b, i, f, p, q, t;
5
+ if (arguments.length === 1 && typeof h === "object") {
6
+ s = h.s, v = h.v, h = h.h;
7
+ }
8
+ h = h;
9
+ i = Math.floor(h * 6);
10
+ f = h * 6 - i;
11
+ p = v * (1 - s);
12
+ q = v * (1 - f * s);
13
+ t = v * (1 - (1 - f) * s);
14
+ switch (i % 6) {
15
+ case 0:
16
+ r = v, g = t, b = p;
17
+ break;
18
+ case 1:
19
+ r = q, g = v, b = p;
20
+ break;
21
+ case 2:
22
+ r = p, g = v, b = t;
23
+ break;
24
+ case 3:
25
+ r = p, g = q, b = v;
26
+ break;
27
+ case 4:
28
+ r = t, g = p, b = v;
29
+ break;
30
+ case 5:
31
+ r = v, g = p, b = q;
32
+ break;
33
+ }
34
+ return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
42
35
  }
43
- // convert a color into the weird linearRGB format
44
- const linearRGB = (rgba) => rgba.map((c, i) => i === 3
45
- ? c
46
- : Math.round((c / 255 > 0.04045
47
- ? Math.pow((c / 255) * (1.0 / 1.055) + 0.0521327, 2.4)
48
- : (c / 255) * (1.0 / 12.92)) * 255));
49
- exports.linearRGB = linearRGB;
50
- const sRGB = (linear) => linear.map((c, i) => i === 3
51
- ? c
52
- : Math.round((c / 255 > 0.0031308
53
- ? 1.055 * Math.pow(c / 255, 1 / 2.4) - 0.055
54
- : (c / 255) * 12.92) * 255));
55
- exports.sRGB = sRGB;
56
- // convert (r, g, b), ([r, g, b]), and ({r, g, b}) to hex string
36
+ const linearRGB = (rgba) => rgba.map(
37
+ (c, i) => i === 3 ? c : Math.round(
38
+ (c / 255 > 0.04045 ? Math.pow(c / 255 * (1 / 1.055) + 0.0521327, 2.4) : c / 255 * (1 / 12.92)) * 255
39
+ )
40
+ );
41
+ const sRGB = (linear) => linear.map(
42
+ (c, i) => i === 3 ? c : Math.round(
43
+ (c / 255 > 31308e-7 ? 1.055 * Math.pow(c / 255, 1 / 2.4) - 0.055 : c / 255 * 12.92) * 255
44
+ )
45
+ );
57
46
  const rgbToHex = (r, g, b) => {
58
- // parse array arguments
59
- if (typeof r === 'object' && 'length' in r && r.length > 0)
60
- [r, g, b] = r;
61
- // parse object arguments
62
- else if (typeof r === 'object' && 'r' in r) {
63
- g = r.g;
64
- b = r.b;
65
- r = r.r;
66
- }
67
- return [r, g, b]
68
- .map(v => Math.round(Number(v)).toString(16).padStart(2, '0'))
69
- .join('');
47
+ if (typeof r === "object" && "length" in r && r.length > 0) [r, g, b] = r;
48
+ else if (typeof r === "object" && "r" in r) {
49
+ g = r.g;
50
+ b = r.b;
51
+ r = r.r;
52
+ }
53
+ return [r, g, b].map((v) => Math.round(Number(v)).toString(16).padStart(2, "0")).join("");
70
54
  };
71
- exports.rgbToHex = rgbToHex;
72
- exports.DEFAULT_COLORSET = [
73
- [255, 255, 255, 255],
74
- [136, 136, 136, 255],
75
- [89, 89, 89, 255],
76
- [57, 57, 57, 255],
77
- [35, 35, 35, 255],
78
- [17, 17, 17, 255],
79
- [6, 6, 6, 255],
80
- [0, 0, 0, 255],
81
- [87, 5, 9, 255],
82
- [234, 6, 6, 255],
83
- [246, 73, 6, 255],
84
- [234, 157, 6, 255],
85
- [8, 138, 5, 255],
86
- [4, 152, 170, 255],
87
- [163, 35, 85, 255],
88
- [90, 18, 55, 255],
89
- [22, 4, 1, 255],
90
- [49, 20, 13, 255],
91
- [89, 16, 4, 255],
92
- [144, 60, 18, 255],
93
- [166, 104, 62, 255],
94
- [255, 159, 78, 255],
95
- [194, 163, 58, 255],
96
- [255, 175, 47, 255],
97
- [5, 18, 5, 255],
98
- [5, 30, 2, 255],
99
- [21, 36, 0, 255],
100
- [0, 76, 0, 255],
101
- [11, 54, 10, 255],
102
- [67, 79, 12, 255],
103
- [255, 146, 10, 255],
104
- [109, 64, 5, 255],
105
- [10, 30, 43, 255],
106
- [30, 39, 41, 255],
107
- [71, 92, 96, 255],
108
- [131, 172, 181, 255],
109
- [80, 147, 162, 255],
110
- [8, 118, 200, 255],
111
- [0, 64, 122, 255],
112
- [1, 34, 64, 255],
113
- [255, 14, 14, 153],
114
- [255, 204, 5, 153],
115
- [31, 144, 18, 153],
116
- [43, 133, 189, 153],
117
- [87, 5, 9, 153],
118
- [246, 73, 6, 153],
119
- [8, 43, 15, 153],
120
- [255, 255, 255, 153],
121
- [255, 255, 255, 153],
122
- [136, 136, 136, 153],
123
- [89, 89, 89, 153],
124
- [57, 57, 57, 153],
125
- [35, 35, 35, 153],
126
- [17, 17, 17, 153],
127
- [6, 6, 6, 153],
128
- [0, 0, 0, 153],
55
+ const DEFAULT_COLORSET = [
56
+ [255, 255, 255, 255],
57
+ [136, 136, 136, 255],
58
+ [89, 89, 89, 255],
59
+ [57, 57, 57, 255],
60
+ [35, 35, 35, 255],
61
+ [17, 17, 17, 255],
62
+ [6, 6, 6, 255],
63
+ [0, 0, 0, 255],
64
+ [87, 5, 9, 255],
65
+ [234, 6, 6, 255],
66
+ [246, 73, 6, 255],
67
+ [234, 157, 6, 255],
68
+ [8, 138, 5, 255],
69
+ [4, 152, 170, 255],
70
+ [163, 35, 85, 255],
71
+ [90, 18, 55, 255],
72
+ [22, 4, 1, 255],
73
+ [49, 20, 13, 255],
74
+ [89, 16, 4, 255],
75
+ [144, 60, 18, 255],
76
+ [166, 104, 62, 255],
77
+ [255, 159, 78, 255],
78
+ [194, 163, 58, 255],
79
+ [255, 175, 47, 255],
80
+ [5, 18, 5, 255],
81
+ [5, 30, 2, 255],
82
+ [21, 36, 0, 255],
83
+ [0, 76, 0, 255],
84
+ [11, 54, 10, 255],
85
+ [67, 79, 12, 255],
86
+ [255, 146, 10, 255],
87
+ [109, 64, 5, 255],
88
+ [10, 30, 43, 255],
89
+ [30, 39, 41, 255],
90
+ [71, 92, 96, 255],
91
+ [131, 172, 181, 255],
92
+ [80, 147, 162, 255],
93
+ [8, 118, 200, 255],
94
+ [0, 64, 122, 255],
95
+ [1, 34, 64, 255],
96
+ [255, 14, 14, 153],
97
+ [255, 204, 5, 153],
98
+ [31, 144, 18, 153],
99
+ [43, 133, 189, 153],
100
+ [87, 5, 9, 153],
101
+ [246, 73, 6, 153],
102
+ [8, 43, 15, 153],
103
+ [255, 255, 255, 153],
104
+ [255, 255, 255, 153],
105
+ [136, 136, 136, 153],
106
+ [89, 89, 89, 153],
107
+ [57, 57, 57, 153],
108
+ [35, 35, 35, 153],
109
+ [17, 17, 17, 153],
110
+ [6, 6, 6, 153],
111
+ [0, 0, 0, 153]
129
112
  ];
130
- //# sourceMappingURL=color.js.map
113
+ exports.DEFAULT_COLORSET = DEFAULT_COLORSET;
114
+ exports.hsv = hsv;
115
+ exports.linearRGB = linearRGB;
116
+ exports.rgbToHex = rgbToHex;
117
+ exports.sRGB = sRGB;
118
+ //# sourceMappingURL=color.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"color.js","sourceRoot":"","sources":["../../src/util/color.ts"],"names":[],"mappings":"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CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACd,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IAClB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACnB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACnB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACnB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACnB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACnB,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IAClB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACd,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;CACf,CAAC"}
1
+ {"version":3,"file":"color.js","sources":["../../src/util/color.ts"],"sourcesContent":["/* accepts parameters\n * h Object = {h:x, s:y, v:z}\n * OR\n * h, s, v\n */\nexport function hsv(\n h: number | { h: number; s: number; v: number },\n s?: number,\n v?: number,\n) {\n var r, g, b, i, f, p, q, t;\n if (arguments.length === 1 && typeof h === 'object') {\n ((s = h.s), (v = h.v), (h = h.h));\n }\n h = h as number;\n i = Math.floor(h * 6);\n f = h * 6 - i;\n p = v * (1 - s);\n q = v * (1 - f * s);\n t = v * (1 - (1 - f) * s);\n switch (i % 6) {\n case 0:\n ((r = v), (g = t), (b = p));\n break;\n case 1:\n ((r = q), (g = v), (b = p));\n break;\n case 2:\n ((r = p), (g = v), (b = t));\n break;\n case 3:\n ((r = p), (g = q), (b = v));\n break;\n case 4:\n ((r = t), (g = p), (b = v));\n break;\n case 5:\n ((r = v), (g = p), (b = q));\n break;\n }\n return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];\n}\n\n// convert a color into the weird linearRGB format\nexport const linearRGB = (rgba: number[]) =>\n rgba.map((c, i) =>\n i === 3\n ? c\n : Math.round(\n (c / 255 > 0.04045\n ? Math.pow((c / 255) * (1.0 / 1.055) + 0.0521327, 2.4)\n : (c / 255) * (1.0 / 12.92)) * 255,\n ),\n );\n\nexport const sRGB = (linear: number[]) =>\n linear.map((c, i) =>\n i === 3\n ? c\n : Math.round(\n (c / 255 > 0.0031308\n ? 1.055 * Math.pow(c / 255, 1 / 2.4) - 0.055\n : (c / 255) * 12.92) * 255,\n ),\n );\n\n// convert (r, g, b), ([r, g, b]), and ({r, g, b}) to hex string\nexport const rgbToHex = (\n r: number | [number, number, number] | { r: number; g: number; b: number },\n g?: number,\n b?: number,\n) => {\n // parse array arguments\n if (typeof r === 'object' && 'length' in r && r.length > 0) [r, g, b] = r;\n // parse object arguments\n else if (typeof r === 'object' && 'r' in r) {\n g = r.g;\n b = r.b;\n r = r.r;\n }\n\n return [r, g, b]\n .map(v => Math.round(Number(v)).toString(16).padStart(2, '0'))\n .join('');\n};\n\nexport const DEFAULT_COLORSET = [\n [255, 255, 255, 255],\n [136, 136, 136, 255],\n [89, 89, 89, 255],\n [57, 57, 57, 255],\n [35, 35, 35, 255],\n [17, 17, 17, 255],\n [6, 6, 6, 255],\n [0, 0, 0, 255],\n [87, 5, 9, 255],\n [234, 6, 6, 255],\n [246, 73, 6, 255],\n [234, 157, 6, 255],\n [8, 138, 5, 255],\n [4, 152, 170, 255],\n [163, 35, 85, 255],\n [90, 18, 55, 255],\n [22, 4, 1, 255],\n [49, 20, 13, 255],\n [89, 16, 4, 255],\n [144, 60, 18, 255],\n [166, 104, 62, 255],\n [255, 159, 78, 255],\n [194, 163, 58, 255],\n [255, 175, 47, 255],\n [5, 18, 5, 255],\n [5, 30, 2, 255],\n [21, 36, 0, 255],\n [0, 76, 0, 255],\n [11, 54, 10, 255],\n [67, 79, 12, 255],\n [255, 146, 10, 255],\n [109, 64, 5, 255],\n [10, 30, 43, 255],\n [30, 39, 41, 255],\n [71, 92, 96, 255],\n [131, 172, 181, 255],\n [80, 147, 162, 255],\n [8, 118, 200, 255],\n [0, 64, 122, 255],\n [1, 34, 64, 255],\n [255, 14, 14, 153],\n [255, 204, 5, 153],\n [31, 144, 18, 153],\n [43, 133, 189, 153],\n [87, 5, 9, 153],\n [246, 73, 6, 153],\n [8, 43, 15, 153],\n [255, 255, 255, 153],\n [255, 255, 255, 153],\n [136, 136, 136, 153],\n [89, 89, 89, 153],\n [57, 57, 57, 153],\n [35, 35, 35, 153],\n [17, 17, 17, 153],\n [6, 6, 6, 153],\n [0, 0, 0, 153],\n];\n"],"names":[],"mappings":"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"}
package/dist/util/file.js CHANGED
@@ -1,113 +1,69 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.readCachedJSON = readCachedJSON;
7
- exports.readWatchedJSON = readWatchedJSON;
8
- exports.mkdir = mkdir;
9
- exports.rmdir = rmdir;
10
- exports.copyFiles = copyFiles;
11
- const logger_1 = __importDefault(require("../logger"));
12
- const chokidar_1 = __importDefault(require("chokidar"));
13
- const fs_1 = __importDefault(require("fs"));
14
- const lodash_1 = __importDefault(require("lodash"));
15
- const path_1 = __importDefault(require("path"));
16
- const rimraf_1 = __importDefault(require("rimraf"));
17
- // objects to store cached data
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const logger = require("../logger.js");
4
+ const chokidar = require("chokidar");
5
+ const fs = require("node:fs");
6
+ const _ = require("lodash");
7
+ const path = require("node:path");
8
+ const rimraf = require("rimraf");
18
9
  const cachedTimes = {};
19
10
  const cachedJSON = {};
20
- // read a file and write it to cache, return the json object
21
11
  function updateJSONCache(file) {
22
- let body;
23
- try {
24
- // check if the file contents exist
25
- body = fs_1.default.readFileSync(file, 'utf8');
26
- // sometimes json files start with unicode for some reason. who knows!
27
- if (!body.startsWith('{') && body.length > 4)
28
- body = body.replace(/^[^{]+/, '');
29
- if (!body)
30
- return cachedJSON[file];
31
- // parse them as json
32
- cachedJSON[file] = JSON.parse(body);
33
- cachedTimes[file] = Date.now();
34
- }
35
- catch (err) {
36
- logger_1.default.errorp('Error updating JSON cache for file', file, err);
37
- if (body)
38
- logger_1.default.errorp('File contents:', body);
39
- }
40
- return cachedJSON[file];
41
- }
42
- // read cached json
43
- function readCachedJSON(file, expire = 5000) {
44
- const now = Date.now();
45
- if (cachedTimes[file] && cachedTimes[file] + expire > now)
46
- return cachedJSON[file];
47
- // update the cache with data
48
- return updateJSONCache(file);
12
+ let body;
13
+ try {
14
+ body = fs.readFileSync(file, "utf8");
15
+ if (!body.startsWith("{") && body.length > 4)
16
+ body = body.replace(/^[^{]+/, "");
17
+ if (!body) return cachedJSON[file];
18
+ cachedJSON[file] = JSON.parse(body);
19
+ cachedTimes[file] = Date.now();
20
+ } catch (err) {
21
+ logger.default.errorp("Error updating JSON cache for file", file, err);
22
+ if (body) logger.default.errorp("File contents:", body);
23
+ }
24
+ return cachedJSON[file];
49
25
  }
50
- // object state to store watched json data
51
26
  const watchers = {};
52
27
  function readWatchedJSON(file) {
53
- // if the file is already being watched, return the watched json
54
- if (watchers[file])
55
- return cachedJSON[file];
56
- // check if the file exists
57
- if (!fs_1.default.existsSync(file))
58
- return undefined;
59
- // create a watcher (no persistence means the process dies even if there's still a watcher)
60
- const watcher = chokidar_1.default.watch(file, { persistent: false });
61
- watchers[file] = watcher;
62
- const read = lodash_1.default.debounce(() => updateJSONCache(file), 500);
63
- // add listeners to the watcher
64
- watcher
65
- .on('add', () => read()) // on add, update the cache
66
- .on('change', () => read()) // on change, update the cache
67
- .on('unlink', () => {
68
- // on unlink (delete), destroy value in cache
69
- cachedJSON[file] = undefined;
70
- cachedTimes[file] = Date.now();
71
- });
72
- return updateJSONCache(file);
28
+ if (watchers[file]) return cachedJSON[file];
29
+ if (!fs.existsSync(file)) return void 0;
30
+ const watcher = chokidar.watch(file, { persistent: false });
31
+ watchers[file] = watcher;
32
+ const read = _.debounce(() => updateJSONCache(file), 500);
33
+ watcher.on("add", () => read()).on("change", () => read()).on("unlink", () => {
34
+ cachedJSON[file] = void 0;
35
+ cachedTimes[file] = Date.now();
36
+ });
37
+ return updateJSONCache(file);
73
38
  }
74
- // recursively mkdir (mkdir -p )
75
- function mkdir(path) {
76
- try {
77
- fs_1.default.mkdirSync(path, { recursive: true });
78
- }
79
- catch (e) {
80
- /* */
81
- }
39
+ function mkdir(path2) {
40
+ try {
41
+ fs.mkdirSync(path2, { recursive: true });
42
+ } catch (e) {
43
+ }
82
44
  }
83
- // rm -rf a path
84
45
  function rmdir(dir) {
85
- if (!fs_1.default.existsSync(dir))
86
- return false;
87
- return new Promise((resolve, reject) => {
88
- (0, rimraf_1.default)(dir, error => {
89
- if (error)
90
- reject(error);
91
- else
92
- resolve(true);
93
- });
46
+ if (!fs.existsSync(dir)) return false;
47
+ return new Promise((resolve, reject) => {
48
+ rimraf(dir, (error) => {
49
+ if (error) reject(error);
50
+ else resolve(true);
94
51
  });
52
+ });
95
53
  }
96
- // copy files from one dir to another, creating the directories in the process
97
54
  function copyFiles(srcDir, dstDir, files) {
98
- // create the directories if they don't already exist
99
- mkdir(srcDir);
100
- mkdir(dstDir);
101
- // copy the brickadia auth files
102
- for (const f of files) {
103
- // source is the omegga config path
104
- const src = path_1.default.join(srcDir, f);
105
- // destination file is in the auth path
106
- const dst = path_1.default.join(dstDir, f);
107
- // if it exists in the auth path and not in the current folder
108
- if (!fs_1.default.existsSync(dst) && fs_1.default.existsSync(src)) {
109
- fs_1.default.copyFileSync(src, dst);
110
- }
55
+ mkdir(srcDir);
56
+ mkdir(dstDir);
57
+ for (const f of files) {
58
+ const src = path.join(srcDir, f);
59
+ const dst = path.join(dstDir, f);
60
+ if (!fs.existsSync(dst) && fs.existsSync(src)) {
61
+ fs.copyFileSync(src, dst);
111
62
  }
63
+ }
112
64
  }
113
- //# sourceMappingURL=file.js.map
65
+ exports.copyFiles = copyFiles;
66
+ exports.mkdir = mkdir;
67
+ exports.readWatchedJSON = readWatchedJSON;
68
+ exports.rmdir = rmdir;
69
+ //# sourceMappingURL=file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/util/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sources":["../../src/util/file.ts"],"sourcesContent":["import Logger from '@/logger';\nimport chokidar from 'chokidar';\nimport fs from 'node:fs';\nimport _ from 'lodash';\nimport path from 'node:path';\nimport rimraf from 'rimraf';\n\n// objects to store cached data\nconst cachedTimes: Record<string, number> = {};\nconst cachedJSON: Record<string, unknown> = {};\n\n// read a file and write it to cache, return the json object\nfunction updateJSONCache(file: string) {\n let body;\n try {\n // check if the file contents exist\n body = fs.readFileSync(file, 'utf8');\n // sometimes json files start with unicode for some reason. who knows!\n if (!body.startsWith('{') && body.length > 4)\n body = body.replace(/^[^{]+/, '');\n if (!body) return cachedJSON[file];\n\n // parse them as json\n cachedJSON[file] = JSON.parse(body);\n cachedTimes[file] = Date.now();\n } catch (err) {\n Logger.errorp('Error updating JSON cache for file', file, err);\n if (body) Logger.errorp('File contents:', body);\n }\n return cachedJSON[file];\n}\n\n// read cached json\nexport function readCachedJSON(file: string, expire = 5000) {\n const now = Date.now();\n if (cachedTimes[file] && cachedTimes[file] + expire > now)\n return cachedJSON[file];\n\n // update the cache with data\n return updateJSONCache(file);\n}\n\n// object state to store watched json data\nconst watchers: Record<string, chokidar.FSWatcher> = {};\n\nexport function readWatchedJSON(file: string) {\n // if the file is already being watched, return the watched json\n if (watchers[file]) return cachedJSON[file];\n\n // check if the file exists\n if (!fs.existsSync(file)) return undefined;\n\n // create a watcher (no persistence means the process dies even if there's still a watcher)\n const watcher = chokidar.watch(file, { persistent: false });\n watchers[file] = watcher;\n\n const read = _.debounce(() => updateJSONCache(file), 500);\n\n // add listeners to the watcher\n watcher\n .on('add', () => read()) // on add, update the cache\n .on('change', () => read()) // on change, update the cache\n .on('unlink', () => {\n // on unlink (delete), destroy value in cache\n cachedJSON[file] = undefined;\n cachedTimes[file] = Date.now();\n });\n\n return updateJSONCache(file);\n}\n\n// recursively mkdir (mkdir -p )\nexport function mkdir(path: string) {\n try {\n fs.mkdirSync(path, { recursive: true });\n } catch (e) {\n /* */\n }\n}\n\n// rm -rf a path\nexport function rmdir(dir: string) {\n if (!fs.existsSync(dir)) return false;\n return new Promise((resolve, reject) => {\n rimraf(dir, error => {\n if (error) reject(error);\n else resolve(true);\n });\n });\n}\n\n// copy files from one dir to another, creating the directories in the process\nexport function copyFiles(srcDir: string, dstDir: string, files: string[]) {\n // create the directories if they don't already exist\n mkdir(srcDir);\n mkdir(dstDir);\n\n // copy the brickadia auth files\n for (const f of files) {\n // source is the omegga config path\n const src = path.join(srcDir, f);\n\n // destination file is in the auth path\n const dst = path.join(dstDir, f);\n\n // if it exists in the auth path and not in the current folder\n if (!fs.existsSync(dst) && fs.existsSync(src)) {\n fs.copyFileSync(src, dst);\n }\n }\n}\n"],"names":["Logger","path"],"mappings":";;;;;;;;AAQA,MAAM,cAAsC,CAAA;AAC5C,MAAM,aAAsC,CAAA;AAG5C,SAAS,gBAAgB,MAAc;AACrC,MAAI;AACJ,MAAI;AAEF,WAAO,GAAG,aAAa,MAAM,MAAM;AAEnC,QAAI,CAAC,KAAK,WAAW,GAAG,KAAK,KAAK,SAAS;AACzC,aAAO,KAAK,QAAQ,UAAU,EAAE;AAClC,QAAI,CAAC,KAAM,QAAO,WAAW,IAAI;AAGjC,eAAW,IAAI,IAAI,KAAK,MAAM,IAAI;AAClC,gBAAY,IAAI,IAAI,KAAK,IAAA;AAAA,EAC3B,SAAS,KAAK;AACZA,WAAAA,QAAO,OAAO,sCAAsC,MAAM,GAAG;AAC7D,QAAI,KAAMA,QAAAA,QAAO,OAAO,kBAAkB,IAAI;AAAA,EAChD;AACA,SAAO,WAAW,IAAI;AACxB;AAaA,MAAM,WAA+C,CAAA;AAE9C,SAAS,gBAAgB,MAAc;AAE5C,MAAI,SAAS,IAAI,EAAG,QAAO,WAAW,IAAI;AAG1C,MAAI,CAAC,GAAG,WAAW,IAAI,EAAG,QAAO;AAGjC,QAAM,UAAU,SAAS,MAAM,MAAM,EAAE,YAAY,OAAO;AAC1D,WAAS,IAAI,IAAI;AAEjB,QAAM,OAAO,EAAE,SAAS,MAAM,gBAAgB,IAAI,GAAG,GAAG;AAGxD,UACG,GAAG,OAAO,MAAM,KAAA,CAAM,EACtB,GAAG,UAAU,MAAM,KAAA,CAAM,EACzB,GAAG,UAAU,MAAM;AAElB,eAAW,IAAI,IAAI;AACnB,gBAAY,IAAI,IAAI,KAAK,IAAA;AAAA,EAC3B,CAAC;AAEH,SAAO,gBAAgB,IAAI;AAC7B;AAGO,SAAS,MAAMC,OAAc;AAClC,MAAI;AACF,OAAG,UAAUA,OAAM,EAAE,WAAW,MAAM;AAAA,EACxC,SAAS,GAAG;AAAA,EAEZ;AACF;AAGO,SAAS,MAAM,KAAa;AACjC,MAAI,CAAC,GAAG,WAAW,GAAG,EAAG,QAAO;AAChC,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,WAAO,KAAK,CAAA,UAAS;AACnB,UAAI,cAAc,KAAK;AAAA,mBACV,IAAI;AAAA,IACnB,CAAC;AAAA,EACH,CAAC;AACH;AAGO,SAAS,UAAU,QAAgB,QAAgB,OAAiB;AAEzE,QAAM,MAAM;AACZ,QAAM,MAAM;AAGZ,aAAW,KAAK,OAAO;AAErB,UAAM,MAAM,KAAK,KAAK,QAAQ,CAAC;AAG/B,UAAM,MAAM,KAAK,KAAK,QAAQ,CAAC;AAG/B,QAAI,CAAC,GAAG,WAAW,GAAG,KAAK,GAAG,WAAW,GAAG,GAAG;AAC7C,SAAG,aAAa,KAAK,GAAG;AAAA,IAC1B;AAAA,EACF;AACF;;;;;"}