platypush/platypush/backend/http/webapp/dist/static/js/9694-legacy.a11c42e2.js.map

1 line
15 KiB
Plaintext

{"version":3,"file":"static/js/9694-legacy.a11c42e2.js","mappings":"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","sources":["webpack://platypush/./src/components/elements/ToggleSwitch.vue","webpack://platypush/./src/components/elements/ToggleSwitch.vue?94aa","webpack://platypush/./src/components/panels/Switches/Mixin.vue","webpack://platypush/./src/components/panels/Switches/Mixin.vue?f0e3","webpack://platypush/./src/components/panels/Switches/Switch.vue","webpack://platypush/./src/components/panels/Switches/Switch.vue?f006","webpack://platypush/./src/components/panels/Switches/SwitchbotBluetooth/Index.vue","webpack://platypush/./src/components/panels/Switches/SwitchbotBluetooth/Index.vue?1803"],"sourcesContent":["<template>\n <div class=\"power-switch\" :class=\"{disabled: disabled}\" @click.stop=\"onInput\">\n <!--suppress HtmlFormInputWithoutLabel -->\n <input type=\"checkbox\" :checked=\"value\">\n <label>\n <!--suppress HtmlUnknownTag -->\n <div class=\"switch\">\n <div class=\"dot\" />\n </div>\n <span class=\"label\">\n <slot />\n </span>\n </label>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"ToggleSwitch\",\n emits: ['input'],\n props: {\n value: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n methods: {\n onInput(event) {\n if (this.disabled)\n return false\n\n this.$emit('input', event)\n },\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.power-switch {\n position: relative;\n transition: transform .3s;\n transform: scale(var(--scale, 1)) translateZ(0);\n\n &:active {\n --scale: .96;\n }\n\n &.disabled {\n opacity: 0.6;\n }\n\n input {\n display: none;\n & + label {\n border-radius: 1em;\n display: inline-flex;\n cursor: pointer;\n position: relative;\n transition: box-shadow .4s;\n\n &:before {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n border-radius: inherit;\n background: none;\n opacity: var(--gradient, 0);\n transition: opacity .4s;\n }\n\n .switch {\n position: relative;\n display: inline-block;\n vertical-align: top;\n height: 1.4em;\n width: 2.5em;\n border-radius: 1em;\n background: $slider-bg;\n box-shadow: inset 1px 0px 3px 0 $slider-track-shadow;\n\n &:before {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n border-radius: inherit;\n background: $slider-progress-bg;\n opacity: var(--gradient, 0);\n transition: opacity .4s;\n }\n\n .dot {\n background: $toggle-dot-bg;\n position: absolute;\n width: 1.5em;\n height: 1.5em;\n border-radius: 50%;\n box-shadow: 1px 0px 3.5px 0 $slider-thumb-shadow;\n left: -0.25em;\n top: -0.05em;\n transform: translateX(var(--offset, 0));\n transition: transform .4s, box-shadow .4s;\n\n &:before {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n border-radius: inherit;\n background: $toggle-selected-dot-bg;\n opacity: var(--gradient, 0);\n transition: opacity .4s;\n }\n }\n }\n\n span {\n line-height: 2em;\n font-size: 1.2em;\n color: var(--text, #646B8C);\n font-weight: 500;\n display: inline-block;\n vertical-align: top;\n position: relative;\n margin-left: 0.5em;\n transition: color .4s;\n }\n\n & + span {\n text-align: center;\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 100%;\n opacity: 0;\n font-size: 1em;\n font-weight: 500;\n color: $slider-bg;\n transform: translateY(0.2em);\n transition: opacity .4s, transform .4s;\n }\n }\n\n &:not(:checked) {\n & + label {\n pointer-events: none;\n & + span {\n opacity: 1;\n transform: translateY(0.6em);\n }\n }\n }\n\n &:checked {\n & + label {\n --offset: 1.5em;\n --text: $slider-progress-bg;\n --gradient: 1;\n --shadow: rgba(0, 39, 6, .1);\n }\n }\n }\n}\n</style>\n","import { render } from \"./ToggleSwitch.vue?vue&type=template&id=a6396ae8&scoped=true\"\nimport script from \"./ToggleSwitch.vue?vue&type=script&lang=js\"\nexport * from \"./ToggleSwitch.vue?vue&type=script&lang=js\"\n\nimport \"./ToggleSwitch.vue?vue&type=style&index=0&id=a6396ae8&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a6396ae8\"]])\n\nexport default __exports__","<script>\nimport Utils from \"@/Utils\";\n\nexport default {\n name: \"SwitchesMixin\",\n mixins: [Utils],\n\n props: {\n pluginName: {\n type: String,\n required: true,\n },\n\n bus: {\n type: Object,\n required: true,\n },\n\n config: {\n type: Object,\n default: () => { return {} },\n },\n\n selected: {\n type: Boolean,\n default: false,\n }\n },\n\n data() {\n return {\n loading: false,\n initialized: false,\n selectedDevice: null,\n devices: {},\n }\n },\n\n methods: {\n onRefreshEvent(pluginName) {\n if (pluginName !== this.pluginName)\n return\n\n this.refresh()\n },\n\n async toggle(device, id) {\n if (id == null)\n id = device\n\n const response = await this.request(`${this.pluginName}.toggle`, {device: id})\n this.devices[device].on = response.on\n },\n\n async refresh() {\n this.loading = true\n try {\n this.devices = (await this.request(`${this.pluginName}.switch_status`)).reduce((obj, device) => {\n const name = device.name?.length ? device.name : device.id\n obj[name] = device\n return obj\n }, {})\n } finally {\n this.loading = false\n }\n }\n },\n\n mounted() {\n this.$watch(() => this.selected, (newValue) => {\n if (newValue && !this.initialized) {\n this.refresh()\n this.initialized = true\n }\n })\n\n this.bus.on('refresh', this.onRefreshEvent)\n },\n\n unmounted() {\n this.bus.off('refresh', this.onRefreshEvent)\n },\n}\n</script>\n","import script from \"./Mixin.vue?vue&type=script&lang=js\"\nexport * from \"./Mixin.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","<template>\n <div class=\"switch\" @click.stop=\"onToggle\">\n <Loading v-if=\"loading\" />\n <div class=\"name col-l-10 col-m-9 col-s-8\">\n <button v-if=\"hasInfo\" @click.prevent=\"onInfo\">\n <i class=\"fa fa-info\" />\n </button>\n <span class=\"name-content\" v-text=\"name\" />\n </div>\n <div class=\"toggler col-l-2 col-m-3 col-s-4\">\n <ToggleSwitch :disabled=\"loading\" :value=\"state\" @input=\"onToggle\" />\n </div>\n </div>\n</template>\n\n<script>\nimport ToggleSwitch from \"@/components/elements/ToggleSwitch\";\nimport Loading from \"@/components/Loading\";\n\nexport default {\n name: \"Switch\",\n components: {Loading, ToggleSwitch},\n emits: ['toggle', 'info'],\n\n props: {\n name: {\n type: String,\n required: true,\n },\n\n state: {\n type: Boolean,\n default: false,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n hasInfo: {\n type: Boolean,\n default: false,\n },\n\n id: {\n type: String,\n },\n },\n\n methods: {\n onInfo(event) {\n event.stopPropagation()\n this.$emit('info')\n return false\n },\n\n onToggle(event) {\n event.stopPropagation()\n this.$emit('toggle')\n return false\n },\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.switch {\n width: 100%;\n display: flex;\n position: relative;\n align-items: center;\n padding: .75em .5em;\n border-bottom: $default-border-2;\n cursor: pointer;\n\n &:hover {\n background: $hover-bg;\n }\n\n .toggler {\n text-align: right;\n }\n\n button {\n background: none;\n border: none;\n\n &:hover {\n color: $default-hover-fg-2;\n }\n }\n}\n</style>\n","import { render } from \"./Switch.vue?vue&type=template&id=38eb9831&scoped=true\"\nimport script from \"./Switch.vue?vue&type=script&lang=js\"\nexport * from \"./Switch.vue?vue&type=script&lang=js\"\n\nimport \"./Switch.vue?vue&type=style&index=0&id=38eb9831&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-38eb9831\"]])\n\nexport default __exports__","<template>\n <div class=\"switches switchbot-switches\">\n <Loading v-if=\"loading\" />\n <div class=\"no-content\" v-else-if=\"!Object.keys(devices).length\">No SwitchBot switches found.</div>\n\n <Switch :loading=\"loading\" :name=\"name\" :state=\"device.on\" @toggle=\"toggle(name)\"\n v-for=\"(device, name) in devices\" :key=\"name\" :has-info=\"true\"\n @info=\"selectedDevice = name; $refs.switchInfoModal.show()\" />\n\n <Modal title=\"Device Info\" ref=\"switchInfoModal\">\n <div class=\"switch-info\" v-if=\"selectedDevice\">\n <div class=\"row\">\n <div class=\"name\">Name</div>\n <div class=\"value\" v-text=\"devices[selectedDevice].name\" />\n </div>\n\n <div class=\"row\">\n <div class=\"name\">On</div>\n <div class=\"value\" v-text=\"devices[selectedDevice].on\" />\n </div>\n\n <div class=\"row\">\n <div class=\"name\">Address</div>\n <div class=\"value\" v-text=\"devices[selectedDevice].address\" />\n </div>\n </div>\n </Modal>\n </div>\n</template>\n\n<script>\nimport Loading from \"@/components/Loading\";\nimport SwitchMixin from \"@/components/panels/Switches/Mixin\";\nimport Switch from \"@/components/panels/Switches/Switch\";\nimport Modal from \"@/components/Modal\";\n\nexport default {\n name: \"SwitchbotBluetooth\",\n components: {Modal, Switch, Loading},\n mixins: [SwitchMixin],\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import \"../common\";\n</style>\n","import { render } from \"./Index.vue?vue&type=template&id=7c8cf1b7&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=7c8cf1b7&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7c8cf1b7\"]])\n\nexport default __exports__"],"names":["class","disabled","onInput","type","checked","value","name","emits","props","Boolean","default","methods","event","this","$emit","__exports__","render","mixins","Utils","pluginName","String","required","bus","Object","config","selected","data","loading","initialized","selectedDevice","devices","onRefreshEvent","refresh","toggle","device","id","request","response","on","reduce","obj","length","mounted","$watch","newValue","unmounted","off","onToggle","hasInfo","onInfo","state","components","Loading","ToggleSwitch","stopPropagation","keys","key","$refs","switchInfoModal","show","title","ref","address","Modal","Switch"],"sourceRoot":""}