Sha256: 64deea129071cd9a44eba496fc90488ed91287a4a3baed7ab96e7dfd842ed298

Contents?: true

Size: 883 Bytes

Versions: 31

Compression:

Stored size: 883 Bytes

Contents

/* eslint-disable require-jsdoc */

class OptionAttachedInputsComponent {
  constructor(options = {}) {
    this.wrapperField = options.wrapperField;
    this.controllerFieldSelector = options.controllerFieldSelector;
    this.dependentInputSelector = options.dependentInputSelector;
    this.controllerSelector = this.wrapperField.find(this.controllerFieldSelector);
    this._bindEvent();
    this._run();
  }

  _run() {
    this.controllerSelector.each((idx, el) => {
      const $field = $(el);
      const enabled = $field.is(":checked");

      $field.parents("div.collection-input").find(this.dependentInputSelector).prop("disabled", !enabled);
    });
  }

  _bindEvent() {
    this.controllerSelector.on("change", () => {
      this._run();
    });
  }
}

export default function createOptionAttachedInputs(options) {
  return new OptionAttachedInputsComponent(options);
}

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
decidim-forms-0.27.9 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.8 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.7 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.6 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.10 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.9 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.5 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.8 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.4 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.3 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.7 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.5 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.2 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.1 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.4 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.0 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.3 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.0.rc2 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.27.0.rc1 app/packs/src/decidim/forms/option_attached_inputs.component.js
decidim-forms-0.26.2 app/packs/src/decidim/forms/option_attached_inputs.component.js