Index signature for dynamic property access
Hook called after setting scene list - for customization
Hook called before setting scene list - for customization
Observable map of scenes indexed by scene ID
Computed property that returns an array of all scenes
Array of all scenes in the store
Setter for scenes indexed by ID
Map of scenes to set
Activates multiple scenes concurrently
This method activates multiple scenes in parallel using Promise.all.
Array of scene IDs to activate
Activates a scene by triggering its action
This method finds the scene by ID and calls its trigger method, which will activate the scene across all its associated nodes.
The ID of the scene to activate
Dynamically adds an observable property to the store
This method adds a new observable property to the store and automatically creates getter and setter methods for it. The property name is capitalized for the getter/setter methods.
The name of the property to add
The initial value for the property
Creates a new scene in the store
This method creates a new scene with the provided data, makes it observable, and sets up interceptors for its operations. If no ID is provided, a timestamp-based ID is generated.
Scene data to create
The created scene object
Retrieves a scene by its ID
The ID of the scene to retrieve
The scene object or null if not found
Sets the entire scene list, replacing all existing scenes
This method replaces all scenes in the store with the provided array. Each scene is made observable and has interceptors set up.
Array of scenes to set
Synchronizes scenes from specified nodes
This action method:
Array of node IDs to sync scenes from
Updates a scene by ID without making it observable
The scene ID
The scene object to set
SceneStore - Manages scene operations and state for ESP Rainmaker CDF
This store handles all scene-related operations including:
SceneStore
Implements