1(()=>{"use strict";var e={857:e=>{var t=function(e){var t;return!!e&&"object"==typeof e&&"[object RegExp]"!==(t=Object.prototype.toString.call(e))&&"[object Date]"!==t&&e.$$typeof!==r},r="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?o(Array.isArray(e)?[]:{},e,t):e}function s(e,t,r){return e.concat(t).map(function(e){return n(e,r)})}function i(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function a(e,t){try{return t in e}catch(e){return!1}}function o(e,r,l){(l=l||{}).arrayMerge=l.arrayMerge||s,l.isMergeableObject=l.isMergeableObject||t,l.cloneUnlessOtherwiseSpecified=n;var c,u,h=Array.isArray(r);return h!==Array.isArray(e)?n(r,l):h?l.arrayMerge(e,r,l):(u={},(c=l).isMergeableObject(e)&&i(e).forEach(function(t){u[t]=n(e[t],c)}),i(r).forEach(function(t){(!a(e,t)||Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))&&(a(e,t)&&c.isMergeableObject(r[t])?u[t]=(function(e,t){if(!t.customMerge)return o;var r=t.customMerge(e);return"function"==typeof r?r:o})(t,c)(e[t],r[t],c):u[t]=n(r[t],c))}),u)}o.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,r){return o(e,r,t)},{})},e.exports=o}},t={};function r(n){var s=t[n];if(void 0!==s)return s.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{var e=r(857),t=r.n(e);class n{static ucFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}static lcFirst(e){return e.charAt(0).toLowerCase()+e.slice(1)}static toDashCase(e){return e.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(e,t){let r=n.toUpperCamelCase(e,t);return n.lcFirst(r)}static toUpperCamelCase(e,t){return t?e.split(t).map(e=>n.ucFirst(e.toLowerCase())).join(""):n.ucFirst(e.toLowerCase())}static parsePrimitive(e){try{return/^\d+(.|,)\d+$/.test(e)&&(e=e.replace(",",".")),JSON.parse(e)}catch(t){return e.toString()}}}class s{static isNode(e){return"object"==typeof e&&null!==e&&(e===document||e===window||e instanceof Node)}static hasAttribute(e,t){if(!s.isNode(e))throw Error("The element must be a valid HTML Node!");return"function"==typeof e.hasAttribute&&e.hasAttribute(t)}static getAttribute(e,t){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(r&&!1===s.hasAttribute(e,t))throw Error('The required property "'.concat(t,'" does not exist!'));if("function"!=typeof e.getAttribute){if(r)throw Error("This node doesn't support the getAttribute function!");return}return e.getAttribute(t)}static getDataAttribute(e,t){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2],i=t.replace(/^data(|-)/,""),a=n.toLowerCamelCase(i,"-");if(!s.isNode(e)){if(r)throw Error("The passed node is not a valid HTML Node!");return}if(void 0===e.dataset){if(r)throw Error("This node doesn't support the dataset attribute!");return}let o=e.dataset[a];if(void 0===o){if(r)throw Error('The required data attribute "'.concat(t,'" does not exist on ').concat(e,"!"));return o}return n.parsePrimitive(o)}static querySelector(e,t){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(r&&!s.isNode(e))throw Error("The parent node is not a valid HTML Node!");let n=e.querySelector(t)||!1;if(r&&!1===n)throw Error('The required element "'.concat(t,'" does not exist in parent node!'));return n}static querySelectorAll(e,t){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(r&&!s.isNode(e))throw Error("The parent node is not a valid HTML Node!");let n=e.querySelectorAll(t);if(0===n.length&&(n=!1),r&&!1===n)throw Error('At least one item of "'.concat(t,'" must exist in parent node!'));return n}static getFocusableElements(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document.body;return e.querySelectorAll('\n input:not([tabindex^="-"]):not([disabled]):not([type="hidden"]),\n select:not([tabindex^="-"]):not([disabled]),\n textarea:not([tabindex^="-"]):not([disabled]),\n button:not([tabindex^="-"]):not([disabled]),\n a[href]:not([tabindex^="-"]):not([disabled]),\n [tabindex]:not
1([tabindex^="-"]):not([disabled])\n ')}static getFirstFocusableElement(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document.body;return this.getFocusableElements(e)[0]}static getLastFocusableElement(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,t=this.getFocusableElements(e);return t[t.length-1]}}class i{publish(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=new CustomEvent(e,{detail:t,cancelable:r});return this.el.dispatchEvent(n),n}subscribe(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this,s=e.split("."),i=r.scope?t.bind(r.scope):t;if(r.once&&!0===r.once){let t=i;i=function(r){n.unsubscribe(e),t(r)}}return this.el.addEventListener(s[0],i),this.listeners.push({splitEventName:s,opts:r,cb:i}),!0}unsubscribe(e){let t=e.split(".");return this.listeners=this.listeners.reduce((e,r)=>([...r.splitEventName].sort().toString()===t.sort().toString()?this.el.removeEventListener(r.splitEventName[0],r.cb):e.push(r),e),[]),!0}reset(){return this.listeners.forEach(e=>{this.el.removeEventListener(e.splitEventName[0],e.cb)}),this.listeners=[],!0}get el(){return this._el}set el(e){this._el=e}get listeners(){return this._listeners}set listeners(e){this._listeners=e}constructor(e=document){this._el=e,e.$emitter=this,this._listeners=[]}}class a{init(){throw Error('The "init" method for the plugin "'.concat(this._pluginName,'" is not defined.'))}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(e){let r=n.toDashCase(this._pluginName),i=s.getDataAttribute(this.el,"data-".concat(r,"-config"),!1),a=s.getAttribute(this.el,"data-".concat(r,"-options"),!1),o=[this.constructor.options,this.options,e];i&&o.push(window.PluginConfigManager.get(this._pluginName,i));try{a&&o.push(JSON.parse(a))}catch(e){throw console.error(this.el),Error('The data attribute "data-'.concat(r,'-options" could not be parsed to json: ').concat(e.message))}return t().all(o.filter(e=>e instanceof Object&&!(e instanceof Array)).map(e=>e||{}))}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(e){return e||(e=this.constructor.name),e}constructor(e,t={},r=!1){if(!s.isNode(e))throw Error("There is no valid element given.");this.el=e,this.$emitter=new i(this.el),this._pluginName=this._getPluginName(r),this.options=this._mergeOptions(t),this._initialized=!1,this._registerInstance(),this._init()}}class o{get(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/json",n=this._createPreparedRequest("GET",e,r);return this._sendRequest(n,null,t)}post(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";n=this._getContentType(t,n);let s=this._createPreparedRequest("POST",e,n);return this._sendRequest(s,t,r)}delete(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";n=this._getContentType(t,n);let s=this._createPreparedRequest("DELETE",e,n);return this._sendRequest(s,t,r)}patch(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";n=this._getContentType(t,n);let s=this._createPreparedRequest("PATCH",e,n);return this._sendRequest(s,t,r)}
1abort(){if(this._request)return this._request.abort()}setErrorHandlingInternal(e){this._errorHandlingInternal=e}_registerOnLoaded(e,t){t&&(!0===this._errorHandlingInternal?(e.addEventListener("load",()=>{t(e.responseText,e)}),e.addEventListener("abort",()=>{console.warn("the request to ".concat(e.responseURL," was aborted"))}),e.addEventListener("error",()=>{console.warn("the request to ".concat(e.responseURL," failed with status ").concat(e.status))}),e.addEventListener("timeout",()=>{console.warn("the request to ".concat(e.responseURL," timed out"))})):e.addEventListener("loadend",()=>{t(e.responseText,e)}))}_sendRequest(e,t,r){return this._registerOnLoaded(e,r),e.send(t),e}_getContentType(e,t){return e instanceof FormData&&(t=!1),t}_createPreparedRequest(e,t,r){return this._request=new XMLHttpRequest,this._request.open(e,t),this._request.setRequestHeader("X-Requested-With","XMLHttpRequest"),r&&this._request.setRequestHeader("Content-type",r),this._request}constructor(){this._request=null,this._errorHandlingInternal=!1}}class l{static iterate(e,t){if(e instanceof Map||Array.isArray(e))return e.forEach(t);if(e instanceof FormData){for(var r of e.entries())t(r[1],r[0]);return}if(e instanceof NodeList)return e.forEach(t);if(e instanceof HTMLCollection)return Array.from(e).forEach(t);if(e instanceof Object)return Object.keys(e).forEach(r=>{t(e[r],r)});throw Error("The element type ".concat(typeof e," is not iterable!"))}}class c extends a{init(){this._client=new o(window.accessKey,window.contextToken),Dynamsoft.DBR.BarcodeScanner.license||(Dynamsoft.DBR.BarcodeScanner.license=this.options.dynamsoftLicenseKey),this.scanner=null,this.reader=null,this.initPageState(),this.setEvent(".erezept-scanbutton","click",this.enableScanner),this.setEvent(".erezept-uploadinput","change",this.uploadInputChange),this.setEvent(".erezept-uploadbutton","click",this.uploadButtonClick),this.setEvent(".erezept-initbutton","click",this.initPageState)}setEvent(e,t,r){let n=s.querySelectorAll(this.el,e,!1);n&&n.forEach(e=>{e.addEventListener(t,r.bind(this,e))})}scanLog(e){console.log(e)}toggleElementDisplay(e,t){let r=document.getElementById(e);r?r.classList.toggle("d-none",!t):console.error("Element #"+e+" not found")}initPageState(e){this.disableScanner(e),this.toggleElementDisplay("erezept-buttons",!0),this.toggleElementDisplay("erezept-scan",!1),this.toggleElementDisplay("erezept-success",!1)}enableScanner(e){this.toggleElementDisplay("erezept-buttons",!1),this.toggleElementDisplay("erezept-scan",!0),this.toggleElementDisplay("erezept-instructions",!0),this.toggleElementDisplay("erezept-processing",!1),this.toggleElementDisplay("erezept-success",!1),(async()=>{try{this.lastMode="scan",this.scanner=await Dynamsoft.DBR.BarcodeScanner.createInstance(),await this.scanner.setUIElement(document.getElementById("erezept-scan")),this.isProcessing=!1,this.scanner.onUniqueRead=(e,t)=>{if(this.isProcessing)return!1;this.displayProcessing(!0);let r=new FormData;r.append("_csrf_token",this.options.csrfToken),r.append("token_bags[]",e),this._client.post("/erezept-addtocart",r,this.afterAddToCart.bind(this))},await this.scanner.show(),this.scanLog("Camera now active")}catch(e){alert("Aktivieren Sie die Kamera"),this.initPageState()}})()}disableScanner(e){this.scanner&&(this.scanner.hide(),this.scanner.destroyContext(),this.scanner=null,this.scanLog("Camera now hidden")),this.reader&&(this.reader.destroyContext(),this.reader=null)}uploadButtonClick(){let e=s.querySelectorAll(this.el,".erezept-uploadinput",!1);e&&e[0].click()}displayProcessing(e){this.isProcessing=e,"scan"===this.lastMode?(this.toggleElementDisplay("erezept-instructions",!e),this.toggleElementDisplay("erezept-processing",e)):"upload"===this.lastMode&&this.toggleElementDisplay("erezept-uploadspinner",e)}afterAddToCart(e,t){if(t.status>=400)alert(e),this.displayProcessing(!1);else{let e=window.PluginManager.getPluginInstances("CartWidget");l.iterate(e,e=>e.fetch()),this.displayProcessing(!1),this.disableScanner(),this.toggleElementDisplay("erezept-buttons",!1),this.toggleElementDisplay("erezept-scan",!1),this.toggleElementDisplay("erezept-success",!0)}}uploadInputChange(e){this.lastMode="upload";let t=e.files[0];this.displayProcessing(!0),(async()=>{try{this.reader=await Dynamsoft.DBR.BarcodeReader.createInstance();let e=await this.reader.decode(t),r=new FormData;for(let t of(r.append("_csrf_token",this.options.csrfToken),e))r.append("token_bags[]",t.barcodeText);
1this._client.post("/erezept-addtocart",r,this.afterAddToCart.bind(this))}catch(e){/Can't convert/i.test(e)?alert("Dateiformat nicht unterstützt. Unterstützt werden: png, jpg, bmp, gif."):alert("Unbekannter Fehler: "+e),this.displayProcessing(!1),this.initPageState()}})()}}c.options={prescriptionProductNumber:"",csrfToken:"",dynamsoftLicenseKey:""},c.isProcessing=!1,c.lastMode=null,window.PluginManager.register("AktivshopErezept",c,".aktivshop-erezept")})()})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.