@myun/gimi-chat 0.9.33 → 0.9.35

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 (33) hide show
  1. package/dist/apis/useApi.d.ts +24 -1
  2. package/dist/apis/useApi.js +142 -83
  3. package/dist/components/answer-item/index.js +9 -0
  4. package/dist/components/file-upload/index.js +1 -1
  5. package/dist/components/gimi-sidebar/index.module.css +1 -1
  6. package/dist/components/iconfont-com/index.js +1 -1
  7. package/dist/components/knowledge-trace/KnowledgeIconComponent.js +48 -19
  8. package/dist/components/knowledge-trace/classList.js +2 -4
  9. package/dist/components/knowledge-trace/config.d.ts +92 -0
  10. package/dist/components/knowledge-trace/config.js +154 -0
  11. package/dist/components/knowledge-trace/documentList.d.ts +1 -0
  12. package/dist/components/knowledge-trace/documentList.js +10 -35
  13. package/dist/components/knowledge-trace/index.d.ts +1 -1
  14. package/dist/components/knowledge-trace/index.module.css +242 -9
  15. package/dist/components/knowledge-trace/information.d.ts +7 -0
  16. package/dist/components/knowledge-trace/information.js +25 -0
  17. package/dist/components/knowledge-trace/interfaces.d.ts +2 -0
  18. package/dist/components/knowledge-trace/tryWatch.d.ts +11 -0
  19. package/dist/components/knowledge-trace/tryWatch.js +430 -0
  20. package/dist/components/knowledge-trace/videoList.d.ts +1 -0
  21. package/dist/components/knowledge-trace/videoList.js +8 -37
  22. package/dist/components/upload-list/CustomFile.js +3 -1
  23. package/dist/constants.d.ts +1 -0
  24. package/dist/constants.js +2 -1
  25. package/dist/hooks/useKnowledgeService.d.ts +2 -0
  26. package/dist/hooks/useKnowledgeService.js +70 -23
  27. package/dist/i18n/locales/en-US.d.ts +31 -0
  28. package/dist/i18n/locales/en-US.js +45 -14
  29. package/dist/i18n/locales/zh-CN.d.ts +31 -0
  30. package/dist/i18n/locales/zh-CN.js +32 -1
  31. package/dist/interfaces/knowledgeTrace.d.ts +70 -0
  32. package/dist/umd/index.min.js +1 -1
  33. package/package.json +2 -1
@@ -26,7 +26,8 @@ var useKnowledgeService = function useKnowledgeService(props) {
26
26
  var _ref = apiService,
27
27
  getProductList = _ref.getProductList,
28
28
  getFileResourceList = _ref.getFileResourceList,
29
- getVideoSliceList = _ref.getVideoSliceList;
29
+ getVideoSliceList = _ref.getVideoSliceList,
30
+ getInformationList = _ref.getInformationList;
30
31
  var _React$useState = React.useState(false),
31
32
  _React$useState2 = _slicedToArray(_React$useState, 2),
32
33
  isLoading = _React$useState2[0],
@@ -43,6 +44,10 @@ var useKnowledgeService = function useKnowledgeService(props) {
43
44
  _React$useState8 = _slicedToArray(_React$useState7, 2),
44
45
  videoSliceList = _React$useState8[0],
45
46
  setVideoSliceList = _React$useState8[1];
47
+ var _React$useState9 = React.useState([]),
48
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
49
+ informationList = _React$useState10[0],
50
+ setInformationList = _React$useState10[1];
46
51
  var getProducts = /*#__PURE__*/function () {
47
52
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(item) {
48
53
  var ids, res, _res$result;
@@ -170,66 +175,107 @@ var useKnowledgeService = function useKnowledgeService(props) {
170
175
  return _ref4.apply(this, arguments);
171
176
  };
172
177
  }();
173
- var init = /*#__PURE__*/function () {
174
- var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
175
- var kowledgeTraceList, _props$kowledgeTrace, promiseList;
178
+ var getInformation = /*#__PURE__*/function () {
179
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(item) {
180
+ var ids, res, _res$result4;
176
181
  return _regeneratorRuntime().wrap(function _callee4$(_context4) {
177
182
  while (1) switch (_context4.prev = _context4.next) {
183
+ case 0:
184
+ _context4.prev = 0;
185
+ ids = item.resources.map(function (item) {
186
+ return item.id;
187
+ });
188
+ _context4.next = 4;
189
+ return getInformationList({
190
+ informationIds: ids
191
+ });
192
+ case 4:
193
+ res = _context4.sent;
194
+ if (res.status === 0 && res.result) {
195
+ setInformationList((_res$result4 = res.result) === null || _res$result4 === void 0 ? void 0 : _res$result4.map(function (item) {
196
+ return _objectSpread(_objectSpread({}, item), {}, {
197
+ isActive: false
198
+ });
199
+ }));
200
+ } else {
201
+ setInformationList([]);
202
+ }
203
+ _context4.next = 11;
204
+ break;
205
+ case 8:
206
+ _context4.prev = 8;
207
+ _context4.t0 = _context4["catch"](0);
208
+ setInformationList([]);
209
+ case 11:
210
+ case "end":
211
+ return _context4.stop();
212
+ }
213
+ }, _callee4, null, [[0, 8]]);
214
+ }));
215
+ return function getInformation(_x4) {
216
+ return _ref5.apply(this, arguments);
217
+ };
218
+ }();
219
+ var init = /*#__PURE__*/function () {
220
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
221
+ var kowledgeTraceList, _props$kowledgeTrace, promiseList;
222
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
223
+ while (1) switch (_context5.prev = _context5.next) {
178
224
  case 0:
179
225
  kowledgeTraceList = [];
180
226
  if (!Array.isArray(props)) {
181
- _context4.next = 7;
227
+ _context5.next = 7;
182
228
  break;
183
229
  }
184
230
  if (props !== null && props !== void 0 && props.length) {
185
- _context4.next = 4;
231
+ _context5.next = 4;
186
232
  break;
187
233
  }
188
- return _context4.abrupt("return");
234
+ return _context5.abrupt("return");
189
235
  case 4:
190
236
  kowledgeTraceList.push.apply(kowledgeTraceList, _toConsumableArray(props));
191
- _context4.next = 10;
237
+ _context5.next = 10;
192
238
  break;
193
239
  case 7:
194
240
  if (!(!((_props$kowledgeTrace = props.kowledgeTrace) !== null && _props$kowledgeTrace !== void 0 && _props$kowledgeTrace.length) || !props.showPanel)) {
195
- _context4.next = 9;
241
+ _context5.next = 9;
196
242
  break;
197
243
  }
198
- return _context4.abrupt("return");
244
+ return _context5.abrupt("return");
199
245
  case 9:
200
246
  kowledgeTraceList.push.apply(kowledgeTraceList, _toConsumableArray(props.kowledgeTrace || []));
201
247
  case 10:
202
248
  if (!(Array.isArray(props) && (props === null || props === void 0 ? void 0 : props.length) === 0)) {
203
- _context4.next = 12;
249
+ _context5.next = 12;
204
250
  break;
205
251
  }
206
- return _context4.abrupt("return");
252
+ return _context5.abrupt("return");
207
253
  case 12:
208
254
  setIsloading(true);
209
- _context4.prev = 13;
255
+ _context5.prev = 13;
210
256
  promiseList = [];
211
257
  kowledgeTraceList.forEach(function (item) {
212
- var callFun = item.type === 'video' ? getVideos : item.type === 'document' ? getDocuments : getProducts;
258
+ var callFun = item.type === 'video' ? getVideos : item.type === 'document' ? getDocuments : item.type === 'information' ? getInformation : getProducts;
213
259
  promiseList.push(callFun(item));
214
260
  });
215
- _context4.next = 18;
261
+ _context5.next = 18;
216
262
  return Promise.allSettled(promiseList);
217
263
  case 18:
218
264
  setIsloading(false);
219
- _context4.next = 24;
265
+ _context5.next = 24;
220
266
  break;
221
267
  case 21:
222
- _context4.prev = 21;
223
- _context4.t0 = _context4["catch"](13);
224
- console.error(_context4.t0);
268
+ _context5.prev = 21;
269
+ _context5.t0 = _context5["catch"](13);
270
+ console.error(_context5.t0);
225
271
  case 24:
226
272
  case "end":
227
- return _context4.stop();
273
+ return _context5.stop();
228
274
  }
229
- }, _callee4, null, [[13, 21]]);
275
+ }, _callee5, null, [[13, 21]]);
230
276
  }));
231
277
  return function init() {
232
- return _ref5.apply(this, arguments);
278
+ return _ref6.apply(this, arguments);
233
279
  };
234
280
  }();
235
281
  React.useEffect(function () {
@@ -242,7 +288,8 @@ var useKnowledgeService = function useKnowledgeService(props) {
242
288
  isLoading: isLoading,
243
289
  documentList: documentList,
244
290
  videoSliceList: videoSliceList,
245
- productList: productList
291
+ productList: productList,
292
+ informationList: informationList
246
293
  };
247
294
  };
248
295
  export default useKnowledgeService;
@@ -9,6 +9,7 @@ declare const enUS: {
9
9
  'knowledgeTrace.type.document': string;
10
10
  'knowledgeTrace.type.video': string;
11
11
  'knowledgeTrace.type.course': string;
12
+ 'knowledgeTrace.type.information': string;
12
13
  'reasoningSearch.summary': string;
13
14
  'chatInput.maxLength': string;
14
15
  'chatInput.uploadLimitOne': string;
@@ -40,6 +41,21 @@ declare const enUS: {
40
41
  'trace.document.coverAlt': string;
41
42
  'trace.document.invalid': string;
42
43
  'trace.document.total': string;
44
+ 'trace.document.unsupported': string;
45
+ 'trace.document.unsupportedTips': string;
46
+ 'trace.video.unsupportedTips': string;
47
+ 'trace.information.unsupportedTips': string;
48
+ 'trace.notPermission': string;
49
+ 'trace.tryWatchVideo': string;
50
+ 'trace.tryWatchDocument': string;
51
+ 'trace.tryWatchInformation': string;
52
+ 'trace.viewFull': string;
53
+ 'trace.document.trialUnsupportedType': string;
54
+ 'trace.document.trialFileTooLarge': string;
55
+ 'trace.document.trialInvalidDoc': string;
56
+ 'trace.document.trialFailed': string;
57
+ 'trace.tryFullTips': string;
58
+ 'trace.tryFull': string;
43
59
  'trace.iconAlt': string;
44
60
  'trace.countByType': string;
45
61
  'file.totalInConversation': string;
@@ -221,5 +237,20 @@ declare const enUS: {
221
237
  'voice.error.sendTextFailed': string;
222
238
  'voice.error.blobError': string;
223
239
  'voice.error.blobFormatError': string;
240
+ 'informationDetail.contentCategory': string;
241
+ 'informationDetail.taxEffectivePeriod': string;
242
+ 'informationDetail.issuingDepartmentLabel': string;
243
+ 'informationDetail.documentNumberLabel': string;
244
+ 'informationDetail.publishDate': string;
245
+ 'informationDetail.effectiveDateLabel': string;
246
+ 'informationDetail.reviseDate': string;
247
+ 'informationDetail.taxTypeLabel': string;
248
+ 'informationDetail.industryCategory': string;
249
+ 'informationDetail.keywords': string;
250
+ 'informationDetail.applicableArea': string;
251
+ 'informationDetail.taxPreferenceLabel': string;
252
+ 'informationDetail.applicableCountry': string;
253
+ 'informationDetail.signDate': string;
254
+ 'informationDetail.executeDate': string;
224
255
  };
225
256
  export default enUS;
@@ -9,21 +9,22 @@ var enUS = {
9
9
  'knowledgeTrace.type.document': 'Document',
10
10
  'knowledgeTrace.type.video': 'Video',
11
11
  'knowledgeTrace.type.course': 'Courses',
12
+ 'knowledgeTrace.type.information': 'Information',
12
13
  'reasoningSearch.summary': 'Search Results',
13
14
  'chatInput.maxLength': 'Maximum 10000 characters',
14
15
  'chatInput.uploadLimitOne': 'Upload limit is one file',
15
16
  'chatInput.uploadLimitFive': 'Upload limit is 5 files',
16
17
  'chatInput.uploadLimitTen': 'Upload limit is 10 files',
17
18
  'chatInput.flowUnsupported': 'This button is not supported in the current flow. Please wait for the current flow to finish or follow the instructions on the chat card.',
18
- 'chatInput.uploadFile': 'Supports Word, Excel, images\nUp to 10 files (max 10MB each)',
19
+ 'chatInput.uploadFile': 'Supports Word, Excel,and Images.\nUp to 10 files (max 10MB each)',
19
20
  'chatInput.newConversation': 'New conversation',
20
- 'chatInput.deepThinkTip': 'System intelligently switches thinking mode',
21
+ 'chatInput.deepThinkTip': 'System Automatically Switched Thinking Mode',
21
22
  'chatInput.deepThinkModeAuto': 'Thinking',
22
- 'chatInput.fetchingVoice': 'Fetching voice content...',
23
+ 'chatInput.fetchingVoice': 'Capturing Voice Input...',
23
24
  'chatInput.voiceCallUnsupported': 'Voice call is not supported in the current flow',
24
25
  'chatInput.micPermissionRequired': 'Microphone access required',
25
26
  'chatInput.more': 'More',
26
- 'chatInput.stopVoiceInput': 'Stop voice input',
27
+ 'chatInput.stopVoiceInput': 'Stop Voice Input',
27
28
  'answer.taskCompleted': 'Task completed!',
28
29
  'answer.stopped': 'Stopped',
29
30
  'answer.courseRecommend': 'Related Courses',
@@ -40,6 +41,21 @@ var enUS = {
40
41
  'trace.document.coverAlt': 'Document image',
41
42
  'trace.document.invalid': 'Document invalid',
42
43
  'trace.document.total': '{{count}} documents in this conversation',
44
+ 'trace.document.unsupported': 'This file type cannot be previewed',
45
+ 'trace.document.unsupportedTips': 'This file format does not support trial preview. You can download it and view it with other software.\nTo view the full document, click the "View" button.',
46
+ 'trace.video.unsupportedTips': 'This video does not support trial preview. You can download it and view it with other software.\nTo view the full video, click the "View" button.',
47
+ 'trace.information.unsupportedTips': 'The following content is not available for trial preview',
48
+ 'trace.notPermission': 'No access rights',
49
+ 'trace.tryWatchVideo': 'Video',
50
+ 'trace.tryWatchDocument': 'Document',
51
+ 'trace.tryWatchInformation': 'Information',
52
+ 'trace.viewFull': 'View',
53
+ 'trace.document.trialUnsupportedType': 'This file type does not support trial preview',
54
+ 'trace.document.trialFileTooLarge': 'File too large to preview',
55
+ 'trace.document.trialInvalidDoc': 'This document does not support trial preview',
56
+ 'trace.document.trialFailed': 'Failed to load trial preview',
57
+ 'trace.tryFullTips': 'You can preview part of the content. Click the button on the right to view the full content.',
58
+ 'trace.tryFull': 'View',
43
59
  'trace.iconAlt': 'Knowledge source icon',
44
60
  'trace.countByType': '{{count}} {{type}}',
45
61
  'file.totalInConversation': '{{count}} documents in this conversation',
@@ -98,16 +114,16 @@ var enUS = {
98
114
  'upload.status.uploadFailed': 'Upload Failed',
99
115
  'upload.status.networkError': 'Network Error',
100
116
  'upload.status.parseFailed': 'Parse Failed',
101
- 'upload.status.parsing': 'Parsing...',
117
+ 'upload.status.parsing': 'Processing File',
102
118
  'upload.status.uploading': 'Uploading...',
103
119
  'upload.status.retrying': 'Retrying...',
104
120
  'upload.parseFailed': 'File parse failed',
105
121
  'upload.parseFailedMaxRetry': 'File parse failed, max retries reached',
106
- 'upload.parseSuccess': 'File parsed successfully',
122
+ 'upload.parseSuccess': 'File Processed Successfully',
107
123
  'upload.successWithName': '{{name}} uploaded successfully',
108
124
  'upload.maxTotalCount': 'Maximum {{count}} files allowed',
109
125
  'upload.maxImageCount': 'Maximum {{count}} images allowed',
110
- 'upload.maxFileCount': 'Maximum {{count}} non-image file allowed',
126
+ 'upload.maxFileCount': 'Upload up to {{count}} non-image file',
111
127
  'upload.imageSizeExceeded': 'Image size cannot exceed {{size}}MB',
112
128
  'history.deleteModal.title': 'Delete Conversation Permanently',
113
129
  'history.deleteModal.content': 'This conversation record will be permanently deleted and cannot be recovered or undone. Are you sure?',
@@ -131,13 +147,13 @@ var enUS = {
131
147
  'voice.micPermissionDesc': 'Voice calls require microphone access in your browser. Please go to settings to enable it.',
132
148
  'voice.readAloud': 'Read aloud',
133
149
  'voice.pauseReadAloud': 'Pause reading',
134
- 'voice.noRecognizedContent': 'No voice content recognized',
135
- 'voice.transcribeFailed': 'Transcription failed, please retry',
150
+ 'voice.noRecognizedContent': 'No Voice Detected',
151
+ 'voice.transcribeFailed': 'Transcription Failed, Please Try Again',
136
152
  'voice.stopRecordingFirst': 'Please stop recording first',
137
153
  'voice.playFailed': 'Voice playback failed',
138
154
  'chatApi.conversationIdMissing': 'Conversation ID missing',
139
155
  'chatApi.retryFailed': 'Retry failed',
140
- 'chatApi.aiResponding': 'AI is responding, please wait',
156
+ 'chatApi.aiResponding': 'AI is Generating, Please Wait',
141
157
  'chatApi.retryActionText': 'Retry',
142
158
  'chatApi.retryUnavailable': 'Retry unavailable for this message',
143
159
  'chatApi.agentMissing': 'Please associate an agent first',
@@ -151,12 +167,12 @@ var enUS = {
151
167
  'messageAction.dislikeDone': 'Disliked',
152
168
  'messageAction.dislike': 'Dislike',
153
169
  'messageAction.regenerate': 'Regenerate',
154
- 'action.copySuccess': 'Copied successfully',
170
+ 'action.copySuccess': 'Copied Successfully',
155
171
  'action.copyFailed': 'Copy failed',
156
172
  'action.likeDone': 'Liked',
157
173
  'action.dislikeDone': 'Disliked',
158
- 'action.likeCancel': 'Like canceled',
159
- 'action.dislikeCancel': 'Dislike canceled',
174
+ 'action.likeCancel': 'Unlike',
175
+ 'action.dislikeCancel': 'Remove Dislike',
160
176
  'action.failed': 'Operation failed',
161
177
  'conversationDelete.title': 'Are you sure you want to delete this conversation?',
162
178
  'conversationDelete.content': 'This action is irreversible',
@@ -220,6 +236,21 @@ var enUS = {
220
236
  'voice.error.inputEmpty': 'Please enter text to synthesize',
221
237
  'voice.error.sendTextFailed': 'Failed to send text: {{message}}',
222
238
  'voice.error.blobError': 'Blob to Base64 failed: Result is not a string',
223
- 'voice.error.blobFormatError': 'Blob to Base64 failed: Format exception'
239
+ 'voice.error.blobFormatError': 'Blob to Base64 failed: Format exception',
240
+ 'informationDetail.contentCategory': 'Content Category:',
241
+ 'informationDetail.taxEffectivePeriod': 'Tax Effective Period:',
242
+ 'informationDetail.issuingDepartmentLabel': 'Issuing Department:',
243
+ 'informationDetail.documentNumberLabel': 'Document Number:',
244
+ 'informationDetail.publishDate': 'Publish Date:',
245
+ 'informationDetail.effectiveDateLabel': 'Effective Date:',
246
+ 'informationDetail.reviseDate': 'Revise Date:',
247
+ 'informationDetail.taxTypeLabel': 'Tax Type:',
248
+ 'informationDetail.industryCategory': 'Industry Category:',
249
+ 'informationDetail.keywords': 'Keywords:',
250
+ 'informationDetail.applicableArea': 'Applicable Area:',
251
+ 'informationDetail.taxPreferenceLabel': 'Tax Preference:',
252
+ 'informationDetail.applicableCountry': 'Applicable Country:',
253
+ 'informationDetail.signDate': 'Sign Date:',
254
+ 'informationDetail.executeDate': 'Execute Date:'
224
255
  };
225
256
  export default enUS;
@@ -9,6 +9,7 @@ declare const zhCN: {
9
9
  'knowledgeTrace.type.document': string;
10
10
  'knowledgeTrace.type.video': string;
11
11
  'knowledgeTrace.type.course': string;
12
+ 'knowledgeTrace.type.information': string;
12
13
  'reasoningSearch.summary': string;
13
14
  'chatInput.maxLength': string;
14
15
  'chatInput.uploadLimitOne': string;
@@ -40,6 +41,21 @@ declare const zhCN: {
40
41
  'trace.document.coverAlt': string;
41
42
  'trace.document.invalid': string;
42
43
  'trace.document.total': string;
44
+ 'trace.document.unsupported': string;
45
+ 'trace.document.unsupportedTips': string;
46
+ 'trace.video.unsupportedTips': string;
47
+ 'trace.information.unsupportedTips': string;
48
+ 'trace.notPermission': string;
49
+ 'trace.tryWatchVideo': string;
50
+ 'trace.tryWatchDocument': string;
51
+ 'trace.tryWatchInformation': string;
52
+ 'trace.viewFull': string;
53
+ 'trace.document.trialUnsupportedType': string;
54
+ 'trace.document.trialFileTooLarge': string;
55
+ 'trace.document.trialInvalidDoc': string;
56
+ 'trace.document.trialFailed': string;
57
+ 'trace.tryFullTips': string;
58
+ 'trace.tryFull': string;
43
59
  'trace.iconAlt': string;
44
60
  'trace.countByType': string;
45
61
  'file.totalInConversation': string;
@@ -221,5 +237,20 @@ declare const zhCN: {
221
237
  'voice.error.sendTextFailed': string;
222
238
  'voice.error.blobError': string;
223
239
  'voice.error.blobFormatError': string;
240
+ 'informationDetail.contentCategory': string;
241
+ 'informationDetail.taxEffectivePeriod': string;
242
+ 'informationDetail.issuingDepartmentLabel': string;
243
+ 'informationDetail.documentNumberLabel': string;
244
+ 'informationDetail.publishDate': string;
245
+ 'informationDetail.effectiveDateLabel': string;
246
+ 'informationDetail.reviseDate': string;
247
+ 'informationDetail.taxTypeLabel': string;
248
+ 'informationDetail.industryCategory': string;
249
+ 'informationDetail.keywords': string;
250
+ 'informationDetail.applicableArea': string;
251
+ 'informationDetail.taxPreferenceLabel': string;
252
+ 'informationDetail.applicableCountry': string;
253
+ 'informationDetail.signDate': string;
254
+ 'informationDetail.executeDate': string;
224
255
  };
225
256
  export default zhCN;
@@ -9,6 +9,7 @@ var zhCN = {
9
9
  'knowledgeTrace.type.document': '文档',
10
10
  'knowledgeTrace.type.video': '视频',
11
11
  'knowledgeTrace.type.course': '课程',
12
+ 'knowledgeTrace.type.information': '资讯',
12
13
  'reasoningSearch.summary': '搜索结果',
13
14
  'chatInput.maxLength': '最多输入10000个字符',
14
15
  'chatInput.uploadLimitOne': '最多上传一个文件哦',
@@ -40,6 +41,21 @@ var zhCN = {
40
41
  'trace.document.coverAlt': '文档图片',
41
42
  'trace.document.invalid': '文档失效',
42
43
  'trace.document.total': '本对话共{{count}}个文档',
44
+ 'trace.document.unsupported': '当前文件不支持预览',
45
+ 'trace.document.unsupportedTips': '文件格式不支持试看,您可以下载后用其他软件查看。\n如需查看完整文档,请点击“去查看”按钮。',
46
+ 'trace.video.unsupportedTips': '该视频暂不支持试看,您可以下载后用其他软件查看。\n如需查看完整视频,请点击“去查看”按钮。',
47
+ 'trace.information.unsupportedTips': '以下内容暂不可试看',
48
+ 'trace.notPermission': '暂无权益',
49
+ 'trace.tryWatchVideo': '视频',
50
+ 'trace.tryWatchDocument': '文档',
51
+ 'trace.tryWatchInformation': '资讯',
52
+ 'trace.viewFull': '去查看',
53
+ 'trace.document.trialUnsupportedType': '该文件类型暂不支持试看',
54
+ 'trace.document.trialFileTooLarge': '文件过大,暂不支持试看',
55
+ 'trace.document.trialInvalidDoc': '该文档暂不支持试看',
56
+ 'trace.document.trialFailed': '试看加载失败',
57
+ 'trace.tryFullTips': '您当前可试看部分内容,点击右侧按钮查看完整内容。',
58
+ 'trace.tryFull': '查看',
43
59
  'trace.iconAlt': '知识库溯源图标',
44
60
  'trace.countByType': '{{count}}个{{type}}',
45
61
  'file.totalInConversation': '本对话共{{count}}个文档',
@@ -220,6 +236,21 @@ var zhCN = {
220
236
  'voice.error.inputEmpty': '请输入合成文本',
221
237
  'voice.error.sendTextFailed': '发送文本失败: {{message}}',
222
238
  'voice.error.blobError': 'Blob 转换 Base64 失败:结果不是字符串类型',
223
- 'voice.error.blobFormatError': 'Blob 转换 Base64 失败:格式异常'
239
+ 'voice.error.blobFormatError': 'Blob 转换 Base64 失败:格式异常',
240
+ 'informationDetail.contentCategory': '内容分类:',
241
+ 'informationDetail.taxEffectivePeriod': '政策时效:',
242
+ 'informationDetail.issuingDepartmentLabel': '发布单位:',
243
+ 'informationDetail.documentNumberLabel': '发文字号:',
244
+ 'informationDetail.publishDate': '发布日期:',
245
+ 'informationDetail.effectiveDateLabel': '生效日期:',
246
+ 'informationDetail.reviseDate': '修订日期:',
247
+ 'informationDetail.taxTypeLabel': '税费类型:',
248
+ 'informationDetail.industryCategory': '行业分类:',
249
+ 'informationDetail.keywords': '关键词:',
250
+ 'informationDetail.applicableArea': '适用地区:',
251
+ 'informationDetail.taxPreferenceLabel': '是否税费优惠及类型:',
252
+ 'informationDetail.applicableCountry': '适用国别:',
253
+ 'informationDetail.signDate': '签署日期:',
254
+ 'informationDetail.executeDate': '执行日期:'
224
255
  };
225
256
  export default zhCN;
@@ -132,6 +132,8 @@ export interface ITeachingModuleResource {
132
132
  isJoinClass: number;
133
133
  isDelete: number; // 资源是否已删除 (1:删除 0 :未删除)
134
134
  isActive?: boolean; // 是否高亮
135
+ resourceMountType?: string; //资源挂载类型
136
+ outlineId?: number; // 大纲ID
135
137
  }
136
138
 
137
139
  export interface IVideoResource {
@@ -174,4 +176,72 @@ export interface IVideoResource {
174
176
  * - vip: 会员产品包
175
177
  */
176
178
  productType: 'single' | 'product';
179
+ }
180
+
181
+ export interface IInformation {
182
+ /** 信息ID */
183
+ id?: number;
184
+ informationId?: number;
185
+ /** 当前机构是否拥有该资讯权益 */
186
+ hasEntitlement?: boolean;
187
+ /** 法规类型 */
188
+ regulationType?: number;
189
+ /** 标题 */
190
+ title?: string;
191
+ /** 副标题 */
192
+ subTitle?: string;
193
+ /** 注释 */
194
+ annotation?: string;
195
+ /** HTML 正文 */
196
+ htmlContent?: string;
197
+ /** 纯文本正文 */
198
+ content?: string;
199
+ /** 政策时效 */
200
+ policyValidity?: string;
201
+ /** 适用国别 */
202
+ applicableCountry?: string;
203
+ /** 适用地区 */
204
+ applicableRegion?: string;
205
+ /** 内容分类 */
206
+ contentCategory?: string[];
207
+ /** 发布单位 */
208
+ publishOrg?: string;
209
+ /** 发文字号 */
210
+ docNo?: string;
211
+ /** 发布日期 */
212
+ publishDate?: string;
213
+ /** 生效日期 */
214
+ effectiveDate?: string;
215
+ /** 修订日期 */
216
+ reviseDate?: string;
217
+ /** 签署日期 */
218
+ signDate?: string;
219
+ /** 执行日期 */
220
+ executeDate?: string;
221
+ /** 税费类型 */
222
+ taxType?: string;
223
+ /** 行业分类 */
224
+ industryCategory?: string;
225
+ /** 是否税费优惠及类型 */
226
+ isTaxPreferential?: string;
227
+ /** 关键词 */
228
+ keywords?: string;
229
+ /** 发布时间,格式:yyyy-MM-dd HH:mm:ss */
230
+ createdAt?: string;
231
+ /** 上一篇资讯 */
232
+ previousInformation?: { id: number; title: string } | null;
233
+ /** 下一篇资讯 */
234
+ nextInformation?: { id: number; title: string } | null;
235
+ /** 关联内容 */
236
+ relationRegulations?: { id: number; title: string; regulationType: number }[];
237
+ /** 附件 */
238
+ attachments?: { name: string; downloadUrl: string; size: number; type: string }[];
239
+ /** 是否收藏 */
240
+ collect?: boolean;
241
+ /** 资讯类型:rule 或 article */
242
+ infoType?: 'rule' | 'article';
243
+
244
+ isActive?: boolean; // 是否高亮
245
+ packageId?: number; // 资源包ID
246
+
177
247
  }