{"version":3,"file":"share-button.js","mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,2BAA2B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,yBAAyB;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA,yBAAyB;AACzB;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,iCAAiC;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,2BAA2B;AACvD;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,CAAC","sources":["webpack://nv-base-template/./src/js/share-button.js"],"sourcesContent":["/**\r\n * Share Button\r\n * @description : Functionality to share the page\r\n */\r\n\r\n(function () {\r\n var shareButtonEls = document.querySelectorAll('.js-share-button');\r\n\r\n if (shareButtonEls.length) {\r\n\r\n var modalEl = document.querySelector('.js-share-modal');\r\n var modalContentEl = modalEl.querySelector('.js-share-modal__content');\r\n var modalHeadingEl = modalEl.querySelector('.js-share-modal__heading');\r\n var modalCloseEl = modalEl.querySelector('.js-share-modal__close');\r\n var modalUrlValueEl = modalEl.querySelector('.js-share-modal__url-value');\r\n var modalPlatformLinkEls = modalEl.querySelectorAll('.js-share-modal__platform-link');\r\n\r\n for (var i = 0; i < shareButtonEls.length; i++) {\r\n (function (shareButtonEl) {\r\n shareButtonEl.addEventListener('click', function () {\r\n\r\n var sharingTitle = shareButtonEl.getAttribute('data-title') ||\r\n document.querySelector('meta[property=\"og:title\"]').content ||\r\n document.title;\r\n\r\n var sharingUrl = shareButtonEl.getAttribute('data-url') ||\r\n document.querySelector('meta[property=\"og:url\"]').content ||\r\n document.location;\r\n\r\n var shareModalHeading = shareButtonEl.getAttribute('data-modal-heading') ||\r\n 'Share this page';\r\n\r\n var isMobileSizeScreen = window.matchMedia(`(max-width: ${window.breakpoints['md']}px)`).matches;\r\n\r\n if (navigator.share && isMobileSizeScreen) {\r\n // Native sharing controls\r\n\r\n navigator.share({\r\n title: sharingTitle,\r\n url: sharingUrl\r\n }).then(() => {\r\n console.log('Thanks for sharing!');\r\n }).catch(console.error);\r\n\r\n } else {\r\n // Fallback sharing controls\r\n\r\n if (!modalEl.hasAttribute('hidden')) {\r\n modalEl.setAttribute('hidden', '');\r\n return;\r\n }\r\n\r\n modalHeadingEl.textContent = shareModalHeading;\r\n modalUrlValueEl.value = sharingUrl;\r\n\r\n for (var i = 0; i < modalPlatformLinkEls.length; i++) {\r\n var modalPlatformLinkEl = modalPlatformLinkEls[i];\r\n modalPlatformLinkEl.target = modalPlatformLinkEl.getAttribute('data-target');\r\n modalPlatformLinkEl.href = modalPlatformLinkEl.getAttribute('data-base-href') + encodeURIComponent(sharingUrl);\r\n }\r\n\r\n modalEl.removeAttribute('hidden');\r\n }\r\n });\r\n })(shareButtonEls[i]);\r\n }\r\n\r\n document.body.addEventListener('mousedown', function (e) {\r\n if (modalContentEl.contains(e.target)) {\r\n return;\r\n }\r\n for (var i = 0; i < shareButtonEls.length; i++) {\r\n if (shareButtonEls[i].contains(e.target)) {\r\n return;\r\n }\r\n }\r\n modalEl.setAttribute('hidden', '');\r\n });\r\n\r\n modalCloseEl.addEventListener('click', function () {\r\n modalEl.setAttribute('hidden', '');\r\n });\r\n\r\n }\r\n\r\n})();\r\n"],"names":[],"sourceRoot":""}