Creates a new instance of the Module class.
Optional
initialProps: StaticProps & ChangeablePropsThe initial static and changeable properties to be used by the module.
Whether to automatically initialize the module after construction. Set this to false
if you want to add responsive properties before initializing.
Checks if the module has been destroyed.
Checks if the module has been initialized.
The name of the module, derived from the class name
Optional prefix for class names used by the module
The current properties of the module, which include both static and changeable properties. These can be retrieved dynamically during the module's lifecycle.
Adds a custom callback to the module.
Adds a DOM event listener that will be automatically removed when the module is destroyed.
The target element for the event listener.
The event type to listen for (e.g., 'click', 'resize').
The callback function to execute when the event is triggered.
Optional
options: boolean | AddEventListenerOptionsAdditional options for the event listener.
Adds responsive property rules to the module. This must be done before initialization.
The responsive property rules to be added.
Adds a viewport callback that will be automatically removed when the module is destroyed.
The viewport target (e.g., width or height).
The callback function to execute when the viewport target changes.
Additional data for the callback.
A base class for modules that handle responsive properties, event listeners, and custom callbacks. This class provides a structure for modules that can dynamically respond to viewport changes, property mutations, and various lifecycle events.
Example