@open-core/framework 0.2.8 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/README.md +10 -0
  2. package/dist/adapters/contracts/IPlatformCapabilities.d.ts +79 -0
  3. package/dist/adapters/contracts/IPlatformCapabilities.js +31 -0
  4. package/dist/adapters/contracts/IPlayerInfo.d.ts +1 -1
  5. package/dist/adapters/contracts/{IPedAppearanceClient.d.ts → client/IPedAppearanceClient.d.ts} +1 -1
  6. package/dist/adapters/contracts/server/IEntityServer.d.ts +188 -0
  7. package/dist/adapters/contracts/server/IEntityServer.js +39 -0
  8. package/dist/adapters/contracts/{IPlayerServer.d.ts → server/IPlayerServer.d.ts} +52 -9
  9. package/dist/adapters/contracts/server/IPlayerServer.js +39 -0
  10. package/dist/adapters/contracts/types/identifier.d.ts +67 -0
  11. package/dist/adapters/contracts/types/identifier.js +64 -0
  12. package/dist/adapters/contracts/types/index.d.ts +1 -0
  13. package/dist/{kernel/shared/appearance → adapters/contracts/types}/index.js +1 -1
  14. package/dist/adapters/fivem/fivem-capabilities.d.ts +18 -0
  15. package/dist/adapters/fivem/fivem-capabilities.js +67 -0
  16. package/dist/adapters/fivem/fivem-engine-events.js +17 -4
  17. package/dist/adapters/fivem/fivem-entity-server.d.ts +6 -2
  18. package/dist/adapters/fivem/fivem-entity-server.js +14 -1
  19. package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +1 -1
  20. package/dist/adapters/fivem/fivem-ped-appearance-client.js +1 -1
  21. package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +1 -1
  22. package/dist/adapters/fivem/fivem-ped-appearance-server.js +1 -1
  23. package/dist/adapters/fivem/fivem-platform.d.ts +5 -0
  24. package/dist/adapters/fivem/fivem-platform.js +100 -0
  25. package/dist/adapters/fivem/fivem-player-server.d.ts +7 -1
  26. package/dist/adapters/fivem/fivem-player-server.js +19 -1
  27. package/dist/adapters/fivem/fivem-playerinfo.d.ts +1 -1
  28. package/dist/adapters/fivem/fivem-vehicle-server.d.ts +1 -1
  29. package/dist/adapters/fivem/fivem-vehicle-server.js +1 -1
  30. package/dist/adapters/fivem/index.d.ts +13 -0
  31. package/dist/adapters/fivem/index.js +31 -0
  32. package/dist/adapters/index.d.ts +8 -7
  33. package/dist/adapters/index.js +13 -12
  34. package/dist/adapters/node/index.d.ts +5 -0
  35. package/dist/adapters/node/index.js +13 -1
  36. package/dist/adapters/node/node-capabilities.d.ts +19 -0
  37. package/dist/adapters/node/node-capabilities.js +54 -0
  38. package/dist/adapters/node/node-entity-server.d.ts +17 -6
  39. package/dist/adapters/node/node-entity-server.js +41 -15
  40. package/dist/adapters/node/node-net-transport.js +2 -2
  41. package/dist/adapters/node/node-ped-appearance-client.d.ts +1 -1
  42. package/dist/adapters/node/node-ped-appearance-client.js +1 -1
  43. package/dist/adapters/node/node-ped-appearance-server.d.ts +1 -1
  44. package/dist/adapters/node/node-ped-appearance-server.js +1 -1
  45. package/dist/adapters/node/node-platform.d.ts +5 -0
  46. package/dist/adapters/node/node-platform.js +103 -0
  47. package/dist/adapters/node/node-player-server.d.ts +19 -3
  48. package/dist/adapters/node/node-player-server.js +43 -9
  49. package/dist/adapters/node/node-playerinfo.d.ts +2 -2
  50. package/dist/adapters/node/node-playerinfo.js +14 -3
  51. package/dist/adapters/node/node-vehicle-server.d.ts +1 -1
  52. package/dist/adapters/node/node-vehicle-server.js +1 -1
  53. package/dist/adapters/platform/index.d.ts +1 -0
  54. package/dist/{runtime/server/database.js → adapters/platform/index.js} +1 -7
  55. package/dist/adapters/platform/platform-registry.d.ts +101 -0
  56. package/dist/adapters/platform/platform-registry.js +122 -0
  57. package/dist/adapters/register-capabilities.d.ts +52 -2
  58. package/dist/adapters/register-capabilities.js +69 -130
  59. package/dist/adapters/register-client-capabilities.js +1 -1
  60. package/dist/index.d.ts +2 -5
  61. package/dist/index.js +5 -31
  62. package/dist/kernel/di/container.d.ts +4 -2
  63. package/dist/kernel/di/container.js +5 -3
  64. package/dist/kernel/di/metadata.scanner.d.ts +2 -1
  65. package/dist/kernel/di/metadata.scanner.js +3 -2
  66. package/dist/kernel/{utils/error → error}/app.error.d.ts +2 -2
  67. package/dist/kernel/error/common.error-codes.d.ts +1 -0
  68. package/dist/kernel/error/framework.error-codes.d.ts +12 -0
  69. package/dist/kernel/error/index.d.ts +4 -0
  70. package/dist/kernel/error/index.js +18 -0
  71. package/dist/kernel/{utils/error → error}/security.error.d.ts +1 -1
  72. package/dist/kernel/error/security.types.js +2 -0
  73. package/dist/kernel/index.d.ts +4 -5
  74. package/dist/kernel/index.js +6 -11
  75. package/dist/kernel/{shared/logger → logger}/core-logger.d.ts +0 -19
  76. package/dist/kernel/{shared/logger → logger}/core-logger.js +10 -24
  77. package/dist/kernel/{shared/logger → logger}/logger.env.d.ts +12 -5
  78. package/dist/kernel/{shared/logger → logger}/logger.env.js +29 -13
  79. package/dist/kernel/{shared/logger → logger}/logger.service.d.ts +14 -0
  80. package/dist/kernel/{shared/logger → logger}/logger.service.js +20 -2
  81. package/dist/kernel/logger/transports/transport.interface.js +2 -0
  82. package/dist/kernel/shared/index.d.ts +1 -2
  83. package/dist/kernel/shared/index.js +1 -2
  84. package/dist/kernel/utils/index.d.ts +0 -2
  85. package/dist/kernel/utils/index.js +0 -2
  86. package/dist/kernel/utils/result.d.ts +1 -1
  87. package/dist/runtime/client/api.d.ts +7 -0
  88. package/dist/runtime/client/api.js +23 -0
  89. package/dist/runtime/client/client-bootstrap.js +1 -1
  90. package/dist/runtime/client/controllers/spawner.controller.d.ts +1 -1
  91. package/dist/runtime/client/decorators/index.d.ts +2 -2
  92. package/dist/runtime/client/decorators/index.js +2 -2
  93. package/dist/runtime/client/decorators/key.d.ts +2 -2
  94. package/dist/runtime/client/decorators/key.js +3 -3
  95. package/dist/runtime/client/decorators/localEvent.d.ts +1 -1
  96. package/dist/runtime/client/decorators/localEvent.js +1 -1
  97. package/dist/runtime/client/decorators/{tick.d.ts → onTick.d.ts} +1 -1
  98. package/dist/runtime/client/decorators/{tick.js → onTick.js} +2 -2
  99. package/dist/runtime/client/decorators/{nui.d.ts → onView.d.ts} +4 -4
  100. package/dist/runtime/client/decorators/{nui.js → onView.js} +5 -5
  101. package/dist/runtime/client/index.d.ts +1 -7
  102. package/dist/runtime/client/index.js +26 -12
  103. package/dist/runtime/client/player/player.d.ts +1 -1
  104. package/dist/runtime/client/player/player.loader.js +3 -3
  105. package/dist/runtime/client/services/appearance.service.d.ts +1 -1
  106. package/dist/runtime/client/services/appearance.service.js +1 -1
  107. package/dist/runtime/client/services/blip.service.d.ts +1 -1
  108. package/dist/runtime/client/services/marker.service.d.ts +1 -1
  109. package/dist/runtime/client/services/ped.service.d.ts +1 -1
  110. package/dist/runtime/client/services/spawn.service.d.ts +2 -2
  111. package/dist/runtime/client/services/spawn.service.js +12 -12
  112. package/dist/runtime/client/services/textui.service.d.ts +1 -1
  113. package/dist/runtime/client/services/vehicle-client.service.d.ts +1 -1
  114. package/dist/runtime/client/services/vehicle.service.d.ts +1 -1
  115. package/dist/runtime/client/system/processors/export.processor.js +1 -1
  116. package/dist/runtime/client/system/processors/gameEvent.processor.js +1 -1
  117. package/dist/runtime/client/system/processors/interval.processor.js +1 -1
  118. package/dist/runtime/client/system/processors/localEvent.processor.js +1 -1
  119. package/dist/runtime/client/system/processors/netEvent.processor.js +1 -1
  120. package/dist/runtime/client/system/processors/nui.processor.js +5 -4
  121. package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +1 -1
  122. package/dist/runtime/client/system/processors/tick.processor.js +1 -1
  123. package/dist/runtime/client/ui-bridge.js +1 -1
  124. package/dist/runtime/core/entity.d.ts +168 -0
  125. package/dist/runtime/core/entity.js +226 -0
  126. package/dist/runtime/core/index.d.ts +3 -0
  127. package/dist/runtime/core/index.js +19 -0
  128. package/dist/runtime/core/spatial.d.ts +5 -0
  129. package/dist/runtime/core/spatial.js +2 -0
  130. package/dist/runtime/core/world.d.ts +13 -0
  131. package/dist/runtime/core/world.js +64 -0
  132. package/dist/runtime/server/api.d.ts +12 -0
  133. package/dist/runtime/server/api.js +34 -0
  134. package/dist/runtime/server/bootstrap.js +58 -103
  135. package/dist/runtime/server/bus/internal-event.bus.js +1 -1
  136. package/dist/runtime/server/contracts/index.d.ts +1 -2
  137. package/dist/runtime/server/contracts/index.js +2 -3
  138. package/dist/runtime/server/contracts/player-persistence.contract.d.ts +16 -18
  139. package/dist/runtime/server/contracts/player-persistence.contract.js +16 -18
  140. package/dist/runtime/server/contracts/security/command-error-observer.contract.d.ts +73 -0
  141. package/dist/runtime/server/contracts/security/command-error-observer.contract.js +9 -0
  142. package/dist/runtime/server/contracts/security/permission.types.d.ts +2 -2
  143. package/dist/runtime/server/contracts/security/principal-provider.contract.d.ts +3 -3
  144. package/dist/runtime/server/contracts/security/principal-provider.contract.js +2 -2
  145. package/dist/runtime/server/contracts/security/security-handler.contract.d.ts +2 -2
  146. package/dist/runtime/server/controllers/chat.controller.d.ts +1 -1
  147. package/dist/runtime/server/controllers/chat.controller.js +5 -0
  148. package/dist/runtime/server/controllers/command-export.controller.d.ts +12 -3
  149. package/dist/runtime/server/controllers/command-export.controller.js +81 -25
  150. package/dist/runtime/server/controllers/player-export.controller.d.ts +2 -2
  151. package/dist/runtime/server/controllers/player-export.controller.js +5 -0
  152. package/dist/runtime/server/controllers/principal-export.controller.js +8 -7
  153. package/dist/runtime/server/controllers/ready.controller.d.ts +5 -0
  154. package/dist/runtime/server/controllers/ready.controller.js +37 -0
  155. package/dist/runtime/server/controllers/remote-command-execution.controller.d.ts +10 -1
  156. package/dist/runtime/server/controllers/remote-command-execution.controller.js +65 -13
  157. package/dist/runtime/server/controllers/session.controller.d.ts +2 -2
  158. package/dist/runtime/server/controllers/session.controller.js +25 -17
  159. package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -38
  160. package/dist/runtime/server/controllers/vehicle.controller.js +6 -152
  161. package/dist/runtime/server/decorators/guard.d.ts +8 -6
  162. package/dist/runtime/server/decorators/guard.js +10 -8
  163. package/dist/runtime/server/decorators/index.d.ts +1 -1
  164. package/dist/runtime/server/decorators/index.js +1 -1
  165. package/dist/runtime/server/decorators/onNet.d.ts +3 -3
  166. package/dist/runtime/server/decorators/{onFiveMEvent.d.ts → onRuntimeEvent.d.ts} +5 -4
  167. package/dist/runtime/server/decorators/{onFiveMEvent.js → onRuntimeEvent.js} +7 -6
  168. package/dist/runtime/server/decorators/requiresState.js +3 -3
  169. package/dist/runtime/server/decorators/throttle.d.ts +1 -1
  170. package/dist/runtime/server/decorators/throttle.js +1 -1
  171. package/dist/runtime/server/decorators/utils.d.ts +1 -1
  172. package/dist/runtime/server/decorators/utils.js +1 -1
  173. package/dist/runtime/server/devmode/dev-mode.service.d.ts +7 -8
  174. package/dist/runtime/server/devmode/dev-mode.service.js +18 -46
  175. package/dist/runtime/server/devmode/index.d.ts +1 -3
  176. package/dist/runtime/server/devmode/index.js +1 -18
  177. package/dist/runtime/server/devmode/player-simulator.service.js +3 -3
  178. package/dist/runtime/server/devmode/state-inspector.service.js +2 -2
  179. package/dist/runtime/server/devmode/types.d.ts +67 -31
  180. package/dist/runtime/server/devmode/types.js +1 -4
  181. package/dist/runtime/server/entities/player.d.ts +80 -66
  182. package/dist/runtime/server/entities/player.js +137 -98
  183. package/dist/runtime/server/entities/vehicle.d.ts +3 -3
  184. package/dist/runtime/server/error-handler.js +5 -5
  185. package/dist/runtime/server/helpers/normalize-app-error.d.ts +9 -0
  186. package/dist/runtime/server/helpers/normalize-app-error.js +20 -0
  187. package/dist/runtime/server/helpers/resolve-method.js +3 -3
  188. package/dist/runtime/server/index.d.ts +1 -13
  189. package/dist/runtime/server/index.js +25 -23
  190. package/dist/runtime/server/runtime.d.ts +32 -281
  191. package/dist/runtime/server/runtime.js +46 -60
  192. package/dist/runtime/server/services/appearance.service.d.ts +5 -5
  193. package/dist/runtime/server/services/appearance.service.js +5 -5
  194. package/dist/runtime/server/services/chat.service.d.ts +5 -3
  195. package/dist/runtime/server/services/chat.service.js +17 -12
  196. package/dist/runtime/server/services/core/command.service.d.ts +9 -1
  197. package/dist/runtime/server/services/core/command.service.js +16 -7
  198. package/dist/runtime/server/services/core/player.service.d.ts +12 -16
  199. package/dist/runtime/server/services/core/player.service.js +42 -47
  200. package/dist/runtime/server/services/core/principal.service.js +5 -5
  201. package/dist/runtime/server/services/core/session-recovery.service.d.ts +1 -1
  202. package/dist/runtime/server/services/core/session-recovery.service.js +2 -2
  203. package/dist/runtime/server/services/default/default-command-error-observer.d.ts +14 -0
  204. package/dist/runtime/server/services/default/default-command-error-observer.js +43 -0
  205. package/dist/runtime/server/services/default/default-principal.provider.d.ts +13 -0
  206. package/dist/runtime/server/services/default/default-principal.provider.js +38 -0
  207. package/dist/runtime/server/services/default/default-security.handler.d.ts +1 -1
  208. package/dist/runtime/server/services/default/default-security.handler.js +1 -1
  209. package/dist/runtime/server/services/index.d.ts +0 -3
  210. package/dist/runtime/server/services/index.js +1 -6
  211. package/dist/runtime/server/services/parallel/index.d.ts +1 -45
  212. package/dist/runtime/server/services/parallel/index.js +0 -44
  213. package/dist/runtime/server/services/parallel/native-worker.entry.d.ts +1 -0
  214. package/dist/runtime/server/services/parallel/native-worker.entry.js +12 -0
  215. package/dist/runtime/server/services/parallel/parallel-compute.service.d.ts +17 -17
  216. package/dist/runtime/server/services/parallel/parallel-compute.service.js +10 -3
  217. package/dist/runtime/server/services/parallel/types.d.ts +5 -2
  218. package/dist/runtime/server/services/parallel/worker-pool.d.ts +5 -9
  219. package/dist/runtime/server/services/parallel/worker-pool.js +167 -57
  220. package/dist/runtime/server/services/parallel/worker.d.ts +8 -5
  221. package/dist/runtime/server/services/parallel/worker.js +8 -5
  222. package/dist/runtime/server/services/persistence.service.js +3 -3
  223. package/dist/runtime/server/services/ports/command-execution.port.d.ts +7 -0
  224. package/dist/runtime/server/services/ports/principal.port.d.ts +1 -1
  225. package/dist/runtime/server/services/remote/remote-command.service.d.ts +1 -0
  226. package/dist/runtime/server/services/remote/remote-command.service.js +7 -3
  227. package/dist/runtime/server/services/remote/remote-player.service.d.ts +2 -2
  228. package/dist/runtime/server/services/remote/remote-player.service.js +3 -3
  229. package/dist/runtime/server/services/remote/server-bridge.js +2 -2
  230. package/dist/runtime/server/services/services.register.d.ts +2 -5
  231. package/dist/runtime/server/services/services.register.js +29 -41
  232. package/dist/runtime/server/services/vehicle-modification.service.js +1 -1
  233. package/dist/runtime/server/services/vehicle.service.d.ts +3 -3
  234. package/dist/runtime/server/services/vehicle.service.js +5 -5
  235. package/dist/runtime/server/setup.d.ts +2 -3
  236. package/dist/runtime/server/setup.js +10 -11
  237. package/dist/runtime/server/system/metadata-server.keys.d.ts +1 -1
  238. package/dist/runtime/server/system/metadata-server.keys.js +1 -1
  239. package/dist/runtime/server/system/processors/command.processor.js +4 -0
  240. package/dist/runtime/server/system/processors/export.processor.js +1 -1
  241. package/dist/runtime/server/system/processors/internalEvent.processor.js +1 -1
  242. package/dist/runtime/server/system/processors/netEvent.processor.js +8 -9
  243. package/dist/runtime/server/system/processors/{fivemEvent.processor.d.ts → runtimeEvent.processor.d.ts} +1 -1
  244. package/dist/runtime/server/system/processors/{fivemEvent.processor.js → runtimeEvent.processor.js} +8 -8
  245. package/dist/runtime/server/system/processors/tick.processor.js +1 -1
  246. package/dist/runtime/server/system/processors.register.js +16 -11
  247. package/dist/runtime/server/system/schema-generator.js +2 -2
  248. package/dist/runtime/server/types/core-exports.d.ts +6 -6
  249. package/dist/runtime/server/types/index.d.ts +1 -1
  250. package/dist/runtime/server/types/index.js +1 -1
  251. package/dist/runtime/server/types/internal-events.d.ts +1 -1
  252. package/dist/runtime/server/types/vehicle.types.d.ts +1 -1
  253. package/package.json +8 -16
  254. package/dist/adapters/contracts/IEntityServer.d.ts +0 -88
  255. package/dist/adapters/contracts/IEntityServer.js +0 -13
  256. package/dist/adapters/contracts/IPlayerServer.js +0 -13
  257. package/dist/adapters/database/oxmysql.adapter.d.ts +0 -89
  258. package/dist/adapters/database/oxmysql.adapter.js +0 -149
  259. package/dist/adapters/database/resource.adapter.d.ts +0 -12
  260. package/dist/adapters/database/resource.adapter.js +0 -68
  261. package/dist/kernel/shared/appearance/index.d.ts +0 -1
  262. package/dist/runtime/index.d.ts +0 -2
  263. package/dist/runtime/index.js +0 -39
  264. package/dist/runtime/server/bootstrap.validation.d.ts +0 -12
  265. package/dist/runtime/server/bootstrap.validation.js +0 -104
  266. package/dist/runtime/server/contracts/auth-provider.contract.d.ts +0 -58
  267. package/dist/runtime/server/contracts/auth-provider.contract.js +0 -23
  268. package/dist/runtime/server/contracts/repository/index.d.ts +0 -57
  269. package/dist/runtime/server/contracts/repository/index.js +0 -61
  270. package/dist/runtime/server/contracts/repository/repository.contract.d.ts +0 -224
  271. package/dist/runtime/server/contracts/repository/repository.contract.js +0 -341
  272. package/dist/runtime/server/contracts/repository/repository.types.d.ts +0 -51
  273. package/dist/runtime/server/contracts/repository/repository.types.js +0 -7
  274. package/dist/runtime/server/database/adapter.registry.d.ts +0 -4
  275. package/dist/runtime/server/database/adapter.registry.js +0 -14
  276. package/dist/runtime/server/database/database.contract.d.ts +0 -128
  277. package/dist/runtime/server/database/database.contract.js +0 -29
  278. package/dist/runtime/server/database/database.service.d.ts +0 -188
  279. package/dist/runtime/server/database/database.service.js +0 -287
  280. package/dist/runtime/server/database/index.d.ts +0 -5
  281. package/dist/runtime/server/database/index.js +0 -25
  282. package/dist/runtime/server/database/types.d.ts +0 -67
  283. package/dist/runtime/server/database/types.js +0 -7
  284. package/dist/runtime/server/database.d.ts +0 -7
  285. package/dist/runtime/server/devmode/hot-reload.server.d.ts +0 -74
  286. package/dist/runtime/server/devmode/hot-reload.server.js +0 -261
  287. package/dist/runtime/server/services/config.service.d.ts +0 -75
  288. package/dist/runtime/server/services/config.service.js +0 -116
  289. package/dist/runtime/server/services/http/http.service.d.ts +0 -50
  290. package/dist/runtime/server/services/http/http.service.js +0 -126
  291. /package/dist/adapters/contracts/{IPedAppearanceClient.js → client/IPedAppearanceClient.js} +0 -0
  292. /package/dist/adapters/contracts/{IPedAppearanceServer.d.ts → server/IPedAppearanceServer.d.ts} +0 -0
  293. /package/dist/adapters/contracts/{IPedAppearanceServer.js → server/IPedAppearanceServer.js} +0 -0
  294. /package/dist/adapters/contracts/{IVehicleServer.d.ts → server/IVehicleServer.d.ts} +0 -0
  295. /package/dist/adapters/contracts/{IVehicleServer.js → server/IVehicleServer.js} +0 -0
  296. /package/dist/kernel/{utils/error → error}/app.error.js +0 -0
  297. /package/dist/kernel/{shared/logger/transports/transport.interface.js → error/common.error-codes.js} +0 -0
  298. /package/dist/{runtime/server/types/security.types.js → kernel/error/framework.error-codes.js} +0 -0
  299. /package/dist/kernel/{utils/error → error}/security.error.js +0 -0
  300. /package/dist/{runtime/server/types → kernel/error}/security.types.d.ts +0 -0
  301. /package/dist/kernel/{shared/logger → logger}/index.d.ts +0 -0
  302. /package/dist/kernel/{shared/logger → logger}/index.js +0 -0
  303. /package/dist/kernel/{shared/logger → logger}/logger.config.d.ts +0 -0
  304. /package/dist/kernel/{shared/logger → logger}/logger.config.js +0 -0
  305. /package/dist/kernel/{shared/logger → logger}/logger.types.d.ts +0 -0
  306. /package/dist/kernel/{shared/logger → logger}/logger.types.js +0 -0
  307. /package/dist/kernel/{shared/logger → logger}/transports/buffered.transport.d.ts +0 -0
  308. /package/dist/kernel/{shared/logger → logger}/transports/buffered.transport.js +0 -0
  309. /package/dist/kernel/{shared/logger → logger}/transports/console.transport.d.ts +0 -0
  310. /package/dist/kernel/{shared/logger → logger}/transports/console.transport.js +0 -0
  311. /package/dist/kernel/{shared/logger → logger}/transports/dev-transport.factory.d.ts +0 -0
  312. /package/dist/kernel/{shared/logger → logger}/transports/dev-transport.factory.js +0 -0
  313. /package/dist/kernel/{shared/logger → logger}/transports/http.transport.d.ts +0 -0
  314. /package/dist/kernel/{shared/logger → logger}/transports/http.transport.js +0 -0
  315. /package/dist/kernel/{shared/logger → logger}/transports/index.d.ts +0 -0
  316. /package/dist/kernel/{shared/logger → logger}/transports/index.js +0 -0
  317. /package/dist/kernel/{shared/logger → logger}/transports/simple-console.transport.d.ts +0 -0
  318. /package/dist/kernel/{shared/logger → logger}/transports/simple-console.transport.js +0 -0
  319. /package/dist/kernel/{shared/logger → logger}/transports/transport.interface.d.ts +0 -0
  320. /package/dist/kernel/{shared/logger → logger}/transports/websocket.transport.d.ts +0 -0
  321. /package/dist/kernel/{shared/logger → logger}/transports/websocket.transport.js +0 -0
  322. /package/dist/kernel/shared/{appearance/appearance.interface.d.ts → player-appearance.types.d.ts} +0 -0
  323. /package/dist/kernel/shared/{appearance/appearance.interface.js → player-appearance.types.js} +0 -0
@@ -38,7 +38,7 @@ export declare abstract class PrincipalPort {
38
38
  /**
39
39
  * Gets Principal by account ID (works for offline players too).
40
40
  *
41
- * @param accountId - Database account identifier
41
+ * @param accountId - Account identifier
42
42
  * @returns Principal data or null
43
43
  */
44
44
  abstract getPrincipalByAccountId(accountId: string): Promise<Principal | null>;
@@ -24,6 +24,7 @@ import { CommandExecutionPort, type CommandInfo } from '../ports/command-executi
24
24
  export declare class RemoteCommandService extends CommandExecutionPort {
25
25
  private exportsService;
26
26
  private commands;
27
+ getCommandMeta(commandName: string): CommandMetadata | undefined;
27
28
  constructor(exportsService: IExports);
28
29
  /**
29
30
  * Gets typed access to CORE resource exports.
@@ -15,8 +15,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.RemoteCommandService = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
17
  const IExports_1 = require("../../../../adapters/contracts/IExports");
18
- const logger_1 = require("../../../../kernel/shared/logger");
19
- const utils_1 = require("../../../../kernel/utils");
18
+ const app_error_1 = require("../../../../kernel/error/app.error");
19
+ const logger_1 = require("../../../../kernel/logger");
20
20
  const command_validation_helper_1 = require("../../helpers/command-validation.helper");
21
21
  const runtime_1 = require("../../runtime");
22
22
  const command_execution_port_1 = require("../ports/command-execution.port");
@@ -40,6 +40,10 @@ const command_execution_port_1 = require("../ports/command-execution.port");
40
40
  * - RESOURCE validates: Zod schema (not serializable, must be local)
41
41
  */
42
42
  let RemoteCommandService = class RemoteCommandService extends command_execution_port_1.CommandExecutionPort {
43
+ getCommandMeta(commandName) {
44
+ var _a;
45
+ return (_a = this.commands.get(commandName.toLowerCase())) === null || _a === void 0 ? void 0 : _a.meta;
46
+ }
43
47
  constructor(exportsService) {
44
48
  super();
45
49
  this.exportsService = exportsService;
@@ -119,7 +123,7 @@ let RemoteCommandService = class RemoteCommandService extends command_execution_
119
123
  command: commandName,
120
124
  resource: GetCurrentResourceName(),
121
125
  });
122
- throw new utils_1.AppError('COMMAND:NOT_FOUND', `Command not found: ${commandName}`, 'server');
126
+ throw new app_error_1.AppError('COMMAND:NOT_FOUND', `Command not found: ${commandName}`, 'server');
123
127
  }
124
128
  const { meta, handler } = entry;
125
129
  return await (0, command_validation_helper_1.validateAndExecuteCommand)(meta, player, args, handler);
@@ -1,7 +1,7 @@
1
1
  import { IExports, IPlayerInfo } from '../../../../adapters';
2
- import { IEntityServer } from '../../../../adapters/contracts/IEntityServer';
3
2
  import { INetTransport } from '../../../../adapters/contracts/INetTransport';
4
- import { IPlayerServer } from '../../../../adapters/contracts/IPlayerServer';
3
+ import { IEntityServer } from '../../../../adapters/contracts/server/IEntityServer';
4
+ import { IPlayerServer } from '../../../../adapters/contracts/server/IPlayerServer';
5
5
  import { Player } from '../../entities';
6
6
  import { PlayerDirectoryPort } from '../ports/player-directory.port';
7
7
  /**
@@ -15,10 +15,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.RemotePlayerService = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
17
  const adapters_1 = require("../../../../adapters");
18
- const IEntityServer_1 = require("../../../../adapters/contracts/IEntityServer");
19
18
  const INetTransport_1 = require("../../../../adapters/contracts/INetTransport");
20
- const IPlayerServer_1 = require("../../../../adapters/contracts/IPlayerServer");
21
- const logger_1 = require("../../../../kernel/shared/logger");
19
+ const IEntityServer_1 = require("../../../../adapters/contracts/server/IEntityServer");
20
+ const IPlayerServer_1 = require("../../../../adapters/contracts/server/IPlayerServer");
21
+ const logger_1 = require("../../../../kernel/logger");
22
22
  const entities_1 = require("../../entities");
23
23
  const runtime_1 = require("../../runtime");
24
24
  const player_directory_port_1 = require("../ports/player-directory.port");
@@ -83,12 +83,12 @@ function getCoreExports() {
83
83
  * @returns An instance of PlayerServiceContract
84
84
  */
85
85
  function getPlayerService() {
86
- return container_1.di.resolve(player_directory_port_1.PlayerDirectoryPort);
86
+ return container_1.GLOBAL_CONTAINER.resolve(player_directory_port_1.PlayerDirectoryPort);
87
87
  }
88
88
  /**
89
89
  * Gets the principal provider from the dependency injection container
90
90
  * @returns An instance of PrincipalProviderContract
91
91
  */
92
92
  function getPrincipalProvider() {
93
- return container_1.di.resolve(contracts_1.PrincipalProviderContract);
93
+ return container_1.GLOBAL_CONTAINER.resolve(contracts_1.PrincipalProviderContract);
94
94
  }
@@ -3,12 +3,9 @@ import { RuntimeContext } from '../runtime';
3
3
  * Registers server runtime services in the dependency injection container.
4
4
  *
5
5
  * @remarks
6
- * This function enforces feature gating based on the runtime mode:
7
- * - In `RESOURCE` mode, some features require explicit grants (`resourceGrants`).
6
+ * This function handles service bindings based on the runtime mode:
8
7
  * - Service bindings may resolve to local implementations (CORE mode) or remote proxies.
9
8
  *
10
- * @param ctx - Runtime context containing mode, feature flags, and optional resource grants.
11
- *
12
- * @throws Error - If a forbidden feature is enabled in `RESOURCE` mode without the corresponding grant.
9
+ * @param ctx - Runtime context containing mode and feature flags.
13
10
  */
14
11
  export declare function registerServicesServer(ctx: RuntimeContext): void;
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerServicesServer = registerServicesServer;
4
4
  const index_1 = require("../../../kernel/di/index");
5
- const database_1 = require("../database");
5
+ const world_1 = require("../../core/world");
6
+ const principal_provider_contract_1 = require("../contracts/security/principal-provider.contract");
6
7
  const chat_service_1 = require("./chat.service");
7
8
  const command_service_1 = require("./core/command.service");
8
9
  const player_service_1 = require("./core/player.service");
9
10
  const principal_service_1 = require("./core/principal.service");
10
11
  const session_recovery_service_1 = require("./core/session-recovery.service");
11
- const http_service_1 = require("./http/http.service");
12
+ const default_principal_provider_1 = require("./default/default-principal.provider");
12
13
  const persistence_service_1 = require("./persistence.service");
13
14
  const command_execution_port_1 = require("./ports/command-execution.port");
14
15
  const player_directory_port_1 = require("./ports/player-directory.port");
@@ -21,80 +22,67 @@ const remote_principal_service_1 = require("./remote/remote-principal.service");
21
22
  * Registers server runtime services in the dependency injection container.
22
23
  *
23
24
  * @remarks
24
- * This function enforces feature gating based on the runtime mode:
25
- * - In `RESOURCE` mode, some features require explicit grants (`resourceGrants`).
25
+ * This function handles service bindings based on the runtime mode:
26
26
  * - Service bindings may resolve to local implementations (CORE mode) or remote proxies.
27
27
  *
28
- * @param ctx - Runtime context containing mode, feature flags, and optional resource grants.
29
- *
30
- * @throws Error - If a forbidden feature is enabled in `RESOURCE` mode without the corresponding grant.
28
+ * @param ctx - Runtime context containing mode and feature flags.
31
29
  */
32
30
  function registerServicesServer(ctx) {
33
- const { mode, features, resourceGrants } = ctx;
34
- if (mode === 'RESOURCE') {
35
- if (features.database.enabled && !(resourceGrants === null || resourceGrants === void 0 ? void 0 : resourceGrants.database)) {
36
- throw new Error(`[OpenCore] Feature 'database' is forbidden in RESOURCE mode unless resourceGrants.database=true`);
37
- }
38
- if (features.principal.enabled && !(resourceGrants === null || resourceGrants === void 0 ? void 0 : resourceGrants.principal)) {
39
- throw new Error(`[OpenCore] Feature 'principal' is forbidden in RESOURCE mode unless resourceGrants.principal=true`);
40
- }
41
- if (features.auth.enabled && !(resourceGrants === null || resourceGrants === void 0 ? void 0 : resourceGrants.auth)) {
42
- throw new Error(`[OpenCore] Feature 'auth' is forbidden in RESOURCE mode unless resourceGrants.auth=true`);
43
- }
31
+ const { mode, features } = ctx;
32
+ // ═══════════════════════════════════════════════════════════════
33
+ // PHASE 1: Register all service types FIRST (recipes only)
34
+ // ═══════════════════════════════════════════════════════════════
35
+ // WorldContext must be registered first as it has no dependencies
36
+ if (!index_1.GLOBAL_CONTAINER.isRegistered(world_1.WorldContext)) {
37
+ index_1.GLOBAL_CONTAINER.registerSingleton(world_1.WorldContext);
44
38
  }
45
39
  if (features.players.enabled) {
46
40
  if (features.players.provider === 'local' || mode === 'CORE') {
47
- index_1.di.registerSingleton(player_service_1.PlayerService);
48
- index_1.di.register(player_directory_port_1.PlayerDirectoryPort, { useToken: player_service_1.PlayerService });
49
- index_1.di.register(player_session_lifecycle_port_1.PlayerSessionLifecyclePort, { useToken: player_service_1.PlayerService });
41
+ index_1.GLOBAL_CONTAINER.registerSingleton(player_service_1.PlayerService);
42
+ index_1.GLOBAL_CONTAINER.register(player_directory_port_1.PlayerDirectoryPort, { useToken: player_service_1.PlayerService });
43
+ index_1.GLOBAL_CONTAINER.register(player_session_lifecycle_port_1.PlayerSessionLifecyclePort, { useToken: player_service_1.PlayerService });
50
44
  }
51
45
  else {
52
- index_1.di.registerSingleton(player_directory_port_1.PlayerDirectoryPort, remote_player_service_1.RemotePlayerService);
46
+ index_1.GLOBAL_CONTAINER.registerSingleton(player_directory_port_1.PlayerDirectoryPort, remote_player_service_1.RemotePlayerService);
53
47
  }
54
48
  }
55
49
  if (mode === 'RESOURCE' && features.players.enabled) {
56
- index_1.di.register(player_session_lifecycle_port_1.PlayerSessionLifecyclePort, {
50
+ index_1.GLOBAL_CONTAINER.register(player_session_lifecycle_port_1.PlayerSessionLifecyclePort, {
57
51
  useFactory: () => {
58
52
  throw new Error('[OpenCore] PlayerSessionLifecyclePort is not available in RESOURCE mode');
59
53
  },
60
54
  });
61
55
  }
62
56
  if (features.sessionLifecycle.enabled && mode !== 'RESOURCE') {
63
- index_1.di.registerSingleton(persistence_service_1.PlayerPersistenceService, persistence_service_1.PlayerPersistenceService);
64
- index_1.di.registerSingleton(session_recovery_service_1.SessionRecoveryService, session_recovery_service_1.SessionRecoveryService);
57
+ index_1.GLOBAL_CONTAINER.registerSingleton(persistence_service_1.PlayerPersistenceService, persistence_service_1.PlayerPersistenceService);
58
+ index_1.GLOBAL_CONTAINER.registerSingleton(session_recovery_service_1.SessionRecoveryService, session_recovery_service_1.SessionRecoveryService);
65
59
  }
66
60
  if (features.principal.enabled) {
67
61
  if (features.principal.provider === 'local' || mode === 'CORE' || mode === 'STANDALONE') {
68
62
  // CORE/STANDALONE: Local principal service wraps user's PrincipalProviderContract
69
- index_1.di.registerSingleton(principal_service_1.LocalPrincipalService);
70
- index_1.di.register(principal_port_1.PrincipalPort, { useToken: principal_service_1.LocalPrincipalService });
63
+ if (!index_1.GLOBAL_CONTAINER.isRegistered(principal_provider_contract_1.PrincipalProviderContract)) {
64
+ index_1.GLOBAL_CONTAINER.registerSingleton(principal_provider_contract_1.PrincipalProviderContract, default_principal_provider_1.DefaultPrincipalProvider);
65
+ }
66
+ index_1.GLOBAL_CONTAINER.registerSingleton(principal_service_1.LocalPrincipalService);
67
+ index_1.GLOBAL_CONTAINER.register(principal_port_1.PrincipalPort, { useToken: principal_service_1.LocalPrincipalService });
71
68
  }
72
69
  else {
73
70
  // RESOURCE: Remote principal service delegates to CORE
74
- index_1.di.registerSingleton(principal_port_1.PrincipalPort, remote_principal_service_1.RemotePrincipalService);
71
+ index_1.GLOBAL_CONTAINER.registerSingleton(principal_port_1.PrincipalPort, remote_principal_service_1.RemotePrincipalService);
75
72
  }
76
73
  }
77
- if (features.auth.enabled && features.auth.provider === 'core' && mode === 'RESOURCE') {
78
- throw new Error("[OpenCore] Feature 'auth' with provider='core' in RESOURCE mode is not implemented yet (missing RemoteAuthProvider).");
79
- }
80
- if (features.database.enabled) {
81
- index_1.di.registerSingleton(database_1.DatabaseService);
82
- }
83
74
  if (features.commands.enabled) {
84
75
  if (features.commands.provider === 'local' || mode === 'CORE') {
85
76
  // CORE/STANDALONE: local command execution
86
- index_1.di.registerSingleton(command_service_1.CommandService);
87
- index_1.di.register(command_execution_port_1.CommandExecutionPort, { useToken: command_service_1.CommandService });
77
+ index_1.GLOBAL_CONTAINER.registerSingleton(command_service_1.CommandService);
78
+ index_1.GLOBAL_CONTAINER.register(command_execution_port_1.CommandExecutionPort, { useToken: command_service_1.CommandService });
88
79
  }
89
80
  else {
90
81
  // RESOURCE: remote command execution (delegates to CORE)
91
- index_1.di.registerSingleton(command_execution_port_1.CommandExecutionPort, remote_command_service_1.RemoteCommandService);
82
+ index_1.GLOBAL_CONTAINER.registerSingleton(command_execution_port_1.CommandExecutionPort, remote_command_service_1.RemoteCommandService);
92
83
  }
93
84
  }
94
- if (features.http.enabled) {
95
- index_1.di.registerSingleton(http_service_1.HttpService);
96
- }
97
85
  if (features.chat.enabled) {
98
- index_1.di.registerSingleton(chat_service_1.ChatService);
86
+ index_1.GLOBAL_CONTAINER.registerSingleton(chat_service_1.ChatService);
99
87
  }
100
88
  }
@@ -14,7 +14,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.VehicleModificationService = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
- const logger_1 = require("../../../kernel/shared/logger");
17
+ const logger_1 = require("../../../kernel/logger");
18
18
  const vehicle_service_1 = require("./vehicle.service");
19
19
  /**
20
20
  * Service for handling vehicle modifications with validation.
@@ -1,8 +1,8 @@
1
- import { IEntityServer } from '../../../adapters/contracts/IEntityServer';
2
1
  import { IHasher } from '../../../adapters/contracts/IHasher';
3
2
  import { INetTransport } from '../../../adapters/contracts/INetTransport';
4
- import { IPlayerServer } from '../../../adapters/contracts/IPlayerServer';
5
- import { IVehicleServer } from '../../../adapters/contracts/IVehicleServer';
3
+ import { IEntityServer } from '../../../adapters/contracts/server/IEntityServer';
4
+ import { IPlayerServer } from '../../../adapters/contracts/server/IPlayerServer';
5
+ import { IVehicleServer } from '../../../adapters/contracts/server/IVehicleServer';
6
6
  import { Vehicle } from '../entities/vehicle';
7
7
  import { SerializedVehicleData, VehicleCreateOptions, VehicleSpawnResult } from '../types/vehicle.types';
8
8
  import { PlayerDirectoryPort } from './ports/player-directory.port';
@@ -14,12 +14,12 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.VehicleService = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
- const IEntityServer_1 = require("../../../adapters/contracts/IEntityServer");
18
17
  const IHasher_1 = require("../../../adapters/contracts/IHasher");
19
18
  const INetTransport_1 = require("../../../adapters/contracts/INetTransport");
20
- const IPlayerServer_1 = require("../../../adapters/contracts/IPlayerServer");
21
- const IVehicleServer_1 = require("../../../adapters/contracts/IVehicleServer");
22
- const logger_1 = require("../../../kernel/shared/logger");
19
+ const IEntityServer_1 = require("../../../adapters/contracts/server/IEntityServer");
20
+ const IPlayerServer_1 = require("../../../adapters/contracts/server/IPlayerServer");
21
+ const IVehicleServer_1 = require("../../../adapters/contracts/server/IVehicleServer");
22
+ const logger_1 = require("../../../kernel/logger");
23
23
  const vehicle_1 = require("../entities/vehicle");
24
24
  const player_directory_port_1 = require("./ports/player-directory.port");
25
25
  /**
@@ -295,7 +295,7 @@ let VehicleService = class VehicleService {
295
295
  const player = this.playerDirectory.getByClient(clientID);
296
296
  if (!player)
297
297
  return false;
298
- const playerPed = this.playerServer.getPed(player.clientIDStr);
298
+ const playerPed = this.playerServer.getPed(player.clientID.toString());
299
299
  if (!playerPed || playerPed === 0)
300
300
  return false;
301
301
  const playerPos = this.entityServer.getCoords(playerPed);
@@ -1,10 +1,9 @@
1
1
  import { ClassConstructor } from '../../kernel/di/index';
2
- import { PlayerPersistenceContract, PrincipalProviderContract } from './contracts';
3
- import { AuthProviderContract } from './contracts/auth-provider.contract';
2
+ import { CommandErrorObserverContract, PlayerPersistenceContract, PrincipalProviderContract } from './contracts';
4
3
  import { NetEventSecurityObserverContract } from './contracts/security/net-event-security-observer.contract';
5
4
  import { SecurityHandlerContract } from './contracts/security/security-handler.contract';
6
5
  export declare function setPrincipalProvider(provider: ClassConstructor<PrincipalProviderContract>): void;
7
- export declare function setAuthProvider(provider: ClassConstructor<AuthProviderContract>): void;
8
6
  export declare function setSecurityHandler(handler: ClassConstructor<SecurityHandlerContract>): void;
9
7
  export declare function setPersistenceProvider(provider: ClassConstructor<PlayerPersistenceContract>): void;
10
8
  export declare function setNetEventSecurityObserver(observer: ClassConstructor<NetEventSecurityObserverContract>): void;
9
+ export declare function setCommandErrorObserver(observer: ClassConstructor<CommandErrorObserverContract>): void;
@@ -1,33 +1,32 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setPrincipalProvider = setPrincipalProvider;
4
- exports.setAuthProvider = setAuthProvider;
5
4
  exports.setSecurityHandler = setSecurityHandler;
6
5
  exports.setPersistenceProvider = setPersistenceProvider;
7
6
  exports.setNetEventSecurityObserver = setNetEventSecurityObserver;
7
+ exports.setCommandErrorObserver = setCommandErrorObserver;
8
8
  const index_1 = require("../../kernel/di/index");
9
- const logger_1 = require("../../kernel/shared/logger");
9
+ const logger_1 = require("../../kernel/logger");
10
10
  const contracts_1 = require("./contracts");
11
- const auth_provider_contract_1 = require("./contracts/auth-provider.contract");
12
11
  const net_event_security_observer_contract_1 = require("./contracts/security/net-event-security-observer.contract");
13
12
  const security_handler_contract_1 = require("./contracts/security/security-handler.contract");
14
13
  function setPrincipalProvider(provider) {
15
- index_1.di.registerSingleton(contracts_1.PrincipalProviderContract, provider);
14
+ index_1.GLOBAL_CONTAINER.registerSingleton(contracts_1.PrincipalProviderContract, provider);
16
15
  logger_1.loggers.bootstrap.info(`Principal Provider configured: ${provider.name}`);
17
16
  }
18
- function setAuthProvider(provider) {
19
- index_1.di.registerSingleton(auth_provider_contract_1.AuthProviderContract, provider);
20
- logger_1.loggers.bootstrap.info(`Auth Provider configured: ${provider.name}`);
21
- }
22
17
  function setSecurityHandler(handler) {
23
- index_1.di.registerSingleton(security_handler_contract_1.SecurityHandlerContract, handler);
18
+ index_1.GLOBAL_CONTAINER.registerSingleton(security_handler_contract_1.SecurityHandlerContract, handler);
24
19
  logger_1.loggers.bootstrap.info(`Security Handler configured: ${handler.name}`);
25
20
  }
26
21
  function setPersistenceProvider(provider) {
27
- index_1.di.registerSingleton(contracts_1.PlayerPersistenceContract, provider);
22
+ index_1.GLOBAL_CONTAINER.registerSingleton(contracts_1.PlayerPersistenceContract, provider);
28
23
  logger_1.loggers.bootstrap.info(`Persistence Provider configured: ${provider.name}`);
29
24
  }
30
25
  function setNetEventSecurityObserver(observer) {
31
- index_1.di.registerSingleton(net_event_security_observer_contract_1.NetEventSecurityObserverContract, observer);
26
+ index_1.GLOBAL_CONTAINER.registerSingleton(net_event_security_observer_contract_1.NetEventSecurityObserverContract, observer);
32
27
  logger_1.loggers.bootstrap.info(`NetEvent Security Observer configured: ${observer.name}`);
33
28
  }
29
+ function setCommandErrorObserver(observer) {
30
+ index_1.GLOBAL_CONTAINER.registerSingleton(contracts_1.CommandErrorObserverContract, observer);
31
+ logger_1.loggers.bootstrap.info(`Command Security Observer configured: ${observer.name}`);
32
+ }
@@ -4,7 +4,7 @@ export declare const METADATA_KEYS: {
4
4
  NET_EVENT: string;
5
5
  TICK: string;
6
6
  INTERNAL_EVENT: string;
7
- FIVEM_EVENT: string;
7
+ RUNTIME_EVENT: string;
8
8
  EXPORT: string;
9
9
  PUBLIC: string;
10
10
  THROTTLE: string;
@@ -7,7 +7,7 @@ exports.METADATA_KEYS = {
7
7
  NET_EVENT: 'decorator:meta:net_event',
8
8
  TICK: 'decorator:meta:tick',
9
9
  INTERNAL_EVENT: 'decorator:meta:internal_event',
10
- FIVEM_EVENT: 'decorator:meta:fivem_event',
10
+ RUNTIME_EVENT: 'decorator:meta:runtime_event',
11
11
  EXPORT: 'decorator:meta:export',
12
12
  PUBLIC: 'decorator:meta:public',
13
13
  THROTTLE: 'decorator:throttle',
@@ -8,6 +8,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.CommandProcessor = void 0;
13
16
  const tsyringe_1 = require("tsyringe");
@@ -50,5 +53,6 @@ let CommandProcessor = class CommandProcessor {
50
53
  exports.CommandProcessor = CommandProcessor;
51
54
  exports.CommandProcessor = CommandProcessor = __decorate([
52
55
  (0, tsyringe_1.injectable)(),
56
+ __param(0, (0, tsyringe_1.inject)(command_execution_port_1.CommandExecutionPort)),
53
57
  __metadata("design:paramtypes", [command_execution_port_1.CommandExecutionPort])
54
58
  ], CommandProcessor);
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.ExportProcessor = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
17
  const IExports_1 = require("../../../../adapters/contracts/IExports");
18
- const logger_1 = require("../../../../kernel/shared/logger");
18
+ const logger_1 = require("../../../../kernel/logger");
19
19
  const resolve_method_1 = require("../../helpers/resolve-method");
20
20
  const metadata_server_keys_1 = require("../metadata-server.keys");
21
21
  let ExportProcessor = class ExportProcessor {
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.InternalEventProcessor = void 0;
10
10
  const tsyringe_1 = require("tsyringe");
11
- const logger_1 = require("../../../../kernel/shared/logger");
11
+ const logger_1 = require("../../../../kernel/logger");
12
12
  const internal_event_bus_1 = require("../../bus/internal-event.bus");
13
13
  const resolve_method_1 = require("../../helpers/resolve-method");
14
14
  const metadata_server_keys_1 = require("../metadata-server.keys");
@@ -18,10 +18,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.NetEventProcessor = void 0;
19
19
  const tsyringe_1 = require("tsyringe");
20
20
  const zod_1 = __importDefault(require("zod"));
21
+ const __1 = require("../../../../");
21
22
  const INetTransport_1 = require("../../../../adapters/contracts/INetTransport");
22
- const logger_1 = require("../../../../kernel/shared/logger");
23
- const utils_1 = require("../../../../kernel/utils");
24
- const security_error_1 = require("../../../../kernel/utils/error/security.error");
23
+ const logger_1 = require("../../../../kernel/logger");
25
24
  const net_event_security_observer_contract_1 = require("../../contracts/security/net-event-security-observer.contract");
26
25
  const security_handler_contract_1 = require("../../contracts/security/security-handler.contract");
27
26
  const resolve_method_1 = require("../../helpers/resolve-method");
@@ -62,7 +61,6 @@ let NetEventProcessor = class NetEventProcessor {
62
61
  event: metadata.eventName,
63
62
  clientId: clientId,
64
63
  });
65
- player.emit('core:auth:required', { event: metadata.eventName });
66
64
  return;
67
65
  }
68
66
  let validatedArgs = args;
@@ -71,7 +69,7 @@ let NetEventProcessor = class NetEventProcessor {
71
69
  schema = (_a = metadata.schema) !== null && _a !== void 0 ? _a : (0, schema_generator_1.generateSchemaFromTypes)(metadata.paramTypes);
72
70
  }
73
71
  catch (error) {
74
- if (error instanceof utils_1.AppError) {
72
+ if (error instanceof __1.AppError) {
75
73
  logger_1.loggers.netEvent.fatal(error.message, { playerId: clientId }, error);
76
74
  return;
77
75
  }
@@ -87,7 +85,7 @@ let NetEventProcessor = class NetEventProcessor {
87
85
  }
88
86
  else {
89
87
  if (args.length !== 1) {
90
- throw new security_error_1.SecurityError('LOG', `Invalid argument count in ${metadata.eventName}`, {
88
+ throw new __1.SecurityError('LOG', `Invalid argument count in ${metadata.eventName}`, {
91
89
  expected: 1,
92
90
  received: args.length,
93
91
  });
@@ -107,7 +105,7 @@ let NetEventProcessor = class NetEventProcessor {
107
105
  });
108
106
  return;
109
107
  }
110
- if (error instanceof security_error_1.SecurityError) {
108
+ if (error instanceof __1.SecurityError) {
111
109
  await this.handleInvalidPayload({
112
110
  player,
113
111
  event: metadata.eventName,
@@ -128,7 +126,7 @@ let NetEventProcessor = class NetEventProcessor {
128
126
  await handler(player, ...validatedArgs);
129
127
  }
130
128
  catch (error) {
131
- if (error instanceof security_error_1.SecurityError) {
129
+ if (error instanceof __1.SecurityError) {
132
130
  await this.handleInvalidPayload({
133
131
  player,
134
132
  event: metadata.eventName,
@@ -186,7 +184,7 @@ let NetEventProcessor = class NetEventProcessor {
186
184
  return;
187
185
  }
188
186
  if (params.zodError) {
189
- const violation = new security_error_1.SecurityError('LOG', `Invalid data received in ${params.event}`, {
187
+ const violation = new __1.SecurityError('LOG', `Invalid data received in ${params.event}`, {
190
188
  issues: zodSummary !== null && zodSummary !== void 0 ? zodSummary : params.zodError.message,
191
189
  });
192
190
  await this.safeHandleViolation(params.player, violation, params.event);
@@ -230,6 +228,7 @@ let NetEventProcessor = class NetEventProcessor {
230
228
  exports.NetEventProcessor = NetEventProcessor;
231
229
  exports.NetEventProcessor = NetEventProcessor = __decorate([
232
230
  (0, tsyringe_1.injectable)(),
231
+ __param(0, (0, tsyringe_1.inject)(player_directory_port_1.PlayerDirectoryPort)),
233
232
  __param(1, (0, tsyringe_1.inject)(security_handler_contract_1.SecurityHandlerContract)),
234
233
  __param(2, (0, tsyringe_1.inject)(net_event_security_observer_contract_1.NetEventSecurityObserverContract)),
235
234
  __param(3, (0, tsyringe_1.inject)(INetTransport_1.INetTransport)),
@@ -1,6 +1,6 @@
1
1
  import { IEngineEvents } from '../../../../adapters/contracts/IEngineEvents';
2
2
  import { type DecoratorProcessor } from '../../../../kernel/di/index';
3
- export declare class FiveMEventProcessor implements DecoratorProcessor {
3
+ export declare class RuntimeEventProcessor implements DecoratorProcessor {
4
4
  private readonly engineEvents;
5
5
  readonly metadataKey: string;
6
6
  constructor(engineEvents: IEngineEvents);
@@ -12,19 +12,19 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.FiveMEventProcessor = void 0;
15
+ exports.RuntimeEventProcessor = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
17
  const IEngineEvents_1 = require("../../../../adapters/contracts/IEngineEvents");
18
- const logger_1 = require("../../../../kernel/shared/logger");
18
+ const logger_1 = require("../../../../kernel/logger");
19
19
  const resolve_method_1 = require("../../helpers/resolve-method");
20
20
  const metadata_server_keys_1 = require("../metadata-server.keys");
21
- let FiveMEventProcessor = class FiveMEventProcessor {
21
+ let RuntimeEventProcessor = class RuntimeEventProcessor {
22
22
  constructor(engineEvents) {
23
23
  this.engineEvents = engineEvents;
24
- this.metadataKey = metadata_server_keys_1.METADATA_KEYS.FIVEM_EVENT;
24
+ this.metadataKey = metadata_server_keys_1.METADATA_KEYS.RUNTIME_EVENT;
25
25
  }
26
26
  process(instance, methodName, metadata) {
27
- const result = (0, resolve_method_1.resolveMethod)(instance, methodName, `[FiveMEventProcessor] Method "${methodName}" not found`);
27
+ const result = (0, resolve_method_1.resolveMethod)(instance, methodName, `[RuntimeEventProcessor] Method "${methodName}" not found`);
28
28
  if (!result)
29
29
  return;
30
30
  const { handler, handlerName } = result;
@@ -42,9 +42,9 @@ let FiveMEventProcessor = class FiveMEventProcessor {
42
42
  logger_1.loggers.eventBus.debug(`Registered FiveM event: ${metadata.event} -> ${handlerName}`);
43
43
  }
44
44
  };
45
- exports.FiveMEventProcessor = FiveMEventProcessor;
46
- exports.FiveMEventProcessor = FiveMEventProcessor = __decorate([
45
+ exports.RuntimeEventProcessor = RuntimeEventProcessor;
46
+ exports.RuntimeEventProcessor = RuntimeEventProcessor = __decorate([
47
47
  (0, tsyringe_1.injectable)(),
48
48
  __param(0, (0, tsyringe_1.inject)(IEngineEvents_1.IEngineEvents)),
49
49
  __metadata("design:paramtypes", [IEngineEvents_1.IEngineEvents])
50
- ], FiveMEventProcessor);
50
+ ], RuntimeEventProcessor);
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.TickProcessor = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
17
  const ITick_1 = require("../../../../adapters/contracts/ITick");
18
- const logger_1 = require("../../../../kernel/shared/logger");
18
+ const logger_1 = require("../../../../kernel/logger");
19
19
  const metadata_server_keys_1 = require("../metadata-server.keys");
20
20
  let TickProcessor = class TickProcessor {
21
21
  constructor(tickService) {
@@ -2,36 +2,41 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerSystemServer = registerSystemServer;
4
4
  const index_1 = require("../../../kernel/di/index");
5
+ const command_error_observer_contract_1 = require("../contracts/security/command-error-observer.contract");
5
6
  const net_event_security_observer_contract_1 = require("../contracts/security/net-event-security-observer.contract");
6
7
  const security_handler_contract_1 = require("../contracts/security/security-handler.contract");
8
+ const default_command_error_observer_1 = require("../services/default/default-command-error-observer");
7
9
  const default_net_event_security_observer_1 = require("../services/default/default-net-event-security-observer");
8
10
  const default_security_handler_1 = require("../services/default/default-security.handler");
9
11
  const command_processor_1 = require("./processors/command.processor");
10
12
  const export_processor_1 = require("./processors/export.processor");
11
- const fivemEvent_processor_1 = require("./processors/fivemEvent.processor");
12
13
  const internalEvent_processor_1 = require("./processors/internalEvent.processor");
13
14
  const netEvent_processor_1 = require("./processors/netEvent.processor");
15
+ const runtimeEvent_processor_1 = require("./processors/runtimeEvent.processor");
14
16
  const tick_processor_1 = require("./processors/tick.processor");
15
17
  function registerSystemServer(ctx) {
16
18
  const { features } = ctx;
17
19
  if (features.netEvents.enabled) {
18
- index_1.di.register('DecoratorProcessor', { useClass: netEvent_processor_1.NetEventProcessor });
19
- if (!index_1.di.isRegistered(security_handler_contract_1.SecurityHandlerContract)) {
20
- index_1.di.registerSingleton(security_handler_contract_1.SecurityHandlerContract, default_security_handler_1.DefaultSecurityHandler);
20
+ index_1.GLOBAL_CONTAINER.register('DecoratorProcessor', { useClass: netEvent_processor_1.NetEventProcessor });
21
+ if (!index_1.GLOBAL_CONTAINER.isRegistered(security_handler_contract_1.SecurityHandlerContract)) {
22
+ index_1.GLOBAL_CONTAINER.registerSingleton(security_handler_contract_1.SecurityHandlerContract, default_security_handler_1.DefaultSecurityHandler);
21
23
  }
22
- if (!index_1.di.isRegistered(net_event_security_observer_contract_1.NetEventSecurityObserverContract)) {
23
- index_1.di.registerSingleton(net_event_security_observer_contract_1.NetEventSecurityObserverContract, default_net_event_security_observer_1.DefaultNetEventSecurityObserver);
24
+ if (!index_1.GLOBAL_CONTAINER.isRegistered(net_event_security_observer_contract_1.NetEventSecurityObserverContract)) {
25
+ index_1.GLOBAL_CONTAINER.registerSingleton(net_event_security_observer_contract_1.NetEventSecurityObserverContract, default_net_event_security_observer_1.DefaultNetEventSecurityObserver);
24
26
  }
25
27
  }
26
- index_1.di.register('DecoratorProcessor', { useClass: tick_processor_1.TickProcessor });
28
+ index_1.GLOBAL_CONTAINER.register('DecoratorProcessor', { useClass: tick_processor_1.TickProcessor });
27
29
  if (features.exports.enabled) {
28
- index_1.di.register('DecoratorProcessor', { useClass: export_processor_1.ExportProcessor });
30
+ index_1.GLOBAL_CONTAINER.register('DecoratorProcessor', { useClass: export_processor_1.ExportProcessor });
29
31
  }
30
- index_1.di.register('DecoratorProcessor', { useClass: internalEvent_processor_1.InternalEventProcessor });
32
+ index_1.GLOBAL_CONTAINER.register('DecoratorProcessor', { useClass: internalEvent_processor_1.InternalEventProcessor });
31
33
  if (features.commands.enabled) {
32
- index_1.di.register('DecoratorProcessor', { useClass: command_processor_1.CommandProcessor });
34
+ index_1.GLOBAL_CONTAINER.register('DecoratorProcessor', { useClass: command_processor_1.CommandProcessor });
35
+ if (!index_1.GLOBAL_CONTAINER.isRegistered(command_error_observer_contract_1.CommandErrorObserverContract)) {
36
+ index_1.GLOBAL_CONTAINER.registerSingleton(command_error_observer_contract_1.CommandErrorObserverContract, default_command_error_observer_1.DefaultCommandErrorObserver);
37
+ }
33
38
  }
34
39
  if (features.fiveMEvents.enabled) {
35
- index_1.di.register('DecoratorProcessor', { useClass: fivemEvent_processor_1.FiveMEventProcessor });
40
+ index_1.GLOBAL_CONTAINER.register('DecoratorProcessor', { useClass: runtimeEvent_processor_1.RuntimeEventProcessor });
36
41
  }
37
42
  }
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateSchemaFromTypes = generateSchemaFromTypes;
7
7
  const zod_1 = __importDefault(require("zod"));
8
- const utils_1 = require("../../../kernel/utils");
8
+ const __1 = require("../../../");
9
9
  const player_1 = require("../entities/player");
10
10
  function typeToZodSchema(type) {
11
11
  switch (type) {
@@ -28,7 +28,7 @@ function generateSchemaFromTypes(paramTypes) {
28
28
  if (!paramTypes || paramTypes.length === 0)
29
29
  return zod_1.default.tuple([]);
30
30
  if (paramTypes[0] !== player_1.Player) {
31
- throw new utils_1.AppError('SCHEMA:VALIDATION_ERROR', `First parameter must be Player, got ${(_a = paramTypes[0]) === null || _a === void 0 ? void 0 : _a.name}`, 'core');
31
+ throw new __1.AppError('SCHEMA:VALIDATION_ERROR', `First parameter must be Player, got ${(_a = paramTypes[0]) === null || _a === void 0 ? void 0 : _a.name}`, 'core');
32
32
  }
33
33
  if (paramTypes.length === 1)
34
34
  return zod_1.default.tuple([]);