Core.OptionsManager Class
samsara/core/OptionsManager.js:14
A utility for setting options in a class that enables patching options
with prescribed defaults and emitting change
events when options are changed.
Recursively defined for nested options objects.
Note: only JSONable objects are allowed, so no functions.
Constructor
Item Index
Methods
"on"
-
type
-
handler
Adds a handler to the type
channel which will be executed on emit
.
get
-
key
Look up options value by key or get the full options hash.
Parameters:
-
key
StringKey
Returns:
Associated object or full options hash
getOptions
()
Alias for get
key
-
key
Return OptionsManager based on sub-object retrieved by key
.
Parameters:
-
key
StringKey
Returns:
Value
off
-
type
-
handler
Removes the handler
from the type
channel.
This undoes the work of on
.
OptionsManager.patch
-
options
-
patch
Constructor method. Create OptionsManager from source dictionary with arguments overriden by patch dictionary.
Parameters:
-
options
ObjectOptions to be patched
-
patch
...ObjectOptions to overwrite
Returns:
source
OptionsManager.patch
-
options
-
overrides
Constructor method. Convenience method to set options with defaults on an object instance.
Parameters:
-
options
ObjectOptions to be patched
-
overrides
...ObjectOptions to overwrite
Returns:
source
patch
-
options
Patch options with provided patches. Triggers change
event on the object.
Parameters:
-
options
ObjectPatch options
Returns:
this
set
-
key
-
value
Set key to value. Outputs change
event if a value is overwritten.
Returns:
Updated OptionsManager
setOptions
()
Alias for patch