{"version":3,"sources":["webpack:///./app/javascript/packs/webShare.js","webpack:///./node_modules/web-share-wrapper/dist/web-share-wrapper.umd.js"],"names":["module","exports","classCallCheck","instance","Constructor","TypeError","createClass","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","protoProps","staticProps","prototype","inherits","subClass","superClass","create","constructor","value","setPrototypeOf","__proto__","possibleConstructorReturn","self","call","ReferenceError","_CustomElement","Reflect","construct","HTMLElement","this","WebShareWrapper","_CustomElement2","_this","getPrototypeOf","webShare","navigator","templateId","getTemplateId","template","document","getElementById","removeChildren","clone","importNode","content","appendChild","text","createTextNode","getAttribute","button","createElement","share","bind","event","_this2","preventDefault","shareOptions","title","getTitle","getText","url","getUrl","then","successfulShare","catch","error","abortedShare","addEventListener","removeEventListener","options","CustomEvent","dispatchEvent","detail","querySelector","textContent","canonicalElement","window","location","href","firstChild","removeChild","customElements","get","define","factory"],"mappings":"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","file":"js/webShare-41814e7c1db5a73fce30.chunk.js","sourcesContent":["import 'web-share-wrapper';\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global.WebShareWrapper = factory());\n}(this, (function () { 'use strict';\n\n var classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n };\n\n var createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n var inherits = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n };\n\n var possibleConstructorReturn = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n };\n\n function _CustomElement() {\n return Reflect.construct(HTMLElement, [], this.__proto__.constructor);\n }\n Object.setPrototypeOf(_CustomElement.prototype, HTMLElement.prototype);\n Object.setPrototypeOf(_CustomElement, HTMLElement);\n\n var WebShareWrapper = function (_CustomElement2) {\n inherits(WebShareWrapper, _CustomElement2);\n\n function WebShareWrapper() {\n classCallCheck(this, WebShareWrapper);\n\n var _this = possibleConstructorReturn(this, (WebShareWrapper.__proto__ || Object.getPrototypeOf(WebShareWrapper)).call(this));\n\n _this.webShare = 'share' in navigator;\n if (_this.webShare) {\n var templateId = _this.getTemplateId();\n if (templateId !== null) {\n var template = document.getElementById(templateId);\n if (!template) {\n return possibleConstructorReturn(_this);\n }\n _this.removeChildren();\n var clone = document.importNode(template.content, true);\n _this.appendChild(clone);\n } else {\n _this.text = document.createTextNode(_this.getAttribute('text') || 'Share');\n _this.button = document.createElement('button');\n _this.button.appendChild(_this.text);\n _this.removeChildren();\n _this.appendChild(_this.button);\n }\n _this.share = _this.share.bind(_this);\n }\n return _this;\n }\n\n createClass(WebShareWrapper, [{\n key: 'share',\n value: function share(event) {\n var _this2 = this;\n\n event.preventDefault();\n var shareOptions = {\n title: this.getTitle(),\n text: this.getText(),\n url: this.getUrl()\n };\n navigator.share(shareOptions).then(function () {\n return _this2.successfulShare(shareOptions);\n }).catch(function (error) {\n return _this2.abortedShare(error, shareOptions);\n });\n }\n }, {\n key: 'connectedCallback',\n value: function connectedCallback() {\n if (this.webShare) {\n this.addEventListener('click', this.share);\n }\n }\n }, {\n key: 'disconnectedCallback',\n value: function disconnectedCallback() {\n if (this.webShare) {\n this.removeEventListener('click', this.share);\n }\n }\n }, {\n key: 'successfulShare',\n value: function successfulShare(options) {\n var event = new CustomEvent('share-success', options);\n this.dispatchEvent(event, {\n detail: options\n });\n }\n }, {\n key: 'abortedShare',\n value: function abortedShare(error, options) {\n options['error'] = error;\n var event = new CustomEvent('share-failure', {\n detail: options\n });\n this.dispatchEvent(event);\n }\n }, {\n key: 'getTitle',\n value: function getTitle() {\n return this.getAttribute('sharetitle');\n }\n }, {\n key: 'getText',\n value: function getText() {\n return this.getAttribute('sharetext') || document.querySelector('title').textContent;\n }\n }, {\n key: 'getUrl',\n value: function getUrl() {\n if (this.getAttribute('shareurl')) {\n return this.getAttribute('shareurl');\n }\n var canonicalElement = document.querySelector('link[rel=canonical]');\n if (canonicalElement !== null) {\n return canonicalElement.getAttribute('href');\n }\n return window.location.href;\n }\n }, {\n key: 'getTemplateId',\n value: function getTemplateId() {\n return this.getAttribute('template');\n }\n }, {\n key: 'removeChildren',\n value: function removeChildren() {\n while (this.firstChild) {\n this.removeChild(this.firstChild);\n }\n }\n }]);\n return WebShareWrapper;\n }(_CustomElement);\n\n if ('customElements' in window && !customElements.get('web-share-wrapper')) {\n customElements.define('web-share-wrapper', WebShareWrapper);\n }\n\n return WebShareWrapper;\n\n})));\n"],"sourceRoot":""}