{"version":3,"sources":["webpack:///./plugins/copy-text/js/copy-text.js","webpack:///./node_modules/ui-core/plugins/copy-text/js/copy-text.js"],"names":["UX","copyText","additionalCopyDataFormat","copyData","replace","$target","$toggle","init","$","control","document","on","this","off","copyLink","$wrapper","closest","length","find","html","test","text","is","copyMultiText","each","$this","textarea","createElement","id","style","height","value","body","appendChild","range","selection","selector","querySelector","navigator","userAgent","match","setAttribute","createRange","selectNodeContents","window","getSelection","removeAllRanges","addRange","setSelectionRange","removeAttribute","select","execCommand","removeChild","focus"],"mappings":"2FAAA,cACiBA,GAAGC,SAEXC,yBAA2B,SAAUC,GAC1C,OAAOA,EAASC,QAAQ,eAAgB,MAAMA,QAAQ,WAAY,O,kBCJtE,IACQH,IAAW,CACXI,QAAS,KACTC,QAAS,KAETC,KAAM,SAANA,OACIN,EAASK,QAAUE,EAAE,cACrBP,EAASI,QAAUG,EAAE,eACrBP,EAASQ,WAGbA,QAAS,SAATA,UACID,EAAEE,UAAUC,GAAG,mBAAoB,cAAc,WAC7CV,EAASK,QAAUE,EAAEI,MACrBX,EAASK,QAAQO,IAAI,YACrBZ,EAASa,eAIjBA,SAAU,SAAVA,WACI,IAAIC,EAAWd,EAASK,QAAQU,QAAQ,uBACpCb,EAAW,GACf,GAAIY,EAASE,SACThB,EAASI,QAAUU,EAASG,KAAK,eACjCf,EAAWF,EAASI,QAAQc,OACxB,qBAAqBC,KAAKnB,EAASI,QAAQc,UAC3ChB,EAAWF,EAASI,QAAQgB,QAI5BpB,EAASI,QAAQiB,GAAG,mBAChBP,EAASG,KAAK,qBAAqBD,QACnChB,EAASI,QAAUU,EAASG,KAAK,qBACjCf,EAAWF,EAASI,QAAQc,OAExB,qBAAqBC,KAAKnB,EAASI,QAAQc,UAC3ChB,EAAWF,EAASI,QAAQgB,SAEzBN,EAASG,KAAK,cAAcD,SACnChB,EAASI,QAAUU,EAASG,KAAK,cACjCf,EAAWF,EAASI,QAAQc,OAExB,qBAAqBC,KAAKnB,EAASI,QAAQc,UAC3ChB,EAAWF,EAASI,QAAQgB,SAIhCpB,EAASI,QAAQY,OAAS,IAAG,CAC7B,IAAIM,EAAgB,GACpBtB,EAASI,QAAQmB,MAAK,WAClB,IAAIC,EAAQjB,EAAEI,MAEV,qBAAqBQ,KAAKK,EAAMN,QAChCI,GAAiBE,EAAMJ,OAAS,OAEhCE,GAAiBE,EAAMN,OAAS,UAGxChB,EAAWoB,EAKvBpB,EAAWF,EAASC,yBAAyBC,GAE7C,IAAMuB,EAAWhB,SAASiB,cAAc,YACxCD,EAASE,GAAK,eACdF,EAASG,MAAMC,OAAS,EACxBJ,EAASK,MAAQ5B,EAEjBO,SAASsB,KAAKC,YAAYP,GAC1B,IAEIQ,EACAC,EAHAC,EAAW1B,SAAS2B,cAAc,iBAIlCC,UAAUC,UAAUC,MAAM,sBAC1BJ,EAASK,aAAa,WAAY,KAElCP,EAAQxB,SAASgC,eACXC,mBAAmBP,IACzBD,EAAYS,OAAOC,gBACTC,kBACVX,EAAUY,SAASb,GACnBE,EAASY,kBAAkB,EAAG,QAE9BZ,EAASa,gBAAgB,aAEzBb,EAASc,SAEbxC,SAASyC,YAAY,QACrBzC,SAASsB,KAAKoB,YAAY1B,GAC1BzB,EAASK,QAAQ+C,SAErBnD,yBAA0B,SAA1BA,yBAAoCC,GAChC,OAAOA,IAIfH,GAAGC,SAAWA","file":"js/copyText-9d13c481c64de1097723.js","sourcesContent":["import 'ui-core/plugins/copy-text/js/copy-text';\nconst copyText = UX.copyText;\n\ncopyText.additionalCopyDataFormat = function (copyData) {\n return copyData.replace(/( ){2}/g, ' ').replace(/(&)/g, '&');\n};\n","(function () {\n var copyText = {\n $target: null,\n $toggle: null,\n\n init: function () {\n copyText.$toggle = $('.copy__btn');\n copyText.$target = $('.copy__text');\n copyText.control();\n },\n\n control: function () {\n $(document).on('click touchstart', '.copy__btn', function () {\n copyText.$toggle = $(this);\n copyText.$toggle.off('focusout');\n copyText.copyLink();\n });\n },\n\n copyLink: function () {\n let $wrapper = copyText.$toggle.closest('.copy__text-wrapper'),\n copyData = '';\n if ($wrapper.length) {\n copyText.$target = $wrapper.find('.copy__text');\n copyData = copyText.$target.html();\n if (/<\\/?[a-z][\\s\\S]*>/i.test(copyText.$target.html())) {\n copyData = copyText.$target.text();\n }\n\n // copy export citation content\n if (copyText.$target.is('.csl-response')) {\n if ($wrapper.find('.csl-right-inline').length) {\n copyText.$target = $wrapper.find('.csl-right-inline');\n copyData = copyText.$target.html();\n\n if (/<\\/?[a-z][\\s\\S]*>/i.test(copyText.$target.html())) {\n copyData = copyText.$target.text();\n }\n } else if ($wrapper.find('.csl-entry').length) {\n copyText.$target = $wrapper.find('.csl-entry');\n copyData = copyText.$target.html();\n\n if (/<\\/?[a-z][\\s\\S]*>/i.test(copyText.$target.html())) {\n copyData = copyText.$target.text();\n }\n }\n\n if (copyText.$target.length > 1) {\n let copyMultiText = '';\n copyText.$target.each(function () {\n let $this = $(this);\n\n if (/<\\/?[a-z][\\s\\S]*>/i.test($this.html())) {\n copyMultiText += $this.text() + '\\n\\n';\n } else {\n copyMultiText += $this.html() + '\\n\\n';\n }\n });\n copyData = copyMultiText;\n }\n }\n }\n\n copyData = copyText.additionalCopyDataFormat(copyData);\n\n const textarea = document.createElement('textarea');\n textarea.id = 'temp_element';\n textarea.style.height = 0;\n textarea.value = copyData;\n\n document.body.appendChild(textarea);\n let selector = document.querySelector('#temp_element');\n\n let range;\n let selection;\n if (navigator.userAgent.match(/ipad|ipod|iphone/i)) {\n selector.setAttribute('readonly', '');\n\n range = document.createRange();\n range.selectNodeContents(selector);\n selection = window.getSelection();\n selection.removeAllRanges();\n selection.addRange(range);\n selector.setSelectionRange(0, 999999);\n\n selector.removeAttribute('readonly');\n } else {\n selector.select();\n }\n document.execCommand('copy');\n document.body.removeChild(textarea);\n copyText.$toggle.focus();\n },\n additionalCopyDataFormat: function (copyData) {\n return copyData;\n },\n };\n\n UX.copyText = copyText; // add to global namespace\n})();\n"],"sourceRoot":""}