@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.
- package/dist/adapters/contracts/IEngineEvents.d.ts +5 -2
- package/dist/adapters/contracts/IEngineEvents.js +7 -0
- package/dist/adapters/contracts/IExports.d.ts +2 -2
- package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
- package/dist/adapters/contracts/IPlatformContext.js +8 -0
- package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +25 -0
- package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +8 -0
- package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
- package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
- package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
- package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
- package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
- package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
- package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
- package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
- package/dist/adapters/contracts/client/camera/IClientCameraPort.d.ts +107 -0
- package/dist/adapters/contracts/client/camera/IClientCameraPort.js +8 -0
- package/dist/adapters/contracts/client/camera/index.d.ts +1 -0
- package/dist/adapters/contracts/client/camera/index.js +1 -0
- package/dist/adapters/contracts/client/index.d.ts +11 -0
- package/dist/adapters/contracts/client/index.js +11 -0
- package/dist/adapters/contracts/client/ped/IClientPedPort.d.ts +62 -0
- package/dist/adapters/contracts/client/ped/IClientPedPort.js +5 -0
- package/dist/adapters/contracts/client/ped/index.d.ts +1 -0
- package/dist/adapters/contracts/client/ped/index.js +1 -0
- package/dist/adapters/contracts/client/progress/IClientProgressPort.d.ts +53 -0
- package/dist/adapters/contracts/client/progress/IClientProgressPort.js +8 -0
- package/dist/adapters/contracts/client/progress/index.d.ts +1 -0
- package/dist/adapters/contracts/client/progress/index.js +1 -0
- package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +6 -0
- package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +6 -0
- package/dist/adapters/contracts/client/spawn/IClientSpawnPort.d.ts +19 -0
- package/dist/adapters/contracts/client/spawn/IClientSpawnPort.js +2 -0
- package/dist/adapters/contracts/client/spawn/index.d.ts +4 -0
- package/dist/adapters/contracts/client/spawn/index.js +4 -0
- package/dist/adapters/contracts/client/spawn/types.d.ts +17 -0
- package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
- package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
- package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
- package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
- package/dist/adapters/contracts/client/ui/index.js +4 -0
- package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +14 -0
- package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
- package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
- package/dist/adapters/contracts/client/ui/webview/types.d.ts +27 -0
- package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
- package/dist/adapters/contracts/client/vehicle/IClientVehiclePort.d.ts +166 -0
- package/dist/adapters/contracts/client/vehicle/IClientVehiclePort.js +8 -0
- package/dist/adapters/contracts/client/vehicle/index.d.ts +1 -0
- package/dist/adapters/contracts/client/vehicle/index.js +1 -0
- package/dist/adapters/contracts/index.d.ts +4 -2
- package/dist/adapters/contracts/index.js +4 -3
- package/dist/adapters/contracts/runtime/index.d.ts +1 -0
- package/dist/adapters/contracts/runtime/index.js +1 -0
- package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
- package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
- package/dist/adapters/contracts/server/IEntityServer.d.ts +4 -28
- package/dist/adapters/contracts/server/IEntityServer.js +0 -26
- package/dist/adapters/contracts/server/IPlayerServer.d.ts +7 -26
- package/dist/adapters/contracts/server/IPlayerServer.js +0 -26
- package/dist/adapters/contracts/server/index.d.ts +10 -0
- package/dist/adapters/contracts/server/index.js +10 -0
- package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
- package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
- package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
- package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
- package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
- package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
- package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
- package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
- package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
- package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
- package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
- package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
- package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
- package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
- package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
- package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
- package/dist/adapters/contracts/server/player-state/index.js +1 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
- package/dist/adapters/contracts/transport/events.api.d.ts +3 -3
- package/dist/adapters/contracts/transport/index.d.ts +4 -0
- package/dist/adapters/contracts/transport/index.js +4 -0
- package/dist/adapters/contracts/transport/rpc.api.d.ts +3 -3
- package/dist/adapters/index.d.ts +3 -14
- package/dist/adapters/index.js +3 -20
- package/dist/adapters/node/node-capabilities.d.ts +11 -11
- package/dist/adapters/node/node-capabilities.js +15 -27
- package/dist/adapters/node/node-engine-events.d.ts +1 -1
- package/dist/adapters/node/node-engine-events.js +2 -1
- package/dist/adapters/node/node-entity-server.d.ts +2 -2
- package/dist/adapters/node/node-entity-server.js +2 -2
- package/dist/adapters/node/node-ped-appearance-client.d.ts +2 -2
- package/dist/adapters/node/node-ped-appearance-client.js +2 -2
- package/dist/adapters/node/node-platform.js +4 -4
- package/dist/adapters/node/node-player-server.d.ts +3 -2
- package/dist/adapters/node/node-player-server.js +8 -2
- package/dist/adapters/node/transport/node.events.d.ts +4 -4
- package/dist/adapters/node/transport/node.rpc.d.ts +3 -3
- package/dist/adapters/node/transport/node.rpc.js +1 -1
- package/dist/adapters/register-capabilities.d.ts +1 -1
- package/dist/adapters/register-capabilities.js +1 -3
- package/dist/adapters/register-client-capabilities.d.ts +3 -2
- package/dist/adapters/register-client-capabilities.js +16 -41
- package/dist/contracts/client.d.ts +5 -0
- package/dist/contracts/client.js +5 -0
- package/dist/contracts/server.d.ts +19 -0
- package/dist/contracts/server.js +19 -0
- package/dist/contracts.d.ts +5 -0
- package/dist/contracts.js +5 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/kernel/logger/client-log-console.d.ts +4 -0
- package/dist/kernel/logger/client-log-console.js +43 -0
- package/dist/kernel/logger/core-logger.d.ts +3 -1
- package/dist/kernel/logger/core-logger.js +4 -2
- package/dist/kernel/logger/index.d.ts +3 -1
- package/dist/kernel/logger/index.js +2 -1
- package/dist/kernel/logger/logger.types.d.ts +1 -0
- package/dist/kernel/logger/logger.types.js +35 -0
- package/dist/kernel/logger/transports/buffered.transport.js +4 -4
- package/dist/kernel/logger/transports/console.transport.js +2 -2
- package/dist/kernel/logger/transports/dev-transport.factory.js +1 -1
- package/dist/kernel/logger/transports/simple-console.transport.js +15 -10
- package/dist/kernel-public.d.ts +1 -0
- package/dist/kernel-public.js +1 -0
- package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
- package/dist/runtime/client/adapter/client-adapter.js +11 -0
- package/dist/runtime/client/adapter/index.d.ts +20 -0
- package/dist/runtime/client/adapter/index.js +20 -0
- package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
- package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
- package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
- package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
- package/dist/runtime/client/adapter/node-camera-port.d.ts +19 -0
- package/dist/runtime/client/adapter/node-camera-port.js +31 -0
- package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
- package/dist/runtime/client/adapter/node-client-adapter.js +64 -0
- package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +11 -0
- package/dist/runtime/client/adapter/node-local-player-bridge.js +27 -0
- package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
- package/dist/runtime/client/adapter/node-log-console.js +48 -0
- package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
- package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
- package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
- package/dist/{adapters/fivem/fivem-hasher.js → runtime/client/adapter/node-notification-bridge.js} +7 -11
- package/dist/runtime/client/adapter/node-ped-port.d.ts +20 -0
- package/dist/runtime/client/adapter/node-ped-port.js +38 -0
- package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
- package/dist/{adapters/fivem/fivem-tick.js → runtime/client/adapter/node-platform-bridge.js} +5 -10
- package/dist/runtime/client/adapter/node-progress-port.d.ts +8 -0
- package/dist/runtime/client/adapter/node-progress-port.js +27 -0
- package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +22 -0
- package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
- package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
- package/dist/runtime/client/adapter/node-spawn-bridge.js +22 -0
- package/dist/runtime/client/adapter/node-vehicle-port.d.ts +31 -0
- package/dist/runtime/client/adapter/node-vehicle-port.js +73 -0
- package/dist/runtime/client/adapter/node-webview-bridge.d.ts +16 -0
- package/dist/runtime/client/adapter/node-webview-bridge.js +45 -0
- package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
- package/dist/runtime/client/adapter/platform-bridge.js +1 -0
- package/dist/runtime/client/adapter/registry.d.ts +9 -0
- package/dist/runtime/client/adapter/registry.js +85 -0
- package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
- package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
- package/dist/runtime/client/api.d.ts +2 -1
- package/dist/runtime/client/api.js +2 -1
- package/dist/runtime/client/client-bootstrap.js +51 -44
- package/dist/runtime/client/client-core.d.ts +2 -0
- package/dist/runtime/client/client-core.js +9 -0
- package/dist/runtime/client/client-runtime.d.ts +3 -0
- package/dist/runtime/client/client-runtime.js +3 -0
- package/dist/runtime/client/controllers/appearance.controller.d.ts +3 -1
- package/dist/runtime/client/controllers/appearance.controller.js +17 -6
- package/dist/runtime/client/controllers/spawner.controller.js +6 -3
- package/dist/runtime/client/decorators/controller.js +2 -10
- package/dist/runtime/client/decorators/onView.d.ts +3 -3
- package/dist/runtime/client/decorators/onView.js +3 -3
- package/dist/runtime/client/index.d.ts +1 -0
- package/dist/runtime/client/index.js +1 -0
- package/dist/runtime/client/library/create-client-library.js +9 -1
- package/dist/runtime/client/services/appearance.service.d.ts +2 -2
- package/dist/runtime/client/services/appearance.service.js +7 -4
- package/dist/runtime/client/services/blip.service.d.ts +6 -93
- package/dist/runtime/client/services/blip.service.js +58 -153
- package/dist/runtime/client/services/camera-effects.registry.d.ts +3 -0
- package/dist/runtime/client/services/camera-effects.registry.js +20 -7
- package/dist/runtime/client/services/camera.d.ts +4 -106
- package/dist/runtime/client/services/camera.js +36 -98
- package/dist/runtime/client/services/cinematic.d.ts +5 -1
- package/dist/runtime/client/services/cinematic.js +45 -30
- package/dist/runtime/client/services/index.d.ts +1 -0
- package/dist/runtime/client/services/index.js +1 -0
- package/dist/runtime/client/services/marker.service.d.ts +12 -63
- package/dist/runtime/client/services/marker.service.js +62 -97
- package/dist/runtime/client/services/notification.service.d.ts +6 -57
- package/dist/runtime/client/services/notification.service.js +43 -81
- package/dist/runtime/client/services/ped.service.d.ts +6 -148
- package/dist/runtime/client/services/ped.service.js +42 -221
- package/dist/runtime/client/services/progress.service.d.ts +4 -75
- package/dist/runtime/client/services/progress.service.js +20 -178
- package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
- package/dist/runtime/client/services/session-bridge.service.js +62 -0
- package/dist/runtime/client/services/spawn.service.d.ts +4 -56
- package/dist/runtime/client/services/spawn.service.js +29 -191
- package/dist/runtime/client/services/streaming.service.d.ts +5 -126
- package/dist/runtime/client/services/streaming.service.js +72 -217
- package/dist/runtime/client/services/textui.service.d.ts +5 -45
- package/dist/runtime/client/services/textui.service.js +55 -88
- package/dist/runtime/client/services/vehicle-client.service.d.ts +12 -149
- package/dist/runtime/client/services/vehicle-client.service.js +128 -374
- package/dist/runtime/client/services/vehicle.service.d.ts +4 -147
- package/dist/runtime/client/services/vehicle.service.js +33 -239
- package/dist/runtime/client/system/processors/export.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/export.processor.js +16 -3
- package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/gameEvent.processor.js +16 -3
- package/dist/runtime/client/system/processors/interval.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/interval.processor.js +17 -4
- package/dist/runtime/client/system/processors/key.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/key.processor.js +18 -5
- package/dist/runtime/client/system/processors/localEvent.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/localEvent.processor.js +16 -3
- package/dist/runtime/client/system/processors/netEvent.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/netEvent.processor.js +16 -3
- package/dist/runtime/client/system/processors/onRpc.processor.js +1 -1
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +5 -0
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +26 -7
- package/dist/runtime/client/system/processors/tick.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/tick.processor.js +16 -3
- package/dist/runtime/client/system/processors/view.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/view.processor.js +21 -10
- package/dist/runtime/client/system/processors.register.d.ts +1 -0
- package/dist/runtime/client/system/processors.register.js +8 -0
- package/dist/runtime/client/ui-bridge.d.ts +2 -114
- package/dist/runtime/client/ui-bridge.js +2 -194
- package/dist/runtime/client/webview-bridge.d.ts +34 -0
- package/dist/runtime/client/webview-bridge.js +103 -0
- package/dist/runtime/client/webview.service.d.ts +15 -0
- package/dist/runtime/client/webview.service.js +103 -0
- package/dist/runtime/server/adapter/index.d.ts +5 -0
- package/dist/runtime/server/adapter/index.js +5 -0
- package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
- package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
- package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
- package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +95 -0
- package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
- package/dist/runtime/server/adapter/node-player-lifecycle-server.js +56 -0
- package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
- package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
- package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
- package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
- package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
- package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +58 -0
- package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
- package/dist/runtime/server/adapter/player-adapter.js +28 -0
- package/dist/runtime/server/adapter/registry.d.ts +26 -0
- package/dist/runtime/server/adapter/registry.js +101 -0
- package/dist/runtime/server/adapter/serialization.d.ts +6 -0
- package/dist/runtime/server/adapter/serialization.js +9 -0
- package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
- package/dist/runtime/server/adapter/server-adapter.js +14 -0
- package/dist/runtime/server/api.d.ts +2 -1
- package/dist/runtime/server/api.js +2 -1
- package/dist/runtime/server/apis/appearance.api.d.ts +5 -3
- package/dist/runtime/server/apis/appearance.api.js +20 -7
- package/dist/runtime/server/apis/chat.api.js +6 -5
- package/dist/runtime/server/apis/npcs.api.d.ts +3 -4
- package/dist/runtime/server/apis/npcs.api.js +28 -57
- package/dist/runtime/server/apis/parallel-compute.api.js +1 -0
- package/dist/runtime/server/apis/vehicle-modification.api.d.ts +3 -1
- package/dist/runtime/server/apis/vehicle-modification.api.js +13 -6
- package/dist/runtime/server/apis/vehicles.api.d.ts +12 -6
- package/dist/runtime/server/apis/vehicles.api.js +55 -40
- package/dist/runtime/server/bootstrap.js +28 -19
- package/dist/runtime/server/controllers/channel.controller.js +2 -1
- package/dist/runtime/server/controllers/command-export.controller.js +5 -3
- package/dist/runtime/server/controllers/player-export.controller.js +5 -4
- package/dist/runtime/server/controllers/remote-command-execution.controller.js +2 -1
- package/dist/runtime/server/controllers/session.controller.js +3 -2
- package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -1
- package/dist/runtime/server/controllers/vehicle.controller.js +13 -7
- package/dist/runtime/server/core.d.ts +2 -0
- package/dist/runtime/server/core.js +9 -1
- package/dist/runtime/server/decorators/command.d.ts +2 -0
- package/dist/runtime/server/decorators/command.js +3 -1
- package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +2 -1
- package/dist/runtime/server/entities/npc.d.ts +3 -1
- package/dist/runtime/server/entities/npc.js +3 -3
- package/dist/runtime/server/entities/player.d.ts +9 -12
- package/dist/runtime/server/entities/player.js +49 -31
- package/dist/runtime/server/entities/vehicle.js +2 -2
- package/dist/runtime/server/error-handler.js +13 -2
- package/dist/runtime/server/helpers/command-validation.helper.js +21 -8
- package/dist/runtime/server/helpers/function-helper.d.ts +1 -0
- package/dist/runtime/server/helpers/function-helper.js +15 -8
- package/dist/runtime/server/implementations/local/channel.local.d.ts +1 -1
- package/dist/runtime/server/implementations/local/channel.local.js +3 -2
- package/dist/runtime/server/implementations/local/player.local.d.ts +7 -3
- package/dist/runtime/server/implementations/local/player.local.js +23 -11
- package/dist/runtime/server/implementations/remote/channel.remote.d.ts +2 -1
- package/dist/runtime/server/implementations/remote/channel.remote.js +5 -2
- package/dist/runtime/server/implementations/remote/command.remote.d.ts +3 -1
- package/dist/runtime/server/implementations/remote/command.remote.js +9 -4
- package/dist/runtime/server/implementations/remote/player.remote.d.ts +7 -10
- package/dist/runtime/server/implementations/remote/player.remote.js +24 -29
- package/dist/runtime/server/library/create-server-library.js +17 -2
- package/dist/runtime/server/ports/channel.api-port.d.ts +1 -1
- package/dist/runtime/server/runtime.d.ts +3 -0
- package/dist/runtime/server/runtime.js +1 -15
- package/dist/runtime/server/services/appearance.service.d.ts +0 -95
- package/dist/runtime/server/services/appearance.service.js +15 -192
- package/dist/runtime/server/services/parallel/worker-pool.d.ts +1 -1
- package/dist/runtime/server/services/parallel/worker-pool.js +38 -6
- package/dist/runtime/server/services/parallel/worker.js +1 -0
- package/dist/runtime/server/services/services.register.js +56 -24
- package/dist/runtime/server/system/processors/netEvent.processor.js +1 -1
- package/dist/runtime/server/system/processors/onRpc.processor.js +1 -1
- package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +2 -1
- package/dist/runtime/server/system/processors/runtimeEvent.processor.js +1 -1
- package/dist/runtime/server/system/schema-generator.d.ts +1 -1
- package/dist/runtime/server/system/schema-generator.js +6 -3
- package/dist/runtime/server/types/core-exports.types.d.ts +5 -0
- package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
- package/dist/runtime/shared/helpers/process-tuple-schema.js +32 -0
- package/dist/runtime/shared/types/system-types.d.ts +55 -0
- package/dist/runtime/shared/types/system-types.js +54 -0
- package/package.json +41 -13
- package/dist/adapters/cfx/cfx-capabilities.d.ts +0 -16
- package/dist/adapters/cfx/cfx-capabilities.js +0 -70
- package/dist/adapters/cfx/cfx-platform.d.ts +0 -2
- package/dist/adapters/cfx/cfx-platform.js +0 -85
- package/dist/adapters/cfx/index.d.ts +0 -3
- package/dist/adapters/cfx/index.js +0 -3
- package/dist/adapters/cfx/runtime-profile.d.ts +0 -3
- package/dist/adapters/cfx/runtime-profile.js +0 -37
- package/dist/adapters/contracts/IPlatformCapabilities.d.ts +0 -79
- package/dist/adapters/contracts/IPlatformCapabilities.js +0 -27
- package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +0 -206
- package/dist/adapters/contracts/client/IPedAppearanceClient.js +0 -12
- package/dist/adapters/fivem/fivem-capabilities.d.ts +0 -18
- package/dist/adapters/fivem/fivem-capabilities.js +0 -61
- package/dist/adapters/fivem/fivem-engine-events.d.ts +0 -5
- package/dist/adapters/fivem/fivem-engine-events.js +0 -24
- package/dist/adapters/fivem/fivem-entity-server.d.ts +0 -26
- package/dist/adapters/fivem/fivem-entity-server.js +0 -87
- package/dist/adapters/fivem/fivem-exports.d.ts +0 -5
- package/dist/adapters/fivem/fivem-exports.js +0 -9
- package/dist/adapters/fivem/fivem-hasher.d.ts +0 -7
- package/dist/adapters/fivem/fivem-net-transport.d.ts +0 -1
- package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +0 -34
- package/dist/adapters/fivem/fivem-ped-appearance-client.js +0 -79
- package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +0 -14
- package/dist/adapters/fivem/fivem-ped-appearance-server.js +0 -22
- package/dist/adapters/fivem/fivem-ped-server.d.ts +0 -9
- package/dist/adapters/fivem/fivem-ped-server.js +0 -30
- package/dist/adapters/fivem/fivem-platform.d.ts +0 -5
- package/dist/adapters/fivem/fivem-platform.js +0 -74
- package/dist/adapters/fivem/fivem-player-server.d.ts +0 -24
- package/dist/adapters/fivem/fivem-player-server.js +0 -83
- package/dist/adapters/fivem/fivem-playerinfo.d.ts +0 -6
- package/dist/adapters/fivem/fivem-playerinfo.js +0 -10
- package/dist/adapters/fivem/fivem-resourceinfo.d.ts +0 -5
- package/dist/adapters/fivem/fivem-resourceinfo.js +0 -24
- package/dist/adapters/fivem/fivem-tick.d.ts +0 -7
- package/dist/adapters/fivem/fivem-vehicle-server.d.ts +0 -15
- package/dist/adapters/fivem/fivem-vehicle-server.js +0 -44
- package/dist/adapters/fivem/index.d.ts +0 -14
- package/dist/adapters/fivem/index.js +0 -16
- package/dist/adapters/fivem/transport/adapter.d.ts +0 -8
- package/dist/adapters/fivem/transport/adapter.js +0 -8
- package/dist/adapters/fivem/transport/fivem.events.d.ts +0 -8
- package/dist/adapters/fivem/transport/fivem.events.js +0 -36
- package/dist/adapters/fivem/transport/fivem.rpc.d.ts +0 -28
- package/dist/adapters/fivem/transport/fivem.rpc.js +0 -183
- package/dist/runtime/client/controllers/player-sync.controller.d.ts +0 -11
- package/dist/runtime/client/controllers/player-sync.controller.js +0 -51
- package/dist/runtime/client/player/player.d.ts +0 -262
- package/dist/runtime/client/player/player.js +0 -474
- package/dist/runtime/client/player/player.loader.d.ts +0 -1
- package/dist/runtime/client/player/player.loader.js +0 -18
- package/dist/runtime/server/helpers/process-tuple-schema.d.ts +0 -20
- package/dist/runtime/server/helpers/process-tuple-schema.js +0 -56
- /package/dist/adapters/{fivem/fivem-net-transport.js → contracts/client/spawn/types.js} +0 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { IClientLogConsole, } from '../../adapters/contracts/client/IClientLogConsole';
|
|
2
|
+
const DEFAULT_CLIENT_LOG_CONSOLE_CAPABILITIES = {
|
|
3
|
+
supportsColors: false,
|
|
4
|
+
supportsStructuredData: true,
|
|
5
|
+
supportsRichFormatting: false,
|
|
6
|
+
};
|
|
7
|
+
class DefaultClientLogConsole extends IClientLogConsole {
|
|
8
|
+
getCapabilities() {
|
|
9
|
+
return DEFAULT_CLIENT_LOG_CONSOLE_CAPABILITIES;
|
|
10
|
+
}
|
|
11
|
+
trace(message, details) {
|
|
12
|
+
this.write('debug', message, details);
|
|
13
|
+
}
|
|
14
|
+
debug(message, details) {
|
|
15
|
+
this.write('debug', message, details);
|
|
16
|
+
}
|
|
17
|
+
info(message, details) {
|
|
18
|
+
this.write('info', message, details);
|
|
19
|
+
}
|
|
20
|
+
warn(message, details) {
|
|
21
|
+
this.write('warn', message, details);
|
|
22
|
+
}
|
|
23
|
+
error(message, details) {
|
|
24
|
+
this.write('error', message, details);
|
|
25
|
+
}
|
|
26
|
+
write(level, message, details) {
|
|
27
|
+
if (details === undefined) {
|
|
28
|
+
console[level](message);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
console[level](message, details);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
let activeClientLogConsole = new DefaultClientLogConsole();
|
|
35
|
+
export function getClientLogConsole() {
|
|
36
|
+
return activeClientLogConsole;
|
|
37
|
+
}
|
|
38
|
+
export function setClientLogConsole(logConsole) {
|
|
39
|
+
activeClientLogConsole = logConsole;
|
|
40
|
+
}
|
|
41
|
+
export function resetClientLogConsoleForTests() {
|
|
42
|
+
activeClientLogConsole = new DefaultClientLogConsole();
|
|
43
|
+
}
|
|
@@ -22,7 +22,9 @@ export declare const loggers: {
|
|
|
22
22
|
exports: import("./logger.service").ChildLogger;
|
|
23
23
|
/** Tick handlers (server) */
|
|
24
24
|
tick: import("./logger.service").ChildLogger;
|
|
25
|
-
/**
|
|
25
|
+
/** Embedded WebView callbacks (client) */
|
|
26
|
+
webView: import("./logger.service").ChildLogger;
|
|
27
|
+
/** @deprecated Use webView instead. */
|
|
26
28
|
nui: import("./logger.service").ChildLogger;
|
|
27
29
|
/** Spawn service (client) */
|
|
28
30
|
spawn: import("./logger.service").ChildLogger;
|
|
@@ -57,8 +57,10 @@ export const loggers = {
|
|
|
57
57
|
exports: coreLogger.framework('Exports'),
|
|
58
58
|
/** Tick handlers (server) */
|
|
59
59
|
tick: coreLogger.framework('Tick'),
|
|
60
|
-
/**
|
|
61
|
-
|
|
60
|
+
/** Embedded WebView callbacks (client) */
|
|
61
|
+
webView: coreLogger.client('WebView'),
|
|
62
|
+
/** @deprecated Use webView instead. */
|
|
63
|
+
nui: coreLogger.client('WebView'),
|
|
62
64
|
/** Spawn service (client) */
|
|
63
65
|
spawn: coreLogger.client('Spawn'),
|
|
64
66
|
/** */
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export { coreLogger, loggers } from './core-logger';
|
|
2
|
+
export { getClientLogConsole, resetClientLogConsoleForTests, setClientLogConsole, } from './client-log-console';
|
|
2
3
|
export type { LoggerConfig } from './logger.config';
|
|
3
4
|
export { createLoggerConfig, DEFAULT_LOGGER_CONFIG } from './logger.config';
|
|
4
5
|
export { getLogLevel, isClientEnvironment, isDebugMode, isFiveMEnvironment, isServerEnvironment, } from './logger.env';
|
|
5
6
|
export { ChildLogger, LoggerService } from './logger.service';
|
|
7
|
+
export type { ClientLogConsoleCapabilities } from '../../adapters/contracts/client/IClientLogConsole';
|
|
6
8
|
export type { LogContext, LogEntry } from './logger.types';
|
|
7
|
-
export { LogDomain, LogDomainLabels, LogLevel, LogLevelLabels, parseLogLevel } from './logger.types';
|
|
9
|
+
export { getLogDomainLabel, LogDomain, LogDomainLabels, LogLevel, LogLevelLabels, parseLogLevel, } from './logger.types';
|
|
8
10
|
export type { BufferedTransportOptions, LogOutputFormat } from './transports/buffered.transport';
|
|
9
11
|
export { BufferedTransport } from './transports/buffered.transport';
|
|
10
12
|
export type { ConsoleTransportOptions } from './transports/console.transport';
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
// Core Logger (internal framework use)
|
|
2
2
|
export { coreLogger, loggers } from './core-logger';
|
|
3
|
+
export { getClientLogConsole, resetClientLogConsoleForTests, setClientLogConsole, } from './client-log-console';
|
|
3
4
|
// Config
|
|
4
5
|
export { createLoggerConfig, DEFAULT_LOGGER_CONFIG } from './logger.config';
|
|
5
6
|
// Environment utilities
|
|
6
7
|
export { getLogLevel, isClientEnvironment, isDebugMode, isFiveMEnvironment, isServerEnvironment, } from './logger.env';
|
|
7
8
|
// Service
|
|
8
9
|
export { ChildLogger, LoggerService } from './logger.service';
|
|
9
|
-
export { LogDomain, LogDomainLabels, LogLevel, LogLevelLabels, parseLogLevel } from './logger.types';
|
|
10
|
+
export { getLogDomainLabel, LogDomain, LogDomainLabels, LogLevel, LogLevelLabels, parseLogLevel, } from './logger.types';
|
|
10
11
|
export { BufferedTransport } from './transports/buffered.transport';
|
|
11
12
|
export { ConsoleTransport } from './transports/console.transport';
|
|
12
13
|
export { SimpleConsoleTransport } from './transports/simple-console.transport';
|
|
@@ -45,6 +45,7 @@ export declare enum LogDomain {
|
|
|
45
45
|
* Human-readable labels for each log domain.
|
|
46
46
|
*/
|
|
47
47
|
export declare const LogDomainLabels: Record<LogDomain, string>;
|
|
48
|
+
export declare function getLogDomainLabel(domain: LogDomain): string;
|
|
48
49
|
/**
|
|
49
50
|
* Additional contextual information that can be attached to any log entry.
|
|
50
51
|
* Useful for tracing, debugging, and correlation.
|
|
@@ -60,6 +60,41 @@ export const LogDomainLabels = {
|
|
|
60
60
|
[LogDomain.CLIENT]: 'CLIENT',
|
|
61
61
|
[LogDomain.EXTERNAL]: 'EXTERNAL',
|
|
62
62
|
};
|
|
63
|
+
function normalizeResourceName(resourceName) {
|
|
64
|
+
return resourceName.trim().replace(/^\[(.*)\]$/, '$1');
|
|
65
|
+
}
|
|
66
|
+
function getInjectedResourceName() {
|
|
67
|
+
if (typeof __OPENCORE_RESOURCE_NAME__ === 'string' &&
|
|
68
|
+
normalizeResourceName(__OPENCORE_RESOURCE_NAME__).length > 0) {
|
|
69
|
+
return normalizeResourceName(__OPENCORE_RESOURCE_NAME__);
|
|
70
|
+
}
|
|
71
|
+
const fn = globalThis.GetCurrentResourceName;
|
|
72
|
+
if (typeof fn === 'function') {
|
|
73
|
+
try {
|
|
74
|
+
const value = fn();
|
|
75
|
+
if (typeof value === 'string' && normalizeResourceName(value).length > 0) {
|
|
76
|
+
return normalizeResourceName(value);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
// Ignore runtime lookup failures and fall back to default labels.
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
export function getLogDomainLabel(domain) {
|
|
86
|
+
if (domain !== LogDomain.FRAMEWORK) {
|
|
87
|
+
return LogDomainLabels[domain];
|
|
88
|
+
}
|
|
89
|
+
const resourceName = getInjectedResourceName();
|
|
90
|
+
if (!resourceName) {
|
|
91
|
+
return LogDomainLabels[domain];
|
|
92
|
+
}
|
|
93
|
+
if (resourceName.toLowerCase() === 'core') {
|
|
94
|
+
return 'CORE';
|
|
95
|
+
}
|
|
96
|
+
return resourceName.toUpperCase();
|
|
97
|
+
}
|
|
63
98
|
/**
|
|
64
99
|
* Configuration for parsing log level from string (useful for env vars).
|
|
65
100
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getLogDomainLabel, LogLevel, LogLevelLabels } from '../logger.types';
|
|
2
2
|
/**
|
|
3
3
|
* A transport that buffers log entries in memory for later export.
|
|
4
4
|
*
|
|
@@ -95,7 +95,7 @@ export class BufferedTransport {
|
|
|
95
95
|
const entries = this.buffer.map((entry) => ({
|
|
96
96
|
timestamp: entry.timestamp,
|
|
97
97
|
level: LogLevelLabels[entry.level],
|
|
98
|
-
domain:
|
|
98
|
+
domain: getLogDomainLabel(entry.domain),
|
|
99
99
|
source: entry.context?.source,
|
|
100
100
|
message: entry.message,
|
|
101
101
|
context: this.cleanContext(entry.context),
|
|
@@ -114,7 +114,7 @@ export class BufferedTransport {
|
|
|
114
114
|
.map((entry) => {
|
|
115
115
|
const time = entry.timestamp.replace('T', ' ').slice(0, 23);
|
|
116
116
|
const level = LogLevelLabels[entry.level].padEnd(5);
|
|
117
|
-
const domain =
|
|
117
|
+
const domain = getLogDomainLabel(entry.domain).padEnd(8);
|
|
118
118
|
const source = entry.context?.source ? `[${entry.context.source}]` : '';
|
|
119
119
|
let line = `${time} | ${domain} | ${level} | ${source} ${entry.message}`;
|
|
120
120
|
const ctx = this.cleanContext(entry.context);
|
|
@@ -133,7 +133,7 @@ export class BufferedTransport {
|
|
|
133
133
|
const rows = this.buffer.map((entry) => [
|
|
134
134
|
entry.timestamp,
|
|
135
135
|
LogLevelLabels[entry.level],
|
|
136
|
-
|
|
136
|
+
getLogDomainLabel(entry.domain),
|
|
137
137
|
entry.context?.source ?? '',
|
|
138
138
|
`"${entry.message.replace(/"/g, '""')}"`,
|
|
139
139
|
JSON.stringify(this.cleanContext(entry.context)),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getLogDomainLabel, LogDomain, LogLevel, LogLevelLabels, } from '../logger.types';
|
|
2
2
|
/**
|
|
3
3
|
* Color codes for console output.
|
|
4
4
|
* Uses ANSI escape codes compatible with most terminals.
|
|
@@ -63,7 +63,7 @@ export class ConsoleTransport {
|
|
|
63
63
|
write(entry) {
|
|
64
64
|
const { level, domain, message, timestamp, context, error } = entry;
|
|
65
65
|
const levelLabel = LogLevelLabels[level].padEnd(5);
|
|
66
|
-
const domainLabel =
|
|
66
|
+
const domainLabel = getLogDomainLabel(domain);
|
|
67
67
|
const levelColor = this.colors ? LEVEL_COLORS[level] : '';
|
|
68
68
|
const domainColor = this.colors ? DOMAIN_COLORS[domain] : '';
|
|
69
69
|
const reset = this.colors ? COLORS.reset : '';
|
|
@@ -8,7 +8,7 @@ import { WebSocketLogTransport } from './websocket.transport';
|
|
|
8
8
|
*/
|
|
9
9
|
export function detectEnvironment() {
|
|
10
10
|
// Check for CitizenFX globals
|
|
11
|
-
if (typeof GetCurrentResourceName === 'function') {
|
|
11
|
+
if (typeof globalThis.GetCurrentResourceName === 'function') {
|
|
12
12
|
return 'cfx';
|
|
13
13
|
}
|
|
14
14
|
return 'node';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getLogDomainLabel, LogLevel, LogLevelLabels } from '../logger.types';
|
|
2
|
+
import { getClientLogConsole } from '../client-log-console';
|
|
2
3
|
/**
|
|
3
4
|
* Simple console transport without ANSI color codes.
|
|
4
5
|
* Designed for FiveM client console which doesn't support ANSI formatting.
|
|
@@ -25,8 +26,10 @@ export class SimpleConsoleTransport {
|
|
|
25
26
|
}
|
|
26
27
|
write(entry) {
|
|
27
28
|
const { level, domain, message, timestamp, context, error } = entry;
|
|
29
|
+
const output = getClientLogConsole();
|
|
30
|
+
const capabilities = output.getCapabilities();
|
|
28
31
|
const levelLabel = LogLevelLabels[level].padEnd(5);
|
|
29
|
-
const domainLabel =
|
|
32
|
+
const domainLabel = getLogDomainLabel(domain);
|
|
30
33
|
// Build the log line without ANSI codes
|
|
31
34
|
const parts = [];
|
|
32
35
|
if (this.timestamps) {
|
|
@@ -44,36 +47,38 @@ export class SimpleConsoleTransport {
|
|
|
44
47
|
parts.push(message);
|
|
45
48
|
// Output the main log line
|
|
46
49
|
const logLine = parts.join(' ');
|
|
47
|
-
// Choose the appropriate
|
|
50
|
+
// Choose the appropriate client log sink
|
|
48
51
|
switch (level) {
|
|
49
52
|
case LogLevel.TRACE:
|
|
53
|
+
output.trace(logLine);
|
|
54
|
+
break;
|
|
50
55
|
case LogLevel.DEBUG:
|
|
51
|
-
|
|
56
|
+
output.debug(logLine);
|
|
52
57
|
break;
|
|
53
58
|
case LogLevel.INFO:
|
|
54
|
-
|
|
59
|
+
output.info(logLine);
|
|
55
60
|
break;
|
|
56
61
|
case LogLevel.WARN:
|
|
57
|
-
|
|
62
|
+
output.warn(logLine);
|
|
58
63
|
break;
|
|
59
64
|
case LogLevel.ERROR:
|
|
60
65
|
case LogLevel.FATAL:
|
|
61
|
-
|
|
66
|
+
output.error(logLine);
|
|
62
67
|
break;
|
|
63
68
|
default:
|
|
64
|
-
|
|
69
|
+
output.info(logLine);
|
|
65
70
|
}
|
|
66
71
|
// Output context only if enabled and present
|
|
67
72
|
if (this.showContext && context) {
|
|
68
73
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
69
74
|
const { source, domain: _, ...rest } = context;
|
|
70
75
|
if (Object.keys(rest).length > 0) {
|
|
71
|
-
|
|
76
|
+
output.debug(' context:', capabilities.supportsStructuredData ? rest : JSON.stringify(rest));
|
|
72
77
|
}
|
|
73
78
|
}
|
|
74
79
|
// Output error stack if present
|
|
75
80
|
if (error?.stack) {
|
|
76
|
-
|
|
81
|
+
output.error(' stack:', error.stack);
|
|
77
82
|
}
|
|
78
83
|
}
|
|
79
84
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './kernel';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './kernel';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { DependencyContainer, InjectionToken } from 'tsyringe';
|
|
2
|
+
import { MessagingTransport } from '../../../adapters/contracts/transport/messaging.transport';
|
|
3
|
+
import { IClientRuntimeBridge } from './runtime-bridge';
|
|
4
|
+
/**
|
|
5
|
+
* Public contract implemented by external client adapters.
|
|
6
|
+
*/
|
|
7
|
+
export interface OpenCoreClientAdapter {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
register(context: ClientAdapterContext): void | Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Registration helpers exposed to client adapters.
|
|
13
|
+
*/
|
|
14
|
+
export interface ClientAdapterContext {
|
|
15
|
+
readonly adapterName: string;
|
|
16
|
+
readonly container: DependencyContainer;
|
|
17
|
+
isRegistered<T>(token: InjectionToken<T>): boolean;
|
|
18
|
+
bindSingleton<T>(token: InjectionToken<T>, implementation: InjectionToken<T>): void;
|
|
19
|
+
bindInstance<T>(token: InjectionToken<T>, value: T): void;
|
|
20
|
+
bindFactory<T>(token: InjectionToken<T>, factory: () => T): void;
|
|
21
|
+
bindMessagingTransport(transport: MessagingTransport): void;
|
|
22
|
+
useRuntimeBridge(runtime: IClientRuntimeBridge): void;
|
|
23
|
+
}
|
|
24
|
+
export declare function defineClientAdapter(adapter: OpenCoreClientAdapter): OpenCoreClientAdapter;
|
|
25
|
+
export declare function bindClientTransportInstances(context: Pick<ClientAdapterContext, 'bindInstance'>, transport: MessagingTransport): void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EventsAPI } from '../../../adapters/contracts/transport/events.api';
|
|
2
|
+
import { MessagingTransport } from '../../../adapters/contracts/transport/messaging.transport';
|
|
3
|
+
import { RpcAPI } from '../../../adapters/contracts/transport/rpc.api';
|
|
4
|
+
export function defineClientAdapter(adapter) {
|
|
5
|
+
return adapter;
|
|
6
|
+
}
|
|
7
|
+
export function bindClientTransportInstances(context, transport) {
|
|
8
|
+
context.bindInstance(MessagingTransport, transport);
|
|
9
|
+
context.bindInstance(EventsAPI, transport.events);
|
|
10
|
+
context.bindInstance(RpcAPI, transport.rpc);
|
|
11
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export * from './client-adapter';
|
|
2
|
+
export * from '../../../adapters/contracts/client/camera/IClientCameraPort';
|
|
3
|
+
export * from '../../../adapters/contracts/client/IClientLogConsole';
|
|
4
|
+
export * from '../../../adapters/contracts/client/ped/IClientPedPort';
|
|
5
|
+
export * from '../../../adapters/contracts/client/progress/IClientProgressPort';
|
|
6
|
+
export * from '../../../adapters/contracts/client/spawn/IClientSpawnPort';
|
|
7
|
+
export * from '../../../adapters/contracts/client/spawn/IClientSpawnBridge';
|
|
8
|
+
export * from '../../../adapters/contracts/client/vehicle/IClientVehiclePort';
|
|
9
|
+
export * from '../../../adapters/contracts/client/ui/IClientBlipBridge';
|
|
10
|
+
export * from '../../../adapters/contracts/client/ui/IClientMarkerBridge';
|
|
11
|
+
export * from '../../../adapters/contracts/client/ui/IClientNotificationBridge';
|
|
12
|
+
export * from '../../../adapters/contracts/client/ui/webview/IClientWebViewBridge';
|
|
13
|
+
export * from './local-player-bridge';
|
|
14
|
+
export * from './node-blip-bridge';
|
|
15
|
+
export * from './node-marker-bridge';
|
|
16
|
+
export * from './node-notification-bridge';
|
|
17
|
+
export * from './node-spawn-bridge';
|
|
18
|
+
export * from './node-webview-bridge';
|
|
19
|
+
export * from './platform-bridge';
|
|
20
|
+
export * from './runtime-bridge';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export * from './client-adapter';
|
|
2
|
+
export * from '../../../adapters/contracts/client/camera/IClientCameraPort';
|
|
3
|
+
export * from '../../../adapters/contracts/client/IClientLogConsole';
|
|
4
|
+
export * from '../../../adapters/contracts/client/ped/IClientPedPort';
|
|
5
|
+
export * from '../../../adapters/contracts/client/progress/IClientProgressPort';
|
|
6
|
+
export * from '../../../adapters/contracts/client/spawn/IClientSpawnPort';
|
|
7
|
+
export * from '../../../adapters/contracts/client/spawn/IClientSpawnBridge';
|
|
8
|
+
export * from '../../../adapters/contracts/client/vehicle/IClientVehiclePort';
|
|
9
|
+
export * from '../../../adapters/contracts/client/ui/IClientBlipBridge';
|
|
10
|
+
export * from '../../../adapters/contracts/client/ui/IClientMarkerBridge';
|
|
11
|
+
export * from '../../../adapters/contracts/client/ui/IClientNotificationBridge';
|
|
12
|
+
export * from '../../../adapters/contracts/client/ui/webview/IClientWebViewBridge';
|
|
13
|
+
export * from './local-player-bridge';
|
|
14
|
+
export * from './node-blip-bridge';
|
|
15
|
+
export * from './node-marker-bridge';
|
|
16
|
+
export * from './node-notification-bridge';
|
|
17
|
+
export * from './node-spawn-bridge';
|
|
18
|
+
export * from './node-webview-bridge';
|
|
19
|
+
export * from './platform-bridge';
|
|
20
|
+
export * from './runtime-bridge';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { IClientLocalPlayerBridge } from '../../../adapters/contracts/client/IClientLocalPlayerBridge';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { IClientLocalPlayerBridge } from '../../../adapters/contracts/client/IClientLocalPlayerBridge';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IClientBlipBridge, type ClientBlipDefinition } from '../../../adapters/contracts/client/ui/IClientBlipBridge';
|
|
2
|
+
export declare class NodeClientBlipBridge extends IClientBlipBridge {
|
|
3
|
+
private readonly blips;
|
|
4
|
+
create(id: string, definition: ClientBlipDefinition): void;
|
|
5
|
+
update(id: string, patch: Partial<ClientBlipDefinition>): boolean;
|
|
6
|
+
exists(id: string): boolean;
|
|
7
|
+
remove(id: string): boolean;
|
|
8
|
+
clear(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { injectable } from 'tsyringe';
|
|
8
|
+
import { IClientBlipBridge, } from '../../../adapters/contracts/client/ui/IClientBlipBridge';
|
|
9
|
+
let NodeClientBlipBridge = class NodeClientBlipBridge extends IClientBlipBridge {
|
|
10
|
+
blips = new Map();
|
|
11
|
+
create(id, definition) {
|
|
12
|
+
this.blips.set(id, { ...definition });
|
|
13
|
+
}
|
|
14
|
+
update(id, patch) {
|
|
15
|
+
const existing = this.blips.get(id);
|
|
16
|
+
if (!existing)
|
|
17
|
+
return false;
|
|
18
|
+
this.blips.set(id, { ...existing, ...patch });
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
exists(id) {
|
|
22
|
+
return this.blips.has(id);
|
|
23
|
+
}
|
|
24
|
+
remove(id) {
|
|
25
|
+
return this.blips.delete(id);
|
|
26
|
+
}
|
|
27
|
+
clear() {
|
|
28
|
+
this.blips.clear();
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
NodeClientBlipBridge = __decorate([
|
|
32
|
+
injectable()
|
|
33
|
+
], NodeClientBlipBridge);
|
|
34
|
+
export { NodeClientBlipBridge };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type ClientCameraCreateOptions, type ClientCameraRotation, type ClientCameraRenderOptions, type ClientCameraShakeOptions, type ClientCameraTransform, IClientCameraPort } from '../../../adapters/contracts/client/camera/IClientCameraPort';
|
|
2
|
+
import type { Vector3 } from '../../../kernel/utils/vector3';
|
|
3
|
+
export declare class NodeClientCameraPort extends IClientCameraPort {
|
|
4
|
+
create(_options?: ClientCameraCreateOptions): number;
|
|
5
|
+
setActive(_camera: number, _active: boolean): void;
|
|
6
|
+
render(_enable: boolean, _options?: ClientCameraRenderOptions): void;
|
|
7
|
+
destroy(_camera: number, _destroyActiveCamera?: boolean): void;
|
|
8
|
+
destroyAll(_destroyActiveCamera?: boolean): void;
|
|
9
|
+
setTransform(_camera: number, _transform: ClientCameraTransform): void;
|
|
10
|
+
setPosition(_camera: number, _position: Vector3): void;
|
|
11
|
+
setRotation(_camera: number, _rotation: ClientCameraRotation, _rotationOrder?: number): void;
|
|
12
|
+
setFov(_camera: number, _fov: number): void;
|
|
13
|
+
pointAtCoords(_camera: number, _position: Vector3): void;
|
|
14
|
+
pointAtEntity(_camera: number, _entity: number, _offset?: Vector3): void;
|
|
15
|
+
stopPointing(_camera: number): void;
|
|
16
|
+
interpolate(_fromCamera: number, _toCamera: number, _durationMs: number, _easeLocation?: boolean, _easeRotation?: boolean): void;
|
|
17
|
+
shake(_camera: number, _options: ClientCameraShakeOptions): void;
|
|
18
|
+
stopShaking(_camera: number, _stopImmediately?: boolean): void;
|
|
19
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { injectable } from 'tsyringe';
|
|
8
|
+
import { IClientCameraPort, } from '../../../adapters/contracts/client/camera/IClientCameraPort';
|
|
9
|
+
let NodeClientCameraPort = class NodeClientCameraPort extends IClientCameraPort {
|
|
10
|
+
create(_options) {
|
|
11
|
+
return 0;
|
|
12
|
+
}
|
|
13
|
+
setActive(_camera, _active) { }
|
|
14
|
+
render(_enable, _options) { }
|
|
15
|
+
destroy(_camera, _destroyActiveCamera) { }
|
|
16
|
+
destroyAll(_destroyActiveCamera) { }
|
|
17
|
+
setTransform(_camera, _transform) { }
|
|
18
|
+
setPosition(_camera, _position) { }
|
|
19
|
+
setRotation(_camera, _rotation, _rotationOrder) { }
|
|
20
|
+
setFov(_camera, _fov) { }
|
|
21
|
+
pointAtCoords(_camera, _position) { }
|
|
22
|
+
pointAtEntity(_camera, _entity, _offset) { }
|
|
23
|
+
stopPointing(_camera) { }
|
|
24
|
+
interpolate(_fromCamera, _toCamera, _durationMs, _easeLocation, _easeRotation) { }
|
|
25
|
+
shake(_camera, _options) { }
|
|
26
|
+
stopShaking(_camera, _stopImmediately) { }
|
|
27
|
+
};
|
|
28
|
+
NodeClientCameraPort = __decorate([
|
|
29
|
+
injectable()
|
|
30
|
+
], NodeClientCameraPort);
|
|
31
|
+
export { NodeClientCameraPort };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { IGtaPedAppearanceBridge } from '../../../adapters/contracts/client/IGtaPedAppearanceBridge';
|
|
2
|
+
import { IHasher } from '../../../adapters/contracts/IHasher';
|
|
3
|
+
import { IClientLocalPlayerBridge } from './local-player-bridge';
|
|
4
|
+
import { NodeClientLocalPlayerBridge } from './node-local-player-bridge';
|
|
5
|
+
import { NodeClientNotificationBridge } from './node-notification-bridge';
|
|
6
|
+
import { IClientLogConsole } from '../../../adapters/contracts/client/IClientLogConsole';
|
|
7
|
+
import { IClientSpawnBridge } from '../../../adapters/contracts/client/spawn/IClientSpawnBridge';
|
|
8
|
+
import { IClientSpawnPort } from '../../../adapters/contracts/client/spawn/IClientSpawnPort';
|
|
9
|
+
import { IClientBlipBridge } from '../../../adapters/contracts/client/ui/IClientBlipBridge';
|
|
10
|
+
import { IClientMarkerBridge } from '../../../adapters/contracts/client/ui/IClientMarkerBridge';
|
|
11
|
+
import { IClientNotificationBridge } from '../../../adapters/contracts/client/ui/IClientNotificationBridge';
|
|
12
|
+
import { IClientWebViewBridge } from '../../../adapters/contracts/client/ui/webview/IClientWebViewBridge';
|
|
13
|
+
import { installNodeClientLogConsole, NodeClientLogConsole } from './node-log-console';
|
|
14
|
+
import { NodeClientBlipBridge } from './node-blip-bridge';
|
|
15
|
+
import { NodeClientCameraPort } from './node-camera-port';
|
|
16
|
+
import { NodeClientMarkerBridge } from './node-marker-bridge';
|
|
17
|
+
import { NodeClientPedPort } from './node-ped-port';
|
|
18
|
+
import { NodeClientPlatformBridge } from './node-platform-bridge';
|
|
19
|
+
import { NodeClientProgressPort } from './node-progress-port';
|
|
20
|
+
import { NodeClientSpawnBridge } from './node-spawn-bridge';
|
|
21
|
+
import { NodeClientVehiclePort } from './node-vehicle-port';
|
|
22
|
+
import { NodeClientWebViewBridge } from './node-webview-bridge';
|
|
23
|
+
import { IClientPlatformBridge } from './platform-bridge';
|
|
24
|
+
import { NodeClientRuntimeBridge } from './node-runtime-bridge';
|
|
25
|
+
import { defineClientAdapter } from './client-adapter';
|
|
26
|
+
import { IClientRuntimeBridge } from './runtime-bridge';
|
|
27
|
+
import { IClientCameraPort } from '../../../adapters/contracts/client/camera/IClientCameraPort';
|
|
28
|
+
import { IClientPedPort } from '../../../adapters/contracts/client/ped/IClientPedPort';
|
|
29
|
+
import { IClientProgressPort } from '../../../adapters/contracts/client/progress/IClientProgressPort';
|
|
30
|
+
import { IClientVehiclePort } from '../../../adapters/contracts/client/vehicle/IClientVehiclePort';
|
|
31
|
+
/**
|
|
32
|
+
* Default client adapter used when no runtime adapter is provided.
|
|
33
|
+
*/
|
|
34
|
+
export function createNodeClientAdapter() {
|
|
35
|
+
return defineClientAdapter({
|
|
36
|
+
name: 'node',
|
|
37
|
+
async register(ctx) {
|
|
38
|
+
const [{ NodeMessagingTransport }, { NodePedAppearanceClient }, { NodeHasher }] = await Promise.all([
|
|
39
|
+
import('../../../adapters/node/transport/adapter'),
|
|
40
|
+
import('../../../adapters/node/node-ped-appearance-client'),
|
|
41
|
+
import('../../../adapters/node/node-hasher'),
|
|
42
|
+
]);
|
|
43
|
+
const transport = new NodeMessagingTransport('client');
|
|
44
|
+
ctx.bindMessagingTransport(transport);
|
|
45
|
+
ctx.bindSingleton(IGtaPedAppearanceBridge, NodePedAppearanceClient);
|
|
46
|
+
ctx.bindSingleton(IHasher, NodeHasher);
|
|
47
|
+
ctx.bindSingleton(IClientRuntimeBridge, NodeClientRuntimeBridge);
|
|
48
|
+
ctx.bindSingleton(IClientLocalPlayerBridge, NodeClientLocalPlayerBridge);
|
|
49
|
+
ctx.bindSingleton(IClientPlatformBridge, NodeClientPlatformBridge);
|
|
50
|
+
ctx.bindSingleton(IClientCameraPort, NodeClientCameraPort);
|
|
51
|
+
ctx.bindSingleton(IClientVehiclePort, NodeClientVehiclePort);
|
|
52
|
+
ctx.bindSingleton(IClientPedPort, NodeClientPedPort);
|
|
53
|
+
ctx.bindSingleton(IClientProgressPort, NodeClientProgressPort);
|
|
54
|
+
ctx.bindSingleton(IClientSpawnPort, NodeClientSpawnBridge);
|
|
55
|
+
ctx.bindFactory(IClientSpawnBridge, () => ctx.container.resolve(IClientSpawnPort));
|
|
56
|
+
ctx.bindSingleton(IClientBlipBridge, NodeClientBlipBridge);
|
|
57
|
+
ctx.bindSingleton(IClientMarkerBridge, NodeClientMarkerBridge);
|
|
58
|
+
ctx.bindSingleton(IClientNotificationBridge, NodeClientNotificationBridge);
|
|
59
|
+
ctx.bindSingleton(IClientWebViewBridge, NodeClientWebViewBridge);
|
|
60
|
+
ctx.bindSingleton(IClientLogConsole, NodeClientLogConsole);
|
|
61
|
+
installNodeClientLogConsole(new NodeClientLogConsole());
|
|
62
|
+
},
|
|
63
|
+
});
|
|
64
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Vector3 } from '../../../kernel/utils/vector3';
|
|
2
|
+
import { IClientLocalPlayerBridge } from './local-player-bridge';
|
|
3
|
+
/**
|
|
4
|
+
* Node fallback local player bridge.
|
|
5
|
+
*/
|
|
6
|
+
export declare class NodeClientLocalPlayerBridge extends IClientLocalPlayerBridge {
|
|
7
|
+
getHandle(): number;
|
|
8
|
+
getPosition(): Vector3;
|
|
9
|
+
getHeading(): number;
|
|
10
|
+
setPosition(_position: Vector3, _heading?: number): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { injectable } from 'tsyringe';
|
|
8
|
+
import { IClientLocalPlayerBridge } from './local-player-bridge';
|
|
9
|
+
/**
|
|
10
|
+
* Node fallback local player bridge.
|
|
11
|
+
*/
|
|
12
|
+
let NodeClientLocalPlayerBridge = class NodeClientLocalPlayerBridge extends IClientLocalPlayerBridge {
|
|
13
|
+
getHandle() {
|
|
14
|
+
return 0;
|
|
15
|
+
}
|
|
16
|
+
getPosition() {
|
|
17
|
+
return { x: 0, y: 0, z: 0 };
|
|
18
|
+
}
|
|
19
|
+
getHeading() {
|
|
20
|
+
return 0;
|
|
21
|
+
}
|
|
22
|
+
setPosition(_position, _heading) { }
|
|
23
|
+
};
|
|
24
|
+
NodeClientLocalPlayerBridge = __decorate([
|
|
25
|
+
injectable()
|
|
26
|
+
], NodeClientLocalPlayerBridge);
|
|
27
|
+
export { NodeClientLocalPlayerBridge };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IClientLogConsole, type ClientLogConsoleCapabilities } from '../../../adapters/contracts/client/IClientLogConsole';
|
|
2
|
+
export declare class NodeClientLogConsole extends IClientLogConsole {
|
|
3
|
+
getCapabilities(): ClientLogConsoleCapabilities;
|
|
4
|
+
trace(message: string, details?: unknown): void;
|
|
5
|
+
debug(message: string, details?: unknown): void;
|
|
6
|
+
info(message: string, details?: unknown): void;
|
|
7
|
+
warn(message: string, details?: unknown): void;
|
|
8
|
+
error(message: string, details?: unknown): void;
|
|
9
|
+
private write;
|
|
10
|
+
}
|
|
11
|
+
export declare function installNodeClientLogConsole(logConsole: IClientLogConsole): void;
|