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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/dist/adapters/contracts/IEngineEvents.d.ts +3 -0
  2. package/dist/adapters/contracts/IEngineEvents.js +7 -0
  3. package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
  4. package/dist/adapters/contracts/IPlatformContext.js +8 -0
  5. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +4 -0
  6. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +2 -0
  7. package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
  8. package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
  9. package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
  10. package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
  11. package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
  12. package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
  13. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
  14. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
  15. package/dist/adapters/contracts/client/index.d.ts +7 -0
  16. package/dist/adapters/contracts/client/index.js +7 -0
  17. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +7 -0
  18. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +2 -0
  19. package/dist/adapters/contracts/client/spawn/index.d.ts +2 -0
  20. package/dist/adapters/contracts/client/spawn/index.js +2 -0
  21. package/dist/adapters/contracts/client/spawn/types.d.ts +14 -0
  22. package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
  23. package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
  24. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
  25. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
  26. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
  27. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
  28. package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
  29. package/dist/adapters/contracts/client/ui/index.js +4 -0
  30. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +13 -0
  31. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
  32. package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
  33. package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
  34. package/dist/adapters/contracts/client/ui/webview/types.d.ts +25 -0
  35. package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
  36. package/dist/adapters/contracts/index.d.ts +4 -2
  37. package/dist/adapters/contracts/index.js +4 -3
  38. package/dist/adapters/contracts/runtime/index.d.ts +1 -0
  39. package/dist/adapters/contracts/runtime/index.js +1 -0
  40. package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
  41. package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
  42. package/dist/adapters/contracts/server/IEntityServer.d.ts +4 -28
  43. package/dist/adapters/contracts/server/IEntityServer.js +0 -26
  44. package/dist/adapters/contracts/server/IPlayerServer.d.ts +7 -26
  45. package/dist/adapters/contracts/server/IPlayerServer.js +0 -26
  46. package/dist/adapters/contracts/server/index.d.ts +10 -0
  47. package/dist/adapters/contracts/server/index.js +10 -0
  48. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
  49. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
  50. package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
  51. package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
  52. package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
  53. package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
  54. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
  55. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
  56. package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
  57. package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
  58. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
  59. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
  60. package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
  61. package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
  62. package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
  63. package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
  64. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
  65. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
  66. package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
  67. package/dist/adapters/contracts/server/player-state/index.js +1 -0
  68. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
  69. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
  70. package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
  71. package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
  72. package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
  73. package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
  74. package/dist/adapters/contracts/transport/index.d.ts +4 -0
  75. package/dist/adapters/contracts/transport/index.js +4 -0
  76. package/dist/adapters/index.d.ts +3 -14
  77. package/dist/adapters/index.js +3 -20
  78. package/dist/adapters/node/node-capabilities.d.ts +11 -11
  79. package/dist/adapters/node/node-capabilities.js +15 -27
  80. package/dist/adapters/node/node-engine-events.d.ts +1 -1
  81. package/dist/adapters/node/node-engine-events.js +2 -1
  82. package/dist/adapters/node/node-entity-server.d.ts +2 -2
  83. package/dist/adapters/node/node-entity-server.js +2 -2
  84. package/dist/adapters/node/node-ped-appearance-client.d.ts +2 -2
  85. package/dist/adapters/node/node-ped-appearance-client.js +2 -2
  86. package/dist/adapters/node/node-platform.js +4 -4
  87. package/dist/adapters/node/node-player-server.d.ts +3 -2
  88. package/dist/adapters/node/node-player-server.js +8 -2
  89. package/dist/adapters/register-capabilities.d.ts +1 -1
  90. package/dist/adapters/register-capabilities.js +1 -3
  91. package/dist/adapters/register-client-capabilities.d.ts +3 -2
  92. package/dist/adapters/register-client-capabilities.js +16 -41
  93. package/dist/contracts/client.d.ts +5 -0
  94. package/dist/contracts/client.js +5 -0
  95. package/dist/contracts/server.d.ts +19 -0
  96. package/dist/contracts/server.js +19 -0
  97. package/dist/contracts.d.ts +4 -0
  98. package/dist/contracts.js +4 -0
  99. package/dist/index.d.ts +1 -1
  100. package/dist/index.js +1 -1
  101. package/dist/kernel/logger/client-log-console.d.ts +4 -0
  102. package/dist/kernel/logger/client-log-console.js +43 -0
  103. package/dist/kernel/logger/core-logger.d.ts +3 -1
  104. package/dist/kernel/logger/core-logger.js +4 -2
  105. package/dist/kernel/logger/index.d.ts +2 -0
  106. package/dist/kernel/logger/index.js +1 -0
  107. package/dist/kernel/logger/transports/dev-transport.factory.js +1 -1
  108. package/dist/kernel/logger/transports/simple-console.transport.js +13 -8
  109. package/dist/kernel-public.d.ts +1 -0
  110. package/dist/kernel-public.js +1 -0
  111. package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
  112. package/dist/runtime/client/adapter/client-adapter.js +11 -0
  113. package/dist/runtime/client/adapter/index.d.ts +15 -0
  114. package/dist/runtime/client/adapter/index.js +15 -0
  115. package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
  116. package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
  117. package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
  118. package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
  119. package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
  120. package/dist/runtime/client/adapter/node-client-adapter.js +50 -0
  121. package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +8 -0
  122. package/dist/{adapters/fivem/fivem-hasher.js → runtime/client/adapter/node-local-player-bridge.js} +7 -9
  123. package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
  124. package/dist/runtime/client/adapter/node-log-console.js +48 -0
  125. package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
  126. package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
  127. package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
  128. package/dist/runtime/client/adapter/node-notification-bridge.js +16 -0
  129. package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
  130. package/dist/{adapters/fivem/fivem-tick.js → runtime/client/adapter/node-platform-bridge.js} +5 -10
  131. package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +24 -0
  132. package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
  133. package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
  134. package/dist/runtime/client/adapter/node-spawn-bridge.js +18 -0
  135. package/dist/runtime/client/adapter/node-webview-bridge.d.ts +15 -0
  136. package/dist/runtime/client/adapter/node-webview-bridge.js +43 -0
  137. package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
  138. package/dist/runtime/client/adapter/platform-bridge.js +1 -0
  139. package/dist/runtime/client/adapter/registry.d.ts +9 -0
  140. package/dist/runtime/client/adapter/registry.js +85 -0
  141. package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
  142. package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
  143. package/dist/runtime/client/api.d.ts +2 -1
  144. package/dist/runtime/client/api.js +2 -1
  145. package/dist/runtime/client/client-bootstrap.js +51 -44
  146. package/dist/runtime/client/client-core.d.ts +2 -0
  147. package/dist/runtime/client/client-core.js +9 -0
  148. package/dist/runtime/client/client-runtime.d.ts +3 -0
  149. package/dist/runtime/client/client-runtime.js +3 -0
  150. package/dist/runtime/client/controllers/appearance.controller.d.ts +3 -1
  151. package/dist/runtime/client/controllers/appearance.controller.js +14 -4
  152. package/dist/runtime/client/controllers/spawner.controller.js +2 -0
  153. package/dist/runtime/client/decorators/controller.js +2 -10
  154. package/dist/runtime/client/decorators/onView.d.ts +3 -3
  155. package/dist/runtime/client/decorators/onView.js +3 -3
  156. package/dist/runtime/client/index.d.ts +1 -0
  157. package/dist/runtime/client/index.js +1 -0
  158. package/dist/runtime/client/library/create-client-library.js +9 -1
  159. package/dist/runtime/client/services/appearance.service.d.ts +2 -2
  160. package/dist/runtime/client/services/appearance.service.js +7 -4
  161. package/dist/runtime/client/services/blip.service.d.ts +6 -93
  162. package/dist/runtime/client/services/blip.service.js +58 -153
  163. package/dist/runtime/client/services/camera-effects.registry.d.ts +3 -0
  164. package/dist/runtime/client/services/camera-effects.registry.js +20 -7
  165. package/dist/runtime/client/services/camera.d.ts +3 -83
  166. package/dist/runtime/client/services/camera.js +37 -93
  167. package/dist/runtime/client/services/cinematic.d.ts +5 -1
  168. package/dist/runtime/client/services/cinematic.js +45 -30
  169. package/dist/runtime/client/services/index.d.ts +1 -0
  170. package/dist/runtime/client/services/index.js +1 -0
  171. package/dist/runtime/client/services/marker.service.d.ts +12 -63
  172. package/dist/runtime/client/services/marker.service.js +62 -97
  173. package/dist/runtime/client/services/notification.service.d.ts +6 -57
  174. package/dist/runtime/client/services/notification.service.js +43 -81
  175. package/dist/runtime/client/services/ped.service.d.ts +3 -130
  176. package/dist/runtime/client/services/ped.service.js +66 -198
  177. package/dist/runtime/client/services/progress.service.d.ts +5 -30
  178. package/dist/runtime/client/services/progress.service.js +73 -99
  179. package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
  180. package/dist/runtime/client/services/session-bridge.service.js +61 -0
  181. package/dist/runtime/client/services/spawn.service.d.ts +6 -56
  182. package/dist/runtime/client/services/spawn.service.js +34 -191
  183. package/dist/runtime/client/services/streaming.service.d.ts +5 -126
  184. package/dist/runtime/client/services/streaming.service.js +72 -217
  185. package/dist/runtime/client/services/textui.service.d.ts +5 -45
  186. package/dist/runtime/client/services/textui.service.js +55 -88
  187. package/dist/runtime/client/services/vehicle-client.service.d.ts +12 -149
  188. package/dist/runtime/client/services/vehicle-client.service.js +180 -326
  189. package/dist/runtime/client/services/vehicle.service.d.ts +3 -109
  190. package/dist/runtime/client/services/vehicle.service.js +94 -194
  191. package/dist/runtime/client/system/processors/export.processor.d.ts +3 -0
  192. package/dist/runtime/client/system/processors/export.processor.js +16 -3
  193. package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +3 -0
  194. package/dist/runtime/client/system/processors/gameEvent.processor.js +16 -3
  195. package/dist/runtime/client/system/processors/interval.processor.d.ts +3 -0
  196. package/dist/runtime/client/system/processors/interval.processor.js +17 -4
  197. package/dist/runtime/client/system/processors/key.processor.d.ts +3 -0
  198. package/dist/runtime/client/system/processors/key.processor.js +18 -5
  199. package/dist/runtime/client/system/processors/localEvent.processor.d.ts +3 -0
  200. package/dist/runtime/client/system/processors/localEvent.processor.js +16 -3
  201. package/dist/runtime/client/system/processors/netEvent.processor.d.ts +3 -0
  202. package/dist/runtime/client/system/processors/netEvent.processor.js +16 -3
  203. package/dist/runtime/client/system/processors/onRpc.processor.js +1 -1
  204. package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +5 -0
  205. package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +26 -7
  206. package/dist/runtime/client/system/processors/tick.processor.d.ts +3 -0
  207. package/dist/runtime/client/system/processors/tick.processor.js +16 -3
  208. package/dist/runtime/client/system/processors/view.processor.d.ts +3 -0
  209. package/dist/runtime/client/system/processors/view.processor.js +21 -10
  210. package/dist/runtime/client/system/processors.register.d.ts +1 -0
  211. package/dist/runtime/client/system/processors.register.js +8 -0
  212. package/dist/runtime/client/ui-bridge.d.ts +2 -114
  213. package/dist/runtime/client/ui-bridge.js +2 -194
  214. package/dist/runtime/client/webview-bridge.d.ts +31 -0
  215. package/dist/runtime/client/webview-bridge.js +97 -0
  216. package/dist/runtime/client/webview.service.d.ts +14 -0
  217. package/dist/runtime/client/webview.service.js +98 -0
  218. package/dist/runtime/server/adapter/index.d.ts +5 -0
  219. package/dist/runtime/server/adapter/index.js +5 -0
  220. package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
  221. package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
  222. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
  223. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +94 -0
  224. package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
  225. package/dist/runtime/server/adapter/node-player-lifecycle-server.js +55 -0
  226. package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
  227. package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
  228. package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
  229. package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
  230. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
  231. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +57 -0
  232. package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
  233. package/dist/runtime/server/adapter/player-adapter.js +28 -0
  234. package/dist/runtime/server/adapter/registry.d.ts +26 -0
  235. package/dist/runtime/server/adapter/registry.js +101 -0
  236. package/dist/runtime/server/adapter/serialization.d.ts +6 -0
  237. package/dist/runtime/server/adapter/serialization.js +9 -0
  238. package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
  239. package/dist/runtime/server/adapter/server-adapter.js +14 -0
  240. package/dist/runtime/server/api.d.ts +2 -1
  241. package/dist/runtime/server/api.js +2 -1
  242. package/dist/runtime/server/apis/appearance.api.d.ts +5 -3
  243. package/dist/runtime/server/apis/appearance.api.js +20 -7
  244. package/dist/runtime/server/apis/npcs.api.d.ts +3 -4
  245. package/dist/runtime/server/apis/npcs.api.js +26 -56
  246. package/dist/runtime/server/apis/vehicle-modification.api.d.ts +3 -1
  247. package/dist/runtime/server/apis/vehicle-modification.api.js +9 -4
  248. package/dist/runtime/server/apis/vehicles.api.d.ts +12 -6
  249. package/dist/runtime/server/apis/vehicles.api.js +48 -36
  250. package/dist/runtime/server/bootstrap.js +15 -7
  251. package/dist/runtime/server/controllers/channel.controller.js +2 -1
  252. package/dist/runtime/server/controllers/command-export.controller.js +1 -1
  253. package/dist/runtime/server/controllers/player-export.controller.js +5 -4
  254. package/dist/runtime/server/controllers/session.controller.js +3 -2
  255. package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -1
  256. package/dist/runtime/server/controllers/vehicle.controller.js +10 -5
  257. package/dist/runtime/server/core.d.ts +2 -0
  258. package/dist/runtime/server/core.js +9 -1
  259. package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +2 -1
  260. package/dist/runtime/server/entities/npc.d.ts +2 -0
  261. package/dist/runtime/server/entities/npc.js +3 -3
  262. package/dist/runtime/server/entities/player.d.ts +8 -11
  263. package/dist/runtime/server/entities/player.js +39 -28
  264. package/dist/runtime/server/entities/vehicle.js +2 -2
  265. package/dist/runtime/server/error-handler.js +13 -2
  266. package/dist/runtime/server/helpers/command-validation.helper.js +1 -1
  267. package/dist/runtime/server/implementations/local/player.local.d.ts +7 -3
  268. package/dist/runtime/server/implementations/local/player.local.js +23 -11
  269. package/dist/runtime/server/implementations/remote/channel.remote.d.ts +2 -1
  270. package/dist/runtime/server/implementations/remote/channel.remote.js +5 -2
  271. package/dist/runtime/server/implementations/remote/command.remote.d.ts +3 -1
  272. package/dist/runtime/server/implementations/remote/command.remote.js +9 -4
  273. package/dist/runtime/server/implementations/remote/player.remote.d.ts +7 -10
  274. package/dist/runtime/server/implementations/remote/player.remote.js +24 -29
  275. package/dist/runtime/server/library/create-server-library.js +17 -2
  276. package/dist/runtime/server/runtime.d.ts +3 -0
  277. package/dist/runtime/server/runtime.js +1 -15
  278. package/dist/runtime/server/services/appearance.service.d.ts +0 -95
  279. package/dist/runtime/server/services/appearance.service.js +15 -192
  280. package/dist/runtime/server/services/services.register.js +56 -24
  281. package/dist/runtime/server/system/processors/netEvent.processor.js +1 -1
  282. package/dist/runtime/server/system/processors/onRpc.processor.js +1 -1
  283. package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +2 -1
  284. package/dist/runtime/server/system/processors/runtimeEvent.processor.js +1 -1
  285. package/dist/runtime/server/types/core-exports.types.d.ts +5 -0
  286. package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
  287. package/dist/runtime/shared/helpers/process-tuple-schema.js +29 -0
  288. package/package.json +21 -3
  289. package/dist/adapters/cfx/cfx-capabilities.d.ts +0 -16
  290. package/dist/adapters/cfx/cfx-capabilities.js +0 -70
  291. package/dist/adapters/cfx/cfx-platform.d.ts +0 -2
  292. package/dist/adapters/cfx/cfx-platform.js +0 -85
  293. package/dist/adapters/cfx/index.d.ts +0 -3
  294. package/dist/adapters/cfx/index.js +0 -3
  295. package/dist/adapters/cfx/runtime-profile.d.ts +0 -3
  296. package/dist/adapters/cfx/runtime-profile.js +0 -37
  297. package/dist/adapters/contracts/IPlatformCapabilities.d.ts +0 -79
  298. package/dist/adapters/contracts/IPlatformCapabilities.js +0 -27
  299. package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +0 -206
  300. package/dist/adapters/contracts/client/IPedAppearanceClient.js +0 -12
  301. package/dist/adapters/fivem/fivem-capabilities.d.ts +0 -18
  302. package/dist/adapters/fivem/fivem-capabilities.js +0 -61
  303. package/dist/adapters/fivem/fivem-engine-events.d.ts +0 -5
  304. package/dist/adapters/fivem/fivem-engine-events.js +0 -24
  305. package/dist/adapters/fivem/fivem-entity-server.d.ts +0 -26
  306. package/dist/adapters/fivem/fivem-entity-server.js +0 -87
  307. package/dist/adapters/fivem/fivem-exports.d.ts +0 -5
  308. package/dist/adapters/fivem/fivem-exports.js +0 -9
  309. package/dist/adapters/fivem/fivem-hasher.d.ts +0 -7
  310. package/dist/adapters/fivem/fivem-net-transport.d.ts +0 -1
  311. package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +0 -34
  312. package/dist/adapters/fivem/fivem-ped-appearance-client.js +0 -79
  313. package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +0 -14
  314. package/dist/adapters/fivem/fivem-ped-appearance-server.js +0 -22
  315. package/dist/adapters/fivem/fivem-ped-server.d.ts +0 -9
  316. package/dist/adapters/fivem/fivem-ped-server.js +0 -30
  317. package/dist/adapters/fivem/fivem-platform.d.ts +0 -5
  318. package/dist/adapters/fivem/fivem-platform.js +0 -74
  319. package/dist/adapters/fivem/fivem-player-server.d.ts +0 -24
  320. package/dist/adapters/fivem/fivem-player-server.js +0 -83
  321. package/dist/adapters/fivem/fivem-playerinfo.d.ts +0 -6
  322. package/dist/adapters/fivem/fivem-playerinfo.js +0 -10
  323. package/dist/adapters/fivem/fivem-resourceinfo.d.ts +0 -5
  324. package/dist/adapters/fivem/fivem-resourceinfo.js +0 -24
  325. package/dist/adapters/fivem/fivem-tick.d.ts +0 -7
  326. package/dist/adapters/fivem/fivem-vehicle-server.d.ts +0 -15
  327. package/dist/adapters/fivem/fivem-vehicle-server.js +0 -44
  328. package/dist/adapters/fivem/index.d.ts +0 -14
  329. package/dist/adapters/fivem/index.js +0 -16
  330. package/dist/adapters/fivem/transport/adapter.d.ts +0 -8
  331. package/dist/adapters/fivem/transport/adapter.js +0 -8
  332. package/dist/adapters/fivem/transport/fivem.events.d.ts +0 -8
  333. package/dist/adapters/fivem/transport/fivem.events.js +0 -36
  334. package/dist/adapters/fivem/transport/fivem.rpc.d.ts +0 -28
  335. package/dist/adapters/fivem/transport/fivem.rpc.js +0 -183
  336. package/dist/runtime/client/controllers/player-sync.controller.d.ts +0 -11
  337. package/dist/runtime/client/controllers/player-sync.controller.js +0 -51
  338. package/dist/runtime/client/player/player.d.ts +0 -262
  339. package/dist/runtime/client/player/player.js +0 -474
  340. package/dist/runtime/client/player/player.loader.d.ts +0 -1
  341. package/dist/runtime/client/player/player.loader.js +0 -18
  342. package/dist/runtime/server/helpers/process-tuple-schema.d.ts +0 -20
  343. package/dist/runtime/server/helpers/process-tuple-schema.js +0 -56
  344. /package/dist/adapters/{fivem/fivem-net-transport.js → contracts/client/spawn/types.js} +0 -0
@@ -7,52 +7,28 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { injectable } from 'tsyringe';
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject, injectable } from 'tsyringe';
11
14
  import { loggers } from '../../../kernel';
15
+ import { IClientPlatformBridge } from '../adapter/platform-bridge';
12
16
  import { AppearanceService } from './appearance.service';
13
- const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
14
- const NETWORK_TIMEOUT_MS = 15_000;
15
- const PED_TIMEOUT_MS = 10_000;
16
- const COLLISION_TIMEOUT_MS = 7_000;
17
- /**
18
- * Handles all player spawning logic on the client.
19
- *
20
- * This service manages the complete lifecycle of a player spawn:
21
- * - Waiting for the network session
22
- * - Loading and applying the player model
23
- * - Ensuring collision and world data is ready
24
- * - Resurrecting the player cleanly
25
- * - Applying default ped components for freemode models
26
- * - Fading the screen in/out during transitions
27
- *
28
- * The service is designed to be robust, predictable, and safe for any gamemode.
29
- */
17
+ import { IClientSpawnBridge } from '../../../adapters/contracts/client/spawn/IClientSpawnBridge';
30
18
  let SpawnService = class SpawnService {
31
19
  appearanceService;
20
+ spawnBridge;
21
+ platform;
32
22
  spawned = false;
33
23
  spawning = false;
34
- constructor(appearanceService) {
24
+ constructor(appearanceService, spawnBridge, platform) {
35
25
  this.appearanceService = appearanceService;
26
+ this.spawnBridge = spawnBridge;
27
+ this.platform = platform;
36
28
  }
37
29
  async init() {
38
30
  loggers.spawn.debug('SpawnService initialized');
39
31
  }
40
- /**
41
- * Performs the first spawn of the player.
42
- *
43
- * This method handles:
44
- * - Fade out
45
- * - Closing loading screens
46
- * - Setting the player model
47
- * - Ensuring the ped exists
48
- * - Ensuring collision is loaded
49
- * - Resurrecting the player
50
- * - Preparing the ped for gameplay
51
- * - Placing the player at the desired position
52
- * - Fade in
53
- *
54
- * It should only be called once when the player joins.
55
- */
56
32
  async spawn(position, model, heading = 0.0, options) {
57
33
  if (this.spawning) {
58
34
  loggers.spawn.warn('Spawn requested while a spawn is already in progress');
@@ -60,27 +36,22 @@ let SpawnService = class SpawnService {
60
36
  }
61
37
  this.spawning = true;
62
38
  try {
63
- await this.ensureNetworkReady();
64
- if (!IsScreenFadedOut() && !IsScreenFadingOut()) {
65
- DoScreenFadeOut(500);
66
- while (!IsScreenFadedOut()) {
67
- await delay(0);
39
+ loggers.spawn.debug('Waiting for spawn bridge readiness');
40
+ await this.spawnBridge.waitUntilReady();
41
+ loggers.spawn.debug('Spawn bridge ready, executing spawn', { position, model, heading });
42
+ await this.spawnBridge.spawn({ position, model, heading });
43
+ const ped = this.platform.getLocalPlayerPed();
44
+ if (ped !== 0) {
45
+ if (options?.appearance) {
46
+ loggers.spawn.debug('Applying post-spawn appearance', { ped });
47
+ await this.appearanceService.applyAppearance(ped, options.appearance);
48
+ }
49
+ else {
50
+ this.appearanceService.setDefaultAppearance(ped);
68
51
  }
69
52
  }
70
- this.closeLoadingScreens();
71
- await this.setPlayerModel(model);
72
- const ped = await this.ensurePed();
73
- await this.applyAppearanceIfNeeded(ped, options?.appearance);
74
- await this.ensureCollisionAt(position, ped);
75
- NetworkResurrectLocalPlayer(position.x, position.y, position.z, heading, 0, false);
76
- const finalPed = await this.ensurePed();
77
- await this.setupPedForGameplay(finalPed);
78
- await this.placePed(finalPed, position, heading);
79
53
  this.spawned = true;
80
- if (!IsScreenFadedIn() && !IsScreenFadingIn()) {
81
- DoScreenFadeIn(500);
82
- }
83
- loggers.spawn.info('Player spawned successfully (first spawn)', {
54
+ loggers.spawn.info('Player spawned successfully', {
84
55
  position: { x: position.x, y: position.y, z: position.z },
85
56
  model,
86
57
  });
@@ -95,161 +66,33 @@ let SpawnService = class SpawnService {
95
66
  this.spawning = false;
96
67
  }
97
68
  }
98
- /**
99
- * Teleports the player instantly to a new position.
100
- * Does not change the model or resurrect the player.
101
- * Safe for gameplay use.
102
- */
103
69
  async teleportTo(position, heading) {
104
- const ped = await this.ensurePed();
105
- await this.ensureCollisionAt(position, ped);
106
- FreezeEntityPosition(ped, true);
107
- SetEntityCoordsNoOffset(ped, position.x, position.y, position.z, false, false, false);
108
- if (heading !== undefined) {
109
- SetEntityHeading(ped, heading);
110
- }
111
- FreezeEntityPosition(ped, false);
70
+ await this.spawnBridge.teleport({ position, heading });
112
71
  }
113
- /**
114
- * Respawns the player after death or a gameplay event.
115
- * Restores health, resurrects the player, loads collision,
116
- * prepares the ped and teleports them to the desired location.
117
- */
118
72
  async respawn(position, heading = 0.0) {
119
- const ped = await this.ensurePed();
120
- await this.ensureCollisionAt(position, ped);
121
- ClearPedTasksImmediately(ped);
122
- SetEntityHealth(ped, GetEntityMaxHealth(ped));
123
- NetworkResurrectLocalPlayer(position.x, position.y, position.z, heading, 0, false);
124
- const finalPed = await this.ensurePed();
125
- await this.setupPedForGameplay(finalPed);
126
- await this.teleportTo(position, heading);
73
+ await this.spawnBridge.waitUntilReady();
74
+ await this.spawnBridge.respawn({ position, heading });
75
+ this.spawned = true;
127
76
  loggers.spawn.info('Player respawned', {
128
77
  position: { x: position.x, y: position.y, z: position.z },
129
78
  heading,
130
79
  });
131
80
  }
132
- /**
133
- * Returns whether the player has completed their first spawn.
134
- */
135
81
  isSpawned() {
136
82
  return this.spawned;
137
83
  }
138
- /**
139
- * Allows other systems to wait until the player is fully spawned.
140
- */
141
84
  async waitUntilSpawned() {
142
85
  while (!this.spawned) {
143
- await delay(0);
144
- }
145
- }
146
- async ensureNetworkReady() {
147
- const start = GetGameTimer();
148
- while (!NetworkIsSessionStarted()) {
149
- if (GetGameTimer() - start > NETWORK_TIMEOUT_MS) {
150
- loggers.spawn.error('Network session did not start in time');
151
- throw new Error('NETWORK_TIMEOUT');
152
- }
153
- await delay(0);
154
- }
155
- }
156
- closeLoadingScreens() {
157
- try {
158
- ShutdownLoadingScreen();
159
- }
160
- catch { }
161
- try {
162
- ShutdownLoadingScreenNui();
163
- }
164
- catch { }
165
- }
166
- async setPlayerModel(model) {
167
- const modelHash = GetHashKey(model);
168
- if (!IsModelInCdimage(modelHash) || !IsModelValid(modelHash)) {
169
- loggers.spawn.error('Invalid model requested', { model });
170
- throw new Error('MODEL_INVALID');
171
- }
172
- RequestModel(modelHash);
173
- while (!HasModelLoaded(modelHash)) {
174
- await delay(0);
175
- }
176
- SetPlayerModel(PlayerId(), modelHash);
177
- SetModelAsNoLongerNeeded(modelHash);
178
- const ped = PlayerPedId();
179
- if (ped !== 0) {
180
- SetPedDefaultComponentVariation(ped);
181
- }
182
- }
183
- async ensurePed() {
184
- const start = GetGameTimer();
185
- let ped = PlayerPedId();
186
- while (ped === 0) {
187
- if (GetGameTimer() - start > PED_TIMEOUT_MS) {
188
- loggers.spawn.error('PlayerPedId() did not become valid in time');
189
- throw new Error('PED_TIMEOUT');
190
- }
191
- await delay(0);
192
- ped = PlayerPedId();
193
- }
194
- return ped;
195
- }
196
- async ensureCollisionAt(position, ped) {
197
- RequestCollisionAtCoord(position.x, position.y, position.z);
198
- const start = GetGameTimer();
199
- while (!HasCollisionLoadedAroundEntity(ped)) {
200
- if (GetGameTimer() - start > COLLISION_TIMEOUT_MS) {
201
- loggers.spawn.warn('Collision did not fully load around entity in time', {
202
- x: position.x,
203
- y: position.y,
204
- z: position.z,
205
- });
206
- break;
207
- }
208
- await delay(0);
209
- }
210
- }
211
- async setupPedForGameplay(ped) {
212
- SetEntityAsMissionEntity(ped, true, true);
213
- ClearPedTasksImmediately(ped);
214
- RemoveAllPedWeapons(ped, true);
215
- ResetEntityAlpha(ped);
216
- await delay(0);
217
- SetEntityAlpha(ped, 255, false);
218
- SetEntityVisible(ped, true, false);
219
- SetEntityCollision(ped, true, true);
220
- SetEntityInvincible(ped, false);
221
- }
222
- async placePed(ped, position, heading) {
223
- FreezeEntityPosition(ped, true);
224
- SetEntityCoordsNoOffset(ped, position.x, position.y, position.z, false, false, false);
225
- SetEntityHeading(ped, heading);
226
- await delay(0);
227
- FreezeEntityPosition(ped, false);
228
- }
229
- async applyAppearanceIfNeeded(ped, appearance) {
230
- if (!appearance) {
231
- SetPedDefaultComponentVariation(ped);
232
- return;
233
- }
234
- const validation = this.appearanceService.validateAppearance(appearance);
235
- if (!validation.valid) {
236
- loggers.spawn.warn('Invalid appearance data', { errors: validation.errors });
237
- SetPedDefaultComponentVariation(ped);
238
- return;
239
- }
240
- try {
241
- await this.appearanceService.applyAppearance(ped, appearance);
242
- }
243
- catch (error) {
244
- loggers.spawn.error('Failed to apply appearance, using default variation', {
245
- error: error instanceof Error ? error.message : String(error),
246
- });
247
- SetPedDefaultComponentVariation(ped);
86
+ await new Promise((resolve) => setTimeout(resolve, 0));
248
87
  }
249
88
  }
250
89
  };
251
90
  SpawnService = __decorate([
252
91
  injectable(),
253
- __metadata("design:paramtypes", [AppearanceService])
92
+ __param(1, inject(IClientSpawnBridge)),
93
+ __param(2, inject(IClientPlatformBridge)),
94
+ __metadata("design:paramtypes", [AppearanceService,
95
+ IClientSpawnBridge,
96
+ IClientPlatformBridge])
254
97
  ], SpawnService);
255
98
  export { SpawnService };
@@ -1,103 +1,28 @@
1
+ import { IClientPlatformBridge } from '../adapter/platform-bridge';
2
+ import { IClientRuntimeBridge } from '../adapter/runtime-bridge';
1
3
  export interface StreamingRequest {
2
4
  type: 'model' | 'animDict' | 'ptfx' | 'texture' | 'audio';
3
5
  asset: string;
4
6
  loaded: boolean;
5
7
  hash?: number;
6
8
  }
7
- /**
8
- * Service for managing asset streaming (models, animations, particles, etc.).
9
- */
10
9
  export declare class StreamingService {
10
+ private readonly platform;
11
+ private readonly runtime;
11
12
  private loadedAssets;
12
- /**
13
- * Request and load a model.
14
- *
15
- * @param model - Model name or hash
16
- * @param timeout - Maximum wait time in ms
17
- * @returns Whether the model was loaded successfully
18
- */
13
+ constructor(platform: IClientPlatformBridge, runtime: IClientRuntimeBridge);
19
14
  requestModel(model: string | number, timeout?: number): Promise<boolean>;
20
- /**
21
- * Check if a model is loaded.
22
- *
23
- * @param model - Model name or hash
24
- */
25
15
  isModelLoaded(model: string | number): boolean;
26
- /**
27
- * Release a loaded model.
28
- *
29
- * @param model - Model name or hash
30
- */
31
16
  releaseModel(model: string | number): void;
32
- /**
33
- * Check if a model is valid and exists in the game files.
34
- *
35
- * @param model - Model name or hash
36
- */
37
17
  isModelValid(model: string | number): boolean;
38
- /**
39
- * Check if a model is a vehicle.
40
- *
41
- * @param model - Model name or hash
42
- */
43
18
  isModelVehicle(model: string | number): boolean;
44
- /**
45
- * Check if a model is a ped.
46
- *
47
- * @param model - Model name or hash
48
- */
49
19
  isModelPed(model: string | number): boolean;
50
- /**
51
- * Request and load an animation dictionary.
52
- *
53
- * @param dict - Animation dictionary name
54
- * @param timeout - Maximum wait time in ms
55
- * @returns Whether the dictionary was loaded successfully
56
- */
57
20
  requestAnimDict(dict: string, timeout?: number): Promise<boolean>;
58
- /**
59
- * Check if an animation dictionary is loaded.
60
- *
61
- * @param dict - Animation dictionary name
62
- */
63
21
  isAnimDictLoaded(dict: string): boolean;
64
- /**
65
- * Release a loaded animation dictionary.
66
- *
67
- * @param dict - Animation dictionary name
68
- */
69
22
  releaseAnimDict(dict: string): void;
70
- /**
71
- * Request and load a particle effect asset.
72
- *
73
- * @param asset - PTFX asset name
74
- * @param timeout - Maximum wait time in ms
75
- * @returns Whether the asset was loaded successfully
76
- */
77
23
  requestPtfxAsset(asset: string, timeout?: number): Promise<boolean>;
78
- /**
79
- * Check if a PTFX asset is loaded.
80
- *
81
- * @param asset - PTFX asset name
82
- */
83
24
  isPtfxAssetLoaded(asset: string): boolean;
84
- /**
85
- * Release a loaded PTFX asset.
86
- *
87
- * @param asset - PTFX asset name
88
- */
89
25
  releasePtfxAsset(asset: string): void;
90
- /**
91
- * Start a particle effect at a position.
92
- *
93
- * @param asset - PTFX asset name
94
- * @param effectName - Effect name within the asset
95
- * @param position - World position
96
- * @param rotation - Rotation
97
- * @param scale - Scale
98
- * @param looped - Whether to loop
99
- * @returns The particle effect handle
100
- */
101
26
  startParticleEffect(asset: string, effectName: string, position: {
102
27
  x: number;
103
28
  y: number;
@@ -107,59 +32,13 @@ export declare class StreamingService {
107
32
  y: number;
108
33
  z: number;
109
34
  }, scale?: number, looped?: boolean): Promise<number>;
110
- /**
111
- * Stop a looped particle effect.
112
- *
113
- * @param handle - Particle effect handle
114
- */
115
35
  stopParticleEffect(handle: number): void;
116
- /**
117
- * Request and load a texture dictionary.
118
- *
119
- * @param dict - Texture dictionary name
120
- * @param timeout - Maximum wait time in ms
121
- * @returns Whether the dictionary was loaded successfully
122
- */
123
36
  requestTextureDict(dict: string, timeout?: number): Promise<boolean>;
124
- /**
125
- * Check if a texture dictionary is loaded.
126
- *
127
- * @param dict - Texture dictionary name
128
- */
129
37
  isTextureDictLoaded(dict: string): boolean;
130
- /**
131
- * Release a loaded texture dictionary.
132
- *
133
- * @param dict - Texture dictionary name
134
- */
135
38
  releaseTextureDict(dict: string): void;
136
- /**
137
- * Request and load a script audio bank.
138
- *
139
- * @param audioBank - Audio bank name
140
- * @param networked - Whether the audio should be networked
141
- * @param timeout - Maximum wait time in ms
142
- * @returns Whether the audio bank was loaded successfully
143
- */
144
39
  requestAudioBank(audioBank: string, networked?: boolean, _timeout?: number): Promise<boolean>;
145
- /**
146
- * Release a loaded audio bank.
147
- *
148
- * @param audioBank - Audio bank name
149
- */
150
40
  releaseAudioBank(audioBank: string): void;
151
- /**
152
- * Get all currently loaded assets.
153
- */
154
41
  getLoadedAssets(): StreamingRequest[];
155
- /**
156
- * Release all loaded assets.
157
- */
158
42
  releaseAll(): void;
159
- /**
160
- * Get hash key for a string.
161
- *
162
- * @param str - String to hash
163
- */
164
43
  getHash(str: string): number;
165
44
  }