Class: TrayMenuService
Makaio Framework / services-core / TrayMenuService
Class: TrayMenuService
Section titled “Class: TrayMenuService”Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:37
In-memory registry for package-contributed tray menu entries.
Registrations are idempotent and keyed by owning package. The service owns
tray menu state for every host surface; renderers consume it through the
host:tray.list RPC and observe mutations through host:tray.changed.
Extends
Section titled “Extends”BaseService
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new TrayMenuService(
bus):TrayMenuService
Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:61
Create a tray menu service.
Parameters
Section titled “Parameters”Bus instance used for tray menu subjects
Returns
Section titled “Returns”TrayMenuService
Overrides
Section titled “Overrides”BaseService.constructor
Properties
Section titled “Properties”
protectedreadonlybus:IMakaioBus
Defined in: ../../../packages/services/base/src/base-service.ts:39
Bus instance used for registering handlers
Inherited from
Section titled “Inherited from”BaseService.bus
critical
Section titled “critical”
readonlystaticcritical:true
Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:40
readonlystaticneeds: readonly []
Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:39
Dependency tokens required before this service.
Accessors
Section titled “Accessors”initialized
Section titled “initialized”Get Signature
Section titled “Get Signature”get initialized():
boolean
Defined in: ../../../packages/services/base/src/base-service.ts:47
Whether the service has been successfully initialized.
Returns true after init() completes and before destroy() is called.
Returns
Section titled “Returns”boolean
true if initialized, false otherwise
Inherited from
Section titled “Inherited from”BaseService.initialized
Methods
Section titled “Methods”addCleanup()
Section titled “addCleanup()”
protectedaddCleanup(fn):void
Defined in: ../../../packages/services/base/src/base-service.ts:143
Enqueue an arbitrary cleanup function to be called on destroy().
Use for non-handler resources (timers, external subscriptions, etc.).
Parameters
Section titled “Parameters”() => void | Promise<void>
Function to invoke during teardown
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”BaseService.addCleanup
destroy()
Section titled “destroy()”destroy():
Promise<void>
Defined in: ../../../packages/services/base/src/base-service.ts:89
Destroy the service and unsubscribe all registered handlers.
Calls the optional onDestroy() hook before running cleanups, then
resets the initialized flag. Safe to call multiple times (idempotent).
Returns
Section titled “Returns”Promise<void>
Promise that resolves after teardown completes
Inherited from
Section titled “Inherited from”BaseService.destroy
init()
Section titled “init()”init():
Promise<void>
Defined in: ../../../packages/services/base/src/base-service.ts:57
Initialize the service.
Delegates to onInit() once; subsequent calls are no-ops (idempotent).
Returns
Section titled “Returns”Promise<void>
Promise that resolves when initialization is complete
Inherited from
Section titled “Inherited from”BaseService.init
onDestroy()
Section titled “onDestroy()”
protectedonDestroy():void
Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:107
Optional service teardown hook.
Called by destroy() before automatic handler unsubscription.
Implement only when there are resources beyond bus handlers to clean up
(e.g., stopping trackers, clearing maps, releasing external handles).
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”BaseService.onDestroy
onInit()
Section titled “onInit()”
protectedonInit():void
Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:65
Service initialization hook.
Called once by init(). Register bus handlers via registerHandler()
and other cleanup resources via addCleanup() here.
Returns
Section titled “Returns”void
Promise or void — async is allowed
Overrides
Section titled “Overrides”BaseService.onInit
registerHandler()
Section titled “registerHandler()”
protectedregisterHandler<S>(subject,handler):void
Defined in: ../../../packages/services/base/src/base-service.ts:129
Register a bus handler and enqueue its unsubscribe function for teardown.
Equivalent to this._cleanups.push(this.bus.on(subject, handler)).
Type Parameters
Section titled “Type Parameters”S extends SubjectDefinition
Parameters
Section titled “Parameters”subject
Section titled “subject”S
The subject definition to listen on
handler
Section titled “handler”HandlerForSubjectDefinition<S>
Handler function for the subject
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”BaseService.registerHandler
create()
Section titled “create()”
staticcreate(ctx):Promise<TrayMenuService>
Defined in: ../../../packages/services/core/src/tray-menu/tray-menu-service.ts:47
Factory for DI container startup.
Parameters
Section titled “Parameters”Start context providing the bus
Returns
Section titled “Returns”Promise<TrayMenuService>
Initialized TrayMenuService instance