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:
-
keyStringKey
Returns:
Associated object or full options hash
getOptions
()
Alias for get
key
-
key
Return OptionsManager based on sub-object retrieved by key.
Parameters:
-
keyStringKey
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:
-
optionsObjectOptions 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:
-
optionsObjectOptions to be patched
-
overrides...ObjectOptions to overwrite
Returns:
source
patch
-
options
Patch options with provided patches. Triggers change event on the object.
Parameters:
-
optionsObjectPatch 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