vue-softpro-ui
Version:
Основні компоненти вью
2 lines • 3.33 kB
JavaScript
(("undefined"!==typeof self?self:this)["webpackChunkVueSoftProUI"]=("undefined"!==typeof self?self:this)["webpackChunkVueSoftProUI"]||[]).push([[979],{979:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return p}});var s=function(){var e=this,t=e._self._c;return t("div",{staticClass:"table-wrapper flex gap-2"},[t("input",{ref:"filePicker",staticClass:"hidden",attrs:{accept:".geojson",type:"file"},on:{change:e.importTable}}),t("VsButton",{attrs:{size:"mini"},on:{click:function(t){return e.$refs.filePicker.click()}}},[t("i",{staticClass:"ti ti-download"})]),t("VsPopover",{attrs:{width:"250"}},[t("div",[t("h3",{staticClass:"mb-2"},[e._v(" "+e._s("Оберіть спосіб завантаження")+" ")]),t("VsButton",{attrs:{size:"mini",type:"primary"},on:{click:function(t){e.importVisible=!1,e.exportTable(e.value,"test")}}},[e._v(" "+e._s("Як JSON")+" ")]),t("VsButton",{attrs:{size:"mini"},on:{click:function(t){e.importVisible=!1,e.saveYaml(e.value,"gis-editor")}}},[e._v(" "+e._s("Як YAML")+" ")])],1),t("VsButton",{attrs:{slot:"reference",size:"mini"},slot:"reference"},[t("i",{staticClass:"ti ti-upload"})])],1)],1)},a=[],o={data(){return{files:[],fileResult:[],importType:null,exportVisible:!1,importVisible:!1}},async mounted(){await window.head.promise(["https://cdnjs.cloudflare.com/ajax/libs/yamljs/0.3.0/yaml.min.js"])},watch:{importType(){"replace"===this.importType?this.value=this.fileResult:"append"===this.importType&&(this.value=this.value.concat(...this.fileResult)),this.$emit("update:value",this.value),this.importType=null}},methods:{async importTable(e){this.files=e.target.files;const t=new FileReader;t.readAsText(e.target.files[0]),t.onload=()=>{this.fileResult=JSON.parse(t.result),this.exportVisible=!0},t.onerror=()=>{this.$message.error("Ой, щось пішло не так, файл не додано")},e.target.value=""},exportTable(e,t){if(e.length){const i=`${t}-${Date.now()}.geojson`;this.anchorDownload(JSON.stringify(e),i)}else this.$message.error("Таблиця пуста!")},anchorDownload(e,t){const i=document.createElement("a");document.body.appendChild(i);const s=new File([e],t),a=window.URL.createObjectURL(s);i.href=a,i.download=t,i.click(),window.URL.revokeObjectURL(a),i.remove()},saveYaml(e,t){e.length?this.anchorDownload(window.YAML.stringify(e),`${t}.yml`):this.$message.error("Таблиця пуста!")}}},n={components:{VsButton:()=>Promise.resolve().then(i.bind(i,7529)),VsPopover:()=>Promise.resolve().then(i.bind(i,8695))},mixins:[o],props:{value:{type:Object,default(){return{}}},input:{type:Object,default(){return{}}}}},r=n,l=(i(9198),i(1001)),c=(0,l.Z)(r,s,a,!1,null,"7a815aec",null),p=c.exports},8426:function(e,t,i){"use strict";i.r(t);var s=i(8081),a=i.n(s),o=i(3645),n=i.n(o),r=n()(a());r.push([e.id,".table-wrapper[data-v-7a815aec]{justify-content:flex-end}.el-upload__input[data-v-7a815aec]{display:none!important}.import-button[data-v-7a815aec]{margin-right:5px}.import-button.ghost[data-v-7a815aec]{margin-right:-30px;pointer-events:none;opacity:0}",""]),t["default"]=r},9198:function(e,t,i){var s=i(8426);s.__esModule&&(s=s.default),"string"===typeof s&&(s=[[e.id,s,""]]),s.locals&&(e.exports=s.locals);var a=i(4402).Z;a("2be8735c",s,!0,{sourceMap:!1,shadowMode:!1})}}]);
//# sourceMappingURL=softpro-ui-kit.umd.min.979.js.map