Lets the user override default configuration values and saves them as user data.
Optional
Update state and local storage with new value
Deserialize an element and set the current element state to the deserialized one
The element serialization as returned by the serialize method
When the component is disconnected from the DOM all the callbacks will be unregistered
all preferences of a group for easy usage in the template.
Hide the component (display: none).
Convert the string in parameter with uHtml and return it. This allows to convert a string with html in a right html object. For example, htmlUnsafe('
NOTE REG: We cannot just use truthy here, because javascript comparaison table is really problematic. For example: 0 == false [] == false "" == false And there are cases where we want to check null or undefined, because 0 can be a right value. More here : https://dorey.github.io/JavaScript-Equality-Table/
If necessary, change/update options of select elements right before they're shown.
Reset user preferences back to defaults. This will delete the configOverrides object in storage and set the current state back to the defaults from config.json
Called when user changes a preference in the panel
Re-Render the component. The method should be called when the component has already been rendered and needs to be updated.
Render the component's template.
Renders a hidden span with the name of the component. Useful to render a placeholder for not visible component.
Returns the serialization of the current element. This method should be overwritten by child classes
An object describing the current element serialized
Show the component (display: block).
In the templates, sometimes for accessibility reasons, we have to support the KeyDown Event In those case, we often juste want to do the same as the click event when Enter or Space is pressed Then this method can be used : it just calls the click event on the same element
Subscribes with to the state changes made on
Unsubscribe all callbacks