{"version":3,"file":"index-HKjC9lnU.js","sources":["../../../node_modules/vue-social-sharing/src/social-sharing-network.js","../../../node_modules/vue-social-sharing/src/social-sharing.js","../../../node_modules/vue-social-sharing/src/index.js"],"sourcesContent":["export default {\n functional: true,\n\n props: {\n network: {\n type: String,\n default: ''\n }\n },\n\n render: (createElement, context) => {\n const network = context.parent._data.baseNetworks[context.props.network];\n\n if (!network) {\n return console.warn(`Network ${context.props.network} does not exist`);\n }\n\n return createElement(context.parent.networkTag, {\n staticClass: context.data.staticClass || null,\n staticStyle: context.data.staticStyle || null,\n class: context.data.class || null,\n style: context.data.style || null,\n attrs: {\n id: context.data.attrs.id || null,\n tabindex: context.data.attrs.tabindex || 0,\n 'data-link': network.type === 'popup'\n ? '#share-' + context.props.network\n : context.parent.createSharingUrl(context.props.network),\n 'data-action': network.type === 'popup' ? null : network.action\n },\n on: {\n click: network.type === 'popup' ? () => {\n context.parent.share(context.props.network);\n } : () => {\n context.parent.touch(context.props.network);\n }\n }\n }, context.children);\n }\n};\n","import SocialSharingNetwork from './social-sharing-network';\nimport BaseNetworks from './networks.json';\nimport Vue from 'vue';\n\nconst inBrowser = typeof window !== 'undefined';\nlet $window = inBrowser ? window : null;\n\nexport function mockWindow (self) {\n $window = self || window; // mock window for unit testing\n}\n\nexport default {\n props: {\n /**\n * URL to share.\n * @var string\n */\n url: {\n type: String,\n default: inBrowser ? window.location.href : ''\n },\n\n /**\n * Sharing title, if available by network.\n * @var string\n */\n title: {\n type: String,\n default: ''\n },\n\n /**\n * Sharing description, if available by network.\n * @var string\n */\n description: {\n type: String,\n default: ''\n },\n\n /**\n * Facebook quote\n * @var string\n */\n quote: {\n type: String,\n default: ''\n },\n\n /**\n * Twitter hashtags\n * @var string\n */\n hashtags: {\n type: String,\n default: ''\n },\n\n /**\n * Twitter user.\n * @var string\n */\n twitterUser: {\n type: String,\n default: ''\n },\n\n /**\n * Flag that indicates if counts should be retrieved.\n * - NOT WORKING IN CURRENT VERSION\n * @var mixed\n */\n withCounts: {\n type: [String, Boolean],\n default: false\n },\n\n /**\n * Google plus key.\n * @var string\n */\n googleKey: {\n type: String,\n default: undefined\n },\n\n /**\n * Pinterest Media URL.\n * Specifies the image/media to be used.\n */\n media: {\n type: String,\n default: ''\n },\n\n /**\n * Network sub component tag.\n * Default to span tag\n */\n networkTag: {\n type: String,\n default: 'span'\n },\n\n /**\n * Additional or overridden networks.\n * Default to BaseNetworks\n */\n networks: {\n type: Object,\n default: function () {\n return {};\n }\n }\n },\n\n data () {\n return {\n /**\n * Available sharing networks.\n * @param object\n */\n baseNetworks: BaseNetworks,\n\n /**\n * Popup settings.\n * @param object\n */\n popup: {\n status: false,\n resizable: true,\n toolbar: false,\n menubar: false,\n scrollbars: false,\n location: false,\n directories: false,\n width: 626,\n height: 436,\n top: 0,\n left: 0,\n window: undefined,\n interval: null\n }\n };\n },\n\n methods: {\n /**\n * Returns generated sharer url.\n *\n * @param network Social network key.\n */\n createSharingUrl (network) {\n const ua = navigator.userAgent.toLowerCase();\n\n /**\n * On IOS, SMS sharing link need a special formating\n * Source: https://weblog.west-wind.com/posts/2013/Oct/09/Prefilling-an-SMS-on-Mobile-Devices-with-the-sms-Uri-Scheme#Body-only\n */\n if (network === 'sms' && (ua.indexOf('iphone') > -1 || ua.indexOf('ipad') > -1)) {\n network += '_ios';\n }\n\n let url = this.baseNetworks[network].sharer;\n\n /**\n * On IOS, Twitter sharing shouldn't include a hashtag parameter if the hashtag value is empty\n * Source: https://github.com/nicolasbeauvais/vue-social-sharing/issues/143\n */\n if (network === 'twitter' && this.hashtags.length === 0) {\n url = url.replace('&hashtags=@hashtags', '');\n }\n\n return url\n .replace(/@url/g, encodeURIComponent(this.url))\n .replace(/@title/g, encodeURIComponent(this.title))\n .replace(/@description/g, encodeURIComponent(this.description))\n .replace(/@quote/g, encodeURIComponent(this.quote))\n .replace(/@hashtags/g, this.generateHashtags(network, this.hashtags))\n .replace(/@media/g, this.media)\n .replace(/@twitteruser/g, this.twitterUser ? '&via=' + this.twitterUser : '');\n },\n /**\n * Encode hashtags for the specified social network.\n *\n * @param network Social network key\n * @param hashtags All hashtags specified\n */\n generateHashtags (network, hashtags) {\n if (network === 'facebook' && hashtags.length > 0) {\n return '%23' + hashtags.split(',')[0];\n }\n\n return hashtags;\n },\n /**\n * Shares URL in specified network.\n *\n * @param network Social network key.\n */\n share (network) {\n this.openSharer(network, this.createSharingUrl(network));\n\n this.$root.$emit('social_shares_open', network, this.url);\n this.$emit('open', network, this.url);\n },\n\n /**\n * Touches network and emits click event.\n *\n * @param network Social network key.\n */\n touch (network) {\n window.open(this.createSharingUrl(network), '_self');\n\n this.$root.$emit('social_shares_open', network, this.url);\n this.$emit('open', network, this.url);\n },\n\n /**\n * Opens sharer popup.\n *\n * @param network Social network key\n * @param url Url to share.\n */\n openSharer (network, url) {\n // If a popup window already exist it will be replaced, trigger a close event.\n let popupWindow = null;\n if (popupWindow && this.popup.interval) {\n clearInterval(this.popup.interval);\n\n popupWindow.close();// Force close (for Facebook)\n\n this.$root.$emit('social_shares_change', network, this.url);\n this.$emit('change', network, this.url);\n }\n\n popupWindow = window.open(\n url,\n 'sharer',\n 'status=' + (this.popup.status ? 'yes' : 'no') +\n ',height=' + this.popup.height +\n ',width=' + this.popup.width +\n ',resizable=' + (this.popup.resizable ? 'yes' : 'no') +\n ',left=' + this.popup.left +\n ',top=' + this.popup.top +\n ',screenX=' + this.popup.left +\n ',screenY=' + this.popup.top +\n ',toolbar=' + (this.popup.toolbar ? 'yes' : 'no') +\n ',menubar=' + (this.popup.menubar ? 'yes' : 'no') +\n ',scrollbars=' + (this.popup.scrollbars ? 'yes' : 'no') +\n ',location=' + (this.popup.location ? 'yes' : 'no') +\n ',directories=' + (this.popup.directories ? 'yes' : 'no')\n );\n\n popupWindow.focus();\n\n // Create an interval to detect popup closing event\n this.popup.interval = setInterval(() => {\n if (!popupWindow || popupWindow.closed) {\n clearInterval(this.popup.interval);\n\n popupWindow = undefined;\n\n this.$root.$emit('social_shares_close', network, this.url);\n this.$emit('close', network, this.url);\n }\n }, 500);\n }\n },\n\n /**\n * Merge base networks list with user's list\n */\n beforeMount () {\n this.baseNetworks = Vue.util.extend(this.baseNetworks, this.networks);\n },\n\n /**\n * Sets popup default dimensions.\n */\n mounted () {\n if (!inBrowser) {\n return;\n }\n\n /**\n * Center the popup on dual screens\n * http://stackoverflow.com/questions/4068373/center-a-popup-window-on-screen/32261263\n */\n const dualScreenLeft = $window.screenLeft !== undefined ? $window.screenLeft : screen.left;\n const dualScreenTop = $window.screenTop !== undefined ? $window.screenTop : screen.top;\n\n const width = $window.innerWidth ? $window.innerWidth : (document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width);\n const height = $window.innerHeight ? $window.innerHeight : (document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height);\n\n this.popup.left = ((width / 2) - (this.popup.width / 2)) + dualScreenLeft;\n this.popup.top = ((height / 2) - (this.popup.height / 2)) + dualScreenTop;\n },\n\n /**\n * Set component aliases for buttons and links.\n */\n components: {\n 'network': SocialSharingNetwork\n }\n};\n","import SocialSharing from './social-sharing';\n\nSocialSharing.version = '2.4.7';\n\nSocialSharing.install = (Vue) => {\n Vue.component('social-sharing', SocialSharing);\n};\n\nif (typeof window !== 'undefined') {\n window.SocialSharing = SocialSharing;\n}\n\nexport default SocialSharing;\n"],"names":["SocialSharingNetwork","createElement","context","network","inBrowser","$window","SocialSharing","BaseNetworks","ua","url","hashtags","popupWindow","Vue","dualScreenLeft","dualScreenTop","width","height"],"mappings":"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","x_google_ignoreList":[0,1,2]}