@open-core/framework 0.1.0-alpha.1 → 0.2.1-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/README.md +217 -360
- package/dist/adapters/contracts/IEngineEvents.d.ts +20 -0
- package/dist/adapters/contracts/IEngineEvents.js +6 -0
- package/dist/adapters/contracts/IEntityServer.d.ts +88 -0
- package/dist/adapters/contracts/IEntityServer.js +13 -0
- package/dist/adapters/contracts/IExports.d.ts +4 -0
- package/dist/adapters/contracts/IExports.js +6 -0
- package/dist/adapters/contracts/IHasher.d.ts +15 -0
- package/dist/adapters/contracts/IHasher.js +12 -0
- package/dist/adapters/contracts/INetTransport.d.ts +8 -0
- package/dist/adapters/contracts/INetTransport.js +6 -0
- package/dist/adapters/contracts/IPedAppearanceClient.d.ts +206 -0
- package/dist/adapters/contracts/IPedAppearanceClient.js +16 -0
- package/dist/adapters/contracts/IPedAppearanceServer.d.ts +45 -0
- package/dist/adapters/contracts/IPedAppearanceServer.js +16 -0
- package/dist/adapters/contracts/IPlayerInfo.d.ts +5 -0
- package/dist/adapters/contracts/IPlayerInfo.js +6 -0
- package/dist/adapters/contracts/IPlayerServer.d.ts +73 -0
- package/dist/adapters/contracts/IPlayerServer.js +13 -0
- package/dist/adapters/contracts/IResourceInfo.d.ts +3 -0
- package/dist/adapters/contracts/IResourceInfo.js +6 -0
- package/dist/adapters/contracts/ITick.d.ts +10 -0
- package/dist/adapters/contracts/ITick.js +9 -0
- package/dist/adapters/contracts/IVehicleServer.d.ts +55 -0
- package/dist/adapters/contracts/IVehicleServer.js +13 -0
- package/dist/{server/database/adapters → adapters/database}/oxmysql.adapter.d.ts +2 -2
- package/dist/{server/database/adapters → adapters/database}/oxmysql.adapter.js +2 -2
- package/dist/adapters/database/resource.adapter.d.ts +12 -0
- package/dist/adapters/database/resource.adapter.js +68 -0
- package/dist/adapters/fivem/fivem-engine-events.d.ts +5 -0
- package/dist/adapters/fivem/fivem-engine-events.js +13 -0
- package/dist/adapters/fivem/fivem-entity-server.d.ts +22 -0
- package/dist/adapters/fivem/fivem-entity-server.js +80 -0
- package/dist/adapters/fivem/fivem-exports.d.ts +5 -0
- package/dist/adapters/fivem/fivem-exports.js +14 -0
- package/dist/adapters/fivem/fivem-hasher.d.ts +7 -0
- package/dist/adapters/fivem/fivem-hasher.js +23 -0
- package/dist/adapters/fivem/fivem-net-transport.d.ts +5 -0
- package/dist/adapters/fivem/fivem-net-transport.js +24 -0
- package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +34 -0
- package/dist/adapters/fivem/fivem-ped-appearance-client.js +84 -0
- package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +14 -0
- package/dist/adapters/fivem/fivem-ped-appearance-server.js +26 -0
- package/dist/adapters/fivem/fivem-player-server.d.ts +15 -0
- package/dist/adapters/fivem/fivem-player-server.js +63 -0
- package/dist/adapters/fivem/fivem-playerinfo.d.ts +6 -0
- package/dist/adapters/fivem/fivem-playerinfo.js +14 -0
- package/dist/adapters/fivem/fivem-resourceinfo.d.ts +4 -0
- package/dist/adapters/fivem/fivem-resourceinfo.js +16 -0
- package/dist/adapters/fivem/fivem-tick.d.ts +7 -0
- package/dist/adapters/fivem/fivem-tick.js +22 -0
- package/dist/adapters/fivem/fivem-vehicle-server.d.ts +15 -0
- package/dist/adapters/fivem/fivem-vehicle-server.js +47 -0
- package/dist/adapters/index.d.ts +15 -0
- package/dist/adapters/index.js +40 -0
- package/dist/adapters/node/index.d.ts +8 -0
- package/dist/adapters/node/index.js +19 -0
- package/dist/adapters/node/node-engine-events.d.ts +20 -0
- package/dist/adapters/node/node-engine-events.js +42 -0
- package/dist/adapters/node/node-entity-server.d.ts +26 -0
- package/dist/adapters/node/node-entity-server.js +101 -0
- package/dist/adapters/node/node-exports.d.ts +26 -0
- package/dist/adapters/node/node-exports.js +63 -0
- package/dist/adapters/node/node-hasher.d.ts +12 -0
- package/dist/adapters/node/node-hasher.js +39 -0
- package/dist/adapters/node/node-net-transport.d.ts +18 -0
- package/dist/adapters/node/node-net-transport.js +57 -0
- package/dist/adapters/node/node-ped-appearance-client.d.ts +34 -0
- package/dist/adapters/node/node-ped-appearance-client.js +59 -0
- package/dist/adapters/node/node-ped-appearance-server.d.ts +14 -0
- package/dist/adapters/node/node-ped-appearance-server.js +18 -0
- package/dist/adapters/node/node-player-server.d.ts +27 -0
- package/dist/adapters/node/node-player-server.js +82 -0
- package/dist/adapters/node/node-playerinfo.d.ts +6 -0
- package/dist/adapters/node/node-playerinfo.js +12 -0
- package/dist/adapters/node/node-resourceinfo.d.ts +12 -0
- package/dist/adapters/node/node-resourceinfo.js +27 -0
- package/dist/adapters/node/node-tick.d.ts +10 -0
- package/dist/{server/system/processors/command.processor.js → adapters/node/node-tick.js} +27 -14
- package/dist/adapters/node/node-vehicle-server.d.ts +21 -0
- package/dist/adapters/node/node-vehicle-server.js +93 -0
- package/dist/adapters/register-capabilities.d.ts +11 -0
- package/dist/adapters/register-capabilities.js +148 -0
- package/dist/adapters/register-client-capabilities.d.ts +8 -0
- package/dist/adapters/register-client-capabilities.js +56 -0
- package/dist/index.d.ts +5 -4
- package/dist/index.js +9 -5
- package/dist/kernel/di/index.d.ts +4 -0
- package/dist/kernel/di/index.js +20 -0
- package/dist/{system → kernel/di}/metadata.scanner.d.ts +1 -2
- package/dist/kernel/di/tokens.d.ts +30 -0
- package/dist/kernel/di/tokens.js +38 -0
- package/dist/kernel/index.d.ts +7 -0
- package/dist/kernel/index.js +30 -0
- package/dist/kernel/schema/index.d.ts +32 -0
- package/dist/kernel/schema/index.js +5 -0
- package/dist/kernel/shared/appearance/appearance.interface.d.ts +276 -0
- package/dist/kernel/shared/appearance/appearance.interface.js +77 -0
- package/dist/kernel/shared/appearance/index.d.ts +1 -0
- package/dist/kernel/shared/appearance/index.js +17 -0
- package/dist/kernel/shared/index.d.ts +2 -0
- package/dist/{shared → kernel/shared}/index.js +1 -0
- package/dist/{shared → kernel/shared}/logger/core-logger.d.ts +13 -0
- package/dist/{shared → kernel/shared}/logger/core-logger.js +38 -9
- package/dist/{shared → kernel/shared}/logger/index.d.ts +12 -9
- package/dist/{shared → kernel/shared}/logger/index.js +24 -15
- package/dist/{shared → kernel/shared}/logger/logger.config.d.ts +1 -1
- package/dist/kernel/shared/logger/logger.env.d.ts +28 -0
- package/dist/kernel/shared/logger/logger.env.js +51 -0
- package/dist/{shared → kernel/shared}/logger/logger.service.d.ts +2 -2
- package/dist/{shared → kernel/shared}/logger/transports/buffered.transport.d.ts +2 -2
- package/dist/{shared → kernel/shared}/logger/transports/buffered.transport.js +1 -1
- package/dist/{shared → kernel/shared}/logger/transports/console.transport.d.ts +2 -2
- package/dist/{shared → kernel/shared}/logger/transports/console.transport.js +1 -0
- package/dist/kernel/shared/logger/transports/dev-transport.factory.d.ts +75 -0
- package/dist/kernel/shared/logger/transports/dev-transport.factory.js +111 -0
- package/dist/kernel/shared/logger/transports/http.transport.d.ts +67 -0
- package/dist/kernel/shared/logger/transports/http.transport.js +170 -0
- package/dist/kernel/shared/logger/transports/index.d.ts +7 -0
- package/dist/kernel/shared/logger/transports/index.js +34 -0
- package/dist/kernel/shared/logger/transports/simple-console.transport.d.ts +38 -0
- package/dist/kernel/shared/logger/transports/simple-console.transport.js +93 -0
- package/dist/{shared → kernel/shared}/logger/transports/transport.interface.d.ts +1 -1
- package/dist/kernel/shared/logger/transports/websocket.transport.d.ts +69 -0
- package/dist/kernel/shared/logger/transports/websocket.transport.js +169 -0
- package/dist/kernel/utils/error/app.error.d.ts +9 -0
- package/dist/{utils/errors.js → kernel/utils/error/app.error.js} +1 -9
- package/dist/kernel/utils/error/security.error.d.ts +6 -0
- package/dist/kernel/utils/error/security.error.js +12 -0
- package/dist/{utils → kernel/utils}/index.d.ts +3 -2
- package/dist/{utils → kernel/utils}/index.js +3 -2
- package/dist/{utils → kernel/utils}/result.d.ts +1 -1
- package/dist/runtime/client/client-bootstrap.d.ts +7 -0
- package/dist/runtime/client/client-bootstrap.js +180 -0
- package/dist/runtime/client/client-core.d.ts +19 -0
- package/dist/runtime/client/client-core.js +24 -0
- package/dist/runtime/client/client-runtime.d.ts +58 -0
- package/dist/runtime/client/client-runtime.js +32 -0
- package/dist/runtime/client/controllers/appearance.controller.d.ts +8 -0
- package/dist/runtime/client/controllers/appearance.controller.js +50 -0
- package/dist/runtime/client/controllers/player-sync.controller.d.ts +11 -0
- package/dist/runtime/client/controllers/player-sync.controller.js +54 -0
- package/dist/{client → runtime/client}/controllers/spawner.controller.d.ts +1 -1
- package/dist/runtime/client/decorators/controller.d.ts +20 -0
- package/dist/runtime/client/decorators/controller.js +55 -0
- package/dist/runtime/client/decorators/export.d.ts +21 -0
- package/dist/runtime/client/decorators/export.js +29 -0
- package/dist/{client → runtime/client}/decorators/gameEvent.d.ts +2 -2
- package/dist/runtime/client/decorators/interval.d.ts +23 -0
- package/dist/runtime/client/decorators/interval.js +31 -0
- package/dist/runtime/client/decorators/key.d.ts +23 -0
- package/dist/runtime/client/decorators/key.js +31 -0
- package/dist/runtime/client/decorators/localEvent.d.ts +21 -0
- package/dist/runtime/client/decorators/localEvent.js +29 -0
- package/dist/runtime/client/decorators/nui.d.ts +21 -0
- package/dist/runtime/client/decorators/nui.js +29 -0
- package/dist/runtime/client/decorators/onNet.d.ts +21 -0
- package/dist/runtime/client/decorators/onNet.js +29 -0
- package/dist/runtime/client/decorators/resourceLifecycle.d.ts +40 -0
- package/dist/runtime/client/decorators/resourceLifecycle.js +53 -0
- package/dist/runtime/client/decorators/tick.d.ts +21 -0
- package/dist/runtime/client/decorators/tick.js +29 -0
- package/dist/{client → runtime/client}/index.d.ts +2 -2
- package/dist/{client → runtime/client}/index.js +4 -2
- package/dist/runtime/client/interfaces/appearance.interface.d.ts +25 -0
- package/dist/runtime/client/interfaces/appearance.interface.js +2 -0
- package/dist/{client → runtime/client}/player/player.d.ts +1 -1
- package/dist/{client → runtime/client}/player/player.js +5 -6
- package/dist/{client → runtime/client}/player/player.loader.js +2 -2
- package/dist/runtime/client/services/appearance.service.d.ts +132 -0
- package/dist/runtime/client/services/appearance.service.js +328 -0
- package/dist/{client → runtime/client}/services/blip.service.d.ts +1 -1
- package/dist/{client → runtime/client}/services/index.d.ts +6 -5
- package/dist/{client → runtime/client}/services/index.js +6 -5
- package/dist/{client → runtime/client}/services/marker.service.d.ts +1 -1
- package/dist/{client → runtime/client}/services/ped.service.d.ts +1 -1
- package/dist/{client → runtime/client}/services/ped.service.js +3 -2
- package/dist/{client → runtime/client}/services/spawn.service.d.ts +2 -2
- package/dist/{client → runtime/client}/services/spawn.service.js +4 -8
- package/dist/{client → runtime/client}/services/textui.service.d.ts +1 -1
- package/dist/runtime/client/services/vehicle-client.service.d.ts +180 -0
- package/dist/runtime/client/services/vehicle-client.service.js +485 -0
- package/dist/{client → runtime/client}/services/vehicle.service.d.ts +2 -2
- package/dist/{client → runtime/client}/services/vehicle.service.js +1 -1
- package/dist/{client → runtime/client}/system/processors/export.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/export.processor.js +1 -1
- package/dist/{client → runtime/client}/system/processors/gameEvent.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/gameEvent.processor.js +2 -2
- package/dist/{client → runtime/client}/system/processors/interval.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/interval.processor.js +1 -1
- package/dist/{client → runtime/client}/system/processors/key.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/localEvent.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/localEvent.processor.js +1 -1
- package/dist/{client → runtime/client}/system/processors/netEvent.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/netEvent.processor.js +1 -1
- package/dist/{client → runtime/client}/system/processors/nui.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/nui.processor.js +1 -1
- package/dist/{client → runtime/client}/system/processors/resourceLifecycle.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/resourceLifecycle.processor.js +1 -1
- package/dist/{client → runtime/client}/system/processors/tick.processor.d.ts +1 -1
- package/dist/{client → runtime/client}/system/processors/tick.processor.js +1 -1
- package/dist/{client → runtime/client}/types/game-events.js +0 -8
- package/dist/{client → runtime/client}/ui-bridge.js +1 -1
- package/dist/runtime/index.d.ts +2 -0
- package/dist/runtime/index.js +39 -0
- package/dist/{server → runtime/server}/bootstrap.d.ts +2 -1
- package/dist/runtime/server/bootstrap.js +234 -0
- package/dist/runtime/server/bootstrap.validation.d.ts +12 -0
- package/dist/runtime/server/bootstrap.validation.js +102 -0
- package/dist/runtime/server/bus/core-event-bus.d.ts +6 -0
- package/dist/{server → runtime/server}/bus/core-event-bus.js +5 -5
- package/dist/{server → runtime/server}/configs/api.config.d.ts +1 -1
- package/dist/{server/templates/auth → runtime/server/contracts}/auth-provider.contract.d.ts +2 -2
- package/dist/runtime/server/contracts/index.d.ts +7 -0
- package/dist/{server/templates → runtime/server/contracts}/index.js +8 -4
- package/dist/{server/templates/persistence → runtime/server/contracts}/player-persistence.contract.d.ts +1 -1
- package/dist/{server/templates → runtime/server/contracts}/repository/index.d.ts +2 -2
- package/dist/{server/templates → runtime/server/contracts}/repository/index.js +1 -1
- package/dist/{server/templates → runtime/server/contracts}/repository/repository.contract.d.ts +2 -2
- package/dist/{server/templates → runtime/server/contracts}/repository/repository.contract.js +0 -1
- 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 +6 -0
- package/dist/{server/templates → runtime/server/contracts}/security/principal-provider.contract.d.ts +3 -3
- package/dist/{server/templates → runtime/server/contracts}/security/security-handler.contract.d.ts +2 -2
- package/dist/runtime/server/controllers/chat.controller.d.ts +11 -0
- package/dist/{server → runtime/server}/controllers/chat.controller.js +23 -11
- package/dist/runtime/server/controllers/command-export.controller.d.ts +74 -0
- package/dist/runtime/server/controllers/command-export.controller.js +260 -0
- package/dist/runtime/server/controllers/command.controller.d.ts +15 -0
- package/dist/runtime/server/controllers/command.controller.js +100 -0
- package/dist/runtime/server/controllers/player-export.controller.d.ts +29 -0
- package/dist/runtime/server/controllers/player-export.controller.js +173 -0
- package/dist/runtime/server/controllers/principal-export.controller.d.ts +79 -0
- package/dist/runtime/server/controllers/principal-export.controller.js +296 -0
- package/dist/runtime/server/controllers/remote-command-execution.controller.d.ts +43 -0
- package/dist/runtime/server/controllers/remote-command-execution.controller.js +104 -0
- package/dist/runtime/server/controllers/session.controller.d.ts +11 -0
- package/dist/{server → runtime/server}/controllers/session.controller.js +15 -12
- package/dist/runtime/server/controllers/vehicle.controller.d.ts +55 -0
- package/dist/runtime/server/controllers/vehicle.controller.js +216 -0
- package/dist/runtime/server/core.d.ts +3 -0
- package/dist/runtime/server/core.js +11 -0
- package/dist/runtime/server/database/adapter.registry.d.ts +4 -0
- package/dist/runtime/server/database/adapter.registry.js +14 -0
- package/dist/{server → runtime/server}/database/database.contract.d.ts +1 -1
- package/dist/{server → runtime/server}/database/database.service.d.ts +3 -31
- package/dist/{server → runtime/server}/database/database.service.js +36 -50
- package/dist/runtime/server/database/index.d.ts +5 -0
- package/dist/runtime/server/database/index.js +25 -0
- package/dist/runtime/server/decorators/bind.d.ts +21 -0
- package/dist/runtime/server/decorators/bind.js +31 -0
- package/dist/runtime/server/decorators/command.d.ts +81 -0
- package/dist/runtime/server/decorators/command.js +32 -0
- package/dist/{server → runtime/server}/decorators/controller.d.ts +4 -3
- package/dist/runtime/server/decorators/controller.js +61 -0
- package/dist/runtime/server/decorators/export.d.ts +24 -0
- package/dist/runtime/server/decorators/export.js +32 -0
- package/dist/runtime/server/decorators/guard.d.ts +49 -0
- package/dist/{server → runtime/server}/decorators/guard.js +33 -32
- package/dist/{server → runtime/server}/decorators/index.d.ts +7 -4
- package/dist/{server → runtime/server}/decorators/index.js +8 -5
- package/dist/runtime/server/decorators/onFiveMEvent.d.ts +24 -0
- package/dist/runtime/server/decorators/onFiveMEvent.js +32 -0
- package/dist/runtime/server/decorators/onFrameworkEvent.d.ts +22 -0
- package/dist/{server → runtime/server}/decorators/onFrameworkEvent.js +9 -9
- package/dist/runtime/server/decorators/onNet.d.ts +62 -0
- package/dist/runtime/server/decorators/onNet.js +15 -0
- package/dist/runtime/server/decorators/onTick.d.ts +21 -0
- package/dist/runtime/server/decorators/onTick.js +29 -0
- package/dist/runtime/server/decorators/public.d.ts +26 -0
- package/dist/{server → runtime/server}/decorators/public.js +15 -16
- package/dist/{server → runtime/server}/decorators/requiresState.d.ts +29 -22
- package/dist/runtime/server/decorators/requiresState.js +73 -0
- package/dist/runtime/server/decorators/throttle.d.ts +56 -0
- package/dist/{server → runtime/server}/decorators/throttle.js +31 -19
- package/dist/runtime/server/decorators/utils.d.ts +54 -0
- package/dist/runtime/server/decorators/utils.js +60 -0
- package/dist/runtime/server/devmode/contracts/IDevModeBridge.d.ts +36 -0
- package/dist/runtime/server/devmode/contracts/IDevModeBridge.js +12 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInspector.d.ts +52 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInspector.js +12 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.d.ts +41 -0
- package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.js +11 -0
- package/dist/runtime/server/devmode/contracts/index.d.ts +3 -0
- package/dist/runtime/server/devmode/contracts/index.js +9 -0
- package/dist/runtime/server/devmode/dev-mode.service.d.ts +110 -0
- package/dist/runtime/server/devmode/dev-mode.service.js +324 -0
- package/dist/runtime/server/devmode/event-interceptor.service.d.ts +80 -0
- package/dist/runtime/server/devmode/event-interceptor.service.js +232 -0
- package/dist/runtime/server/devmode/hot-reload.server.d.ts +74 -0
- package/dist/runtime/server/devmode/hot-reload.server.js +261 -0
- package/dist/runtime/server/devmode/index.d.ts +8 -0
- package/dist/runtime/server/devmode/index.js +32 -0
- package/dist/runtime/server/devmode/player-simulator.service.d.ts +66 -0
- package/dist/runtime/server/devmode/player-simulator.service.js +202 -0
- package/dist/runtime/server/devmode/state-inspector.service.d.ts +57 -0
- package/dist/runtime/server/devmode/state-inspector.service.js +183 -0
- package/dist/runtime/server/devmode/types.d.ts +161 -0
- package/dist/runtime/server/devmode/types.js +28 -0
- package/dist/runtime/server/entities/index.d.ts +2 -0
- package/dist/{server → runtime/server}/entities/index.js +1 -0
- package/dist/{server → runtime/server}/entities/player.d.ts +70 -3
- package/dist/{server → runtime/server}/entities/player.js +92 -14
- package/dist/runtime/server/entities/vehicle.d.ts +160 -0
- package/dist/runtime/server/entities/vehicle.js +261 -0
- package/dist/{server → runtime/server}/error-handler.d.ts +1 -1
- package/dist/{server → runtime/server}/error-handler.js +7 -8
- package/dist/runtime/server/helpers/command-validation.helper.d.ts +6 -0
- package/dist/runtime/server/helpers/command-validation.helper.js +72 -0
- package/dist/runtime/server/helpers/function-helper.d.ts +1 -0
- package/dist/runtime/server/helpers/function-helper.js +15 -0
- package/dist/{server → runtime/server}/helpers/resolve-method.d.ts +1 -1
- package/dist/runtime/server/helpers/resolve-method.js +28 -0
- package/dist/{server → runtime/server}/index.d.ts +8 -6
- package/dist/{server → runtime/server}/index.js +14 -10
- package/dist/runtime/server/runtime.d.ts +408 -0
- package/dist/runtime/server/runtime.js +234 -0
- package/dist/runtime/server/services/access-control.service.d.ts +59 -0
- package/dist/runtime/server/services/access-control.service.js +127 -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/chat.service.d.ts +33 -0
- package/dist/{server → runtime/server}/services/chat.service.js +26 -0
- package/dist/{server → runtime/server}/services/config.service.js +1 -1
- package/dist/runtime/server/services/core/command.service.d.ts +49 -0
- package/dist/runtime/server/services/core/command.service.js +112 -0
- package/dist/{server/services → runtime/server/services/core}/player.service.d.ts +48 -22
- package/dist/{server/services → runtime/server/services/core}/player.service.js +98 -14
- package/dist/runtime/server/services/core/principal.service.d.ts +28 -0
- package/dist/runtime/server/services/core/principal.service.js +126 -0
- package/dist/runtime/server/services/core/vehicle-modification.service.d.ts +104 -0
- package/dist/runtime/server/services/core/vehicle-modification.service.js +330 -0
- package/dist/runtime/server/services/core/vehicle.service.d.ts +128 -0
- package/dist/runtime/server/services/core/vehicle.service.js +391 -0
- package/dist/runtime/server/services/default/default-net-event-security-observer.d.ts +15 -0
- package/dist/runtime/server/services/default/default-net-event-security-observer.js +28 -0
- package/dist/runtime/server/services/default/default-security.handler.d.ts +19 -0
- package/dist/{server → runtime/server}/services/default/default-security.handler.js +15 -2
- package/dist/{server → runtime/server}/services/http/http.service.js +5 -5
- package/dist/runtime/server/services/index.d.ts +16 -0
- package/dist/runtime/server/services/index.js +39 -0
- package/dist/{server → runtime/server}/services/parallel/index.d.ts +2 -4
- package/dist/{server → runtime/server}/services/parallel/index.js +13 -15
- package/dist/{server → runtime/server}/services/parallel/parallel-compute.service.d.ts +1 -1
- package/dist/{server → runtime/server}/services/parallel/parallel-compute.service.js +2 -1
- package/dist/{server → runtime/server}/services/parallel/worker-pool.d.ts +1 -1
- package/dist/{server → runtime/server}/services/parallel/worker.d.ts +1 -1
- package/dist/{server → runtime/server}/services/persistence.service.d.ts +1 -1
- package/dist/{server → runtime/server}/services/persistence.service.js +13 -9
- package/dist/runtime/server/services/ports/command-execution.port.d.ts +41 -0
- package/dist/runtime/server/services/ports/command-execution.port.js +15 -0
- package/dist/runtime/server/services/ports/player-directory.port.d.ts +107 -0
- package/dist/runtime/server/services/ports/player-directory.port.js +23 -0
- package/dist/runtime/server/services/ports/player-session-lifecycle.port.d.ts +49 -0
- package/dist/runtime/server/services/ports/player-session-lifecycle.port.js +16 -0
- package/dist/runtime/server/services/ports/principal.port.d.ts +149 -0
- package/dist/runtime/server/services/ports/principal.port.js +32 -0
- package/dist/runtime/server/services/rate-limiter.service.d.ts +23 -0
- package/dist/{server → runtime/server}/services/rate-limiter.service.js +18 -0
- package/dist/runtime/server/services/remote/remote-command.service.d.ts +63 -0
- package/dist/runtime/server/services/remote/remote-command.service.js +139 -0
- package/dist/runtime/server/services/remote/remote-player.service.d.ts +62 -0
- package/dist/runtime/server/services/remote/remote-player.service.js +191 -0
- package/dist/runtime/server/services/remote/remote-principal.provider.d.ts +55 -0
- package/dist/runtime/server/services/remote/remote-principal.provider.js +130 -0
- package/dist/runtime/server/services/remote/remote-principal.service.d.ts +33 -0
- package/dist/runtime/server/services/remote/remote-principal.service.js +99 -0
- package/dist/runtime/server/services/remote/server-bridge.d.ts +34 -0
- package/dist/runtime/server/services/remote/server-bridge.js +94 -0
- package/dist/runtime/server/services/services.register.d.ts +14 -0
- package/dist/runtime/server/services/services.register.js +98 -0
- package/dist/runtime/server/services/types/linked-id.d.ts +6 -0
- package/dist/runtime/server/services/types/player-session.object.d.ts +11 -0
- package/dist/runtime/server/services/vehicle-modification.service.d.ts +94 -0
- package/dist/runtime/server/services/vehicle-modification.service.js +310 -0
- package/dist/runtime/server/services/vehicle.service.d.ts +138 -0
- package/dist/runtime/server/services/vehicle.service.js +361 -0
- package/dist/runtime/server/setup.d.ts +10 -0
- package/dist/runtime/server/setup.js +33 -0
- package/dist/{server → runtime/server}/system/metadata-server.keys.d.ts +2 -0
- package/dist/{server → runtime/server}/system/metadata-server.keys.js +2 -0
- package/dist/runtime/server/system/processors/command.processor.d.ts +16 -0
- package/dist/runtime/server/system/processors/command.processor.js +54 -0
- package/dist/{server → runtime/server}/system/processors/coreEvent.processor.d.ts +1 -1
- package/dist/{server → runtime/server}/system/processors/coreEvent.processor.js +3 -3
- package/dist/runtime/server/system/processors/export.processor.d.ts +10 -0
- package/dist/{server → runtime/server}/system/processors/export.processor.js +15 -5
- package/dist/runtime/server/system/processors/fivemEvent.processor.d.ts +10 -0
- package/dist/{server → runtime/server}/system/processors/fivemEvent.processor.js +15 -5
- package/dist/runtime/server/system/processors/netEvent.processor.d.ts +23 -0
- package/dist/runtime/server/system/processors/netEvent.processor.js +240 -0
- package/dist/runtime/server/system/processors/tick.processor.d.ts +8 -0
- package/dist/{server → runtime/server}/system/processors/tick.processor.js +14 -4
- package/dist/runtime/server/system/processors.register.d.ts +2 -0
- package/dist/runtime/server/system/processors.register.js +37 -0
- package/dist/{server → runtime/server}/system/schema-generator.d.ts +1 -1
- package/dist/{server → runtime/server}/system/schema-generator.js +17 -8
- package/dist/{server/templates/admin → runtime/server/templates}/admin.controller-template.d.ts +1 -1
- package/dist/runtime/server/templates/index.d.ts +1 -0
- package/dist/runtime/server/templates/index.js +17 -0
- package/dist/runtime/server/types/core-exports.d.ts +285 -0
- package/dist/runtime/server/types/core-exports.js +2 -0
- package/dist/runtime/server/types/index.d.ts +4 -0
- package/dist/runtime/server/types/index.js +20 -0
- package/dist/runtime/server/types/security.types.js +2 -0
- package/dist/runtime/server/types/vehicle.types.d.ts +152 -0
- package/dist/runtime/server/types/vehicle.types.js +2 -0
- package/package.json +98 -98
- package/dist/client/client-bootstrap.d.ts +0 -1
- package/dist/client/client-bootstrap.js +0 -50
- package/dist/client/client-core.d.ts +0 -1
- package/dist/client/client-core.js +0 -7
- 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/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/interfaces/appearance.interface.d.ts +0 -19
- package/dist/client/services/appearance.service.d.ts +0 -6
- package/dist/client/services/appearance.service.js +0 -89
- package/dist/server/bootstrap.js +0 -57
- package/dist/server/bus/core-event-bus.d.ts +0 -6
- package/dist/server/controllers/chat.controller.d.ts +0 -10
- 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/core.d.ts +0 -1
- package/dist/server/core.js +0 -7
- package/dist/server/database/index.d.ts +0 -53
- package/dist/server/database/index.js +0 -70
- 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.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/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/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/requiresState.js +0 -63
- package/dist/server/decorators/throttle.d.ts +0 -48
- 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/helpers/resolve-method.js +0 -18
- package/dist/server/loaders/exports.loader.d.ts +0 -0
- 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/command.service.d.ts +0 -15
- package/dist/server/services/command.service.js +0 -77
- package/dist/server/services/default/default-security.handler.d.ts +0 -6
- package/dist/server/services/index.d.ts +0 -10
- package/dist/server/services/index.js +0 -26
- package/dist/server/services/rate-limiter.service.d.ts +0 -5
- 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/processors/command.processor.d.ts +0 -9
- package/dist/server/system/processors/export.processor.d.ts +0 -7
- package/dist/server/system/processors/fivemEvent.processor.d.ts +0 -7
- 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.register.d.ts +0 -1
- package/dist/server/system/processors.register.js +0 -23
- package/dist/server/templates/index.d.ts +0 -8
- package/dist/server/templates/persistence/index.d.ts +0 -30
- package/dist/server/templates/persistence/index.js +0 -34
- package/dist/shared/index.d.ts +0 -1
- package/dist/shared/logger/transports/index.d.ts +0 -3
- package/dist/shared/logger/transports/index.js +0 -19
- package/dist/utils/errors.d.ts +0 -14
- package/dist/{system → kernel/di}/class-constructor.d.ts +0 -0
- package/dist/{system → kernel/di}/class-constructor.js +0 -0
- package/dist/{server → kernel/di}/container.d.ts +0 -0
- package/dist/{server → kernel/di}/container.js +0 -0
- package/dist/{system → kernel/di}/decorator-processor.d.ts +0 -0
- package/dist/{system → kernel/di}/decorator-processor.js +0 -0
- package/dist/{system → kernel/di}/metadata.scanner.js +0 -0
- package/dist/{shared → kernel/shared}/logger/logger.config.js +0 -0
- package/dist/{shared → kernel/shared}/logger/logger.service.js +0 -0
- package/dist/{shared → kernel/shared}/logger/logger.types.d.ts +0 -0
- package/dist/{shared → kernel/shared}/logger/logger.types.js +0 -0
- package/dist/{shared → kernel/shared}/logger/transports/transport.interface.js +0 -0
- package/dist/{utils → kernel/utils}/result.js +0 -0
- package/dist/{utils → kernel/utils}/rgb.d.ts +0 -0
- package/dist/{utils → kernel/utils}/rgb.js +0 -0
- package/dist/{utils → kernel/utils}/vector3.d.ts +0 -0
- package/dist/{utils → kernel/utils}/vector3.js +0 -0
- package/dist/{client → runtime/client}/client-container.d.ts +0 -0
- package/dist/{client → runtime/client}/client-container.js +0 -0
- package/dist/{client → runtime/client}/controllers/spawner.controller.js +0 -0
- package/dist/{client → runtime/client}/decorators/gameEvent.js +0 -0
- package/dist/{client → runtime/client}/decorators/index.d.ts +5 -5
- package/dist/{client → runtime/client}/decorators/index.js +5 -5
- package/dist/{client → runtime/client}/player/player.loader.d.ts +0 -0
- package/dist/{client → runtime/client}/services/blip.service.js +0 -0
- package/dist/{client → runtime/client}/services/marker.service.js +0 -0
- package/dist/{client → runtime/client}/services/notification.service.d.ts +0 -0
- package/dist/{client → runtime/client}/services/notification.service.js +0 -0
- package/dist/{client → runtime/client}/services/progress.service.d.ts +0 -0
- package/dist/{client → runtime/client}/services/progress.service.js +0 -0
- package/dist/{client → runtime/client}/services/streaming.service.d.ts +0 -0
- package/dist/{client → runtime/client}/services/streaming.service.js +0 -0
- package/dist/{client → runtime/client}/services/textui.service.js +0 -0
- package/dist/{client → runtime/client}/system/metadata-client.keys.d.ts +0 -0
- package/dist/{client → runtime/client}/system/metadata-client.keys.js +0 -0
- package/dist/{client → runtime/client}/system/processors/key.processor.js +0 -0
- package/dist/{client → runtime/client}/system/processors.register.d.ts +0 -0
- package/dist/{client → runtime/client}/system/processors.register.js +6 -6
- /package/dist/{client → runtime/client}/types/game-events.d.ts +0 -0
- /package/dist/{client → runtime/client}/types/index.d.ts +0 -0
- /package/dist/{client → runtime/client}/types/index.js +0 -0
- /package/dist/{client → runtime/client}/ui-bridge.d.ts +0 -0
- /package/dist/{server → runtime/server}/configs/api.config.js +0 -0
- /package/dist/{server → runtime/server}/configs/config.base.d.ts +0 -0
- /package/dist/{server → runtime/server}/configs/config.base.js +0 -0
- /package/dist/{server → runtime/server}/configs/index.d.ts +0 -0
- /package/dist/{server → runtime/server}/configs/index.js +0 -0
- /package/dist/{server/templates/auth → runtime/server/contracts}/auth-provider.contract.js +0 -0
- /package/dist/{server/templates/persistence → runtime/server/contracts}/player-persistence.contract.js +0 -0
- /package/dist/{server/templates → runtime/server/contracts}/repository/repository.types.d.ts +0 -0
- /package/dist/{server/templates → runtime/server/contracts}/repository/repository.types.js +0 -0
- /package/dist/{server/templates → runtime/server/contracts}/security/permission.types.d.ts +0 -0
- /package/dist/{server/templates → runtime/server/contracts}/security/permission.types.js +0 -0
- /package/dist/{server/templates → runtime/server/contracts}/security/principal-provider.contract.js +0 -0
- /package/dist/{server/templates → runtime/server/contracts}/security/security-handler.contract.js +0 -0
- /package/dist/{server → runtime/server}/database/database.contract.js +0 -0
- /package/dist/{server → runtime/server}/database/types.d.ts +0 -0
- /package/dist/{server → runtime/server}/database/types.js +0 -0
- /package/dist/{server → runtime/server}/database.d.ts +0 -0
- /package/dist/{server → runtime/server}/database.js +0 -0
- /package/dist/{server → runtime/server}/services/config.service.d.ts +0 -0
- /package/dist/{server → runtime/server}/services/http/http.service.d.ts +0 -0
- /package/dist/{server → runtime/server}/services/parallel/types.d.ts +0 -0
- /package/dist/{server → runtime/server}/services/parallel/types.js +0 -0
- /package/dist/{server → runtime/server}/services/parallel/worker-pool.js +0 -0
- /package/dist/{server → runtime/server}/services/parallel/worker.js +0 -0
- /package/dist/{client/interfaces/appearance.interface.js → runtime/server/services/types/linked-id.js} +0 -0
- /package/dist/{server/templates/admin/admin.controller-template.js → runtime/server/services/types/player-session.object.js} +0 -0
- /package/dist/{server/types/core-events.js → runtime/server/templates/admin.controller-template.js} +0 -0
- /package/dist/{server → runtime/server}/types/core-events.d.ts +0 -0
- /package/dist/{server/types/security.types.js → runtime/server/types/core-events.js} +0 -0
- /package/dist/{server → runtime/server}/types/security.types.d.ts +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.init = init;
|
|
4
|
+
const client_bootstrap_1 = require("./client-bootstrap");
|
|
5
|
+
/**
|
|
6
|
+
* Initialize the OpenCore client framework
|
|
7
|
+
*
|
|
8
|
+
* @param options - Client initialization options
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* // Core resource (initializes all services)
|
|
13
|
+
* await Client.init({ mode: 'CORE' })
|
|
14
|
+
*
|
|
15
|
+
* // Resource mode (only registers controllers)
|
|
16
|
+
* await Client.init({ mode: 'RESOURCE' })
|
|
17
|
+
*
|
|
18
|
+
* // Standalone mode (only registers controllers)
|
|
19
|
+
* await Client.init({ mode: 'STANDALONE' })
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
async function init(options = {}) {
|
|
23
|
+
await (0, client_bootstrap_1.initClientCore)(options);
|
|
24
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client Runtime Configuration
|
|
3
|
+
*
|
|
4
|
+
* Defines initialization modes and configuration for the client-side framework.
|
|
5
|
+
*/
|
|
6
|
+
export type ClientMode = 'CORE' | 'RESOURCE' | 'STANDALONE';
|
|
7
|
+
/**
|
|
8
|
+
* Client initialization options
|
|
9
|
+
*
|
|
10
|
+
* @remarks
|
|
11
|
+
* - **CORE**: Initializes all framework services (SpawnService, NotificationService, etc.)
|
|
12
|
+
* and scans controllers. Should only be used by the main core resource.
|
|
13
|
+
*
|
|
14
|
+
* - **RESOURCE**: Only scans controllers from this resource. Does NOT initialize services.
|
|
15
|
+
* Used when a resource extends the core with additional functionality.
|
|
16
|
+
*
|
|
17
|
+
* - **STANDALONE**: Same as RESOURCE - only scans controllers. Services must be registered
|
|
18
|
+
* manually if needed. Use for independent resources or testing.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* // Core resource
|
|
23
|
+
* await Client.init({ mode: 'CORE' })
|
|
24
|
+
*
|
|
25
|
+
* // Chat resource (extends core)
|
|
26
|
+
* await Client.init({ mode: 'RESOURCE' })
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export interface ClientInitOptions {
|
|
30
|
+
/**
|
|
31
|
+
* The client initialization mode.
|
|
32
|
+
*
|
|
33
|
+
* Defaults to 'CORE' if not specified (for backwards compatibility).
|
|
34
|
+
*/
|
|
35
|
+
mode?: ClientMode;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Client runtime context
|
|
39
|
+
*/
|
|
40
|
+
export interface ClientRuntimeContext {
|
|
41
|
+
mode: ClientMode;
|
|
42
|
+
resourceName: string;
|
|
43
|
+
isInitialized: boolean;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get the current client runtime context
|
|
47
|
+
*/
|
|
48
|
+
export declare function getClientRuntimeContext(): ClientRuntimeContext | null;
|
|
49
|
+
/**
|
|
50
|
+
* Set the client runtime context
|
|
51
|
+
*
|
|
52
|
+
* @internal
|
|
53
|
+
*/
|
|
54
|
+
export declare function setClientRuntimeContext(ctx: ClientRuntimeContext): void;
|
|
55
|
+
/**
|
|
56
|
+
* Check if the client has been initialized
|
|
57
|
+
*/
|
|
58
|
+
export declare function isClientInitialized(): boolean;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Client Runtime Configuration
|
|
4
|
+
*
|
|
5
|
+
* Defines initialization modes and configuration for the client-side framework.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.getClientRuntimeContext = getClientRuntimeContext;
|
|
9
|
+
exports.setClientRuntimeContext = setClientRuntimeContext;
|
|
10
|
+
exports.isClientInitialized = isClientInitialized;
|
|
11
|
+
let runtimeContext = null;
|
|
12
|
+
/**
|
|
13
|
+
* Get the current client runtime context
|
|
14
|
+
*/
|
|
15
|
+
function getClientRuntimeContext() {
|
|
16
|
+
return runtimeContext;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Set the client runtime context
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
function setClientRuntimeContext(ctx) {
|
|
24
|
+
runtimeContext = ctx;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Check if the client has been initialized
|
|
28
|
+
*/
|
|
29
|
+
function isClientInitialized() {
|
|
30
|
+
var _a;
|
|
31
|
+
return (_a = runtimeContext === null || runtimeContext === void 0 ? void 0 : runtimeContext.isInitialized) !== null && _a !== void 0 ? _a : false;
|
|
32
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PlayerAppearance } from '../../../kernel/shared';
|
|
2
|
+
import { AppearanceService } from '../services/appearance.service';
|
|
3
|
+
export declare class AppearanceTestClientController {
|
|
4
|
+
private readonly appearanceService;
|
|
5
|
+
constructor(appearanceService: AppearanceService);
|
|
6
|
+
onApply(appearance: PlayerAppearance): Promise<void>;
|
|
7
|
+
onReset(): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.AppearanceTestClientController = void 0;
|
|
16
|
+
const tsyringe_1 = require("tsyringe");
|
|
17
|
+
const decorators_1 = require("../decorators");
|
|
18
|
+
const appearance_service_1 = require("../services/appearance.service");
|
|
19
|
+
let AppearanceTestClientController = class AppearanceTestClientController {
|
|
20
|
+
constructor(appearanceService) {
|
|
21
|
+
this.appearanceService = appearanceService;
|
|
22
|
+
}
|
|
23
|
+
async onApply(appearance) {
|
|
24
|
+
const ped = PlayerPedId();
|
|
25
|
+
await this.appearanceService.applyAppearance(ped, appearance);
|
|
26
|
+
}
|
|
27
|
+
onReset() {
|
|
28
|
+
const ped = PlayerPedId();
|
|
29
|
+
this.appearanceService.setDefaultAppearance(ped);
|
|
30
|
+
this.appearanceService.clearTattoos(ped);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
exports.AppearanceTestClientController = AppearanceTestClientController;
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, decorators_1.OnNet)('opencore:appearance:apply'),
|
|
36
|
+
__metadata("design:type", Function),
|
|
37
|
+
__metadata("design:paramtypes", [Object]),
|
|
38
|
+
__metadata("design:returntype", Promise)
|
|
39
|
+
], AppearanceTestClientController.prototype, "onApply", null);
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, decorators_1.OnNet)('opencore:appearance:reset'),
|
|
42
|
+
__metadata("design:type", Function),
|
|
43
|
+
__metadata("design:paramtypes", []),
|
|
44
|
+
__metadata("design:returntype", void 0)
|
|
45
|
+
], AppearanceTestClientController.prototype, "onReset", null);
|
|
46
|
+
exports.AppearanceTestClientController = AppearanceTestClientController = __decorate([
|
|
47
|
+
(0, decorators_1.Controller)(),
|
|
48
|
+
__param(0, (0, tsyringe_1.inject)(appearance_service_1.AppearanceService)),
|
|
49
|
+
__metadata("design:paramtypes", [appearance_service_1.AppearanceService])
|
|
50
|
+
], AppearanceTestClientController);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client-side service that syncs player health and armor from server state bags.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Listens to state bag changes from the server and applies them to the local player ped.
|
|
6
|
+
* This allows the server to control player health and armor through simple state bag updates.
|
|
7
|
+
*/
|
|
8
|
+
export declare class PlayerSyncController {
|
|
9
|
+
constructor();
|
|
10
|
+
private registerStateBagHandlers;
|
|
11
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PlayerSyncController = void 0;
|
|
13
|
+
const decorators_1 = require("../decorators");
|
|
14
|
+
/**
|
|
15
|
+
* Client-side service that syncs player health and armor from server state bags.
|
|
16
|
+
*
|
|
17
|
+
* @remarks
|
|
18
|
+
* Listens to state bag changes from the server and applies them to the local player ped.
|
|
19
|
+
* This allows the server to control player health and armor through simple state bag updates.
|
|
20
|
+
*/
|
|
21
|
+
let PlayerSyncController = class PlayerSyncController {
|
|
22
|
+
constructor() {
|
|
23
|
+
this.registerStateBagHandlers();
|
|
24
|
+
}
|
|
25
|
+
registerStateBagHandlers() {
|
|
26
|
+
// Sync health from server state bag to local ped
|
|
27
|
+
AddStateBagChangeHandler('health', '', (bagName, _key, value) => {
|
|
28
|
+
const entity = GetEntityFromStateBagName(bagName);
|
|
29
|
+
if (entity === 0)
|
|
30
|
+
return;
|
|
31
|
+
const playerPed = PlayerPedId();
|
|
32
|
+
if (entity !== playerPed)
|
|
33
|
+
return;
|
|
34
|
+
// Apply health to local ped
|
|
35
|
+
SetEntityHealth(entity, value);
|
|
36
|
+
});
|
|
37
|
+
// Sync armor from server state bag to local ped
|
|
38
|
+
AddStateBagChangeHandler('armor', '', (bagName, _key, value) => {
|
|
39
|
+
const entity = GetEntityFromStateBagName(bagName);
|
|
40
|
+
if (entity === 0)
|
|
41
|
+
return;
|
|
42
|
+
const playerPed = PlayerPedId();
|
|
43
|
+
if (entity !== playerPed)
|
|
44
|
+
return;
|
|
45
|
+
// Apply armor to local ped
|
|
46
|
+
SetPedArmour(entity, value);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
exports.PlayerSyncController = PlayerSyncController;
|
|
51
|
+
exports.PlayerSyncController = PlayerSyncController = __decorate([
|
|
52
|
+
(0, decorators_1.Controller)(),
|
|
53
|
+
__metadata("design:paramtypes", [])
|
|
54
|
+
], PlayerSyncController);
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ClassConstructor } from '../../../kernel/di/class-constructor';
|
|
2
|
+
export declare function getClientControllerRegistry(resourceName?: string): ClassConstructor[];
|
|
3
|
+
/**
|
|
4
|
+
* Marks a class as a Client Controller.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* This decorator:
|
|
8
|
+
* - Marks the class as `@injectable()` (tsyringe) for dependency injection.
|
|
9
|
+
* - Stores controller metadata identifying it as a `client` controller.
|
|
10
|
+
* - Adds the class to an internal registry so the runtime can discover it during bootstrap.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* @Client.Controller()
|
|
15
|
+
* export class HudController {
|
|
16
|
+
* constructor(private readonly notifications: NotificationService) {}
|
|
17
|
+
* }
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare function Controller(): (target: ClassConstructor) => void;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getClientControllerRegistry = getClientControllerRegistry;
|
|
4
|
+
exports.Controller = Controller;
|
|
5
|
+
const tsyringe_1 = require("tsyringe");
|
|
6
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
7
|
+
const clientControllerRegistryByResource = new Map();
|
|
8
|
+
function getCurrentResourceNameSafe() {
|
|
9
|
+
const fn = globalThis.GetCurrentResourceName;
|
|
10
|
+
if (typeof fn === 'function') {
|
|
11
|
+
const name = fn();
|
|
12
|
+
if (typeof name === 'string' && name.trim())
|
|
13
|
+
return name;
|
|
14
|
+
}
|
|
15
|
+
return 'default';
|
|
16
|
+
}
|
|
17
|
+
function getClientControllerRegistry(resourceName) {
|
|
18
|
+
const key = resourceName !== null && resourceName !== void 0 ? resourceName : getCurrentResourceNameSafe();
|
|
19
|
+
let registry = clientControllerRegistryByResource.get(key);
|
|
20
|
+
if (!registry) {
|
|
21
|
+
registry = new Set();
|
|
22
|
+
clientControllerRegistryByResource.set(key, registry);
|
|
23
|
+
}
|
|
24
|
+
return Array.from(registry);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Marks a class as a Client Controller.
|
|
28
|
+
*
|
|
29
|
+
* @remarks
|
|
30
|
+
* This decorator:
|
|
31
|
+
* - Marks the class as `@injectable()` (tsyringe) for dependency injection.
|
|
32
|
+
* - Stores controller metadata identifying it as a `client` controller.
|
|
33
|
+
* - Adds the class to an internal registry so the runtime can discover it during bootstrap.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```ts
|
|
37
|
+
* @Client.Controller()
|
|
38
|
+
* export class HudController {
|
|
39
|
+
* constructor(private readonly notifications: NotificationService) {}
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
function Controller() {
|
|
44
|
+
return (target) => {
|
|
45
|
+
(0, tsyringe_1.injectable)()(target);
|
|
46
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.CONTROLLER, { type: 'client' }, target);
|
|
47
|
+
const key = getCurrentResourceNameSafe();
|
|
48
|
+
let registry = clientControllerRegistryByResource.get(key);
|
|
49
|
+
if (!registry) {
|
|
50
|
+
registry = new Set();
|
|
51
|
+
clientControllerRegistryByResource.set(key, registry);
|
|
52
|
+
}
|
|
53
|
+
registry.add(target);
|
|
54
|
+
};
|
|
55
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exposes a method as a FiveM client export.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This decorator only stores metadata. During bootstrap, the framework registers the export so that
|
|
6
|
+
* other resources can call it via `exports['resourceName'][exportName](...)`.
|
|
7
|
+
*
|
|
8
|
+
* @param name - Optional export name. If omitted, the method name is used.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* @Client.Controller()
|
|
13
|
+
* export class UiExports {
|
|
14
|
+
* @Client.Export('setHudVisible')
|
|
15
|
+
* setHudVisible(visible: boolean) {
|
|
16
|
+
* // ...
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function Export(name?: string): (target: any, propertyKey: string) => void;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Export = Export;
|
|
4
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
5
|
+
/**
|
|
6
|
+
* Exposes a method as a FiveM client export.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* This decorator only stores metadata. During bootstrap, the framework registers the export so that
|
|
10
|
+
* other resources can call it via `exports['resourceName'][exportName](...)`.
|
|
11
|
+
*
|
|
12
|
+
* @param name - Optional export name. If omitted, the method name is used.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* @Client.Controller()
|
|
17
|
+
* export class UiExports {
|
|
18
|
+
* @Client.Export('setHudVisible')
|
|
19
|
+
* setHudVisible(visible: boolean) {
|
|
20
|
+
* // ...
|
|
21
|
+
* }
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
function Export(name) {
|
|
26
|
+
return (target, propertyKey) => {
|
|
27
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.EXPORT, { exportName: name || propertyKey }, target, propertyKey);
|
|
28
|
+
};
|
|
29
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { GameEventMap, GameEventName } from '../types/game-events';
|
|
2
2
|
/**
|
|
3
3
|
* Decorator for handling native game events from the RAGE engine.
|
|
4
4
|
*
|
|
@@ -44,4 +44,4 @@ export declare function OnGameEvent<K extends GameEventName>(eventName: K, optio
|
|
|
44
44
|
autoParse?: boolean;
|
|
45
45
|
}): (target: any, propertyKey: string) => void;
|
|
46
46
|
export type { GameEventName, GameEventMap };
|
|
47
|
-
export type { EntityDamageEvent, PlayerEnteredVehicleEvent, PlayerLeftVehicleEvent, SeenPedKilledEvent, VehicleUndrivableEvent,
|
|
47
|
+
export type { EntityDamageEvent, GunShotEvent, PlayerEnteredVehicleEvent, PlayerLeftVehicleEvent, SeenPedKilledEvent, VehicleUndrivableEvent, } from '../types/game-events';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers a method to be executed at a fixed interval (client-side).
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This decorator only stores metadata. During bootstrap, the framework schedules the method
|
|
6
|
+
* using the configured interval.
|
|
7
|
+
*
|
|
8
|
+
* Unlike {@link Tick} (every frame), `@Interval()` runs at a slower, fixed cadence.
|
|
9
|
+
*
|
|
10
|
+
* @param ms - Interval in milliseconds between executions.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* @Client.Controller()
|
|
15
|
+
* export class SyncController {
|
|
16
|
+
* @Client.Interval(1000)
|
|
17
|
+
* syncOncePerSecond() {
|
|
18
|
+
* // ...
|
|
19
|
+
* }
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare function Interval(ms: number): (target: any, propertyKey: string) => void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Interval = Interval;
|
|
4
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
5
|
+
/**
|
|
6
|
+
* Registers a method to be executed at a fixed interval (client-side).
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* This decorator only stores metadata. During bootstrap, the framework schedules the method
|
|
10
|
+
* using the configured interval.
|
|
11
|
+
*
|
|
12
|
+
* Unlike {@link Tick} (every frame), `@Interval()` runs at a slower, fixed cadence.
|
|
13
|
+
*
|
|
14
|
+
* @param ms - Interval in milliseconds between executions.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* @Client.Controller()
|
|
19
|
+
* export class SyncController {
|
|
20
|
+
* @Client.Interval(1000)
|
|
21
|
+
* syncOncePerSecond() {
|
|
22
|
+
* // ...
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
function Interval(ms) {
|
|
28
|
+
return (target, propertyKey) => {
|
|
29
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.INTERVAL, { interval: ms }, target, propertyKey);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import 'reflect-metadata';
|
|
2
|
+
/**
|
|
3
|
+
* Registers a method as a key mapping handler.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* This decorator only stores metadata. During bootstrap, the framework registers key mappings
|
|
7
|
+
* and binds the decorated method to the configured key.
|
|
8
|
+
*
|
|
9
|
+
* @param key - Key identifier (depends on the key-mapping layer used by the runtime).
|
|
10
|
+
* @param description - Human-friendly description (typically used in key mapping UIs).
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* @Client.Controller()
|
|
15
|
+
* export class InteractionController {
|
|
16
|
+
* @Client.KeyMapping('E', 'Interact')
|
|
17
|
+
* interact() {
|
|
18
|
+
* // ...
|
|
19
|
+
* }
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare function KeyMapping(key: string, description: string): (target: any, propertyKey: string) => void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeyMapping = KeyMapping;
|
|
4
|
+
require("reflect-metadata");
|
|
5
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
6
|
+
/**
|
|
7
|
+
* Registers a method as a key mapping handler.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* This decorator only stores metadata. During bootstrap, the framework registers key mappings
|
|
11
|
+
* and binds the decorated method to the configured key.
|
|
12
|
+
*
|
|
13
|
+
* @param key - Key identifier (depends on the key-mapping layer used by the runtime).
|
|
14
|
+
* @param description - Human-friendly description (typically used in key mapping UIs).
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* @Client.Controller()
|
|
19
|
+
* export class InteractionController {
|
|
20
|
+
* @Client.KeyMapping('E', 'Interact')
|
|
21
|
+
* interact() {
|
|
22
|
+
* // ...
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
function KeyMapping(key, description) {
|
|
28
|
+
return (target, propertyKey) => {
|
|
29
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.KEY, { key, description }, target, propertyKey);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers a method as a listener for a local (non-networked) client event.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This decorator only stores metadata. During bootstrap, the framework binds the method to the
|
|
6
|
+
* local event name.
|
|
7
|
+
*
|
|
8
|
+
* @param eventName - Local event name.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* @Client.Controller()
|
|
13
|
+
* export class UiController {
|
|
14
|
+
* @Client.OnLocalEvent('ui:toggle')
|
|
15
|
+
* toggleUi() {
|
|
16
|
+
* // ...
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function OnLocalEvent(eventName: string): (target: any, propertyKey: string) => void;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OnLocalEvent = OnLocalEvent;
|
|
4
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
5
|
+
/**
|
|
6
|
+
* Registers a method as a listener for a local (non-networked) client event.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* This decorator only stores metadata. During bootstrap, the framework binds the method to the
|
|
10
|
+
* local event name.
|
|
11
|
+
*
|
|
12
|
+
* @param eventName - Local event name.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* @Client.Controller()
|
|
17
|
+
* export class UiController {
|
|
18
|
+
* @Client.OnLocalEvent('ui:toggle')
|
|
19
|
+
* toggleUi() {
|
|
20
|
+
* // ...
|
|
21
|
+
* }
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
function OnLocalEvent(eventName) {
|
|
26
|
+
return (target, propertyKey) => {
|
|
27
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.LOCAL_EVENT, { eventName }, target, propertyKey);
|
|
28
|
+
};
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers a method as an NUI callback handler.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This decorator only stores metadata. During bootstrap, the framework binds the decorated method
|
|
6
|
+
* to the NUI callback event name.
|
|
7
|
+
*
|
|
8
|
+
* @param eventName - NUI callback name.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* @Client.Controller()
|
|
13
|
+
* export class SettingsController {
|
|
14
|
+
* @Client.NuiCallback('settings:save')
|
|
15
|
+
* saveSettings(payload: unknown) {
|
|
16
|
+
* // ...
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function NuiCallback(eventName: string): (target: any, propertyKey: string) => void;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NuiCallback = NuiCallback;
|
|
4
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
5
|
+
/**
|
|
6
|
+
* Registers a method as an NUI callback handler.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* This decorator only stores metadata. During bootstrap, the framework binds the decorated method
|
|
10
|
+
* to the NUI callback event name.
|
|
11
|
+
*
|
|
12
|
+
* @param eventName - NUI callback name.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* @Client.Controller()
|
|
17
|
+
* export class SettingsController {
|
|
18
|
+
* @Client.NuiCallback('settings:save')
|
|
19
|
+
* saveSettings(payload: unknown) {
|
|
20
|
+
* // ...
|
|
21
|
+
* }
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
function NuiCallback(eventName) {
|
|
26
|
+
return (target, propertyKey) => {
|
|
27
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.NUI, { eventName }, target, propertyKey);
|
|
28
|
+
};
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers a method as a client-side network event handler.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This decorator only stores metadata. During bootstrap, the framework scans controller methods
|
|
6
|
+
* and binds them to client net events.
|
|
7
|
+
*
|
|
8
|
+
* @param eventName - Network event name.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* @Client.Controller()
|
|
13
|
+
* export class UiController {
|
|
14
|
+
* @Client.OnNet('ui:setVisible')
|
|
15
|
+
* setVisible(isVisible: boolean) {
|
|
16
|
+
* // ...
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function OnNet(eventName: string): (target: any, propertyKey: string) => void;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OnNet = OnNet;
|
|
4
|
+
const metadata_client_keys_1 = require("../system/metadata-client.keys");
|
|
5
|
+
/**
|
|
6
|
+
* Registers a method as a client-side network event handler.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* This decorator only stores metadata. During bootstrap, the framework scans controller methods
|
|
10
|
+
* and binds them to client net events.
|
|
11
|
+
*
|
|
12
|
+
* @param eventName - Network event name.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* @Client.Controller()
|
|
17
|
+
* export class UiController {
|
|
18
|
+
* @Client.OnNet('ui:setVisible')
|
|
19
|
+
* setVisible(isVisible: boolean) {
|
|
20
|
+
* // ...
|
|
21
|
+
* }
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
function OnNet(eventName) {
|
|
26
|
+
return (target, propertyKey) => {
|
|
27
|
+
Reflect.defineMetadata(metadata_client_keys_1.METADATA_KEYS.NET_EVENT, { eventName }, target, propertyKey);
|
|
28
|
+
};
|
|
29
|
+
}
|