@takaro/db 0.0.1

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 (263) hide show
  1. package/README.md +1 -0
  2. package/dist/TakaroModel.d.ts +15 -0
  3. package/dist/TakaroModel.js +23 -0
  4. package/dist/TakaroModel.js.map +1 -0
  5. package/dist/config.d.ts +98 -0
  6. package/dist/config.js +81 -0
  7. package/dist/config.js.map +1 -0
  8. package/dist/encryption.d.ts +4 -0
  9. package/dist/encryption.js +24 -0
  10. package/dist/encryption.js.map +1 -0
  11. package/dist/errorTypeGuards.d.ts +2 -0
  12. package/dist/errorTypeGuards.js +11 -0
  13. package/dist/errorTypeGuards.js.map +1 -0
  14. package/dist/knex.d.ts +16 -0
  15. package/dist/knex.js +46 -0
  16. package/dist/knex.js.map +1 -0
  17. package/dist/main.d.ts +8 -0
  18. package/dist/main.js +9 -0
  19. package/dist/main.js.map +1 -0
  20. package/dist/migrations/index.d.ts +2 -0
  21. package/dist/migrations/index.js +59 -0
  22. package/dist/migrations/index.js.map +1 -0
  23. package/dist/migrations/sql/20220827191938_init.d.ts +3 -0
  24. package/dist/migrations/sql/20220827191938_init.js +155 -0
  25. package/dist/migrations/sql/20220827191938_init.js.map +1 -0
  26. package/dist/migrations/sql/20221019173729_settings.d.ts +3 -0
  27. package/dist/migrations/sql/20221019173729_settings.js +61 -0
  28. package/dist/migrations/sql/20221019173729_settings.js.map +1 -0
  29. package/dist/migrations/sql/20221029103554_refactor_function_assignments.d.ts +3 -0
  30. package/dist/migrations/sql/20221029103554_refactor_function_assignments.js +33 -0
  31. package/dist/migrations/sql/20221029103554_refactor_function_assignments.js.map +1 -0
  32. package/dist/migrations/sql/20221102190532_commands.d.ts +3 -0
  33. package/dist/migrations/sql/20221102190532_commands.js +58 -0
  34. package/dist/migrations/sql/20221102190532_commands.js.map +1 -0
  35. package/dist/migrations/sql/20221203135001-builtin_modules.d.ts +3 -0
  36. package/dist/migrations/sql/20221203135001-builtin_modules.js +44 -0
  37. package/dist/migrations/sql/20221203135001-builtin_modules.js.map +1 -0
  38. package/dist/migrations/sql/20230308183400-persistent-variables.d.ts +3 -0
  39. package/dist/migrations/sql/20230308183400-persistent-variables.js +63 -0
  40. package/dist/migrations/sql/20230308183400-persistent-variables.js.map +1 -0
  41. package/dist/migrations/sql/20230314183400-auth-ory.d.ts +3 -0
  42. package/dist/migrations/sql/20230314183400-auth-ory.js +23 -0
  43. package/dist/migrations/sql/20230314183400-auth-ory.js.map +1 -0
  44. package/dist/migrations/sql/20230325156123_command-arguments.d.ts +3 -0
  45. package/dist/migrations/sql/20230325156123_command-arguments.js +19 -0
  46. package/dist/migrations/sql/20230325156123_command-arguments.js.map +1 -0
  47. package/dist/migrations/sql/20230407132022-module-descriptions.d.ts +3 -0
  48. package/dist/migrations/sql/20230407132022-module-descriptions.js +11 -0
  49. package/dist/migrations/sql/20230407132022-module-descriptions.js.map +1 -0
  50. package/dist/migrations/sql/20230407143733-module-json-schema-config.d.ts +3 -0
  51. package/dist/migrations/sql/20230407143733-module-json-schema-config.js +14 -0
  52. package/dist/migrations/sql/20230407143733-module-json-schema-config.js.map +1 -0
  53. package/dist/migrations/sql/20230407173055-hook-regex-optional.d.ts +3 -0
  54. package/dist/migrations/sql/20230407173055-hook-regex-optional.js +11 -0
  55. package/dist/migrations/sql/20230407173055-hook-regex-optional.js.map +1 -0
  56. package/dist/migrations/sql/20230415154935-cronjob-configs.d.ts +3 -0
  57. package/dist/migrations/sql/20230415154935-cronjob-configs.js +16 -0
  58. package/dist/migrations/sql/20230415154935-cronjob-configs.js.map +1 -0
  59. package/dist/migrations/sql/20230503132906-variables-extra-meta.d.ts +3 -0
  60. package/dist/migrations/sql/20230503132906-variables-extra-meta.js +26 -0
  61. package/dist/migrations/sql/20230503132906-variables-extra-meta.js.map +1 -0
  62. package/dist/migrations/sql/20230604130951-fix-hook-eventtypes.d.ts +3 -0
  63. package/dist/migrations/sql/20230604130951-fix-hook-eventtypes.js +8 -0
  64. package/dist/migrations/sql/20230604130951-fix-hook-eventtypes.js.map +1 -0
  65. package/dist/migrations/sql/20230617081049-discordId-for-users.d.ts +3 -0
  66. package/dist/migrations/sql/20230617081049-discordId-for-users.js +14 -0
  67. package/dist/migrations/sql/20230617081049-discordId-for-users.js.map +1 -0
  68. package/dist/migrations/sql/20230618053611-discord-funtionality.d.ts +3 -0
  69. package/dist/migrations/sql/20230618053611-discord-funtionality.js +26 -0
  70. package/dist/migrations/sql/20230618053611-discord-funtionality.js.map +1 -0
  71. package/dist/migrations/sql/20230622192402-discord-hooks.d.ts +3 -0
  72. package/dist/migrations/sql/20230622192402-discord-hooks.js +14 -0
  73. package/dist/migrations/sql/20230622192402-discord-hooks.js.map +1 -0
  74. package/dist/migrations/sql/20230707081218-playerOnGameServerExtension.d.ts +3 -0
  75. package/dist/migrations/sql/20230707081218-playerOnGameServerExtension.js +19 -0
  76. package/dist/migrations/sql/20230707081218-playerOnGameServerExtension.js.map +1 -0
  77. package/dist/migrations/sql/20230710174340-events.d.ts +3 -0
  78. package/dist/migrations/sql/20230710174340-events.js +16 -0
  79. package/dist/migrations/sql/20230710174340-events.js.map +1 -0
  80. package/dist/migrations/sql/20230712061220-roles-permissions-extension.d.ts +3 -0
  81. package/dist/migrations/sql/20230712061220-roles-permissions-extension.js +43 -0
  82. package/dist/migrations/sql/20230712061220-roles-permissions-extension.js.map +1 -0
  83. package/dist/migrations/sql/20230713184927-variables-modulescoped.d.ts +3 -0
  84. package/dist/migrations/sql/20230713184927-variables-modulescoped.js +27 -0
  85. package/dist/migrations/sql/20230713184927-variables-modulescoped.js.map +1 -0
  86. package/dist/migrations/sql/20230714045136-domain-index.d.ts +3 -0
  87. package/dist/migrations/sql/20230714045136-domain-index.js +37 -0
  88. package/dist/migrations/sql/20230714045136-domain-index.js.map +1 -0
  89. package/dist/migrations/sql/20230714045727-events-index.d.ts +3 -0
  90. package/dist/migrations/sql/20230714045727-events-index.js +17 -0
  91. package/dist/migrations/sql/20230714045727-events-index.js.map +1 -0
  92. package/dist/migrations/sql/20230715102519-module-permissions-extra-fields.d.ts +3 -0
  93. package/dist/migrations/sql/20230715102519-module-permissions-extra-fields.js +32 -0
  94. package/dist/migrations/sql/20230715102519-module-permissions-extra-fields.js.map +1 -0
  95. package/dist/migrations/sql/20230724062109-roles-constraints.d.ts +3 -0
  96. package/dist/migrations/sql/20230724062109-roles-constraints.js +14 -0
  97. package/dist/migrations/sql/20230724062109-roles-constraints.js.map +1 -0
  98. package/dist/migrations/sql/20230811095701-userId-on-events.d.ts +3 -0
  99. package/dist/migrations/sql/20230811095701-userId-on-events.js +12 -0
  100. package/dist/migrations/sql/20230811095701-userId-on-events.js.map +1 -0
  101. package/dist/migrations/sql/20230921123717-count-for-permissions.d.ts +3 -0
  102. package/dist/migrations/sql/20230921123717-count-for-permissions.js +84 -0
  103. package/dist/migrations/sql/20230921123717-count-for-permissions.js.map +1 -0
  104. package/dist/migrations/sql/20231111102812-details-system-permissions.d.ts +36 -0
  105. package/dist/migrations/sql/20231111102812-details-system-permissions.js +179 -0
  106. package/dist/migrations/sql/20231111102812-details-system-permissions.js.map +1 -0
  107. package/dist/migrations/sql/20231114151343-system-roles.d.ts +3 -0
  108. package/dist/migrations/sql/20231114151343-system-roles.js +41 -0
  109. package/dist/migrations/sql/20231114151343-system-roles.js.map +1 -0
  110. package/dist/migrations/sql/20231118082301-add-new-permissions.d.ts +36 -0
  111. package/dist/migrations/sql/20231118082301-add-new-permissions.js +186 -0
  112. package/dist/migrations/sql/20231118082301-add-new-permissions.js.map +1 -0
  113. package/dist/migrations/sql/20231119115037-timedRoles.d.ts +3 -0
  114. package/dist/migrations/sql/20231119115037-timedRoles.js +19 -0
  115. package/dist/migrations/sql/20231119115037-timedRoles.js.map +1 -0
  116. package/dist/migrations/sql/20231123150854-economy-base.d.ts +3 -0
  117. package/dist/migrations/sql/20231123150854-economy-base.js +13 -0
  118. package/dist/migrations/sql/20231123150854-economy-base.js.map +1 -0
  119. package/dist/migrations/sql/20231123171611-economy-settings.d.ts +3 -0
  120. package/dist/migrations/sql/20231123171611-economy-settings.js +13 -0
  121. package/dist/migrations/sql/20231123171611-economy-settings.js.map +1 -0
  122. package/dist/migrations/sql/20231124140441-json-module-assignments.d.ts +3 -0
  123. package/dist/migrations/sql/20231124140441-json-module-assignments.js +25 -0
  124. package/dist/migrations/sql/20231124140441-json-module-assignments.js.map +1 -0
  125. package/dist/migrations/sql/20231208114507-settings-refactor.d.ts +3 -0
  126. package/dist/migrations/sql/20231208114507-settings-refactor.js +95 -0
  127. package/dist/migrations/sql/20231208114507-settings-refactor.js.map +1 -0
  128. package/dist/migrations/sql/20231208171234-game-items.d.ts +3 -0
  129. package/dist/migrations/sql/20231208171234-game-items.js +18 -0
  130. package/dist/migrations/sql/20231208171234-game-items.js.map +1 -0
  131. package/dist/migrations/sql/20231216100720-player-inventory.d.ts +3 -0
  132. package/dist/migrations/sql/20231216100720-player-inventory.js +14 -0
  133. package/dist/migrations/sql/20231216100720-player-inventory.js.map +1 -0
  134. package/dist/migrations/sql/20231222180438-steam-data.d.ts +3 -0
  135. package/dist/migrations/sql/20231222180438-steam-data.js +25 -0
  136. package/dist/migrations/sql/20231222180438-steam-data.js.map +1 -0
  137. package/dist/migrations/sql/20231223132631-pog-online.d.ts +3 -0
  138. package/dist/migrations/sql/20231223132631-pog-online.js +11 -0
  139. package/dist/migrations/sql/20231223132631-pog-online.js.map +1 -0
  140. package/dist/migrations/sql/20231223212031-unique-index-item-def.d.ts +3 -0
  141. package/dist/migrations/sql/20231223212031-unique-index-item-def.js +24 -0
  142. package/dist/migrations/sql/20231223212031-unique-index-item-def.js.map +1 -0
  143. package/dist/migrations/sql/20231224135126-gameserver-online-status.d.ts +3 -0
  144. package/dist/migrations/sql/20231224135126-gameserver-online-status.js +11 -0
  145. package/dist/migrations/sql/20231224135126-gameserver-online-status.js.map +1 -0
  146. package/dist/migrations/sql/20231224155226-unique-pog.d.ts +3 -0
  147. package/dist/migrations/sql/20231224155226-unique-pog.js +24 -0
  148. package/dist/migrations/sql/20231224155226-unique-pog.js.map +1 -0
  149. package/dist/migrations/sql/20231225140650-extra-ip-info.d.ts +3 -0
  150. package/dist/migrations/sql/20231225140650-extra-ip-info.js +23 -0
  151. package/dist/migrations/sql/20231225140650-extra-ip-info.js.map +1 -0
  152. package/dist/migrations/sql/20231227144315-unique-constraints-player.d.ts +3 -0
  153. package/dist/migrations/sql/20231227144315-unique-constraints-player.js +67 -0
  154. package/dist/migrations/sql/20231227144315-unique-constraints-player.js.map +1 -0
  155. package/dist/migrations/sql/20231229144707-more-player-constraints.d.ts +3 -0
  156. package/dist/migrations/sql/20231229144707-more-player-constraints.js +17 -0
  157. package/dist/migrations/sql/20231229144707-more-player-constraints.js.map +1 -0
  158. package/dist/migrations/sql/20240101162751-add-settings-constraint.d.ts +3 -0
  159. package/dist/migrations/sql/20240101162751-add-settings-constraint.js +34 -0
  160. package/dist/migrations/sql/20240101162751-add-settings-constraint.js.map +1 -0
  161. package/dist/migrations/sql/20240105130846-remove-some-module-perms.d.ts +3 -0
  162. package/dist/migrations/sql/20240105130846-remove-some-module-perms.js +80 -0
  163. package/dist/migrations/sql/20240105130846-remove-some-module-perms.js.map +1 -0
  164. package/dist/migrations/sql/20240116141936-add-ui-schema-to-module.d.ts +3 -0
  165. package/dist/migrations/sql/20240116141936-add-ui-schema-to-module.js +11 -0
  166. package/dist/migrations/sql/20240116141936-add-ui-schema-to-module.js.map +1 -0
  167. package/dist/migrations/sql/20240119152426-remove-hook-check.d.ts +3 -0
  168. package/dist/migrations/sql/20240119152426-remove-hook-check.js +14 -0
  169. package/dist/migrations/sql/20240119152426-remove-hook-check.js.map +1 -0
  170. package/dist/migrations/sql/20240121142329-move-ip-history.d.ts +3 -0
  171. package/dist/migrations/sql/20240121142329-move-ip-history.js +44 -0
  172. package/dist/migrations/sql/20240121142329-move-ip-history.js.map +1 -0
  173. package/dist/migrations/sql/20240202101208-rename-economy-to-economyUtils.d.ts +3 -0
  174. package/dist/migrations/sql/20240202101208-rename-economy-to-economyUtils.js +13 -0
  175. package/dist/migrations/sql/20240202101208-rename-economy-to-economyUtils.js.map +1 -0
  176. package/dist/migrations/sql/20240216120143-domain-state.d.ts +3 -0
  177. package/dist/migrations/sql/20240216120143-domain-state.js +11 -0
  178. package/dist/migrations/sql/20240216120143-domain-state.js.map +1 -0
  179. package/dist/migrations/sql/20240229141340-looser-fks-events.d.ts +3 -0
  180. package/dist/migrations/sql/20240229141340-looser-fks-events.js +18 -0
  181. package/dist/migrations/sql/20240229141340-looser-fks-events.js.map +1 -0
  182. package/dist/migrations/sql/20240301063505-module-functions.d.ts +3 -0
  183. package/dist/migrations/sql/20240301063505-module-functions.js +14 -0
  184. package/dist/migrations/sql/20240301063505-module-functions.js.map +1 -0
  185. package/dist/migrations/util/alterEnum.d.ts +1 -0
  186. package/dist/migrations/util/alterEnum.js +9 -0
  187. package/dist/migrations/util/alterEnum.js.map +1 -0
  188. package/dist/queryBuilder.d.ts +28 -0
  189. package/dist/queryBuilder.js +132 -0
  190. package/dist/queryBuilder.js.map +1 -0
  191. package/dist/redis.d.ts +20 -0
  192. package/dist/redis.js +49 -0
  193. package/dist/redis.js.map +1 -0
  194. package/package.json +29 -0
  195. package/src/TakaroModel.ts +32 -0
  196. package/src/__tests__/encryption.integration.test.ts +56 -0
  197. package/src/__tests__/queryBuilder.integration.test.ts +202 -0
  198. package/src/config.ts +101 -0
  199. package/src/encryption.ts +27 -0
  200. package/src/errorTypeGuards.ts +11 -0
  201. package/src/knex.ts +54 -0
  202. package/src/main.ts +15 -0
  203. package/src/migrations/index.ts +70 -0
  204. package/src/migrations/sql/20220827191938_init.ts +183 -0
  205. package/src/migrations/sql/20221019173729_settings.ts +70 -0
  206. package/src/migrations/sql/20221029103554_refactor_function_assignments.ts +41 -0
  207. package/src/migrations/sql/20221102190532_commands.ts +66 -0
  208. package/src/migrations/sql/20221203135001-builtin_modules.ts +56 -0
  209. package/src/migrations/sql/20230308183400-persistent-variables.ts +74 -0
  210. package/src/migrations/sql/20230314183400-auth-ory.ts +27 -0
  211. package/src/migrations/sql/20230325156123_command-arguments.ts +24 -0
  212. package/src/migrations/sql/20230407132022-module-descriptions.ts +13 -0
  213. package/src/migrations/sql/20230407143733-module-json-schema-config.ts +16 -0
  214. package/src/migrations/sql/20230407173055-hook-regex-optional.ts +13 -0
  215. package/src/migrations/sql/20230415154935-cronjob-configs.ts +18 -0
  216. package/src/migrations/sql/20230503132906-variables-extra-meta.ts +31 -0
  217. package/src/migrations/sql/20230604130951-fix-hook-eventtypes.ts +12 -0
  218. package/src/migrations/sql/20230617081049-discordId-for-users.ts +16 -0
  219. package/src/migrations/sql/20230618053611-discord-funtionality.ts +34 -0
  220. package/src/migrations/sql/20230622192402-discord-hooks.ts +20 -0
  221. package/src/migrations/sql/20230707081218-playerOnGameServerExtension.ts +21 -0
  222. package/src/migrations/sql/20230710174340-events.ts +21 -0
  223. package/src/migrations/sql/20230712061220-roles-permissions-extension.ts +50 -0
  224. package/src/migrations/sql/20230713184927-variables-modulescoped.ts +32 -0
  225. package/src/migrations/sql/20230714045136-domain-index.ts +40 -0
  226. package/src/migrations/sql/20230714045727-events-index.ts +19 -0
  227. package/src/migrations/sql/20230715102519-module-permissions-extra-fields.ts +38 -0
  228. package/src/migrations/sql/20230724062109-roles-constraints.ts +16 -0
  229. package/src/migrations/sql/20230811095701-userId-on-events.ts +14 -0
  230. package/src/migrations/sql/20230921123717-count-for-permissions.ts +101 -0
  231. package/src/migrations/sql/20231111102812-details-system-permissions.ts +192 -0
  232. package/src/migrations/sql/20231114151343-system-roles.ts +46 -0
  233. package/src/migrations/sql/20231118082301-add-new-permissions.ts +200 -0
  234. package/src/migrations/sql/20231119115037-timedRoles.ts +23 -0
  235. package/src/migrations/sql/20231123150854-economy-base.ts +15 -0
  236. package/src/migrations/sql/20231123171611-economy-settings.ts +15 -0
  237. package/src/migrations/sql/20231124140441-json-module-assignments.ts +29 -0
  238. package/src/migrations/sql/20231208114507-settings-refactor.ts +114 -0
  239. package/src/migrations/sql/20231208171234-game-items.ts +20 -0
  240. package/src/migrations/sql/20231216100720-player-inventory.ts +16 -0
  241. package/src/migrations/sql/20231222180438-steam-data.ts +27 -0
  242. package/src/migrations/sql/20231223132631-pog-online.ts +13 -0
  243. package/src/migrations/sql/20231223212031-unique-index-item-def.ts +27 -0
  244. package/src/migrations/sql/20231224135126-gameserver-online-status.ts +13 -0
  245. package/src/migrations/sql/20231224155226-unique-pog.ts +27 -0
  246. package/src/migrations/sql/20231225140650-extra-ip-info.ts +27 -0
  247. package/src/migrations/sql/20231227144315-unique-constraints-player.ts +74 -0
  248. package/src/migrations/sql/20231229144707-more-player-constraints.ts +20 -0
  249. package/src/migrations/sql/20240101162751-add-settings-constraint.ts +39 -0
  250. package/src/migrations/sql/20240105130846-remove-some-module-perms.ts +104 -0
  251. package/src/migrations/sql/20240116141936-add-ui-schema-to-module.ts +13 -0
  252. package/src/migrations/sql/20240119152426-remove-hook-check.ts +18 -0
  253. package/src/migrations/sql/20240121142329-move-ip-history.ts +53 -0
  254. package/src/migrations/sql/20240202101208-rename-economy-to-economyUtils.ts +15 -0
  255. package/src/migrations/sql/20240216120143-domain-state.ts +13 -0
  256. package/src/migrations/sql/20240229141340-looser-fks-events.ts +20 -0
  257. package/src/migrations/sql/20240301063505-module-functions.ts +17 -0
  258. package/src/migrations/util/alterEnum.ts +10 -0
  259. package/src/queryBuilder.ts +133 -0
  260. package/src/redis.ts +58 -0
  261. package/tsconfig.build.json +9 -0
  262. package/tsconfig.json +8 -0
  263. package/typedoc.json +3 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230622192402-discord-hooks.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230622192402-discord-hooks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,GAAG,CACZ,uBAAuB,CAAC,OAAO,EAAE,WAAW,EAAE;QAC5C,KAAK;QACL,kBAAkB;QAClB,qBAAqB;QACrB,cAAc;QACd,iBAAiB;KAClB,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,GAAG,CACZ,uBAAuB,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAClH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,19 @@
1
+ export async function up(knex) {
2
+ await knex.schema.alterTable('playerOnGameServer', (table) => {
3
+ table.integer('positionX').nullable();
4
+ table.integer('positionY').nullable();
5
+ table.integer('positionZ').nullable();
6
+ table.integer('ping').nullable();
7
+ table.specificType('ip', 'inet').nullable();
8
+ });
9
+ }
10
+ export async function down(knex) {
11
+ await knex.schema.alterTable('playerOnGameServer', (table) => {
12
+ table.dropColumn('positionX');
13
+ table.dropColumn('positionY');
14
+ table.dropColumn('positionZ');
15
+ table.dropColumn('ping');
16
+ table.dropColumn('ip');
17
+ });
18
+ }
19
+ //# sourceMappingURL=20230707081218-playerOnGameServerExtension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230707081218-playerOnGameServerExtension.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230707081218-playerOnGameServerExtension.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3D,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QACjC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3D,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC9B,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC9B,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC9B,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACzB,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,16 @@
1
+ export async function up(knex) {
2
+ await knex.schema.createTable('events', (table) => {
3
+ table.timestamps(true, true, true);
4
+ table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid ()'));
5
+ table.string('domain').references('domains.id').onDelete('CASCADE').notNullable();
6
+ table.string('eventName').notNullable();
7
+ table.uuid('playerId').nullable().references('id').inTable('players').onDelete('CASCADE');
8
+ table.uuid('gameserverId').nullable().references('id').inTable('gameservers').onDelete('CASCADE');
9
+ table.uuid('moduleId').nullable().references('id').inTable('modules').onDelete('CASCADE');
10
+ table.json('meta').nullable();
11
+ });
12
+ }
13
+ export async function down(knex) {
14
+ await knex.schema.dropTable('events');
15
+ }
16
+ //# sourceMappingURL=20230710174340-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230710174340-events.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230710174340-events.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAChD,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAElF,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QAExC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC1F,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE1F,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,43 @@
1
+ import { formatAlterTableEnumSql } from '../util/alterEnum.js';
2
+ export async function up(knex) {
3
+ await knex.raw('ALTER TABLE "permissionOnRole" DROP CONSTRAINT IF EXISTS "capabilityOnRole_capability_check";');
4
+ await knex.schema.createTable('roleOnPlayer', (table) => {
5
+ table.timestamps(true, true, true);
6
+ table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid ()'));
7
+ table.uuid('playerId').references('players.id').onDelete('CASCADE').notNullable();
8
+ table.uuid('roleId').references('roles.id').onDelete('CASCADE').notNullable();
9
+ table.uuid('gameServerId').references('gameservers.id').onDelete('CASCADE').nullable();
10
+ });
11
+ await knex.schema.createTable('modulePermission', (table) => {
12
+ table.timestamps(true, true, true);
13
+ table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid ()'));
14
+ table.uuid('moduleId').references('modules.id').onDelete('CASCADE').notNullable();
15
+ table.string('permission').notNullable();
16
+ });
17
+ }
18
+ export async function down(knex) {
19
+ await knex.raw(formatAlterTableEnumSql('permissionOnRole', 'permission', [
20
+ 'ROOT',
21
+ 'MANAGE_USERS',
22
+ 'READ_USERS',
23
+ 'MANAGE_ROLES',
24
+ 'READ_ROLES',
25
+ 'MANAGE_GAMESERVERS',
26
+ 'READ_GAMESERVERS',
27
+ 'READ_FUNCTIONS',
28
+ 'MANAGE_FUNCTIONS',
29
+ 'READ_CRONJOBS',
30
+ 'MANAGE_CRONJOBS',
31
+ 'READ_HOOKS',
32
+ 'MANAGE_HOOKS',
33
+ 'READ_MODULES',
34
+ 'MANAGE_MODULES',
35
+ 'READ_PLAYERS',
36
+ 'MANAGE_PLAYERS',
37
+ 'MANAGE_SETTINGS',
38
+ 'READ_SETTINGS',
39
+ ]));
40
+ await knex.schema.dropTable('roleOnPlayer');
41
+ await knex.schema.dropTable('modulePermission');
42
+ }
43
+ //# sourceMappingURL=20230712061220-roles-permissions-extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230712061220-roles-permissions-extension.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230712061220-roles-permissions-extension.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,GAAG,CAAC,+FAA+F,CAAC,CAAC;IAEhH,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE;QACtD,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAClF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1D,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAClF,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,GAAG,CACZ,uBAAuB,CAAC,kBAAkB,EAAE,YAAY,EAAE;QACxD,MAAM;QACN,cAAc;QACd,YAAY;QACZ,cAAc;QACd,YAAY;QACZ,oBAAoB;QACpB,kBAAkB;QAClB,gBAAgB;QAChB,kBAAkB;QAClB,eAAe;QACf,iBAAiB;QACjB,YAAY;QACZ,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,cAAc;QACd,gBAAgB;QAChB,iBAAiB;QACjB,eAAe;KAChB,CAAC,CACH,CAAC;IAEF,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;AAClD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,27 @@
1
+ export async function up(knex) {
2
+ // drop the old 'variables_key_domain_gameServerId_playerId_unique' constraint
3
+ await knex.raw(`
4
+ ALTER TABLE variables
5
+ DROP CONSTRAINT variables_key_domain_gameServerId_playerId_unique;
6
+ `);
7
+ await knex.schema.alterTable('variables', (table) => {
8
+ table.uuid('moduleId').references('modules.id').onDelete('CASCADE').nullable();
9
+ });
10
+ await knex.raw(`
11
+ ALTER TABLE variables
12
+ ADD CONSTRAINT variables_key_domain_gameServerId_moduleId_playerId_unique
13
+ UNIQUE NULLS NOT DISTINCT (key, domain, "gameServerId", "playerId", "moduleId");
14
+ `);
15
+ }
16
+ export async function down(knex) {
17
+ await knex.schema.alterTable('variables', (table) => {
18
+ table.dropForeign(['moduleId']);
19
+ table.dropUnique(['key', 'domain', 'gameServerId', 'playerId', 'moduleId']);
20
+ });
21
+ await knex.raw(`
22
+ ALTER TABLE variables
23
+ ADD CONSTRAINT variables_key_domain_gameServerId_playerId_unique
24
+ UNIQUE NULLS NOT DISTINCT (key, domain, "gameServerId", "playerId");
25
+ `);
26
+ }
27
+ //# sourceMappingURL=20230713184927-variables-modulescoped.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230713184927-variables-modulescoped.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230713184927-variables-modulescoped.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,8EAA8E;IAC9E,MAAM,IAAI,CAAC,GAAG,CAAC;;;GAGd,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;QAClD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;CAIhB,CAAC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;QAClD,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAChC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;GAId,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,37 @@
1
+ const tablesToIndex = [
2
+ 'roles',
3
+ 'gameservers',
4
+ 'players',
5
+ 'playerOnGameServer',
6
+ 'functions',
7
+ 'settings',
8
+ 'gameServerSettings',
9
+ 'cronJobs',
10
+ 'hooks',
11
+ 'commands',
12
+ 'commandArguments',
13
+ 'modules',
14
+ 'moduleAssignments',
15
+ 'variables',
16
+ 'users',
17
+ 'discordGuilds',
18
+ 'userOnDiscordGuild',
19
+ 'events',
20
+ ];
21
+ export async function up(knex) {
22
+ // Add index for domain in all tables
23
+ for (const table of tablesToIndex) {
24
+ await knex.schema.alterTable(table, (t) => {
25
+ t.index('domain');
26
+ });
27
+ }
28
+ }
29
+ export async function down(knex) {
30
+ // Remove index for domain in all tables
31
+ for (const table of tablesToIndex) {
32
+ await knex.schema.alterTable(table, (t) => {
33
+ t.dropIndex('domain');
34
+ });
35
+ }
36
+ }
37
+ //# sourceMappingURL=20230714045136-domain-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230714045136-domain-index.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230714045136-domain-index.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAG;IACpB,OAAO;IACP,aAAa;IACb,SAAS;IACT,oBAAoB;IACpB,WAAW;IACX,UAAU;IACV,oBAAoB;IACpB,UAAU;IACV,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,SAAS;IACT,mBAAmB;IACnB,WAAW;IACX,OAAO;IACP,eAAe;IACf,oBAAoB;IACpB,QAAQ;CACT,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,qCAAqC;IACrC,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACxC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,wCAAwC;IACxC,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACxC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,17 @@
1
+ export async function up(knex) {
2
+ await knex.schema.alterTable('events', (t) => {
3
+ t.index('createdAt');
4
+ t.index('playerId');
5
+ t.index('gameserverId');
6
+ t.index('moduleId');
7
+ });
8
+ }
9
+ export async function down(knex) {
10
+ await knex.schema.alterTable('events', (t) => {
11
+ t.dropIndex('createdAt');
12
+ t.dropIndex('playerId');
13
+ t.dropIndex('gameserverId');
14
+ t.dropIndex('moduleId');
15
+ });
16
+ }
17
+ //# sourceMappingURL=20230714045727-events-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230714045727-events-index.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230714045727-events-index.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QAC3C,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACrB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACpB,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACxB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QAC3C,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACzB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACxB,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,32 @@
1
+ export async function up(knex) {
2
+ await knex.schema.alterTable('modulePermission', (table) => {
3
+ table.string('description').defaultTo('No description provided');
4
+ table.string('friendlyName');
5
+ });
6
+ await knex.raw(`
7
+ CREATE OR REPLACE FUNCTION set_friendly_name()
8
+ RETURNS TRIGGER AS $$
9
+ BEGIN
10
+ IF NEW."friendlyName" IS NULL THEN
11
+ NEW."friendlyName" := NEW.permission;
12
+ END IF;
13
+ RETURN NEW;
14
+ END;
15
+ $$ LANGUAGE plpgsql;
16
+ `);
17
+ await knex.raw(`
18
+ CREATE TRIGGER check_friendly_name
19
+ BEFORE INSERT OR UPDATE ON "modulePermission"
20
+ FOR EACH ROW EXECUTE PROCEDURE set_friendly_name();
21
+ `);
22
+ await knex.raw('ALTER TABLE "permissionOnRole" DROP CONSTRAINT IF EXISTS "capabilityOnRole_capability_check";');
23
+ }
24
+ export async function down(knex) {
25
+ await knex.schema.alterTable('modulePermission', (table) => {
26
+ table.dropColumn('description');
27
+ table.dropColumn('friendlyName');
28
+ });
29
+ await knex.raw('DROP TRIGGER IF EXISTS check_friendly_name ON "modulePermission";');
30
+ await knex.raw('DROP FUNCTION IF EXISTS set_friendly_name();');
31
+ }
32
+ //# sourceMappingURL=20230715102519-module-permissions-extra-fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230715102519-module-permissions-extra-fields.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230715102519-module-permissions-extra-fields.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;QACzD,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACjE,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;GAUd,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;GAId,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,CAAC,+FAA+F,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;QACzD,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAChC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;IACpF,MAAM,IAAI,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,14 @@
1
+ export async function up(knex) {
2
+ await knex.raw(`
3
+ ALTER TABLE "roleOnPlayer"
4
+ ADD CONSTRAINT role_on_player_unique_idx
5
+ UNIQUE NULLS NOT DISTINCT ("gameServerId", "playerId", "roleId");
6
+ `);
7
+ }
8
+ export async function down(knex) {
9
+ // Removing the unique constraint
10
+ await knex.raw(`
11
+ DROP INDEX role_on_player_unique_idx;
12
+ `);
13
+ }
14
+ //# sourceMappingURL=20230724062109-roles-constraints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230724062109-roles-constraints.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230724062109-roles-constraints.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,GAAG,CAAC;;;;GAId,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,iCAAiC;IACjC,MAAM,IAAI,CAAC,GAAG,CAAC;;GAEd,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,12 @@
1
+ export async function up(knex) {
2
+ await knex.schema.alterTable('events', (table) => {
3
+ table.uuid('userId').references('id').inTable('users').onDelete('CASCADE');
4
+ table.index('userId');
5
+ });
6
+ }
7
+ export async function down(knex) {
8
+ await knex.schema.alterTable('events', (table) => {
9
+ table.dropColumn('userId');
10
+ });
11
+ }
12
+ //# sourceMappingURL=20230811095701-userId-on-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230811095701-userId-on-events.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230811095701-userId-on-events.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/C,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3E,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/C,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Knex } from 'knex';
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,84 @@
1
+ export async function up(knex) {
2
+ await knex.schema.alterTable('modulePermission', (table) => {
3
+ table.boolean('canHaveCount').defaultTo(false);
4
+ // drop not null constraint
5
+ table.uuid('moduleId').nullable().alter();
6
+ });
7
+ await knex.schema.renameTable('modulePermission', 'permission');
8
+ // Create default permissions
9
+ const perms = [
10
+ 'ROOT',
11
+ 'MANAGE_USERS',
12
+ 'READ_USERS',
13
+ 'MANAGE_ROLES',
14
+ 'READ_ROLES',
15
+ 'MANAGE_GAMESERVERS',
16
+ 'READ_GAMESERVERS',
17
+ 'READ_FUNCTIONS',
18
+ 'MANAGE_FUNCTIONS',
19
+ 'READ_CRONJOBS',
20
+ 'MANAGE_CRONJOBS',
21
+ 'READ_HOOKS',
22
+ 'MANAGE_HOOKS',
23
+ 'READ_MODULES',
24
+ 'MANAGE_MODULES',
25
+ 'READ_PLAYERS',
26
+ 'MANAGE_PLAYERS',
27
+ 'MANAGE_SETTINGS',
28
+ 'READ_SETTINGS',
29
+ ];
30
+ await knex('permission').insert(perms.map((perm) => ({
31
+ permission: perm,
32
+ canHaveCount: false,
33
+ })));
34
+ await knex.schema.createTable('temp_permissiononrole', (table) => {
35
+ table.timestamps(true, true, true);
36
+ table.uuid('id').primary();
37
+ table.uuid('roleId');
38
+ table.string('permission');
39
+ table.string('domain');
40
+ });
41
+ await knex.raw('INSERT INTO temp_permissiononrole SELECT * FROM "permissionOnRole"');
42
+ await knex.schema.alterTable('permissionOnRole', (table) => {
43
+ table.integer('count').defaultTo(0);
44
+ table.uuid('permissionId').references('permission.id').onDelete('CASCADE').nullable();
45
+ });
46
+ await knex.raw(`
47
+ UPDATE "permissionOnRole" AS por
48
+ SET "permissionId" = p.id
49
+ FROM "temp_permissiononrole" AS temp, "permission" AS p
50
+ WHERE temp.id = por.id AND temp.permission = p.permission
51
+ `);
52
+ await knex.schema.alterTable('permissionOnRole', (table) => {
53
+ table.dropColumn('permission');
54
+ // make permissionId not nullable
55
+ table.uuid('permissionId').notNullable().alter();
56
+ });
57
+ await knex.schema.dropTable('temp_permissiononrole');
58
+ }
59
+ export async function down(knex) {
60
+ // Step 1: Re-create the original 'permission' column in 'permissionOnRole'
61
+ await knex.schema.alterTable('permissionOnRole', (table) => {
62
+ table.string('permission').nullable();
63
+ });
64
+ // Populate the original 'permission' based on 'permissionId'
65
+ await knex.raw(`
66
+ UPDATE "permissionOnRole" AS por
67
+ SET "permission" = p.permission
68
+ FROM "permission" AS p
69
+ WHERE por."permissionId" = p.id
70
+ `);
71
+ // Step 2: Drop the new columns and constraints in 'permissionOnRole'
72
+ await knex.schema.alterTable('permissionOnRole', (table) => {
73
+ table.dropColumn('count');
74
+ table.dropColumn('permissionId');
75
+ });
76
+ // Step 3: Rename the 'permission' table back to 'modulePermission'
77
+ await knex.schema.renameTable('permission', 'modulePermission');
78
+ // Step 4: Restore the original columns and constraints in 'modulePermission'
79
+ await knex.schema.alterTable('modulePermission', (table) => {
80
+ table.dropColumn('canHaveCount');
81
+ table.uuid('moduleId').notNullable().alter(); // Re-add the NOT NULL constraint
82
+ });
83
+ }
84
+ //# sourceMappingURL=20230921123717-count-for-permissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20230921123717-count-for-permissions.js","sourceRoot":"","sources":["../../../src/migrations/sql/20230921123717-count-for-permissions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { Knex } from 'knex';
2
+ export declare enum PERMISSIONS {
3
+ 'ROOT' = "ROOT",
4
+ 'MANAGE_USERS' = "MANAGE_USERS",
5
+ 'READ_USERS' = "READ_USERS",
6
+ 'MANAGE_ROLES' = "MANAGE_ROLES",
7
+ 'READ_ROLES' = "READ_ROLES",
8
+ 'MANAGE_GAMESERVERS' = "MANAGE_GAMESERVERS",
9
+ 'READ_GAMESERVERS' = "READ_GAMESERVERS",
10
+ 'READ_FUNCTIONS' = "READ_FUNCTIONS",
11
+ 'MANAGE_FUNCTIONS' = "MANAGE_FUNCTIONS",
12
+ 'READ_CRONJOBS' = "READ_CRONJOBS",
13
+ 'MANAGE_CRONJOBS' = "MANAGE_CRONJOBS",
14
+ 'READ_HOOKS' = "READ_HOOKS",
15
+ 'MANAGE_HOOKS' = "MANAGE_HOOKS",
16
+ 'READ_COMMANDS' = "READ_COMMANDS",
17
+ 'MANAGE_COMMANDS' = "MANAGE_COMMANDS",
18
+ 'READ_MODULES' = "READ_MODULES",
19
+ 'MANAGE_MODULES' = "MANAGE_MODULES",
20
+ 'READ_PLAYERS' = "READ_PLAYERS",
21
+ 'MANAGE_PLAYERS' = "MANAGE_PLAYERS",
22
+ 'MANAGE_SETTINGS' = "MANAGE_SETTINGS",
23
+ 'READ_SETTINGS' = "READ_SETTINGS",
24
+ 'READ_VARIABLES' = "READ_VARIABLES",
25
+ 'MANAGE_VARIABLES' = "MANAGE_VARIABLES",
26
+ 'READ_EVENTS' = "READ_EVENTS",
27
+ 'MANAGE_EVENTS' = "MANAGE_EVENTS"
28
+ }
29
+ export interface IPermissionDetails {
30
+ permission: string;
31
+ friendlyName: string;
32
+ description: string;
33
+ }
34
+ export declare const PERMISSION_DETAILS: Record<PERMISSIONS, IPermissionDetails>;
35
+ export declare function up(knex: Knex): Promise<void>;
36
+ export declare function down(knex: Knex): Promise<void>;
@@ -0,0 +1,179 @@
1
+ export var PERMISSIONS;
2
+ (function (PERMISSIONS) {
3
+ PERMISSIONS["ROOT"] = "ROOT";
4
+ PERMISSIONS["MANAGE_USERS"] = "MANAGE_USERS";
5
+ PERMISSIONS["READ_USERS"] = "READ_USERS";
6
+ PERMISSIONS["MANAGE_ROLES"] = "MANAGE_ROLES";
7
+ PERMISSIONS["READ_ROLES"] = "READ_ROLES";
8
+ PERMISSIONS["MANAGE_GAMESERVERS"] = "MANAGE_GAMESERVERS";
9
+ PERMISSIONS["READ_GAMESERVERS"] = "READ_GAMESERVERS";
10
+ PERMISSIONS["READ_FUNCTIONS"] = "READ_FUNCTIONS";
11
+ PERMISSIONS["MANAGE_FUNCTIONS"] = "MANAGE_FUNCTIONS";
12
+ PERMISSIONS["READ_CRONJOBS"] = "READ_CRONJOBS";
13
+ PERMISSIONS["MANAGE_CRONJOBS"] = "MANAGE_CRONJOBS";
14
+ PERMISSIONS["READ_HOOKS"] = "READ_HOOKS";
15
+ PERMISSIONS["MANAGE_HOOKS"] = "MANAGE_HOOKS";
16
+ PERMISSIONS["READ_COMMANDS"] = "READ_COMMANDS";
17
+ PERMISSIONS["MANAGE_COMMANDS"] = "MANAGE_COMMANDS";
18
+ PERMISSIONS["READ_MODULES"] = "READ_MODULES";
19
+ PERMISSIONS["MANAGE_MODULES"] = "MANAGE_MODULES";
20
+ PERMISSIONS["READ_PLAYERS"] = "READ_PLAYERS";
21
+ PERMISSIONS["MANAGE_PLAYERS"] = "MANAGE_PLAYERS";
22
+ PERMISSIONS["MANAGE_SETTINGS"] = "MANAGE_SETTINGS";
23
+ PERMISSIONS["READ_SETTINGS"] = "READ_SETTINGS";
24
+ PERMISSIONS["READ_VARIABLES"] = "READ_VARIABLES";
25
+ PERMISSIONS["MANAGE_VARIABLES"] = "MANAGE_VARIABLES";
26
+ PERMISSIONS["READ_EVENTS"] = "READ_EVENTS";
27
+ PERMISSIONS["MANAGE_EVENTS"] = "MANAGE_EVENTS";
28
+ })(PERMISSIONS || (PERMISSIONS = {}));
29
+ export const PERMISSION_DETAILS = {
30
+ [PERMISSIONS.ROOT]: {
31
+ permission: PERMISSIONS.ROOT,
32
+ friendlyName: 'Root Access',
33
+ description: 'Full access to all systems and resources',
34
+ },
35
+ [PERMISSIONS.MANAGE_USERS]: {
36
+ permission: PERMISSIONS.MANAGE_USERS,
37
+ friendlyName: 'Manage Users',
38
+ description: 'Can create, update, and delete users',
39
+ },
40
+ [PERMISSIONS.READ_USERS]: {
41
+ permission: PERMISSIONS.READ_USERS,
42
+ friendlyName: 'Read Users',
43
+ description: 'Can view user details',
44
+ },
45
+ [PERMISSIONS.MANAGE_ROLES]: {
46
+ permission: PERMISSIONS.MANAGE_ROLES,
47
+ friendlyName: 'Manage Roles',
48
+ description: 'Can create, update, and delete roles',
49
+ },
50
+ [PERMISSIONS.READ_ROLES]: {
51
+ permission: PERMISSIONS.READ_ROLES,
52
+ friendlyName: 'Read Roles',
53
+ description: 'Can view role details',
54
+ },
55
+ [PERMISSIONS.MANAGE_GAMESERVERS]: {
56
+ permission: PERMISSIONS.MANAGE_GAMESERVERS,
57
+ friendlyName: 'Manage Game Servers',
58
+ description: 'Can create, update, and delete game servers',
59
+ },
60
+ [PERMISSIONS.READ_GAMESERVERS]: {
61
+ permission: PERMISSIONS.READ_GAMESERVERS,
62
+ friendlyName: 'Read Game Servers',
63
+ description: 'Can view game server details',
64
+ },
65
+ [PERMISSIONS.READ_FUNCTIONS]: {
66
+ permission: PERMISSIONS.READ_FUNCTIONS,
67
+ friendlyName: 'Read Functions',
68
+ description: 'Can view function details',
69
+ },
70
+ [PERMISSIONS.MANAGE_FUNCTIONS]: {
71
+ permission: PERMISSIONS.MANAGE_FUNCTIONS,
72
+ friendlyName: 'Manage Functions',
73
+ description: 'Can create, update, and delete functions',
74
+ },
75
+ [PERMISSIONS.READ_CRONJOBS]: {
76
+ permission: PERMISSIONS.READ_CRONJOBS,
77
+ friendlyName: 'Read Cron Jobs',
78
+ description: 'Can view cron job details',
79
+ },
80
+ [PERMISSIONS.MANAGE_CRONJOBS]: {
81
+ permission: PERMISSIONS.MANAGE_CRONJOBS,
82
+ friendlyName: 'Manage Cron Jobs',
83
+ description: 'Can create, update, and delete cron jobs',
84
+ },
85
+ [PERMISSIONS.READ_HOOKS]: {
86
+ permission: PERMISSIONS.READ_HOOKS,
87
+ friendlyName: 'Read Hooks',
88
+ description: 'Can view hook details',
89
+ },
90
+ [PERMISSIONS.MANAGE_HOOKS]: {
91
+ permission: PERMISSIONS.MANAGE_HOOKS,
92
+ friendlyName: 'Manage Hooks',
93
+ description: 'Can create, update, and delete hooks',
94
+ },
95
+ [PERMISSIONS.READ_COMMANDS]: {
96
+ permission: PERMISSIONS.READ_COMMANDS,
97
+ friendlyName: 'Read Commands',
98
+ description: 'Can view command details',
99
+ },
100
+ [PERMISSIONS.MANAGE_COMMANDS]: {
101
+ permission: PERMISSIONS.MANAGE_COMMANDS,
102
+ friendlyName: 'Manage Commands',
103
+ description: 'Can create, update, and delete commands',
104
+ },
105
+ [PERMISSIONS.READ_MODULES]: {
106
+ permission: PERMISSIONS.READ_MODULES,
107
+ friendlyName: 'Read Modules',
108
+ description: 'Can view module details',
109
+ },
110
+ [PERMISSIONS.MANAGE_MODULES]: {
111
+ permission: PERMISSIONS.MANAGE_MODULES,
112
+ friendlyName: 'Manage Modules',
113
+ description: 'Can create, update, and delete modules',
114
+ },
115
+ [PERMISSIONS.READ_PLAYERS]: {
116
+ permission: PERMISSIONS.READ_PLAYERS,
117
+ friendlyName: 'Read Players',
118
+ description: 'Can view player details',
119
+ },
120
+ [PERMISSIONS.MANAGE_PLAYERS]: {
121
+ permission: PERMISSIONS.MANAGE_PLAYERS,
122
+ friendlyName: 'Manage Players',
123
+ description: 'Can create, update, and delete players',
124
+ },
125
+ [PERMISSIONS.MANAGE_SETTINGS]: {
126
+ permission: PERMISSIONS.MANAGE_SETTINGS,
127
+ friendlyName: 'Manage Settings',
128
+ description: 'Can modify settings',
129
+ },
130
+ [PERMISSIONS.READ_SETTINGS]: {
131
+ permission: PERMISSIONS.READ_SETTINGS,
132
+ friendlyName: 'Read Settings',
133
+ description: 'Can view settings',
134
+ },
135
+ [PERMISSIONS.READ_VARIABLES]: {
136
+ permission: PERMISSIONS.READ_VARIABLES,
137
+ friendlyName: 'Read Variables',
138
+ description: 'Can view variables',
139
+ },
140
+ [PERMISSIONS.MANAGE_VARIABLES]: {
141
+ permission: PERMISSIONS.MANAGE_VARIABLES,
142
+ friendlyName: 'Manage Variables',
143
+ description: 'Can create, update, and delete variables',
144
+ },
145
+ [PERMISSIONS.READ_EVENTS]: {
146
+ permission: PERMISSIONS.READ_EVENTS,
147
+ friendlyName: 'Read Events',
148
+ description: 'Can view event details',
149
+ },
150
+ [PERMISSIONS.MANAGE_EVENTS]: {
151
+ permission: PERMISSIONS.MANAGE_EVENTS,
152
+ friendlyName: 'Manage Events',
153
+ description: 'Can create, update, and delete events',
154
+ },
155
+ };
156
+ export async function up(knex) {
157
+ // For all system permissions, find the record in the DB
158
+ // And update the description and friendly name
159
+ const permissions = Object.values(PERMISSIONS);
160
+ for (const permission of permissions) {
161
+ const details = PERMISSION_DETAILS[permission];
162
+ await knex('permission').where({ permission }).update({
163
+ description: details.description,
164
+ friendlyName: details.friendlyName,
165
+ });
166
+ }
167
+ }
168
+ export async function down(knex) {
169
+ // For all system permissions, find the record in the DB
170
+ // And update the description and friendly name
171
+ const permissions = Object.values(PERMISSIONS);
172
+ for (const permission of permissions) {
173
+ await knex('permission').where({ permission }).update({
174
+ description: 'No description provided',
175
+ friendlyName: permission,
176
+ });
177
+ }
178
+ }
179
+ //# sourceMappingURL=20231111102812-details-system-permissions.js.map