diff --git a/src/component/Detail/AccessoryReplaceModal.vue b/src/component/Detail/AccessoryReplaceModal.vue deleted file mode 100644 index 97dcd450..00000000 --- a/src/component/Detail/AccessoryReplaceModal.vue +++ /dev/null @@ -1,343 +0,0 @@ - - - diff --git a/src/component/Detail/DesignDetail.vue b/src/component/Detail/DesignDetail.vue index 26b724f3..e30ecc6a 100644 --- a/src/component/Detail/DesignDetail.vue +++ b/src/component/Detail/DesignDetail.vue @@ -10,8 +10,8 @@ :closable="false" >
-
Details
-
Edit the details of your design
+
{{ $t('DesignDetail.Details') }}
+
{{ $t('DesignDetail.EditDetails') }}
@@ -59,7 +59,7 @@
- Submit + {{ $t('DesignDetail.Submit') }}
@@ -67,7 +67,7 @@
-
Current Apparel
+
{{ $t('DesignDetail.CurrentApparel') }}
@@ -75,7 +75,7 @@
-
Current Print
+
{{ $t('DesignDetail.CurrentPrint') }}
@@ -86,7 +86,7 @@
-
Current Color
+
{{ $t('DesignDetail.CurrentColor') }}
@@ -120,8 +120,6 @@
- -
@@ -130,10 +128,8 @@ - diff --git a/src/component/Detail/PlacementModalMobile.vue b/src/component/Detail/PlacementModalMobile.vue deleted file mode 100644 index 94f7982d..00000000 --- a/src/component/Detail/PlacementModalMobile.vue +++ /dev/null @@ -1,570 +0,0 @@ - - - \ No newline at end of file diff --git a/src/component/Detail/habit.vue b/src/component/Detail/habit.vue index 94938354..49214d93 100644 --- a/src/component/Detail/habit.vue +++ b/src/component/Detail/habit.vue @@ -2,13 +2,13 @@
- Workspace + {{ $t('Habit.Workspace') }}
-

Workspace Setting

-
adjust your workspace setting
+

{{ $t('Habit.WorkspaceSetting') }}

+
{{ $t('Habit.settingWorkspace') }}
@@ -56,15 +56,14 @@ class="habit_Overal_Single_text" :class="{ active: !workspaceItem.overallSingle }" > - Overall + {{ $t('Habit.Overall') }}
- Single - + {{ $t('Habit.Single') }}
@@ -91,8 +90,8 @@ >
-
System
-
Designer
+
{{ $t('Habit.System') }}
+
{{ $t('Habit.Designer') }}
@@ -102,7 +101,7 @@ > - Mannequin + {{ $t('Habit.Mannequin') }} @@ -110,7 +109,7 @@
-
Current
+
{{ $t('Habit.Current') }}
@@ -121,14 +120,14 @@ class="habit_System_Seleves_text" :class="{ active: !systemSeleves }" > - System + {{ $t('Habit.System') }}
- User + {{ $t('Habit.User') }}
@@ -144,11 +143,9 @@
-
-
@@ -161,6 +158,7 @@ import { Https } from "@/tool/https"; import type { MenuProps } from "ant-design-vue"; import { Modal,message,Upload} from 'ant-design-vue'; import { ExclamationCircleOutlined } from '@ant-design/icons-vue'; +import { useI18n } from "vue-i18n"; export default defineComponent({ components: { DownOutlined, @@ -200,6 +198,7 @@ export default defineComponent({ let sex = ref([ ]) + const {t} = useI18n() return{ systemSeleves, @@ -209,7 +208,8 @@ export default defineComponent({ workspaceItem, workspaceItemName, singleTypeList, - sex + sex, + t } }, watch:{ @@ -427,7 +427,7 @@ export default defineComponent({ cancelDsign(index:any){ let _this = this Modal.confirm({ - title: 'Whether to delete the workspace?', + title: _this.t('Habit.jsContent1'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', @@ -461,7 +461,7 @@ export default defineComponent({ // this.deleteWorkspace(data) }else{ if(this.workspaceItemName == ''){ - message.warning('Please enter a workbench name'); + message.warning(this.t('Habit.jsContent2')); }else{ if(index == -1){ let data = { diff --git a/src/component/HomePage/ColorboardUpload.vue b/src/component/HomePage/ColorboardUpload.vue index c19d7df2..146a6f79 100644 --- a/src/component/HomePage/ColorboardUpload.vue +++ b/src/component/HomePage/ColorboardUpload.vue @@ -2,7 +2,7 @@
@@ -19,7 +19,7 @@
- Palette + {{ $t('ColorboardUpload.Palette') }}
@@ -28,10 +28,10 @@
- HEX + {{ $t('ColorboardUpload.HEX') }}
- RGBA + {{ $t('ColorboardUpload.RGBA') }}
@@ -58,7 +58,7 @@
- Auto Recognize + {{ $t('ColorboardUpload.AutoRecognize') }}
@@ -99,13 +99,13 @@
- Color Code + {{ $t('ColorboardUpload.ColorCode') }}
- Extract Color + {{ $t('ColorboardUpload.ExtractColor') }}
@@ -127,6 +127,7 @@ import {getUploadUrl,rgbToHsv} from '@/tool/util' import {useStore} from 'vuex' import ColorThief from '@/tool/colorthief/colorthief' import { message,Upload} from 'ant-design-vue'; +import { useI18n } from 'vue-i18n'; export default defineComponent({ components:{ Chrome, @@ -141,11 +142,14 @@ export default defineComponent({ }) //顔色选择器默认颜色 let selectColorList = ref({ }) + + let {t} = useI18n() return { fileList, colorList, selectColor, selectColorList, + t, } }, watch:{ @@ -218,7 +222,7 @@ export default defineComponent({ // return `rgb(${r}, ${g}, ${b})`; // box.style.backgroundColor = label.textContent = result.sRGBHex; } catch (e) { - message.warning("Your browser does not support it") + message.warning(this.t('ColorboardUpload.jsContent1')) } }) // if ("EyeDropper" in window) { @@ -266,7 +270,7 @@ export default defineComponent({ this.setColorboardList(colorList) this.getColorBg = true }else{ - message.warning("Can't find the TCX color") + message.warning(this.t('ColorboardUpload.jsContent2')) } }) }, @@ -371,11 +375,11 @@ export default defineComponent({ beforeUpload(file){ const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg' || file.type === 'image/bmp'; if (!isJpgOrPng) { - message.warning('You can only upload Image file!'); + message.warning(this.t('ColorboardUpload.jsContent3')); } const isLt2M = file.size / 1024 / 1024 < 5; if (!isLt2M) { - message.warning('Image must smaller than 5MB!'); + message.warning(this.t('ColorboardUpload.jsContent4')); } return (isJpgOrPng && isLt2M) || Upload.LIST_IGNORE; }, diff --git a/src/component/HomePage/Cropper.vue b/src/component/HomePage/Cropper.vue index 61be1cab..e14ba8a4 100644 --- a/src/component/HomePage/Cropper.vue +++ b/src/component/HomePage/Cropper.vue @@ -10,11 +10,11 @@ >
-
Cut picture
+
{{ $t('Cropper.Cutpicture') }}
-
Finish
-
Cancel
+
{{ $t('Cropper.Finish') }}
+
{{ $t('Cropper.Cancel') }}
@@ -45,7 +45,7 @@
-
Crop Preview
+
{{ $t('Cropper.CropPreview') }}
diff --git a/src/component/HomePage/Generate.vue b/src/component/HomePage/Generate.vue index 8a68c349..413dae26 100644 --- a/src/component/HomePage/Generate.vue +++ b/src/component/HomePage/Generate.vue @@ -8,7 +8,7 @@ v-model="checkbox[0].type" @click="setKeyword(0)" /> - Image Only + {{ $t('Generate.ImageOnly') }}
@@ -18,7 +18,7 @@ v-model="checkbox[1].type" @click="setKeyword(1)" /> - Text Only + {{ $t('Generate.TextOnly') }}
@@ -28,14 +28,14 @@ v-model="checkbox[2].type" @click="setKeyword(2)" /> - Text-Image + {{ $t('Generate.TextImage') }}
{{ printModel.name }}
    -
  • Model1
  • -
  • Model2
  • +
  • {{ $t('Generate.Model1') }}
  • +
  • {{ $t('Generate.Model2') }}
@@ -43,13 +43,13 @@ -
Generate
- The entered content exceeds the maximum length. +
{{ $t('Generate.Generate') }}
+ {{ $t('Generate.maximumLength') }}
@@ -182,6 +182,7 @@ import GO from "@/tool/GO"; import { getCookie } from "@/tool/cookie"; import { getUploadUrl } from "@/tool/util"; import { forEach } from "jszip"; +import { useI18n } from "vue-i18n"; export default defineComponent({ props: ["msg",'sketchCatecoryList'], setup() { @@ -230,6 +231,8 @@ export default defineComponent({ let loadingShow = ref(false) let inputShow = ref(false) let inputTime = ref() + + let {t} = useI18n() return { imgList, selectImgList, @@ -255,6 +258,7 @@ export default defineComponent({ workspace, inputShow, inputTime, + t, }; }, data(prop) { @@ -320,11 +324,11 @@ export default defineComponent({ file.type === "image/jpg" || file.type === "image/bmp"; if (!isJpgOrPng) { - message.warning("You can only upload Image file!"); + message.warning(this.t('Generate.jsContent1')); } const isLt2M = file.size / 1024 / 1024 < 2; if (!isLt2M) { - message.warning("Image must smaller than 2MB!"); + message.warning(this.t('Generate.jsContent2')); } return (isJpgOrPng && isLt2M) || Upload.LIST_IGNORE; }, @@ -364,7 +368,7 @@ export default defineComponent({ getgenerate(){ if(!this.searchPictureName){ message.warning( - "Please enter content" + this.t('Generate.jsContent3') ); return } @@ -372,13 +376,13 @@ export default defineComponent({ let arr = this.searchPictureName.split(/\s+/).length if(arr > 75){ message.warning( - "The entered content exceeds the maximum length." + this.t('Generate.jsContent4') ); return } }else{ message.warning( - "Please enter content" + this.t('Generate.jsContent5') ); return } @@ -444,7 +448,7 @@ export default defineComponent({ ); let arr = this.store.state.UploadFilesModule.sketchboard; if (arr.length >= 8) { - message.warning("You can select up to 8 images"); + message.warning(this.t('Generate.jsContent6')); } else { this.sketchboardList = fileList } @@ -458,7 +462,7 @@ export default defineComponent({ if (index > -1) { this.sketchboardList.splice(index, 1); } - message.error(file.name + "upload failed"); + message.error(file.name + this.t('Generate.jsContent5')); } }, showFileCategory(file: any) { diff --git a/src/component/HomePage/Header.vue b/src/component/HomePage/Header.vue index 6dde3aa8..f1df36b4 100644 --- a/src/component/HomePage/Header.vue +++ b/src/component/HomePage/Header.vue @@ -6,7 +6,7 @@
-
/ hello@{{ userInfo?.userName }}
+
/ {{$t('Header.hello')}}@{{ userInfo?.userName }}
- HOME + {{$t('Header.HOME')}}
- LIBRARY + {{$t('Header.LIBRARY')}}
- HISTORY + {{$t('Header.HISTORY')}} +
@@ -60,12 +61,12 @@
-
you have binded email
+
{{$t('Header.emailContent')}}
{{ userInfo.email }}
-
Email
+
{{$t('Header.Email')}}
- Next step + {{$t('Header.NextStep')}}
@@ -110,17 +111,17 @@
{{$t('Header.verification')}}
@@ -143,11 +144,18 @@ import Habit from "@/component/Detail/habit.vue"; import { Https } from "@/tool/https"; import { Modal, message } from "ant-design-vue"; import { ExclamationCircleOutlined } from "@ant-design/icons-vue"; +import { useI18n } from "vue-i18n"; export default defineComponent({ components: { VerificationCodeInput, Habit, }, + setup(){ + const {t} = useI18n() + return { + t + } + }, data() { return { isShowOperate: false, @@ -210,7 +218,7 @@ export default defineComponent({ emailNextStepFun() { if (!isEmail(this.email)) { - message.warning("The email format is incorrect"); + message.warning(this.t('Header.jsContent1')); return; } let data = { @@ -225,7 +233,7 @@ export default defineComponent({ (this.emailCode = ["", "", "", "", "", ""]), this.createTimer(); hide(); - message.success("Succeeded in binding the mailbox."); + message.success(this.t('Header.jsContent2')); } }) .catch((res) => { @@ -312,7 +320,7 @@ export default defineComponent({ this.timer = setTimeout(() => { this.modalWarning = Modal.warning({ title: () => - `You have not performed any operation for a long time. You must be active;otherwise, you will log out in ${_this.numTime} S`, + this.t('Header.jsContent3',{numTime:_this.numTime}), icon: createVNode(ExclamationCircleOutlined), okText: "Ok", onOk() { diff --git a/src/component/HomePage/MarketingSketchUpload.vue b/src/component/HomePage/MarketingSketchUpload.vue index 22538f13..e4ab5349 100644 --- a/src/component/HomePage/MarketingSketchUpload.vue +++ b/src/component/HomePage/MarketingSketchUpload.vue @@ -2,10 +2,10 @@
- Upload + {{ $t('MarketingSketchUpload.Upload') }}
- My Library + {{ $t('MarketingSketchUpload.MyLibrary') }}
@@ -46,7 +46,7 @@
- Maximum 15 images can be uploaded, Maximum 2M per image + {{ $t('MarketingSketchUpload.maximumLength') }}
@@ -61,12 +61,15 @@ import {getUploadUrl} from '@/tool/util' import {useStore} from 'vuex' import { message,Upload} from 'ant-design-vue'; import Material from '@/component/HomePage/Material.vue' +import { useI18n } from 'vue-i18n'; export default defineComponent({ components:{Material}, setup(){ let fileList:any = ref([]) + let {t} = useI18n() return { - fileList + fileList, + t, } }, data(){ @@ -115,18 +118,18 @@ export default defineComponent({ if(index > -1){ this.fileList.splice(index, 1) } - message.error(file.name + 'upload failed') + message.error(file.name + this.t('MarketingSketchUpload.jsContent1')) } }, beforeUpload(file:any){ const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg' || file.type === 'image/bmp'; if (!isJpgOrPng) { - message.warning('You can only upload Image file!'); + message.warning(this.t('MarketingSketchUpload.jsContent2')); } const isLt2M = file.size / 1024 / 1024 < 2; if (!isLt2M) { - message.warning('Image must smaller than 2MB!'); + message.warning(this.t('MarketingSketchUpload.jsContent3')); } return (isJpgOrPng && isLt2M) || Upload.LIST_IGNORE; }, @@ -149,7 +152,7 @@ export default defineComponent({ status:'done', } if(this.fileList.length == 15){ - message.warning('Maximum number of allowable file uploads has been exceeded') + message.warning(this.t('MarketingSketchUpload.jsContent5')) break } this.fileList.push(data) diff --git a/src/component/HomePage/Material.vue b/src/component/HomePage/Material.vue index f23b1f61..158792e0 100644 --- a/src/component/HomePage/Material.vue +++ b/src/component/HomePage/Material.vue @@ -10,7 +10,7 @@
- +
@@ -62,7 +62,7 @@
- PIN + {{ $t('Material.PIN') }}
diff --git a/src/component/HomePage/MoodboardUpload.vue b/src/component/HomePage/MoodboardUpload.vue index ae0180b2..a9b03f19 100644 --- a/src/component/HomePage/MoodboardUpload.vue +++ b/src/component/HomePage/MoodboardUpload.vue @@ -7,21 +7,21 @@ class="switch_type_item" :class="[openClick == 1 ? 'select_swtich' : '']" > - Upload + {{ $t('MoodboardUpload.Upload') }}
- Library + {{ $t('MoodboardUpload.Library') }}
- Generate + {{ $t('MoodboardUpload.Generate') }}
@@ -50,7 +50,7 @@ class="delete_file_block" @click="deleteFile(file)" > - Delete + {{ $t('MoodboardUpload.Delete') }}
@@ -106,8 +106,10 @@
- PIN + {{ $t('PrintboardUpload.PIN') }}
@@ -86,7 +86,7 @@ @@ -48,14 +48,17 @@ import {getUploadUrl} from '@/tool/util' import {getCookie} from '@/tool/cookie' import { message, Upload } from 'ant-design-vue'; import {useStore} from 'vuex' +import { useI18n } from 'vue-i18n'; export default defineComponent({ props: ["msg"], setup(prop) { let fileList:any = ref([]) + let {t} = useI18n() return{ - fileList + fileList, + t } }, data(){ @@ -86,11 +89,11 @@ export default defineComponent({ beforeUpload(file:any){ const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg' || file.type === 'image/bmp'; if (!isJpgOrPng) { - message.warning('You can only upload Image file!'); + message.warning((this.t('Upload.jsContent2')); } const isLt2M = file.size / 1024 / 1024 < 2; if (!isLt2M) { - message.warning('Image must smaller than 2MB!'); + message.warning(this.t('Upload.jsContent2')); } return (isJpgOrPng && isLt2M) || Upload.LIST_IGNORE; }, @@ -112,7 +115,7 @@ export default defineComponent({ if(index > -1){ this.fileList.splice(index, 1) } - message.error(file.name + 'upload failed') + message.error(file.name + this.t('Upload.jsContent3')) } }, deleteFile(index:any){ diff --git a/src/component/HomePage/collectionModal.vue b/src/component/HomePage/collectionModal.vue index 96c420d6..d8790599 100644 --- a/src/component/HomePage/collectionModal.vue +++ b/src/component/HomePage/collectionModal.vue @@ -11,12 +11,12 @@ >
-
Moodboard
-
Printboard
-
Colorboard
-
Sketchboard
+
{{ $t('collectionModal.Moodboard') }}
+
{{ $t('collectionModal.Printboard') }}
+
{{ $t('collectionModal.Colorboard') }}
+
{{ $t('collectionModal.Sketchboard') }}
-
select moodboard for your collection
+
{{ $t('collectionModal.collection') }}
@@ -63,6 +63,7 @@ import { ExclamationCircleOutlined } from '@ant-design/icons-vue'; import { Modal,message } from 'ant-design-vue'; import {useStore} from 'vuex' import GO from "@/tool/GO"; +import { useI18n } from 'vue-i18n' export default defineComponent({ components:{ Generate, @@ -72,6 +73,12 @@ export default defineComponent({ SketchboardUpload, MarketingSketchUpload }, + state(){ + let {t} = useI18n() + return { + t, + } + }, data(){ return{ showCollectionModal:false, @@ -86,7 +93,7 @@ export default defineComponent({ let moodboard = this.store.state.UploadFilesModule.moodboard if(moodboard.length > 1){ if (!disposeMoodboard || disposeMoodboard.length == 0) { - message.warning('You must select the image and then use the layout.') + message.warning(this.$t('collectionModal.jsContent1')) return } } @@ -119,7 +126,7 @@ export default defineComponent({ cancelDsign(){ let _this = this Modal.confirm({ - title: 'The uploaded files will not be saved, being sure to continue? ', + title: this.$t('collectionModal.jsContent2'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', @@ -139,7 +146,7 @@ export default defineComponent({ let colorBoards = this.store.state.UploadFilesModule.colorBoards if(!colorBoards || colorBoards?.length < 1){ - message.warning('You must choose one or more colors for further process.') + message.warning(this.$t('collectionModal.jsContent3')) return } this.store.commit('clearAllId') @@ -163,6 +170,7 @@ export default defineComponent({ font-size: 1.8rem; font-weight: 900; color: rgba(0,0,0,.65); + z-index: 2; align-items: center; .collection_progress{ width: 8rem; diff --git a/src/component/HomePage/layout.vue b/src/component/HomePage/layout.vue index e57aa2c3..49263e9e 100644 --- a/src/component/HomePage/layout.vue +++ b/src/component/HomePage/layout.vue @@ -14,7 +14,7 @@
-
MoodBoard Design
+
{{ $t('layout.MoodBoardDesign') }}
@@ -74,7 +74,7 @@ class="button_second submit_button" @click="submitTemplate()" > - Submit + {{ $t('layout.Submit') }}
diff --git a/src/component/LibraryPage/ModelPlacement.vue b/src/component/LibraryPage/ModelPlacement.vue index cf33cb9c..72ccbe8e 100644 --- a/src/component/LibraryPage/ModelPlacement.vue +++ b/src/component/LibraryPage/ModelPlacement.vue @@ -12,23 +12,23 @@
-
Registration
+
{{ $t('ModelPlacement.Registration') }}
-
Submit
+
{{ $t('ModelPlacement.Submit') }}
-
Preview
+
{{ $t('ModelPlacement.Preview') }}
-
Back
+
{{ $t('ModelPlacement.Back') }}
-
Restore
+
{{ $t('ModelPlacement.Restore') }}
@@ -36,11 +36,11 @@
- System + {{ $t('ModelPlacement.System') }}
- Library + {{ $t('ModelPlacement.Library') }}
@@ -67,18 +67,18 @@
- Point + {{ $t('ModelPlacement.Point') }}
-
Remove Point
+
{{ $t('ModelPlacement.RemovePoint') }}
-
Please change the pure white inside the mannequin for another color to enhance your experience
+
{{ $t('ModelPlacement.mannequinHint') }}
@@ -139,6 +139,7 @@ import { VueCropper } from "vue-cropper"; import { useStore } from "vuex"; import { Modal,message } from 'ant-design-vue'; import { ExclamationCircleOutlined } from '@ant-design/icons-vue'; +import { useI18n } from 'vue-i18n'; export default defineComponent({ components:{ VueCropper, @@ -158,6 +159,8 @@ export default defineComponent({ let userInfo:any = ref() let cropperTime:any = ref() + + let {t} = useI18n() return { store, oldLocationList, @@ -172,7 +175,9 @@ export default defineComponent({ manager, userInfo, - cropperTime + cropperTime, + + t } }, data(){ @@ -343,15 +348,15 @@ export default defineComponent({ this.locationList=[] this.pointList = [ { - title:'SHOULDER', + title:this.t('ModelPlacement.SHOULDER'), pointList:[{type:'shoulderLeft',color:'#6E70FF',show:true,field:'shoulder'},{type:'shoulderRight',color:'#6E70FF',show:true,field:'shoulder'}] }, { - title:'WAISTBAND', + title:this.t('ModelPlacement.WAISTBAND'), pointList:[{type:'waistbandLeft',color:'#6FCEFF',show:true,field:'waistband'},{type:'waistbandRight',color:'#6FCEFF',show:true,field:'waistband'}] }, { - title:'HAND', + title:this.t('ModelPlacement.HAND'), pointList:[{type:'handLeft',color:'#d88e8e',show:true,field:'hand'},{type:'handRight',color:'#d88e8e',show:true,field:'hand'}] }, ] @@ -523,7 +528,7 @@ export default defineComponent({ let _this = this if(!this.isSubmit){ Modal.confirm({ - title: "You haven't marked the image yet, and the model will not be uploaded. Are you sure you want to close it?", + title: this.t('ModelPlacement.jsContent1'), icon: createVNode(ExclamationCircleOutlined), okText: 'Ok', cancelText: 'Cancel', @@ -651,7 +656,7 @@ export default defineComponent({ let _this = this return new Promise((resolve,reject)=>{ Modal.confirm({ - title: 'This picture has been uploaded whether to continue uploading? ', + title: this.t('ModelPlacement.jsContent2'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', diff --git a/src/component/LibraryPage/ModelPlacementMobile.vue b/src/component/LibraryPage/ModelPlacementMobile.vue index dd44daf6..525efe32 100644 --- a/src/component/LibraryPage/ModelPlacementMobile.vue +++ b/src/component/LibraryPage/ModelPlacementMobile.vue @@ -12,23 +12,23 @@
-
Registration
+
{{ $t('ModelPlacementMobile.Registration') }}
-
Submit
+
{{ $t('ModelPlacementMobile.Submit') }}
-
Preview
+
{{ $t('ModelPlacementMobile.Preview') }}
-
Back
+
{{ $t('ModelPlacementMobile.Back') }}
-
Restore
+
{{ $t('ModelPlacementMobile.Restore') }}
diff --git a/src/lang/cn.ts b/src/lang/cn.ts deleted file mode 100644 index e69de29b..00000000 diff --git a/src/lang/en.ts b/src/lang/en.ts index e69de29b..2fa21e6f 100644 --- a/src/lang/en.ts +++ b/src/lang/en.ts @@ -0,0 +1,295 @@ +export default { + Header:{ + hello:'hello', + HOME:'HOME', + LIBRARY:'LIBRARY', + HISTORY:'HISTORY', + bindEmail:'bind email', + logOff:'log off', + skip:'skip', + emailContent:'you have binded email', + Email:'Email', + NextStep:'Next step', + verification:'Enter verification code', + SentTo:'Sent to', + Resend:'Resend', + jsContent1:'The email format is incorrect', + jsContent2:'Succeeded in binding the mailbox.', + jsContent3:`You have not performed any operation for a long time. You must be active;otherwise, you will log out in {numTime} S`, + }, + Habit:{ + Workspace:'Workspace', + WorkspaceSetting:'Workspace Setting', + settingWorkspace:'adjust your workspace setting', + Overall:'Overall', + Single:'Single', + System:'System', + Designer:'Designer', + Mannequin:'Mannequin', + Current:'Current', + User:'User', + jsContent1:'Whether to delete the workspace?', + jsContent2:'Please enter a workbench name', + }, + RobotAssist:{ + inputContent1:"write a message~", + jsContent1:"Please enter content", + }, + HomeView:{ + GetStarted:'Get Started', + Start:'Start', + Edit:'Edit', + Design:'Design', + Redesign:'Redesign', + GeneratedDesign:'Generated Design', + SelectedDesign:'Selected Design', + Export:'Export', + jsContent1:'You must choose one or more colors for further process.', + jsContent2:'You must choose one or more colors for further process.', + jsContent3:'Failed to export the file', + }, + LibraryPage:{ + Upload:'Upload', + Generate:'Generate', + Delete:'Delete', + Rename:'Rename', + inputContent1:'Search by your style code', + all:'all', + ImageOnly:'Image Only', + TextOnly:'Text Only', + TextImage:'Text-Image', + inputContent2:'Prompt input', + maximumLength:'The entered content exceeds the maximum length.', + Model1:'Model1', + Model2:'Model2', + inputContent3:'Prompt input', + Cancel:'Cancel', + Sure:'Sure', + Moodboard:'Moodboard', + Prints:'Prints', + Sketches:'Sketches', + Mannequins:'Mannequins', + jsContent1:'Are you sure to delete the picture?', + jsContent2:'Are you sure to delete the picture?', + jsContent3:'You can only upload Image file!', + jsContent4:'Image must smaller than 2MB!', + jsContent5:'This picture has been uploaded whether to continue uploading?', + jsContent6:'The entered content exceeds the maximum length.', + jsContent7:'Please enter content"', + }, + HistoryPage:{ + History:'History', + StartDate:'Start Date', + EndDate:'End Date', + inputContent1:'Search by collection name', + Detail:'Detail', + Rename:'Rename', + Retrieve:'Retrieve', + Delete:'Delete', + inputContent2:'Enter a new name', + Submit:'Submit', + CollectionsName:'Collections Name', + UptateTime:'Uptate Time', + SketchCounts:'Sketch Counts', + Operations:'Operations', + jsContent1:'Deleted successfully', + jsContent2:'Do you really want to delete this collection? ', + jsContent3:'Change successfully', + jsContent4:'Image must smaller than 2MB!', + jsContent5:'This picture has been uploaded whether to continue uploading?', + jsContent6:'The entered content exceeds the maximum length.', + jsContent7:'Please enter content"', + }, + ModelPlacement:{ + Registration:'Registration', + Submit:'Submit', + Preview:'Preview', + Back:'Back', + Restore:'Restore', + System:'System', + Library:'Library', + Point:'Point', + RemovePoint:'Remove Point', + mannequinHint:'Please change the pure white inside the mannequin for another color to enhance your experience', + SHOULDER:'SHOULDER', + WAISTBAND:'WAISTBAND', + HAND:'HAND', + jsContent1:"You haven't marked the image yet, and the model will not be uploaded. Are you sure you want to close it?", + jsContent2:'This picture has been uploaded whether to continue uploading?', + }, + ModelPlacementMobile:{ + Registration:'Registration', + Submit:'Submit', + Preview:'Preview', + Back:'Back', + Restore:'Restore', + Point:'Point', + RemovePoint:'Remove Point', + mannequinHint:'Please change the pure white inside the mannequin for another color to enhance your experience', + SHOULDER:'SHOULDER', + WAISTBAND:'WAISTBAND', + HAND:'HAND', + jsContent1:"You haven't marked the image yet, and the model will not be uploaded. Are you sure you want to close it?", + jsContent2:'This picture has been uploaded whether to continue uploading?', + }, + Upload:{ + Delete:'Delete', + Maximum2M:'Maximum 10 images can be uploaded, Maximum 2M per image', + jsContent1:'You can only upload Image file!', + jsContent2:'Image must smaller than 2MB!', + jsContent3:'upload failed', + }, + SketchboardUpload:{ + Upload:'Upload', + Library:'Library', + Generate:'Generate', + PIN:'PIN', + Thumbnail:'Thumbnail preview of selected sketchboard', + inputContent1:'Caption generation', + maximumLength:'The entered content exceeds the maximum length.', + jsContent1:"upload failed", + jsContent2:"You can only upload Image file!", + jsContent3:'Image must smaller than 2MB!', + jsContent4:"Maximum number of allowable file uploads has been exceeded", + jsContent5:"Please select a picture", + jsContent6:"The entered content exceeds the maximum length.", + jsContent7:"Please enter content", + }, + PrintboardUpload:{ + Upload:'Upload', + Library:'Library', + Generate:'Generate', + PIN:'PIN', + Thumbnail:'Thumbnail preview of selected printboard', + inputContent1:'Caption generation', + maximumLength:'The entered content exceeds the maximum length.', + jsContent1:"You can only upload Image file!", + jsContent2:'Image must smaller than 2MB!', + jsContent3:"Maximum number of allowable file uploads has been exceeded", + jsContent4:"Please select a picture", + jsContent5:"The entered content exceeds the maximum length.", + jsContent6:"Please enter content", + }, + ColorboardUpload:{ + Thumbnail:'Thumbnail preview of selected colorboard', + Clear:'Clear', + Palette:'Palette', + HEX:'HEX', + RGBA:'RGBA', + AutoRecognize:'Auto Recognize', + ColorCode:'Color Code', + ExtractColor:'Extract Color', + jsContent1:"Your browser does not support it", + jsContent2:"Can't find the TCX color", + jsContent3:"You can only upload Image file!", + jsContent4:'Image must smaller than 2MB!', + }, + MoodboardUpload:{ + Upload:'Upload', + Library:'Library', + Generate:'Generate', + Delete:'Delete', + Thumbnail:'Thumbnail preview of selected moodboard', + layout:'layout', + jsContent1:'You can select up to 8 images', + jsContent2:"upload failed", + jsContent3:"You can only upload Image file!", + jsContent4:'Image must smaller than 2MB!', + jsContent5:'Please click Layout to sort randomly', + }, + Cropper:{ + Cutpicture:'Cut picture', + Finish:'Finish', + Cancel:'Cancel', + CropPreview:'Crop Preview', + }, + Material:{ + inputContent1:'Please input', + PIN:'PIN', + }, + MarketingSketchUpload:{ + Upload:'Upload', + MyLibrary:'My Library', + maximumLength:'Maximum 15 images can be uploaded, Maximum 2M per image', + jsContent1:'upload failed', + jsContent2:"You can only upload Image file!", + jsContent3:'Image must smaller than 2MB!', + jsContent5:'Maximum number of allowable file uploads has been exceeded', + }, + layout:{ + MoodBoardDesign:'MoodBoard Design', + Submit:'Submit', + }, + Generate:{ + ImageOnly:'Image Only', + TextOnly:'Text Only', + TextImage:'Text-Image', + Model1:'Model1', + Model2:'Model2', + inputContent1:'Prompt input', + Generate:'Generate', + maximumLength:'The entered content exceeds the maximum length.', + jsContent1:"You can only upload Image file!", + jsContent2:'Image must smaller than 2MB!', + jsContent3:"Please enter content", + jsContent4:'The entered content exceeds the maximum length.', + jsContent5:"Please enter content", + jsContent6:"You can select up to 8 images", + jsContent7:"upload failed", + }, + collectionModal:{ + Moodboard:'Moodboard', + Printboard:'Printboard', + Colorboard:'Colorboard', + Sketchboard:'Sketchboard', + collection:'select moodboard for your collection', + jsContent1:'You must select the image and then use the layout.', + jsContent2:'The uploaded files will not be saved, being sure to continue? ', + jsContent3:'You must choose one or more colors for further process.', + }, + DesignDetail:{ + Details:'Details', + EditDetails:'Edit the details of your design', + Submit:'Submit', + CurrentApparel:'Current Apparel', + CurrentPrint:'Current Print', + CurrentColor:'Current Color', + }, + DesignDetailAlter:{ + Upload:'Upload', + Library:'Library', + inputContent1:'Please input', + Palette:'Palette', + HEX:'HEX', + RGBA:'RGBA', + AutoRecognize:'Auto Recognize', + Delete:'Delete', + ColorCode:'Color Code', + jsContent1:"Your browser does not support it", + jsContent2:"You can select up to 8 images", + jsContent3:"upload failed", + jsContent4:'You can only upload Image file!', + jsContent5:'Image must smaller than 5MB!', + jsContent6:"Can't find the TCX color", + }, + DesignDetailEnd:{ + NewApparel:'New Apparel', + NewPrint:'New Print', + Placement:'Placement', + Overall:'Overall', + Single:'Single', + NewColor:'New Color', + preview:'preview', + Layout:'Layout', + jsContent1:'Please select print', + }, + DesignPrintOperation:{ + Placement:'Placement', + Overall:'Overall', + Single:'Single', + Random:'Random', + inputContent:'Please input', + preview:'preview', + jsContent1:'The above changes are not saved, being sure to continue? ', + }, +} diff --git a/src/lang/index.ts b/src/lang/index.ts index e69de29b..c776f5ee 100644 --- a/src/lang/index.ts +++ b/src/lang/index.ts @@ -0,0 +1,31 @@ +import { createI18n } from 'vue-i18n' + +// element-plus 中的语言配置 +import elementEnLocale from './en' +import elementZhLocale from './zh-cn' + +// 自己的语言配置 +import enLocale from './en' +import zhLocale from './zh-cn' + +// 语言配置整合 +const messages = { + 'en':{ + ...enLocale, + ...elementEnLocale + }, + 'zh-cn':{ + ...zhLocale, + ...elementZhLocale + } +} + +// 创建 i18n +const i18n = createI18n({ + legacy: false, + globalInjection:true, // 全局模式,可以直接使用 $t + locale: 'en', + messages: messages +}) + +export default i18n diff --git a/src/lang/zh-cn.ts b/src/lang/zh-cn.ts new file mode 100644 index 00000000..0650fc06 --- /dev/null +++ b/src/lang/zh-cn.ts @@ -0,0 +1,295 @@ +export default { + Header:{ + hello:'你好', + HOME:'首页', + LIBRARY:'收藏', + HISTORY:'历史', + bindEmail:'绑定邮箱', + logOff:'退出登录', + skip:'跳过', + emailContent:'你绑定了的邮箱', + Email:'邮箱', + NextStep:'下一步', + verification:'输入验证码', + SentTo:'发送', + Resend:'重发', + jsContent1:'邮箱格式不正确', + jsContent2:'绑定邮箱成功', + jsContent3:`已经长时间未操作,您必须活跃起来,否则将会在{numTime} S 后退出登录`, + }, + Habit:{ + Workspace:'工作空间', + WorkspaceSetting:'设置工作空间', + settingWorkspace:'调整您的工作空间', + Overall:'整体', + Single:'单件', + System:'系统', + Designer:'设计师', + Mannequin:'模特', + Current:'当前', + User:'用户', + jsContent1:'是否删除指定工作空间', + jsContent2:'请输入当前工作空间的名字', + }, + RobotAssist:{ + inputContent1:"问我什么都行~", + jsContent1:"请输入内容~", + }, + HomeView:{ + GetStarted:'开始设计', + Start:'重新开始', + Edit:'编辑', + Design:'设计', + Redesign:'重新设计', + GeneratedDesign:'生成的设计', + SelectedDesign:'喜欢的设计', + Export:'导出', + jsContent1:'你必须选择一种或多种颜色进行下一步处理。', + jsContent2:'你必须选择一种或多种颜色进行下一步处理。', + jsContent3:'导出文件失败。', + }, + LibraryPage:{ + Upload:'Upload', + Generate:'Generate', + Delete:'Delete', + Rename:'Rename', + inputContent1:'Search by your style code', + all:'all', + ImageOnly:'Image Only', + TextOnly:'Text Only', + TextImage:'Text-Image', + inputContent2:'Prompt input', + maximumLength:'The entered content exceeds the maximum length.', + Model1:'Model1', + Model2:'Model2', + inputContent3:'Prompt input', + Cancel:'Cancel', + Sure:'Sure', + Moodboard:'Moodboard', + Prints:'Prints', + Sketches:'Sketches', + Mannequins:'Mannequins', + jsContent1:'Are you sure to delete the picture?', + jsContent2:'Are you sure to delete the picture?', + jsContent3:'You can only upload Image file!', + jsContent4:'Image must smaller than 2MB!', + jsContent5:'This picture has been uploaded whether to continue uploading?', + jsContent6:'The entered content exceeds the maximum length.', + jsContent7:'Please enter content"', + }, + HistoryPage:{ + History:'History', + StartDate:'Start Date', + EndDate:'End Date', + inputContent1:'Search by collection name', + Detail:'Detail', + Rename:'Rename', + Retrieve:'Retrieve', + Delete:'Delete', + inputContent2:'Enter a new name', + Submit:'Submit', + CollectionsName:'Collections Name', + UptateTime:'Uptate Time', + SketchCounts:'Sketch Counts', + Operations:'Operations', + jsContent1:'Deleted successfully', + jsContent2:'Do you really want to delete this collection? ', + jsContent3:'Change successfully', + jsContent4:'Image must smaller than 2MB!', + jsContent5:'This picture has been uploaded whether to continue uploading?', + jsContent6:'The entered content exceeds the maximum length.', + jsContent7:'Please enter content"', + }, + ModelPlacement:{ + Registration:'Registration', + Submit:'Submit', + Preview:'Preview', + Back:'Back', + Restore:'Restore', + System:'System', + Library:'Library', + Point:'Point', + RemovePoint:'Remove Point', + mannequinHint:'Please change the pure white inside the mannequin for another color to enhance your experience', + SHOULDER:'SHOULDER', + WAISTBAND:'WAISTBAND', + HAND:'HAND', + jsContent1:"You haven't marked the image yet, and the model will not be uploaded. Are you sure you want to close it?", + jsContent2:'This picture has been uploaded whether to continue uploading?', + }, + ModelPlacementMobile:{ + Registration:'Registration', + Submit:'Submit', + Preview:'Preview', + Back:'Back', + Restore:'Restore', + Point:'Point', + RemovePoint:'Remove Point', + mannequinHint:'Please change the pure white inside the mannequin for another color to enhance your experience', + SHOULDER:'SHOULDER', + WAISTBAND:'WAISTBAND', + HAND:'HAND', + jsContent1:"You haven't marked the image yet, and the model will not be uploaded. Are you sure you want to close it?", + jsContent2:'This picture has been uploaded whether to continue uploading?', + }, + Upload:{ + Delete:'Delete', + Maximum2M:'Maximum 10 images can be uploaded, Maximum 2M per image', + jsContent1:'You can only upload Image file!', + jsContent2:'Image must smaller than 2MB!', + jsContent3:'upload failed', + }, + SketchboardUpload:{ + Upload:'Upload', + Library:'Library', + Generate:'Generate', + PIN:'PIN', + Thumbnail:'Thumbnail preview of selected sketchboard', + inputContent1:'Caption generation', + maximumLength:'The entered content exceeds the maximum length.', + jsContent1:"upload failed", + jsContent2:"You can only upload Image file!", + jsContent3:'Image must smaller than 2MB!', + jsContent4:"Maximum number of allowable file uploads has been exceeded", + jsContent5:"Please select a picture", + jsContent6:"The entered content exceeds the maximum length.", + jsContent7:"Please enter content", + }, + PrintboardUpload:{ + Upload:'Upload', + Library:'Library', + Generate:'Generate', + PIN:'PIN', + Thumbnail:'Thumbnail preview of selected printboard', + inputContent1:'Caption generation', + maximumLength:'The entered content exceeds the maximum length.', + jsContent1:"You can only upload Image file!", + jsContent2:'Image must smaller than 2MB!', + jsContent3:"Maximum number of allowable file uploads has been exceeded", + jsContent4:"Please select a picture", + jsContent5:"The entered content exceeds the maximum length.", + jsContent6:"Please enter content", + }, + ColorboardUpload:{ + Thumbnail:'Thumbnail preview of selected colorboard', + Clear:'Clear', + Palette:'Palette', + HEX:'HEX', + RGBA:'RGBA', + AutoRecognize:'Auto Recognize', + ColorCode:'Color Code', + ExtractColor:'Extract Color', + jsContent1:"Your browser does not support it", + jsContent2:"Can't find the TCX color", + jsContent3:"You can only upload Image file!", + jsContent4:'Image must smaller than 2MB!', + }, + MoodboardUpload:{ + Upload:'Upload', + Library:'Library', + Generate:'Generate', + Delete:'Delete', + Thumbnail:'Thumbnail preview of selected moodboard', + layout:'layout', + jsContent1:'You can select up to 8 images', + jsContent2:"upload failed", + jsContent3:"You can only upload Image file!", + jsContent4:'Image must smaller than 2MB!', + jsContent5:'Please click Layout to sort randomly', + }, + Cropper:{ + Cutpicture:'Cut picture', + Finish:'Finish', + Cancel:'Cancel', + CropPreview:'Crop Preview', + }, + Material:{ + inputContent1:'Please input', + PIN:'PIN', + }, + MarketingSketchUpload:{ + Upload:'Upload', + MyLibrary:'My Library', + maximumLength:'Maximum 15 images can be uploaded, Maximum 2M per image', + jsContent1:'upload failed', + jsContent2:"You can only upload Image file!", + jsContent3:'Image must smaller than 2MB!', + jsContent5:'Maximum number of allowable file uploads has been exceeded', + }, + layout:{ + MoodBoardDesign:'MoodBoard Design', + Submit:'Submit', + }, + Generate:{ + ImageOnly:'Image Only', + TextOnly:'Text Only', + TextImage:'Text-Image', + Model1:'Model1', + Model2:'Model2', + inputContent1:'Prompt input', + Generate:'Generate', + maximumLength:'The entered content exceeds the maximum length.', + jsContent1:"You can only upload Image file!", + jsContent2:'Image must smaller than 2MB!', + jsContent3:"Please enter content", + jsContent4:'The entered content exceeds the maximum length.', + jsContent5:"Please enter content", + jsContent6:"You can select up to 8 images", + jsContent7:"upload failed", + }, + collectionModal:{ + Moodboard:'Moodboard', + Printboard:'Printboard', + Colorboard:'Colorboard', + Sketchboard:'Sketchboard', + collection:'select moodboard for your collection', + jsContent1:'You must select the image and then use the layout.', + jsContent2:'The uploaded files will not be saved, being sure to continue? ', + jsContent3:'You must choose one or more colors for further process.', + }, + DesignDetail:{ + Details:'Details', + EditDetails:'Edit the details of your design', + Submit:'Submit', + CurrentApparel:'Current Apparel', + CurrentPrint:'Current Print', + CurrentColor:'Current Color', + }, + DesignDetailAlter:{ + Upload:'Upload', + Library:'Library', + inputContent1:'Please input', + Palette:'Palette', + HEX:'HEX', + RGBA:'RGBA', + AutoRecognize:'Auto Recognize', + Delete:'Delete', + ColorCode:'Color Code', + jsContent1:"Your browser does not support it", + jsContent2:"You can select up to 8 images", + jsContent3:"upload failed", + jsContent4:'You can only upload Image file!', + jsContent5:'Image must smaller than 5MB!', + jsContent6:"Can't find the TCX color", + }, + DesignDetailEnd:{ + NewApparel:'New Apparel', + NewPrint:'New Print', + Placement:'Placement', + Overall:'Overall', + Single:'Single', + NewColor:'New Color', + preview:'preview', + Layout:'Layout', + jsContent1:'Please select print', + }, + DesignPrintOperation:{ + Placement:'Placement', + Overall:'Overall', + Single:'Single', + Random:'Random', + inputContent:'Please input', + preview:'preview', + jsContent1:'The above changes are not saved, being sure to continue? ', + }, +} diff --git a/src/main.ts b/src/main.ts index 64733723..4f08d62b 100644 --- a/src/main.ts +++ b/src/main.ts @@ -10,6 +10,7 @@ import 'ant-design-vue/dist/antd.css'; import Antd from 'ant-design-vue'; import './assets/style/style.less' import VueLazyload from "vue-lazyload"; +import i18n from './lang/index' import "../node_modules/@flaticon/flaticon-uicons/css/all/all.css" flexible() @@ -22,4 +23,4 @@ let loadingParam = { attempt: 1 } -createApp(App).use(store).use(router).use(Antd).use(VueLazyload,loadingParam).mount('#app') +createApp(App).use(store).use(router).use(Antd).use(VueLazyload,loadingParam).use(i18n).mount('#app') diff --git a/src/tool/https.js b/src/tool/https.js index 15739c14..7bd27b9e 100644 --- a/src/tool/https.js +++ b/src/tool/https.js @@ -103,9 +103,6 @@ export const Https = { updateUserGroupName:`/api/history/updateUserGroupName`, //History修改用户分组名 historyChoose:`/api/history/choose`, //History choose getDesignDetail:`/api/design/detail/getDetail`,//查询design详情 - putDesignDetail:`/api/design/detail/editLayers`,//编辑单间衣服大小位置 - - generateHighDesign:'/api/design/detail/generateHighDesign',//生成高级design图片 getNextSysElement:'/api/design/detail/getNextSysElement',//切换系统的element detailPrintDot:'/api/design/detail/printDot',//print打点预览 designSingle:`/api/design/detail/designSingle`,//单个design @@ -116,11 +113,8 @@ export const Https = { batchUpdateLibraryName:'/api/library/batchUpdateLibraryName',//Library修改用户文件名 batchDeleteLibrary:'/api/library/batchDeleteLibrary',//删除library queryLibraryTopAndBottomPage:'/api/library/queryLibraryTopAndBottomPage',//Library分页列表(查询top和bottom) - deleteHighDesign:'/api/design/detail/deleteHighDesign',//删除高级design图片 saveOrEditTemplatePoint:'/api/library/saveOrEditTemplatePoint',//保存或者编辑template打点 libraryModelsDot:'/api/library/modelsDot',//Models打点预览 - // pythonChatStream:'/api/python/chatStream',//机器人助力 - // chatStreamTest:`/robot/chat_stream_test`,//机器人助力 chatStreamTest:`/api/python/chatStream`,//机器人助力 pictureLikeOrUnLike:`/api/python/pictureLikeOrUnLike`,//机器人生成图喜欢 getBloodBars:`/api/python/getBloodBars`,//机器人血条 diff --git a/src/views/HistoryPage.vue b/src/views/HistoryPage.vue index e2828dab..2b41b679 100644 --- a/src/views/HistoryPage.vue +++ b/src/views/HistoryPage.vue @@ -8,15 +8,15 @@
-
History
+
{{ $t('HistoryPage.History') }}History
@@ -33,10 +33,10 @@ }"> @@ -56,9 +56,9 @@ >
- +
-
Submit
+
{{ $t('HistoryPage.Submit') }}
@@ -73,6 +73,7 @@ import { formatTime } from "@/tool/util" import { Modal,message } from 'ant-design-vue'; import RobotAssist from "@/component/HomePage/RobotAssist.vue"; import { ExclamationCircleOutlined } from '@ant-design/icons-vue'; +import { useI18n } from 'vue-i18n'; export default defineComponent({ components: { HeaderComponent, @@ -83,14 +84,14 @@ export default defineComponent({ let rangePickerValue:any = ref([]) let renameData:any = ref({}) //修改名字选中的数据 const columns:any = ref([ - { title: 'Collections Name', align:'center', ellipsis: true, width: 150, dataIndex: 'name', key: 'collectionName' }, - { title: 'Uptate Time', align:'center', ellipsis: true,width: 150, dataIndex: 'updateDate', key: 'updateTime',customRender:(record:any)=>{ + { title: useI18n().t('HistoryPage.CollectionsName'), align:'center', ellipsis: true, width: 150, dataIndex: 'name', key: 'collectionName' }, + { title: useI18n().t('HistoryPage.UptateTime'), align:'center', ellipsis: true,width: 150, dataIndex: 'updateDate', key: 'updateTime',customRender:(record:any)=>{ let time = formatTime(record.text / 1000, 'YYYY-MM-DD hh:mm:ss') return time }}, - { title: 'Sketch Counts', align:'center', ellipsis: true, width: 150, dataIndex: 'sketchCount', key: 'sketchCounts' }, + { title: useI18n().t('HistoryPage.SketchCounts'), align:'center', ellipsis: true, width: 150, dataIndex: 'sketchCount', key: 'sketchCounts' }, { - title: 'Operations', + title: useI18n().t('HistoryPage.Operations'), key: 'operation', align:'center', fixed: 'right', @@ -99,11 +100,13 @@ export default defineComponent({ }, ]); let collectionList:any = ref([]) + let {t} = useI18n() return { rangePickerValue, columns, collectionList, renameData, + t, } }, data(){ @@ -172,16 +175,17 @@ export default defineComponent({ } Https.axiosPost(Https.httpUrls.deleteUserGroup,data).then( (rv: any) => { - message.success('Deleted successfully') + message.success(this.t('HistoryPage.jsContent1')) this.collectionList.splice(index,1) } ); } Modal.confirm({ - title: 'Do you really want to delete this collection? ', + title: this.t('HistoryPage.jsContent2'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', + mask:false, onOk() { deleteGroupFun(record.id,index) } @@ -206,7 +210,7 @@ export default defineComponent({ } Https.axiosPost(Https.httpUrls.updateUserGroupName,data).then( (rv: any) => { - message.success('Change successfully') + message.success(this.t('HistoryPage.jsContent3')) this.collectionList[this.renameData.index].name = this.newCollectionName this.collectionList[this.renameData.index].updateDate = rv.updateDate this.renameVisivle = false diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue index fd8d9f54..5cd0a5fb 100644 --- a/src/views/HomeView.vue +++ b/src/views/HomeView.vue @@ -15,7 +15,7 @@ src="@/assets/images/homePage/null_img.png" /> -->
- Get Started + {{ $t('HomeView.GetStarted') }}
@@ -28,10 +28,10 @@
- Start + {{ $t('HomeView.Start') }}
- Edit + {{ $t('HomeView.Edit') }}
@@ -48,11 +48,11 @@
- Design + {{ $t('HomeView.Design') }}
- Redesign + {{ $t('HomeView.Redesign') }}
@@ -60,8 +60,9 @@
- Generated - Design + + {{ $t('HomeView.GeneratedDesign') }} +
@@ -98,10 +99,10 @@
- Selected Design + {{ $t('HomeView.SelectedDesign') }}
- Export + {{ $t('HomeView.Export') }}
@@ -201,6 +202,8 @@ import { LoadingOutlined } from "@ant-design/icons-vue"; import draggable from 'vuedraggable' import JSZip from "jszip"; import { setCookie, getCookie, WriteCookie } from "@/tool/cookie"; +import i18n from "@/lang"; +import { useI18n } from "vue-i18n"; const FileSaver = require("file-saver"); export default defineComponent({ @@ -239,6 +242,7 @@ export default defineComponent({ height:'', } let userInfo:any = {} + let {t} = useI18n() return { store, likeDesignCollectionList, @@ -249,6 +253,7 @@ export default defineComponent({ contentImgMax, contentImg, userInfo, + t, }; }, data() { @@ -444,7 +449,7 @@ export default defineComponent({ this.store.state.UploadFilesModule.allBoardData; if (!colorBoards || colorBoards?.length < 1) { message.warning( - "You must choose one or more colors for further process." + this.t('HomeView.jsContent1') ); return; } @@ -481,7 +486,7 @@ export default defineComponent({ this.store.state.UploadFilesModule.allBoardData; if (!colorBoards || colorBoards?.length < 1) { message.warning( - "You must choose one or more colors for further process." + this.t('HomeView.jsContent2') ); return; } @@ -976,7 +981,7 @@ export default defineComponent({ }); }) .catch((res) => { - message.warning("Failed to export the file"); + message.warning(this.t('HomeView.jsContent3')); this.isShowMark = false; }); }, diff --git a/src/views/LibraryPage.vue b/src/views/LibraryPage.vue index 80eb5ab5..721e61fb 100644 --- a/src/views/LibraryPage.vue +++ b/src/views/LibraryPage.vue @@ -40,11 +40,11 @@ accept=".jpg,.png,.jpeg,.bmp" @change="fileUploadChange" > -
Upload
+
{{ $t('LibraryPage.Upload') }}
-
Upload
+
{{ $t('LibraryPage.Upload') }}
-
Generate
+
{{ $t('LibraryPage.Generate') }}
@@ -84,11 +84,11 @@
-
Delete
-
Rename
+
{{ $t('LibraryPage.Delete') }}
+
{{ $t('LibraryPage.Rename') }}
- +
@@ -96,7 +96,7 @@
-
all
+
{{ $t('LibraryPage.all') }}
@@ -147,7 +147,7 @@ v-model="checkbox[0].type" @click="setKeyword(0)" /> - Image Only + {{ $t('LibraryPage.ImageOnly') }}
@@ -157,7 +157,7 @@ v-model="checkbox[1].type" @click="setKeyword(1)" /> - Text Only + {{ $t('LibraryPage.TextOnly') }}
@@ -167,21 +167,21 @@ v-model="checkbox[2].type" @click="setKeyword(2)" /> - Text-Image + {{ $t('LibraryPage.TextImage') }}
- -
Generate
- The entered content exceeds the maximum length. + +
{{ $t('LibraryPage.Generate') }}
+ {{ $t('LibraryPage.maximumLength') }}
{{ printModel.name }}
    -
  • Model1
  • -
  • Model2
  • +
  • {{ $t('LibraryPage.Model1') }}
  • +
  • {{ $t('LibraryPage.Model2') }}
@@ -287,11 +287,11 @@ >
- +
-
Cancel
-
Sure
+
{{ $t('LibraryPage.Cancel') }}
+
{{ $t('LibraryPage.Sure') }}
@@ -321,6 +321,7 @@ import {getUploadUrl,isMoible} from '@/tool/util' import { useStore } from "vuex"; import { Https } from "@/tool/https"; import { getCookie } from "@/tool/cookie"; +import { useI18n } from "vue-i18n"; export default defineComponent({ components: { HeaderComponent, @@ -330,12 +331,12 @@ export default defineComponent({ }, setup() { let menuList = ref([ - {title:'Moodboard',code:'Moodboard',icon:'fi fi-rr-grid',showChildren:false,children:[]}, - {title:'Prints',code:'Printboard',icon:'fi fi-rs-objects-column',showChildren:false,children:[]}, + {title:useI18n().t('LibraryPage.Moodboard'),code:'Moodboard',icon:'fi fi-rr-grid',showChildren:false,children:[]}, + {title:useI18n().t('LibraryPage.Prints'),code:'Printboard',icon:'fi fi-rs-objects-column',showChildren:false,children:[]}, // {title:'Sketches',code:'SketchboardFirst',icon:'fi icon iconfont icon-a-waitao_changkuanwaitao11x',showChildren:false,children:[{title:'Apparel',code:'Sketchboard'}]}, - {title:'Sketches',code:'Sketchboard',icon:'fi icon iconfont icon-a-waitao_changkuanwaitao11x',showChildren:false,children:[]}, + {title:useI18n().t('LibraryPage.Sketches'),code:'Sketchboard',icon:'fi icon iconfont icon-a-waitao_changkuanwaitao11x',showChildren:false,children:[]}, // {title:'Market Sketch',code:'MarketingSketch',icon:'icon-fuwushichang',showChildren:false,children:[]}, - {title:'Mannequins',code:'Models',icon:'fi fi-rs-people',showChildren:false,children:[]}, + {title:useI18n().t('LibraryPage.Mannequins'),code:'Models',icon:'fi fi-rs-people',showChildren:false,children:[]}, ]) let selectImgList:any = ref([]) @@ -387,6 +388,9 @@ export default defineComponent({ optype:false, name:'model1' }) + let {t} = useI18n() + console.log(); + return { menuList, selectImgList, @@ -416,7 +420,8 @@ export default defineComponent({ inputTime, generateList, selectGenerateList, - printModel + printModel, + t } }, data(this_) { @@ -614,10 +619,11 @@ export default defineComponent({ deleteSinglePic(data:any,index:any){ let _this = this Modal.confirm({ - title: 'Are you sure to delete the picture?', + title: this.t('LibraryPage.jsContent1'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', + mask:false, // centered:true, onOk() { _this.confirmDeletePic(data,index) @@ -632,7 +638,7 @@ export default defineComponent({ } let _this = this Modal.confirm({ - title: 'Are you sure to delete the picture?', + title: this.t('LibraryPage.jsContent2'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', @@ -665,11 +671,11 @@ export default defineComponent({ beforeUpload(file:any,fileList:any){ const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg' || file.type === 'image/bmp'; if (!isJpgOrPng) { - message.warning('You can only upload Image file!'); + message.warning(this.t('LibraryPage.jsContent3')); } const isLt2M = file.size / 1024 / 1024 < 2; if (!isLt2M) { - message.warning('Image must smaller than 2MB!'); + message.warning(this.t('LibraryPage.jsContent4')); } if(isJpgOrPng && isLt2M){ this.currentUploadFileNum = fileList.length @@ -717,11 +723,12 @@ export default defineComponent({ affirmCstomRequest(data:any){ let _this = this Modal.confirm({ - title: 'This picture has been uploaded whether to continue uploading? ', + title: this.t('LibraryPage.jsContent5'), icon: createVNode(ExclamationCircleOutlined), okText: 'Yes', cancelText: 'No', mask:false, + zIndex:99999, // centered:true, onOk() { data.checkMd5 = 0 @@ -895,14 +902,14 @@ export default defineComponent({ let arr = this.captionGeneration.split(/\s+/).length if(arr > 75){ message.warning( - "The entered content exceeds the maximum length." + this.t('LibraryPage.jsContent6') ); return } }else{ message.warning( - "Please enter content" + this.t('LibraryPage.jsContent7') ); return }