@open-core/framework 1.0.5-beta.1 → 1.0.5

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 (397) hide show
  1. package/dist/adapters/contracts/IEngineEvents.d.ts +5 -2
  2. package/dist/adapters/contracts/IEngineEvents.js +7 -0
  3. package/dist/adapters/contracts/IExports.d.ts +2 -2
  4. package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
  5. package/dist/adapters/contracts/IPlatformContext.js +8 -0
  6. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +25 -0
  7. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +8 -0
  8. package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
  9. package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
  10. package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
  11. package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
  12. package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
  13. package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
  14. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
  15. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
  16. package/dist/adapters/contracts/client/camera/IClientCameraPort.d.ts +107 -0
  17. package/dist/adapters/contracts/client/camera/IClientCameraPort.js +8 -0
  18. package/dist/adapters/contracts/client/camera/index.d.ts +1 -0
  19. package/dist/adapters/contracts/client/camera/index.js +1 -0
  20. package/dist/adapters/contracts/client/index.d.ts +11 -0
  21. package/dist/adapters/contracts/client/index.js +11 -0
  22. package/dist/adapters/contracts/client/ped/IClientPedPort.d.ts +62 -0
  23. package/dist/adapters/contracts/client/ped/IClientPedPort.js +5 -0
  24. package/dist/adapters/contracts/client/ped/index.d.ts +1 -0
  25. package/dist/adapters/contracts/client/ped/index.js +1 -0
  26. package/dist/adapters/contracts/client/progress/IClientProgressPort.d.ts +53 -0
  27. package/dist/adapters/contracts/client/progress/IClientProgressPort.js +8 -0
  28. package/dist/adapters/contracts/client/progress/index.d.ts +1 -0
  29. package/dist/adapters/contracts/client/progress/index.js +1 -0
  30. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +6 -0
  31. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +6 -0
  32. package/dist/adapters/contracts/client/spawn/IClientSpawnPort.d.ts +19 -0
  33. package/dist/adapters/contracts/client/spawn/IClientSpawnPort.js +2 -0
  34. package/dist/adapters/contracts/client/spawn/index.d.ts +4 -0
  35. package/dist/adapters/contracts/client/spawn/index.js +4 -0
  36. package/dist/adapters/contracts/client/spawn/types.d.ts +17 -0
  37. package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
  38. package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
  39. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
  40. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
  41. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
  42. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
  43. package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
  44. package/dist/adapters/contracts/client/ui/index.js +4 -0
  45. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +14 -0
  46. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
  47. package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
  48. package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
  49. package/dist/adapters/contracts/client/ui/webview/types.d.ts +27 -0
  50. package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
  51. package/dist/adapters/contracts/client/vehicle/IClientVehiclePort.d.ts +166 -0
  52. package/dist/adapters/contracts/client/vehicle/IClientVehiclePort.js +8 -0
  53. package/dist/adapters/contracts/client/vehicle/index.d.ts +1 -0
  54. package/dist/adapters/contracts/client/vehicle/index.js +1 -0
  55. package/dist/adapters/contracts/index.d.ts +4 -2
  56. package/dist/adapters/contracts/index.js +4 -3
  57. package/dist/adapters/contracts/runtime/index.d.ts +1 -0
  58. package/dist/adapters/contracts/runtime/index.js +1 -0
  59. package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
  60. package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
  61. package/dist/adapters/contracts/server/IEntityServer.d.ts +4 -28
  62. package/dist/adapters/contracts/server/IEntityServer.js +0 -26
  63. package/dist/adapters/contracts/server/IPlayerServer.d.ts +7 -26
  64. package/dist/adapters/contracts/server/IPlayerServer.js +0 -26
  65. package/dist/adapters/contracts/server/index.d.ts +10 -0
  66. package/dist/adapters/contracts/server/index.js +10 -0
  67. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
  68. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
  69. package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
  70. package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
  71. package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
  72. package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
  73. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
  74. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
  75. package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
  76. package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
  77. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
  78. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
  79. package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
  80. package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
  81. package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
  82. package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
  83. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
  84. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
  85. package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
  86. package/dist/adapters/contracts/server/player-state/index.js +1 -0
  87. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
  88. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
  89. package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
  90. package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
  91. package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
  92. package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
  93. package/dist/adapters/contracts/transport/events.api.d.ts +3 -3
  94. package/dist/adapters/contracts/transport/index.d.ts +4 -0
  95. package/dist/adapters/contracts/transport/index.js +4 -0
  96. package/dist/adapters/contracts/transport/rpc.api.d.ts +3 -3
  97. package/dist/adapters/index.d.ts +3 -14
  98. package/dist/adapters/index.js +3 -20
  99. package/dist/adapters/node/node-capabilities.d.ts +11 -11
  100. package/dist/adapters/node/node-capabilities.js +15 -27
  101. package/dist/adapters/node/node-engine-events.d.ts +1 -1
  102. package/dist/adapters/node/node-engine-events.js +2 -1
  103. package/dist/adapters/node/node-entity-server.d.ts +2 -2
  104. package/dist/adapters/node/node-entity-server.js +2 -2
  105. package/dist/adapters/node/node-ped-appearance-client.d.ts +2 -2
  106. package/dist/adapters/node/node-ped-appearance-client.js +2 -2
  107. package/dist/adapters/node/node-platform.js +4 -4
  108. package/dist/adapters/node/node-player-server.d.ts +3 -2
  109. package/dist/adapters/node/node-player-server.js +8 -2
  110. package/dist/adapters/node/transport/node.events.d.ts +4 -4
  111. package/dist/adapters/node/transport/node.rpc.d.ts +3 -3
  112. package/dist/adapters/node/transport/node.rpc.js +1 -1
  113. package/dist/adapters/register-capabilities.d.ts +1 -1
  114. package/dist/adapters/register-capabilities.js +1 -3
  115. package/dist/adapters/register-client-capabilities.d.ts +3 -2
  116. package/dist/adapters/register-client-capabilities.js +16 -41
  117. package/dist/contracts/client.d.ts +5 -0
  118. package/dist/contracts/client.js +5 -0
  119. package/dist/contracts/server.d.ts +19 -0
  120. package/dist/contracts/server.js +19 -0
  121. package/dist/contracts.d.ts +5 -0
  122. package/dist/contracts.js +5 -0
  123. package/dist/index.d.ts +2 -1
  124. package/dist/index.js +2 -1
  125. package/dist/kernel/logger/client-log-console.d.ts +4 -0
  126. package/dist/kernel/logger/client-log-console.js +43 -0
  127. package/dist/kernel/logger/core-logger.d.ts +3 -1
  128. package/dist/kernel/logger/core-logger.js +4 -2
  129. package/dist/kernel/logger/index.d.ts +3 -1
  130. package/dist/kernel/logger/index.js +2 -1
  131. package/dist/kernel/logger/logger.types.d.ts +1 -0
  132. package/dist/kernel/logger/logger.types.js +35 -0
  133. package/dist/kernel/logger/transports/buffered.transport.js +4 -4
  134. package/dist/kernel/logger/transports/console.transport.js +2 -2
  135. package/dist/kernel/logger/transports/dev-transport.factory.js +1 -1
  136. package/dist/kernel/logger/transports/simple-console.transport.js +15 -10
  137. package/dist/kernel-public.d.ts +1 -0
  138. package/dist/kernel-public.js +1 -0
  139. package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
  140. package/dist/runtime/client/adapter/client-adapter.js +11 -0
  141. package/dist/runtime/client/adapter/index.d.ts +20 -0
  142. package/dist/runtime/client/adapter/index.js +20 -0
  143. package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
  144. package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
  145. package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
  146. package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
  147. package/dist/runtime/client/adapter/node-camera-port.d.ts +19 -0
  148. package/dist/runtime/client/adapter/node-camera-port.js +31 -0
  149. package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
  150. package/dist/runtime/client/adapter/node-client-adapter.js +64 -0
  151. package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +11 -0
  152. package/dist/runtime/client/adapter/node-local-player-bridge.js +27 -0
  153. package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
  154. package/dist/runtime/client/adapter/node-log-console.js +48 -0
  155. package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
  156. package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
  157. package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
  158. package/dist/{adapters/fivem/fivem-hasher.js → runtime/client/adapter/node-notification-bridge.js} +7 -11
  159. package/dist/runtime/client/adapter/node-ped-port.d.ts +20 -0
  160. package/dist/runtime/client/adapter/node-ped-port.js +38 -0
  161. package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
  162. package/dist/{adapters/fivem/fivem-tick.js → runtime/client/adapter/node-platform-bridge.js} +5 -10
  163. package/dist/runtime/client/adapter/node-progress-port.d.ts +8 -0
  164. package/dist/runtime/client/adapter/node-progress-port.js +27 -0
  165. package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +22 -0
  166. package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
  167. package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
  168. package/dist/runtime/client/adapter/node-spawn-bridge.js +22 -0
  169. package/dist/runtime/client/adapter/node-vehicle-port.d.ts +31 -0
  170. package/dist/runtime/client/adapter/node-vehicle-port.js +73 -0
  171. package/dist/runtime/client/adapter/node-webview-bridge.d.ts +16 -0
  172. package/dist/runtime/client/adapter/node-webview-bridge.js +45 -0
  173. package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
  174. package/dist/runtime/client/adapter/platform-bridge.js +1 -0
  175. package/dist/runtime/client/adapter/registry.d.ts +9 -0
  176. package/dist/runtime/client/adapter/registry.js +85 -0
  177. package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
  178. package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
  179. package/dist/runtime/client/api.d.ts +2 -1
  180. package/dist/runtime/client/api.js +2 -1
  181. package/dist/runtime/client/client-bootstrap.js +51 -44
  182. package/dist/runtime/client/client-core.d.ts +2 -0
  183. package/dist/runtime/client/client-core.js +9 -0
  184. package/dist/runtime/client/client-runtime.d.ts +3 -0
  185. package/dist/runtime/client/client-runtime.js +3 -0
  186. package/dist/runtime/client/controllers/appearance.controller.d.ts +3 -1
  187. package/dist/runtime/client/controllers/appearance.controller.js +17 -6
  188. package/dist/runtime/client/controllers/spawner.controller.js +6 -3
  189. package/dist/runtime/client/decorators/controller.js +2 -10
  190. package/dist/runtime/client/decorators/onView.d.ts +3 -3
  191. package/dist/runtime/client/decorators/onView.js +3 -3
  192. package/dist/runtime/client/index.d.ts +1 -0
  193. package/dist/runtime/client/index.js +1 -0
  194. package/dist/runtime/client/library/create-client-library.js +9 -1
  195. package/dist/runtime/client/services/appearance.service.d.ts +2 -2
  196. package/dist/runtime/client/services/appearance.service.js +7 -4
  197. package/dist/runtime/client/services/blip.service.d.ts +6 -93
  198. package/dist/runtime/client/services/blip.service.js +58 -153
  199. package/dist/runtime/client/services/camera-effects.registry.d.ts +3 -0
  200. package/dist/runtime/client/services/camera-effects.registry.js +20 -7
  201. package/dist/runtime/client/services/camera.d.ts +4 -106
  202. package/dist/runtime/client/services/camera.js +36 -98
  203. package/dist/runtime/client/services/cinematic.d.ts +5 -1
  204. package/dist/runtime/client/services/cinematic.js +45 -30
  205. package/dist/runtime/client/services/index.d.ts +1 -0
  206. package/dist/runtime/client/services/index.js +1 -0
  207. package/dist/runtime/client/services/marker.service.d.ts +12 -63
  208. package/dist/runtime/client/services/marker.service.js +62 -97
  209. package/dist/runtime/client/services/notification.service.d.ts +6 -57
  210. package/dist/runtime/client/services/notification.service.js +43 -81
  211. package/dist/runtime/client/services/ped.service.d.ts +6 -148
  212. package/dist/runtime/client/services/ped.service.js +42 -221
  213. package/dist/runtime/client/services/progress.service.d.ts +4 -75
  214. package/dist/runtime/client/services/progress.service.js +20 -178
  215. package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
  216. package/dist/runtime/client/services/session-bridge.service.js +62 -0
  217. package/dist/runtime/client/services/spawn.service.d.ts +4 -56
  218. package/dist/runtime/client/services/spawn.service.js +29 -191
  219. package/dist/runtime/client/services/streaming.service.d.ts +5 -126
  220. package/dist/runtime/client/services/streaming.service.js +72 -217
  221. package/dist/runtime/client/services/textui.service.d.ts +5 -45
  222. package/dist/runtime/client/services/textui.service.js +55 -88
  223. package/dist/runtime/client/services/vehicle-client.service.d.ts +12 -149
  224. package/dist/runtime/client/services/vehicle-client.service.js +128 -374
  225. package/dist/runtime/client/services/vehicle.service.d.ts +4 -147
  226. package/dist/runtime/client/services/vehicle.service.js +33 -239
  227. package/dist/runtime/client/system/processors/export.processor.d.ts +3 -0
  228. package/dist/runtime/client/system/processors/export.processor.js +16 -3
  229. package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +3 -0
  230. package/dist/runtime/client/system/processors/gameEvent.processor.js +16 -3
  231. package/dist/runtime/client/system/processors/interval.processor.d.ts +3 -0
  232. package/dist/runtime/client/system/processors/interval.processor.js +17 -4
  233. package/dist/runtime/client/system/processors/key.processor.d.ts +3 -0
  234. package/dist/runtime/client/system/processors/key.processor.js +18 -5
  235. package/dist/runtime/client/system/processors/localEvent.processor.d.ts +3 -0
  236. package/dist/runtime/client/system/processors/localEvent.processor.js +16 -3
  237. package/dist/runtime/client/system/processors/netEvent.processor.d.ts +3 -0
  238. package/dist/runtime/client/system/processors/netEvent.processor.js +16 -3
  239. package/dist/runtime/client/system/processors/onRpc.processor.js +1 -1
  240. package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +5 -0
  241. package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +26 -7
  242. package/dist/runtime/client/system/processors/tick.processor.d.ts +3 -0
  243. package/dist/runtime/client/system/processors/tick.processor.js +16 -3
  244. package/dist/runtime/client/system/processors/view.processor.d.ts +3 -0
  245. package/dist/runtime/client/system/processors/view.processor.js +21 -10
  246. package/dist/runtime/client/system/processors.register.d.ts +1 -0
  247. package/dist/runtime/client/system/processors.register.js +8 -0
  248. package/dist/runtime/client/ui-bridge.d.ts +2 -114
  249. package/dist/runtime/client/ui-bridge.js +2 -194
  250. package/dist/runtime/client/webview-bridge.d.ts +34 -0
  251. package/dist/runtime/client/webview-bridge.js +103 -0
  252. package/dist/runtime/client/webview.service.d.ts +15 -0
  253. package/dist/runtime/client/webview.service.js +103 -0
  254. package/dist/runtime/server/adapter/index.d.ts +5 -0
  255. package/dist/runtime/server/adapter/index.js +5 -0
  256. package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
  257. package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
  258. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
  259. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +95 -0
  260. package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
  261. package/dist/runtime/server/adapter/node-player-lifecycle-server.js +56 -0
  262. package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
  263. package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
  264. package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
  265. package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
  266. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
  267. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +58 -0
  268. package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
  269. package/dist/runtime/server/adapter/player-adapter.js +28 -0
  270. package/dist/runtime/server/adapter/registry.d.ts +26 -0
  271. package/dist/runtime/server/adapter/registry.js +101 -0
  272. package/dist/runtime/server/adapter/serialization.d.ts +6 -0
  273. package/dist/runtime/server/adapter/serialization.js +9 -0
  274. package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
  275. package/dist/runtime/server/adapter/server-adapter.js +14 -0
  276. package/dist/runtime/server/api.d.ts +2 -1
  277. package/dist/runtime/server/api.js +2 -1
  278. package/dist/runtime/server/apis/appearance.api.d.ts +5 -3
  279. package/dist/runtime/server/apis/appearance.api.js +20 -7
  280. package/dist/runtime/server/apis/chat.api.js +6 -5
  281. package/dist/runtime/server/apis/npcs.api.d.ts +3 -4
  282. package/dist/runtime/server/apis/npcs.api.js +28 -57
  283. package/dist/runtime/server/apis/parallel-compute.api.js +1 -0
  284. package/dist/runtime/server/apis/vehicle-modification.api.d.ts +3 -1
  285. package/dist/runtime/server/apis/vehicle-modification.api.js +13 -6
  286. package/dist/runtime/server/apis/vehicles.api.d.ts +12 -6
  287. package/dist/runtime/server/apis/vehicles.api.js +55 -40
  288. package/dist/runtime/server/bootstrap.js +28 -19
  289. package/dist/runtime/server/controllers/channel.controller.js +2 -1
  290. package/dist/runtime/server/controllers/command-export.controller.js +5 -3
  291. package/dist/runtime/server/controllers/player-export.controller.js +5 -4
  292. package/dist/runtime/server/controllers/remote-command-execution.controller.js +2 -1
  293. package/dist/runtime/server/controllers/session.controller.js +3 -2
  294. package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -1
  295. package/dist/runtime/server/controllers/vehicle.controller.js +13 -7
  296. package/dist/runtime/server/core.d.ts +2 -0
  297. package/dist/runtime/server/core.js +9 -1
  298. package/dist/runtime/server/decorators/command.d.ts +2 -0
  299. package/dist/runtime/server/decorators/command.js +3 -1
  300. package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +2 -1
  301. package/dist/runtime/server/entities/npc.d.ts +3 -1
  302. package/dist/runtime/server/entities/npc.js +3 -3
  303. package/dist/runtime/server/entities/player.d.ts +9 -12
  304. package/dist/runtime/server/entities/player.js +49 -31
  305. package/dist/runtime/server/entities/vehicle.js +2 -2
  306. package/dist/runtime/server/error-handler.js +13 -2
  307. package/dist/runtime/server/helpers/command-validation.helper.js +21 -8
  308. package/dist/runtime/server/helpers/function-helper.d.ts +1 -0
  309. package/dist/runtime/server/helpers/function-helper.js +15 -8
  310. package/dist/runtime/server/implementations/local/channel.local.d.ts +1 -1
  311. package/dist/runtime/server/implementations/local/channel.local.js +3 -2
  312. package/dist/runtime/server/implementations/local/player.local.d.ts +7 -3
  313. package/dist/runtime/server/implementations/local/player.local.js +23 -11
  314. package/dist/runtime/server/implementations/remote/channel.remote.d.ts +2 -1
  315. package/dist/runtime/server/implementations/remote/channel.remote.js +5 -2
  316. package/dist/runtime/server/implementations/remote/command.remote.d.ts +3 -1
  317. package/dist/runtime/server/implementations/remote/command.remote.js +9 -4
  318. package/dist/runtime/server/implementations/remote/player.remote.d.ts +7 -10
  319. package/dist/runtime/server/implementations/remote/player.remote.js +24 -29
  320. package/dist/runtime/server/library/create-server-library.js +17 -2
  321. package/dist/runtime/server/ports/channel.api-port.d.ts +1 -1
  322. package/dist/runtime/server/runtime.d.ts +3 -0
  323. package/dist/runtime/server/runtime.js +1 -15
  324. package/dist/runtime/server/services/appearance.service.d.ts +0 -95
  325. package/dist/runtime/server/services/appearance.service.js +15 -192
  326. package/dist/runtime/server/services/parallel/worker-pool.d.ts +1 -1
  327. package/dist/runtime/server/services/parallel/worker-pool.js +38 -6
  328. package/dist/runtime/server/services/parallel/worker.js +1 -0
  329. package/dist/runtime/server/services/services.register.js +56 -24
  330. package/dist/runtime/server/system/processors/netEvent.processor.js +1 -1
  331. package/dist/runtime/server/system/processors/onRpc.processor.js +1 -1
  332. package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +2 -1
  333. package/dist/runtime/server/system/processors/runtimeEvent.processor.js +1 -1
  334. package/dist/runtime/server/system/schema-generator.d.ts +1 -1
  335. package/dist/runtime/server/system/schema-generator.js +6 -3
  336. package/dist/runtime/server/types/core-exports.types.d.ts +5 -0
  337. package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
  338. package/dist/runtime/shared/helpers/process-tuple-schema.js +32 -0
  339. package/dist/runtime/shared/types/system-types.d.ts +55 -0
  340. package/dist/runtime/shared/types/system-types.js +54 -0
  341. package/package.json +41 -13
  342. package/dist/adapters/cfx/cfx-capabilities.d.ts +0 -16
  343. package/dist/adapters/cfx/cfx-capabilities.js +0 -70
  344. package/dist/adapters/cfx/cfx-platform.d.ts +0 -2
  345. package/dist/adapters/cfx/cfx-platform.js +0 -85
  346. package/dist/adapters/cfx/index.d.ts +0 -3
  347. package/dist/adapters/cfx/index.js +0 -3
  348. package/dist/adapters/cfx/runtime-profile.d.ts +0 -3
  349. package/dist/adapters/cfx/runtime-profile.js +0 -37
  350. package/dist/adapters/contracts/IPlatformCapabilities.d.ts +0 -79
  351. package/dist/adapters/contracts/IPlatformCapabilities.js +0 -27
  352. package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +0 -206
  353. package/dist/adapters/contracts/client/IPedAppearanceClient.js +0 -12
  354. package/dist/adapters/fivem/fivem-capabilities.d.ts +0 -18
  355. package/dist/adapters/fivem/fivem-capabilities.js +0 -61
  356. package/dist/adapters/fivem/fivem-engine-events.d.ts +0 -5
  357. package/dist/adapters/fivem/fivem-engine-events.js +0 -24
  358. package/dist/adapters/fivem/fivem-entity-server.d.ts +0 -26
  359. package/dist/adapters/fivem/fivem-entity-server.js +0 -87
  360. package/dist/adapters/fivem/fivem-exports.d.ts +0 -5
  361. package/dist/adapters/fivem/fivem-exports.js +0 -9
  362. package/dist/adapters/fivem/fivem-hasher.d.ts +0 -7
  363. package/dist/adapters/fivem/fivem-net-transport.d.ts +0 -1
  364. package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +0 -34
  365. package/dist/adapters/fivem/fivem-ped-appearance-client.js +0 -79
  366. package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +0 -14
  367. package/dist/adapters/fivem/fivem-ped-appearance-server.js +0 -22
  368. package/dist/adapters/fivem/fivem-ped-server.d.ts +0 -9
  369. package/dist/adapters/fivem/fivem-ped-server.js +0 -30
  370. package/dist/adapters/fivem/fivem-platform.d.ts +0 -5
  371. package/dist/adapters/fivem/fivem-platform.js +0 -74
  372. package/dist/adapters/fivem/fivem-player-server.d.ts +0 -24
  373. package/dist/adapters/fivem/fivem-player-server.js +0 -83
  374. package/dist/adapters/fivem/fivem-playerinfo.d.ts +0 -6
  375. package/dist/adapters/fivem/fivem-playerinfo.js +0 -10
  376. package/dist/adapters/fivem/fivem-resourceinfo.d.ts +0 -5
  377. package/dist/adapters/fivem/fivem-resourceinfo.js +0 -24
  378. package/dist/adapters/fivem/fivem-tick.d.ts +0 -7
  379. package/dist/adapters/fivem/fivem-vehicle-server.d.ts +0 -15
  380. package/dist/adapters/fivem/fivem-vehicle-server.js +0 -44
  381. package/dist/adapters/fivem/index.d.ts +0 -14
  382. package/dist/adapters/fivem/index.js +0 -16
  383. package/dist/adapters/fivem/transport/adapter.d.ts +0 -8
  384. package/dist/adapters/fivem/transport/adapter.js +0 -8
  385. package/dist/adapters/fivem/transport/fivem.events.d.ts +0 -8
  386. package/dist/adapters/fivem/transport/fivem.events.js +0 -36
  387. package/dist/adapters/fivem/transport/fivem.rpc.d.ts +0 -28
  388. package/dist/adapters/fivem/transport/fivem.rpc.js +0 -183
  389. package/dist/runtime/client/controllers/player-sync.controller.d.ts +0 -11
  390. package/dist/runtime/client/controllers/player-sync.controller.js +0 -51
  391. package/dist/runtime/client/player/player.d.ts +0 -262
  392. package/dist/runtime/client/player/player.js +0 -474
  393. package/dist/runtime/client/player/player.loader.d.ts +0 -1
  394. package/dist/runtime/client/player/player.loader.js +0 -18
  395. package/dist/runtime/server/helpers/process-tuple-schema.d.ts +0 -20
  396. package/dist/runtime/server/helpers/process-tuple-schema.js +0 -56
  397. /package/dist/adapters/{fivem/fivem-net-transport.js → contracts/client/spawn/types.js} +0 -0
@@ -14,8 +14,8 @@ export interface RpcContext extends EventContext {
14
14
  */
15
15
  export type RpcTarget = number | number[] | 'all';
16
16
  export type RpcCallTarget = number | number[];
17
- type RpcCallArgs<C extends RuntimeContext> = C extends 'server' ? [target: RpcCallTarget, ...args: any[]] : [...args: any[]];
18
- type RpcNotifyArgs<C extends RuntimeContext> = C extends 'server' ? [target: RpcTarget, ...args: any[]] : [...args: any[]];
17
+ type RpcCallArgs<C extends RuntimeContext> = C extends 'server' ? [target: RpcCallTarget, ...args: unknown[]] : [...args: unknown[]];
18
+ type RpcNotifyArgs<C extends RuntimeContext> = C extends 'server' ? [target: RpcTarget, ...args: unknown[]] : [...args: unknown[]];
19
19
  /**
20
20
  * Remote Procedure Call API.
21
21
  *
@@ -47,7 +47,7 @@ export declare abstract class RpcAPI<C extends RuntimeContext> {
47
47
  * The handler receives a {@link RpcContext}. In server environments this usually includes
48
48
  * the `clientId` of the caller (via {@link EventContext}).
49
49
  */
50
- abstract on<TArgs extends any[], TResult>(name: string, handler: (ctx: RpcContext, ...args: TArgs) => TResult | Promise<TResult>): void;
50
+ abstract on<TArgs extends readonly unknown[], TResult>(name: string, handler: (ctx: RpcContext, ...args: TArgs) => TResult | Promise<TResult>): void;
51
51
  /**
52
52
  * Call an RPC and wait for the result.
53
53
  *
@@ -1,21 +1,10 @@
1
- export * from './contracts/client/IPedAppearanceClient';
1
+ export * from './contracts';
2
+ export * from './contracts/server';
2
3
  export * from './contracts/IEngineEvents';
3
4
  export * from './contracts/IExports';
4
- export * from './contracts/IHasher';
5
- export * from './contracts/IPlatformCapabilities';
5
+ export * from './contracts/IPlatformContext';
6
6
  export * from './contracts/IPlayerInfo';
7
7
  export * from './contracts/IResourceInfo';
8
8
  export * from './contracts/ITick';
9
- export * from './contracts/transport/context';
10
- export * from './contracts/transport/events.api';
11
- export * from './contracts/transport/messaging.transport';
12
- export * from './contracts/transport/rpc.api';
13
- export * from './contracts/server/IEntityServer';
14
- export * from './contracts/server/IPedServer';
15
- export * from './contracts/server/IPedAppearanceServer';
16
- export * from './contracts/server/IPlayerServer';
17
- export * from './contracts/server/IVehicleServer';
18
- export * from './contracts/types/identifier';
19
9
  export * from './platform/platform-registry';
20
10
  export * from './register-capabilities';
21
- export * from './cfx';
@@ -1,32 +1,15 @@
1
1
  // Adapters - External world connections
2
- // Client contracts
3
- export * from './contracts/client/IPedAppearanceClient';
4
- // Core contracts
2
+ export * from './contracts';
3
+ export * from './contracts/server';
5
4
  export * from './contracts/IEngineEvents';
6
5
  export * from './contracts/IExports';
7
- export * from './contracts/IHasher';
8
- export * from './contracts/IPlatformCapabilities';
6
+ export * from './contracts/IPlatformContext';
9
7
  export * from './contracts/IPlayerInfo';
10
8
  export * from './contracts/IResourceInfo';
11
9
  export * from './contracts/ITick';
12
- // Transport contracts
13
- export * from './contracts/transport/context';
14
- export * from './contracts/transport/events.api';
15
- export * from './contracts/transport/messaging.transport';
16
- export * from './contracts/transport/rpc.api';
17
- // Server contracts
18
- export * from './contracts/server/IEntityServer';
19
- export * from './contracts/server/IPedServer';
20
- export * from './contracts/server/IPedAppearanceServer';
21
- export * from './contracts/server/IPlayerServer';
22
- export * from './contracts/server/IVehicleServer';
23
- // Types
24
- export * from './contracts/types/identifier';
25
10
  // Platform registry
26
11
  export * from './platform/platform-registry';
27
12
  // Capability registration
28
13
  export * from './register-capabilities';
29
- // CitizenFX helpers
30
- export * from './cfx';
31
14
  // CitizenFX adapters (not exported by default - registered via registerServerCapabilities)
32
15
  // Node adapters (not exported by default - registered via registerServerCapabilities)
@@ -1,19 +1,19 @@
1
- import { IPlatformCapabilities } from '../contracts/IPlatformCapabilities';
1
+ import { IPlatformContext } from '../contracts/IPlatformContext';
2
2
  /**
3
- * Node.js mock platform capabilities implementation.
3
+ * Node.js mock platform context implementation.
4
4
  * Used for testing and standalone development.
5
5
  */
6
- export declare class NodeCapabilities extends IPlatformCapabilities {
6
+ export declare class NodePlatformContext extends IPlatformContext {
7
7
  readonly platformName = "node";
8
8
  readonly displayName = "Node.js (Mock)";
9
- readonly supportsRoutingBuckets = true;
10
- readonly supportsStateBags = true;
11
- readonly supportsVoiceChat = false;
12
- readonly supportsServerEntities = true;
13
9
  readonly identifierTypes: readonly ["steam", "license", "discord", "ip"];
14
10
  readonly maxPlayers: undefined;
15
- private readonly supportedFeatures;
16
- private readonly config;
17
- isFeatureSupported(feature: string): boolean;
18
- getConfig<T = unknown>(key: string): T | undefined;
11
+ readonly gameProfile: "common";
12
+ readonly defaultSpawnModel = "mp_m_freemode_01";
13
+ readonly defaultVehicleType = "automobile";
14
+ readonly enableServerVehicleCreation = true;
19
15
  }
16
+ /**
17
+ * @deprecated Use NodePlatformContext.
18
+ */
19
+ export declare const NodeCapabilities: typeof NodePlatformContext;
@@ -5,44 +5,32 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { injectable } from 'tsyringe';
8
- import { IPlatformCapabilities, PlatformFeatures } from '../contracts/IPlatformCapabilities';
8
+ import { IPlatformContext } from '../contracts/IPlatformContext';
9
9
  import { IdentifierTypes } from '../contracts/types/identifier';
10
10
  /**
11
- * Node.js mock platform capabilities implementation.
11
+ * Node.js mock platform context implementation.
12
12
  * Used for testing and standalone development.
13
13
  */
14
- let NodeCapabilities = class NodeCapabilities extends IPlatformCapabilities {
14
+ let NodePlatformContext = class NodePlatformContext extends IPlatformContext {
15
15
  platformName = 'node';
16
16
  displayName = 'Node.js (Mock)';
17
- supportsRoutingBuckets = true; // Mocked
18
- supportsStateBags = true; // Mocked
19
- supportsVoiceChat = false;
20
- supportsServerEntities = true; // Mocked
21
17
  identifierTypes = [
22
18
  IdentifierTypes.STEAM,
23
19
  IdentifierTypes.LICENSE,
24
20
  IdentifierTypes.DISCORD,
25
21
  IdentifierTypes.IP,
26
22
  ];
27
- maxPlayers = undefined; // Unlimited in mock mode
28
- supportedFeatures = new Set([
29
- PlatformFeatures.ROUTING_BUCKETS,
30
- PlatformFeatures.STATE_BAGS,
31
- PlatformFeatures.SERVER_ENTITIES,
32
- // Note: Other features are not mocked
33
- ]);
34
- config = {
35
- mockMode: true,
36
- defaultRoutingBucket: 0,
37
- };
38
- isFeatureSupported(feature) {
39
- return this.supportedFeatures.has(feature);
40
- }
41
- getConfig(key) {
42
- return this.config[key];
43
- }
23
+ maxPlayers = undefined;
24
+ gameProfile = 'common';
25
+ defaultSpawnModel = 'mp_m_freemode_01';
26
+ defaultVehicleType = 'automobile';
27
+ enableServerVehicleCreation = true;
44
28
  };
45
- NodeCapabilities = __decorate([
29
+ NodePlatformContext = __decorate([
46
30
  injectable()
47
- ], NodeCapabilities);
48
- export { NodeCapabilities };
31
+ ], NodePlatformContext);
32
+ export { NodePlatformContext };
33
+ /**
34
+ * @deprecated Use NodePlatformContext.
35
+ */
36
+ export const NodeCapabilities = NodePlatformContext;
@@ -6,7 +6,7 @@ import { IEngineEvents } from '../contracts/IEngineEvents';
6
6
  * Note: In Node.js, there are no native engine events like FiveM's lifecycle events.
7
7
  * This implementation provides a mock event system for testing purposes.
8
8
  */
9
- export declare class NodeEngineEvents implements IEngineEvents {
9
+ export declare class NodeEngineEvents extends IEngineEvents {
10
10
  private eventEmitter;
11
11
  on(eventName: string, handler?: (...args: any[]) => void): void;
12
12
  /**
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { EventEmitter } from 'node:events';
8
8
  import { injectable } from 'tsyringe';
9
+ import { IEngineEvents } from '../contracts/IEngineEvents';
9
10
  /**
10
11
  * Node.js implementation of IEngineEvents using EventEmitter.
11
12
  * Suitable for testing and non-FiveM runtime environments.
@@ -13,7 +14,7 @@ import { injectable } from 'tsyringe';
13
14
  * Note: In Node.js, there are no native engine events like FiveM's lifecycle events.
14
15
  * This implementation provides a mock event system for testing purposes.
15
16
  */
16
- let NodeEngineEvents = class NodeEngineEvents {
17
+ let NodeEngineEvents = class NodeEngineEvents extends IEngineEvents {
17
18
  eventEmitter = new EventEmitter();
18
19
  on(eventName, handler) {
19
20
  if (handler)
@@ -19,8 +19,8 @@ export declare class NodeEntityServer extends IEntityServer {
19
19
  getModel(handle: number): number;
20
20
  delete(handle: number): void;
21
21
  setOrphanMode(_handle: number, _mode: number): void;
22
- setRoutingBucket(handle: number, bucket: number): void;
23
- getRoutingBucket(handle: number): number;
22
+ setDimension(handle: number, bucket: number): void;
23
+ getDimension(handle: number): number;
24
24
  getStateBag(handle: number): EntityStateBag;
25
25
  getHealth(handle: number): number;
26
26
  setHealth(handle: number, health: number): void;
@@ -53,13 +53,13 @@ let NodeEntityServer = class NodeEntityServer extends IEntityServer {
53
53
  setOrphanMode(_handle, _mode) {
54
54
  // No-op in Node
55
55
  }
56
- setRoutingBucket(handle, bucket) {
56
+ setDimension(handle, bucket) {
57
57
  const entity = this.entities.get(handle);
58
58
  if (entity) {
59
59
  entity.bucket = bucket;
60
60
  }
61
61
  }
62
- getRoutingBucket(handle) {
62
+ getDimension(handle) {
63
63
  return this.entities.get(handle)?.bucket ?? 0;
64
64
  }
65
65
  getStateBag(handle) {
@@ -1,5 +1,5 @@
1
1
  import { HeadBlendData } from '../../kernel/shared';
2
- import { IPedAppearanceClient } from '../contracts/client/IPedAppearanceClient';
2
+ import { IGtaPedAppearanceBridge } from '../contracts/client/IGtaPedAppearanceBridge';
3
3
  /**
4
4
  * Node.js stub implementation of client-side ped appearance adapter.
5
5
  *
@@ -7,7 +7,7 @@ import { IPedAppearanceClient } from '../contracts/client/IPedAppearanceClient';
7
7
  * This is a no-op implementation for testing in Node.js environment.
8
8
  * All methods return default values or do nothing.
9
9
  */
10
- export declare class NodePedAppearanceClient extends IPedAppearanceClient {
10
+ export declare class NodePedAppearanceClient extends IGtaPedAppearanceBridge {
11
11
  setComponentVariation(): void;
12
12
  setPropIndex(): void;
13
13
  clearProp(): void;
@@ -1,4 +1,4 @@
1
- import { IPedAppearanceClient } from '../contracts/client/IPedAppearanceClient';
1
+ import { IGtaPedAppearanceBridge } from '../contracts/client/IGtaPedAppearanceBridge';
2
2
  /**
3
3
  * Node.js stub implementation of client-side ped appearance adapter.
4
4
  *
@@ -6,7 +6,7 @@ import { IPedAppearanceClient } from '../contracts/client/IPedAppearanceClient';
6
6
  * This is a no-op implementation for testing in Node.js environment.
7
7
  * All methods return default values or do nothing.
8
8
  */
9
- export class NodePedAppearanceClient extends IPedAppearanceClient {
9
+ export class NodePedAppearanceClient extends IGtaPedAppearanceBridge {
10
10
  setComponentVariation() { }
11
11
  setPropIndex() { }
12
12
  clearProp() { }
@@ -1,7 +1,7 @@
1
1
  import { IEngineEvents } from '../contracts/IEngineEvents';
2
2
  import { IExports } from '../contracts/IExports';
3
3
  import { IHasher } from '../contracts/IHasher';
4
- import { IPlatformCapabilities } from '../contracts/IPlatformCapabilities';
4
+ import { IPlatformContext } from '../contracts/IPlatformContext';
5
5
  import { IPlayerInfo } from '../contracts/IPlayerInfo';
6
6
  import { IResourceInfo } from '../contracts/IResourceInfo';
7
7
  import { ITick } from '../contracts/ITick';
@@ -26,7 +26,7 @@ export const NodePlatform = {
26
26
  },
27
27
  async register(container) {
28
28
  // Dynamically import Node.js mock implementations
29
- const [{ NodeMessagingTransport }, { NodeEngineEvents }, { NodeExports }, { NodeResourceInfo }, { NodeTick }, { NodePlayerInfo }, { NodeEntityServer }, { NodePedServer }, { NodeVehicleServer }, { NodePlayerServer }, { NodeHasher }, { NodePedAppearanceServer }, { NodeCapabilities },] = await Promise.all([
29
+ const [{ NodeMessagingTransport }, { NodeEngineEvents }, { NodeExports }, { NodeResourceInfo }, { NodeTick }, { NodePlayerInfo }, { NodeEntityServer }, { NodePedServer }, { NodeVehicleServer }, { NodePlayerServer }, { NodeHasher }, { NodePedAppearanceServer }, { NodePlatformContext },] = await Promise.all([
30
30
  import('./transport/adapter'),
31
31
  import('./node-engine-events'),
32
32
  import('./node-exports'),
@@ -42,8 +42,8 @@ export const NodePlatform = {
42
42
  import('./node-capabilities'),
43
43
  ]);
44
44
  // Register all Node.js mock implementations
45
- if (!container.isRegistered(IPlatformCapabilities))
46
- container.registerSingleton(IPlatformCapabilities, NodeCapabilities);
45
+ if (!container.isRegistered(IPlatformContext))
46
+ container.registerSingleton(IPlatformContext, NodePlatformContext);
47
47
  if (!container.isRegistered(MessagingTransport)) {
48
48
  const transport = new NodeMessagingTransport('server');
49
49
  container.registerInstance(MessagingTransport, transport);
@@ -9,6 +9,7 @@ export declare class NodePlayerServer extends IPlayerServer {
9
9
  private droppedPlayers;
10
10
  getPed(playerSrc: string): number;
11
11
  drop(playerSrc: string, _reason: string): void;
12
+ setModel(playerSrc: string, model: string): void;
12
13
  getIdentifier(playerSrc: string, identifierType: string): string | undefined;
13
14
  /**
14
15
  * @deprecated Use getPlayerIdentifiers() for structured identifier data.
@@ -19,8 +20,8 @@ export declare class NodePlayerServer extends IPlayerServer {
19
20
  getName(playerSrc: string): string;
20
21
  getPing(playerSrc: string): number;
21
22
  getEndpoint(playerSrc: string): string;
22
- setRoutingBucket(playerSrc: string, bucket: number): void;
23
- getRoutingBucket(playerSrc: string): number;
23
+ setDimension(playerSrc: string, bucket: number): void;
24
+ getDimension(playerSrc: string): number;
24
25
  getConnectedPlayers(): string[];
25
26
  /**
26
27
  * Add a mock player for testing.
@@ -21,6 +21,12 @@ let NodePlayerServer = class NodePlayerServer extends IPlayerServer {
21
21
  this.droppedPlayers.push(playerSrc);
22
22
  this.players.delete(playerSrc);
23
23
  }
24
+ setModel(playerSrc, model) {
25
+ const player = this.players.get(playerSrc);
26
+ if (player) {
27
+ player.model = model;
28
+ }
29
+ }
24
30
  getIdentifier(playerSrc, identifierType) {
25
31
  const player = this.players.get(playerSrc);
26
32
  if (!player)
@@ -57,13 +63,13 @@ let NodePlayerServer = class NodePlayerServer extends IPlayerServer {
57
63
  getEndpoint(playerSrc) {
58
64
  return this.players.get(playerSrc)?.endpoint ?? '';
59
65
  }
60
- setRoutingBucket(playerSrc, bucket) {
66
+ setDimension(playerSrc, bucket) {
61
67
  const player = this.players.get(playerSrc);
62
68
  if (player) {
63
69
  player.routingBucket = bucket;
64
70
  }
65
71
  }
66
- getRoutingBucket(playerSrc) {
72
+ getDimension(playerSrc) {
67
73
  return this.players.get(playerSrc)?.routingBucket ?? 0;
68
74
  }
69
75
  getConnectedPlayers() {
@@ -3,12 +3,12 @@ import { RuntimeContext } from '../../contracts/transport/context';
3
3
  type NodeTarget = number | number[] | 'all';
4
4
  export declare class NodeEvents extends EventsAPI<RuntimeContext> {
5
5
  private readonly emitter;
6
- on(event: string, handler: (ctx: {
6
+ on<TArgs extends readonly unknown[]>(event: string, handler: (ctx: {
7
7
  clientId?: number;
8
8
  raw?: unknown;
9
- }, ...args: any[]) => any): void;
10
- emit(event: string, targetOrArg?: NodeTarget | any, ...args: any[]): void;
11
- simulateClientEvent(event: string, clientId: number, ...args: any[]): void;
9
+ }, ...args: TArgs) => unknown): void;
10
+ emit(event: string, targetOrArg?: NodeTarget | unknown, ...args: unknown[]): void;
11
+ simulateClientEvent(event: string, clientId: number, ...args: unknown[]): void;
12
12
  clearHandlers(): void;
13
13
  }
14
14
  export {};
@@ -4,13 +4,13 @@ export declare class NodeRpc<C extends RuntimeContext = RuntimeContext> extends
4
4
  private readonly context;
5
5
  private readonly handlers;
6
6
  constructor(context: C);
7
- on<TArgs extends any[], TResult>(name: string, handler: (ctx: {
7
+ on<TArgs extends readonly unknown[], TResult>(name: string, handler: (ctx: {
8
8
  requestId: string;
9
9
  clientId?: number;
10
10
  raw?: unknown;
11
11
  }, ...args: TArgs) => TResult | Promise<TResult>): void;
12
- call<TResult = unknown>(name: string, ...args: any[]): Promise<TResult>;
13
- notify(name: string, ...args: any[]): Promise<void>;
12
+ call<TResult = unknown>(name: string, ...args: unknown[]): Promise<TResult>;
13
+ notify(name: string, ...args: unknown[]): Promise<void>;
14
14
  private normalizeInvocation;
15
15
  private isValidTarget;
16
16
  private executeCall;
@@ -8,7 +8,7 @@ export class NodeRpc extends RpcAPI {
8
8
  this.context = context;
9
9
  }
10
10
  on(name, handler) {
11
- this.handlers.set(name, handler);
11
+ this.handlers.set(name, (ctx, ...args) => handler(ctx, ...args));
12
12
  }
13
13
  call(name, ...args) {
14
14
  const { target, payload } = this.normalizeInvocation(name, 'call', args);
@@ -17,7 +17,7 @@ export declare function detectPlatform(): Platform;
17
17
  *
18
18
  * @remarks
19
19
  * This function registers adapters needed by the SERVER runtime only.
20
- * Client-side adapters are registered separately via `registerClientCapabilities`.
20
+ * Client-side adapters are now installed through `Client.init({ adapter })`.
21
21
  *
22
22
  * The function uses the Platform Registry to automatically detect and register
23
23
  * the appropriate platform adapters. You can also force a specific platform
@@ -1,5 +1,4 @@
1
1
  import { GLOBAL_CONTAINER } from '../kernel/di/container';
2
- import { CfxPlatform } from './cfx/cfx-platform';
3
2
  import { NodePlatform } from './node/node-platform';
4
3
  import { getCurrentPlatformName, platformRegistry, registerPlatform, } from './platform/platform-registry';
5
4
  // Re-export for convenience
@@ -8,7 +7,6 @@ export { platformRegistry, registerPlatform, getCurrentPlatformName };
8
7
  // Register built-in platforms
9
8
  // ─────────────────────────────────────────────────────────────────
10
9
  // Register CitizenFX platform (high priority)
11
- registerPlatform(CfxPlatform);
12
10
  // Register Node.js fallback platform (low priority)
13
11
  registerPlatform(NodePlatform);
14
12
  // ─────────────────────────────────────────────────────────────────
@@ -28,7 +26,7 @@ export function detectPlatform() {
28
26
  *
29
27
  * @remarks
30
28
  * This function registers adapters needed by the SERVER runtime only.
31
- * Client-side adapters are registered separately via `registerClientCapabilities`.
29
+ * Client-side adapters are now installed through `Client.init({ adapter })`.
32
30
  *
33
31
  * The function uses the Platform Registry to automatically detect and register
34
32
  * the appropriate platform adapters. You can also force a specific platform
@@ -2,7 +2,8 @@
2
2
  * Registers client-side platform-specific capability implementations.
3
3
  *
4
4
  * @remarks
5
- * This function registers adapters needed by the CLIENT runtime only.
6
- * Should be called during client bootstrap before services that depend on these adapters.
5
+ * Deprecated in favor of `Client.init({ adapter })` and custom client adapters.
6
+ *
7
+ * This legacy helper now installs only the built-in Node fallback bindings.
7
8
  */
8
9
  export declare function registerClientCapabilities(): Promise<void>;
@@ -1,58 +1,33 @@
1
1
  import { di } from '../runtime/client/client-container';
2
- import { IPedAppearanceClient } from './contracts/client/IPedAppearanceClient';
2
+ import { IGtaPedAppearanceBridge } from './contracts/client/IGtaPedAppearanceBridge';
3
3
  import { IHasher } from './contracts/IHasher';
4
4
  import { EventsAPI } from './contracts/transport/events.api';
5
5
  import { MessagingTransport } from './contracts/transport/messaging.transport';
6
6
  import { RpcAPI } from './contracts/transport/rpc.api';
7
- import { detectCfxGameProfile, isCfxRuntime } from './cfx/runtime-profile';
8
7
  /**
9
8
  * Registers client-side platform-specific capability implementations.
10
9
  *
11
10
  * @remarks
12
- * This function registers adapters needed by the CLIENT runtime only.
13
- * Should be called during client bootstrap before services that depend on these adapters.
11
+ * Deprecated in favor of `Client.init({ adapter })` and custom client adapters.
12
+ *
13
+ * This legacy helper now installs only the built-in Node fallback bindings.
14
14
  */
15
15
  export async function registerClientCapabilities() {
16
- const cfxRuntime = isCfxRuntime();
17
- const gameProfile = cfxRuntime ? detectCfxGameProfile() : 'common';
16
+ const [{ NodeMessagingTransport }, { NodePedAppearanceClient }, { NodeHasher }] = await Promise.all([
17
+ import('./node/transport/adapter'),
18
+ import('./node/node-ped-appearance-client'),
19
+ import('./node/node-hasher'),
20
+ ]);
18
21
  if (!di.isRegistered(MessagingTransport)) {
19
- if (cfxRuntime) {
20
- const [{ FiveMMessagingTransport }] = await Promise.all([import('./fivem/transport/adapter')]);
21
- const transport = new FiveMMessagingTransport();
22
- di.registerInstance(MessagingTransport, transport);
23
- di.registerInstance(EventsAPI, transport.events);
24
- di.registerInstance(RpcAPI, transport.rpc);
25
- }
26
- else {
27
- const [{ NodeMessagingTransport }] = await Promise.all([import('./node/transport/adapter')]);
28
- const transport = new NodeMessagingTransport('client');
29
- di.registerInstance(MessagingTransport, transport);
30
- di.registerInstance(EventsAPI, transport.events);
31
- di.registerInstance(RpcAPI, transport.rpc);
32
- }
22
+ const transport = new NodeMessagingTransport('client');
23
+ di.registerInstance(MessagingTransport, transport);
24
+ di.registerInstance(EventsAPI, transport.events);
25
+ di.registerInstance(RpcAPI, transport.rpc);
33
26
  }
34
- if (!di.isRegistered(IPedAppearanceClient)) {
35
- if (cfxRuntime && gameProfile !== 'rdr3') {
36
- const [{ FiveMPedAppearanceClientAdapter }] = await Promise.all([
37
- import('./fivem/fivem-ped-appearance-client'),
38
- ]);
39
- di.registerSingleton(IPedAppearanceClient, FiveMPedAppearanceClientAdapter);
40
- }
41
- else {
42
- const [{ NodePedAppearanceClient }] = await Promise.all([
43
- import('./node/node-ped-appearance-client'),
44
- ]);
45
- di.registerSingleton(IPedAppearanceClient, NodePedAppearanceClient);
46
- }
27
+ if (!di.isRegistered(IGtaPedAppearanceBridge)) {
28
+ di.registerSingleton(IGtaPedAppearanceBridge, NodePedAppearanceClient);
47
29
  }
48
30
  if (!di.isRegistered(IHasher)) {
49
- if (cfxRuntime) {
50
- const [{ FiveMHasher }] = await Promise.all([import('./fivem/fivem-hasher')]);
51
- di.registerSingleton(IHasher, FiveMHasher);
52
- }
53
- else {
54
- const [{ NodeHasher }] = await Promise.all([import('./node/node-hasher')]);
55
- di.registerSingleton(IHasher, NodeHasher);
56
- }
31
+ di.registerSingleton(IHasher, NodeHasher);
57
32
  }
58
33
  }
@@ -0,0 +1,5 @@
1
+ export * from '../adapters/contracts/IHasher';
2
+ export * from '../adapters/contracts/transport';
3
+ export * from '../adapters/contracts/types';
4
+ export * from '../adapters/contracts/runtime';
5
+ export * from '../adapters/contracts/client';
@@ -0,0 +1,5 @@
1
+ export * from '../adapters/contracts/IHasher';
2
+ export * from '../adapters/contracts/transport';
3
+ export * from '../adapters/contracts/types';
4
+ export * from '../adapters/contracts/runtime';
5
+ export * from '../adapters/contracts/client';
@@ -0,0 +1,19 @@
1
+ export * from '../adapters/contracts/IEngineEvents';
2
+ export * from '../adapters/contracts/IExports';
3
+ export * from '../adapters/contracts/IHasher';
4
+ export * from '../adapters/contracts/IPlatformContext';
5
+ export * from '../adapters/contracts/IPlayerInfo';
6
+ export * from '../adapters/contracts/IResourceInfo';
7
+ export * from '../adapters/contracts/ITick';
8
+ export * from '../adapters/contracts/transport';
9
+ export * from '../adapters/contracts/types';
10
+ export * from '../adapters/contracts/runtime';
11
+ export * from '../adapters/contracts/server';
12
+ export * from '../adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer';
13
+ export * from '../adapters/contracts/server/player-lifecycle/types';
14
+ export * from '../adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer';
15
+ export * from '../adapters/contracts/server/player-state/IPlayerStateSyncServer';
16
+ export * from '../adapters/contracts/server/npc-lifecycle/INpcLifecycleServer';
17
+ export * from '../adapters/contracts/server/npc-lifecycle/types';
18
+ export * from '../adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer';
19
+ export * from '../adapters/contracts/server/vehicle-lifecycle/types';
@@ -0,0 +1,19 @@
1
+ export * from '../adapters/contracts/IEngineEvents';
2
+ export * from '../adapters/contracts/IExports';
3
+ export * from '../adapters/contracts/IHasher';
4
+ export * from '../adapters/contracts/IPlatformContext';
5
+ export * from '../adapters/contracts/IPlayerInfo';
6
+ export * from '../adapters/contracts/IResourceInfo';
7
+ export * from '../adapters/contracts/ITick';
8
+ export * from '../adapters/contracts/transport';
9
+ export * from '../adapters/contracts/types';
10
+ export * from '../adapters/contracts/runtime';
11
+ export * from '../adapters/contracts/server';
12
+ export * from '../adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer';
13
+ export * from '../adapters/contracts/server/player-lifecycle/types';
14
+ export * from '../adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer';
15
+ export * from '../adapters/contracts/server/player-state/IPlayerStateSyncServer';
16
+ export * from '../adapters/contracts/server/npc-lifecycle/INpcLifecycleServer';
17
+ export * from '../adapters/contracts/server/npc-lifecycle/types';
18
+ export * from '../adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer';
19
+ export * from '../adapters/contracts/server/vehicle-lifecycle/types';
@@ -0,0 +1,5 @@
1
+ export * from './adapters/contracts/IHasher';
2
+ export * from './adapters/contracts/transport';
3
+ export * from './adapters/contracts/types';
4
+ export * from './adapters/contracts/runtime';
5
+ export * from './runtime/shared/types/system-types';
@@ -0,0 +1,5 @@
1
+ export * from './adapters/contracts/IHasher';
2
+ export * from './adapters/contracts/transport';
3
+ export * from './adapters/contracts/types';
4
+ export * from './adapters/contracts/runtime';
5
+ export * from './runtime/shared/types/system-types';
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import 'reflect-metadata';
2
2
  export * from './kernel';
3
3
  export * from './runtime/core';
4
- export * from './adapters/contracts';
4
+ export * from './contracts';
5
+ export * from './runtime/shared/types/system-types';
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import 'reflect-metadata';
2
2
  export * from './kernel';
3
3
  export * from './runtime/core';
4
- export * from './adapters/contracts';
4
+ export * from './contracts';
5
+ export * from './runtime/shared/types/system-types';
@@ -0,0 +1,4 @@
1
+ import { IClientLogConsole } from '../../adapters/contracts/client/IClientLogConsole';
2
+ export declare function getClientLogConsole(): IClientLogConsole;
3
+ export declare function setClientLogConsole(logConsole: IClientLogConsole): void;
4
+ export declare function resetClientLogConsoleForTests(): void;