platypush/platypush/backend/http/dist/static/js/chunk-5d5c4530.f0675a96.js.map

1 line
8.3 KiB
Plaintext

{"version":3,"sources":["webpack:///./src/components/elements/DropdownItem.vue","webpack:///./src/components/elements/DropdownItem.vue?f03e","webpack:///./src/components/elements/Dropdown.vue?05dc","webpack:///./src/components/elements/Dropdown.vue","webpack:///./src/components/elements/Dropdown.vue?8c81","webpack:///./src/components/elements/DropdownItem.vue?2d78"],"names":["class","clicked","iconClass","name","props","type","String","text","disabled","Boolean","default","methods","event","this","$parent","$emit","visible","render","__scopeId","ref","title","toggle","$event","id","emits","items","Array","data","documentClickHndl","element","target","$refs","dropdown","parentElement","close","document","removeEventListener","open","addEventListener","setTimeout","style","left","top","parseFloat","getComputedStyle","button","height","getBoundingClientRect","window","innerWidth","clientWidth","width","innerHeight","clientHeight","stopPropagation"],"mappings":"qNAESA,MAAM,c,wEADb,eAKM,OALDA,MAAM,WAAY,QAAK,8BAAE,EAAAC,QAAA,sB,CACE,EAAAC,W,iBAA9B,eAEM,MAFN,EAEM,CADJ,eAAwB,KAApBF,MAAO,EAAAE,WAAS,W,sBAEtB,eAAyE,OAApEF,MAAK,CAAC,OAAM,UAA6B,MAAT,EAAAE,Y,YAAoB,eAAa,EAAD,O,8BAK1D,GACbC,KAAM,eACNC,MAAO,CACLF,UAAW,CACTG,KAAMC,QAGRC,KAAM,CACJF,KAAMC,QAGRE,SAAU,CACRH,KAAMI,QACNC,SAAS,IAIbC,QAAS,CACPV,QADO,SACCW,GACNC,KAAKC,QAAQC,MAAM,QAASH,GAC5BC,KAAKC,QAAQE,SAAU,K,UCzB7B,EAAOC,OAAS,EAChB,EAAOC,UAAY,kBAEJ,U,oFCRf,W,+HCCOlB,MAAM,qBAAqBmB,IAAI,a,wEAApC,eASM,MATN,EASM,CARJ,eAGS,UAHAC,MAAO,EAAAA,MAAOD,IAAI,SAAU,QAAK,+CAAO,EAAAE,OAAOC,KAAM,Y,CACnB,EAAApB,W,iBAAzC,eAAsD,K,MAAnDF,MAAK,CAAC,OAAe,EAAAE,Y,+BACe,EAAAK,M,iBAAvC,eAA+C,Q,MAAzCP,MAAM,O,YAAO,eAAa,EAAD,O,6DAGjC,eAEM,OAFDA,MAAK,CAAC,mBAAkB,SAA4B,EAAAgB,UAA1BO,GAAI,EAAAA,GAAgCJ,IAAI,Y,CACrE,eAAQ,qB,oBAMC,GACbhB,KAAM,WACNqB,MAAO,CAAC,SACRpB,MAAO,CACLmB,GAAI,CACFlB,KAAMC,QAGRmB,MAAO,CACLpB,KAAMqB,MACNhB,QAAS,iBAAM,KAGjBR,UAAW,CACTG,KAAMC,OACNI,QAAS,oBAGXH,KAAM,CACJF,KAAMC,QAGRc,MAAO,CACLf,KAAMC,SAIVqB,KA3Ba,WA4BX,MAAO,CACLX,SAAS,IAIbL,QAAS,CACPiB,kBADO,SACWhB,GAChB,GAAKC,KAAKG,QAAV,CAGA,IAAIa,EAAUjB,EAAMkB,OACpB,MAAOD,EAAS,CACd,IAAKhB,KAAKkB,MAAMC,SACd,MACF,GAAIH,IAAYhB,KAAKkB,MAAMC,SAASH,QAClC,OAEFA,EAAUA,EAAQI,cAGpBpB,KAAKqB,UAGPA,MAlBO,WAmBLrB,KAAKG,SAAU,EACfmB,SAASC,oBAAoB,QAASvB,KAAKe,oBAG7CS,KAvBO,WAuBA,WACLF,SAASG,iBAAiB,QAASzB,KAAKe,mBACxCf,KAAKG,SAAU,EAEfuB,YAAW,WACT,IAAMV,EAAU,EAAKE,MAAMC,SAC3BH,EAAQW,MAAMC,KAAO,EACrBZ,EAAQW,MAAME,IAAMC,WAAWC,iBAAiB,EAAKb,MAAMc,QAAQC,QAAU,KAEzEjB,EAAQkB,wBAAwBN,KAAOO,OAAOC,WAAW,IAC3DpB,EAAQW,MAAMC,MAASZ,EAAQqB,YAAcP,WAAWC,iBAAiB,EAAKb,MAAMc,QAAQM,OAAU,MAEpGtB,EAAQkB,wBAAwBL,IAAMM,OAAOI,YAAY,IAC3DvB,EAAQW,MAAME,KAAQb,EAAQwB,aAAeV,WAAWC,iBAAiB,EAAKb,MAAMc,QAAQC,QAAW,QACxG,KAGLzB,OAxCO,SAwCAT,GACLA,EAAM0C,kBACNzC,KAAKE,MAAM,SACXF,KAAKG,QAAUH,KAAKqB,QAAUrB,KAAKwB,U,UCrFzC,EAAOpB,OAAS,EAChB,EAAOC,UAAY,kBAEJ,U,kCCRf","file":"static/js/chunk-5d5c4530.f0675a96.js","sourcesContent":["<template>\n <div class=\"row item\" @click=\"clicked\">\n <div class=\"col-1 icon\" v-if=\"iconClass\">\n <i :class=\"iconClass\" />\n </div>\n <div class=\"text\" :class=\"{'col-11': iconClass != null}\" v-text=\"text\" />\n </div>\n</template>\n\n<script>\nexport default {\n name: \"DropdownItem\",\n props: {\n iconClass: {\n type: String,\n },\n\n text: {\n type: String,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n methods: {\n clicked(event) {\n this.$parent.$emit('click', event)\n this.$parent.visible = false\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.item {\n display: flex;\n padding: .5em .25em;\n cursor: pointer;\n align-items: center;\n\n &:hover {\n background: $hover-bg;\n }\n\n &.disabled {\n color: $dropdown-disabled-color;\n cursor: initial;\n }\n\n .icon {\n margin: 0 .5rem;\n }\n}\n</style>\n","import { render } from \"./DropdownItem.vue?vue&type=template&id=3cb494ce&scoped=true\"\nimport script from \"./DropdownItem.vue?vue&type=script&lang=js\"\nexport * from \"./DropdownItem.vue?vue&type=script&lang=js\"\n\nimport \"./DropdownItem.vue?vue&type=style&index=0&id=3cb494ce&lang=scss&scoped=true\"\nscript.render = render\nscript.__scopeId = \"data-v-3cb494ce\"\n\nexport default script","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./Dropdown.vue?vue&type=style&index=0&id=00fa59b4&lang=scss&scoped=true\"","<template>\n <div class=\"dropdown-container\" ref=\"container\">\n <button :title=\"title\" ref=\"button\" @click.stop=\"toggle($event)\">\n <i class=\"icon\" :class=\"iconClass\" v-if=\"iconClass\" />\n <span class=\"text\" v-text=\"text\" v-if=\"text\" />\n </button>\n\n <div class=\"dropdown fade-in\" :id=\"id\" :class=\"{hidden: !visible}\" ref=\"dropdown\">\n <slot />\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"Dropdown\",\n emits: ['click'],\n props: {\n id: {\n type: String,\n },\n\n items: {\n type: Array,\n default: () => [],\n },\n\n iconClass: {\n type: String,\n default: 'fa fa-ellipsis-h',\n },\n\n text: {\n type: String,\n },\n\n title: {\n type: String,\n },\n },\n\n data() {\n return {\n visible: false,\n }\n },\n\n methods: {\n documentClickHndl(event) {\n if (!this.visible)\n return\n\n let element = event.target\n while (element) {\n if (!this.$refs.dropdown)\n break\n if (element === this.$refs.dropdown.element)\n return\n\n element = element.parentElement\n }\n\n this.close()\n },\n\n close() {\n this.visible = false\n document.removeEventListener('click', this.documentClickHndl)\n },\n\n open() {\n document.addEventListener('click', this.documentClickHndl)\n this.visible = true\n\n setTimeout(() => {\n const element = this.$refs.dropdown\n element.style.left = 0\n element.style.top = parseFloat(getComputedStyle(this.$refs.button).height) + 'px'\n\n if (element.getBoundingClientRect().left > window.innerWidth/2)\n element.style.left = (-element.clientWidth + parseFloat(getComputedStyle(this.$refs.button).width)) + 'px'\n\n if (element.getBoundingClientRect().top > window.innerHeight/2)\n element.style.top = (-element.clientHeight + parseFloat(getComputedStyle(this.$refs.button).height)) + 'px'\n }, 10)\n },\n\n toggle(event) {\n event.stopPropagation()\n this.$emit('click')\n this.visible ? this.close() : this.open()\n },\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.dropdown-container {\n position: relative;\n display: flex;\n flex-direction: column;\n\n .dropdown {\n position: absolute;\n width: max-content;\n background: $dropdown-bg;\n border-radius: .25em;\n border: $default-border-3;\n box-shadow: $dropdown-shadow;\n display: flex;\n flex-direction: column;\n z-index: 1;\n }\n}\n</style>\n","import { render } from \"./Dropdown.vue?vue&type=template&id=00fa59b4&scoped=true\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=00fa59b4&lang=scss&scoped=true\"\nscript.render = render\nscript.__scopeId = \"data-v-00fa59b4\"\n\nexport default script","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./DropdownItem.vue?vue&type=style&index=0&id=3cb494ce&lang=scss&scoped=true\""],"sourceRoot":""}