{"version":3,"sources":["webpack:///./node_modules/web-social-share/dist/esm/web-social-share.entry.js"],"names":["__webpack_require__","r","__webpack_exports__","d","WebSocialShare","_index_fe4613c7_js__WEBPACK_IMPORTED_MODULE_0__","isMobile","window","matchMedia","matches","staticOpenNewWindow","urlString","self","top","open","shareEncodedUrl","socialShareUrl","encodeURIComponent","location","href","shareFacebook","async","attrs","socialShareType","socialShareVia","socialShareRedirectUri","socialShareTo","socialShareDisplay","socialShareRef","socialShareFrom","socialShareSource","socialSharePopupWidth","socialSharePopupHeight","innerHeight","innerWidth","socialShareQuote","socialShareMobileiframe","socialShareHashtags","shareTwitter","socialShareText","email","socialShareBody","socialShareSubject","socialShareCc","socialShareBcc","linkedin","socialShareDescription","pinterest","socialShareMedia","reddit","socialShareSubreddit","whatsapp","mobile","copy","navigator","clipboard","writeText","err","console","error","hackernews","telegram","webSocialShareCss","[object Object]","hostRef","Object","this","closed","refContainer","classList","add","setTimeout","show","remove","emit","$event","attributes","action","stopPropagation","hide","class","ref","el","onClick","renderTargets","_a","share","config","map","renderButtons","facebook","renderButton","twitter","slotName","defaultBrandName","handleShare","name","renderName","displayAttributes","displayNames","brandName","style"],"mappings":"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","file":"js/chunk-2d0abe1b.8e5d64ff.js","sourcesContent":["import { r as registerInstance, c as createEvent, h, g as getElement } from './index-fe4613c7.js';\n\n// Same implementation as in class @deckdeckgo/utils\nconst isMobile = () => {\n return window === null || window === void 0 ? void 0 : window.matchMedia('(any-pointer:coarse)').matches;\n};\nconst staticOpenNewWindow = (urlString) => {\n if (window.self !== window.top) {\n window.open(urlString, '_blank');\n }\n else {\n window.open(urlString, '_self');\n }\n};\nconst shareEncodedUrl = (socialShareUrl) => {\n return encodeURIComponent(socialShareUrl || window.location.href);\n};\n\n/**\n * Source: https://github.com/720kb/angular-socialshare/blob/master/dist/angular-socialshare.js\n */\nconst shareFacebook = async (attrs) => {\n let urlString;\n if (attrs.socialShareType && attrs.socialShareType === 'feed') {\n // if user specifies that they want to use the Facebook feed dialog\n //(https://developers.facebook.com/docs/sharing/reference/feed-dialog/v2.4)\n urlString = 'https://www.facebook.com/dialog/feed?';\n if (attrs.socialShareVia) {\n urlString += '&app_id=' + encodeURIComponent(attrs.socialShareVia);\n }\n if (attrs.socialShareRedirectUri) {\n urlString += '&redirect_uri=' + encodeURIComponent(attrs.socialShareRedirectUri);\n }\n if (attrs.socialShareUrl) {\n urlString += '&link=' + shareEncodedUrl(attrs.socialShareUrl);\n }\n if (attrs.socialShareTo) {\n urlString += '&to=' + encodeURIComponent(attrs.socialShareTo);\n }\n if (attrs.socialShareDisplay) {\n urlString += '&display=' + encodeURIComponent(attrs.socialShareDisplay);\n }\n if (attrs.socialShareRef) {\n urlString += '&ref=' + encodeURIComponent(attrs.socialShareRef);\n }\n if (attrs.socialShareFrom) {\n urlString += '&from=' + encodeURIComponent(attrs.socialShareFrom);\n }\n if (attrs.socialShareSource) {\n urlString += '&source=' + encodeURIComponent(attrs.socialShareSource);\n }\n window.open(urlString, 'Facebook', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n }\n else if (attrs.socialShareType && attrs.socialShareType === 'share') {\n // if user specifies that they want to use the Facebook share dialog\n //(https://developers.facebook.com/docs/sharing/reference/share-dialog)\n urlString = 'https://www.facebook.com/dialog/share?';\n if (attrs.socialShareVia) {\n urlString += '&app_id=' + encodeURIComponent(attrs.socialShareVia);\n }\n if (attrs.socialShareRedirectUri) {\n urlString += '&redirect_uri=' + encodeURIComponent(attrs.socialShareRedirectUri);\n }\n if (attrs.socialShareUrl) {\n urlString += '&href=' + shareEncodedUrl(attrs.socialShareUrl);\n }\n if (attrs.socialShareQuote) {\n urlString += '"e=' + encodeURIComponent(attrs.socialShareQuote);\n }\n if (attrs.socialShareDisplay) {\n urlString += '&display=' + encodeURIComponent(attrs.socialShareDisplay);\n }\n if (attrs.socialShareMobileiframe) {\n urlString += '&mobile_iframe=' + encodeURIComponent(attrs.socialShareMobileiframe);\n }\n if (attrs.socialShareHashtags) {\n urlString += '&hashtag=' + encodeURIComponent(attrs.socialShareHashtags);\n }\n window.open(urlString, 'Facebook', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n }\n else if (attrs.socialShareType && attrs.socialShareType === 'send') {\n // if user specifies that they want to use the Facebook send dialog\n //(https://developers.facebook.com/docs/sharing/reference/send-dialog)\n urlString = 'https://www.facebook.com/dialog/send?';\n if (attrs.socialShareVia) {\n urlString += '&app_id=' + encodeURIComponent(attrs.socialShareVia);\n }\n if (attrs.socialShareRedirectUri) {\n urlString += '&redirect_uri=' + encodeURIComponent(attrs.socialShareRedirectUri);\n }\n if (attrs.socialShareUrl) {\n urlString += '&link=' + shareEncodedUrl(attrs.socialShareUrl);\n }\n if (attrs.socialShareTo) {\n urlString += '&to=' + encodeURIComponent(attrs.socialShareTo);\n }\n if (attrs.socialShareDisplay) {\n urlString += '&display=' + encodeURIComponent(attrs.socialShareDisplay);\n }\n window.open(urlString, 'Facebook', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n }\n else {\n //otherwise default to using sharer.php\n window.open('https://www.facebook.com/sharer/sharer.php?u=' + shareEncodedUrl(attrs.socialShareUrl), 'Facebook', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n }\n};\n\nconst shareTwitter = async (attrs) => {\n let urlString = 'https://www.twitter.com/intent/tweet?';\n if (attrs.socialShareText) {\n urlString += 'text=' + encodeURIComponent(attrs.socialShareText);\n }\n if (attrs.socialShareVia) {\n urlString += '&via=' + encodeURIComponent(attrs.socialShareVia);\n }\n if (attrs.socialShareHashtags) {\n urlString += '&hashtags=' + encodeURIComponent(attrs.socialShareHashtags);\n }\n //default to the current page if a URL isn't specified\n urlString += '&url=' + shareEncodedUrl(attrs.socialShareUrl);\n if (isMobile()) {\n staticOpenNewWindow(urlString);\n }\n else {\n window.open(urlString, 'Twitter', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n }\n};\n\nconst email = async (attrs) => {\n let urlString = 'mailto:';\n if (attrs.socialShareTo) {\n urlString += encodeURIComponent(attrs.socialShareTo);\n }\n urlString += '?';\n if (attrs.socialShareBody) {\n urlString += 'body=' + encodeURIComponent(attrs.socialShareBody);\n }\n if (attrs.socialShareSubject) {\n urlString += '&subject=' + encodeURIComponent(attrs.socialShareSubject);\n }\n if (attrs.socialShareCc) {\n urlString += '&cc=' + encodeURIComponent(attrs.socialShareCc);\n }\n if (attrs.socialShareBcc) {\n urlString += '&bcc=' + encodeURIComponent(attrs.socialShareBcc);\n }\n staticOpenNewWindow(urlString);\n};\n\nconst linkedin = async (attrs) => {\n let urlString = 'https://www.linkedin.com/shareArticle?mini=true';\n urlString += '&url=' + shareEncodedUrl(attrs.socialShareUrl);\n if (attrs.socialShareText) {\n urlString += '&title=' + encodeURIComponent(attrs.socialShareText);\n }\n if (attrs.socialShareDescription) {\n urlString += '&summary=' + encodeURIComponent(attrs.socialShareDescription);\n }\n if (attrs.socialShareSource) {\n urlString += '&source=' + encodeURIComponent(attrs.socialShareSource);\n }\n window.open(urlString, 'Linkedin', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n};\n\nconst pinterest = async (attrs) => {\n window.open('https://www.pinterest.com/pin/create/button/?url=' +\n shareEncodedUrl(attrs.socialShareUrl) +\n '&media=' +\n encodeURIComponent(attrs.socialShareMedia) +\n '&description=' +\n encodeURIComponent(attrs.socialShareText), 'Pinterest', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n};\n\nconst reddit = async (attrs) => {\n let urlString = 'https://www.reddit.com/';\n if (attrs.socialShareSubreddit) {\n urlString += 'r/' + attrs.socialShareSubreddit + '/submit?url=';\n }\n else {\n urlString += 'submit?url=';\n }\n /*-\n * Reddit isn't responsive and at default width for our popups (500 x 500), everything is messed up.\n * So, overriding the width if it is less than 900 (played around to settle on this) and height if\n * it is less than 650px.\n */\n if (attrs.socialSharePopupWidth < 900) {\n attrs.socialSharePopupWidth = 900;\n }\n if (attrs.socialSharePopupHeight < 650) {\n attrs.socialSharePopupHeight = 650;\n }\n window.open(urlString + shareEncodedUrl(attrs.socialShareUrl) + '&title=' + encodeURIComponent(attrs.socialShareText), 'Reddit', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n};\n\nconst whatsapp = async (attrs) => {\n const mobile = isMobile();\n let urlString = mobile ? 'https://api.whatsapp.com/send?text=' : 'https://web.whatsapp.com/send?text=';\n if (attrs.socialShareText) {\n urlString += encodeURIComponent(attrs.socialShareText) + '%0A';\n }\n //default to the current page if a URL isn't specified\n urlString += shareEncodedUrl(attrs.socialShareUrl);\n if (mobile) {\n staticOpenNewWindow(urlString);\n }\n else {\n window.open(urlString, 'WhatsApp', 'toolbar=0,status=0,resizable=yes,width=' +\n attrs.socialSharePopupWidth +\n ',height=' +\n attrs.socialSharePopupHeight +\n ',top=' +\n (window.innerHeight - attrs.socialSharePopupHeight) / 2 +\n ',left=' +\n (window.innerWidth - attrs.socialSharePopupWidth) / 2);\n }\n};\n\nconst copy = async (attrs) => {\n try {\n await navigator.clipboard.writeText(attrs.socialShareUrl || window.location.href);\n }\n catch (err) {\n console.error('Well it seems that copy is not supported by this browser');\n }\n};\n\nconst hackernews = async (attrs) => {\n let urlString = 'https://news.ycombinator.com/submitlink?u=';\n //default to the current page if a URL isn't specified\n urlString += shareEncodedUrl(attrs.socialShareUrl);\n if (attrs.socialShareText) {\n urlString += '&t=' + encodeURIComponent(attrs.socialShareText);\n }\n staticOpenNewWindow(urlString);\n};\n\nconst telegram = async (attrs) => {\n let urlString = `https://t.me/share/url?url=${shareEncodedUrl(attrs.socialShareUrl)}`;\n if (attrs.socialShareText) {\n urlString += `&text=${encodeURIComponent(attrs.socialShareText)}`;\n }\n staticOpenNewWindow(urlString);\n};\n\nconst webSocialShareCss = \"div.web-social-share{visibility:hidden;opacity:0;cursor:pointer;touch-action:manipulation}div.web-social-share.web-social-share-open{visibility:visible;opacity:1}div.web-social-share.web-social-share-open div.web-social-share-backdrop{opacity:var(--web-social-share-backdrop-opacity, 0.25)}div.web-social-share.web-social-share-open div.web-social-share-action-sheet{opacity:1}div.web-social-share.web-social-share-open div.web-social-share-action-sheet div.web-social-share-action-sheet-container div.web-social-share-action-sheet-group{height:var(--web-social-share-height, 80px)}@media (max-width: 540px){div.web-social-share.web-social-share-open div.web-social-share-action-sheet div.web-social-share-action-sheet-container div.web-social-share-action-sheet-group{height:var(--web-social-share-height-small-device, 140px)}}div.web-social-share.web-social-share-open.web-social-share-transition-close div.web-social-share-backdrop{opacity:0}div.web-social-share.web-social-share-open.web-social-share-transition-close div.web-social-share-action-sheet div.web-social-share-action-sheet-container div.web-social-share-action-sheet-group{height:0}div.web-social-share div.web-social-share-backdrop{opacity:0;transition:opacity 0.1s linear;background-color:var(--web-social-share-backdrop-background, black);z-index:var(--web-social-share-zindex, 1000);transform:translate3d(0, 0, 2px);left:0;top:0;position:fixed;height:100%;width:100%}div.web-social-share div.web-social-share-action-sheet{left:0;right:0;top:0;bottom:0;margin:auto;position:fixed;z-index:calc(var(--web-social-share-zindex, 1000) + 1);transform:translate3d(0, 0, 3px);width:100%;max-width:540px}@media (min-width: 540px){div.web-social-share div.web-social-share-action-sheet div.web-social-share-action-sheet-container div.web-social-share-action-sheet-group{border-radius:var(--web-social-share-action-sheet-group-border-radius, 8px 8px 0 0)}}div.web-social-share div.web-social-share-action-sheet div.web-social-share-action-sheet-container{display:flex;flex-flow:column;justify-content:flex-end;height:100%;max-height:100%}div.web-social-share div.web-social-share-action-sheet div.web-social-share-action-sheet-container div.web-social-share-action-sheet-group{box-shadow:var(--web-social-share-action-sheet-group-box-shadow, 0 0 8px 4px rgba(0, 0, 0, 0.1));z-index:calc(var(--web-social-share-zindex, 1000) + 10);transform:translate3d(0, 0, 10px);background:var(--web-social-share-action-sheet-group-background, #fafafa);display:flex;justify-content:center;flex-wrap:wrap;height:0;transition-timing-function:cubic-bezier(0.36, 0.66, 0.04, 1);transition:height 0.2s ease-in}@media (max-width: 540px){div.web-social-share div.web-social-share-action-sheet div.web-social-share-action-sheet-container div.web-social-share-action-sheet-group{justify-content:flex-start}}div.web-social-share div.web-social-share-target{margin:auto;width:var(--web-social-share-target-width, 4rem);height:var(--web-social-share-target-height, 3rem);display:flex;flex-direction:column;align-items:center;justify-content:center}div.web-social-share div.web-social-share-target button{position:relative;cursor:pointer;border:0;background:transparent;width:var(--web-social-share-button-width, 100%);height:var(--web-social-share-button-height, 100%);font-size:var(--web-social-share-button-font-size)}div.web-social-share div.web-social-share-target p{margin:var(--web-social-share-brand-margin, 2px 0);color:var(--web-social-share-brand-color, inherit);font-size:var(--web-social-share-brand-font-size, 0.6rem)}div.web-social-share div.web-social-share-target div.web-social-share-button-icon{margin:0;display:flex;flex-direction:column;justify-content:center;align-items:center}::slotted([slot=facebook]),::slotted([slot=twitter]),::slotted([slot=email]),::slotted([slot=linkedin]),::slotted([slot=pinterest]),::slotted([slot=reddit]),::slotted([slot=whatsapp]),::slotted([slot=copy]),::slotted([slot=hackernews]){display:none}\";\n\nconst WebSocialShare = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.closed = createEvent(this, \"closed\", 7);\n }\n hide() {\n if (this.refContainer) {\n this.refContainer.classList.add('web-social-share-transition-close');\n setTimeout(() => {\n // Reflect css animation speed 400ms, see css\n this.show = false;\n this.refContainer.classList.remove('web-social-share-transition-close');\n this.closed.emit();\n }, 200);\n }\n else {\n // Well we don't find the action sheet, we could mark it as not displayed\n this.show = false;\n this.closed.emit();\n }\n }\n async handleShare($event, attributes, action) {\n $event.stopPropagation();\n await action(attributes);\n this.hide();\n }\n render() {\n return (h(\"div\", { class: this.show ? 'web-social-share web-social-share-open' : 'web-social-share web-social-share-close', ref: (el) => (this.refContainer = el) }, h(\"div\", { class: \"web-social-share-backdrop\", onClick: () => this.hide() }), h(\"div\", { class: \"web-social-share-action-sheet\", onClick: () => this.hide() }, h(\"div\", { class: \"web-social-share-action-sheet-container\" }, h(\"div\", { class: \"web-social-share-action-sheet-group\" }, this.renderTargets())))));\n }\n renderTargets() {\n var _a;\n if (!((_a = this.share) === null || _a === void 0 ? void 0 : _a.config)) {\n return undefined;\n }\n return this.share.config.map((config) => (h(\"div\", { class: \"web-social-share-target\" }, this.renderButtons(config))));\n }\n renderButtons(share) {\n if (share.facebook) {\n return this.renderButton(share.facebook, 'facebook', shareFacebook, 'Facebook');\n }\n else if (share.twitter) {\n return this.renderButton(share.twitter, 'twitter', shareTwitter, 'Twitter');\n }\n else if (share.email) {\n return this.renderButton(share.email, 'email', email, 'Email');\n }\n else if (share.linkedin) {\n return this.renderButton(share.linkedin, 'linkedin', linkedin, 'Linkedin');\n }\n else if (share.pinterest) {\n return this.renderButton(share.pinterest, 'pinterest', pinterest, 'Pinterest');\n }\n else if (share.reddit) {\n return this.renderButton(share.reddit, 'reddit', reddit, 'Reddit');\n }\n else if (share.whatsapp) {\n return this.renderButton(share.whatsapp, 'whatsapp', whatsapp, 'WhatsApp');\n }\n else if (share.copy) {\n return this.renderButton(share.copy, 'copy', copy, 'Copy');\n }\n else if (share.hackernews) {\n return this.renderButton(share.hackernews, 'hackernews', hackernews, 'Hacker News');\n }\n else if (share.telegram) {\n return this.renderButton(share.telegram, 'telegram', telegram, 'Telegram');\n }\n return undefined;\n }\n renderButton(attributes, slotName, action, defaultBrandName) {\n return (h(\"button\", { onClick: ($event) => this.handleShare($event, attributes, action), class: \"web-social-share-button\" }, h(\"div\", { class: \"web-social-share-button-icon\" }, h(\"slot\", { name: slotName })), this.renderName(attributes, defaultBrandName)));\n }\n renderName(displayAttributes, defaultBrandName) {\n if (this.share.displayNames) {\n return (h(\"p\", null, displayAttributes && displayAttributes.brandName && displayAttributes.brandName !== ''\n ? displayAttributes.brandName\n : defaultBrandName));\n }\n return undefined;\n }\n get el() { return getElement(this); }\n};\nWebSocialShare.style = webSocialShareCss;\n\nexport { WebSocialShare as web_social_share };\n"],"sourceRoot":""}