@open-core/framework 1.0.4-beta.1 → 1.0.5-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +373 -373
- package/README.md +196 -268
- package/dist/adapters/cfx/cfx-capabilities.d.ts +16 -0
- package/dist/adapters/cfx/cfx-capabilities.js +70 -0
- package/dist/adapters/cfx/cfx-platform.d.ts +2 -0
- package/dist/adapters/cfx/cfx-platform.js +85 -0
- package/dist/adapters/cfx/index.d.ts +3 -0
- package/dist/adapters/cfx/index.js +3 -0
- package/dist/adapters/cfx/runtime-profile.d.ts +3 -0
- package/dist/adapters/cfx/runtime-profile.js +37 -0
- package/dist/adapters/contracts/IEngineEvents.d.ts +20 -0
- package/dist/adapters/contracts/IEngineEvents.js +2 -0
- package/dist/adapters/contracts/IExports.d.ts +4 -0
- package/dist/adapters/contracts/IExports.js +2 -0
- package/dist/adapters/contracts/IHasher.d.ts +15 -0
- package/dist/adapters/contracts/IHasher.js +8 -0
- package/dist/adapters/contracts/IPlatformCapabilities.d.ts +79 -0
- package/dist/adapters/contracts/IPlatformCapabilities.js +27 -0
- package/dist/adapters/contracts/IPlayerInfo.d.ts +5 -0
- package/dist/adapters/contracts/IPlayerInfo.js +2 -0
- package/dist/adapters/contracts/IResourceInfo.d.ts +4 -0
- package/dist/adapters/contracts/IResourceInfo.js +2 -0
- package/dist/adapters/contracts/ITick.d.ts +10 -0
- package/dist/adapters/contracts/ITick.js +5 -0
- package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +206 -0
- package/dist/adapters/contracts/client/IPedAppearanceClient.js +12 -0
- package/dist/adapters/contracts/index.d.ts +2 -0
- package/dist/adapters/contracts/index.js +3 -0
- package/dist/adapters/contracts/server/IEntityServer.d.ts +188 -0
- package/dist/adapters/contracts/server/IEntityServer.js +35 -0
- package/dist/adapters/contracts/server/IPedAppearanceServer.d.ts +45 -0
- package/dist/adapters/contracts/server/IPedAppearanceServer.js +12 -0
- package/dist/adapters/contracts/server/IPedServer.d.ts +29 -0
- package/dist/adapters/contracts/server/IPedServer.js +8 -0
- package/dist/adapters/contracts/server/IPlayerServer.d.ts +117 -0
- package/dist/adapters/contracts/server/IPlayerServer.js +35 -0
- package/dist/adapters/contracts/server/IVehicleServer.d.ts +55 -0
- package/dist/adapters/contracts/server/IVehicleServer.js +9 -0
- package/dist/adapters/contracts/transport/context.d.ts +5 -0
- package/dist/adapters/contracts/transport/events.api.d.ts +36 -0
- package/dist/adapters/contracts/transport/events.api.js +5 -0
- package/dist/adapters/contracts/transport/messaging.transport.d.ts +8 -0
- package/dist/adapters/contracts/transport/messaging.transport.js +2 -0
- package/dist/adapters/contracts/transport/rpc.api.d.ts +66 -0
- package/dist/adapters/contracts/transport/rpc.api.js +20 -0
- package/dist/adapters/contracts/types/identifier.d.ts +67 -0
- package/dist/adapters/contracts/types/identifier.js +58 -0
- package/dist/adapters/contracts/types/index.d.ts +1 -0
- package/dist/adapters/contracts/types/index.js +1 -0
- package/dist/adapters/fivem/fivem-capabilities.d.ts +18 -0
- package/dist/adapters/fivem/fivem-capabilities.js +61 -0
- package/dist/adapters/fivem/fivem-engine-events.d.ts +5 -0
- package/dist/adapters/fivem/fivem-engine-events.js +24 -0
- package/dist/adapters/fivem/fivem-entity-server.d.ts +26 -0
- package/dist/adapters/fivem/fivem-entity-server.js +87 -0
- package/dist/adapters/fivem/fivem-exports.d.ts +5 -0
- package/dist/adapters/fivem/fivem-exports.js +9 -0
- package/dist/adapters/fivem/fivem-hasher.d.ts +7 -0
- package/dist/adapters/fivem/fivem-hasher.js +20 -0
- package/dist/adapters/fivem/fivem-net-transport.d.ts +1 -0
- package/dist/adapters/fivem/fivem-net-transport.js +0 -0
- package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +34 -0
- package/dist/adapters/fivem/fivem-ped-appearance-client.js +79 -0
- package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +14 -0
- package/dist/adapters/fivem/fivem-ped-appearance-server.js +22 -0
- package/dist/adapters/fivem/fivem-ped-server.d.ts +9 -0
- package/dist/adapters/fivem/fivem-ped-server.js +30 -0
- package/dist/adapters/fivem/fivem-platform.d.ts +5 -0
- package/dist/adapters/fivem/fivem-platform.js +74 -0
- package/dist/adapters/fivem/fivem-player-server.d.ts +24 -0
- package/dist/adapters/fivem/fivem-player-server.js +83 -0
- package/dist/adapters/fivem/fivem-playerinfo.d.ts +6 -0
- package/dist/adapters/fivem/fivem-playerinfo.js +10 -0
- package/dist/adapters/fivem/fivem-resourceinfo.d.ts +5 -0
- package/dist/adapters/fivem/fivem-resourceinfo.js +24 -0
- package/dist/adapters/fivem/fivem-tick.d.ts +7 -0
- package/dist/adapters/fivem/fivem-tick.js +19 -0
- package/dist/adapters/fivem/fivem-vehicle-server.d.ts +15 -0
- package/dist/adapters/fivem/fivem-vehicle-server.js +44 -0
- package/dist/adapters/fivem/index.d.ts +14 -0
- package/dist/adapters/fivem/index.js +16 -0
- package/dist/adapters/fivem/transport/adapter.d.ts +8 -0
- package/dist/adapters/fivem/transport/adapter.js +8 -0
- package/dist/adapters/fivem/transport/fivem.events.d.ts +8 -0
- package/dist/adapters/fivem/transport/fivem.events.js +36 -0
- package/dist/adapters/fivem/transport/fivem.rpc.d.ts +28 -0
- package/dist/adapters/fivem/transport/fivem.rpc.js +183 -0
- package/dist/adapters/index.d.ts +21 -0
- package/dist/adapters/index.js +32 -0
- package/dist/adapters/node/index.d.ts +16 -0
- package/dist/adapters/node/index.js +18 -0
- package/dist/adapters/node/node-capabilities.d.ts +19 -0
- package/dist/adapters/node/node-capabilities.js +48 -0
- package/dist/adapters/node/node-engine-events.d.ts +20 -0
- package/dist/adapters/node/node-engine-events.js +40 -0
- package/dist/adapters/node/node-entity-server.d.ts +37 -0
- package/dist/adapters/node/node-entity-server.js +118 -0
- package/dist/adapters/node/node-exports.d.ts +26 -0
- package/dist/adapters/node/node-exports.js +58 -0
- package/dist/adapters/node/node-hasher.d.ts +12 -0
- package/dist/adapters/node/node-hasher.js +36 -0
- package/dist/adapters/node/node-ped-appearance-client.d.ts +34 -0
- package/dist/adapters/node/node-ped-appearance-client.js +55 -0
- package/dist/adapters/node/node-ped-appearance-server.d.ts +14 -0
- package/dist/adapters/node/node-ped-appearance-server.js +14 -0
- package/dist/adapters/node/node-ped-server.d.ts +13 -0
- package/dist/adapters/node/node-ped-server.js +45 -0
- package/dist/adapters/node/node-platform.d.ts +5 -0
- package/dist/adapters/node/node-platform.js +76 -0
- package/dist/adapters/node/node-player-server.d.ts +44 -0
- package/dist/adapters/node/node-player-server.js +105 -0
- package/dist/adapters/node/node-playerinfo.d.ts +6 -0
- package/dist/adapters/node/node-playerinfo.js +20 -0
- package/dist/adapters/node/node-resourceinfo.d.ts +13 -0
- package/dist/adapters/node/node-resourceinfo.js +27 -0
- package/dist/adapters/node/node-tick.d.ts +10 -0
- package/dist/adapters/node/node-tick.js +41 -0
- package/dist/adapters/node/node-vehicle-server.d.ts +21 -0
- package/dist/adapters/node/node-vehicle-server.js +84 -0
- package/dist/adapters/node/transport/adapter.d.ts +10 -0
- package/dist/adapters/node/transport/adapter.js +14 -0
- package/dist/adapters/node/transport/node.events.d.ts +14 -0
- package/dist/adapters/node/transport/node.events.js +38 -0
- package/dist/adapters/node/transport/node.rpc.d.ts +18 -0
- package/dist/adapters/node/transport/node.rpc.js +71 -0
- package/dist/adapters/platform/index.d.ts +1 -0
- package/dist/adapters/platform/index.js +1 -0
- package/dist/adapters/platform/platform-registry.d.ts +101 -0
- package/dist/adapters/platform/platform-registry.js +113 -0
- package/dist/adapters/register-capabilities.d.ts +61 -0
- package/dist/adapters/register-capabilities.js +78 -0
- package/dist/adapters/register-client-capabilities.d.ts +8 -0
- package/dist/adapters/register-client-capabilities.js +58 -0
- package/dist/index.d.ts +3 -4
- package/dist/index.js +4 -41
- package/dist/kernel/di/class-constructor.js +0 -0
- package/dist/kernel/di/container.d.ts +5 -0
- package/dist/kernel/di/container.js +6 -0
- package/dist/kernel/di/decorator-processor.js +0 -0
- package/dist/kernel/di/index.d.ts +4 -0
- package/dist/kernel/di/index.js +4 -0
- package/dist/kernel/di/metadata.scanner.d.ts +7 -0
- package/dist/kernel/di/metadata.scanner.js +61 -0
- package/dist/kernel/error/app.error.d.ts +9 -0
- package/dist/kernel/error/app.error.js +15 -0
- package/dist/kernel/error/common.error-codes.d.ts +1 -0
- package/dist/kernel/error/common.error-codes.js +0 -0
- package/dist/kernel/error/framework.error-codes.d.ts +12 -0
- package/dist/kernel/error/framework.error-codes.js +0 -0
- package/dist/kernel/error/index.d.ts +4 -0
- package/dist/kernel/error/index.js +2 -0
- package/dist/kernel/error/security.error.d.ts +6 -0
- package/dist/kernel/error/security.error.js +9 -0
- package/dist/kernel/error/security.types.js +0 -0
- package/dist/kernel/index.d.ts +6 -0
- package/dist/kernel/index.js +7 -0
- package/dist/kernel/logger/core-logger.d.ts +31 -0
- package/dist/kernel/logger/core-logger.js +66 -0
- package/dist/kernel/logger/index.d.ts +14 -0
- package/dist/kernel/logger/index.js +12 -0
- package/dist/kernel/logger/logger.config.d.ts +47 -0
- package/dist/kernel/logger/logger.config.js +32 -0
- package/dist/kernel/logger/logger.env.d.ts +35 -0
- package/dist/kernel/logger/logger.env.js +59 -0
- package/dist/kernel/logger/logger.service.d.ts +175 -0
- package/dist/kernel/logger/logger.service.js +301 -0
- package/dist/kernel/logger/logger.types.js +70 -0
- package/dist/kernel/logger/transports/buffered.transport.d.ts +88 -0
- package/dist/kernel/logger/transports/buffered.transport.js +154 -0
- package/dist/kernel/logger/transports/console.transport.d.ts +37 -0
- package/dist/kernel/logger/transports/console.transport.js +121 -0
- package/dist/kernel/logger/transports/dev-transport.factory.d.ts +75 -0
- package/dist/kernel/logger/transports/dev-transport.factory.js +101 -0
- package/dist/kernel/logger/transports/http.transport.d.ts +67 -0
- package/dist/kernel/logger/transports/http.transport.js +168 -0
- package/dist/kernel/logger/transports/index.d.ts +7 -0
- package/dist/kernel/logger/transports/index.js +7 -0
- package/dist/kernel/logger/transports/simple-console.transport.d.ts +38 -0
- package/dist/kernel/logger/transports/simple-console.transport.js +79 -0
- package/dist/kernel/logger/transports/transport.interface.d.ts +40 -0
- package/dist/kernel/logger/transports/transport.interface.js +0 -0
- package/dist/kernel/logger/transports/websocket.transport.d.ts +69 -0
- package/dist/kernel/logger/transports/websocket.transport.js +164 -0
- package/dist/kernel/schema/index.d.ts +32 -0
- package/dist/kernel/schema/index.js +4 -0
- package/dist/kernel/shared/index.d.ts +1 -0
- package/dist/kernel/shared/index.js +1 -0
- package/dist/kernel/shared/player-appearance.types.d.ts +276 -0
- package/dist/kernel/shared/player-appearance.types.js +74 -0
- package/dist/kernel/utils/index.d.ts +3 -0
- package/dist/kernel/utils/index.js +3 -0
- package/dist/kernel/utils/result.d.ts +12 -0
- package/dist/kernel/utils/result.js +6 -0
- package/dist/kernel/utils/rgb.d.ts +17 -0
- package/dist/kernel/utils/rgb.js +61 -0
- package/dist/kernel/utils/vector3.d.ts +14 -0
- package/dist/kernel/utils/vector3.js +24 -0
- package/dist/runtime/client/.opencore/autoload.client.controllers.d.ts +1 -0
- package/dist/runtime/client/.opencore/autoload.client.controllers.js +0 -0
- package/dist/runtime/client/api.d.ts +8 -0
- package/dist/runtime/client/api.js +8 -0
- package/dist/runtime/client/bus/library-event.bus.d.ts +5 -0
- package/dist/runtime/client/bus/library-event.bus.js +28 -0
- package/dist/runtime/client/client-api-runtime.d.ts +7 -0
- package/dist/runtime/client/client-api-runtime.js +34 -0
- package/dist/runtime/client/client-bootstrap.d.ts +7 -0
- package/dist/runtime/client/client-bootstrap.js +160 -0
- package/dist/runtime/client/client-container.js +3 -0
- package/dist/runtime/client/client-core.d.ts +19 -0
- package/dist/runtime/client/client-core.js +23 -0
- package/dist/runtime/client/client-runtime.d.ts +63 -0
- package/dist/runtime/client/client-runtime.js +21 -0
- package/dist/runtime/client/controllers/appearance.controller.d.ts +8 -0
- package/dist/runtime/client/controllers/appearance.controller.js +48 -0
- package/dist/runtime/client/controllers/player-sync.controller.d.ts +11 -0
- package/dist/runtime/client/controllers/player-sync.controller.js +51 -0
- package/dist/runtime/client/controllers/spawner.controller.d.ts +12 -0
- package/dist/runtime/client/controllers/spawner.controller.js +49 -0
- package/dist/runtime/client/decorators/controller.d.ts +20 -0
- package/dist/runtime/client/decorators/controller.js +62 -0
- package/dist/runtime/client/decorators/export.d.ts +21 -0
- package/dist/runtime/client/decorators/export.js +26 -0
- package/dist/runtime/client/decorators/gameEvent.d.ts +47 -0
- package/dist/runtime/client/decorators/gameEvent.js +50 -0
- package/dist/runtime/client/decorators/index.d.ts +13 -0
- package/dist/runtime/client/decorators/index.js +13 -0
- package/dist/runtime/client/decorators/interval.d.ts +23 -0
- package/dist/runtime/client/decorators/interval.js +28 -0
- package/dist/runtime/client/decorators/key.d.ts +23 -0
- package/dist/runtime/client/decorators/key.js +28 -0
- package/dist/runtime/client/decorators/localEvent.d.ts +21 -0
- package/dist/runtime/client/decorators/localEvent.js +26 -0
- package/dist/runtime/client/decorators/onLibraryEvent.d.ts +17 -0
- package/dist/runtime/client/decorators/onLibraryEvent.js +22 -0
- package/dist/runtime/client/decorators/onNet.d.ts +21 -0
- package/dist/runtime/client/decorators/onNet.js +26 -0
- package/dist/runtime/client/decorators/onRPC.d.ts +41 -0
- package/dist/runtime/client/decorators/onRPC.js +40 -0
- package/dist/runtime/client/decorators/onTick.d.ts +21 -0
- package/dist/runtime/client/decorators/onTick.js +26 -0
- package/dist/runtime/client/decorators/onView.d.ts +21 -0
- package/dist/runtime/client/decorators/onView.js +26 -0
- package/dist/runtime/client/decorators/resourceLifecycle.d.ts +40 -0
- package/dist/runtime/client/decorators/resourceLifecycle.js +49 -0
- package/dist/runtime/client/index.d.ts +4 -0
- package/dist/runtime/client/index.js +2 -0
- package/dist/runtime/client/library/create-client-library.d.ts +13 -0
- package/dist/runtime/client/library/create-client-library.js +45 -0
- package/dist/runtime/client/library/index.d.ts +4 -0
- package/dist/runtime/client/library/index.js +2 -0
- package/dist/runtime/client/library/plugin/client-plugin-api.d.ts +5 -0
- package/dist/runtime/client/library/plugin/client-plugin-api.js +0 -0
- package/dist/runtime/client/library/plugin/index.d.ts +4 -0
- package/dist/runtime/client/library/plugin/index.js +4 -0
- package/dist/runtime/client/library/plugin/install-client-plugins.d.ts +3 -0
- package/dist/runtime/client/library/plugin/install-client-plugins.js +35 -0
- package/dist/runtime/client/library/plugin/plugin-context.d.ts +10 -0
- package/dist/runtime/client/library/plugin/plugin-context.js +0 -0
- package/dist/runtime/client/library/plugin/plugin-registry.d.ts +6 -0
- package/dist/runtime/client/library/plugin/plugin-registry.js +12 -0
- package/dist/runtime/client/library/plugin/plugin.interface.d.ts +11 -0
- package/dist/runtime/client/library/plugin/plugin.interface.js +0 -0
- package/dist/runtime/client/player/player.d.ts +262 -0
- package/dist/runtime/client/player/player.js +474 -0
- package/dist/runtime/client/player/player.loader.js +18 -0
- package/dist/runtime/client/services/appearance.service.d.ts +132 -0
- package/dist/runtime/client/services/appearance.service.js +330 -0
- package/dist/runtime/client/services/blip.service.d.ts +112 -0
- package/dist/runtime/client/services/blip.service.js +209 -0
- package/dist/runtime/client/services/camera-effects.registry.d.ts +94 -0
- package/dist/runtime/client/services/camera-effects.registry.js +145 -0
- package/dist/runtime/client/services/camera.d.ts +129 -0
- package/dist/runtime/client/services/camera.js +158 -0
- package/dist/runtime/client/services/cinematic-builder.d.ts +107 -0
- package/dist/runtime/client/services/cinematic-builder.js +467 -0
- package/dist/runtime/client/services/cinematic.d.ts +284 -0
- package/dist/runtime/client/services/cinematic.js +783 -0
- package/dist/runtime/client/services/index.d.ts +14 -0
- package/dist/runtime/client/services/index.js +14 -0
- package/dist/runtime/client/services/marker.service.d.ts +94 -0
- package/dist/runtime/client/services/marker.service.js +148 -0
- package/dist/runtime/client/services/notification.service.js +108 -0
- package/dist/runtime/client/services/ped.service.d.ts +182 -0
- package/dist/runtime/client/services/ped.service.js +298 -0
- package/dist/runtime/client/services/progress.service.js +199 -0
- package/dist/runtime/client/services/spawn.service.d.ts +73 -0
- package/dist/runtime/client/services/spawn.service.js +255 -0
- package/dist/runtime/client/services/streaming.service.js +331 -0
- package/dist/runtime/client/services/textui.service.d.ts +82 -0
- package/dist/runtime/client/services/textui.service.js +160 -0
- package/dist/runtime/client/services/vehicle-client.service.d.ts +180 -0
- package/dist/runtime/client/services/vehicle-client.service.js +483 -0
- package/dist/runtime/client/services/vehicle.service.d.ts +168 -0
- package/dist/runtime/client/services/vehicle.service.js +293 -0
- package/dist/runtime/client/system/metadata-client.keys.d.ts +15 -0
- package/dist/runtime/client/system/metadata-client.keys.js +15 -0
- package/dist/runtime/client/system/processors/export.processor.d.ts +7 -0
- package/dist/runtime/client/system/processors/export.processor.js +34 -0
- package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +10 -0
- package/dist/runtime/client/system/processors/gameEvent.processor.js +53 -0
- package/dist/runtime/client/system/processors/interval.processor.d.ts +7 -0
- package/dist/runtime/client/system/processors/interval.processor.js +38 -0
- package/dist/runtime/client/system/processors/key.processor.d.ts +8 -0
- package/dist/runtime/client/system/processors/key.processor.js +22 -0
- package/dist/runtime/client/system/processors/libraryEvent.processor.d.ts +6 -0
- package/dist/runtime/client/system/processors/libraryEvent.processor.js +36 -0
- package/dist/runtime/client/system/processors/localEvent.processor.d.ts +7 -0
- package/dist/runtime/client/system/processors/localEvent.processor.js +33 -0
- package/dist/runtime/client/system/processors/netEvent.processor.d.ts +7 -0
- package/dist/runtime/client/system/processors/netEvent.processor.js +33 -0
- package/dist/runtime/client/system/processors/onRpc.processor.d.ts +9 -0
- package/dist/runtime/client/system/processors/onRpc.processor.js +62 -0
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +9 -0
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +62 -0
- package/dist/runtime/client/system/processors/tick.processor.d.ts +5 -0
- package/dist/runtime/client/system/processors/tick.processor.js +32 -0
- package/dist/runtime/client/system/processors/view.processor.d.ts +7 -0
- package/dist/runtime/client/system/processors/view.processor.js +36 -0
- package/dist/runtime/client/system/processors.register.js +28 -0
- package/dist/runtime/client/types/game-events.d.ts +128 -0
- package/dist/runtime/client/types/game-events.js +72 -0
- package/dist/runtime/client/types/index.js +1 -0
- package/dist/runtime/client/ui-bridge.js +196 -0
- package/dist/runtime/core/entity.d.ts +168 -0
- package/dist/runtime/core/entity.js +232 -0
- package/dist/runtime/core/index.d.ts +5 -0
- package/dist/runtime/core/index.js +5 -0
- package/dist/runtime/core/library/create-library-base.d.ts +15 -0
- package/dist/runtime/core/library/create-library-base.js +27 -0
- package/dist/runtime/core/library/index.d.ts +5 -0
- package/dist/runtime/core/library/index.js +4 -0
- package/dist/runtime/core/library/library-bus.d.ts +9 -0
- package/dist/runtime/core/library/library-bus.js +46 -0
- package/dist/runtime/core/library/library-config.d.ts +10 -0
- package/dist/runtime/core/library/library-config.js +12 -0
- package/dist/runtime/core/library/library-event-id.d.ts +8 -0
- package/dist/runtime/core/library/library-event-id.js +9 -0
- package/dist/runtime/core/library/types.d.ts +146 -0
- package/dist/runtime/core/library/types.js +0 -0
- package/dist/runtime/core/nativehandle.d.ts +3 -0
- package/dist/runtime/core/nativehandle.js +0 -0
- package/dist/runtime/core/spatial.d.ts +7 -0
- package/dist/runtime/core/spatial.js +0 -0
- package/dist/runtime/core/world.d.ts +13 -0
- package/dist/runtime/core/world.js +57 -0
- package/dist/runtime/server/.opencore/autoload.server.controllers.d.ts +1 -0
- package/dist/runtime/server/.opencore/autoload.server.controllers.js +0 -0
- package/dist/runtime/server/api.d.ts +15 -0
- package/dist/runtime/server/api.js +21 -0
- package/dist/runtime/server/apis/appearance.api.d.ts +41 -0
- package/dist/runtime/server/apis/appearance.api.js +66 -0
- package/dist/runtime/server/apis/chat.api.d.ts +69 -0
- package/dist/runtime/server/apis/chat.api.js +129 -0
- package/dist/runtime/server/apis/index.d.ts +6 -0
- package/dist/runtime/server/apis/index.js +6 -0
- package/dist/runtime/server/apis/npcs.api.d.ts +213 -0
- package/dist/runtime/server/apis/npcs.api.js +465 -0
- package/dist/runtime/server/apis/parallel-compute.api.d.ts +118 -0
- package/dist/runtime/server/apis/parallel-compute.api.js +423 -0
- package/dist/runtime/server/apis/vehicle-modification.api.d.ts +94 -0
- package/dist/runtime/server/apis/vehicle-modification.api.js +308 -0
- package/dist/runtime/server/apis/vehicles.api.d.ts +140 -0
- package/dist/runtime/server/apis/vehicles.api.js +386 -0
- package/dist/runtime/server/bootstrap.d.ts +21 -0
- package/dist/runtime/server/bootstrap.js +310 -0
- package/dist/runtime/server/bus/internal-event.bus.d.ts +6 -0
- package/dist/runtime/server/bus/internal-event.bus.js +30 -0
- package/dist/runtime/server/bus/library-event.bus.d.ts +5 -0
- package/dist/runtime/server/bus/library-event.bus.js +27 -0
- package/dist/runtime/server/concepts/channel.d.ts +29 -0
- package/dist/runtime/server/concepts/channel.js +70 -0
- package/dist/runtime/server/contracts/index.d.ts +6 -0
- package/dist/runtime/server/contracts/index.js +8 -0
- package/dist/runtime/server/contracts/player-persistence.contract.d.ts +84 -0
- package/dist/runtime/server/contracts/player-persistence.contract.js +46 -0
- package/dist/runtime/server/contracts/security/command-error-observer.contract.d.ts +73 -0
- package/dist/runtime/server/contracts/security/command-error-observer.contract.js +5 -0
- package/dist/runtime/server/contracts/security/net-event-security-observer.contract.d.ts +15 -0
- package/dist/runtime/server/contracts/security/net-event-security-observer.contract.js +2 -0
- package/dist/runtime/server/contracts/security/principal-provider.contract.d.ts +43 -0
- package/dist/runtime/server/contracts/security/principal-provider.contract.js +15 -0
- package/dist/runtime/server/contracts/security/security-handler.contract.d.ts +5 -0
- package/dist/runtime/server/contracts/security/security-handler.contract.js +2 -0
- package/dist/runtime/server/controllers/channel.controller.d.ts +115 -0
- package/dist/runtime/server/controllers/channel.controller.js +373 -0
- package/dist/runtime/server/controllers/chat.controller.d.ts +11 -0
- package/dist/runtime/server/controllers/chat.controller.js +67 -0
- package/dist/runtime/server/controllers/command-export.controller.d.ts +83 -0
- package/dist/runtime/server/controllers/command-export.controller.js +331 -0
- package/dist/runtime/server/controllers/player-export.controller.d.ts +30 -0
- package/dist/runtime/server/controllers/player-export.controller.js +172 -0
- package/dist/runtime/server/controllers/principal-export.controller.d.ts +79 -0
- package/dist/runtime/server/controllers/principal-export.controller.js +292 -0
- package/dist/runtime/server/controllers/ready.controller.d.ts +4 -0
- package/dist/runtime/server/controllers/ready.controller.js +27 -0
- package/dist/runtime/server/controllers/remote-command-execution.controller.d.ts +52 -0
- package/dist/runtime/server/controllers/remote-command-execution.controller.js +172 -0
- package/dist/runtime/server/controllers/session.controller.d.ts +11 -0
- package/dist/runtime/server/controllers/session.controller.js +83 -0
- package/dist/runtime/server/controllers/vehicle.controller.d.ts +20 -0
- package/dist/runtime/server/controllers/vehicle.controller.js +68 -0
- package/dist/runtime/server/core.d.ts +7 -0
- package/dist/runtime/server/core.js +37 -0
- package/dist/runtime/server/decorators/binaryCall.d.ts +15 -0
- package/dist/runtime/server/decorators/binaryCall.js +23 -0
- package/dist/runtime/server/decorators/binaryEvent.d.ts +21 -0
- package/dist/runtime/server/decorators/binaryEvent.js +22 -0
- package/dist/runtime/server/decorators/binaryService.d.ts +27 -0
- package/dist/runtime/server/decorators/binaryService.js +71 -0
- package/dist/runtime/server/decorators/bind.d.ts +21 -0
- package/dist/runtime/server/decorators/bind.js +28 -0
- package/dist/runtime/server/decorators/command.d.ts +87 -0
- package/dist/runtime/server/decorators/command.js +36 -0
- package/dist/runtime/server/decorators/controller.d.ts +26 -0
- package/dist/runtime/server/decorators/controller.js +56 -0
- package/dist/runtime/server/decorators/export.d.ts +24 -0
- package/dist/runtime/server/decorators/export.js +29 -0
- package/dist/runtime/server/decorators/guard.d.ts +51 -0
- package/dist/runtime/server/decorators/guard.js +80 -0
- package/dist/runtime/server/decorators/index.d.ts +18 -0
- package/dist/runtime/server/decorators/index.js +18 -0
- package/dist/runtime/server/decorators/onFrameworkEvent.d.ts +24 -0
- package/dist/runtime/server/decorators/onFrameworkEvent.js +28 -0
- package/dist/runtime/server/decorators/onLibraryEvent.d.ts +17 -0
- package/dist/runtime/server/decorators/onLibraryEvent.js +22 -0
- package/dist/runtime/server/decorators/onNet.d.ts +65 -0
- package/dist/runtime/server/decorators/onNet.js +12 -0
- package/dist/runtime/server/decorators/onRPC.d.ts +78 -0
- package/dist/runtime/server/decorators/onRPC.js +59 -0
- package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +25 -0
- package/dist/runtime/server/decorators/onRuntimeEvent.js +30 -0
- package/dist/runtime/server/decorators/onTick.d.ts +21 -0
- package/dist/runtime/server/decorators/onTick.js +26 -0
- package/dist/runtime/server/decorators/public.d.ts +26 -0
- package/dist/runtime/server/decorators/public.js +32 -0
- package/dist/runtime/server/decorators/requiresState.d.ts +63 -0
- package/dist/runtime/server/decorators/requiresState.js +70 -0
- package/dist/runtime/server/decorators/throttle.d.ts +56 -0
- package/dist/runtime/server/decorators/throttle.js +73 -0
- package/dist/runtime/server/decorators/utils.d.ts +54 -0
- package/dist/runtime/server/decorators/utils.js +54 -0
- package/dist/runtime/server/default/default-command-error-observer.d.ts +14 -0
- package/dist/runtime/server/default/default-command-error-observer.js +40 -0
- package/dist/runtime/server/default/default-net-event-security-observer.d.ts +15 -0
- package/dist/runtime/server/default/default-net-event-security-observer.js +25 -0
- package/dist/runtime/server/default/default-principal.provider.d.ts +13 -0
- package/dist/runtime/server/default/default-principal.provider.js +35 -0
- package/dist/runtime/server/default/default-security.handler.d.ts +19 -0
- package/dist/runtime/server/default/default-security.handler.js +36 -0
- package/dist/runtime/server/devmode/contracts/IDevModeBridge.d.ts +36 -0
- package/dist/runtime/server/devmode/contracts/IDevModeBridge.js +8 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInspector.d.ts +52 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInspector.js +8 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.d.ts +41 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.js +7 -0
- package/dist/runtime/server/devmode/contracts/index.d.ts +3 -0
- package/dist/runtime/server/devmode/contracts/index.js +3 -0
- package/dist/runtime/server/devmode/dev-mode.service.d.ts +109 -0
- package/dist/runtime/server/devmode/dev-mode.service.js +290 -0
- package/dist/runtime/server/devmode/event-interceptor.service.d.ts +80 -0
- package/dist/runtime/server/devmode/event-interceptor.service.js +233 -0
- package/dist/runtime/server/devmode/index.d.ts +6 -0
- package/dist/runtime/server/devmode/index.js +7 -0
- package/dist/runtime/server/devmode/player-simulator.service.d.ts +66 -0
- package/dist/runtime/server/devmode/player-simulator.service.js +199 -0
- package/dist/runtime/server/devmode/state-inspector.service.d.ts +57 -0
- package/dist/runtime/server/devmode/state-inspector.service.js +175 -0
- package/dist/runtime/server/devmode/types.d.ts +197 -0
- package/dist/runtime/server/devmode/types.js +22 -0
- package/dist/runtime/server/entities/index.d.ts +3 -0
- package/dist/runtime/server/entities/index.js +3 -0
- package/dist/runtime/server/entities/npc.d.ts +255 -0
- package/dist/runtime/server/entities/npc.js +307 -0
- package/dist/runtime/server/entities/player.d.ts +239 -0
- package/dist/runtime/server/entities/player.js +340 -0
- package/dist/runtime/server/entities/vehicle.d.ts +113 -0
- package/dist/runtime/server/entities/vehicle.js +245 -0
- package/dist/runtime/server/error-handler.d.ts +2 -0
- package/dist/runtime/server/error-handler.js +39 -0
- package/dist/runtime/server/helpers/command-validation.helper.d.ts +3 -0
- package/dist/runtime/server/helpers/command-validation.helper.js +73 -0
- package/dist/runtime/server/helpers/function-helper.d.ts +6 -0
- package/dist/runtime/server/helpers/function-helper.js +28 -0
- package/dist/runtime/server/helpers/normalize-app-error.d.ts +9 -0
- package/dist/runtime/server/helpers/normalize-app-error.js +17 -0
- package/dist/runtime/server/helpers/process-tuple-schema.d.ts +20 -0
- package/dist/runtime/server/helpers/process-tuple-schema.js +56 -0
- package/dist/runtime/server/helpers/resolve-method.d.ts +5 -0
- package/dist/runtime/server/helpers/resolve-method.js +25 -0
- package/dist/runtime/server/implementations/local/channel.local.d.ts +32 -0
- package/dist/runtime/server/implementations/local/channel.local.js +185 -0
- package/dist/runtime/server/implementations/local/command.local.d.ts +57 -0
- package/dist/runtime/server/implementations/local/command.local.js +110 -0
- package/dist/runtime/server/implementations/local/player.local.d.ts +110 -0
- package/dist/runtime/server/implementations/local/player.local.js +204 -0
- package/dist/runtime/server/implementations/local/principal.local.d.ts +28 -0
- package/dist/runtime/server/implementations/local/principal.local.js +120 -0
- package/dist/runtime/server/implementations/remote/channel.remote.d.ts +47 -0
- package/dist/runtime/server/implementations/remote/channel.remote.js +165 -0
- package/dist/runtime/server/implementations/remote/command.remote.d.ts +64 -0
- package/dist/runtime/server/implementations/remote/command.remote.js +154 -0
- package/dist/runtime/server/implementations/remote/player.remote.d.ts +65 -0
- package/dist/runtime/server/implementations/remote/player.remote.js +204 -0
- package/dist/runtime/server/implementations/remote/principal.remote.d.ts +33 -0
- package/dist/runtime/server/implementations/remote/principal.remote.js +97 -0
- package/dist/runtime/server/index.d.ts +9 -0
- package/dist/runtime/server/index.js +4 -0
- package/dist/runtime/server/library/create-server-library.d.ts +13 -0
- package/dist/runtime/server/library/create-server-library.js +48 -0
- package/dist/runtime/server/library/index.d.ts +4 -0
- package/dist/runtime/server/library/index.js +2 -0
- package/dist/runtime/server/library/plugin/index.d.ts +4 -0
- package/dist/runtime/server/library/plugin/index.js +4 -0
- package/dist/runtime/server/library/plugin/plugin-context.d.ts +10 -0
- package/dist/runtime/server/library/plugin/plugin-context.js +0 -0
- package/dist/runtime/server/library/plugin/plugin-registry.d.ts +7 -0
- package/dist/runtime/server/library/plugin/plugin-registry.js +25 -0
- package/dist/runtime/server/library/plugin/plugin.interface.d.ts +19 -0
- package/dist/runtime/server/library/plugin/plugin.interface.js +0 -0
- package/dist/runtime/server/library/plugin/server-plugin-api.d.ts +5 -0
- package/dist/runtime/server/library/plugin/server-plugin-api.js +0 -0
- package/dist/runtime/server/ports/authorization.api-port.d.ts +149 -0
- package/dist/runtime/server/ports/authorization.api-port.js +28 -0
- package/dist/runtime/server/ports/channel.api-port.d.ts +218 -0
- package/dist/runtime/server/ports/channel.api-port.js +2 -0
- package/dist/runtime/server/ports/internal/command-execution.port.d.ts +48 -0
- package/dist/runtime/server/ports/internal/command-execution.port.js +11 -0
- package/dist/runtime/server/ports/internal/player-session-lifecycle.port.d.ts +37 -0
- package/dist/runtime/server/ports/internal/player-session-lifecycle.port.js +12 -0
- package/dist/runtime/server/ports/players.api-port.d.ts +108 -0
- package/dist/runtime/server/ports/players.api-port.js +19 -0
- package/dist/runtime/server/runtime.d.ts +192 -0
- package/dist/runtime/server/runtime.js +211 -0
- package/dist/runtime/server/server.runtime.d.ts +7 -0
- package/dist/runtime/server/server.runtime.js +34 -0
- package/dist/runtime/server/services/appearance.service.d.ts +99 -0
- package/dist/runtime/server/services/appearance.service.js +307 -0
- package/dist/runtime/server/services/index.d.ts +6 -0
- package/dist/runtime/server/services/index.js +6 -0
- package/dist/runtime/server/services/parallel/native-worker.entry.d.ts +1 -0
- package/dist/runtime/server/services/parallel/native-worker.entry.js +10 -0
- package/dist/runtime/server/services/parallel/worker-pool.d.ts +79 -0
- package/dist/runtime/server/services/parallel/worker-pool.js +428 -0
- package/dist/runtime/server/services/parallel/worker.d.ts +22 -0
- package/dist/runtime/server/services/parallel/worker.js +48 -0
- package/dist/runtime/server/services/persistence.service.d.ts +59 -0
- package/dist/runtime/server/services/persistence.service.js +161 -0
- package/dist/runtime/server/services/rate-limiter.service.d.ts +23 -0
- package/dist/runtime/server/services/rate-limiter.service.js +52 -0
- package/dist/runtime/server/services/services.register.d.ts +11 -0
- package/dist/runtime/server/services/services.register.js +108 -0
- package/dist/runtime/server/services/session-recovery.local.d.ts +39 -0
- package/dist/runtime/server/services/session-recovery.local.js +108 -0
- package/dist/runtime/server/setup.d.ts +9 -0
- package/dist/runtime/server/setup.js +25 -0
- package/dist/runtime/server/system/managers/binary-process.manager.d.ts +19 -0
- package/dist/runtime/server/system/managers/binary-process.manager.js +312 -0
- package/dist/runtime/server/system/metadata-server.keys.d.ts +18 -0
- package/dist/runtime/server/system/metadata-server.keys.js +18 -0
- package/dist/runtime/server/system/processors/command.processor.d.ts +16 -0
- package/dist/runtime/server/system/processors/command.processor.js +62 -0
- package/dist/runtime/server/system/processors/export.processor.d.ts +10 -0
- package/dist/runtime/server/system/processors/export.processor.js +38 -0
- package/dist/runtime/server/system/processors/internalEvent.processor.d.ts +7 -0
- package/dist/runtime/server/system/processors/internalEvent.processor.js +36 -0
- package/dist/runtime/server/system/processors/libraryEvent.processor.d.ts +6 -0
- package/dist/runtime/server/system/processors/libraryEvent.processor.js +38 -0
- package/dist/runtime/server/system/processors/netEvent.processor.d.ts +23 -0
- package/dist/runtime/server/system/processors/netEvent.processor.js +243 -0
- package/dist/runtime/server/system/processors/onRpc.processor.d.ts +12 -0
- package/dist/runtime/server/system/processors/onRpc.processor.js +142 -0
- package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +10 -0
- package/dist/runtime/server/system/processors/runtimeEvent.processor.js +48 -0
- package/dist/runtime/server/system/processors/tick.processor.d.ts +8 -0
- package/dist/runtime/server/system/processors/tick.processor.js +44 -0
- package/dist/runtime/server/system/processors.register.d.ts +2 -0
- package/dist/runtime/server/system/processors.register.js +43 -0
- package/dist/runtime/server/system/schema-generator.d.ts +2 -0
- package/dist/runtime/server/system/schema-generator.js +38 -0
- package/dist/runtime/server/types/channel.types.d.ts +44 -0
- package/dist/runtime/server/types/channel.types.js +10 -0
- package/dist/runtime/server/types/core-exports.types.d.ts +286 -0
- package/dist/runtime/server/types/core-exports.types.js +0 -0
- package/dist/runtime/server/types/framework-events.types.d.ts +22 -0
- package/dist/runtime/server/types/framework-events.types.js +0 -0
- package/dist/runtime/server/types/index.d.ts +9 -0
- package/dist/runtime/server/types/index.js +9 -0
- package/dist/runtime/server/types/linked-id.d.ts +6 -0
- package/dist/runtime/server/types/linked-id.js +0 -0
- package/dist/runtime/server/types/npc.types.d.ts +36 -0
- package/dist/runtime/server/types/npc.types.js +0 -0
- package/dist/runtime/server/types/parallel.types.d.ts +191 -0
- package/dist/runtime/server/types/parallel.types.js +5 -0
- package/dist/runtime/server/types/player-session.types.d.ts +11 -0
- package/dist/runtime/server/types/player-session.types.js +0 -0
- package/dist/runtime/server/types/principal.type.d.ts +32 -0
- package/dist/runtime/server/types/principal.type.js +0 -0
- package/dist/runtime/server/types/vehicle.types.d.ts +152 -0
- package/dist/runtime/server/types/vehicle.types.js +0 -0
- package/package.json +43 -46
- package/dist/client/client-bootstrap.d.ts +0 -1
- package/dist/client/client-bootstrap.js +0 -50
- package/dist/client/client-container.js +0 -6
- package/dist/client/client-core.d.ts +0 -1
- package/dist/client/client-core.js +0 -7
- package/dist/client/controllers/spawner.controller.d.ts +0 -12
- package/dist/client/controllers/spawner.controller.js +0 -51
- package/dist/client/decorators/controller.d.ts +0 -3
- package/dist/client/decorators/controller.js +0 -14
- package/dist/client/decorators/export.d.ts +0 -7
- package/dist/client/decorators/export.js +0 -15
- package/dist/client/decorators/gameEvent.d.ts +0 -47
- package/dist/client/decorators/gameEvent.js +0 -54
- package/dist/client/decorators/index.d.ts +0 -10
- package/dist/client/decorators/index.js +0 -26
- package/dist/client/decorators/interval.d.ts +0 -7
- package/dist/client/decorators/interval.js +0 -15
- package/dist/client/decorators/key.d.ts +0 -2
- package/dist/client/decorators/key.js +0 -10
- package/dist/client/decorators/localEvent.d.ts +0 -7
- package/dist/client/decorators/localEvent.js +0 -15
- package/dist/client/decorators/nui.d.ts +0 -1
- package/dist/client/decorators/nui.js +0 -9
- package/dist/client/decorators/onNet.d.ts +0 -1
- package/dist/client/decorators/onNet.js +0 -9
- package/dist/client/decorators/resourceLifecycle.d.ts +0 -11
- package/dist/client/decorators/resourceLifecycle.js +0 -24
- package/dist/client/decorators/tick.d.ts +0 -1
- package/dist/client/decorators/tick.js +0 -9
- package/dist/client/index.d.ts +0 -7
- package/dist/client/index.js +0 -23
- package/dist/client/interfaces/appearance.interface.d.ts +0 -19
- package/dist/client/interfaces/appearance.interface.js +0 -2
- package/dist/client/player/player.d.ts +0 -262
- package/dist/client/player/player.js +0 -480
- package/dist/client/player/player.loader.js +0 -22
- package/dist/client/services/appearance.service.d.ts +0 -6
- package/dist/client/services/appearance.service.js +0 -89
- package/dist/client/services/blip.service.d.ts +0 -112
- package/dist/client/services/blip.service.js +0 -215
- package/dist/client/services/index.d.ts +0 -9
- package/dist/client/services/index.js +0 -25
- package/dist/client/services/marker.service.d.ts +0 -94
- package/dist/client/services/marker.service.js +0 -153
- package/dist/client/services/notification.service.js +0 -111
- package/dist/client/services/ped.service.d.ts +0 -182
- package/dist/client/services/ped.service.js +0 -302
- package/dist/client/services/progress.service.js +0 -210
- package/dist/client/services/spawn.service.d.ts +0 -73
- package/dist/client/services/spawn.service.js +0 -261
- package/dist/client/services/streaming.service.js +0 -341
- package/dist/client/services/textui.service.d.ts +0 -82
- package/dist/client/services/textui.service.js +0 -156
- package/dist/client/services/vehicle.service.d.ts +0 -168
- package/dist/client/services/vehicle.service.js +0 -296
- package/dist/client/system/metadata-client.keys.d.ts +0 -13
- package/dist/client/system/metadata-client.keys.js +0 -16
- package/dist/client/system/processors/export.processor.d.ts +0 -7
- package/dist/client/system/processors/export.processor.js +0 -39
- package/dist/client/system/processors/gameEvent.processor.d.ts +0 -10
- package/dist/client/system/processors/gameEvent.processor.js +0 -58
- package/dist/client/system/processors/interval.processor.d.ts +0 -7
- package/dist/client/system/processors/interval.processor.js +0 -43
- package/dist/client/system/processors/key.processor.d.ts +0 -8
- package/dist/client/system/processors/key.processor.js +0 -27
- package/dist/client/system/processors/localEvent.processor.d.ts +0 -7
- package/dist/client/system/processors/localEvent.processor.js +0 -38
- package/dist/client/system/processors/netEvent.processor.d.ts +0 -7
- package/dist/client/system/processors/netEvent.processor.js +0 -38
- package/dist/client/system/processors/nui.processor.d.ts +0 -7
- package/dist/client/system/processors/nui.processor.js +0 -40
- package/dist/client/system/processors/resourceLifecycle.processor.d.ts +0 -9
- package/dist/client/system/processors/resourceLifecycle.processor.js +0 -69
- package/dist/client/system/processors/tick.processor.d.ts +0 -5
- package/dist/client/system/processors/tick.processor.js +0 -37
- package/dist/client/system/processors.register.js +0 -27
- package/dist/client/types/game-events.d.ts +0 -126
- package/dist/client/types/game-events.js +0 -83
- package/dist/client/types/index.js +0 -17
- package/dist/client/ui-bridge.js +0 -201
- package/dist/server/bootstrap.d.ts +0 -16
- package/dist/server/bootstrap.js +0 -57
- package/dist/server/bus/core-event-bus.d.ts +0 -6
- package/dist/server/bus/core-event-bus.js +0 -31
- package/dist/server/configs/api.config.d.ts +0 -71
- package/dist/server/configs/api.config.js +0 -81
- package/dist/server/configs/config.base.d.ts +0 -63
- package/dist/server/configs/config.base.js +0 -64
- package/dist/server/configs/index.d.ts +0 -2
- package/dist/server/configs/index.js +0 -18
- package/dist/server/container.d.ts +0 -2
- package/dist/server/container.js +0 -6
- package/dist/server/controllers/chat.controller.d.ts +0 -10
- package/dist/server/controllers/chat.controller.js +0 -50
- package/dist/server/controllers/command.controller.d.ts +0 -7
- package/dist/server/controllers/command.controller.js +0 -47
- package/dist/server/controllers/session.controller.d.ts +0 -9
- package/dist/server/controllers/session.controller.js +0 -70
- package/dist/server/core.d.ts +0 -1
- package/dist/server/core.js +0 -7
- package/dist/server/database/adapters/oxmysql.adapter.d.ts +0 -89
- package/dist/server/database/adapters/oxmysql.adapter.js +0 -149
- package/dist/server/database/database.contract.d.ts +0 -128
- package/dist/server/database/database.contract.js +0 -29
- package/dist/server/database/database.service.d.ts +0 -216
- package/dist/server/database/database.service.js +0 -301
- package/dist/server/database/index.d.ts +0 -53
- package/dist/server/database/index.js +0 -70
- package/dist/server/database/types.d.ts +0 -67
- package/dist/server/database/types.js +0 -7
- package/dist/server/database.d.ts +0 -7
- package/dist/server/database.js +0 -23
- package/dist/server/decorators/bind.d.ts +0 -2
- package/dist/server/decorators/bind.js +0 -15
- package/dist/server/decorators/command.d.ts +0 -49
- package/dist/server/decorators/command.js +0 -23
- package/dist/server/decorators/controller.d.ts +0 -25
- package/dist/server/decorators/controller.js +0 -36
- package/dist/server/decorators/export.d.ts +0 -39
- package/dist/server/decorators/export.js +0 -47
- package/dist/server/decorators/guard.d.ts +0 -56
- package/dist/server/decorators/guard.js +0 -82
- package/dist/server/decorators/index.d.ts +0 -10
- package/dist/server/decorators/index.js +0 -29
- package/dist/server/decorators/onFiveMEvent.d.ts +0 -6
- package/dist/server/decorators/onFiveMEvent.js +0 -14
- package/dist/server/decorators/onFrameworkEvent.d.ts +0 -22
- package/dist/server/decorators/onFrameworkEvent.js +0 -29
- package/dist/server/decorators/onNet.d.ts +0 -58
- package/dist/server/decorators/onNet.js +0 -57
- package/dist/server/decorators/onTick.d.ts +0 -32
- package/dist/server/decorators/onTick.js +0 -40
- package/dist/server/decorators/public.d.ts +0 -27
- package/dist/server/decorators/public.js +0 -36
- package/dist/server/decorators/requiresState.d.ts +0 -56
- package/dist/server/decorators/requiresState.js +0 -63
- package/dist/server/decorators/throttle.d.ts +0 -48
- package/dist/server/decorators/throttle.js +0 -63
- package/dist/server/decorators/utils.d.ts +0 -57
- package/dist/server/decorators/utils.js +0 -63
- package/dist/server/entities/index.d.ts +0 -1
- package/dist/server/entities/index.js +0 -17
- package/dist/server/entities/player.d.ts +0 -157
- package/dist/server/entities/player.js +0 -217
- package/dist/server/error-handler.d.ts +0 -2
- package/dist/server/error-handler.js +0 -43
- package/dist/server/helpers/resolve-method.d.ts +0 -5
- package/dist/server/helpers/resolve-method.js +0 -18
- package/dist/server/index.d.ts +0 -10
- package/dist/server/index.js +0 -31
- package/dist/server/loaders/exports.loader.js +0 -23
- package/dist/server/loaders/playerSession.loader.d.ts +0 -1
- package/dist/server/loaders/playerSession.loader.js +0 -51
- package/dist/server/services/access-control.service.d.ts +0 -56
- package/dist/server/services/access-control.service.js +0 -99
- package/dist/server/services/chat.service.d.ts +0 -7
- package/dist/server/services/chat.service.js +0 -31
- package/dist/server/services/command.service.d.ts +0 -15
- package/dist/server/services/command.service.js +0 -77
- package/dist/server/services/config.service.d.ts +0 -75
- package/dist/server/services/config.service.js +0 -116
- package/dist/server/services/default/default-security.handler.d.ts +0 -6
- package/dist/server/services/default/default-security.handler.js +0 -26
- package/dist/server/services/http/http.service.d.ts +0 -50
- package/dist/server/services/http/http.service.js +0 -126
- package/dist/server/services/index.d.ts +0 -10
- package/dist/server/services/index.js +0 -26
- package/dist/server/services/parallel/index.d.ts +0 -49
- package/dist/server/services/parallel/index.js +0 -67
- package/dist/server/services/parallel/parallel-compute.service.d.ts +0 -132
- package/dist/server/services/parallel/parallel-compute.service.js +0 -449
- package/dist/server/services/parallel/types.d.ts +0 -188
- package/dist/server/services/parallel/types.js +0 -7
- package/dist/server/services/parallel/worker-pool.d.ts +0 -83
- package/dist/server/services/parallel/worker-pool.js +0 -350
- package/dist/server/services/parallel/worker.d.ts +0 -19
- package/dist/server/services/parallel/worker.js +0 -49
- package/dist/server/services/persistence.service.d.ts +0 -59
- package/dist/server/services/persistence.service.js +0 -166
- package/dist/server/services/player.service.d.ts +0 -96
- package/dist/server/services/player.service.js +0 -132
- package/dist/server/services/rate-limiter.service.d.ts +0 -5
- package/dist/server/services/rate-limiter.service.js +0 -39
- package/dist/server/services/registers.d.ts +0 -1
- package/dist/server/services/registers.js +0 -18
- package/dist/server/setup.d.ts +0 -9
- package/dist/server/setup.js +0 -28
- package/dist/server/system/metadata-server.keys.d.ts +0 -10
- package/dist/server/system/metadata-server.keys.js +0 -13
- package/dist/server/system/processors/command.processor.d.ts +0 -9
- package/dist/server/system/processors/command.processor.js +0 -30
- package/dist/server/system/processors/coreEvent.processor.d.ts +0 -7
- package/dist/server/system/processors/coreEvent.processor.js +0 -41
- package/dist/server/system/processors/export.processor.d.ts +0 -7
- package/dist/server/system/processors/export.processor.js +0 -30
- package/dist/server/system/processors/fivemEvent.processor.d.ts +0 -7
- package/dist/server/system/processors/fivemEvent.processor.js +0 -40
- package/dist/server/system/processors/netEvent.processor.d.ts +0 -11
- package/dist/server/system/processors/netEvent.processor.js +0 -103
- package/dist/server/system/processors/tick.processor.d.ts +0 -5
- package/dist/server/system/processors/tick.processor.js +0 -36
- package/dist/server/system/processors.register.d.ts +0 -1
- package/dist/server/system/processors.register.js +0 -23
- package/dist/server/system/schema-generator.d.ts +0 -2
- package/dist/server/system/schema-generator.js +0 -34
- package/dist/server/templates/admin/admin.controller-template.d.ts +0 -12
- package/dist/server/templates/admin/admin.controller-template.js +0 -2
- package/dist/server/templates/auth/auth-provider.contract.d.ts +0 -58
- package/dist/server/templates/auth/auth-provider.contract.js +0 -23
- package/dist/server/templates/index.d.ts +0 -8
- package/dist/server/templates/index.js +0 -21
- package/dist/server/templates/persistence/index.d.ts +0 -30
- package/dist/server/templates/persistence/index.js +0 -34
- package/dist/server/templates/persistence/player-persistence.contract.d.ts +0 -86
- package/dist/server/templates/persistence/player-persistence.contract.js +0 -52
- package/dist/server/templates/repository/index.d.ts +0 -57
- package/dist/server/templates/repository/index.js +0 -61
- package/dist/server/templates/repository/repository.contract.d.ts +0 -224
- package/dist/server/templates/repository/repository.contract.js +0 -342
- package/dist/server/templates/repository/repository.types.d.ts +0 -51
- package/dist/server/templates/repository/repository.types.js +0 -7
- package/dist/server/templates/security/permission.types.d.ts +0 -32
- package/dist/server/templates/security/permission.types.js +0 -2
- package/dist/server/templates/security/principal-provider.contract.d.ts +0 -43
- package/dist/server/templates/security/principal-provider.contract.js +0 -19
- package/dist/server/templates/security/security-handler.contract.d.ts +0 -5
- package/dist/server/templates/security/security-handler.contract.js +0 -6
- package/dist/server/types/core-events.d.ts +0 -22
- package/dist/server/types/core-events.js +0 -2
- package/dist/server/types/security.types.js +0 -2
- package/dist/shared/index.d.ts +0 -1
- package/dist/shared/index.js +0 -17
- package/dist/shared/logger/core-logger.d.ts +0 -35
- package/dist/shared/logger/core-logger.js +0 -52
- package/dist/shared/logger/index.d.ts +0 -11
- package/dist/shared/logger/index.js +0 -26
- package/dist/shared/logger/logger.config.d.ts +0 -47
- package/dist/shared/logger/logger.config.js +0 -33
- package/dist/shared/logger/logger.service.d.ts +0 -161
- package/dist/shared/logger/logger.service.js +0 -279
- package/dist/shared/logger/logger.types.js +0 -74
- package/dist/shared/logger/transports/buffered.transport.d.ts +0 -88
- package/dist/shared/logger/transports/buffered.transport.js +0 -174
- package/dist/shared/logger/transports/console.transport.d.ts +0 -37
- package/dist/shared/logger/transports/console.transport.js +0 -134
- package/dist/shared/logger/transports/index.d.ts +0 -3
- package/dist/shared/logger/transports/index.js +0 -19
- package/dist/shared/logger/transports/transport.interface.d.ts +0 -40
- package/dist/shared/logger/transports/transport.interface.js +0 -2
- package/dist/system/class-constructor.js +0 -2
- package/dist/system/decorator-processor.js +0 -2
- package/dist/system/metadata.scanner.d.ts +0 -7
- package/dist/system/metadata.scanner.js +0 -45
- package/dist/utils/errors.d.ts +0 -14
- package/dist/utils/errors.js +0 -25
- package/dist/utils/index.d.ts +0 -4
- package/dist/utils/index.js +0 -20
- package/dist/utils/result.d.ts +0 -12
- package/dist/utils/result.js +0 -10
- package/dist/utils/rgb.d.ts +0 -5
- package/dist/utils/rgb.js +0 -2
- package/dist/utils/vector3.d.ts +0 -13
- package/dist/utils/vector3.js +0 -27
- /package/dist/{server/loaders/exports.loader.d.ts → adapters/contracts/transport/context.js} +0 -0
- /package/dist/{system → kernel/di}/class-constructor.d.ts +0 -0
- /package/dist/{system → kernel/di}/decorator-processor.d.ts +0 -0
- /package/dist/{server/types → kernel/error}/security.types.d.ts +0 -0
- /package/dist/{shared → kernel}/logger/logger.types.d.ts +0 -0
- /package/dist/{client → runtime/client}/client-container.d.ts +0 -0
- /package/dist/{client → runtime/client}/player/player.loader.d.ts +0 -0
- /package/dist/{client → runtime/client}/services/notification.service.d.ts +0 -0
- /package/dist/{client → runtime/client}/services/progress.service.d.ts +0 -0
- /package/dist/{client → runtime/client}/services/streaming.service.d.ts +0 -0
- /package/dist/{client → runtime/client}/system/processors.register.d.ts +0 -0
- /package/dist/{client → runtime/client}/types/index.d.ts +0 -0
- /package/dist/{client → runtime/client}/ui-bridge.d.ts +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { PrincipalProviderContract } from '../../contracts';
|
|
2
|
+
import { Principal } from '../../types/principal.type';
|
|
3
|
+
import { GuardOptions } from '../../decorators/guard';
|
|
4
|
+
import { Player } from '../../entities';
|
|
5
|
+
import { Authorization } from '../../ports/authorization.api-port';
|
|
6
|
+
/**
|
|
7
|
+
* Local principal service for CORE/STANDALONE mode.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* This service wraps the user-provided PrincipalProviderContract and provides
|
|
11
|
+
* convenience methods for permission checking. All operations are performed locally.
|
|
12
|
+
*/
|
|
13
|
+
export declare class LocalPrincipalService extends Authorization {
|
|
14
|
+
private readonly provider;
|
|
15
|
+
constructor(provider: PrincipalProviderContract);
|
|
16
|
+
getPrincipal(player: Player): Promise<Principal | null>;
|
|
17
|
+
getPrincipalByAccountId(accountId: string): Promise<Principal | null>;
|
|
18
|
+
refreshPrincipal(player: Player): Promise<void>;
|
|
19
|
+
hasPermission(player: Player, permission: string): Promise<boolean>;
|
|
20
|
+
hasRank(player: Player, requiredRank: number): Promise<boolean>;
|
|
21
|
+
hasAnyPermission(player: Player, permissions: string[]): Promise<boolean>;
|
|
22
|
+
hasAllPermissions(player: Player, permissions: string[]): Promise<boolean>;
|
|
23
|
+
getPermissions(player: Player): Promise<string[]>;
|
|
24
|
+
getRank(player: Player): Promise<number | null>;
|
|
25
|
+
getPrincipalName(player: Player): Promise<string | null>;
|
|
26
|
+
getPrincipalMeta(player: Player, key: string): Promise<unknown>;
|
|
27
|
+
enforce(player: Player, requirements: GuardOptions): Promise<void>;
|
|
28
|
+
}
|
|
@@ -0,0 +1,120 @@
|
|
|
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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { injectable } from 'tsyringe';
|
|
11
|
+
import { AppError } from '../../../../kernel/error/app.error';
|
|
12
|
+
import { PrincipalProviderContract } from '../../contracts';
|
|
13
|
+
import { Authorization } from '../../ports/authorization.api-port';
|
|
14
|
+
/**
|
|
15
|
+
* Local principal service for CORE/STANDALONE mode.
|
|
16
|
+
*
|
|
17
|
+
* @remarks
|
|
18
|
+
* This service wraps the user-provided PrincipalProviderContract and provides
|
|
19
|
+
* convenience methods for permission checking. All operations are performed locally.
|
|
20
|
+
*/
|
|
21
|
+
let LocalPrincipalService = class LocalPrincipalService extends Authorization {
|
|
22
|
+
provider;
|
|
23
|
+
constructor(provider) {
|
|
24
|
+
super();
|
|
25
|
+
this.provider = provider;
|
|
26
|
+
}
|
|
27
|
+
// ═══════════════════════════════════════════════════════════════
|
|
28
|
+
// Principal Queries
|
|
29
|
+
// ═══════════════════════════════════════════════════════════════
|
|
30
|
+
async getPrincipal(player) {
|
|
31
|
+
return await this.provider.getPrincipal(player);
|
|
32
|
+
}
|
|
33
|
+
async getPrincipalByAccountId(accountId) {
|
|
34
|
+
return await this.provider.getPrincipalByLinkedID(accountId);
|
|
35
|
+
}
|
|
36
|
+
async refreshPrincipal(player) {
|
|
37
|
+
await this.provider.refreshPrincipal(player);
|
|
38
|
+
}
|
|
39
|
+
// ═══════════════════════════════════════════════════════════════
|
|
40
|
+
// Quick Authorization Checks
|
|
41
|
+
// ═══════════════════════════════════════════════════════════════
|
|
42
|
+
async hasPermission(player, permission) {
|
|
43
|
+
const principal = await this.provider.getPrincipal(player);
|
|
44
|
+
if (!principal)
|
|
45
|
+
return false;
|
|
46
|
+
// Check for wildcard (super-admin) or specific permission
|
|
47
|
+
return principal.permissions.includes('*') || principal.permissions.includes(permission);
|
|
48
|
+
}
|
|
49
|
+
async hasRank(player, requiredRank) {
|
|
50
|
+
const principal = await this.provider.getPrincipal(player);
|
|
51
|
+
if (!principal || principal.rank === undefined)
|
|
52
|
+
return false;
|
|
53
|
+
return principal.rank >= requiredRank;
|
|
54
|
+
}
|
|
55
|
+
async hasAnyPermission(player, permissions) {
|
|
56
|
+
const principal = await this.provider.getPrincipal(player);
|
|
57
|
+
if (!principal)
|
|
58
|
+
return false;
|
|
59
|
+
// Wildcard grants all permissions
|
|
60
|
+
if (principal.permissions.includes('*'))
|
|
61
|
+
return true;
|
|
62
|
+
return permissions.some((perm) => principal.permissions.includes(perm));
|
|
63
|
+
}
|
|
64
|
+
async hasAllPermissions(player, permissions) {
|
|
65
|
+
const principal = await this.provider.getPrincipal(player);
|
|
66
|
+
if (!principal)
|
|
67
|
+
return false;
|
|
68
|
+
// Wildcard grants all permissions
|
|
69
|
+
if (principal.permissions.includes('*'))
|
|
70
|
+
return true;
|
|
71
|
+
return permissions.every((perm) => principal.permissions.includes(perm));
|
|
72
|
+
}
|
|
73
|
+
// ═══════════════════════════════════════════════════════════════
|
|
74
|
+
// Property Getters
|
|
75
|
+
// ═══════════════════════════════════════════════════════════════
|
|
76
|
+
async getPermissions(player) {
|
|
77
|
+
const principal = await this.provider.getPrincipal(player);
|
|
78
|
+
return principal?.permissions ?? [];
|
|
79
|
+
}
|
|
80
|
+
async getRank(player) {
|
|
81
|
+
const principal = await this.provider.getPrincipal(player);
|
|
82
|
+
return principal?.rank ?? null;
|
|
83
|
+
}
|
|
84
|
+
async getPrincipalName(player) {
|
|
85
|
+
const principal = await this.provider.getPrincipal(player);
|
|
86
|
+
return principal?.name ?? null;
|
|
87
|
+
}
|
|
88
|
+
async getPrincipalMeta(player, key) {
|
|
89
|
+
const principal = await this.provider.getPrincipal(player);
|
|
90
|
+
return principal?.meta?.[key] ?? null;
|
|
91
|
+
}
|
|
92
|
+
// ═══════════════════════════════════════════════════════════════
|
|
93
|
+
// Access Control Enforcement
|
|
94
|
+
// ═══════════════════════════════════════════════════════════════
|
|
95
|
+
async enforce(player, requirements) {
|
|
96
|
+
if (requirements.rank !== undefined) {
|
|
97
|
+
const principal = await this.provider.getPrincipal(player);
|
|
98
|
+
if (!principal) {
|
|
99
|
+
throw new AppError('AUTH:UNAUTHORIZED', 'No principal found', 'core');
|
|
100
|
+
}
|
|
101
|
+
if (principal.rank === undefined) {
|
|
102
|
+
throw new AppError('GAME:NO_RANK_IN_PRINCIPAL', "You're trying to compare a Principal rank, but there's no defined rank!", 'core');
|
|
103
|
+
}
|
|
104
|
+
if (principal.rank < requirements.rank) {
|
|
105
|
+
throw new AppError('AUTH:PERMISSION_DENIED', `Access Denied: Requires minimum rank level ${requirements.rank}`, 'core');
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
if (requirements.permission) {
|
|
109
|
+
const hasPerm = await this.hasPermission(player, requirements.permission);
|
|
110
|
+
if (!hasPerm) {
|
|
111
|
+
throw new AppError('AUTH:PERMISSION_DENIED', `Access Denied: Missing required permission '${requirements.permission}'`, 'core');
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
LocalPrincipalService = __decorate([
|
|
117
|
+
injectable(),
|
|
118
|
+
__metadata("design:paramtypes", [PrincipalProviderContract])
|
|
119
|
+
], LocalPrincipalService);
|
|
120
|
+
export { LocalPrincipalService };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { IExports } from '../../../../adapters/contracts/IExports';
|
|
2
|
+
import { RGB } from '../../../../kernel/utils/rgb';
|
|
3
|
+
import { Channel } from '../../concepts/channel';
|
|
4
|
+
import { Player } from '../../entities/player';
|
|
5
|
+
import { ChannelMetadata, ChannelType, IChannelValidator } from '../../types/channel.types';
|
|
6
|
+
import { Players } from '../../ports/players.api-port';
|
|
7
|
+
import { Channels } from '../../ports/channel.api-port';
|
|
8
|
+
/**
|
|
9
|
+
* Remote channel implementation for RESOURCE mode.
|
|
10
|
+
*
|
|
11
|
+
* @remarks
|
|
12
|
+
* In RESOURCE mode, this service delegates all channel operations to CORE via exports.
|
|
13
|
+
* Channels are centrally managed in CORE, allowing cross-resource communication.
|
|
14
|
+
*
|
|
15
|
+
* Flow:
|
|
16
|
+
* 1. Resource calls channel method → delegates to CORE export
|
|
17
|
+
* 2. CORE manages channel state centrally
|
|
18
|
+
* 3. All resources share the same channel registry
|
|
19
|
+
*/
|
|
20
|
+
export declare class RemoteChannelImplementation extends Channels {
|
|
21
|
+
private exportsService;
|
|
22
|
+
private readonly players;
|
|
23
|
+
private resourceName;
|
|
24
|
+
constructor(exportsService: IExports, players: Players);
|
|
25
|
+
/**
|
|
26
|
+
* Gets typed access to CORE resource exports.
|
|
27
|
+
*/
|
|
28
|
+
private get core();
|
|
29
|
+
create(id: string, metadata: ChannelMetadata, maxSubscribers?: number): Channel;
|
|
30
|
+
delete(id: string): boolean;
|
|
31
|
+
exists(id: string): boolean;
|
|
32
|
+
get(id: string): Channel | undefined;
|
|
33
|
+
subscribe(channelId: string, player: Player, metadata?: Record<string, unknown>): boolean;
|
|
34
|
+
unsubscribe(channelId: string, player: Player): boolean;
|
|
35
|
+
isSubscribed(channelId: string, player: Player): boolean;
|
|
36
|
+
getSubscribers(channelId: string): Player[];
|
|
37
|
+
broadcast(channelId: string, sender: Player, message: string, author?: string, color?: RGB): void;
|
|
38
|
+
broadcastSystem(channelId: string, message: string, author?: string, color?: RGB): void;
|
|
39
|
+
createProximityChannel(originPlayer: Player, radius: number, channelId?: string): Channel | undefined;
|
|
40
|
+
createPrivate(players: Player[], metadata: ChannelMetadata): Channel;
|
|
41
|
+
getChannelsByType(type: ChannelType): Channel[];
|
|
42
|
+
getChannelsByPlayer(player: Player): Channel[];
|
|
43
|
+
getAllChannels(): Channel[];
|
|
44
|
+
setValidator(_validator: IChannelValidator): void;
|
|
45
|
+
clear(): void;
|
|
46
|
+
clearNonPersistent(): void;
|
|
47
|
+
}
|
|
@@ -0,0 +1,165 @@
|
|
|
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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
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';
|
|
14
|
+
import { IExports } from '../../../../adapters/contracts/IExports';
|
|
15
|
+
import { loggers } from '../../../../kernel/logger';
|
|
16
|
+
import { Channel } from '../../concepts/channel';
|
|
17
|
+
import { getRuntimeContext } from '../../runtime';
|
|
18
|
+
import { ChannelType } from '../../types/channel.types';
|
|
19
|
+
import { Players } from '../../ports/players.api-port';
|
|
20
|
+
import { Channels } from '../../ports/channel.api-port';
|
|
21
|
+
/**
|
|
22
|
+
* Remote channel implementation for RESOURCE mode.
|
|
23
|
+
*
|
|
24
|
+
* @remarks
|
|
25
|
+
* In RESOURCE mode, this service delegates all channel operations to CORE via exports.
|
|
26
|
+
* Channels are centrally managed in CORE, allowing cross-resource communication.
|
|
27
|
+
*
|
|
28
|
+
* Flow:
|
|
29
|
+
* 1. Resource calls channel method → delegates to CORE export
|
|
30
|
+
* 2. CORE manages channel state centrally
|
|
31
|
+
* 3. All resources share the same channel registry
|
|
32
|
+
*/
|
|
33
|
+
let RemoteChannelImplementation = class RemoteChannelImplementation extends Channels {
|
|
34
|
+
exportsService;
|
|
35
|
+
players;
|
|
36
|
+
resourceName;
|
|
37
|
+
constructor(exportsService, players) {
|
|
38
|
+
super();
|
|
39
|
+
this.exportsService = exportsService;
|
|
40
|
+
this.players = players;
|
|
41
|
+
this.resourceName = GetCurrentResourceName();
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Gets typed access to CORE resource exports.
|
|
45
|
+
*/
|
|
46
|
+
get core() {
|
|
47
|
+
const { coreResourceName } = getRuntimeContext();
|
|
48
|
+
const coreExports = this.exportsService.getResource(coreResourceName);
|
|
49
|
+
if (!coreExports) {
|
|
50
|
+
throw new Error(`[OpenCore] CORE resource '${coreResourceName}' exports not found. ` +
|
|
51
|
+
`Ensure the CORE resource is started BEFORE RESOURCE mode resources. ` +
|
|
52
|
+
`Add 'ensure ${coreResourceName}' before this resource in server.cfg`);
|
|
53
|
+
}
|
|
54
|
+
return coreExports;
|
|
55
|
+
}
|
|
56
|
+
// ═══════════════════════════════════════════════════════════════
|
|
57
|
+
// Channel Creation & Management (delegated to CORE)
|
|
58
|
+
// ═══════════════════════════════════════════════════════════════
|
|
59
|
+
create(id, metadata, maxSubscribers) {
|
|
60
|
+
const success = this.core.createChannel(id, metadata, maxSubscribers, this.resourceName);
|
|
61
|
+
if (!success) {
|
|
62
|
+
throw new Error(`Failed to create channel '${id}' in CORE`);
|
|
63
|
+
}
|
|
64
|
+
loggers.api.debug(`Channel '${id}' created in CORE from resource '${this.resourceName}'`);
|
|
65
|
+
return new Channel(id, metadata, maxSubscribers);
|
|
66
|
+
}
|
|
67
|
+
delete(id) {
|
|
68
|
+
return this.core.deleteChannel(id);
|
|
69
|
+
}
|
|
70
|
+
exists(id) {
|
|
71
|
+
return this.core.channelExists(id);
|
|
72
|
+
}
|
|
73
|
+
get(id) {
|
|
74
|
+
if (this.core.channelExists(id)) {
|
|
75
|
+
return new Channel(id, { type: ChannelType.GLOBAL, persistent: true });
|
|
76
|
+
}
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
// ═══════════════════════════════════════════════════════════════
|
|
80
|
+
// Subscription Management (delegated to CORE)
|
|
81
|
+
// ═══════════════════════════════════════════════════════════════
|
|
82
|
+
subscribe(channelId, player, metadata) {
|
|
83
|
+
return this.core.subscribeToChannel(channelId, player.clientID, metadata);
|
|
84
|
+
}
|
|
85
|
+
unsubscribe(channelId, player) {
|
|
86
|
+
return this.core.unsubscribeFromChannel(channelId, player.clientID);
|
|
87
|
+
}
|
|
88
|
+
isSubscribed(channelId, player) {
|
|
89
|
+
return this.core.isSubscribedToChannel(channelId, player.clientID);
|
|
90
|
+
}
|
|
91
|
+
getSubscribers(channelId) {
|
|
92
|
+
const clientIDs = this.core.getChannelSubscribers(channelId);
|
|
93
|
+
return clientIDs.map((id) => this.players.getByClient(id)).filter((p) => p !== undefined);
|
|
94
|
+
}
|
|
95
|
+
// ═══════════════════════════════════════════════════════════════
|
|
96
|
+
// Broadcasting (delegated to CORE)
|
|
97
|
+
// ═══════════════════════════════════════════════════════════════
|
|
98
|
+
broadcast(channelId, sender, message, author, color) {
|
|
99
|
+
const success = this.core.broadcastToChannel(channelId, sender.clientID, message, author, color);
|
|
100
|
+
if (!success) {
|
|
101
|
+
loggers.api.warn(`Failed to broadcast to channel '${channelId}'`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
broadcastSystem(channelId, message, author, color) {
|
|
105
|
+
const success = this.core.broadcastSystemToChannel(channelId, message, author, color);
|
|
106
|
+
if (!success) {
|
|
107
|
+
loggers.api.warn(`Failed to broadcast system message to channel '${channelId}'`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
// ═══════════════════════════════════════════════════════════════
|
|
111
|
+
// Specialized Channel Creation (delegated to CORE)
|
|
112
|
+
// ═══════════════════════════════════════════════════════════════
|
|
113
|
+
createProximityChannel(originPlayer, radius, channelId) {
|
|
114
|
+
const id = this.core.createProximityChannel(originPlayer.clientID, radius, channelId);
|
|
115
|
+
if (!id)
|
|
116
|
+
return undefined;
|
|
117
|
+
return new Channel(id, {
|
|
118
|
+
type: ChannelType.PROXIMITY,
|
|
119
|
+
maxRange: radius,
|
|
120
|
+
persistent: false,
|
|
121
|
+
}, undefined);
|
|
122
|
+
}
|
|
123
|
+
createPrivate(players, metadata) {
|
|
124
|
+
const clientIDs = players.map((p) => p.clientID);
|
|
125
|
+
const id = this.core.createPrivateChannel(clientIDs, metadata);
|
|
126
|
+
if (!id) {
|
|
127
|
+
throw new Error('Failed to create private channel in CORE');
|
|
128
|
+
}
|
|
129
|
+
return new Channel(id, { ...metadata, persistent: false }, players.length);
|
|
130
|
+
}
|
|
131
|
+
// ═══════════════════════════════════════════════════════════════
|
|
132
|
+
// Query & Introspection (delegated to CORE)
|
|
133
|
+
// ═══════════════════════════════════════════════════════════════
|
|
134
|
+
getChannelsByType(type) {
|
|
135
|
+
const channelIds = this.core.getChannelsByType(type);
|
|
136
|
+
return channelIds.map((id) => new Channel(id, { type, persistent: true }));
|
|
137
|
+
}
|
|
138
|
+
getChannelsByPlayer(player) {
|
|
139
|
+
const channelIds = this.core.getPlayerChannels(player.clientID);
|
|
140
|
+
return channelIds.map((id) => new Channel(id, { type: ChannelType.GLOBAL, persistent: true }));
|
|
141
|
+
}
|
|
142
|
+
getAllChannels() {
|
|
143
|
+
const channelIds = this.core.getAllChannels();
|
|
144
|
+
return channelIds.map((id) => new Channel(id, { type: ChannelType.GLOBAL, persistent: true }));
|
|
145
|
+
}
|
|
146
|
+
// ═══════════════════════════════════════════════════════════════
|
|
147
|
+
// Utility Methods
|
|
148
|
+
// ═══════════════════════════════════════════════════════════════
|
|
149
|
+
setValidator(_validator) {
|
|
150
|
+
loggers.api.warn('Channel validators are not supported in RESOURCE mode. Validators must be set in CORE.');
|
|
151
|
+
}
|
|
152
|
+
clear() {
|
|
153
|
+
loggers.api.warn('clear() is not supported in RESOURCE mode. Channels are managed by CORE.');
|
|
154
|
+
}
|
|
155
|
+
clearNonPersistent() {
|
|
156
|
+
loggers.api.warn('clearNonPersistent() is not supported in RESOURCE mode. Channels are managed by CORE.');
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
RemoteChannelImplementation = __decorate([
|
|
160
|
+
injectable(),
|
|
161
|
+
__param(0, inject(IExports)),
|
|
162
|
+
__metadata("design:paramtypes", [IExports,
|
|
163
|
+
Players])
|
|
164
|
+
], RemoteChannelImplementation);
|
|
165
|
+
export { RemoteChannelImplementation };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { IExports } from '../../../../adapters/contracts/IExports';
|
|
2
|
+
import { CommandMetadata } from '../../decorators/command';
|
|
3
|
+
import { Player } from '../../entities';
|
|
4
|
+
import { CommandExecutionPort, type CommandInfo } from '../../ports/internal/command-execution.port';
|
|
5
|
+
/**
|
|
6
|
+
* Remote command service for RESOURCE mode.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* In RESOURCE mode, this service:
|
|
10
|
+
* - Stores command handlers and metadata locally in the resource
|
|
11
|
+
* - Registers command metadata with CORE via exports
|
|
12
|
+
* - Executes handlers when invoked by CORE via net event
|
|
13
|
+
* - Validates arguments using Zod schemas (same as CommandService)
|
|
14
|
+
*
|
|
15
|
+
* Flow:
|
|
16
|
+
* 1. Resource declares @Command → metadata registered with CORE
|
|
17
|
+
* 2. Player executes command → CORE validates security and emits event to resource
|
|
18
|
+
* 3. Resource receives event → validates schema → executes handler
|
|
19
|
+
*
|
|
20
|
+
* Security validation is split:
|
|
21
|
+
* - CORE validates: @Guard (rank/permission), @Throttle (rate limit), @RequiresState
|
|
22
|
+
* - RESOURCE validates: Zod schema (not serializable, must be local)
|
|
23
|
+
*/
|
|
24
|
+
export declare class RemoteCommandImplementation extends CommandExecutionPort {
|
|
25
|
+
private exportsService;
|
|
26
|
+
private commands;
|
|
27
|
+
getCommandMeta(commandName: string): CommandMetadata | undefined;
|
|
28
|
+
constructor(exportsService: IExports);
|
|
29
|
+
/**
|
|
30
|
+
* Gets typed access to CORE resource exports.
|
|
31
|
+
*/
|
|
32
|
+
private get core();
|
|
33
|
+
/**
|
|
34
|
+
* Registers a command handler locally and with CORE.
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* The handler and full metadata are stored locally for schema validation.
|
|
38
|
+
* Only serializable metadata is sent to CORE for security validation.
|
|
39
|
+
*/
|
|
40
|
+
register(metadata: CommandMetadata, handler: (...args: any[]) => any): void;
|
|
41
|
+
/**
|
|
42
|
+
* Executes a command handler stored in this resource.
|
|
43
|
+
*
|
|
44
|
+
* @remarks
|
|
45
|
+
* Called by the resource's command execution controller when CORE
|
|
46
|
+
* emits a command execution event to this resource.
|
|
47
|
+
*
|
|
48
|
+
* CORE has already validated:
|
|
49
|
+
* - @Guard (rank/permission requirements)
|
|
50
|
+
* - @Throttle (rate limiting)
|
|
51
|
+
* - @RequiresState (player state)
|
|
52
|
+
* - @Public (authentication - if not public, player must be authenticated)
|
|
53
|
+
*
|
|
54
|
+
* This method validates:
|
|
55
|
+
* - Zod schema (argument types and structure)
|
|
56
|
+
*
|
|
57
|
+
* @throws AppError - If schema validation fails or command not found
|
|
58
|
+
*/
|
|
59
|
+
execute(player: Player, commandName: string, args: string[]): Promise<void>;
|
|
60
|
+
/**
|
|
61
|
+
* Returns all commands registered in CORE (local + remote).
|
|
62
|
+
*/
|
|
63
|
+
getAllCommands(): CommandInfo[];
|
|
64
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
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';
|
|
14
|
+
import { IExports } from '../../../../adapters/contracts/IExports';
|
|
15
|
+
import { AppError } from '../../../../kernel/error/app.error';
|
|
16
|
+
import { loggers } from '../../../../kernel/logger';
|
|
17
|
+
import { validateAndExecuteCommand } from '../../helpers/command-validation.helper';
|
|
18
|
+
import { getRuntimeContext } from '../../runtime';
|
|
19
|
+
import { CommandExecutionPort } from '../../ports/internal/command-execution.port';
|
|
20
|
+
/**
|
|
21
|
+
* Remote command service for RESOURCE mode.
|
|
22
|
+
*
|
|
23
|
+
* @remarks
|
|
24
|
+
* In RESOURCE mode, this service:
|
|
25
|
+
* - Stores command handlers and metadata locally in the resource
|
|
26
|
+
* - Registers command metadata with CORE via exports
|
|
27
|
+
* - Executes handlers when invoked by CORE via net event
|
|
28
|
+
* - Validates arguments using Zod schemas (same as CommandService)
|
|
29
|
+
*
|
|
30
|
+
* Flow:
|
|
31
|
+
* 1. Resource declares @Command → metadata registered with CORE
|
|
32
|
+
* 2. Player executes command → CORE validates security and emits event to resource
|
|
33
|
+
* 3. Resource receives event → validates schema → executes handler
|
|
34
|
+
*
|
|
35
|
+
* Security validation is split:
|
|
36
|
+
* - CORE validates: @Guard (rank/permission), @Throttle (rate limit), @RequiresState
|
|
37
|
+
* - RESOURCE validates: Zod schema (not serializable, must be local)
|
|
38
|
+
*/
|
|
39
|
+
let RemoteCommandImplementation = class RemoteCommandImplementation extends CommandExecutionPort {
|
|
40
|
+
exportsService;
|
|
41
|
+
commands = new Map();
|
|
42
|
+
getCommandMeta(commandName) {
|
|
43
|
+
return this.commands.get(commandName.toLowerCase())?.meta;
|
|
44
|
+
}
|
|
45
|
+
constructor(exportsService) {
|
|
46
|
+
super();
|
|
47
|
+
this.exportsService = exportsService;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Gets typed access to CORE resource exports.
|
|
51
|
+
*/
|
|
52
|
+
get core() {
|
|
53
|
+
const { coreResourceName } = getRuntimeContext();
|
|
54
|
+
const coreExports = this.exportsService.getResource(coreResourceName);
|
|
55
|
+
if (!coreExports) {
|
|
56
|
+
throw new Error(`[OpenCore] CORE resource '${coreResourceName}' exports not found. ` +
|
|
57
|
+
`Ensure the CORE resource is started BEFORE RESOURCE mode resources. ` +
|
|
58
|
+
`Add 'ensure ${coreResourceName}' before this resource in server.cfg`);
|
|
59
|
+
}
|
|
60
|
+
return coreExports;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Registers a command handler locally and with CORE.
|
|
64
|
+
*
|
|
65
|
+
* @remarks
|
|
66
|
+
* The handler and full metadata are stored locally for schema validation.
|
|
67
|
+
* Only serializable metadata is sent to CORE for security validation.
|
|
68
|
+
*/
|
|
69
|
+
register(metadata, handler) {
|
|
70
|
+
const commandKey = metadata.command.toLowerCase();
|
|
71
|
+
const resourceName = GetCurrentResourceName();
|
|
72
|
+
loggers.command.debug(`Registering command locally`, {
|
|
73
|
+
command: metadata.command,
|
|
74
|
+
resource: resourceName,
|
|
75
|
+
});
|
|
76
|
+
// Store handler with full metadata locally (for schema validation)
|
|
77
|
+
this.commands.set(commandKey, {
|
|
78
|
+
meta: metadata,
|
|
79
|
+
handler,
|
|
80
|
+
});
|
|
81
|
+
// Register metadata with CORE (security only, schema is not serializable)
|
|
82
|
+
try {
|
|
83
|
+
this.core.registerCommand({
|
|
84
|
+
command: metadata.command,
|
|
85
|
+
description: metadata.description,
|
|
86
|
+
usage: metadata.usage,
|
|
87
|
+
isPublic: metadata.isPublic ?? false,
|
|
88
|
+
resourceName,
|
|
89
|
+
security: metadata.security,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
catch (e) {
|
|
93
|
+
loggers.command.error(`Failed to register command with CORE`, {
|
|
94
|
+
command: metadata.command,
|
|
95
|
+
resource: resourceName,
|
|
96
|
+
error: e,
|
|
97
|
+
});
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
const publicFlag = metadata.isPublic ? ' [Public]' : '';
|
|
101
|
+
const schemaFlag = metadata.schema ? ' [Validated]' : '';
|
|
102
|
+
const securityFlags = [];
|
|
103
|
+
if (metadata.security?.guard)
|
|
104
|
+
securityFlags.push('Guard');
|
|
105
|
+
if (metadata.security?.throttle)
|
|
106
|
+
securityFlags.push('Throttle');
|
|
107
|
+
if (metadata.security?.requiresState)
|
|
108
|
+
securityFlags.push('RequiresState');
|
|
109
|
+
const securityInfo = securityFlags.length > 0 ? ` (${securityFlags.join(', ')})` : '';
|
|
110
|
+
loggers.command.debug(`Registered remote command: /${metadata.command}${publicFlag}${schemaFlag}${securityInfo} (delegated to CORE)`);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Executes a command handler stored in this resource.
|
|
114
|
+
*
|
|
115
|
+
* @remarks
|
|
116
|
+
* Called by the resource's command execution controller when CORE
|
|
117
|
+
* emits a command execution event to this resource.
|
|
118
|
+
*
|
|
119
|
+
* CORE has already validated:
|
|
120
|
+
* - @Guard (rank/permission requirements)
|
|
121
|
+
* - @Throttle (rate limiting)
|
|
122
|
+
* - @RequiresState (player state)
|
|
123
|
+
* - @Public (authentication - if not public, player must be authenticated)
|
|
124
|
+
*
|
|
125
|
+
* This method validates:
|
|
126
|
+
* - Zod schema (argument types and structure)
|
|
127
|
+
*
|
|
128
|
+
* @throws AppError - If schema validation fails or command not found
|
|
129
|
+
*/
|
|
130
|
+
async execute(player, commandName, args) {
|
|
131
|
+
const entry = this.commands.get(commandName.toLowerCase());
|
|
132
|
+
if (!entry) {
|
|
133
|
+
loggers.command.error(`Handler not found for remote command: ${commandName}`, {
|
|
134
|
+
command: commandName,
|
|
135
|
+
resource: GetCurrentResourceName(),
|
|
136
|
+
});
|
|
137
|
+
throw new AppError('COMMAND:NOT_FOUND', `Command not found: ${commandName}`, 'server');
|
|
138
|
+
}
|
|
139
|
+
const { meta, handler } = entry;
|
|
140
|
+
return await validateAndExecuteCommand(meta, player, args, handler);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Returns all commands registered in CORE (local + remote).
|
|
144
|
+
*/
|
|
145
|
+
getAllCommands() {
|
|
146
|
+
return this.core.getAllCommands();
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
RemoteCommandImplementation = __decorate([
|
|
150
|
+
injectable(),
|
|
151
|
+
__param(0, inject(IExports)),
|
|
152
|
+
__metadata("design:paramtypes", [IExports])
|
|
153
|
+
], RemoteCommandImplementation);
|
|
154
|
+
export { RemoteCommandImplementation };
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { IExports, IPlayerInfo } from '../../../../adapters';
|
|
2
|
+
import { IPlatformCapabilities } from '../../../../adapters/contracts/IPlatformCapabilities';
|
|
3
|
+
import { EventsAPI } from '../../../../adapters/contracts/transport/events.api';
|
|
4
|
+
import { IEntityServer } from '../../../../adapters/contracts/server/IEntityServer';
|
|
5
|
+
import { IPlayerServer } from '../../../../adapters/contracts/server/IPlayerServer';
|
|
6
|
+
import { Player } from '../../entities';
|
|
7
|
+
import { Players } from '../../ports/players.api-port';
|
|
8
|
+
import { LinkedID } from '../../services';
|
|
9
|
+
/**
|
|
10
|
+
* Player service implementation for `RESOURCE` mode.
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* This service delegates all player operations to CORE via exports.
|
|
14
|
+
* It creates local Player instances hydrated with real session data from CORE,
|
|
15
|
+
* ensuring RESOURCE mode has access to accurate player information.
|
|
16
|
+
*/
|
|
17
|
+
export declare class RemotePlayerImplementation extends Players {
|
|
18
|
+
private readonly playerInfo;
|
|
19
|
+
private readonly exportsService;
|
|
20
|
+
private readonly playerServer;
|
|
21
|
+
private readonly entityServer;
|
|
22
|
+
private readonly events;
|
|
23
|
+
private readonly platformCapabilities;
|
|
24
|
+
/**
|
|
25
|
+
* Cached adapters bundle for Player instances
|
|
26
|
+
*/
|
|
27
|
+
private readonly playerAdapters;
|
|
28
|
+
constructor(playerInfo: IPlayerInfo, exportsService: IExports, playerServer: IPlayerServer, entityServer: IEntityServer, events: EventsAPI<'server'>, platformCapabilities: IPlatformCapabilities);
|
|
29
|
+
/**
|
|
30
|
+
* Gets typed access to CORE resource exports.
|
|
31
|
+
*/
|
|
32
|
+
private get core();
|
|
33
|
+
/**
|
|
34
|
+
* Creates a local Player instance from serialized data.
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* The returned Player is hydrated with session data from CORE,
|
|
38
|
+
* including accountID, identifiers, metadata, and states.
|
|
39
|
+
*/
|
|
40
|
+
private createPlayerFromData;
|
|
41
|
+
/**
|
|
42
|
+
* Returns a Player instance with real session data from CORE.
|
|
43
|
+
*/
|
|
44
|
+
getByClient(clientID: number): Player | undefined;
|
|
45
|
+
getMany(clientIds: number[]): Player[];
|
|
46
|
+
/**
|
|
47
|
+
* Returns all connected players with real session data from CORE.
|
|
48
|
+
*/
|
|
49
|
+
getAll(): Player[];
|
|
50
|
+
getAccountLinked(clientID: number): LinkedID | undefined;
|
|
51
|
+
getMeta<T = unknown>(clientID: number, key: string): Promise<T | undefined>;
|
|
52
|
+
setMeta(clientID: number, key: string, value: unknown): void;
|
|
53
|
+
/**
|
|
54
|
+
* Finds a player by their persistent account ID.
|
|
55
|
+
*/
|
|
56
|
+
getByAccountId(accountId: string): Player | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* Gets the current player count from CORE.
|
|
59
|
+
*/
|
|
60
|
+
getPlayerCount(): number;
|
|
61
|
+
/**
|
|
62
|
+
* Checks if a player with given account ID is online.
|
|
63
|
+
*/
|
|
64
|
+
isOnline(accountId: string): boolean;
|
|
65
|
+
}
|