Sha256: 47402107e9b17ebdf42b1d0920f3a2a0d110a38e70ea90f8753399a2b8f5fc18

Contents?: true

Size: 1.49 KB

Versions: 389

Compression:

Stored size: 1.49 KB

Contents

const dialogHelper = () => {
  const openTrigger = document.querySelectorAll("[data-open-dialog]");
  const closeTrigger = document.querySelectorAll("[data-close-dialog]");
  const dialogs = document.querySelectorAll(".pb_dialog_rails")

  openTrigger.forEach((open) => {
    open.addEventListener("click", () => {
      var openTriggerData = open.dataset.openDialog;
      var targetDialog = document.getElementById(openTriggerData)
      if (targetDialog.open) return;
      targetDialog.showModal();
    });
  });

  closeTrigger.forEach((close) => {
    close.addEventListener("click", () => {
      var closeTriggerData = close.dataset.closeDialog;
      document.getElementById(closeTriggerData).close();
    });
  });

  // Close dialog box on outside click
  dialogs.forEach((dialogElement) => {
    dialogElement.addEventListener("mousedown", (event) => {
      const dialogParentDataset = dialogElement.parentElement.dataset
      if (dialogParentDataset.overlayClick === "overlay_close") return

      const dialogModal = event.target.getBoundingClientRect()
      const clickedOutsideDialogModal = event.clientX < dialogModal.left ||
                                        event.clientX > dialogModal.right ||
                                        event.clientY < dialogModal.top ||
                                        event.clientY > dialogModal.bottom

      if (clickedOutsideDialogModal) {
        dialogElement.close()
        event.stopPropagation()
      }
    })
  })
};

export default dialogHelper;

Version data entries

389 entries across 389 versions & 1 rubygems

Version Path
playbook_ui-14.3.0.pre.rc.7 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.3.0.pre.rc.6 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.3.0.pre.rc.5 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.3.0.pre.rc.4 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.20240828cikubedbump3702 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.3.0.pre.rc.3 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.PBNTR431fixingduplicatingtextareaclassname3689 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.3.0.pre.rc.2 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.PLAY1516railsiconsfixedwidth3674 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.PBNTR479removeextraspacingfromradiochildren3671 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.3.0.pre.rc.1 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.PBNTR479removeextraspacingfromradiochildren3669 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.pbntr373enablekitsforradio3665 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1.pre.alpha.bugfixforactionrc3663 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.0.pre.alpha.PLAY15063653 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.0.pre.alpha.PLAY15063645 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.1 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.0.pre.alpha.PLAY15063640 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.0.pre.alpha.PLAY15063639 app/pb_kits/playbook/pb_dialog/dialogHelper.js
playbook_ui-14.2.0.pre.alpha.PLAY15063638 app/pb_kits/playbook/pb_dialog/dialogHelper.js