1 import {Component} from './component';
3 export class TagManager extends Component {
6 this.addRemoveComponentEl = this.$refs.addRemove;
7 this.container = this.$el;
8 this.rowSelector = this.$opts.rowSelector;
10 this.setupListeners();
14 this.container.addEventListener('input', event => {
15 /** @var {AddRemoveRows} * */
16 const addRemoveComponent = window.$components.firstOnElement(this.addRemoveComponentEl, 'add-remove-rows');
17 if (!this.hasEmptyRows() && event.target.value) {
18 addRemoveComponent.add();
24 const rows = this.container.querySelectorAll(this.rowSelector);
25 const firstEmpty = [...rows].find(row => [...row.querySelectorAll('input')].filter(input => input.value).length === 0);
26 return firstEmpty !== undefined;