omegga 0.1.85 → 1.0.2

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 (467) hide show
  1. package/README.md +142 -62
  2. package/bin/omegga +10 -4
  3. package/dist/brickadia/config.d.ts +3 -0
  4. package/dist/brickadia/config.d.ts.map +1 -0
  5. package/dist/brickadia/config.js +61 -0
  6. package/dist/brickadia/config.js.map +1 -0
  7. package/dist/brickadia/presets.d.ts +65 -0
  8. package/dist/brickadia/presets.js +3 -0
  9. package/dist/brickadia/presets.js.map +1 -0
  10. package/dist/brickadia/server.d.ts +20 -0
  11. package/dist/brickadia/server.d.ts.map +1 -0
  12. package/dist/brickadia/server.js +188 -0
  13. package/dist/brickadia/server.js.map +1 -0
  14. package/dist/brickadia/types.d.ts +45 -0
  15. package/dist/brickadia/types.d.ts.map +1 -0
  16. package/dist/brickadia/types.js +3 -0
  17. package/dist/brickadia/types.js.map +1 -0
  18. package/dist/cli/auth.d.ts +20 -0
  19. package/dist/cli/auth.d.ts.map +1 -0
  20. package/dist/cli/auth.js +115 -0
  21. package/dist/cli/auth.js.map +1 -0
  22. package/dist/cli/config.d.ts +10 -0
  23. package/dist/cli/config.d.ts.map +1 -0
  24. package/dist/cli/config.js +72 -0
  25. package/dist/cli/config.js.map +1 -0
  26. package/dist/cli/index.d.ts +20 -0
  27. package/dist/cli/index.d.ts.map +1 -0
  28. package/dist/cli/index.js +15 -0
  29. package/dist/cli/index.js.map +1 -0
  30. package/dist/cli/installer.d.ts +1 -0
  31. package/dist/cli/installer.d.ts.map +1 -0
  32. package/dist/cli/installer.js +55 -0
  33. package/dist/cli/installer.js.map +1 -0
  34. package/dist/cli/plugin.d.ts +11 -0
  35. package/dist/cli/plugin.d.ts.map +1 -0
  36. package/dist/cli/plugin.js +598 -0
  37. package/dist/cli/plugin.js.map +1 -0
  38. package/dist/cli/terminal.d.ts +34 -0
  39. package/dist/cli/terminal.d.ts.map +1 -0
  40. package/dist/cli/terminal.js +395 -0
  41. package/dist/cli/terminal.js.map +1 -0
  42. package/dist/config/authorizer.d.ts +2 -0
  43. package/dist/config/authorizer.d.ts.map +1 -0
  44. package/dist/config/authorizer.js +38 -0
  45. package/dist/config/authorizer.js.map +1 -0
  46. package/dist/config/formats/format_js.d.ts +3 -0
  47. package/dist/config/formats/format_js.d.ts.map +1 -0
  48. package/dist/config/formats/format_js.js +10 -0
  49. package/dist/config/formats/format_js.js.map +1 -0
  50. package/dist/config/formats/format_yml.d.ts +3 -0
  51. package/dist/config/formats/format_yml.d.ts.map +1 -0
  52. package/dist/config/formats/format_yml.js +14 -0
  53. package/dist/config/formats/format_yml.js.map +1 -0
  54. package/dist/config/index.d.ts +18 -0
  55. package/dist/config/index.d.ts.map +1 -0
  56. package/dist/config/index.js +86 -0
  57. package/dist/config/index.js.map +1 -0
  58. package/dist/config/reader.d.ts +3 -0
  59. package/dist/config/reader.d.ts.map +1 -0
  60. package/dist/config/reader.js +30 -0
  61. package/dist/config/reader.js.map +1 -0
  62. package/dist/config/types.d.ts +37 -0
  63. package/dist/config/types.d.ts.map +1 -0
  64. package/dist/config/types.js +3 -0
  65. package/dist/config/types.js.map +1 -0
  66. package/dist/config/validator.d.ts +6 -0
  67. package/dist/config/validator.d.ts.map +1 -0
  68. package/dist/config/validator.js +26 -0
  69. package/dist/config/validator.js.map +1 -0
  70. package/dist/config/writer.d.ts +3 -0
  71. package/dist/config/writer.d.ts.map +1 -0
  72. package/dist/config/writer.js +25 -0
  73. package/dist/config/writer.js.map +1 -0
  74. package/dist/index.d.ts +22 -0
  75. package/dist/index.js +55 -0
  76. package/dist/index.js.map +1 -0
  77. package/dist/info/default_commands.json +28 -0
  78. package/dist/lib.d.ts +21 -0
  79. package/dist/lib.d.ts.map +1 -0
  80. package/dist/lib.js +54 -0
  81. package/dist/lib.js.map +1 -0
  82. package/dist/logger.d.ts +41 -0
  83. package/dist/logger.js +67 -0
  84. package/dist/logger.js.map +1 -0
  85. package/dist/main.d.ts +1 -0
  86. package/dist/main.d.ts.map +1 -0
  87. package/dist/main.js +284 -0
  88. package/dist/main.js.map +1 -0
  89. package/dist/omegga/auth.d.ts +6 -0
  90. package/dist/omegga/auth.d.ts.map +1 -0
  91. package/dist/omegga/auth.js +139 -0
  92. package/dist/omegga/auth.js.map +1 -0
  93. package/dist/omegga/commandInjector.d.ts +35 -0
  94. package/dist/omegga/commandInjector.d.ts.map +1 -0
  95. package/dist/omegga/commandInjector.js +234 -0
  96. package/dist/omegga/commandInjector.js.map +1 -0
  97. package/dist/omegga/index.d.ts +7 -0
  98. package/dist/omegga/index.d.ts.map +1 -0
  99. package/dist/omegga/index.js +43 -0
  100. package/dist/omegga/index.js.map +1 -0
  101. package/dist/omegga/logWrangler.d.ts +32 -0
  102. package/dist/omegga/logWrangler.d.ts.map +1 -0
  103. package/dist/omegga/logWrangler.js +279 -0
  104. package/dist/omegga/logWrangler.js.map +1 -0
  105. package/dist/omegga/matchers/auth.d.ts +9 -0
  106. package/dist/omegga/matchers/auth.d.ts.map +1 -0
  107. package/dist/omegga/matchers/auth.js +53 -0
  108. package/dist/omegga/matchers/auth.js.map +1 -0
  109. package/dist/omegga/matchers/chat.d.ts +9 -0
  110. package/dist/omegga/matchers/chat.d.ts.map +1 -0
  111. package/dist/omegga/matchers/chat.js +68 -0
  112. package/dist/omegga/matchers/chat.js.map +1 -0
  113. package/dist/omegga/matchers/command.d.ts +7 -0
  114. package/dist/omegga/matchers/command.d.ts.map +1 -0
  115. package/dist/omegga/matchers/command.js +39 -0
  116. package/dist/omegga/matchers/command.js.map +1 -0
  117. package/dist/omegga/matchers/exit.d.ts +3 -0
  118. package/dist/omegga/matchers/exit.d.ts.map +1 -0
  119. package/dist/omegga/matchers/exit.js +21 -0
  120. package/dist/omegga/matchers/exit.js.map +1 -0
  121. package/dist/omegga/matchers/index.d.ts +3 -0
  122. package/dist/omegga/matchers/index.d.ts.map +1 -0
  123. package/dist/omegga/matchers/index.js +39 -0
  124. package/dist/omegga/matchers/index.js.map +1 -0
  125. package/dist/omegga/matchers/init.d.ts +3 -0
  126. package/dist/omegga/matchers/init.d.ts.map +1 -0
  127. package/dist/omegga/matchers/init.js +26 -0
  128. package/dist/omegga/matchers/init.js.map +1 -0
  129. package/dist/omegga/matchers/interact.d.ts +4 -0
  130. package/dist/omegga/matchers/interact.js +39 -0
  131. package/dist/omegga/matchers/interact.js.map +1 -0
  132. package/dist/omegga/matchers/join.d.ts +4 -0
  133. package/dist/omegga/matchers/join.d.ts.map +1 -0
  134. package/dist/omegga/matchers/join.js +95 -0
  135. package/dist/omegga/matchers/join.js.map +1 -0
  136. package/dist/omegga/matchers/leave.d.ts +4 -0
  137. package/dist/omegga/matchers/leave.d.ts.map +1 -0
  138. package/dist/omegga/matchers/leave.js +59 -0
  139. package/dist/omegga/matchers/leave.js.map +1 -0
  140. package/dist/omegga/matchers/mapChange.d.ts +3 -0
  141. package/dist/omegga/matchers/mapChange.d.ts.map +1 -0
  142. package/dist/omegga/matchers/mapChange.js +38 -0
  143. package/dist/omegga/matchers/mapChange.js.map +1 -0
  144. package/dist/omegga/matchers/types.d.ts +5 -0
  145. package/dist/omegga/matchers/types.d.ts.map +1 -0
  146. package/dist/omegga/matchers/types.js +7 -0
  147. package/dist/omegga/matchers/types.js.map +1 -0
  148. package/dist/omegga/matchers/version.d.ts +3 -0
  149. package/dist/omegga/matchers/version.d.ts.map +1 -0
  150. package/dist/omegga/matchers/version.js +45 -0
  151. package/dist/omegga/matchers/version.js.map +1 -0
  152. package/dist/omegga/player.d.ts +71 -0
  153. package/dist/omegga/player.d.ts.map +1 -0
  154. package/dist/omegga/player.js +442 -0
  155. package/dist/omegga/player.js.map +1 -0
  156. package/dist/omegga/plugin/plugin_jsonrpc_stdio.d.ts +23 -0
  157. package/dist/omegga/plugin/plugin_jsonrpc_stdio.d.ts.map +1 -0
  158. package/dist/omegga/plugin/plugin_jsonrpc_stdio.js +441 -0
  159. package/dist/omegga/plugin/plugin_jsonrpc_stdio.js.map +1 -0
  160. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.d.ts +129 -0
  161. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.d.ts.map +1 -0
  162. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.js +260 -0
  163. package/dist/omegga/plugin/plugin_node_safe/proxyOmegga.js.map +1 -0
  164. package/dist/omegga/plugin/plugin_node_safe/worker.d.ts +1 -0
  165. package/dist/omegga/plugin/plugin_node_safe/worker.d.ts.map +1 -0
  166. package/dist/omegga/plugin/plugin_node_safe/worker.js +289 -0
  167. package/dist/omegga/plugin/plugin_node_safe/worker.js.map +1 -0
  168. package/dist/omegga/plugin/plugin_node_safe.d.ts +24 -0
  169. package/dist/omegga/plugin/plugin_node_safe.d.ts.map +1 -0
  170. package/dist/omegga/plugin/plugin_node_safe.js +397 -0
  171. package/dist/omegga/plugin/plugin_node_safe.js.map +1 -0
  172. package/dist/omegga/plugin/plugin_node_unsafe.d.ts +13 -0
  173. package/dist/omegga/plugin/plugin_node_unsafe.d.ts.map +1 -0
  174. package/dist/omegga/plugin/plugin_node_unsafe.js +178 -0
  175. package/dist/omegga/plugin/plugin_node_unsafe.js.map +1 -0
  176. package/dist/omegga/plugin.d.ts +86 -0
  177. package/dist/omegga/plugin.d.ts.map +1 -0
  178. package/dist/omegga/plugin.js +458 -0
  179. package/dist/omegga/plugin.js.map +1 -0
  180. package/dist/omegga/server.d.ts +149 -0
  181. package/dist/omegga/server.d.ts.map +1 -0
  182. package/dist/omegga/server.js +601 -0
  183. package/dist/omegga/server.js.map +1 -0
  184. package/dist/omegga/types.d.ts +48 -0
  185. package/dist/omegga/types.d.ts.map +1 -0
  186. package/dist/omegga/types.js +3 -0
  187. package/dist/omegga/types.js.map +1 -0
  188. package/dist/omegga/wrapper.d.ts +22 -0
  189. package/dist/omegga/wrapper.d.ts.map +1 -0
  190. package/dist/omegga/wrapper.js +75 -0
  191. package/dist/omegga/wrapper.js.map +1 -0
  192. package/dist/omeggaplugin.d.ts +1 -0
  193. package/dist/omeggaplugin.js +4 -0
  194. package/dist/omeggaplugin.js.map +1 -0
  195. package/dist/plugin.d.ts +781 -0
  196. package/dist/plugin.js +41 -0
  197. package/dist/plugin.js.map +1 -0
  198. package/dist/softconfig.d.ts +51 -0
  199. package/dist/softconfig.d.ts.map +1 -0
  200. package/dist/softconfig.js +82 -0
  201. package/dist/softconfig.js.map +1 -0
  202. package/dist/util/brick/checkBounds.d.ts +8 -0
  203. package/dist/util/brick/checkBounds.d.ts.map +1 -0
  204. package/dist/util/brick/checkBounds.js +22 -0
  205. package/dist/util/brick/checkBounds.js.map +1 -0
  206. package/dist/util/brick/constants.d.ts +18 -0
  207. package/dist/util/brick/constants.d.ts.map +1 -0
  208. package/dist/util/brick/constants.js +184 -0
  209. package/dist/util/brick/constants.js.map +1 -0
  210. package/dist/util/brick/getBounds.d.ts +4 -0
  211. package/dist/util/brick/getBounds.d.ts.map +1 -0
  212. package/dist/util/brick/getBounds.js +39 -0
  213. package/dist/util/brick/getBounds.js.map +1 -0
  214. package/dist/util/brick/getBrickSize.d.ts +3 -0
  215. package/dist/util/brick/getBrickSize.d.ts.map +1 -0
  216. package/dist/util/brick/getBrickSize.js +12 -0
  217. package/dist/util/brick/getBrickSize.js.map +1 -0
  218. package/dist/util/brick/getScaleAxis.d.ts +3 -0
  219. package/dist/util/brick/getScaleAxis.d.ts.map +1 -0
  220. package/dist/util/brick/getScaleAxis.js +38 -0
  221. package/dist/util/brick/getScaleAxis.js.map +1 -0
  222. package/dist/util/brick/index.d.ts +13 -0
  223. package/dist/util/brick/index.d.ts.map +1 -0
  224. package/dist/util/brick/index.js +29 -0
  225. package/dist/util/brick/index.js.map +1 -0
  226. package/dist/util/brick/rotate.d.ts +17 -0
  227. package/dist/util/brick/rotate.d.ts.map +1 -0
  228. package/dist/util/brick/rotate.js +38 -0
  229. package/dist/util/brick/rotate.js.map +1 -0
  230. package/dist/util/brick/setOwnership.d.ts +12 -0
  231. package/dist/util/brick/setOwnership.d.ts.map +1 -0
  232. package/dist/util/brick/setOwnership.js +21 -0
  233. package/dist/util/brick/setOwnership.js.map +1 -0
  234. package/dist/util/chat.d.ts +23 -0
  235. package/dist/util/chat.d.ts.map +1 -0
  236. package/dist/util/chat.js +50 -0
  237. package/dist/util/chat.js.map +1 -0
  238. package/dist/util/color.d.ts +13 -0
  239. package/dist/util/color.d.ts.map +1 -0
  240. package/dist/util/color.js +130 -0
  241. package/dist/util/color.js.map +1 -0
  242. package/dist/util/file.d.ts +5 -0
  243. package/dist/util/file.d.ts.map +1 -0
  244. package/dist/util/file.js +114 -0
  245. package/dist/util/file.js.map +1 -0
  246. package/dist/util/index.d.ts +162 -0
  247. package/dist/util/index.d.ts.map +1 -0
  248. package/dist/util/index.js +92 -0
  249. package/dist/util/index.js.map +1 -0
  250. package/dist/util/map.d.ts +6 -0
  251. package/dist/util/map.d.ts.map +1 -0
  252. package/dist/util/map.js +26 -0
  253. package/dist/util/map.js.map +1 -0
  254. package/dist/util/pattern.d.ts +1 -0
  255. package/dist/util/pattern.d.ts.map +1 -0
  256. package/dist/util/pattern.js +11 -0
  257. package/dist/util/pattern.js.map +1 -0
  258. package/dist/util/time.d.ts +4 -0
  259. package/dist/util/time.d.ts.map +1 -0
  260. package/dist/util/time.js +41 -0
  261. package/dist/util/time.js.map +1 -0
  262. package/dist/util/uuid.d.ts +2 -0
  263. package/dist/util/uuid.d.ts.map +1 -0
  264. package/dist/util/uuid.js +8 -0
  265. package/dist/util/uuid.js.map +1 -0
  266. package/dist/util/wsl.d.ts +1 -0
  267. package/dist/util/wsl.d.ts.map +1 -0
  268. package/dist/util/wsl.js +14 -0
  269. package/dist/util/wsl.js.map +1 -0
  270. package/dist/webserver/backend/api.d.ts +3 -0
  271. package/dist/webserver/backend/api.d.ts.map +1 -0
  272. package/dist/webserver/backend/api.js +685 -0
  273. package/dist/webserver/backend/api.js.map +1 -0
  274. package/dist/webserver/backend/calendar.d.ts +5 -0
  275. package/dist/webserver/backend/calendar.d.ts.map +1 -0
  276. package/dist/webserver/backend/calendar.js +21 -0
  277. package/dist/webserver/backend/calendar.js.map +1 -0
  278. package/dist/webserver/backend/database.d.ts +149 -0
  279. package/dist/webserver/backend/database.d.ts.map +1 -0
  280. package/dist/webserver/backend/database.js +575 -0
  281. package/dist/webserver/backend/database.js.map +1 -0
  282. package/dist/webserver/backend/index.d.ts +31 -0
  283. package/dist/webserver/backend/index.d.ts.map +1 -0
  284. package/dist/webserver/backend/index.js +189 -0
  285. package/dist/webserver/backend/index.js.map +1 -0
  286. package/dist/webserver/backend/metrics.d.ts +3 -0
  287. package/dist/webserver/backend/metrics.d.ts.map +1 -0
  288. package/dist/webserver/backend/metrics.js +203 -0
  289. package/dist/webserver/backend/metrics.js.map +1 -0
  290. package/dist/webserver/backend/types.d.ts +115 -0
  291. package/dist/webserver/backend/types.d.ts.map +1 -0
  292. package/dist/webserver/backend/types.js +3 -0
  293. package/dist/webserver/backend/types.js.map +1 -0
  294. package/dist/webserver/backend/util.d.ts +2 -0
  295. package/dist/webserver/backend/util.d.ts.map +1 -0
  296. package/dist/webserver/backend/util.js +78 -0
  297. package/dist/webserver/backend/util.js.map +1 -0
  298. package/dist/webserver/index.d.ts +2 -0
  299. package/dist/webserver/index.d.ts.map +1 -0
  300. package/dist/webserver/index.js +9 -0
  301. package/dist/webserver/index.js.map +1 -0
  302. package/{src/webserver/frontend → frontend}/app.html +0 -0
  303. package/{src/webserver/frontend → frontend}/assets/fonts/GlacialIndifferenceBold.ttf +0 -0
  304. package/{src/webserver/frontend → frontend}/assets/fonts/GlacialIndifferenceItalic.otf +0 -0
  305. package/{src/webserver/frontend → frontend}/assets/fonts/GlacialIndifferenceMedium.otf +0 -0
  306. package/{src/webserver/frontend → frontend}/assets/fonts/GlacialIndifferenceRegular.ttf +0 -0
  307. package/{src/webserver/frontend → frontend}/assets/fonts/RobotoBold.ttf +0 -0
  308. package/{src/webserver/frontend → frontend}/assets/fonts/RobotoItalic.ttf +0 -0
  309. package/{src/webserver/frontend → frontend}/assets/fonts/RobotoRegular.ttf +0 -0
  310. package/{src/webserver/frontend → frontend}/assets/img/auth_bg.webp +0 -0
  311. package/{src/webserver/frontend → frontend}/assets/img/dark_bg.webp +0 -0
  312. package/{src/webserver/frontend → frontend}/assets/img/turkey.webp +0 -0
  313. package/{src/webserver/frontend → frontend}/auth.html +0 -0
  314. package/index.js +10 -2
  315. package/package.json +44 -16
  316. package/public/app.bundle.js +537 -73
  317. package/public/app.bundle.js.map +1 -1
  318. package/public/app.css +727 -2
  319. package/public/app.css.map +1 -1
  320. package/public/auth.bundle.js +18 -18
  321. package/public/auth.bundle.js.map +1 -1
  322. package/public/auth.css +364 -2
  323. package/public/auth.css.map +1 -1
  324. package/templates/rpc/README.md +29 -0
  325. package/templates/rpc/doc.json +7 -0
  326. package/templates/rpc/omegga_plugin +0 -0
  327. package/templates/rpc/plugin.json +4 -0
  328. package/templates/rpc/setup.sh +3 -0
  329. package/templates/safe/README.md +29 -0
  330. package/templates/safe/access.json +1 -0
  331. package/templates/safe/doc.json +7 -0
  332. package/templates/safe/omegga.plugin.js +20 -0
  333. package/templates/safe/plugin.json +4 -0
  334. package/templates/safe/setup.sh +4 -0
  335. package/templates/safe-ts/.gitignore.rename +3 -0
  336. package/templates/safe-ts/README.md +29 -0
  337. package/templates/safe-ts/access.json +1 -0
  338. package/templates/safe-ts/doc.json +7 -0
  339. package/templates/safe-ts/omegga.d.ts +1311 -0
  340. package/templates/safe-ts/omegga.plugin.ts +29 -0
  341. package/templates/safe-ts/plugin.json +4 -0
  342. package/templates/safe-ts/setup.sh +4 -0
  343. package/templates/safe-ts/tsconfig.json +10 -0
  344. package/templates/unsafe/README.md +29 -0
  345. package/templates/unsafe/doc.json +7 -0
  346. package/templates/unsafe/omegga.main.js +15 -0
  347. package/templates/unsafe/plugin.json +4 -0
  348. package/templates/unsafe/setup.sh +4 -0
  349. package/.babelrc.json +0 -5
  350. package/.github/workflows/lint.yml +0 -26
  351. package/.prettierrc +0 -7
  352. package/.vscode/extensions.json +0 -5
  353. package/src/OMEGGA_LEGACY_INSTALL +0 -44
  354. package/src/brickadia/config.js +0 -42
  355. package/src/brickadia/server.js +0 -227
  356. package/src/cli/auth.js +0 -104
  357. package/src/cli/config.js +0 -77
  358. package/src/cli/index.js +0 -6
  359. package/src/cli/installer.js +0 -65
  360. package/src/cli/plugin.js +0 -575
  361. package/src/cli/terminal.js +0 -466
  362. package/src/config/authorizer.js +0 -37
  363. package/src/config/formats/format_js.js +0 -6
  364. package/src/config/formats/format_yml.js +0 -8
  365. package/src/config/index.js +0 -81
  366. package/src/config/reader.js +0 -27
  367. package/src/config/validator.js +0 -32
  368. package/src/config/writer.js +0 -20
  369. package/src/info/default_commands.json +0 -26
  370. package/src/lib.js +0 -23
  371. package/src/main.js +0 -332
  372. package/src/omegga/auth.js +0 -138
  373. package/src/omegga/commandInjector.js +0 -228
  374. package/src/omegga/index.js +0 -22
  375. package/src/omegga/logWrangler.js +0 -323
  376. package/src/omegga/matchers/auth.js +0 -49
  377. package/src/omegga/matchers/chat.js +0 -73
  378. package/src/omegga/matchers/command.js +0 -39
  379. package/src/omegga/matchers/exit.js +0 -19
  380. package/src/omegga/matchers/init.js +0 -23
  381. package/src/omegga/matchers/join.js +0 -115
  382. package/src/omegga/matchers/leave.js +0 -58
  383. package/src/omegga/matchers/mapChange.js +0 -37
  384. package/src/omegga/matchers/version.js +0 -45
  385. package/src/omegga/player.js +0 -585
  386. package/src/omegga/plugin/plugin_jsonrpc_stdio.js +0 -526
  387. package/src/omegga/plugin/plugin_node_safe/proxyOmegga.js +0 -117
  388. package/src/omegga/plugin/plugin_node_safe/worker.js +0 -238
  389. package/src/omegga/plugin/plugin_node_safe.js +0 -473
  390. package/src/omegga/plugin/plugin_node_unsafe.js +0 -177
  391. package/src/omegga/plugin.js +0 -565
  392. package/src/omegga/server.js +0 -658
  393. package/src/omegga/wrapper.js +0 -62
  394. package/src/softconfig.js +0 -64
  395. package/src/util/brick/checkBounds.js +0 -22
  396. package/src/util/brick/constants.js +0 -185
  397. package/src/util/brick/getBounds.js +0 -36
  398. package/src/util/brick/getBrickSize.js +0 -9
  399. package/src/util/brick/getScaleAxis.js +0 -31
  400. package/src/util/brick/index.js +0 -9
  401. package/src/util/brick/rotate.js +0 -43
  402. package/src/util/brick/setOwnership.js +0 -20
  403. package/src/util/chat.js +0 -28
  404. package/src/util/color.js +0 -143
  405. package/src/util/file.js +0 -119
  406. package/src/util/index.js +0 -28
  407. package/src/util/map.js +0 -28
  408. package/src/util/pattern.js +0 -14
  409. package/src/util/time.js +0 -46
  410. package/src/util/uuid.js +0 -8
  411. package/src/util/wsl.js +0 -9
  412. package/src/webserver/backend/api.js +0 -795
  413. package/src/webserver/backend/calendar.js +0 -15
  414. package/src/webserver/backend/database.js +0 -725
  415. package/src/webserver/backend/index.js +0 -206
  416. package/src/webserver/backend/metrics.js +0 -148
  417. package/src/webserver/backend/util.js +0 -75
  418. package/src/webserver/frontend/.eslintrc.yml +0 -26
  419. package/src/webserver/frontend/app.js +0 -78
  420. package/src/webserver/frontend/auth.js +0 -16
  421. package/src/webserver/frontend/components/Background.vue +0 -83
  422. package/src/webserver/frontend/components/Button.vue +0 -105
  423. package/src/webserver/frontend/components/ChatEntry.vue +0 -107
  424. package/src/webserver/frontend/components/ChatTime.vue +0 -40
  425. package/src/webserver/frontend/components/Dimmer.vue +0 -43
  426. package/src/webserver/frontend/components/Dropdown.vue +0 -145
  427. package/src/webserver/frontend/components/Footer.vue +0 -29
  428. package/src/webserver/frontend/components/Header.vue +0 -27
  429. package/src/webserver/frontend/components/InfiniteScroll.vue +0 -51
  430. package/src/webserver/frontend/components/Input.vue +0 -93
  431. package/src/webserver/frontend/components/ListInput.vue +0 -105
  432. package/src/webserver/frontend/components/Loader.vue +0 -98
  433. package/src/webserver/frontend/components/MainMenuButton.vue +0 -83
  434. package/src/webserver/frontend/components/Modal.vue +0 -44
  435. package/src/webserver/frontend/components/NavBar.vue +0 -24
  436. package/src/webserver/frontend/components/PlayerDropdown.vue +0 -210
  437. package/src/webserver/frontend/components/PopoutContent.vue +0 -32
  438. package/src/webserver/frontend/components/RoleDropdown.vue +0 -157
  439. package/src/webserver/frontend/components/Scroll.vue +0 -33
  440. package/src/webserver/frontend/components/Toggle.vue +0 -91
  441. package/src/webserver/frontend/components/index.js +0 -33
  442. package/src/webserver/frontend/css/font.scss +0 -53
  443. package/src/webserver/frontend/css/mixins.scss +0 -49
  444. package/src/webserver/frontend/css/style.scss +0 -166
  445. package/src/webserver/frontend/css/theme.scss +0 -64
  446. package/src/webserver/frontend/partials/NavHeader.vue +0 -55
  447. package/src/webserver/frontend/partials/Page.vue +0 -40
  448. package/src/webserver/frontend/partials/PageContent.vue +0 -31
  449. package/src/webserver/frontend/partials/SideNav.vue +0 -115
  450. package/src/webserver/frontend/partials/index.js +0 -4
  451. package/src/webserver/frontend/router.js +0 -83
  452. package/src/webserver/frontend/views/Auth.vue +0 -190
  453. package/src/webserver/frontend/views/History.vue +0 -462
  454. package/src/webserver/frontend/views/Home.vue +0 -251
  455. package/src/webserver/frontend/views/Main.vue +0 -69
  456. package/src/webserver/frontend/views/NotFound.vue +0 -10
  457. package/src/webserver/frontend/views/Players.vue +0 -425
  458. package/src/webserver/frontend/views/PlayersInspector.vue +0 -538
  459. package/src/webserver/frontend/views/Plugins.vue +0 -217
  460. package/src/webserver/frontend/views/PluginsInspector.vue +0 -418
  461. package/src/webserver/frontend/views/Server.vue +0 -167
  462. package/src/webserver/frontend/views/Users.vue +0 -538
  463. package/src/webserver/frontend/widgets/Chat.vue +0 -124
  464. package/src/webserver/frontend/widgets/Status.vue +0 -91
  465. package/src/webserver/frontend/widgets/index.js +0 -2
  466. package/src/webserver/frontend/widgets/tooltip.js +0 -108
  467. package/src/webserver/index.js +0 -4
package/dist/plugin.js ADDED
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.OmeggaPlugin = exports._OMEGGA_UTILS_IMPORT = exports.constants = exports.utils = exports.write = exports.read = void 0;
21
+ const _util_1 = __importDefault(require("./util"));
22
+ const brs_js_1 = __importDefault(require("brs-js"));
23
+ // brs-js has trouble exporting these for some reason
24
+ exports.read = brs_js_1.default.read;
25
+ exports.write = brs_js_1.default.write;
26
+ exports.utils = brs_js_1.default.utils;
27
+ exports.constants = brs_js_1.default.constants;
28
+ exports._OMEGGA_UTILS_IMPORT = _util_1.default;
29
+ __exportStar(require("./brickadia/types"), exports);
30
+ __exportStar(require("./omegga/types"), exports);
31
+ /** An omegga plugin */
32
+ class OmeggaPlugin {
33
+ constructor(omegga, config, store) {
34
+ this.omegga = omegga;
35
+ this.config = config;
36
+ this.store = store;
37
+ }
38
+ }
39
+ exports.default = OmeggaPlugin;
40
+ exports.OmeggaPlugin = OmeggaPlugin;
41
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAaA,mDAAyB;AACzB,oDAA8D;AAE9D,qDAAqD;AACxC,QAAA,IAAI,GAAG,gBAAG,CAAC,IAAI,CAAC;AAChB,QAAA,KAAK,GAAG,gBAAG,CAAC,KAAK,CAAC;AAClB,QAAA,KAAK,GAAG,gBAAG,CAAC,KAAK,CAAC;AAClB,QAAA,SAAS,GAAG,gBAAG,CAAC,SAAS,CAAC;AAE1B,QAAA,oBAAoB,GAAG,eAAI,CAAC;AAOzC,oDAAiC;AACjC,iDAA8B;AAsrB9B,uBAAuB;AACvB,MAA8B,YAAY;IAQxC,YACE,MAAkB,EAClB,MAA4B,EAC5B,KAA2B;QAE3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CAkBF;AAlCD,+BAkCC;AAxtBQ,oCAAY"}
@@ -0,0 +1,51 @@
1
+ export declare const PROJECT_NAME = "omegga";
2
+ export declare const CONFIG_HOME: string;
3
+ export declare const DEFAULT_PORT = 8080;
4
+ export declare const CONFIG_FILENAMES: string[];
5
+ export declare const BRICKADIA_INSTALLS: string;
6
+ export declare const LOCAL_LAUNCHER: string;
7
+ export declare const CONFIG_AUTH_DIR = "Auth";
8
+ export declare const BRICKADIA_AUTH_FILES: string[];
9
+ export declare const TEMP_DIR_NAME = ".omegga-temp-data";
10
+ export declare const DATA_PATH = "./data";
11
+ export declare const PLUGIN_PATH = "./plugins";
12
+ export declare const PLUGIN_FILE = "./plugin.json";
13
+ export declare const PLUGIN_POSTINSTALL = "./setup.sh";
14
+ export declare const CHAT_STORE = "chat.db";
15
+ export declare const PLAYER_STORE = "players.db";
16
+ export declare const PLUGIN_STORE = "plugins.db";
17
+ export declare const STATUS_STORE = "status.db";
18
+ export declare const USER_STORE = "users.db";
19
+ export declare const SERVER_STORE = "store.db";
20
+ export declare const SESSION_STORE = "session.db";
21
+ export declare const WEB_CERTS_DATA = "web_certs.json";
22
+ export declare const WEB_SESSION_TOKEN = "web_session_token";
23
+ export declare const METRIC_HEARTBEAT_INTERVAL: number;
24
+ export declare const METRIC_EMPTIES_BEFORE_PAUSE = 3;
25
+ declare const _default: {
26
+ PROJECT_NAME: string;
27
+ CONFIG_HOME: string;
28
+ DEFAULT_PORT: number;
29
+ CONFIG_FILENAMES: string[];
30
+ BRICKADIA_INSTALLS: string;
31
+ LOCAL_LAUNCHER: string;
32
+ CONFIG_AUTH_DIR: string;
33
+ BRICKADIA_AUTH_FILES: string[];
34
+ TEMP_DIR_NAME: string;
35
+ DATA_PATH: string;
36
+ PLUGIN_PATH: string;
37
+ PLUGIN_FILE: string;
38
+ PLUGIN_POSTINSTALL: string;
39
+ CHAT_STORE: string;
40
+ PLAYER_STORE: string;
41
+ PLUGIN_STORE: string;
42
+ STATUS_STORE: string;
43
+ USER_STORE: string;
44
+ SERVER_STORE: string;
45
+ SESSION_STORE: string;
46
+ WEB_CERTS_DATA: string;
47
+ WEB_SESSION_TOKEN: string;
48
+ METRIC_HEARTBEAT_INTERVAL: number;
49
+ METRIC_EMPTIES_BEFORE_PAUSE: number;
50
+ };
51
+ export default _default;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"softconfig.d.ts","sourceRoot":"","sources":["../src/softconfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,WAAW,QAAqD,CAAC;AAE9E,eAAO,MAAM,YAAY,OAAO,CAAC;AAIjC,eAAO,MAAM,gBAAgB,UAK5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAG9B,CAAC;AAEF,eAAO,MAAM,cAAc,QAG1B,CAAC;AAGF,eAAO,MAAM,eAAe,SAAS,CAAC;AAEtC,eAAO,MAAM,oBAAoB,UAIhC,CAAC;AAGF,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAGjD,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,WAAW,cAAc,CAAC;AAGvC,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAE3C,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAG/C,eAAO,MAAM,UAAU,YAAY,CAAC;AACpC,eAAO,MAAM,YAAY,eAAe,CAAC;AACzC,eAAO,MAAM,YAAY,eAAe,CAAC;AACzC,eAAO,MAAM,YAAY,cAAc,CAAC;AACxC,eAAO,MAAM,UAAU,aAAa,CAAC;AACrC,eAAO,MAAM,YAAY,aAAa,CAAC;AACvC,eAAO,MAAM,aAAa,eAAe,CAAC;AAG1C,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAGrD,eAAO,MAAM,yBAAyB,QAAY,CAAC;AAEnD,eAAO,MAAM,2BAA2B,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAG7C,wBAyBE"}
@@ -0,0 +1,82 @@
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.METRIC_EMPTIES_BEFORE_PAUSE = exports.METRIC_HEARTBEAT_INTERVAL = exports.WEB_SESSION_TOKEN = exports.WEB_CERTS_DATA = exports.SESSION_STORE = exports.SERVER_STORE = exports.USER_STORE = exports.STATUS_STORE = exports.PLUGIN_STORE = exports.PLAYER_STORE = exports.CHAT_STORE = exports.PLUGIN_POSTINSTALL = exports.PLUGIN_FILE = exports.PLUGIN_PATH = exports.DATA_PATH = exports.TEMP_DIR_NAME = exports.BRICKADIA_AUTH_FILES = exports.CONFIG_AUTH_DIR = exports.LOCAL_LAUNCHER = exports.BRICKADIA_INSTALLS = exports.CONFIG_FILENAMES = exports.DEFAULT_PORT = exports.CONFIG_HOME = exports.PROJECT_NAME = void 0;
7
+ const os_1 = __importDefault(require("os"));
8
+ const path_1 = __importDefault(require("path"));
9
+ // home directory for omegga config
10
+ exports.PROJECT_NAME = 'omegga';
11
+ exports.CONFIG_HOME = path_1.default.join(os_1.default.homedir(), '.config/' + exports.PROJECT_NAME);
12
+ exports.DEFAULT_PORT = 8080;
13
+ // filenames that omegga searches for
14
+ // extensions are added based on the available config formats
15
+ exports.CONFIG_FILENAMES = [
16
+ 'omegga-config',
17
+ 'omegga',
18
+ '.omegga-config',
19
+ '.omegga',
20
+ ];
21
+ exports.BRICKADIA_INSTALLS = path_1.default.join(os_1.default.homedir(), '.local/share/brickadia-launcher/brickadia-installs');
22
+ exports.LOCAL_LAUNCHER = path_1.default.join(exports.CONFIG_HOME, 'launcher/brickadia-launcher/main-brickadia-launcher');
23
+ // path to auth files
24
+ exports.CONFIG_AUTH_DIR = 'Auth';
25
+ // files in Brickadia/Saved/Auth
26
+ exports.BRICKADIA_AUTH_FILES = [
27
+ 'OfflinePayload.bin',
28
+ 'OfflineSignature.bin',
29
+ 'SessionToken.bin',
30
+ ];
31
+ // temporary install for generating auth files
32
+ exports.TEMP_DIR_NAME = '.omegga-temp-data';
33
+ // path to certain info folders
34
+ exports.DATA_PATH = './data';
35
+ exports.PLUGIN_PATH = './plugins';
36
+ // plugin data
37
+ exports.PLUGIN_FILE = './plugin.json';
38
+ // post install file
39
+ exports.PLUGIN_POSTINSTALL = './setup.sh';
40
+ // databases
41
+ exports.CHAT_STORE = 'chat.db';
42
+ exports.PLAYER_STORE = 'players.db';
43
+ exports.PLUGIN_STORE = 'plugins.db';
44
+ exports.STATUS_STORE = 'status.db';
45
+ exports.USER_STORE = 'users.db';
46
+ exports.SERVER_STORE = 'store.db';
47
+ exports.SESSION_STORE = 'session.db';
48
+ // website config
49
+ exports.WEB_CERTS_DATA = 'web_certs.json';
50
+ exports.WEB_SESSION_TOKEN = 'web_session_token';
51
+ // how often server status is requested in a heartbeat
52
+ exports.METRIC_HEARTBEAT_INTERVAL = 60 * 1000;
53
+ // the number of empty server statuses before metric logging is paused
54
+ exports.METRIC_EMPTIES_BEFORE_PAUSE = 3;
55
+ // rexport as default
56
+ exports.default = {
57
+ PROJECT_NAME: exports.PROJECT_NAME,
58
+ CONFIG_HOME: exports.CONFIG_HOME,
59
+ DEFAULT_PORT: exports.DEFAULT_PORT,
60
+ CONFIG_FILENAMES: exports.CONFIG_FILENAMES,
61
+ BRICKADIA_INSTALLS: exports.BRICKADIA_INSTALLS,
62
+ LOCAL_LAUNCHER: exports.LOCAL_LAUNCHER,
63
+ CONFIG_AUTH_DIR: exports.CONFIG_AUTH_DIR,
64
+ BRICKADIA_AUTH_FILES: exports.BRICKADIA_AUTH_FILES,
65
+ TEMP_DIR_NAME: exports.TEMP_DIR_NAME,
66
+ DATA_PATH: exports.DATA_PATH,
67
+ PLUGIN_PATH: exports.PLUGIN_PATH,
68
+ PLUGIN_FILE: exports.PLUGIN_FILE,
69
+ PLUGIN_POSTINSTALL: exports.PLUGIN_POSTINSTALL,
70
+ CHAT_STORE: exports.CHAT_STORE,
71
+ PLAYER_STORE: exports.PLAYER_STORE,
72
+ PLUGIN_STORE: exports.PLUGIN_STORE,
73
+ STATUS_STORE: exports.STATUS_STORE,
74
+ USER_STORE: exports.USER_STORE,
75
+ SERVER_STORE: exports.SERVER_STORE,
76
+ SESSION_STORE: exports.SESSION_STORE,
77
+ WEB_CERTS_DATA: exports.WEB_CERTS_DATA,
78
+ WEB_SESSION_TOKEN: exports.WEB_SESSION_TOKEN,
79
+ METRIC_HEARTBEAT_INTERVAL: exports.METRIC_HEARTBEAT_INTERVAL,
80
+ METRIC_EMPTIES_BEFORE_PAUSE: exports.METRIC_EMPTIES_BEFORE_PAUSE,
81
+ };
82
+ //# sourceMappingURL=softconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"softconfig.js","sourceRoot":"","sources":["../src/softconfig.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,mCAAmC;AACtB,QAAA,YAAY,GAAG,QAAQ,CAAC;AACxB,QAAA,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,UAAU,GAAG,oBAAY,CAAC,CAAC;AAEjE,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,qCAAqC;AACrC,6DAA6D;AAChD,QAAA,gBAAgB,GAAG;IAC9B,eAAe;IACf,QAAQ;IACR,gBAAgB;IAChB,SAAS;CACV,CAAC;AAEW,QAAA,kBAAkB,GAAG,cAAI,CAAC,IAAI,CACzC,YAAE,CAAC,OAAO,EAAE,EACZ,oDAAoD,CACrD,CAAC;AAEW,QAAA,cAAc,GAAG,cAAI,CAAC,IAAI,CACrC,mBAAW,EACX,qDAAqD,CACtD,CAAC;AAEF,qBAAqB;AACR,QAAA,eAAe,GAAG,MAAM,CAAC;AACtC,gCAAgC;AACnB,QAAA,oBAAoB,GAAG;IAClC,oBAAoB;IACpB,sBAAsB;IACtB,kBAAkB;CACnB,CAAC;AAEF,8CAA8C;AACjC,QAAA,aAAa,GAAG,mBAAmB,CAAC;AAEjD,+BAA+B;AAClB,QAAA,SAAS,GAAG,QAAQ,CAAC;AACrB,QAAA,WAAW,GAAG,WAAW,CAAC;AAEvC,cAAc;AACD,QAAA,WAAW,GAAG,eAAe,CAAC;AAC3C,oBAAoB;AACP,QAAA,kBAAkB,GAAG,YAAY,CAAC;AAE/C,YAAY;AACC,QAAA,UAAU,GAAG,SAAS,CAAC;AACvB,QAAA,YAAY,GAAG,YAAY,CAAC;AAC5B,QAAA,YAAY,GAAG,YAAY,CAAC;AAC5B,QAAA,YAAY,GAAG,WAAW,CAAC;AAC3B,QAAA,UAAU,GAAG,UAAU,CAAC;AACxB,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,aAAa,GAAG,YAAY,CAAC;AAE1C,iBAAiB;AACJ,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,sDAAsD;AACzC,QAAA,yBAAyB,GAAG,EAAE,GAAG,IAAI,CAAC;AACnD,sEAAsE;AACzD,QAAA,2BAA2B,GAAG,CAAC,CAAC;AAE7C,qBAAqB;AACrB,kBAAe;IACb,YAAY,EAAZ,oBAAY;IACZ,WAAW,EAAX,mBAAW;IACX,YAAY,EAAZ,oBAAY;IACZ,gBAAgB,EAAhB,wBAAgB;IAChB,kBAAkB,EAAlB,0BAAkB;IAClB,cAAc,EAAd,sBAAc;IACd,eAAe,EAAf,uBAAe;IACf,oBAAoB,EAApB,4BAAoB;IACpB,aAAa,EAAb,qBAAa;IACb,SAAS,EAAT,iBAAS;IACT,WAAW,EAAX,mBAAW;IACX,WAAW,EAAX,mBAAW;IACX,kBAAkB,EAAlB,0BAAkB;IAClB,UAAU,EAAV,kBAAU;IACV,YAAY,EAAZ,oBAAY;IACZ,YAAY,EAAZ,oBAAY;IACZ,YAAY,EAAZ,oBAAY;IACZ,UAAU,EAAV,kBAAU;IACV,YAAY,EAAZ,oBAAY;IACZ,aAAa,EAAb,qBAAa;IACb,cAAc,EAAd,sBAAc;IACd,iBAAiB,EAAjB,yBAAiB;IACjB,yBAAyB,EAAzB,iCAAyB;IACzB,2BAA2B,EAA3B,mCAA2B;CAC5B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Brick, Vector } from 'brs-js';
2
+ export interface IBrickBounds {
3
+ minBound: Vector;
4
+ maxBound: Vector;
5
+ center: Vector;
6
+ }
7
+ export declare function checkBounds(brick: Brick, brick_assets: string[], bounds: IBrickBounds): boolean;
8
+ export default checkBounds;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkBounds.d.ts","sourceRoot":"","sources":["../../../src/util/brick/checkBounds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAK/B,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAiBD,wBAAgB,WAAW,CACzB,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,MAAM,EAAE,EACtB,MAAM,EAAE,YAAY,WAOrB;AACD,eAAe,WAAW,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkBounds = void 0;
4
+ const getScaleAxis_1 = require("./getScaleAxis");
5
+ const getBrickSize_1 = require("./getBrickSize");
6
+ // check if the brick is in bounds for 1 axis
7
+ function checkBound(brick, brick_assets, bounds, axis) {
8
+ const scaleAxis = (0, getScaleAxis_1.getScaleAxis)(brick, axis);
9
+ const size = (0, getBrickSize_1.getBrickSize)(brick, brick_assets);
10
+ const upper = brick.position[axis] + size[scaleAxis];
11
+ const lower = brick.position[axis] - size[scaleAxis];
12
+ return upper <= bounds.maxBound[axis] && lower >= bounds.minBound[axis];
13
+ }
14
+ // check if the brick is in bounds
15
+ function checkBounds(brick, brick_assets, bounds) {
16
+ return (checkBound(brick, brick_assets, bounds, 0) &&
17
+ checkBound(brick, brick_assets, bounds, 1) &&
18
+ checkBound(brick, brick_assets, bounds, 2));
19
+ }
20
+ exports.checkBounds = checkBounds;
21
+ exports.default = checkBounds;
22
+ //# sourceMappingURL=checkBounds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkBounds.js","sourceRoot":"","sources":["../../../src/util/brick/checkBounds.ts"],"names":[],"mappings":";;;AAEA,iDAA8C;AAC9C,iDAA8C;AAQ9C,6CAA6C;AAC7C,SAAS,UAAU,CACjB,KAAY,EACZ,YAAsB,EACtB,MAAoB,EACpB,IAAY;IAEZ,MAAM,SAAS,GAAG,IAAA,2BAAY,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAA,2BAAY,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,OAAO,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC1E,CAAC;AAED,kCAAkC;AAClC,SAAgB,WAAW,CACzB,KAAY,EACZ,YAAsB,EACtB,MAAoB;IAEpB,OAAO,CACL,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAC3C,CAAC;AACJ,CAAC;AAVD,kCAUC;AACD,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,18 @@
1
+ declare const rotationTable: number[];
2
+ declare const translationTable: (([x, y, z]: [number, number, number]) => [
3
+ number,
4
+ number,
5
+ number
6
+ ])[];
7
+ declare const orientationMap: Record<string, [number, number]>;
8
+ declare const DEFAULT_MATERIALS: string[];
9
+ declare const brickSizeMap: Record<string, [number, number, number]>;
10
+ export { rotationTable, translationTable, orientationMap, DEFAULT_MATERIALS, brickSizeMap, };
11
+ declare const _default: {
12
+ rotationTable: number[];
13
+ translationTable: (([x, y, z]: [number, number, number]) => [number, number, number])[];
14
+ orientationMap: Record<string, [number, number]>;
15
+ DEFAULT_MATERIALS: string[];
16
+ brickSizeMap: Record<string, [number, number, number]>;
17
+ };
18
+ export default _default;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/util/brick/constants.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,aAAa,UA4BlB,CAAC;AAEF,QAAA,MAAM,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK;IAChE,MAAM;IACN,MAAM;IACN,MAAM;CACP,CAAC,EA8BD,CAAC;AAEF,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAyBpD,CAAC;AAEF,QAAA,MAAM,iBAAiB,UAStB,CAAC;AAEF,QAAA,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CA4E1D,CAAC;AAEF,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,YAAY,GACb,CAAC;;;;;;;;AAEF,wBAME"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.brickSizeMap = exports.DEFAULT_MATERIALS = exports.orientationMap = exports.translationTable = exports.rotationTable = void 0;
4
+ const rotationTable = [
5
+ 16, 15, 22, 9, 18, 11, 20, 13, 17, 3, 21, 5, 19, 7, 23, 1, 0, 8, 4, 12, 6, 10,
6
+ 2, 14, 17, 12, 23, 10, 19, 8, 21, 14, 18, 0, 22, 6, 16, 4, 20, 2, 1, 9, 5, 13,
7
+ 7, 11, 3, 15, 18, 13, 20, 11, 16, 9, 22, 15, 19, 1, 23, 7, 17, 5, 21, 3, 2,
8
+ 10, 6, 14, 4, 8, 0, 12, 19, 14, 21, 8, 17, 10, 23, 12, 16, 2, 20, 4, 18, 6,
9
+ 22, 0, 3, 11, 7, 15, 5, 9, 1, 13, 22, 9, 16, 15, 20, 13, 18, 11, 21, 5, 17, 3,
10
+ 23, 1, 19, 7, 4, 12, 0, 8, 2, 14, 6, 10, 23, 10, 17, 12, 21, 14, 19, 8, 22, 6,
11
+ 18, 0, 20, 2, 16, 4, 5, 13, 1, 9, 3, 15, 7, 11, 20, 11, 18, 13, 22, 15, 16, 9,
12
+ 23, 7, 19, 1, 21, 3, 17, 5, 6, 14, 2, 10, 0, 12, 4, 8, 21, 8, 19, 14, 23, 12,
13
+ 17, 10, 20, 4, 16, 2, 22, 0, 18, 6, 7, 15, 3, 11, 1, 13, 5, 9, 15, 22, 9, 16,
14
+ 11, 20, 13, 18, 3, 21, 5, 17, 7, 23, 1, 19, 8, 4, 12, 0, 10, 2, 14, 6, 12, 23,
15
+ 10, 17, 8, 21, 14, 19, 0, 22, 6, 18, 4, 20, 2, 16, 9, 5, 13, 1, 11, 3, 15, 7,
16
+ 13, 20, 11, 18, 9, 22, 15, 16, 1, 23, 7, 19, 5, 21, 3, 17, 10, 6, 14, 2, 8, 0,
17
+ 12, 4, 14, 21, 8, 19, 10, 23, 12, 17, 2, 20, 4, 16, 6, 22, 0, 18, 11, 7, 15,
18
+ 3, 9, 1, 13, 5, 9, 16, 15, 22, 13, 18, 11, 20, 5, 17, 3, 21, 1, 19, 7, 23, 12,
19
+ 0, 8, 4, 14, 6, 10, 2, 10, 17, 12, 23, 14, 19, 8, 21, 6, 18, 0, 22, 2, 16, 4,
20
+ 20, 13, 1, 9, 5, 15, 7, 11, 3, 11, 18, 13, 20, 15, 16, 9, 22, 7, 19, 1, 23, 3,
21
+ 17, 5, 21, 14, 2, 10, 6, 12, 4, 8, 0, 8, 19, 14, 21, 12, 17, 10, 23, 4, 16, 2,
22
+ 20, 0, 18, 6, 22, 15, 3, 11, 7, 13, 5, 9, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
23
+ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 1, 2, 3, 0, 5, 6, 7, 4, 9,
24
+ 10, 11, 8, 13, 14, 15, 12, 17, 18, 19, 16, 21, 22, 23, 20, 2, 3, 0, 1, 6, 7,
25
+ 4, 5, 10, 11, 8, 9, 14, 15, 12, 13, 18, 19, 16, 17, 22, 23, 20, 21, 3, 0, 1,
26
+ 2, 7, 4, 5, 6, 11, 8, 9, 10, 15, 12, 13, 14, 19, 16, 17, 18, 23, 20, 21, 22,
27
+ 6, 5, 4, 7, 2, 1, 0, 3, 14, 13, 12, 15, 10, 9, 8, 11, 20, 23, 22, 21, 16, 19,
28
+ 18, 17, 7, 6, 5, 4, 3, 2, 1, 0, 15, 14, 13, 12, 11, 10, 9, 8, 21, 20, 23, 22,
29
+ 17, 16, 19, 18, 4, 7, 6, 5, 0, 3, 2, 1, 12, 15, 14, 13, 8, 11, 10, 9, 22, 21,
30
+ 20, 23, 18, 17, 16, 19, 5, 4, 7, 6, 1, 0, 3, 2, 13, 12, 15, 14, 9, 8, 11, 10,
31
+ 23, 22, 21, 20, 19, 18, 17, 16,
32
+ ];
33
+ exports.rotationTable = rotationTable;
34
+ const translationTable = [
35
+ ([x, y, z]) => [z, -y, x],
36
+ ([x, y, z]) => [z, -x, -y],
37
+ ([x, y, z]) => [z, y, -x],
38
+ ([x, y, z]) => [z, x, y],
39
+ ([x, y, z]) => [-z, y, x],
40
+ ([x, y, z]) => [-z, x, -y],
41
+ ([x, y, z]) => [-z, -y, -x],
42
+ ([x, y, z]) => [-z, -x, y],
43
+ ([x, y, z]) => [y, z, x],
44
+ ([x, y, z]) => [x, z, -y],
45
+ ([x, y, z]) => [-y, z, -x],
46
+ ([x, y, z]) => [-x, z, y],
47
+ ([x, y, z]) => [-y, -z, x],
48
+ ([x, y, z]) => [-x, -z, -y],
49
+ ([x, y, z]) => [y, -z, -x],
50
+ ([x, y, z]) => [x, -z, y],
51
+ ([x, y, z]) => [x, y, z],
52
+ ([x, y, z]) => [-y, x, z],
53
+ ([x, y, z]) => [-x, -y, z],
54
+ ([x, y, z]) => [y, -x, z],
55
+ ([x, y, z]) => [-x, y, -z],
56
+ ([x, y, z]) => [y, x, -z],
57
+ ([x, y, z]) => [x, -y, -z],
58
+ ([x, y, z]) => [-y, -x, -z],
59
+ ];
60
+ exports.translationTable = translationTable;
61
+ const orientationMap = {
62
+ X_Positive_0: [0, 0],
63
+ X_Positive_90: [0, 1],
64
+ X_Positive_180: [0, 2],
65
+ X_Positive_270: [0, 3],
66
+ X_Negative_0: [1, 0],
67
+ X_Negative_90: [1, 1],
68
+ X_Negative_180: [1, 2],
69
+ X_Negative_270: [1, 3],
70
+ Y_Positive_0: [2, 0],
71
+ Y_Positive_90: [2, 1],
72
+ Y_Positive_180: [2, 2],
73
+ Y_Positive_270: [2, 3],
74
+ Y_Negative_0: [3, 0],
75
+ Y_Negative_90: [3, 1],
76
+ Y_Negative_180: [3, 2],
77
+ Y_Negative_270: [3, 3],
78
+ Z_Positive_0: [4, 0],
79
+ Z_Positive_90: [4, 1],
80
+ Z_Positive_180: [4, 2],
81
+ Z_Positive_270: [4, 3],
82
+ Z_Negative_0: [5, 0],
83
+ Z_Negative_90: [5, 1],
84
+ Z_Negative_180: [5, 2],
85
+ Z_Negative_270: [5, 3],
86
+ };
87
+ exports.orientationMap = orientationMap;
88
+ const DEFAULT_MATERIALS = [
89
+ 'BMC_Hidden',
90
+ 'BMC_Ghost',
91
+ 'BMC_Ghost_Fail',
92
+ 'BMC_Plastic',
93
+ 'BMC_Glass',
94
+ 'BMC_Glow',
95
+ 'BMC_Metallic',
96
+ 'BMC_Hologram',
97
+ ];
98
+ exports.DEFAULT_MATERIALS = DEFAULT_MATERIALS;
99
+ const brickSizeMap = {
100
+ B_1x1_Brick_Side: [5, 5, 6],
101
+ B_1x1_Brick_Side_Lip: [5, 5, 6],
102
+ B_1x1_Cone: [5, 5, 6],
103
+ B_1x1_Round: [5, 5, 6],
104
+ B_1x1F_Octo: [5, 5, 2],
105
+ B_1x1F_Round: [5, 5, 2],
106
+ B_1x2_Overhang: [6, 10, 5],
107
+ B_1x2f_Plate_Center: [10, 5, 2],
108
+ B_1x2f_Plate_Center_Inv: [10, 5, 2],
109
+ B_1x4_Brick_Side: [20, 5, 6],
110
+ B_1x_Octo: [5, 5, 5],
111
+ B_1x_Octo_90Deg: [5, 5, 5],
112
+ B_1x_Octo_90Deg_Inv: [5, 5, 5],
113
+ B_1x_Octo_T: [5, 5, 5],
114
+ B_1x_Octo_T_Inv: [5, 5, 5],
115
+ B_2x1_Slipper: [10, 5, 6],
116
+ B_2x2_Cone: [10, 10, 12],
117
+ B_2x2_Corner: [10, 10, 6],
118
+ B_2x2_Overhang: [6, 10, 10],
119
+ B_2x2_Round: [10, 10, 6],
120
+ B_2x2_Slipper: [10, 10, 6],
121
+ B_2x2F_Octo: [10, 10, 2],
122
+ B_2x2F_Octo_Converter: [10, 10, 2],
123
+ B_2x2F_Octo_Converter_Inv: [10, 10, 2],
124
+ B_2x2f_Plate_Center: [10, 10, 2],
125
+ B_2x2f_Plate_Center_Inv: [10, 10, 2],
126
+ B_2x2F_Round: [10, 10, 2],
127
+ B_2x4_Door_Frame: [10, 20, 36],
128
+ B_2x_Octo: [10, 10, 10],
129
+ B_2x_Octo_90Deg: [10, 10, 10],
130
+ B_2x_Octo_90Deg_Inv: [10, 10, 10],
131
+ B_2x_Octo_Cone: [10, 10, 10],
132
+ B_2x_Octo_T: [10, 10, 10],
133
+ B_2x_Octo_T_Inv: [10, 10, 10],
134
+ B_4x4_Round: [20, 20, 6],
135
+ B_8x8_Lattice_Plate: [40, 40, 2],
136
+ B_Bishop: [5, 5, 10],
137
+ B_Bone: [10, 10, 2],
138
+ B_BoneStraight: [10, 5, 2],
139
+ B_Branch: [20, 11, 2],
140
+ B_Bush: [15, 15, 16],
141
+ B_Cauldron: [10, 10, 10],
142
+ B_Chalice: [5, 5, 10],
143
+ B_CheckPoint: [20, 20, 2],
144
+ B_Coffin: [5, 20, 30],
145
+ B_Coffin_Lid: [10, 20, 30],
146
+ B_Fern: [10, 10, 2],
147
+ B_Flame: [5, 5, 10],
148
+ B_Flower: [10, 10, 2],
149
+ B_Gravestone: [10, 20, 20],
150
+ B_Handle: [5, 10, 6],
151
+ B_Hedge_1x1: [5, 5, 6],
152
+ B_Hedge_1x1_Corner: [5, 5, 6],
153
+ B_Hedge_1x2: [5, 10, 6],
154
+ B_Hedge_1x4: [5, 20, 6],
155
+ B_Inverted_Cone: [5, 5, 8],
156
+ B_Jar: [9, 9, 12],
157
+ B_King: [5, 5, 12],
158
+ B_Knight: [5, 5, 8],
159
+ B_Ladder: [12, 15, 12],
160
+ B_Pawn: [5, 5, 6],
161
+ B_Picket_Fence: [20, 5, 12],
162
+ B_Pine_Tree: [20, 20, 38],
163
+ B_Pumpkin: [10, 10, 7],
164
+ B_Pumpkin_Carved: [10, 10, 7],
165
+ B_Queen: [5, 5, 12],
166
+ B_Rook: [5, 5, 6],
167
+ B_Sausage: [10, 5, 2],
168
+ B_Small_Flower: [5, 5, 2],
169
+ B_SpawnPoint: [20, 20, 2],
170
+ B_Swirl_Plate: [5, 5, 4],
171
+ B_Turkey_Body: [15, 10, 7],
172
+ B_Turkey_Leg: [10, 5, 3],
173
+ B_Leaf_Bush: [26, 26, 20],
174
+ B_GoalPoint: [20, 20, 2],
175
+ };
176
+ exports.brickSizeMap = brickSizeMap;
177
+ exports.default = {
178
+ rotationTable,
179
+ translationTable,
180
+ orientationMap,
181
+ DEFAULT_MATERIALS,
182
+ brickSizeMap,
183
+ };
184
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/util/brick/constants.ts"],"names":[],"mappings":";;;AAAA,MAAM,aAAa,GAAG;IACpB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;IAC7E,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IAC7E,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IAC1E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC1E,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC7E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC7E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IAC5E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;IAC5E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAC7E,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC5E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC7E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;IAC3E,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAC7E,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC5E,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC7E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAC7E,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IAC7E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC7E,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC3E,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC3E,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IAC3E,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IAC5E,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IAC5E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAC5E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAC5E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;CAC/B,CAAC;AA2JA,sCAAa;AAzJf,MAAM,gBAAgB,GAIf;IACL,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAExB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1B,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAEzB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1B,C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"}
@@ -0,0 +1,4 @@
1
+ import { WriteSaveObject } from 'brs-js';
2
+ import type { IBrickBounds } from './checkBounds';
3
+ export declare function getBounds({ bricks, brick_assets }: WriteSaveObject): IBrickBounds;
4
+ export default getBounds;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBounds.d.ts","sourceRoot":"","sources":["../../../src/util/brick/getBounds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,eAAe,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAsBlD,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,eAAe,gBAqBlE;AACD,eAAe,SAAS,CAAC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBounds = void 0;
4
+ const getBrickSize_1 = require("./getBrickSize");
5
+ const getScaleAxis_1 = require("./getScaleAxis");
6
+ // compare bound to see if it is new min or max, and then replace if it is
7
+ function minMaxBound(brick, brick_assets, bounds, axis) {
8
+ const scaleAxis = (0, getScaleAxis_1.getScaleAxis)(brick, axis);
9
+ const size = (0, getBrickSize_1.getBrickSize)(brick, brick_assets);
10
+ const upper = brick.position[axis] + size[scaleAxis];
11
+ const lower = brick.position[axis] - size[scaleAxis];
12
+ if (upper > bounds.maxBound[axis] || bounds.maxBound[axis] === undefined)
13
+ bounds.maxBound[axis] = upper;
14
+ if (lower < bounds.minBound[axis] || bounds.minBound[axis] === undefined)
15
+ bounds.minBound[axis] = lower;
16
+ }
17
+ // returns bounds of the array of the brick
18
+ function getBounds({ bricks, brick_assets }) {
19
+ const bounds = {
20
+ minBound: [],
21
+ maxBound: [],
22
+ center: [],
23
+ };
24
+ bricks.forEach(brick => {
25
+ minMaxBound(brick, brick_assets, bounds, 0);
26
+ minMaxBound(brick, brick_assets, bounds, 1);
27
+ minMaxBound(brick, brick_assets, bounds, 2);
28
+ });
29
+ // calculate center from min and max bounds
30
+ bounds.center = bounds.minBound.map((min, index) => {
31
+ const max = bounds.maxBound[index];
32
+ const avg = (max + min) / 2;
33
+ return Math.round(avg);
34
+ });
35
+ return bounds;
36
+ }
37
+ exports.getBounds = getBounds;
38
+ exports.default = getBounds;
39
+ //# sourceMappingURL=getBounds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBounds.js","sourceRoot":"","sources":["../../../src/util/brick/getBounds.ts"],"names":[],"mappings":";;;AAEA,iDAA8C;AAC9C,iDAA8C;AAE9C,0EAA0E;AAC1E,SAAS,WAAW,CAClB,KAAY,EACZ,YAAsB,EACtB,MAAoB,EACpB,IAAY;IAEZ,MAAM,SAAS,GAAG,IAAA,2BAAY,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAA,2BAAY,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS;QACtE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAChC,IAAI,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS;QACtE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;AAClC,CAAC;AAED,2CAA2C;AAC3C,SAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,EAAmB;IACjE,MAAM,MAAM,GAAiB;QAC3B,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;KACgB,CAAC;IAE7B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACrB,WAAW,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5C,WAAW,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5C,WAAW,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,2CAA2C;IAC3C,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACjD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC,CAAW,CAAC;IAEb,OAAO,MAAM,CAAC;AAChB,CAAC;AArBD,8BAqBC;AACD,kBAAe,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Brick } from 'brs-js';
2
+ export declare function getBrickSize(brick: Brick, brick_assets: string[]): [number, number, number];
3
+ export default getBrickSize;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBrickSize.d.ts","sourceRoot":"","sources":["../../../src/util/brick/getBrickSize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAI/B,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,4BAGhE;AACD,eAAe,YAAY,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBrickSize = void 0;
4
+ const constants_1 = require("./constants");
5
+ // get brick size for special bricks
6
+ function getBrickSize(brick, brick_assets) {
7
+ const asset = brick_assets[brick.asset_name_index];
8
+ return constants_1.brickSizeMap[asset] || brick.size;
9
+ }
10
+ exports.getBrickSize = getBrickSize;
11
+ exports.default = getBrickSize;
12
+ //# sourceMappingURL=getBrickSize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBrickSize.js","sourceRoot":"","sources":["../../../src/util/brick/getBrickSize.ts"],"names":[],"mappings":";;;AACA,2CAA2C;AAE3C,oCAAoC;AACpC,SAAgB,YAAY,CAAC,KAAY,EAAE,YAAsB;IAC/D,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACnD,OAAO,wBAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC;AAC3C,CAAC;AAHD,oCAGC;AACD,kBAAe,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Brick } from 'brs-js';
2
+ export declare function getScaleAxis(brick: Brick, axis: number): number;
3
+ export default getScaleAxis;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getScaleAxis.d.ts","sourceRoot":"","sources":["../../../src/util/brick/getScaleAxis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAG/B,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,UA2BtD;AACD,eAAe,YAAY,CAAC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getScaleAxis = void 0;
4
+ // get scale axis for scale when using rotation and orientation
5
+ function getScaleAxis(brick, axis) {
6
+ const { direction, rotation } = brick;
7
+ if ([0, 1].includes(direction)) {
8
+ if (axis === 0) {
9
+ axis = 2;
10
+ }
11
+ else if (axis === 2) {
12
+ axis = 0;
13
+ }
14
+ }
15
+ else if ([2, 3].includes(direction)) {
16
+ if (axis === 0) {
17
+ axis = 1;
18
+ }
19
+ else if (axis === 1) {
20
+ axis = 2;
21
+ }
22
+ else if (axis === 2) {
23
+ axis = 0;
24
+ }
25
+ }
26
+ if ([1, 3].includes(rotation)) {
27
+ if (axis === 0) {
28
+ axis = 1;
29
+ }
30
+ else if (axis === 1) {
31
+ axis = 0;
32
+ }
33
+ }
34
+ return axis;
35
+ }
36
+ exports.getScaleAxis = getScaleAxis;
37
+ exports.default = getScaleAxis;
38
+ //# sourceMappingURL=getScaleAxis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getScaleAxis.js","sourceRoot":"","sources":["../../../src/util/brick/getScaleAxis.ts"],"names":[],"mappings":";;;AAEA,+DAA+D;AAC/D,SAAgB,YAAY,CAAC,KAAY,EAAE,IAAY;IACrD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACtC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC9B,IAAI,IAAI,KAAK,CAAC,EAAE;YACd,IAAI,GAAG,CAAC,CAAC;SACV;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE;YACrB,IAAI,GAAG,CAAC,CAAC;SACV;KACF;SAAM,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QACrC,IAAI,IAAI,KAAK,CAAC,EAAE;YACd,IAAI,GAAG,CAAC,CAAC;SACV;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE;YACrB,IAAI,GAAG,CAAC,CAAC;SACV;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE;YACrB,IAAI,GAAG,CAAC,CAAC;SACV;KACF;IAED,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC7B,IAAI,IAAI,KAAK,CAAC,EAAE;YACd,IAAI,GAAG,CAAC,CAAC;SACV;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE;YACrB,IAAI,GAAG,CAAC,CAAC;SACV;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AA3BD,oCA2BC;AACD,kBAAe,YAAY,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare const BRICK_CONSTANTS: {
2
+ rotationTable: number[];
3
+ translationTable: (([x, y, z]: [number, number, number]) => [number, number, number])[];
4
+ orientationMap: Record<string, [number, number]>;
5
+ DEFAULT_MATERIALS: string[];
6
+ brickSizeMap: Record<string, [number, number, number]>;
7
+ };
8
+ export * from './checkBounds';
9
+ export * from './getBounds';
10
+ export * from './getBrickSize';
11
+ export * from './getScaleAxis';
12
+ export * from './setOwnership';
13
+ export * from './rotate';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/brick/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,aAAa,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC"}