Class Module<StaticProps, ChangeableProps, CallbacksTypes>

Module base

Type Parameters

Hierarchy

Constructors

  • Type Parameters

    Parameters

    • Optional initialProps: StaticProps & ChangeableProps

      Initial properties

    • canInit: boolean = true

      Defines if you need to call init at the constructor's end. If you want to add responsive properties, set this parameter to false.

    Returns Module<StaticProps, ChangeableProps, CallbacksTypes>

    Example

    interface IStaticProps extends NModule.IStaticProps {
    staticName: 'My name';
    }

    interface IChangeableProps extends NModule.IChangeableProps {
    weight: number;
    height: number;
    }

    interface ICallbacks extends NModule.ICallbacksTypes {}

    const module = new Module<IStaticProps, IChangeableProps, ICallbacks>(
    {
    staticName: 'My name',
    weight: 70,
    height: 175,
    },
    false
    );

    module.addResponsiveProps({
    breakpoint: 'viewport_phone',
    settings: {
    weight: 80,
    },
    });

    module.init();

    module.addCallback('propsMutate', () => console.log('mutate props'));

    module.addCallback('destroy', () => console.log('destroy'));

Properties

Vevet Application

_callbacks: Callbacks<CallbacksTypes>

Module Callbacks

_classNamesToRemove: IClassNamesToRemove[]

Classnames to remove

_destroyableActions: (() => void)[]

Destroyable actions

Type declaration

    • (): void
    • Returns void

_isDestroyed: boolean = false

The module is destroyed

_isInitialized: boolean = false

The module is initialized

_listeners: IAddEventListener[]

Module listeners

_mutableProps: MutableProps<StaticProps, ChangeableProps>

Responsive properties

Accessors

  • get props(): TRequiredModuleProp<StaticProps & ChangeableProps>
  • Current properties

    Returns TRequiredModuleProp<StaticProps & ChangeableProps>

Methods

  • Get Default properties (should be extended)

    Returns DeepRequired<StaticProps & ChangeableProps>

  • Add destroyable actions

    Parameters

    • action: (() => void)
        • (): void
        • Returns void

    Returns void

  • Add a DOM event listener

    Type Parameters

    • El extends ListenerElement

    • Target extends keyof HTMLElementEventMap

    • Callback extends ((evt) => void)

    Parameters

    • el: El
    • target: Target
    • callback: Callback
    • Optional options: IAddEventListenerOptions

    Returns IAddEventListener

  • Change module properties

    Parameters

    • props: Partial<ChangeableProps>

    Returns void

  • Toggle classList

    Parameters

    • element: Element
    • className: string
    • isActive: boolean

    Returns void