click()

in ui/src/main/frontend/js/cms.labelfield.js [23:52]


      click(event) {
        event.preventDefault();
        event.stopPropagation();
        const context = this;
        const tmp = document.createElement('span');
        const val = context.querySelector('.labelfield__field input').value;
        let found = false;
        const title = context.querySelector(`option[value="${val}"]`).innerText;
        tmp.innerHTML = context.querySelector('.labelfield__template').innerHTML;
        context.querySelectorAll('.labelfield__item input').forEach((el) => {
          if (el.value === val) {
            found = true;
          }
        });
        if (found) {
          return;
        }
        tmp.querySelector('input').value = val;
        tmp.querySelector('.labelfield__item').title = val;

        if (title !== '') {
          tmp.querySelector('.labelfield__title').innerText = title;
          tmp.childNodes.forEach(c => {
            const child = c.cloneNode(true);
            this.closest('.labelfield').querySelector('.labelfield__container').appendChild(child);
          });
          tmp.remove();
          context.querySelector('.labelfield__field input').value = '';
        }
      },