Sha256: 873d9b1641a1351f52598138ea78f2d646b2c594caffd833ae093848337b10f3

Contents?: true

Size: 757 Bytes

Versions: 1

Compression:

Stored size: 757 Bytes

Contents

export class VBaseComponent {
    constructor(element, mdcComponent) {
        this.element = element;
        this.mdcComponent = mdcComponent;
    }

    validate(formData) {
        return true;
    }
}

export function hookupComponents(selector, VoomClass, MdcClass) {

    const components = document.querySelectorAll(selector);
    for (let i = 0; i < components.length; i++) {
        const component = components[i];
        if (!component.mdcComponent) {
            let mdcInstance = null;
            if (MdcClass != null) {
                mdcInstance = new MdcClass(component);
            }
            if (!component.vComponent) {
                component.vComponent = new VoomClass(component, mdcInstance);
            }
        }
    }
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
voom-presenters-0.2.0 views/mdc/assets/js/components/base-component.js