/
home
/
maktab
/
admin
/
js
/
File Upload :
llllll
Current File: /home/maktab/admin/js/chunk-41ededc5.cf42c012.js.map
{"version":3,"sources":["webpack:///./src/components/input/SingleUploadInput.vue?76ab","webpack:///./src/views/polino/add.vue?cf81","webpack:///src/views/polino/add.vue","webpack:///./src/views/polino/add.vue?4f30","webpack:///./src/views/polino/add.vue","webpack:///./src/components/imageCropper/SingleImageCropperUpload.vue?7953","webpack:///./src/components/imageCropper/CropModal.vue?240e","webpack:///src/components/imageCropper/CropModal.vue","webpack:///./src/components/imageCropper/CropModal.vue?73aa","webpack:///./src/components/imageCropper/CropModal.vue","webpack:///src/components/imageCropper/SingleImageCropperUpload.vue","webpack:///./src/components/imageCropper/SingleImageCropperUpload.vue?b2d9","webpack:///./src/components/imageCropper/SingleImageCropperUpload.vue","webpack:///./src/views/utils.js","webpack:///./node_modules/img-reduce-size-js/index.js","webpack:///./src/views/polino/add.vue?9d9c","webpack:///./src/components/imageCropper/SingleImageCropperUpload.vue?6325","webpack:///./src/components/input/SingleUploadInput.vue?5686","webpack:///src/components/input/SingleUploadInput.vue","webpack:///./src/components/input/SingleUploadInput.vue?db38","webpack:///./src/components/input/SingleUploadInput.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","loading","on","handleSubmit","form","staticClass","_v","directives","name","rawName","value","inputFa","expression","input","model","callback","$$v","birthday","birthday_hasVal","_e","ref","picUploaded","picRemove","picWorkUploaded","picWorkRemove","staticStyle","_s","id","staticRenderFns","data","file_id","file_work_id","computed","components","datepicker","SingleUploadInput","SingleImageCropUpload","methods","e","err","values","axios","console","component","url","headers","getData","fileList","handlebeforeUpload","handleRemove","handlePreview","select","handleChange","length","previewVisible","handleCancel","previewImage","srcImageCompressed","closeCropModal","handleOK","$event","$emit","imgBeforeCrop","request","props","require","created","zoomable","scalable","aspectRatio","crop","that","formData","method","then","catch","getBase64","reader","CropModal","limit","type","required","default","fileListReserve","openModal","watch","file","event","imageCompressor","imgElement","canvas","MAX_WIDTH","scaleSize","ctx","srcEncoded","has_thumb","has_watermark","subject","title","val","rules","undefined","message","pattern","inputSwitch","req","initialValue","valuePropName","scrollToObject","navQuery","offsetNav","nav","document","querySelector","navHeight","getBoundingClientRect","height","element","getElementById","window","scrollTo","top","left","behavior","Vue","prototype","$myrules","module","exports","imageResize","settings","maxSize","FileReader","image","Image","createElement","dataURItoBlob","dataURI","bytes","split","indexOf","atob","unescape","mime","max","ia","Uint8Array","i","charCodeAt","Blob","resize","width","getContext","drawImage","dataUrl","toDataURL","Promise","ok","no","match","onload","r","src","target","result","toString","readAsDataURL","Error"],"mappings":"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","file":"js/chunk-41ededc5.cf42c012.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleUploadInput.vue?vue&type=style&index=0&id=a203b430&prod&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a-spin',{attrs:{\"spinning\":_vm.loading},on:{\"submit\":_vm.handleSubmit}},[_c('vx-card',{attrs:{\"title\":\"افزودن پلینو\"}},[_c('a-form',{attrs:{\"form\":_vm.form}},[_c('div',{staticClass:\"grid grid-cols-1 md:grid-cols-3 gap-2\"},[_c('a-divider',{staticClass:\"md:col-span-3\"},[_vm._v(\"اطلاعات پایه\")]),_c('a-form-item',{attrs:{\"label\":\"نام\"}},[_c('a-input',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.inputFa('fname')),expression:\"inputFa('fname')\"}]})],1),_c('a-form-item',{attrs:{\"label\":\"نام خانوادگی\"}},[_c('a-input',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.inputFa('lname')),expression:\"inputFa('lname')\"}]})],1),_c('a-form-item',{attrs:{\"label\":\"شماره همراه\"}},[_c('a-input-number',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.input('mobile')),expression:\"input('mobile')\"}],attrs:{\"type\":\"number\"}})],1),_c('a-form-item',{attrs:{\"label\":\"تاریخ تولد\"}},[_c('datepicker',{attrs:{\"id\":\"birthday\",\"auto-submit\":true,\"display-format\":\"jYYYY-jMM-jDD\"},model:{value:(_vm.birthday),callback:function ($$v) {_vm.birthday=$$v},expression:\"birthday\"}}),(!_vm.birthday_hasVal)?_c('div',{staticClass:\"dateerr\"},[_vm._v(\"لطفا مقدار را وارد کنید\")]):_vm._e()],1),_c('a-form-item',{attrs:{\"label\":\"تحصیلات\"}},[_c('a-input',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.inputFa('education')),expression:\"inputFa('education')\"}]})],1),_c('a-form-item',{attrs:{\"label\":\"تصویر پروفایل\"}},[_c('SingleImageCropUpload',{ref:\"photo\",on:{\"ok\":_vm.picUploaded,\"remove\":_vm.picRemove}})],1),_c('a-form-item',{staticClass:\"md:col-span-3\",attrs:{\"label\":\"توضیحات\"}},[_c('a-textarea',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.input('description',false)),expression:\"input('description',false)\"}]})],1),_c('a-divider',{staticClass:\"md:col-span-3\"},[_vm._v(\"اطلاعات محل کار\")]),_c('a-form-item',{attrs:{\"label\":\"شغل\"}},[_c('a-input',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.inputFa('job')),expression:\"inputFa('job')\"}]})],1),_c('a-form-item',{attrs:{\"label\":\"شماره تلفن محل کار\"}},[_c('a-input-number',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.input('job_phone')),expression:\"input('job_phone')\"}],attrs:{\"type\":\"number\"}})],1),_c('a-form-item',{attrs:{\"label\":\"عنوان محل کار\"}},[_c('a-input',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.inputFa('specialty')),expression:\"inputFa('specialty')\"}]})],1),_c('a-form-item',{staticClass:\"md:col-span-2\",attrs:{\"label\":\"آدرس محل کار\"}},[_c('a-textarea',{directives:[{name:\"decorator\",rawName:\"v-decorator\",value:(_vm.input('job_address')),expression:\"input('job_address')\"}]})],1),_c('a-form-item',{attrs:{\"label\":\"تصویر محل کار\"}},[_c('SingleUploadInput',{ref:\"photo\",on:{\"ok\":_vm.picWorkUploaded,\"remove\":_vm.picWorkRemove}})],1)],1),_c('a-button',{staticStyle:{\"margin-top\":\"3em\"},attrs:{\"type\":\"primary\",\"html-type\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.id ? 'ویرایش ' : 'ثبت ')+\"\\n \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <a-spin :spinning=\"loading\" @submit=\"handleSubmit\">\r\n <vx-card title=\"افزودن پلینو\">\r\n <a-form :form=\"form\">\r\n <div class=\"grid grid-cols-1 md:grid-cols-3 gap-2\">\r\n <a-divider class=\"md:col-span-3\">اطلاعات پایه</a-divider>\r\n <a-form-item label=\"نام\">\r\n <a-input\r\n v-decorator=\"inputFa('fname')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"نام خانوادگی\">\r\n <a-input\r\n v-decorator=\"inputFa('lname')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"شماره همراه\">\r\n <a-input-number\r\n type=\"number\"\r\n v-decorator=\"input('mobile')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"تاریخ تولد\">\r\n <datepicker id=\"birthday\" :auto-submit=\"true\" v-model=\"birthday\"\r\n display-format=\"jYYYY-jMM-jDD\"></datepicker>\r\n <div v-if=\"!birthday_hasVal\" class=\"dateerr\">لطفا مقدار را وارد کنید</div>\r\n </a-form-item>\r\n <a-form-item label=\"تحصیلات\">\r\n <a-input\r\n v-decorator=\"inputFa('education')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"تصویر پروفایل\">\r\n<!-- <SingleUploadInput\r\n ref=\"photo\"\r\n @ok=\"picUploaded\"\r\n @remove=\"picRemove\"/>-->\r\n <SingleImageCropUpload\r\n ref=\"photo\"\r\n @ok=\"picUploaded\"\r\n @remove=\"picRemove\"/>\r\n </a-form-item>\r\n <a-form-item label=\"توضیحات\" class=\"md:col-span-3\">\r\n <a-textarea\r\n v-decorator=\"input('description',false)\"\r\n />\r\n </a-form-item>\r\n <a-divider class=\"md:col-span-3\">اطلاعات محل کار</a-divider>\r\n <a-form-item label=\"شغل\">\r\n <a-input\r\n v-decorator=\"inputFa('job')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"شماره تلفن محل کار\">\r\n <a-input-number\r\n type=\"number\"\r\n v-decorator=\"input('job_phone')\"/>\r\n </a-form-item>\r\n <a-form-item label=\"عنوان محل کار\">\r\n <a-input\r\n v-decorator=\"inputFa('specialty')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"آدرس محل کار\" class=\"md:col-span-2\">\r\n <a-textarea\r\n v-decorator=\"input('job_address')\"\r\n />\r\n </a-form-item>\r\n <a-form-item label=\"تصویر محل کار\">\r\n <SingleUploadInput\r\n ref=\"photo\"\r\n @ok=\"picWorkUploaded\"\r\n @remove=\"picWorkRemove\"/>\r\n </a-form-item>\r\n </div>\r\n <a-button type=\"primary\" html-type=\"submit\" style=\"margin-top: 3em\">\r\n {{ id ? 'ویرایش ' : 'ثبت ' }}\r\n </a-button>\r\n </a-form>\r\n </vx-card>\r\n </a-spin>\r\n</template>\r\n\r\n<script>\r\nimport VuePersianDatetimePicker from 'vue-persian-datetime-picker'\r\nimport SingleUploadInput from '@/components/input/SingleUploadInput'\r\nimport axios from '@/axios'\r\nimport SingleImageCropUpload from '@/components/imageCropper/SingleImageCropperUpload'\r\nimport {input,inputFa} from '@/views/utils'\r\n\r\nexport default {\r\n name: 'add',\r\n data () {\r\n return {\r\n loading: false,\r\n form: this.$form.createForm(this, {name: 'coordinated'}),\r\n birthday: undefined,\r\n birthday_hasVal: true,\r\n file_id: undefined,\r\n file_work_id: undefined,\r\n input,\r\n inputFa\r\n }\r\n },\r\n computed: {\r\n id () {\r\n return this.$route.params.id\r\n }\r\n },\r\n components: {\r\n datepicker: VuePersianDatetimePicker,\r\n SingleUploadInput,\r\n SingleImageCropUpload\r\n },\r\n methods: {\r\n handleSubmit (e) {\r\n e.preventDefault()\r\n this.form.validateFields(async (err, values) => {\r\n if (this.birthday){\r\n this.birthday_hasVal= true\r\n }\r\n else {\r\n this.birthday_hasVal= false\r\n return\r\n }\r\n if (!err) {\r\n if (this.file_id){\r\n values.file_id = this.file_id\r\n }\r\n if (this.file_work_id){\r\n values.file_work_id = this.file_work_id\r\n }\r\n if (this.birthday){\r\n values.birthday = this.birthday\r\n }\r\n if (this.id) {\r\n //update\r\n try {\r\n this.loading = true\r\n await axios.put(`${this.userUrl}/${this.id}`, values)\r\n this.$message.success('اطلاعات با موفقیت به روز رسانی شد')\r\n await this.$router.push(`/polino/list`)\r\n } catch (error) {\r\n console.log(error)\r\n } finally {\r\n this.loading = false\r\n }\r\n } else {\r\n //create\r\n try {\r\n this.loading = true\r\n console.log(values)\r\n await axios.post('/admin/pol/user', values)\r\n this.$message.success('اطلاعات با موفقیت ثبت شد')\r\n await this.$router.push('/polino/list')\r\n } catch (error) {\r\n console.log(error)\r\n } finally {\r\n this.loading = false\r\n }\r\n }\r\n }\r\n })\r\n },\r\n picUploaded (response) {\r\n // this.$emit('pic_upload', response)\r\n // console.log(response)\r\n this.file_id = response.id\r\n },\r\n picRemove (response) {\r\n // this.$emit('pic_remove', response)\r\n this.file_id = undefined\r\n },\r\n picWorkUploaded (response) {\r\n // this.$emit('pic_upload', response)\r\n // console.log(response)\r\n this.file_work_id = response.id\r\n },\r\n picWorkRemove (response) {\r\n // this.$emit('pic_remove', response)\r\n this.file_work_id = undefined\r\n },\r\n }\r\n}\r\n</script>\r\n\r\n<style>\r\n/*.dateerr{\r\n//color: red;\r\n color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1)\r\n\r\n}*/\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./add.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./add.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./add.vue?vue&type=template&id=7f4eb522&\"\nimport script from \"./add.vue?vue&type=script&lang=js&\"\nexport * from \"./add.vue?vue&type=script&lang=js&\"\nimport style0 from \"./add.vue?vue&type=style&index=0&id=7f4eb522&prod&lang=css&\"\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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"clearfix\"},[_c('AUpload',{attrs:{\"action\":_vm.url,\"headers\":_vm.headers,\"list-type\":\"picture-card\",\"multiple\":false,\"data\":_vm.getData,\"file-list\":_vm.fileList,\"before-upload\":_vm.handlebeforeUpload},on:{\"remove\":_vm.handleRemove,\"preview\":_vm.handlePreview,\"select\":_vm.select,\"change\":_vm.handleChange}},[(_vm.fileList.length==0)?_c('div',[_c('a-icon',{attrs:{\"type\":\"plus\"}}),_c('div',{staticClass:\"ant-upload-text\"},[_vm._v(\"\\n بارگذاری\\n \")])],1):_vm._e()]),_c('AModal',{attrs:{\"visible\":_vm.previewVisible,\"footer\":null},on:{\"cancel\":_vm.handleCancel}},[_c('img',{staticStyle:{\"width\":\"100%\"},attrs:{\"alt\":\"example\",\"src\":_vm.previewImage}})]),(_vm.srcImageCompressed)?_c('CropModal',{attrs:{\"imgBeforeCrop\":_vm.srcImageCompressed},on:{\"cancel\":_vm.closeCropModal,\"ok\":_vm.handleOK}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a-modal',{attrs:{\"visible\":true,\"footer\":null},on:{\"cancel\":function($event){return _vm.$emit('cancel')}}},[_c('a-spin',{attrs:{\"spinning\":_vm.loading}},[_c('div',{staticClass:\"m-5 rounded\"},[_c('img',{ref:\"image\",staticClass:\"mt-3 w-full\",attrs:{\"alt\":\"example\",\"src\":_vm.imgBeforeCrop}})])]),_c('div',{staticClass:\"text-center w-full\"},[_c('a-button',{staticClass:\"w-22\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.request}},[_vm._v(\"تایید\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<a-modal :visible=\"true\" :footer=\"null\" @cancel=\"$emit('cancel')\">\r\n\t\t<a-spin :spinning=\"loading\">\r\n\t\t\t<div class=\"m-5 rounded\">\r\n<!--\t\t\t\t<div v-show=\"!afterResize\" class=\"text-center\">در حال پردازش</div>-->\r\n\t\t\t\t<img ref=\"image\" alt=\"example\" :src=\"imgBeforeCrop\"\r\n\t\t\t\t\t class=\"mt-3 w-full\"/>\r\n\t\t\t</div>\r\n\t\t</a-spin>\r\n\t\t<div class=\"text-center w-full\">\r\n\t\t\t<a-button @click=\"request\" class=\"w-22\" type=\"primary\">تایید</a-button>\r\n\t\t</div>\r\n\t\t<!--\t\t\t<div v-if=\"afterResize\">\r\n\t\t\t\t\t\t<img :src=\"afterResize\" style=\"height: 5rem; width: 5rem\">\r\n\r\n\t\t\t\t\t</div>-->\r\n\t</a-modal>\r\n</template>\r\n\r\n<script>\r\nimport axios from \"@/axios\";\r\nimport Cropper from \"cropperjs\";\r\nimport 'cropperjs/dist/cropper.css';\r\nimport {baseURL} from '@/axios'\r\n\r\nexport default {\r\n\tname: \"CropModal\",\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tloading: false,\r\n\t\t}\r\n\t},\r\n\tprops:{\r\n\t\timgBeforeCrop:{require: true}\r\n\t},\r\n\tcomputed: {\r\n\t\theaders() {\r\n\t\t\treturn {\r\n\t\t\t\t'Authorization': 'Bearer ' + localStorage.getItem(\"accessToken\") || localStorage.accessToken\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\tcreated() {\r\n\r\n\t\tthis.$nextTick(() => {\r\n\r\n\t\t\tconst that = this\r\n\r\n\t\t\t// console.log(this.image)\r\n\t\t\tthis.image = this.$refs.image\r\n\t\t\tthis.cropper = new Cropper(this.image, {\r\n\t\t\t\tzoomable: false,\r\n\t\t\t\tscalable: false,\r\n\t\t\t\taspectRatio: 1,\r\n\t\t\t\tcrop() {\r\n\t\t\t\t\tthat.newCanvasData = this.cropper.getCroppedCanvas()\r\n\t\t\t\t\t// that.newFile = canvas.toDataURL(\"image/png\")\r\n\t\t\t\t},\r\n\r\n\t\t\t})\r\n\t\t})\r\n\t},\r\n\tmethods:{\r\n\t\trequest() {\r\n\t\t\t// console.log('hello')\r\n\t\t\t// const that = this\r\n\t\t\tthis.newCanvasData.toBlob(async (blob)=> {\r\n\t\t\t\t// console.log('ddd',blob)\r\n\t\t\t\tconst formData = new FormData()\r\n\t\t\t\tformData.append(\"file\", blob);\r\n\t\t\t\tformData.append(\"has_thumb\", 1);\r\n\t\t\t\tformData.append(\"has_watermark\", 0);\r\n\t\t\t\tformData.append(\"subject\", 1);\r\n\t\t\t\tformData.append(\"title\", 1);\r\n\t\t\t\tformData.append(\"type\", 3);\r\n\t\t\t\t// const those = this\r\n\t\t\t\tthis.loading = true\r\n\t\t\t\tconst that = this\r\n\t\t\t\tawait axios({\r\n\t\t\t\t\tmethod: \"post\",\r\n\t\t\t\t\turl: `${baseURL}site/file`,\r\n\t\t\t\t\tdata: formData,\r\n\t\t\t\t\theaders: this.headers,\r\n\t\t\t\t})\r\n\t\t\t\t\t.then(function (response) {\r\n\t\t\t\t\t\t//handle success\r\n\t\t\t\t\t\tconsole.log(response);\r\n\t\t\t\t\t\tif (response.status === 200 || response.status === 201){\r\n\t\t\t\t\t\t\tconsole.log('salaaam')\r\n\t\t\t\t\t\t\tthat.$message.success(\"عملیات با موفقیت انجام شد\")\r\n\t\t\t\t\t\t\t// this.imgSrc = response.data.src\r\n\t\t\t\t\t\t\tthat.$emit('ok', response.data)\r\n\t\t\t\t\t\t\tconsole.log('salaaamm')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthat.loading = false\r\n\t\t\t\t\t\t// this.editVisible = false\r\n\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch(function (response) {\r\n\t\t\t\t\t\t//handle error\r\n\t\t\t\t\t\t// console.log(response);\r\n\t\t\t\t\t\tthat.$message.error(\"خطا در آپلود عکس\")\r\n\t\t\t\t\t});\r\n\t\t\t})\r\n\t\t},\r\n\t}\r\n}\r\n</script>\r\n\r\n<style scoped>\r\n\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CropModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CropModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CropModal.vue?vue&type=template&id=55454f71&scoped=true&\"\nimport script from \"./CropModal.vue?vue&type=script&lang=js&\"\nexport * from \"./CropModal.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 \"55454f71\",\n null\n \n)\n\nexport default component.exports","<template>\r\n <div class=\"clearfix\">\r\n <!--accept=\"image/jpeg\"-->\r\n <AUpload\r\n :action=\"url\"\r\n :headers=\"headers\"\r\n list-type=\"picture-card\"\r\n :multiple=\"false\"\r\n :data=\"getData\"\r\n :file-list=\"fileList\"\r\n @remove=\"handleRemove\"\r\n @preview=\"handlePreview\"\r\n @select=\"select\"\r\n @change=\"handleChange\"\r\n :before-upload=\"handlebeforeUpload\">\r\n <div v-if=\"fileList.length==0\">\r\n <a-icon type=\"plus\"/>\r\n <div class=\"ant-upload-text\">\r\n بارگذاری\r\n </div>\r\n </div>\r\n </AUpload>\r\n <!--\t\t<img :src=\"srcImageCompressed\"/>-->\r\n <AModal :visible=\"previewVisible\" :footer=\"null\" @cancel=\"handleCancel\">\r\n <img alt=\"example\" style=\"width: 100%\" :src=\"previewImage\"/>\r\n </AModal>\r\n <CropModal v-if=\"srcImageCompressed\"\r\n :imgBeforeCrop=\"srcImageCompressed\"\r\n @cancel=\"closeCropModal\"\r\n @ok=\"handleOK\"\r\n />\r\n\r\n </div>\r\n</template>\r\n<script>\r\n\r\n// import imageCompressor from 'vue-image-compressor'\r\n// import CropModal from \"@/components/ImageCropper/CropModal\";\r\nimport CropModal from '@/components/imageCropper/CropModal'\r\nimport {baseURL} from '@/axios'\r\n//import themeConfig from \"/themeConfig\";\r\n//import {baseURL} from \"@/axios\";\r\nimport {imageResize} from 'img-reduce-size-js'\r\n\r\n// import imageCompressor from \"vue-image-compressor\";\r\n\r\nfunction getBase64 (file) {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader()\r\n reader.readAsDataURL(file)\r\n reader.onload = () => resolve(reader.result)\r\n reader.onerror = error => reject(error)\r\n })\r\n}\r\n\r\nexport default {\r\n name: 'UploadInput',\r\n components: {CropModal},\r\n props: {\r\n limit: {\r\n type: Number,\r\n required: false,\r\n default: 20\r\n }\r\n },\r\n data () {\r\n return {\r\n url: `${baseURL}site/file`,\r\n previewVisible: false,\r\n previewImage: '',\r\n srcImageCompressed: undefined,\r\n fileList: [],\r\n fileListReserve: [],\r\n openModal: false\r\n }\r\n },\r\n watch: {\r\n fileList (n, o) {\r\n console.log(n)\r\n if (n.length > o.length) {\r\n this.$emit('add-file', n)\r\n } else if (n.length < o.length) {\r\n this.$emit('remove-file', n)\r\n }\r\n }\r\n },\r\n methods: {\r\n handleOK (res) {\r\n /*\t\t\tthis.fileList = this.fileListReserve\r\n this.fileListReserve = []*/\r\n this.$emit('ok', res)\r\n this.srcImageCompressed = undefined\r\n console.log('gg?', this.srcImageCompressed)\r\n },\r\n closeCropModal () {\r\n this.srcImageCompressed = undefined\r\n this.fileList = []\r\n },\r\n handleRemove (file) {\r\n this.$emit('remove', file)\r\n console.log('remove', file)\r\n },\r\n handleCancel () {\r\n this.previewVisible = false\r\n },\r\n async handlePreview (file) {\r\n if (!file.url && !file.preview) {\r\n file.preview = await getBase64(file.originFileObj)\r\n // this.imageFunction()\r\n }\r\n this.previewImage = file.url || file.preview\r\n this.previewVisible = true\r\n },\r\n handleChange ({\r\n fileList,\r\n event,\r\n file\r\n }) {\r\n /*\t\t\tconsole.log(fileList);\r\n console.log(event);\r\n console.log(file);*/\r\n if (file.status === 'done' && file.response && file.response.id) {\r\n // this.$emit('ok', file.response);\r\n console.log(file.response)\r\n\r\n this.imageCompressor(file.response.full_src)\r\n // console.log('ffffff', this.srcImageCompressed)\r\n\r\n }\r\n this.fileList = fileList\r\n },\r\n\r\n imageCompressor(src) {\r\n // const reader = new FileReader();\r\n\r\n // const that = this\r\n\r\n // reader.readAsDataURL(file);\r\n\r\n // reader.onload = function (e) {\r\n const imgElement = document.createElement(\"img\");\r\n // imgElement.src = event.target.result;\r\n imgElement.crossOrigin = '*'\r\n imgElement.src = src;\r\n imgElement.onload = async (e) => {\r\n const canvas = document.createElement(\"canvas\")\r\n const MAX_WIDTH = 400\r\n\r\n const scaleSize = MAX_WIDTH / e.target.width\r\n canvas.width = MAX_WIDTH;\r\n canvas.height = e.target.height * scaleSize;\r\n\r\n const ctx = canvas.getContext(\"2d\");\r\n\r\n await ctx.drawImage(e.target, 0, 0, canvas.width, canvas.height);\r\n\r\n const srcEncoded = ctx.canvas.toDataURL(e.target, \"image/jpeg\");\r\n\r\n // document.querySelector(\"#jjjjj\").src = srcEncoded\r\n if (this.editVisible === false) {\r\n this.editVisible = true\r\n // console.log('test2', that.afterResize)\r\n }\r\n this.$nextTick(() => {\r\n this.srcImageCompressed = srcEncoded\r\n // console.log('jjjjj',this.srcImageCompressed)\r\n })\r\n }\r\n // }\r\n\r\n },\r\n/* async imageCompressor (src) {\r\n const response = await fetch(src)\r\n // here image is url/location of image\r\n const blob = await response.blob()\r\n const file = new File([blob], 'image.jpg', {type: blob.type})\r\n\r\n const that = this\r\n imageResize({\r\n file: file,\r\n maxSize: 500\r\n }).then(function (blob) {\r\n let reader = new FileReader()\r\n reader.readAsDataURL(blob)\r\n reader.onloadend = function () {\r\n\r\n that.srcImageCompressed = reader.result\r\n // that.openModal = true\r\n console.log('jjjjj', that.srcImageCompressed)\r\n }\r\n }).catch(function (err) {\r\n console.error(err)\r\n })\r\n },*/\r\n select () {\r\n // console.log(\"555 ==> \", 555);\r\n },\r\n getData () {\r\n return {\r\n has_thumb: 1,\r\n has_watermark: 0,\r\n subject: 1,\r\n title: 1,\r\n type: 3\r\n }\r\n },\r\n handlebeforeUpload (file) {\r\n\r\n }\r\n },\r\n computed: {\r\n headers () {\r\n return {\r\n 'Authorization': 'Bearer ' + localStorage.getItem('accessToken') || localStorage.accessToken\r\n }\r\n }\r\n }\r\n}\r\n</script>\r\n<style>\r\n/* you can make up upload button and sample style by using stylesheets */\r\n.ant-upload-select-picture-card i {\r\n font-size: 32px;\r\n color: #999;\r\n}\r\n\r\n.ant-upload-select-picture-card .ant-upload-text {\r\n margin-top: 8px;\r\n color: #666;\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleImageCropperUpload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleImageCropperUpload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SingleImageCropperUpload.vue?vue&type=template&id=2c3d7e22&\"\nimport script from \"./SingleImageCropperUpload.vue?vue&type=script&lang=js&\"\nexport * from \"./SingleImageCropperUpload.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SingleImageCropperUpload.vue?vue&type=style&index=0&id=2c3d7e22&prod&lang=css&\"\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","import Vue from 'vue'\r\n\r\nVue.prototype.$myrules = 'salam'\r\n/*{\r\n fa_input (val, required) {\r\n return [val, {\r\n rules: [\r\n {\r\n required: required,\r\n message: 'لطفا مقدار را وارد کنید'\r\n },\r\n {\r\n pattern: /^([\\u0600-\\u06FF\\uFB8A\\u067E\\u0686\\u06AF\\u200C ])+$/,\r\n message: ` مقدار ${field} باید فارسی باشد `\r\n }\r\n ]\r\n }]\r\n }\r\n}*/\r\n\r\nexport function inputFa (val, required) {\r\n return [val, { rules: [{ required: required !== undefined? required: true, message: 'لطفا مقدار را وارد کنید' }, {\r\n pattern: /^([\\u0600-\\u06FF\\uFB8A\\u067E\\u0686\\u06AF\\u200C ])+$/,\r\n message: ` مقدار وارد شده باید فارسی باشد `\r\n }] }]\r\n}\r\nexport function input (val, required) {\r\n return [val , { rules: [{ required: required !== undefined? required: true, message: 'لطفا مقدار را وارد کنید' }] }]\r\n}\r\nexport function inputSwitch (val, required) {\r\n let req\r\n if (required){\r\n req = required\r\n }\r\n else {\r\n req = false\r\n }\r\n return [val,{ initialValue:false,valuePropName:'checked',rules: [{ required: req }] }]\r\n}\r\n\r\nfunction b(val){\r\n return (val==null || val===false);\r\n}\r\n\r\nexport function scrollToObject(id, navQuery = 'nav.header-navbar.navbar.navbar-shadow', offsetNav = 30) {\r\n const nav = document.querySelector(navQuery)\r\n let navHeight = 63 + offsetNav\r\n if (nav) navHeight = nav.getBoundingClientRect().height + offsetNav\r\n const element = document.getElementById(id)\r\n if (element) {\r\n window.scrollTo({\r\n top: element.getBoundingClientRect().top - navHeight,\r\n left: 0,\r\n behavior: 'smooth',\r\n })\r\n }\r\n}\r\n","module.exports = {\r\n imageResize: (settings) => {\r\n const file = settings.file;\r\n const maxSize = settings.maxSize;\r\n const reader = new FileReader();\r\n let image = new Image();\r\n const canvas = document.createElement('canvas');\r\n const dataURItoBlob = function(dataURI) {\r\n const bytes = dataURI.split(',')[0].indexOf('base64') >= 0 ?\r\n atob(dataURI.split(',')[1]) :\r\n unescape(dataURI.split(',')[1]);\r\n const mime = dataURI.split(',')[0].split(':')[1].split(';')[0];\r\n const max = bytes.length;\r\n const ia = new Uint8Array(max);\r\n for (let i = 0; i < max; i++)\r\n ia[i] = bytes.charCodeAt(i);\r\n return new Blob([ia], { type: mime });\r\n };\r\n const resize = function() {\r\n let width = image.width;\r\n let height = image.height;\r\n if (width > height) {\r\n if (width > maxSize) {\r\n height *= maxSize / width;\r\n width = maxSize;\r\n }\r\n } else {\r\n if (height > maxSize) {\r\n width *= maxSize / height;\r\n height = maxSize;\r\n }\r\n }\r\n canvas.width = width;\r\n canvas.height = height;\r\n canvas.getContext('2d').drawImage(image, 0, 0, width, height);\r\n const dataUrl = canvas.toDataURL('image/jpeg');\r\n return dataURItoBlob(dataUrl);\r\n };\r\n return new Promise(function(ok, no) {\r\n if (!file.type.match(/image.*/)) {\r\n no(new Error(\"Not an image\"));\r\n return;\r\n }\r\n reader.onload = function(r) {\r\n image.onload = function() { return ok(resize()); };\r\n image.src = r.target.result.toString();\r\n };\r\n reader.readAsDataURL(file);\r\n });\r\n }\r\n};","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./add.vue?vue&type=style&index=0&id=7f4eb522&prod&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleImageCropperUpload.vue?vue&type=style&index=0&id=2c3d7e22&prod&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"clearfix\"},[_c('AUpload',{attrs:{\"action\":_vm.url,\"headers\":_vm.headers,\"list-type\":\"picture-card\",\"multiple\":false,\"data\":_vm.getData,\"file-list\":_vm.fileList,\"remove\":_vm.handleRemove},on:{\"preview\":_vm.handlePreview,\"select\":_vm.select,\"change\":_vm.handleChange}},[(_vm.fileList.length===0)?_c('div',[_c('a-icon',{attrs:{\"type\":\"plus\"}}),_c('div',{staticClass:\"ant-upload-text\"},[_vm._v(\"\\n بارگذاری\\n \")])],1):_vm._e()]),_c('AModal',{attrs:{\"visible\":_vm.previewVisible,\"footer\":null},on:{\"cancel\":_vm.handleCancel}},[_c('img',{staticStyle:{\"width\":\"100%\"},attrs:{\"alt\":\"example\",\"src\":_vm.previewImage}})])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"clearfix\">\r\n <!--accept=\"image/jpeg\"-->\r\n <AUpload\r\n :action=\"url\"\r\n :headers=\"headers\"\r\n list-type=\"picture-card\"\r\n :multiple=\"false\"\r\n :data=\"getData\"\r\n :file-list=\"fileList\"\r\n :remove=\"handleRemove\"\r\n @preview=\"handlePreview\"\r\n @select=\"select\"\r\n @change=\"handleChange\">\r\n <div v-if=\"fileList.length===0\">\r\n <a-icon type=\"plus\"/>\r\n <div class=\"ant-upload-text\">\r\n بارگذاری\r\n </div>\r\n </div>\r\n </AUpload>\r\n <AModal :visible=\"previewVisible\" :footer=\"null\" @cancel=\"handleCancel\">\r\n <img alt=\"example\" style=\"width: 100%\" :src=\"previewImage\"/>\r\n </AModal>\r\n </div>\r\n</template>\r\n<script>\r\nfunction getBase64(file) {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = error => reject(error);\r\n });\r\n}\r\n\r\n//import themeConfig from \"/themeConfig\";\r\nimport {baseURL} from \"../../axios\";\r\n\r\nexport default {\r\n name: 'UploadInput',\r\n props:{\r\n limit:{\r\n type: Number,\r\n required:false,\r\n default:20\r\n },\r\n },\r\n data() {\r\n return {\r\n url: (baseURL+'site/file'),\r\n previewVisible: false,\r\n previewImage: '',\r\n fileList: [],\r\n };\r\n },\r\n watch: {\r\n fileList(n, o) {\r\n if (n.length > o.length) {\r\n this.$emit('add-file', n);\r\n } else if (n.length < o.length) {\r\n this.$emit('remove-file', n);\r\n }\r\n }\r\n },\r\n methods: {\r\n handleRemove(file){\r\n // console.log(file,'fileeee')\r\n this.$emit('remove',file);\r\n },\r\n handleCancel() {\r\n this.previewVisible = false;\r\n },\r\n async handlePreview(file) {\r\n if (!file.url && !file.preview) {\r\n file.preview = await getBase64(file.originFileObj);\r\n }\r\n this.previewImage = file.url || file.preview;\r\n this.previewVisible = true;\r\n },\r\n handleChange({fileList, event, file}) {\r\n // console.log(fileList);\r\n // console.log(event);\r\n // console.log(file);\r\n if (file.status==='done' && file.response && file.response.id) {\r\n this.$emit('ok', file.response);\r\n }\r\n this.fileList = fileList;\r\n },\r\n select() {\r\n // console.log(\"555 ==> \", 555);\r\n },\r\n getData() {\r\n return {\r\n has_thumb: 1,\r\n has_watermark: 0,\r\n subject: 1,\r\n title: 1\r\n }\r\n },\r\n },\r\n computed: {\r\n headers() {\r\n return {\r\n 'Authorization': 'Bearer ' + localStorage.getItem(\"token\") || localStorage.token\r\n }\r\n }\r\n }\r\n};\r\n</script>\r\n<style>\r\n/* you can make up upload button and sample style by using stylesheets */\r\n.ant-upload-select-picture-card i {\r\n font-size: 32px;\r\n color: #999;\r\n}\r\n\r\n.ant-upload-select-picture-card .ant-upload-text {\r\n margin-top: 8px;\r\n color: #666;\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleUploadInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleUploadInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SingleUploadInput.vue?vue&type=template&id=a203b430&\"\nimport script from \"./SingleUploadInput.vue?vue&type=script&lang=js&\"\nexport * from \"./SingleUploadInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SingleUploadInput.vue?vue&type=style&index=0&id=a203b430&prod&lang=css&\"\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":""}
Copyright ©2k19 -
Hexid
|
Tex7ure