{"version":3,"sources":["webpack:///./resources/js/src/app/components/lucx/ShopvoteBadge.vue","webpack:///./resources/js/src/app/components/lucx/ShopvoteBadge.vue?e61b","webpack:///resources/js/src/app/components/lucx/ShopvoteBadge.vue","webpack:///./resources/js/src/app/components/lucx/ShopvoteBadge.vue?ddf9"],"names":["render","_c","this","_self","_withStripped","name","data","lang","App","language","toUpperCase","shopId","initialized","showBadge","mounted","init","methods","window","innerWidth","loadScript","then","loadBadgeMobile","catch","error","console","loadBadgeDesktop","src","Promise","resolve","reject","document","querySelector","concat","script","createElement","async","onload","onerror","Error","head","appendChild","location","protocol","createBadget","myShopID","myBadgetType","mySrc","createRBadge","component"],"mappings":"kGAAA,IAAIA,EAAS,WAGX,OAAOC,EAFGC,KACCC,MAAMF,IACP,QAGZD,EAAOI,eAAgB,E,eCN6L,ECMrM,CACfC,KAAA,gBAEAC,KAAA,WAEA,OACAC,KAAAC,IAAAC,SAAAC,cACAC,OAAA,MACAC,aAAA,EACAC,WAAA,IAIAC,QAAA,WAEA,KAAAC,QAGAC,QAAA,CAEAD,KAAA,WAEA,KAAAH,cAKA,KAAAA,aAAA,EAEAK,OAAAC,WAAA,KAEA,KAAAC,WAAA,sDACAC,KAAA,KAAAC,iBACAC,OAAA,SAAAC,GAAA,OAAAC,QAAAD,MAAA,sCAAAA,MAIA,KAAAJ,WAAA,6DACAC,KAAA,KAAAK,kBACAH,OAAA,SAAAC,GAAA,OAAAC,QAAAD,MAAA,uCAAAA,QAIAJ,WAAA,SAAAO,GAEA,WAAAC,SAAA,SAAAC,EAAAC,GAEA,GAAAC,SAAAC,cAAA,eAAAC,OAAAN,EAAA,OAYAE,QAXA,CACA,IAAAK,EAAAH,SAAAI,cAAA,UAEAD,EAAAP,MACAO,EAAAE,OAAA,EACAF,EAAAG,OAAA,kBAAAR,KACAK,EAAAI,QAAA,kBAAAR,EAAA,IAAAS,MAAA,yBAAAN,OAAAN,MACAI,SAAAS,KAAAC,YAAAP,QASAZ,gBAAA,WAEAJ,OAAA,cAAAN,OACAM,OAAA,eACAA,OAAA,gBAAAV,KACAU,OAAA,iBAAAa,SAAAW,SAAAC,SAAA,eAEA,mBAAAC,cAEAA,aAAAC,SAAAC,aAAAC,MAAA,sBAIArB,iBAAA,WAEAR,OAAA,cAAAN,OACAM,OAAA,eACAA,OAAA,gBAAAV,KACAU,OAAA,iBAAAa,SAAAW,SAAAC,SAAA,eAEA,mBAAAK,cAEAA,aAAAH,SAAAC,aAAAC,U,OCrFIE,EAAY,YACd,EACAhD,EHJoB,IGMpB,EACA,KACA,KACA,MAIa,UAAAgD,E","file":"chunks/ceres-52.min.js","sourcesContent":["var render = function render() {\n  var _vm = this,\n    _c = _vm._self._c\n  return _c(\"div\")\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShopvoteBadge.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShopvoteBadge.vue?vue&type=script&lang=js\"","<template>\n</template>\n\n<script>\nimport { mapState } from \"vuex\";\n\nexport default {\n    name: \"ShopvoteBadge\",\n\n    data()\n    {\n        return {\n            lang: App.language.toUpperCase(),\n            shopId: 13996,\n            initialized: false,\n            showBadge: true\n        };\n    },\n\n    mounted()\n    {\n        this.init();\n    },\n\n    methods: {\n\n        init()\n        {\n            if (this.initialized)\n            {\n                return;\n            }\n\n            this.initialized = true;\n\n            if (window.innerWidth < 1200)\n            {\n                this.loadScript(\"https://widgets.shopvote.de/js/badget-98x98.min.js\")\n                    .then(this.loadBadgeMobile)\n                    .catch((error) => console.error(\"Failed to load mobile badge script:\", error));\n            }\n            else\n            {\n                this.loadScript(\"https://widgets.shopvote.de/js/reputation-badge-v2.min.js\")\n                    .then(this.loadBadgeDesktop)\n                    .catch((error) => console.error(\"Failed to load desktop badge script:\", error));\n            }\n        },\n\n        loadScript(src)\n        {\n            return new Promise((resolve, reject) =>\n            {\n                if (!document.querySelector(`script[src=\"${src}\"]`))\n                {\n                    const script = document.createElement(\"script\");\n\n                    script.src = src;\n                    script.async = true;\n                    script.onload = () => resolve();\n                    script.onerror = () => reject(new Error(`Script load error for ${src}`));\n                    document.head.appendChild(script);\n                }\n                else\n                {\n                    resolve();\n                }\n            });\n        },\n\n        loadBadgeMobile()\n        {\n            window[\"myShopID\"] = this.shopId;\n            window[\"myBadgetType\"] = 1;\n            window[\"myLanguage\"] = this.lang;\n            window[\"mySrc\"] = (\"https:\" === document.location.protocol ? \"https\" : \"http\");\n\n            if (typeof createBadget === \"function\")\n            {\n                createBadget(myShopID, myBadgetType, mySrc, 0, 0, \"left\", \"bottom\");\n            }\n        },\n\n        loadBadgeDesktop()\n        {\n            window[\"myShopID\"] = this.shopId;\n            window[\"myBadgetType\"] = 1;\n            window[\"myLanguage\"] = this.lang;\n            window[\"mySrc\"] = (\"https:\" === document.location.protocol ? \"https\" : \"http\");\n\n            if (typeof createRBadge === \"function\")\n            {\n                createRBadge(myShopID, myBadgetType, mySrc);\n            }\n        }\n    }\n};\n</script>\n","import { render, staticRenderFns } from \"./ShopvoteBadge.vue?vue&type=template&id=442bb705\"\nimport script from \"./ShopvoteBadge.vue?vue&type=script&lang=js\"\nexport * from \"./ShopvoteBadge.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}