@ibiz-template/vue3-components 0.7.41-alpha.154 → 0.7.41-alpha.156

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 (50) hide show
  1. package/dist/index-DdtHzmUN.js +339 -0
  2. package/dist/{index.es-CWquGkZQ.js → index.es-cLtMr15w.js} +1 -1
  3. package/dist/index.min.css +1 -1
  4. package/dist/index.system.min.js +1 -1
  5. package/dist/{wang-editor-DoBDjJq7.js → wang-editor-DFNtwyjK.js} +1 -1
  6. package/dist/{xlsx-util-CQznxxzl.js → xlsx-util-Ciny_N7Q.js} +1 -1
  7. package/es/control/calendar/index.mjs +1 -0
  8. package/es/control/data-view/index.mjs +1 -0
  9. package/es/control/drtab/index.mjs +1 -0
  10. package/es/control/grid/grid/index.mjs +1 -0
  11. package/es/control/grid/grid-column/grid-field-edit-column/index.mjs +3 -0
  12. package/es/control/grid/grid-column/index.mjs +3 -0
  13. package/es/control/grid/index.mjs +5 -0
  14. package/es/control/index.mjs +10 -0
  15. package/es/control/tree/index.mjs +1 -0
  16. package/es/control/tree-grid-ex/index.mjs +1 -0
  17. package/es/control/tree-grid-ex/tree-grid-ex-column/index.mjs +3 -0
  18. package/es/index.mjs +10 -0
  19. package/es/util/ai-chat-util/ai-chat-util.mjs +36 -6
  20. package/es/util/notification-util/upload-manager/upload-manager.css +1 -1
  21. package/es/util/notification-util/upload-manager/upload-manager.mjs +2 -0
  22. package/lib/control/calendar/index.cjs +4 -0
  23. package/lib/control/data-view/index.cjs +2 -0
  24. package/lib/control/drtab/index.cjs +2 -0
  25. package/lib/control/grid/grid/index.cjs +3 -0
  26. package/lib/control/grid/grid-column/grid-field-edit-column/index.cjs +6 -0
  27. package/lib/control/grid/grid-column/index.cjs +6 -0
  28. package/lib/control/grid/index.cjs +12 -0
  29. package/lib/control/index.cjs +31 -0
  30. package/lib/control/tree/index.cjs +9 -0
  31. package/lib/control/tree-grid-ex/index.cjs +2 -0
  32. package/lib/control/tree-grid-ex/tree-grid-ex-column/index.cjs +6 -0
  33. package/lib/index.cjs +31 -0
  34. package/lib/util/ai-chat-util/ai-chat-util.cjs +36 -6
  35. package/lib/util/notification-util/upload-manager/upload-manager.cjs +2 -0
  36. package/lib/util/notification-util/upload-manager/upload-manager.css +1 -1
  37. package/package.json +6 -6
  38. package/src/control/calendar/index.ts +2 -0
  39. package/src/control/data-view/index.ts +1 -0
  40. package/src/control/drtab/index.ts +1 -0
  41. package/src/control/grid/grid/index.ts +1 -0
  42. package/src/control/grid/grid-column/grid-field-edit-column/index.ts +4 -0
  43. package/src/control/grid/index.ts +1 -0
  44. package/src/control/tree/index.ts +2 -0
  45. package/src/control/tree-grid-ex/index.ts +2 -0
  46. package/src/control/tree-grid-ex/tree-grid-ex-column/index.ts +3 -0
  47. package/src/util/ai-chat-util/ai-chat-util.ts +51 -4
  48. package/src/util/notification-util/upload-manager/upload-manager.scss +29 -13
  49. package/src/util/notification-util/upload-manager/upload-manager.tsx +5 -1
  50. package/dist/index-CCjwOWuI.js +0 -339
package/lib/index.cjs CHANGED
@@ -20,10 +20,15 @@ var splitTrigger = require('./common/split-trigger/split-trigger.cjs');
20
20
  var sortBar = require('./common/sort-bar/sort-bar.cjs');
21
21
  var index$2 = require('./control/app-menu/index.cjs');
22
22
  var index$3 = require('./control/app-menu-icon-view/index.cjs');
23
+ var useRowEditPopover = require('./control/grid/row-edit-popover/use-row-edit-popover.cjs');
24
+ var grid = require('./control/grid/grid/grid.cjs');
23
25
  var gridControl_util = require('./control/grid/grid/grid-control.util.cjs');
24
26
  var index$4 = require('./control/grid/grid/index.cjs');
25
27
  var index$5 = require('./control/grid/grid-column/grid-field-column/index.cjs');
26
28
  var index$6 = require('./control/grid/grid-column/grid-ua-column/index.cjs');
29
+ var cellEdit = require('./control/grid/grid-column/grid-field-edit-column/cell-edit.cjs');
30
+ var allEdit = require('./control/grid/grid-column/grid-field-edit-column/all-edit.cjs');
31
+ var rowEdit = require('./control/grid/grid-column/grid-field-edit-column/row-edit.cjs');
27
32
  var index$7 = require('./control/grid/grid-column/grid-field-edit-column/index.cjs');
28
33
  var index$8 = require('./control/grid/grid-column/grid-group-column/index.cjs');
29
34
  var index$9 = require('./control/grid/grid-column/auto-grid-field-edit-column/index.cjs');
@@ -48,7 +53,9 @@ var index$p = require('./control/form/form/index.cjs');
48
53
  var index$q = require('./control/toolbar/index.cjs');
49
54
  var index$r = require('./control/caption-bar/index.cjs');
50
55
  var dataView_provider = require('./control/data-view/data-view.provider.cjs');
56
+ var dataView_util = require('./control/data-view/data-view.util.cjs');
51
57
  var index$s = require('./control/data-view/index.cjs');
58
+ var elTreeUtil = require('./control/tree/el-tree-util.cjs');
52
59
  var index$t = require('./control/tree/index.cjs');
53
60
  var index$u = require('./control/pickup-view-panel/index.cjs');
54
61
  var index$v = require('./control/tab-exp-panel/index.cjs');
@@ -65,6 +72,7 @@ var index$E = require('./control/wizard-panel/index.cjs');
65
72
  var drbar_controller = require('./control/drbar/drbar.controller.cjs');
66
73
  var index$F = require('./control/drbar/index.cjs');
67
74
  var drtab_controller = require('./control/drtab/drtab.controller.cjs');
75
+ var drtabControl_util = require('./control/drtab/drtab-control.util.cjs');
68
76
  var index$G = require('./control/drtab/index.cjs');
69
77
  var containerPortlet = require('./control/dashboard/portlet/container-portlet/container-portlet.cjs');
70
78
  var index$I = require('./control/dashboard/portlet/container-portlet/index.cjs');
@@ -88,8 +96,10 @@ var index$Q = require('./control/dashboard/portlet/report-portlet/index.cjs');
88
96
  var filterPortlet = require('./control/dashboard/portlet/filter-portlet/filter-portlet.cjs');
89
97
  var index$R = require('./control/dashboard/portlet/filter-portlet/index.cjs');
90
98
  var index$H = require('./control/dashboard/index.cjs');
99
+ var calendarUtil = require('./control/calendar/calendar-util.cjs');
91
100
  var index$S = require('./control/calendar/index.cjs');
92
101
  var index$T = require('./control/kanban/index.cjs');
102
+ var useRowEditPopover$1 = require('./control/tree-grid-ex/use-row-edit-popover.cjs');
93
103
  var index$U = require('./control/tree-grid-ex/index.cjs');
94
104
  var index$V = require('./control/tree-grid/index.cjs');
95
105
  var index$W = require('./control/medit-view-panel/index.cjs');
@@ -253,6 +263,10 @@ exports.IBizSplitTrigger = splitTrigger.IBizSplitTrigger;
253
263
  exports.IBizSortBar = sortBar.IBizSortBar;
254
264
  exports.IBizAppMenuControl = index$2.IBizAppMenuControl;
255
265
  exports.IBizAppMenuIconViewControl = index$3.IBizAppMenuIconViewControl;
266
+ exports.useGridRowEditPopover = useRowEditPopover.useRowEditPopover;
267
+ exports.renderChildColumn = grid.renderChildColumn;
268
+ exports.renderColumn = grid.renderColumn;
269
+ exports.renderFieldColumn = grid.renderFieldColumn;
256
270
  exports.useAppGridBase = gridControl_util.useAppGridBase;
257
271
  exports.useAppGridPagination = gridControl_util.useAppGridPagination;
258
272
  exports.useGridDraggable = gridControl_util.useGridDraggable;
@@ -261,6 +275,9 @@ exports.useITableEvent = gridControl_util.useITableEvent;
261
275
  exports.IBizGridControl = index$4.IBizGridControl;
262
276
  exports.IBizGridFieldColumn = index$5.IBizGridFieldColumn;
263
277
  exports.IBizGridUAColumn = index$6.IBizGridUAColumn;
278
+ exports.useCellEdit = cellEdit.useCellEdit;
279
+ exports.useAllEdit = allEdit.useAllEdit;
280
+ exports.useRowEdit = rowEdit.useRowEdit;
264
281
  exports.IBizGridFieldEditColumn = index$7.IBizGridFieldEditColumn;
265
282
  exports.IBizGridGroupColumn = index$8.IBizGridGroupColumn;
266
283
  exports.IBizDynamicGridFieldEditColumn = index$9.IBizDynamicGridFieldEditColumn;
@@ -285,7 +302,16 @@ exports.IBizFormControl = index$p.IBizFormControl;
285
302
  exports.IBizToolbarControl = index$q.IBizToolbarControl;
286
303
  exports.IBizCaptionBarControl = index$r.IBizCaptionBarControl;
287
304
  exports.DataViewControlProvider = dataView_provider.DataViewControlProvider;
305
+ exports.useDataViewSkeleton = dataView_util.useDataViewSkeleton;
288
306
  exports.IBizDataViewControl = index$s.IBizDataViewControl;
307
+ exports.findChildItems = elTreeUtil.findChildItems;
308
+ exports.findNodeData = elTreeUtil.findNodeData;
309
+ exports.formatNodeDropType = elTreeUtil.formatNodeDropType;
310
+ exports.getNewNodeControlPanel = elTreeUtil.getNewNodeControlPanel;
311
+ exports.getNodeControlPanel = elTreeUtil.getNodeControlPanel;
312
+ exports.useAppTreeBase = elTreeUtil.useAppTreeBase;
313
+ exports.useElTreeUtil = elTreeUtil.useElTreeUtil;
314
+ exports.useLoadMoreUtil = elTreeUtil.useLoadMoreUtil;
289
315
  exports.IBizTreeControl = index$t.IBizTreeControl;
290
316
  exports.IBizPickupViewPanelControl = index$u.IBizPickupViewPanelControl;
291
317
  exports.IBizTabExpPanelControl = index$v.IBizTabExpPanelControl;
@@ -303,6 +329,7 @@ exports.IBizWizardPanelControl = index$E.IBizWizardPanelControl;
303
329
  exports.DRBarController = drbar_controller.DRBarController;
304
330
  exports.IBizDRBarControl = index$F.IBizDRBarControl;
305
331
  exports.DRTabController = drtab_controller.DRTabController;
332
+ exports.useAppDRTab = drtabControl_util.useAppDRTab;
306
333
  exports.IBizDRTabControl = index$G.IBizDRTabControl;
307
334
  exports.ContainerPortlet = containerPortlet.ContainerPortlet;
308
335
  exports.IBizContainerPortlet = index$I.IBizContainerPortlet;
@@ -326,8 +353,12 @@ exports.IBizReportPortlet = index$Q.IBizReportPortlet;
326
353
  exports.FilterPortlet = filterPortlet.FilterPortlet;
327
354
  exports.IBizFilterPortlet = index$R.IBizFilterPortlet;
328
355
  exports.IBizDashboardControl = index$H.IBizDashboardControl;
356
+ exports.getWeekRange = calendarUtil.getWeekRange;
357
+ exports.isTimeBetween = calendarUtil.isTimeBetween;
358
+ exports.useCalendarLegend = calendarUtil.useCalendarLegend;
329
359
  exports.IBizCalendarControl = index$S.IBizCalendarControl;
330
360
  exports.IBizKanbanControl = index$T.IBizKanbanControl;
361
+ exports.useTreeGridExRowEditPopover = useRowEditPopover$1.useRowEditPopover;
331
362
  exports.IBizTreeGridExControl = index$U.IBizTreeGridExControl;
332
363
  exports.IBizTreeGridControl = index$V.IBizTreeGridControl;
333
364
  exports.IBizMEditViewPanelControl = index$W.IBizMEditViewPanelControl;
@@ -102,6 +102,14 @@ class AIChatUtil {
102
102
  if (editorParams.topicstoragemode) {
103
103
  topicOptions.storageMode = editorParams.topicstoragemode;
104
104
  }
105
+ topicOptions.enableBasicGroup = ibiz.config.common.aiEnableBasicGroup;
106
+ if (editorParams.enablebasicgroup) {
107
+ topicOptions.enableBasicGroup = editorParams.enablebasicgroup === "true";
108
+ }
109
+ topicOptions.newTopicParamMode = ibiz.config.common.aiNewTopicParamMode;
110
+ if (editorParams.newtopicparammode) {
111
+ topicOptions.newTopicParamMode = editorParams.newtopicparammode;
112
+ }
105
113
  topicOptions.beforeDelete = async (title, description) => {
106
114
  const result = await ibiz.confirm.warning({
107
115
  title,
@@ -120,7 +128,8 @@ class AIChatUtil {
120
128
  };
121
129
  const chatOptions = {
122
130
  locale: ibiz.i18n.getLang(),
123
- enableAIProject: editorParams.srfenableaiprojectselect ? editorParams.srfenableaiprojectselect === "true" : ibiz.config.common.enableAIProjectSelect
131
+ enableAIProject: editorParams.srfenableaiprojectselect ? editorParams.srfenableaiprojectselect === "true" : ibiz.config.common.enableAIProjectSelect,
132
+ projectSelectPlaceholder: editorParams.srfprojectselectplaceholder || ibiz.config.common.aiProjectSelectPlaceholder
124
133
  };
125
134
  if (editorParams.srfaiappendcurdata) {
126
135
  chatOptions.appendCurData = editorParams.srfaiappendcurdata === "true" ? data : void 0;
@@ -675,7 +684,7 @@ class AIChatUtil {
675
684
  (options == null ? void 0 : options.context) || context,
676
685
  (options == null ? void 0 : options.params) || params,
677
686
  {},
678
- { enableNoAccess: true, osscat: folder }
687
+ { enableNoAccess: true, osscat: (options == null ? void 0 : options.folder) || folder }
679
688
  );
680
689
  const headers = ibiz.util.file.getUploadHeaders();
681
690
  const formData = new FormData();
@@ -895,6 +904,16 @@ class AIChatUtil {
895
904
  } else {
896
905
  topicOptions.storageMode = ibiz.config.common.aiTopicStorageMode;
897
906
  }
907
+ topicOptions.enableBasicGroup = ibiz.config.common.aiEnableBasicGroup;
908
+ if (params.hasOwnProperty("enablebasicgroup")) {
909
+ topicOptions.enableBasicGroup = params.enablebasicgroup === "true";
910
+ delete params.enablebasicgroup;
911
+ }
912
+ topicOptions.newTopicParamMode = ibiz.config.common.aiNewTopicParamMode;
913
+ if (params.hasOwnProperty("newtopicparammode")) {
914
+ topicOptions.newTopicParamMode = params.newtopicparammode;
915
+ delete params.newtopicparammode;
916
+ }
898
917
  topicOptions.beforeDelete = async (title, description) => {
899
918
  const result = await ibiz.confirm.warning({
900
919
  title,
@@ -913,11 +932,13 @@ class AIChatUtil {
913
932
  };
914
933
  const chatOptions = {
915
934
  locale: ibiz.i18n.getLang(),
916
- enableAIProject: params.srfenableaiprojectselect ? params.srfenableaiprojectselect === "true" : ibiz.config.common.enableAIProjectSelect
935
+ enableAIProject: params.srfenableaiprojectselect ? params.srfenableaiprojectselect === "true" : ibiz.config.common.enableAIProjectSelect,
936
+ projectSelectPlaceholder: params.srfprojectselectplaceholder || ibiz.config.common.aiProjectSelectPlaceholder
917
937
  };
918
- if (params.hasOwnProperty("srfenableaiprojectselect")) {
938
+ if (params.hasOwnProperty("srfenableaiprojectselect"))
919
939
  delete params.srfenableaiprojectselect;
920
- }
940
+ if (params.hasOwnProperty("srfprojectselectplaceholder"))
941
+ delete params.srfprojectselectplaceholder;
921
942
  if (context.srfaiappendcurdata === "true") {
922
943
  chatOptions.appendCurData = data;
923
944
  } else if (params.hasOwnProperty("srfaiappendcurdata")) {
@@ -1497,7 +1518,7 @@ class AIChatUtil {
1497
1518
  (options == null ? void 0 : options.context) || context,
1498
1519
  (options == null ? void 0 : options.params) || params,
1499
1520
  {},
1500
- { enableNoAccess: true, osscat: folder }
1521
+ { enableNoAccess: true, osscat: (options == null ? void 0 : options.folder) || folder }
1501
1522
  );
1502
1523
  const headers = ibiz.util.file.getUploadHeaders();
1503
1524
  const formData = new FormData();
@@ -1981,6 +2002,15 @@ class AIChatUtil {
1981
2002
  return response.data;
1982
2003
  return void 0;
1983
2004
  };
2005
+ fileSystemOptions.downloadFile = async (ctx, param, other) => {
2006
+ const deService = await ibiz.hub.getApp(ctx.srfappid).deService.getService(ctx, param.appDataEntityId);
2007
+ const response = await deService.aiChatProject(
2008
+ ctx,
2009
+ { srfactag: param.srfactag },
2010
+ { action: "DOWNLOAD", ...other }
2011
+ );
2012
+ return response.data;
2013
+ };
1984
2014
  fileSystemOptions.createFolder = async (ctx, param, other) => {
1985
2015
  const deService = await ibiz.hub.getApp(ctx.srfappid).deService.getService(ctx, param.appDataEntityId);
1986
2016
  const response = await deService.aiChatProject(
@@ -2,6 +2,7 @@
2
2
 
3
3
  var vue = require('vue');
4
4
  var vue3Util = require('@ibiz-template/vue3-util');
5
+ var core = require('@ibiz-template/core');
5
6
  var fileType = require('./file-type.cjs');
6
7
  require('./upload-manager.css');
7
8
 
@@ -134,6 +135,7 @@ const IBizUploadManager = /* @__PURE__ */ vue.defineComponent({
134
135
  }, [vue.createVNode("div", {
135
136
  "class": this.ns.em("file-item", "icon")
136
137
  }, [fileType.getFileSvgByType(item.file.type)]), vue.createVNode("div", {
138
+ "title": core.showTitle(item.file.name),
137
139
  "class": this.ns.em("file-item", "name")
138
140
  }, [item.file.name]), vue.createVNode("div", {
139
141
  "class": this.ns.em("file-item", "status")
@@ -1 +1 @@
1
- .ibiz-upload-manager-notic{--el-notification-width:400px;--el-notification-padding:0;--el-notification-group-margin-left:0;--el-notification-group-margin-right:0}.ibiz-upload-manager-notic .el-notification__group{width:100%}.ibiz-upload-manager .icon{font-size:20px}.ibiz-upload-manager .icon.success{color:var(--ibiz-color-success-hover)}.ibiz-upload-manager .icon.danger{color:var(--ibiz-color-danger)}.ibiz-upload-manager__header{display:flex;line-height:30px;align-items:center;padding:var(--ibiz-spacing-base);padding-left:var(--ibiz-spacing-loose)}.ibiz-upload-manager__header--loading{display:flex;align-items:center}.ibiz-upload-manager__header--loading .el-progress-circle{--el-fill-color-light:var(--ibiz-color-disabled-bg);width:30px!important;height:30px!important}.ibiz-upload-manager__header--loading .icon{font-size:30px}.ibiz-upload-manager__header--title{display:flex;flex-grow:1;align-items:center;margin-left:12px}.ibiz-upload-manager__header--title .caption{font-size:var(--ibiz-font-size-header-6)}.ibiz-upload-manager__header--title .progress{color:var(--ibiz-color-disabled-text);margin-left:var(--ibiz-spacing-tight)}.ibiz-upload-manager__header--actions{display:flex;align-items:center;color:var(--ibiz-color-disabled-text)}.ibiz-upload-manager__header--actions .icon{font-size:24px;cursor:pointer;margin-left:var(--ibiz-spacing-extra-tight)}.ibiz-upload-manager__header--actions .icon.down-up{font-size:20px}.ibiz-upload-manager__header--actions .icon:hover{color:var(--ibiz-color-primary-hover)}.ibiz-upload-manager__content{max-height:240px;overflow-y:auto;padding:0 var(--ibiz-spacing-base) var(--ibiz-spacing-base) var(--ibiz-spacing-loose)}.ibiz-upload-manager__file-item{height:48px;display:flex;position:relative;align-items:center;padding:var(--ibiz-spacing-base-tight) 0}.ibiz-upload-manager__file-item--icon{display:flex;align-items:center}.ibiz-upload-manager__file-item--icon svg{width:20px;height:20px}.ibiz-upload-manager__file-item--name{flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 var(--ibiz-spacing-base-tight)}.ibiz-upload-manager__file-item--status{display:flex;align-items:center}.ibiz-upload-manager__file-item--status .el-progress{padding-left:var(--ibiz-spacing-base)}.ibiz-upload-manager__file-item--status .el-progress-circle{--el-fill-color-light:var(--ibiz-color-disabled-bg);width:20px!important;height:20px!important}.ibiz-upload-manager__file-item--status .el-progress__text{font-size:var(--ibiz-font-size-small)!important;left:-45px!important}.ibiz-upload-manager__file-item--status-text{left:32px;bottom:-6px;position:absolute;color:var(--ibiz-color-danger);font-size:var(--ibiz-font-size-small)}
1
+ .ibiz-upload-manager-notic{--el-notification-width:400px;--el-notification-padding:0;--el-notification-group-margin-left:0;--el-notification-group-margin-right:0}.ibiz-upload-manager-notic .el-notification__group{width:100%}.ibiz-upload-manager .icon{font-size:20px}.ibiz-upload-manager .icon.success{color:var(--ibiz-color-success-hover)}.ibiz-upload-manager .icon.danger{color:var(--ibiz-color-danger)}.ibiz-upload-manager__header{display:flex;align-items:center;padding:var(--ibiz-spacing-base);padding-left:var(--ibiz-spacing-loose);line-height:30px}.ibiz-upload-manager__header--loading{display:flex;align-items:center}.ibiz-upload-manager__header--loading .el-progress-circle{--el-fill-color-light:var(--ibiz-color-disabled-bg);width:30px!important;height:30px!important}.ibiz-upload-manager__header--loading .icon{font-size:30px}.ibiz-upload-manager__header--title{display:flex;flex-grow:1;align-items:center;margin-left:12px}.ibiz-upload-manager__header--title .caption{font-size:var(--ibiz-font-size-header-6)}.ibiz-upload-manager__header--title .progress{margin-left:var(--ibiz-spacing-tight);color:var(--ibiz-color-disabled-text)}.ibiz-upload-manager__header--actions{display:flex;align-items:center;color:var(--ibiz-color-disabled-text)}.ibiz-upload-manager__header--actions .icon{margin-left:var(--ibiz-spacing-extra-tight);font-size:24px;cursor:pointer}.ibiz-upload-manager__header--actions .icon.down-up{font-size:20px}.ibiz-upload-manager__header--actions .icon:hover{color:var(--ibiz-color-primary-hover)}.ibiz-upload-manager__content{max-height:240px;padding:0 var(--ibiz-spacing-base) var(--ibiz-spacing-base) var(--ibiz-spacing-loose);overflow-y:auto}.ibiz-upload-manager__file-item{position:relative;display:flex;align-items:center;height:48px;padding:var(--ibiz-spacing-base-tight) 0}.ibiz-upload-manager__file-item--icon{display:flex;align-items:center}.ibiz-upload-manager__file-item--icon svg{width:20px;height:20px}.ibiz-upload-manager__file-item--name{flex-grow:1;margin:0 var(--ibiz-spacing-base-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-upload-manager__file-item--status{display:flex;align-items:center}.ibiz-upload-manager__file-item--status .el-progress{margin-left:var(--ibiz-spacing-loose)}.ibiz-upload-manager__file-item--status .el-progress-circle{--el-fill-color-light:var(--ibiz-color-disabled-bg);width:20px!important;height:20px!important}.ibiz-upload-manager__file-item--status .el-progress__text{left:-45px!important;font-size:var(--ibiz-font-size-small)!important}.ibiz-upload-manager__file-item--status-text{position:absolute;bottom:-6px;left:32px;font-size:var(--ibiz-font-size-small);color:var(--ibiz-color-danger)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/vue3-components",
3
- "version": "0.7.41-alpha.154",
3
+ "version": "0.7.41-alpha.156",
4
4
  "description": "web端组件库(vue3)",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.mjs",
@@ -31,16 +31,16 @@
31
31
  "dependencies": {
32
32
  "@amap/amap-jsapi-loader": "^1.0.1",
33
33
  "@floating-ui/dom": "^1.5.3",
34
- "@ibiz-template-plugin/ai-chat": "^0.0.119",
34
+ "@ibiz-template-plugin/ai-chat": "^0.0.121",
35
35
  "@ibiz-template-plugin/gantt": "0.1.8-alpha.468",
36
36
  "@ibiz-template-plugin/bi-report": "0.0.32",
37
37
  "@ibiz-template-plugin/data-view": "0.0.8",
38
38
  "@ibiz-template/core": "0.7.41-alpha.152",
39
- "@ibiz-template/devtool": "0.0.17",
40
- "@ibiz-template/model-helper": "0.7.41-alpha.154",
41
- "@ibiz-template/runtime": "0.7.41-alpha.154",
39
+ "@ibiz-template/devtool": "0.0.18",
40
+ "@ibiz-template/model-helper": "0.7.41-alpha.155",
41
+ "@ibiz-template/runtime": "0.7.41-alpha.155",
42
42
  "@ibiz-template/theme": "0.7.39",
43
- "@ibiz-template/vue3-util": "0.7.41-alpha.154",
43
+ "@ibiz-template/vue3-util": "0.7.41-alpha.155",
44
44
  "@ibiz-template/web-theme": "3.16.0",
45
45
  "@ibiz/model-core": "^0.1.89",
46
46
  "@imengyu/vue3-context-menu": "^1.3.5",
@@ -5,6 +5,8 @@ import { CalendarControl } from './calendar';
5
5
  import { CalendarProvider } from './calendar.provider';
6
6
  import IBizCustomCalendar from './components/custom-calendar';
7
7
 
8
+ export * from './calendar-util';
9
+
8
10
  export const IBizCalendarControl = withInstall(
9
11
  CalendarControl,
10
12
  function (v: App) {
@@ -5,6 +5,7 @@ import { DataViewControl } from './data-view';
5
5
  import { DataViewControlProvider } from './data-view.provider';
6
6
 
7
7
  export * from './data-view.provider';
8
+ export * from './data-view.util';
8
9
 
9
10
  export const IBizDataViewControl = withInstall(
10
11
  DataViewControl,
@@ -5,6 +5,7 @@ import { DRTabControl } from './drtab';
5
5
  import { DRTabProvider } from './drtab.provider';
6
6
 
7
7
  export * from './drtab.controller';
8
+ export * from './drtab-control.util';
8
9
 
9
10
  export const IBizDRTabControl = withInstall(DRTabControl, function (v: App) {
10
11
  v.component(DRTabControl.name, DRTabControl);
@@ -15,6 +15,7 @@ import { GridControl } from './grid';
15
15
  import { GridProvider } from './grid.provider';
16
16
 
17
17
  export * from './grid-control.util';
18
+ export { renderChildColumn, renderColumn, renderFieldColumn } from './grid';
18
19
 
19
20
  export const IBizGridControl = withInstall(GridControl, (v: App) => {
20
21
  v.component(GridControl.name, GridControl);
@@ -6,6 +6,10 @@ import { GridFieldEditColumnProvider } from './grid-field-edit-column.provider';
6
6
 
7
7
  import { IBizGridEditItem } from './grid-edit-item/grid-edit-item';
8
8
 
9
+ export * from './cell-edit';
10
+ export * from './all-edit';
11
+ export * from './row-edit';
12
+
9
13
  export const IBizGridFieldEditColumn = withInstall(
10
14
  GridFieldEditColumn,
11
15
  function (v: App) {
@@ -1,2 +1,3 @@
1
1
  export * from './grid/index';
2
2
  export * from './grid-column';
3
+ export { useRowEditPopover as useGridRowEditPopover } from './row-edit-popover/use-row-edit-popover';
@@ -4,6 +4,8 @@ import { App } from 'vue';
4
4
  import { TreeControl } from './tree';
5
5
  import { TreeProvider } from './tree.provider';
6
6
 
7
+ export * from './el-tree-util';
8
+
7
9
  export const IBizTreeControl = withInstall(TreeControl, function (v: App) {
8
10
  v.component(TreeControl.name, TreeControl);
9
11
  registerControlProvider(ControlType.TREEVIEW, () => new TreeProvider());
@@ -9,6 +9,8 @@ import {
9
9
  TreeGridExEditColumn,
10
10
  } from './tree-grid-ex-column';
11
11
 
12
+ export { useRowEditPopover as useTreeGridExRowEditPopover } from './use-row-edit-popover';
13
+
12
14
  export const IBizTreeGridExControl = withInstall(
13
15
  TreeGridExControl,
14
16
  function (v: App) {
@@ -1,3 +1,6 @@
1
1
  export * from './tree-grid-ex-field-column';
2
2
  export * from './tree-grid-ex-edit-column/tree-grid-ex-edit-column';
3
3
  export * from './tree-grid-ex-ua-column';
4
+ export { useAllEdit as useTreeGridExAllEdit } from './tree-grid-ex-edit-column/all-edit';
5
+ export { useCellEdit as useTreeGridExCellEdit } from './tree-grid-ex-edit-column/cell-edit';
6
+ export { useRowEdit as useTreeGridExRowEdit } from './tree-grid-ex-edit-column/row-edit';
@@ -169,6 +169,17 @@ export class AIChatUtil implements IApiAIChatUtil {
169
169
  if (editorParams.topicstoragemode) {
170
170
  topicOptions.storageMode = editorParams.topicstoragemode;
171
171
  }
172
+ // 编辑器参数enablebasicgroup,AI聊天框工作模式为默认模式时,是否启用基础分组,默认值为true,显示分组会话树,反之,显示会话列表
173
+ topicOptions.enableBasicGroup = ibiz.config.common.aiEnableBasicGroup;
174
+ if (editorParams.enablebasicgroup) {
175
+ topicOptions.enableBasicGroup = editorParams.enablebasicgroup === 'true';
176
+ }
177
+ // 编辑器参数newtopicparammode,AI聊天框新建话题附加参数(智能体、知识库、工作目录等参数)模式,可选值:DEFAULT、ACTIVATED,DEFAULT表示新建会话附加打开AI聊天框时传入的参数、ACTIVATED表示新建会话附加AI聊天框当前激活会话的参数
178
+ topicOptions.newTopicParamMode = ibiz.config.common.aiNewTopicParamMode;
179
+ if (editorParams.newtopicparammode) {
180
+ topicOptions.newTopicParamMode = editorParams.newtopicparammode;
181
+ }
182
+
172
183
  topicOptions.beforeDelete = async (title: string, description: string) => {
173
184
  const result = await ibiz.confirm.warning({
174
185
  title,
@@ -202,6 +213,9 @@ export class AIChatUtil implements IApiAIChatUtil {
202
213
  enableAIProject: editorParams.srfenableaiprojectselect
203
214
  ? editorParams.srfenableaiprojectselect === 'true'
204
215
  : ibiz.config.common.enableAIProjectSelect,
216
+ projectSelectPlaceholder:
217
+ editorParams.srfprojectselectplaceholder ||
218
+ ibiz.config.common.aiProjectSelectPlaceholder,
205
219
  };
206
220
  // 编辑器参数srfaiappendcurdata,是否传入对象参数,用于历史查询传参
207
221
  if (editorParams.srfaiappendcurdata) {
@@ -911,7 +925,7 @@ export class AIChatUtil implements IApiAIChatUtil {
911
925
  options?.context || context,
912
926
  options?.params || params,
913
927
  {},
914
- { enableNoAccess: true, osscat: folder },
928
+ { enableNoAccess: true, osscat: options?.folder || folder },
915
929
  );
916
930
  const headers = ibiz.util.file.getUploadHeaders();
917
931
  const formData = new FormData();
@@ -1178,6 +1192,19 @@ export class AIChatUtil implements IApiAIChatUtil {
1178
1192
  } else {
1179
1193
  topicOptions.storageMode = ibiz.config.common.aiTopicStorageMode;
1180
1194
  }
1195
+ // 视图参数enablebasicgroup,AI聊天框工作模式为默认模式时,是否启用基础分组,默认值为true,显示分组会话树,反之,显示会话列表
1196
+ topicOptions.enableBasicGroup = ibiz.config.common.aiEnableBasicGroup;
1197
+ if (params.hasOwnProperty('enablebasicgroup')) {
1198
+ topicOptions.enableBasicGroup = params.enablebasicgroup === 'true';
1199
+ delete params.enablebasicgroup;
1200
+ }
1201
+ // 视图参数newtopicparammode,AI聊天框新建话题附加参数(智能体、知识库、工作目录等参数)模式,可选值:DEFAULT、ACTIVATED,DEFAULT表示新建会话附加打开AI聊天框时传入的参数、ACTIVATED表示新建会话附加AI聊天框当前激活会话的参数
1202
+ topicOptions.newTopicParamMode = ibiz.config.common.aiNewTopicParamMode;
1203
+ if (params.hasOwnProperty('newtopicparammode')) {
1204
+ topicOptions.newTopicParamMode = params.newtopicparammode;
1205
+ delete params.newtopicparammode;
1206
+ }
1207
+
1181
1208
  topicOptions.beforeDelete = async (title: string, description: string) => {
1182
1209
  const result = await ibiz.confirm.warning({
1183
1210
  title,
@@ -1211,10 +1238,14 @@ export class AIChatUtil implements IApiAIChatUtil {
1211
1238
  enableAIProject: params.srfenableaiprojectselect
1212
1239
  ? params.srfenableaiprojectselect === 'true'
1213
1240
  : ibiz.config.common.enableAIProjectSelect,
1241
+ projectSelectPlaceholder:
1242
+ params.srfprojectselectplaceholder ||
1243
+ ibiz.config.common.aiProjectSelectPlaceholder,
1214
1244
  };
1215
- if (params.hasOwnProperty('srfenableaiprojectselect')) {
1245
+ if (params.hasOwnProperty('srfenableaiprojectselect'))
1216
1246
  delete params.srfenableaiprojectselect;
1217
- }
1247
+ if (params.hasOwnProperty('srfprojectselectplaceholder'))
1248
+ delete params.srfprojectselectplaceholder;
1218
1249
  // 是否传入对象参数,用于历史查询传参
1219
1250
  // 上下文参数和视图参数srfaiappendcurdata均识别
1220
1251
  if (context.srfaiappendcurdata === 'true') {
@@ -1943,7 +1974,7 @@ export class AIChatUtil implements IApiAIChatUtil {
1943
1974
  options?.context || context,
1944
1975
  options?.params || params,
1945
1976
  {},
1946
- { enableNoAccess: true, osscat: folder },
1977
+ { enableNoAccess: true, osscat: options?.folder || folder },
1947
1978
  );
1948
1979
  const headers = ibiz.util.file.getUploadHeaders();
1949
1980
  const formData = new FormData();
@@ -2546,6 +2577,22 @@ export class AIChatUtil implements IApiAIChatUtil {
2546
2577
  if (response.ok) return response.data;
2547
2578
  return undefined;
2548
2579
  };
2580
+ // 下载文件
2581
+ fileSystemOptions.downloadFile = async (
2582
+ ctx: IContext,
2583
+ param: IParams,
2584
+ other: IParams,
2585
+ ): Promise<IData> => {
2586
+ const deService = await ibiz.hub
2587
+ .getApp(ctx.srfappid)
2588
+ .deService.getService(ctx, param.appDataEntityId);
2589
+ const response = await deService.aiChatProject(
2590
+ ctx,
2591
+ { srfactag: param.srfactag },
2592
+ { action: 'DOWNLOAD', ...other },
2593
+ );
2594
+ return response.data;
2595
+ };
2549
2596
  // 新建目录
2550
2597
  fileSystemOptions.createFolder = async (
2551
2598
  ctx: IContext,
@@ -3,6 +3,7 @@
3
3
  --el-notification-padding: 0;
4
4
  --el-notification-group-margin-left: 0;
5
5
  --el-notification-group-margin-right: 0;
6
+
6
7
  .el-notification__group {
7
8
  width: 100%;
8
9
  }
@@ -11,9 +12,11 @@
11
12
  @include b(upload-manager) {
12
13
  .icon {
13
14
  font-size: 20px;
15
+
14
16
  &.success {
15
17
  color: getCssVar(color, success-hover);
16
18
  }
19
+
17
20
  &.danger {
18
21
  color: getCssVar(color, danger);
19
22
  }
@@ -21,19 +24,22 @@
21
24
 
22
25
  @include e(header) {
23
26
  display: flex;
24
- line-height: 30px;
25
27
  align-items: center;
26
28
  padding: getCssVar(spacing, base);
27
29
  padding-left: getCssVar(spacing, loose);
30
+ line-height: 30px;
28
31
 
29
32
  @include m(loading) {
30
33
  display: flex;
31
34
  align-items: center;
35
+
32
36
  .el-progress-circle {
33
37
  --el-fill-color-light: #{getCssVar(color, disabled-bg)};
38
+
34
39
  width: 30px !important;
35
40
  height: 30px !important;
36
41
  }
42
+
37
43
  .icon {
38
44
  font-size: 30px;
39
45
  }
@@ -44,12 +50,14 @@
44
50
  flex-grow: 1;
45
51
  align-items: center;
46
52
  margin-left: 12px;
53
+
47
54
  .caption {
48
55
  font-size: getCssVar(font-size, header-6);
49
56
  }
57
+
50
58
  .progress {
51
- color: getCssVar(color, disabled-text);
52
59
  margin-left: getCssVar(spacing, tight);
60
+ color: getCssVar(color, disabled-text);
53
61
  }
54
62
  }
55
63
 
@@ -57,13 +65,16 @@
57
65
  display: flex;
58
66
  align-items: center;
59
67
  color: getCssVar(color, disabled-text);
68
+
60
69
  .icon {
70
+ margin-left: getCssVar(spacing, extra-tight);
61
71
  font-size: 24px;
62
72
  cursor: pointer;
63
- margin-left: getCssVar(spacing, extra-tight);
73
+
64
74
  &.down-up {
65
75
  font-size: 20px;
66
76
  }
77
+
67
78
  &:hover {
68
79
  color: getCssVar(color, primary-hover);
69
80
  }
@@ -73,20 +84,21 @@
73
84
 
74
85
  @include e(content) {
75
86
  max-height: 240px;
76
- overflow-y: auto;
77
87
  padding: 0 getCssVar(spacing, base) getCssVar(spacing, base) getCssVar(spacing, loose);
88
+ overflow-y: auto;
78
89
  }
79
90
 
80
91
  @include e(file-item) {
81
- height: 48px;
82
- display: flex;
83
92
  position: relative;
93
+ display: flex;
84
94
  align-items: center;
95
+ height: 48px;
85
96
  padding: getCssVar(spacing, base-tight) 0;
86
97
 
87
98
  @include m(icon) {
88
99
  display: flex;
89
100
  align-items: center;
101
+
90
102
  svg {
91
103
  width: 20px;
92
104
  height: 20px;
@@ -95,34 +107,38 @@
95
107
 
96
108
  @include m(name) {
97
109
  flex-grow: 1;
98
- white-space: nowrap;
110
+ margin: 0 getCssVar(spacing, base-tight);
99
111
  overflow: hidden;
100
112
  text-overflow: ellipsis;
101
- margin: 0 getCssVar(spacing, base-tight);
113
+ white-space: nowrap;
102
114
  }
103
115
 
104
116
  @include m(status) {
105
117
  display: flex;
106
118
  align-items: center;
119
+
107
120
  .el-progress {
108
- padding-left: getCssVar(spacing, base);
121
+ margin-left: getCssVar(spacing, loose);
109
122
  }
123
+
110
124
  .el-progress-circle {
111
125
  --el-fill-color-light: #{getCssVar(color, disabled-bg)};
126
+
112
127
  width: 20px !important;
113
128
  height: 20px !important;
114
129
  }
130
+
115
131
  .el-progress__text {
116
- font-size: getCssVar(font-size, small) !important;
117
132
  left: -45px !important;
133
+ font-size: getCssVar(font-size, small) !important;
118
134
  }
119
135
  }
120
136
  @include m(status-text) {
121
- left: 32px;
122
- bottom: -6px;
123
137
  position: absolute;
124
- color: getCssVar(color, danger);
138
+ bottom: -6px;
139
+ left: 32px;
125
140
  font-size: getCssVar(font-size, small);
141
+ color: getCssVar(color, danger);
126
142
  }
127
143
  }
128
144
  }
@@ -11,6 +11,7 @@ import {
11
11
  } from 'vue';
12
12
  import { IUploadManagerParams } from '@ibiz-template/runtime';
13
13
  import { useNamespace } from '@ibiz-template/vue3-util';
14
+ import { showTitle } from '@ibiz-template/core';
14
15
  import { getFileSvgByType } from './file-type';
15
16
  import './upload-manager.scss';
16
17
 
@@ -238,7 +239,10 @@ export const IBizUploadManager = defineComponent({
238
239
  <div class={this.ns.em('file-item', 'icon')}>
239
240
  {getFileSvgByType(item.file.type)}
240
241
  </div>
241
- <div class={this.ns.em('file-item', 'name')}>
242
+ <div
243
+ title={showTitle(item.file.name)}
244
+ class={this.ns.em('file-item', 'name')}
245
+ >
242
246
  {item.file.name}
243
247
  </div>
244
248
  <div class={this.ns.em('file-item', 'status')}>