askbot-dragon 1.7.18-beta → 1.7.19-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/package.json +2 -1
  2. package/public/index.html +8 -10
  3. package/src/assets/js/AliyunlssUtil.js +52 -26
  4. package/src/assets/js/hammer.js +13 -2
  5. package/src/assets/less/converSationContainer/common.less +7 -0
  6. package/src/components/ActionAlertIframe.vue +24 -1
  7. package/src/components/AiGuide.vue +121 -154
  8. package/src/components/AnswerDocknowledge.vue +10 -8
  9. package/src/components/ConversationContainer.vue +952 -1794
  10. package/src/components/MyEditor.vue +6 -5
  11. package/src/components/actionSatisfaction.vue +3 -3
  12. package/src/components/answerRadio.vue +3 -3
  13. package/src/components/askVideo.vue +24 -1
  14. package/src/components/associationIntention.vue +11 -7
  15. package/src/components/formTemplate.vue +1592 -1658
  16. package/src/components/intelligentSummary.vue +8 -4
  17. package/src/components/message/TextMessage.vue +15 -11
  18. package/src/components/message/swiper/ticketSwiper.vue +1 -1
  19. package/src/components/newPdfPosition.vue +878 -0
  20. package/src/components/pdfPosition.vue +209 -35
  21. package/src/components/popup.vue +2 -2
  22. package/src/components/previewDoc.vue +6 -2
  23. package/src/components/previewPdf.vue +159 -134
  24. package/src/components/senderMessagePlatform.vue +4 -4
  25. package/src/components/tree.vue +114 -101
  26. package/src/components/utils/AliyunIssUtil.js +1 -0
  27. package/src/components/utils/ckeditor.js +1 -1
  28. package/src/components/welcomeKnowledgeFile.vue +6 -2
  29. package/src/components/welcomeLlmCard.vue +5 -1
  30. package/src/components/welcomeSuggest.vue +1 -1
  31. package/src/locales/cn.json +72 -0
  32. package/src/locales/en.json +73 -0
  33. package/src/locales/jp.json +73 -0
  34. package/src/main.js +18 -0
@@ -5,30 +5,30 @@
5
5
  <span class="primary" @click="saveData">确认</span>
6
6
  </div>
7
7
  <div class="tree-input" v-if="setCascadeOption && setCascadeOption.length > 0">
8
- <el-input
9
- placeholder="请搜索"
10
- v-model="filterText"
11
- >
8
+ <el-input placeholder="请搜索" v-model="filterText">
12
9
  </el-input>
13
10
  </div>
14
11
  <div class="tree-container">
15
- <el-tree :data="setCascadeOption"
16
- :props="defaultProps"
17
- ref="dataTree"
18
- node-key="value"
19
- :expand-on-click-node="false"
20
- :filter-node-method="filterNode"
21
- >
22
- <span class="custom-tree-node" slot-scope="{ node,data}" @click="nodeClick(data)">
23
- <span class="tree-label">{{ node.label }}</span>
24
- <span>
25
- <el-checkbox v-model="data.checked" v-if="dataOptions.extInfo.selectType ==='多选'"></el-checkbox>
26
- <el-radio v-model="checked" v-else :label="data.value"></el-radio>
12
+ <el-tree :data="setCascadeOption" :props="defaultProps" ref="dataTree" node-key="value"
13
+ :expand-on-click-node="false" :filter-node-method="filterNode">
14
+ <span class="custom-tree-node" slot-scope="{ node,data}" @click="nodeClick(data)">
15
+ <span class="tree-label">{{ node.label }}</span>
16
+ <span>
17
+ <template v-if="webHookCascader">
18
+ <el-checkbox :disabled="data.children && data.children.length !== 0" v-model="data.checked"
19
+ v-if="dataOptions.extInfo.selectType === '多选'"></el-checkbox>
20
+ <el-radio :disabled="data.children && data.children.length !== 0" v-model="checked" v-else
21
+ :label="data.value"></el-radio>
22
+ </template>
23
+ <template v-else>
24
+ <el-checkbox v-model="data.checked" v-if="dataOptions.extInfo.selectType === '多选'"></el-checkbox>
25
+ <el-radio v-model="checked" v-else :label="data.value"></el-radio>
26
+ </template>
27
+ </span>
27
28
  </span>
28
- </span>
29
29
  </el-tree>
30
30
  </div>
31
- <!-- <div class="footer">
31
+ <!-- <div class="footer">
32
32
  <el-button>取 消</el-button>
33
33
  <el-button type="primary" @click="saveData">确 认</el-button>
34
34
  </div>-->
@@ -39,67 +39,67 @@
39
39
  /* eslint-disable */
40
40
  export default {
41
41
  name: "tree",
42
- data(){
43
- return{
44
- defaultProps:{
45
- label:"label",
46
- value:"value"
42
+ data () {
43
+ return {
44
+ defaultProps: {
45
+ label: "label",
46
+ value: "value"
47
47
  },
48
- checked:'',
48
+ checked: '',
49
49
  // dataTree:[],
50
- checkList:[],
51
- checkDatas:[],
52
- filterText:""
50
+ checkList: [],
51
+ checkDatas: [],
52
+ filterText: ""
53
53
  }
54
54
  },
55
- props:["dataOptions","fieldValue"],
56
- methods:{
57
- saveData(){
55
+ props: ["dataOptions", "fieldValue", "webHookCascader"],
56
+ methods: {
57
+ saveData () {
58
58
  this.checkList = []
59
- this.checkDatas = []
60
- this.ergodicData(this.setCascadeOption,this.checkList)
61
- this.$emit('saveData',this.checkList,this.checkDatas)
59
+ this.checkDatas = []
60
+ this.ergodicData(this.setCascadeOption, this.checkList)
61
+ this.$emit('saveData', this.checkList, this.checkDatas)
62
62
  },
63
- cancelBtn(){
64
- this.$emit('cancelBtn')
63
+ cancelBtn () {
64
+ this.$emit('cancelBtn')
65
65
  },
66
- ergodicData(list){
67
- list.forEach(item=>{
68
- if (this.dataOptions.extInfo.selectType === '多选'){
69
- if (item.checked){
66
+ ergodicData (list) {
67
+ list.forEach(item => {
68
+ if (this.dataOptions.extInfo.selectType === '多选') {
69
+ if (item.checked) {
70
70
  let data = this.$refs.dataTree.getNode(item)
71
71
  let checkList = []
72
- let arr = this.serchParent(data,checkList)
72
+ let arr = this.serchParent(data, checkList)
73
73
  this.checkList.push(arr)
74
74
  this.checkDatas.push(item)
75
75
  }
76
76
  }
77
- else {
78
- if (item.value === this.checked){
77
+ else {
78
+ if (item.value === this.checked) {
79
79
  let data = this.$refs.dataTree.getNode(item)
80
80
  let checkList = []
81
- let arr = this.serchParent(data,checkList)
81
+ let arr = this.serchParent(data, checkList)
82
82
  this.checkList = arr
83
83
  this.checkDatas = [item]
84
84
  }
85
85
  }
86
- if (item.children){
86
+ if (item.children) {
87
87
  this.ergodicData(item.children)
88
88
  }
89
89
  })
90
90
  },
91
- serchParent(node,list) {
92
- if(node) {
93
- if(Object.prototype.toString.call(node.data) == '[object Object]') {
91
+ serchParent (node, list) {
92
+ if (node) {
93
+ if (Object.prototype.toString.call(node.data) == '[object Object]') {
94
94
  list.unshift(node.data.value)
95
95
  }
96
- if(node.parent) {
97
- list = this.serchParent(node.parent,list)
96
+ if (node.parent) {
97
+ list = this.serchParent(node.parent, list)
98
98
  }
99
99
  }
100
100
  return list
101
101
  },
102
- filterNode(value, data, node) {
102
+ filterNode (value, data, node) {
103
103
  if (!value) return true;
104
104
  let upperCase = value.toUpperCase()
105
105
  let lowerCase = value.toLowerCase()
@@ -109,55 +109,58 @@ export default {
109
109
  }
110
110
  return data.label.indexOf(value) !== -1 || data.label.indexOf(upperCase) !== -1 || data.label.indexOf(lowerCase) !== -1 || serchFlag;
111
111
  },
112
- nodeClick(data,node){
113
- if (this.dataOptions.extInfo.selectType !== '多选'){
112
+ nodeClick (data, node) {
113
+ if(this.webHookCascader && data.children && data.children.length != 0) {
114
+ return
115
+ }
116
+ if (this.dataOptions.extInfo.selectType !== '多选') {
114
117
  this.ergodicCascade(this.setCascadeOption)
115
118
  } else {
116
- this.$set(data,'checked',!data.checked)
119
+ this.$set(data, 'checked', !data.checked)
117
120
  }
118
- if (this.dataOptions.extInfo.selectType !== '多选'){
121
+ if (this.dataOptions.extInfo.selectType !== '多选') {
119
122
  this.checked = data.value;
120
123
  }
121
124
  },
122
- ergodicCascade(list){
123
- list.forEach(item=>{
125
+ ergodicCascade (list) {
126
+ list.forEach(item => {
124
127
  item.checked = false;
125
- if (item.children){
128
+ if (item.children) {
126
129
  this.ergodicCascade(item.children)
127
130
  }
128
131
  })
129
132
  },
130
133
  },
131
134
  computed: {
132
- dataTree() {
135
+ dataTree () {
133
136
  let arr = []
134
- if (this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown.options){
137
+ if (this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown.options) {
135
138
  arr = this.dataOptions.extInfo.cascadeDown.options
136
139
  }
137
- else if (this.dataOptions.extInfo.cascade){
140
+ else if (this.dataOptions.extInfo.cascade) {
138
141
  arr = this.dataOptions.extInfo.cascade
139
142
  }
140
- else if (this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown[0]){
143
+ else if (this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown[0]) {
141
144
  arr = this.dataOptions.extInfo.cascadeDown[0].options
142
145
  }
143
146
  return arr
144
147
  },
145
148
  //规则中限制极限的选项
146
- setCascadeOption(){
149
+ setCascadeOption () {
147
150
  let options = [];
148
- let arr = []
149
- if (this.dataOptions.extInfo && (this.dataOptions.extInfo.cascadeDown || this.dataOptions.extInfo.cascade)){
151
+ let arr = []
152
+ if (this.dataOptions.extInfo && (this.dataOptions.extInfo.cascadeDown || this.dataOptions.extInfo.cascade)) {
150
153
  arr = this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown.options ? this.dataOptions.extInfo.cascadeDown.options :
151
- (this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown[0] ? this.dataOptions.extInfo.cascadeDown[0].options :
152
- (this.dataOptions.extInfo.cascade ? this.dataOptions.extInfo.cascade: []));
154
+ (this.dataOptions.extInfo.cascadeDown && this.dataOptions.extInfo.cascadeDown[0] ? this.dataOptions.extInfo.cascadeDown[0].options :
155
+ (this.dataOptions.extInfo.cascade ? this.dataOptions.extInfo.cascade : []));
153
156
  }
154
- if (this.dataOptions.extInfo && this.dataOptions.extInfo.dependent && JSON.stringify(this.dataOptions.extInfo.dependent)!=='{}'){
155
- for (let k in this.dataOptions.extInfo.dependent){
156
- if (Array.isArray(this.fieldValue[k]) && Array.isArray(this.fieldValue[k][0])){
157
- this.fieldValue[k].forEach(item=>{
158
- this.dataOptions.extInfo.dependent[k].filterStruct.forEach(filter=>{
159
- if (filter.input === item || item[item.length - 1] == filter.input){
160
- if (!options){
157
+ if (this.dataOptions.extInfo && this.dataOptions.extInfo.dependent && JSON.stringify(this.dataOptions.extInfo.dependent) !== '{}') {
158
+ for (let k in this.dataOptions.extInfo.dependent) {
159
+ if (Array.isArray(this.fieldValue[k]) && Array.isArray(this.fieldValue[k][0])) {
160
+ this.fieldValue[k].forEach(item => {
161
+ this.dataOptions.extInfo.dependent[k].filterStruct.forEach(filter => {
162
+ if (filter.input === item || item[item.length - 1] == filter.input) {
163
+ if (!options) {
161
164
  options = []
162
165
  }
163
166
  options = options.concat(filter.output)
@@ -167,28 +170,28 @@ export default {
167
170
  }
168
171
  else {
169
172
  console.log(this.dataOptions.extInfo.dependent[k].filterStruct);
170
- this.dataOptions.extInfo.dependent[k].filterStruct.forEach(filter=>{
171
- if (this.fieldValue[k] && (filter.input === this.fieldValue[k] || this.fieldValue[k][this.fieldValue[k].length - 1] == filter.input)){
173
+ this.dataOptions.extInfo.dependent[k].filterStruct.forEach(filter => {
174
+ if (this.fieldValue[k] && (filter.input === this.fieldValue[k] || this.fieldValue[k][this.fieldValue[k].length - 1] == filter.input)) {
172
175
  options = filter.output;
173
176
 
174
177
  }
175
178
  })
176
179
  }
177
180
  }
178
- const initCascade = (arr, parent)=>{
179
- return JSON.parse(JSON.stringify(arr)).filter(item =>{
180
- if (item.children){
181
+ const initCascade = (arr, parent) => {
182
+ return JSON.parse(JSON.stringify(arr)).filter(item => {
183
+ if (item.children) {
181
184
  item.children = initCascade(item.children, item)
182
185
  }
183
186
  let flag = null
184
187
  for (let i = 0; i < options.length; i++) {
185
188
  const optArr = options[i];
186
189
  item.checked = false;
187
- if(optArr.indexOf(item.value) !== -1) {
188
- if(parent === null || item.children && item.children.length != 0) {
190
+ if (optArr.indexOf(item.value) !== -1) {
191
+ if (parent === null || item.children && item.children.length != 0) {
189
192
  flag = true
190
- } else if(parent && optArr.indexOf(parent.value) !== -1 &&
191
- (Math.abs(optArr.indexOf(parent.value) - optArr.indexOf(item.value)) === 1 )) {
193
+ } else if (parent && optArr.indexOf(parent.value) !== -1 &&
194
+ (Math.abs(optArr.indexOf(parent.value) - optArr.indexOf(item.value)) === 1)) {
192
195
  flag = true
193
196
  }
194
197
  }
@@ -196,17 +199,17 @@ export default {
196
199
  return flag && item
197
200
  })
198
201
  }
199
- arr = initCascade(arr,null)
202
+ arr = initCascade(arr, null)
200
203
  }
201
204
  else {
202
205
  return arr
203
206
  }
204
- console.debug('options',arr)
207
+ console.debug('options', arr)
205
208
  return arr
206
209
  },
207
210
  },
208
- watch:{
209
- filterText(val) {
211
+ watch: {
212
+ filterText (val) {
210
213
  this.$refs.dataTree.filter(val);
211
214
  }
212
215
  }
@@ -227,14 +230,16 @@ export default {
227
230
  </script>
228
231
 
229
232
  <style scoped lang="less">
230
- #tree{
233
+ #tree {
231
234
  height: 100%;
232
235
  overflow: hidden;
233
- /deep/.el-tree-node__content{
236
+
237
+ /deep/.el-tree-node__content {
234
238
  height: 38px;
235
239
  line-height: 38px;
236
240
  }
237
- .tree-header{
241
+
242
+ .tree-header {
238
243
  height: 30px;
239
244
  display: flex;
240
245
  align-items: center;
@@ -243,41 +248,49 @@ export default {
243
248
  width: calc(100% - 40px);
244
249
  /*font-size: 14px;*/
245
250
  padding-bottom: 20px;
246
- .primary{
251
+
252
+ .primary {
247
253
  color: #366aff;
248
254
  cursor: pointer;
249
255
  }
250
- .cacel{
256
+
257
+ .cacel {
251
258
  color: #969799;
252
259
  cursor: pointer;
253
260
  }
254
261
  }
255
- .tree-input{
262
+
263
+ .tree-input {
256
264
  width: calc(100% - 20px);
257
265
  margin: 0 10px 10px 10px;
258
266
  }
259
- .tree-container{
260
- height:260px;
267
+
268
+ .tree-container {
269
+ height: 260px;
261
270
  overflow-y: scroll;
262
271
  overflow-x: hidden;
263
272
  }
264
- .custom-tree-node{
273
+
274
+ .custom-tree-node {
265
275
  display: flex;
266
276
  align-items: center;
267
277
  justify-content: space-between;
268
278
  width: calc(100% - 40px);
269
279
  font-size: 14px;
270
- .tree-label{
280
+
281
+ .tree-label {
271
282
  max-width: 100%;
272
283
  overflow: hidden;
273
284
  text-overflow: ellipsis;
274
285
  white-space: nowrap;
275
286
  }
276
- /deep/.el-radio__label{
287
+
288
+ /deep/.el-radio__label {
277
289
  display: none;
278
290
  }
279
291
  }
280
- .footer{
292
+
293
+ .footer {
281
294
  position: absolute;
282
295
  bottom: 0;
283
296
  height: 60px;
@@ -286,10 +299,10 @@ export default {
286
299
  justify-content: space-between;
287
300
  width: calc(100% - 40px);
288
301
  margin: 0 20px;
289
- .el-button{
302
+
303
+ .el-button {
290
304
  flex: 1;
291
305
  border-radius: 9px;
292
306
  }
293
307
  }
294
- }
295
- </style>
308
+ }</style>
@@ -1,4 +1,5 @@
1
1
  // const OSS = require('ali-oss');
2
+ const OSS = window.OSS
2
3
 
3
4
  let IDX = 256, HEX = [], SIZE = 256, BUFFER;
4
5
  while (IDX--) HEX[IDX] = (IDX + 256).toString(16).substring(1);
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
- import {multipartUpload, ossFileUrl} from "./AliyunIssUtil";
2
+ import {multipartUpload, ossFileUrl} from "../../assets/js/AliyunIssUtil";
3
3
  import { v4 as uuidv4 } from "uuid";
4
4
  const ossConfig = {
5
5
  region: "oss-cn-zhangjiakou",
@@ -31,7 +31,7 @@
31
31
  <!-- v-if="msgContent.totalCount > msgContent.knowledgeFileInfos.length" -->
32
32
 
33
33
  <div class="load_moreKnowledge" v-if="page < msgContent.totalPages" @click="loadMore">
34
- <span>查看更多</span>
34
+ <span>{{$t('common.lodeMore')}}</span>
35
35
  </div>
36
36
  </div>
37
37
  <previewPdf ref="previewPdf"
@@ -92,7 +92,11 @@ export default {
92
92
  bindCode:{
93
93
  type: String,
94
94
  default: ''
95
- }
95
+ },
96
+ language:{
97
+ type: String,
98
+ default: 'en'
99
+ }
96
100
  },
97
101
  data () {
98
102
  return {
@@ -39,7 +39,11 @@ export default {
39
39
  clickFun (item) {
40
40
  this.$emit('llmCardClickFun', item)
41
41
  }
42
- }
42
+ },
43
+ mounted() {
44
+ let languageCode = sessionStorage.getItem('languageCode');
45
+ console.log('languageCode',languageCode,this.$i18n.locale,localStorage.getItem('languageCode'))
46
+ }
43
47
  };
44
48
  </script>
45
49
 
@@ -4,7 +4,7 @@
4
4
  <div class="title_desc">{{ msg.content.problemRecommendationDesc }}</div>
5
5
  <div class="title_change_batch" v-if="msg.content.page && msg.content.problemRecommendationValue.length > msg.content.pageCount" @click="changeBatch">
6
6
  <i class="iconfont guoran-tongyichicun-huanyipi"></i>
7
- <span>换一批</span>
7
+ <span>{{$t('common.changeBatch')}}</span>
8
8
  </div>
9
9
  </div>
10
10
  <div class="content">
@@ -0,0 +1,72 @@
1
+ {
2
+ "actionSatisfaction": {
3
+ "satisfaction": "满意",
4
+ "notSatisfied": "不满意"
5
+ },
6
+ "answerRadio": {
7
+ "tip": "AI为您推荐了以下内容",
8
+ "loadMore": "换一批"
9
+ },
10
+ "previewPdf": {
11
+ "intelligentSummary": "智能摘要",
12
+ "chat": "聊一聊",
13
+ "regeneration": "重新生成",
14
+ "generating": "生成中",
15
+ "copyUrl": "下载地址已复制,请前往Safari浏览器访问下载",
16
+ "answer": "答案由",
17
+ "answerTip": "段内容生成"
18
+ },
19
+ "answerDocKnowledge": {
20
+ "title": "AI为您总结生成了以下摘要",
21
+ "sourceFrom": "出自",
22
+ "view": "查看"
23
+ },
24
+ "formTemplate": {
25
+ "report": "报单人",
26
+ "feedbackDes": "反馈描述",
27
+ "orderDes": "工单描述",
28
+ "uploadType": "只能上传图片格式",
29
+ "uploadImageSize": "上传图片大小不能超过 8MB!",
30
+ "uploadVideoType": "只能上传视频格式",
31
+ "uploadVideoSize": "上传视频大小不能超过100MB!",
32
+ "uploadFileSize": "上传附件大小不能超过100MB!",
33
+ "onlyUpload": "仅支持上传",
34
+ "number": "个",
35
+ "textFlag": "必须要有文字",
36
+ "imageOrAttachment": "必须要有图片或附件",
37
+ "imageFlag": "必须要有图片",
38
+ "attachmentFlag": "必须要有附件",
39
+ "image": "图片",
40
+ "file": "附件",
41
+ "and": "和",
42
+ "required": "是必填的",
43
+ "uploading": "文件正在上传,请稍后",
44
+ "pleaseImprove": "请完善",
45
+ "feedbackDesRequired": "反馈描述是必填的",
46
+ "orderDesRequired": "问题描述是必填的"
47
+ },
48
+ "senderMessagePlatform": {
49
+ "IM": "IM人工",
50
+ "service": "将为您服务",
51
+ "transfer": "将会话转接给"
52
+ },
53
+ "common": {
54
+ "drawerTitle": "我是标题",
55
+ "viewDetail": "查看详情",
56
+ "download": "下载",
57
+ "changeBatch": "换一批",
58
+ "lodeMore": "查看更多",
59
+ "previous": "上一段",
60
+ "next": "下一段",
61
+ "selectPlaceholder": "请选择",
62
+ "inputPlaceholder": "请输入",
63
+ "selectDate": "请选择日期",
64
+ "selectTime": "请选择时间",
65
+ "selectDateTime": "请选择日期时间",
66
+ "cancel": "取消",
67
+ "confirm": "确认",
68
+ "submit": "提交",
69
+ "submited": "已提交",
70
+ "confirmed": "已确认"
71
+ }
72
+ }
@@ -0,0 +1,73 @@
1
+ {
2
+ "actionSatisfaction": {
3
+ "satisfaction": "Satisfied",
4
+ "notSatisfied": "Not Satisfied"
5
+ },
6
+ "answerRadio": {
7
+ "tip": "AI recommends the following content for you",
8
+ "loadMore": "Load More"
9
+ },
10
+ "previewPdf": {
11
+ "intelligentSummary": "Intelligent Summary",
12
+ "chat": "Chat",
13
+ "regeneration": "Regenerate",
14
+ "generating": "Generating",
15
+ "copyUrl": "Download link copied. Please visit Safari browser to download.",
16
+ "answer": "Answer provided by",
17
+ "answerTip": "paragraph generated"
18
+ },
19
+ "answerDocKnowledge": {
20
+ "title": "AI has generated the following summary for you",
21
+ "sourceFrom": "Source from",
22
+ "view": "View"
23
+ },
24
+ "formTemplate": {
25
+ "report": "Reporter",
26
+ "feedbackDes": "Feedback Description",
27
+ "orderDes": "Work Order Description",
28
+ "uploadType": "Only upload image format",
29
+ "uploadImageSize": "Uploaded image size cannot exceed 8MB!",
30
+ "uploadVideoType": "Only upload video format",
31
+ "uploadVideoSize": "Uploaded video size cannot exceed 100MB!",
32
+ "uploadFileSize": "Uploaded attachment size cannot exceed 100MB!",
33
+ "onlyUpload": "Only support upload",
34
+ "number": "",
35
+ "textFlag": "must have text",
36
+ "imageOrAttachment": "must have image or attachment",
37
+ "imageFlag": "must have image",
38
+ "attachmentFlag": "must have attachment",
39
+ "image": "Image",
40
+ "file": "Attachment",
41
+ "and": "and",
42
+ "required": "is required",
43
+ "uploading": "File is uploading, please wait",
44
+ "pleaseImprove": "Please improve",
45
+ "feedbackDesRequired": "Feedback description is required",
46
+ "orderDesRequired": "Problem description is required"
47
+ },
48
+ "senderMessagePlatform": {
49
+ "IM": "IM (Instant Messaging) Agent",
50
+ "service": "will serve you",
51
+ "transfer": "will transfer the session to"
52
+ },
53
+ "common": {
54
+ "drawerTitle": "Title",
55
+ "viewDetail": "View Details",
56
+ "download": "Download",
57
+ "changeBatch": "Change Batch",
58
+ "lodeMore": "Load More",
59
+ "previous": "Previous",
60
+ "next": "Next",
61
+ "selectPlaceholder": "Select",
62
+ "inputPlaceholder": "Enter",
63
+ "selectDate": "Select Date",
64
+ "selectTime": "Select Time",
65
+ "selectDateTime": "Select Date and Time",
66
+ "cancel": "Cancel",
67
+ "confirm": "Confirm",
68
+ "submit": "Submit",
69
+ "submited": "Submitted",
70
+ "confirmed": "Confirmed"
71
+ }
72
+ }
73
+
@@ -0,0 +1,73 @@
1
+ {
2
+ "actionSatisfaction": {
3
+ "satisfaction": "満足",
4
+ "notSatisfied": "不満"
5
+ },
6
+ "answerRadio": {
7
+ "tip": "AIがお勧めする内容",
8
+ "loadMore": "さらに表示"
9
+ },
10
+ "previewPdf": {
11
+ "intelligentSummary": "インテリジェントサマリー",
12
+ "chat": "チャット",
13
+ "regeneration": "再生成",
14
+ "generating": "生成中",
15
+ "copyUrl": "ダウンロードURLがコピーされました。Safariブラウザでダウンロードしてください。",
16
+ "answer": "回答",
17
+ "answerTip": "セクションの生成"
18
+ },
19
+ "answerDocKnowledge": {
20
+ "title": "AIが生成した要約",
21
+ "sourceFrom": "出典",
22
+ "view": "表示"
23
+ },
24
+ "formTemplate": {
25
+ "report": "レポート",
26
+ "feedbackDes": "フィードバックの説明",
27
+ "orderDes": "オーダーの説明",
28
+ "uploadType": "画像形式のみアップロード可能です",
29
+ "uploadImageSize": "画像サイズは8MB以下にしてください",
30
+ "uploadVideoType": "ビデオ形式のみアップロード可能です",
31
+ "uploadVideoSize": "ビデオサイズは100MB以下にしてください",
32
+ "uploadFileSize": "ファイルサイズは100MB以下にしてください",
33
+ "onlyUpload": "アップロードのみ可能",
34
+ "number": "個",
35
+ "textFlag": "テキストが必要です",
36
+ "imageOrAttachment": "画像または添付ファイルが必要です",
37
+ "imageFlag": "画像が必要です",
38
+ "attachmentFlag": "添付ファイルが必要です",
39
+ "image": "画像",
40
+ "file": "添付ファイル",
41
+ "and": "と",
42
+ "required": "必須",
43
+ "uploading": "ファイルをアップロード中です。しばらくお待ちください",
44
+ "pleaseImprove": "ご改善ください",
45
+ "feedbackDesRequired": "フィードバックの説明は必須です",
46
+ "orderDesRequired": "オーダーの説明は必須です"
47
+ },
48
+ "senderMessagePlatform": {
49
+ "IM": "IMチャット",
50
+ "service": "ご案内します",
51
+ "transfer": "会話を転送します"
52
+ },
53
+ "common": {
54
+ "drawerTitle": "タイトル",
55
+ "viewDetail": "詳細を表示",
56
+ "download": "ダウンロード",
57
+ "changeBatch": "別のバッチに変更",
58
+ "lodeMore": "さらに表示",
59
+ "previous": "前へ",
60
+ "next": "次へ",
61
+ "selectPlaceholder": "選択してください",
62
+ "inputPlaceholder": "入力してください",
63
+ "selectDate": "日付を選択",
64
+ "selectTime": "時間を選択",
65
+ "selectDateTime": "日時を選択",
66
+ "cancel": "キャンセル",
67
+ "confirm": "確認",
68
+ "submit": "送信",
69
+ "submited": "送信済み",
70
+ "confirmed": "確認済み"
71
+ }
72
+ }
73
+