@ibiz-template/vue3-components 0.7.41-alpha.113 → 0.7.41-alpha.114

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 (79) hide show
  1. package/dist/{index-BLBroBhu.js → index-B3O6yu1f.js} +1 -1
  2. package/dist/index-BugLIX5r.js +339 -0
  3. package/dist/{index-C-9vEACb.js → index-qO4rCmKY.js} +1 -1
  4. package/dist/{index.es-BU8Fy5we.js → index.es-EGP1S-jJ.js} +1 -1
  5. package/dist/index.min.css +1 -1
  6. package/dist/index.system.min.js +1 -1
  7. package/dist/{wang-editor-9zdglekK.js → wang-editor-CBp2ammw.js} +1 -1
  8. package/dist/{xlsx-util-DrUAhpzt.js → xlsx-util-NIbtpljc.js} +1 -1
  9. package/es/common/button-list/button-list.mjs +6 -1
  10. package/es/common/data-import/data-import.mjs +11 -8
  11. package/es/control/calendar/components/calendar-user2/calendar-user2.mjs +2 -2
  12. package/es/control/calendar/components/custom-calendar/custom-calendar.mjs +1 -2
  13. package/es/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.mjs +2 -0
  14. package/es/control/drtab/drtab-control.util.mjs +1 -1
  15. package/es/control/drtab/drtab.controller.mjs +48 -13
  16. package/es/control/drtab/drtab.mjs +1 -1
  17. package/es/control/drtab/flow-drtab.mjs +9 -9
  18. package/es/control/exp-bar/render-util.mjs +2 -2
  19. package/es/control/medit-view-panel/medit-view-panel.mjs +1 -1
  20. package/es/control/toolbar/toolbar.mjs +3 -0
  21. package/es/control/tree/tree.mjs +1 -1
  22. package/es/control/tree-grid-ex/tree-grid-ex.mjs +1 -0
  23. package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +2 -1
  24. package/es/locale/en/index.mjs +1 -0
  25. package/es/locale/zh-CN/index.mjs +1 -0
  26. package/es/panel-component/global-search/global-search.mjs +2 -1
  27. package/es/panel-component/nav-tabs/nav-tabs.mjs +12 -3
  28. package/es/panel-component/short-cut/short-cut.mjs +2 -1
  29. package/es/panel-component/user-message/user-message.mjs +1 -0
  30. package/es/util/ai-chat-util/ai-chat-util.mjs +11 -0
  31. package/es/util/fullscreen/fullscreen-util.mjs +1 -1
  32. package/lib/common/button-list/button-list.cjs +6 -1
  33. package/lib/common/data-import/data-import.cjs +11 -8
  34. package/lib/control/calendar/components/calendar-user2/calendar-user2.cjs +2 -2
  35. package/lib/control/calendar/components/custom-calendar/custom-calendar.cjs +1 -2
  36. package/lib/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.cjs +2 -0
  37. package/lib/control/drtab/drtab-control.util.cjs +1 -1
  38. package/lib/control/drtab/drtab.cjs +1 -1
  39. package/lib/control/drtab/drtab.controller.cjs +48 -13
  40. package/lib/control/drtab/flow-drtab.cjs +9 -9
  41. package/lib/control/exp-bar/render-util.cjs +2 -2
  42. package/lib/control/medit-view-panel/medit-view-panel.cjs +1 -1
  43. package/lib/control/toolbar/toolbar.cjs +3 -0
  44. package/lib/control/tree/tree.cjs +1 -1
  45. package/lib/control/tree-grid-ex/tree-grid-ex.cjs +1 -0
  46. package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +2 -1
  47. package/lib/locale/en/index.cjs +1 -0
  48. package/lib/locale/zh-CN/index.cjs +1 -0
  49. package/lib/panel-component/global-search/global-search.cjs +2 -1
  50. package/lib/panel-component/nav-tabs/nav-tabs.cjs +12 -3
  51. package/lib/panel-component/short-cut/short-cut.cjs +2 -1
  52. package/lib/panel-component/user-message/user-message.cjs +1 -0
  53. package/lib/util/ai-chat-util/ai-chat-util.cjs +11 -0
  54. package/lib/util/fullscreen/fullscreen-util.cjs +1 -1
  55. package/package.json +5 -5
  56. package/src/common/button-list/button-list.tsx +4 -1
  57. package/src/common/data-import/data-import.tsx +16 -9
  58. package/src/control/calendar/components/calendar-user2/calendar-user2.tsx +2 -2
  59. package/src/control/calendar/components/custom-calendar/custom-calendar.tsx +1 -1
  60. package/src/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.tsx +2 -0
  61. package/src/control/drtab/drtab.controller.ts +54 -14
  62. package/src/control/drtab/drtab.tsx +1 -1
  63. package/src/control/drtab/flow-drtab.tsx +9 -9
  64. package/src/control/exp-bar/render-util.tsx +3 -3
  65. package/src/control/medit-view-panel/medit-view-panel.tsx +1 -1
  66. package/src/control/toolbar/toolbar.tsx +1 -0
  67. package/src/control/tree/tree.tsx +1 -1
  68. package/src/control/tree-grid-ex/tree-grid-ex.tsx +1 -0
  69. package/src/editor/date-picker/ibiz-date-picker/ibiz-date-picker.tsx +1 -0
  70. package/src/locale/en/index.ts +1 -0
  71. package/src/locale/zh-CN/index.ts +1 -0
  72. package/src/panel-component/global-search/global-search.tsx +1 -0
  73. package/src/panel-component/nav-tabs/nav-tabs.tsx +9 -0
  74. package/src/panel-component/short-cut/short-cut.tsx +1 -0
  75. package/src/panel-component/user-message/user-message.tsx +1 -0
  76. package/src/util/ai-chat-util/ai-chat-util.ts +13 -0
  77. package/dist/index-CkG9L_La.js +0 -339
  78. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.117_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.119_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +0 -0
  79. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.117_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.119_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
@@ -19,7 +19,11 @@ import {
19
19
  calcItemVisible,
20
20
  } from '@ibiz-template/runtime';
21
21
  import { getNestedRoutePath } from '@ibiz-template/vue3-util';
22
- import { IDEDRCtrlItem, IDEDRTab } from '@ibiz/model-core';
22
+ import {
23
+ IAppDETabExplorerView,
24
+ IDEDRCtrlItem,
25
+ IDEDRTab,
26
+ } from '@ibiz/model-core';
23
27
  import { Router } from 'vue-router';
24
28
  import { isNil } from 'ramda';
25
29
 
@@ -57,6 +61,13 @@ export class DRTabController
57
61
  */
58
62
  srfCacheKeyTempl: string = '';
59
63
 
64
+ /**
65
+ * @description 显示位置
66
+ * @type {(string | undefined)}
67
+ * @memberof DRTabController
68
+ */
69
+ tabPosition: string | undefined;
70
+
60
71
  /**
61
72
  * 导航占位控制器
62
73
  *
@@ -182,6 +193,7 @@ export class DRTabController
182
193
  super.initState();
183
194
  this.state.drTabPages = [];
184
195
  this.state.showMore = false;
196
+ this.state.expViewParams = {};
185
197
  // 未配置时默认隐藏编辑项
186
198
  this.state.hideEditItem = !!this.model.hideEditItem;
187
199
  }
@@ -193,6 +205,9 @@ export class DRTabController
193
205
  * @memberof DRTabController
194
206
  */
195
207
  async onCreated(): Promise<void> {
208
+ this.tabPosition = (
209
+ this.view.model as IAppDETabExplorerView
210
+ ).tabLayout?.toLowerCase();
196
211
  await super.onCreated();
197
212
  await this.initCounter();
198
213
  this.srfCacheKeyTempl = this.controlParams.srfcachekeytempl || '';
@@ -425,7 +440,7 @@ export class DRTabController
425
440
  testScriptCode,
426
441
  counterMode,
427
442
  } = item;
428
- drTabPages.push({
443
+ const drTabPage: IDRTabPagesState = {
429
444
  tag: item.id!,
430
445
  caption: item.caption,
431
446
  sysImage: item.sysImage,
@@ -437,7 +452,15 @@ export class DRTabController
437
452
  testAppDELogicId,
438
453
  testScriptCode,
439
454
  counterMode,
440
- });
455
+ };
456
+ if (this.tabPosition === 'flow_noheader' || this.tabPosition === 'flow') {
457
+ const { context, params } = this.prepareParams(item);
458
+ Object.assign(drTabPage, {
459
+ context,
460
+ params,
461
+ });
462
+ }
463
+ drTabPages.push(drTabPage);
441
464
  });
442
465
  this.state.drTabPages = drTabPages;
443
466
  this.state.defaultName = drTabPages[0].tag;
@@ -518,15 +541,15 @@ export class DRTabController
518
541
  /**
519
542
  * 准备参数
520
543
  *
521
- * @param {IDEDRCtrlItem} drTabPages 关系分页
544
+ * @param {IDEDRCtrlItem} drTabPage 关系分页
522
545
  * @return {*}
523
546
  * @memberof DRTabController
524
547
  */
525
- prepareParams(drTabPages: IDEDRCtrlItem): {
548
+ prepareParams(drTabPage: IDEDRCtrlItem): {
526
549
  context: IContext;
527
550
  params: IParams;
528
551
  } {
529
- const { navigateContexts, navigateParams } = drTabPages;
552
+ const { navigateContexts, navigateParams } = drTabPage;
530
553
  const model = {
531
554
  navContexts: navigateContexts,
532
555
  navParams: navigateParams,
@@ -538,9 +561,13 @@ export class DRTabController
538
561
  };
539
562
  const { resultContext, resultParams } = calcNavParams(model, originParams);
540
563
  const context = Object.assign(this.context.clone(), resultContext, {
541
- currentSrfNav: drTabPages.id,
564
+ currentSrfNav: drTabPage.id,
542
565
  });
543
- const params = { ...this.params, ...resultParams };
566
+ const params = {
567
+ ...this.params,
568
+ ...resultParams,
569
+ ...this.state.expViewParams,
570
+ };
544
571
  return { context, params };
545
572
  }
546
573
 
@@ -549,22 +576,22 @@ export class DRTabController
549
576
  *
550
577
  * @author lxm
551
578
  * @date 2023-12-21 05:40:07
552
- * @param {IDEDRCtrlItem} drTabPages
579
+ * @param {IDEDRCtrlItem} drTabPage
553
580
  * @param {boolean} [isRoutePushed=false]
554
581
  * @return {*} {Promise<void>}
555
582
  */
556
583
  async openNavPosView(
557
- drTabPages: IDEDRCtrlItem,
584
+ drTabPage: IDEDRCtrlItem,
558
585
  isRoutePushed = false,
559
586
  navViewKey?: string,
560
587
  ): Promise<void> {
561
- const { context, params } = this.prepareParams(drTabPages);
562
- if (!drTabPages.appViewId) return;
588
+ const { context, params } = this.prepareParams(drTabPage);
589
+ if (!drTabPage.appViewId) return;
563
590
  this.navPos?.openView({
564
- key: navViewKey || drTabPages.id!,
591
+ key: navViewKey || drTabPage.id!,
565
592
  context,
566
593
  params,
567
- viewId: drTabPages.appViewId,
594
+ viewId: drTabPage.appViewId,
568
595
  isRoutePushed,
569
596
  });
570
597
  }
@@ -600,6 +627,19 @@ export class DRTabController
600
627
  * @return {*} {Promise<void>}
601
628
  */
602
629
  async refresh(): Promise<void> {
630
+ if (this.tabPosition === 'flow_noheader' || this.tabPosition === 'flow') {
631
+ this.state.drTabPages.forEach((tabPageState: IDRTabPagesState) => {
632
+ const dedrtabPage = this.model.dedrtabPages?.find(
633
+ item => item.id === tabPageState.tag,
634
+ );
635
+ if (dedrtabPage) {
636
+ const { context, params } = this.prepareParams(dedrtabPage);
637
+ tabPageState.context = context;
638
+ tabPageState.params = params;
639
+ }
640
+ });
641
+ return;
642
+ }
603
643
  const { activeName } = this.state;
604
644
  const drBarItem = this.model.dedrtabPages?.find(
605
645
  item => item.id === activeName,
@@ -319,7 +319,7 @@ export const DRTabControl = defineComponent({
319
319
  style={this.semanticStyle('root')}
320
320
  semanticClass={this.semanticClass}
321
321
  semanticStyle={this.semanticStyle}
322
- pagesstate={this.visibleItems as IData[]}
322
+ pagesState={this.visibleItems as IData[]}
323
323
  drtabpages={this.modelData.dedrtabPages}
324
324
  context={this.c.context}
325
325
  params={this.c.params}
@@ -23,7 +23,7 @@ import './flow-drtab.scss';
23
23
  export const FlowDrtab = defineComponent({
24
24
  name: 'FlowDrtab',
25
25
  props: {
26
- pagesstate: {
26
+ pagesState: {
27
27
  type: Array as PropType<IData[]>,
28
28
  default: () => [],
29
29
  },
@@ -93,7 +93,7 @@ export const FlowDrtab = defineComponent({
93
93
 
94
94
  // 所有可视视图
95
95
  const allVisibleViews = computed(() => {
96
- return props.pagesstate.filter(item => {
96
+ return props.pagesState.filter(item => {
97
97
  const target = props.drtabpages.find(page => {
98
98
  return page.id === item.tag;
99
99
  });
@@ -103,8 +103,8 @@ export const FlowDrtab = defineComponent({
103
103
 
104
104
  // 所有导航项元素id
105
105
  const allNavTags = computed(() => {
106
- if (props.pagesstate) {
107
- return props.pagesstate.map(item => {
106
+ if (props.pagesState) {
107
+ return props.pagesState.map(item => {
108
108
  const target = props.drtabpages.find(page => {
109
109
  return page.id === item.tag;
110
110
  });
@@ -222,7 +222,7 @@ export const FlowDrtab = defineComponent({
222
222
  });
223
223
  completedViews.value += 1;
224
224
  if (completedViews.value === allVisibleViews.value && !navtag.value) {
225
- navtag.value = `${target?.appViewId}_${props.pagesstate[0].tag}`;
225
+ navtag.value = `${target?.appViewId}_${props.pagesState[0].tag}`;
226
226
  }
227
227
  const el = document.getElementById(`${target?.appViewId}_${item.tag}`);
228
228
  if (el) {
@@ -339,7 +339,7 @@ export const FlowDrtab = defineComponent({
339
339
  navbarRef.value = el;
340
340
  }}
341
341
  >
342
- {props.pagesstate.map(item => {
342
+ {props.pagesState.map(item => {
343
343
  const target = props.drtabpages.find(page => {
344
344
  return page.id === item.tag;
345
345
  });
@@ -391,7 +391,7 @@ export const FlowDrtab = defineComponent({
391
391
  };
392
392
  },
393
393
  render() {
394
- const tabs = this.pagesstate.map((item: IData) => {
394
+ const tabs = this.pagesState.map((item: IData) => {
395
395
  const counterNum = item.counterId
396
396
  ? this.counterData[item.counterId]
397
397
  : undefined;
@@ -467,8 +467,8 @@ export const FlowDrtab = defineComponent({
467
467
  }}
468
468
  >
469
469
  {h(viewShell, {
470
- context: this.context,
471
- params: this.params,
470
+ context: item.context || this.context,
471
+ params: item.params || this.params,
472
472
  viewId: target.appViewId,
473
473
  onMounted: () => this.onViewMounted(item),
474
474
  })}
@@ -61,11 +61,11 @@ export function useExpBarRender(
61
61
  >
62
62
  {model.sysImage && (
63
63
  <iBizIcon
64
- style={semanticStyle('title.icon')}
65
64
  class={[
66
65
  expBarNs.be('caption', 'icon'),
67
- semanticStyle('title.icon'),
66
+ semanticClass('title.icon'),
68
67
  ]}
68
+ style={semanticStyle('title.icon')}
69
69
  icon={model.sysImage}
70
70
  ></iBizIcon>
71
71
  )}
@@ -74,7 +74,7 @@ export function useExpBarRender(
74
74
  class={[
75
75
  ns.be('caption', 'text'),
76
76
  expBarNs.be('caption', 'text'),
77
- semanticStyle('title.text'),
77
+ semanticClass('title.text'),
78
78
  ]}
79
79
  style={semanticStyle('title.text')}
80
80
  >
@@ -178,7 +178,7 @@ export const MEditViewPanelControl = defineComponent({
178
178
  this.ns.be('tab-label', 'remove'),
179
179
  this.semanticClass('tab.remove', { item }),
180
180
  ]}
181
- style={this.semanticClass('tab.remove', { item })}
181
+ style={this.semanticStyle('tab.remove', { item })}
182
182
  name='close-outline'
183
183
  onClick={(event: MouseEvent) =>
184
184
  this.handleTabDelete(item, event)
@@ -380,6 +380,7 @@ export const ToolbarControl = defineComponent({
380
380
  ns2.bm('dropdown-popper', calcCssName(item)),
381
381
  semanticClass('popup', { item }),
382
382
  ]}
383
+ popper-style={semanticStyle('popup', { item })}
383
384
  placement='right-start'
384
385
  teleported={false}
385
386
  popper-options={{
@@ -1230,7 +1230,7 @@ export const TreeControl = defineComponent({
1230
1230
  ref={'treeviewRef'}
1231
1231
  controller={this.c}
1232
1232
  class={this.semanticClass('root')}
1233
- style={this.semanticClass('root')}
1233
+ style={this.semanticStyle('root')}
1234
1234
  v-loading={this.c.state.isLoading}
1235
1235
  element-loading-text={this.c.state.loadingText}
1236
1236
  >
@@ -377,6 +377,7 @@ export const TreeGridExControl = defineComponent({
377
377
  ref={'tableRef'}
378
378
  key={this.tableRefreshKey}
379
379
  class={[this.ns.e('table'), this.semanticClass('content')]}
380
+ style={this.semanticStyle('content')}
380
381
  border
381
382
  row-key='id'
382
383
  data={this.elTableData}
@@ -267,6 +267,7 @@ export const IBizDatePicker = defineComponent({
267
267
  this.ns.b('form-default-content'),
268
268
  this.semanticClass('editor.content'),
269
269
  ]}
270
+ style={this.semanticStyle('editor.content')}
270
271
  >
271
272
  {this.formatValue ? (
272
273
  this.formatValue
@@ -587,6 +587,7 @@ export default {
587
587
  importResults: 'Import Results',
588
588
  downloadTemplate: 'Download the import template and fill in as required:',
589
589
  templateFile: 'Data import template file',
590
+ template: 'Template',
590
591
  continue: 'Continue importing',
591
592
  },
592
593
  dataImport2: {
@@ -543,6 +543,7 @@ export default {
543
543
  importResults: '导入结果',
544
544
  downloadTemplate: '下载导入模版,并按要求填写:',
545
545
  templateFile: '数据导入模板文件',
546
+ template: '模板',
546
547
  continue: '继续导入',
547
548
  },
548
549
  dataImport2: {
@@ -352,6 +352,7 @@ export const GlobalSearch = defineComponent({
352
352
  visible={this.visible}
353
353
  placement='bottom-start'
354
354
  popper-class={[this.ns.e('popper'), this.semanticClass('popup')]}
355
+ popper-style={this.semanticStyle('popup')}
355
356
  >
356
357
  {{
357
358
  reference: () => {
@@ -321,6 +321,9 @@ export const NavTabs = defineComponent({
321
321
  item: msg,
322
322
  }),
323
323
  ]}
324
+ style={this.semanticStyle('item.captioninfo', {
325
+ item: msg,
326
+ })}
324
327
  >
325
328
  {msg.caption}
326
329
  </span>
@@ -332,6 +335,9 @@ export const NavTabs = defineComponent({
332
335
  item: msg,
333
336
  }),
334
337
  ]}
338
+ style={this.semanticStyle('item.captiondivider', {
339
+ item: msg,
340
+ })}
335
341
  >
336
342
  &nbsp;-&nbsp;
337
343
  </span>
@@ -344,6 +350,9 @@ export const NavTabs = defineComponent({
344
350
  item: msg,
345
351
  }),
346
352
  ]}
353
+ style={this.semanticStyle('item.datainfo', {
354
+ item: msg,
355
+ })}
347
356
  >
348
357
  {msg.dataInfo}
349
358
  </span>
@@ -364,6 +364,7 @@ export const ShortCut = defineComponent({
364
364
  trigger='click'
365
365
  width='auto'
366
366
  popper-class={[ns.e('popover'), semanticClass('popup')]}
367
+ popper-style={semanticStyle('popup')}
367
368
  >
368
369
  {{
369
370
  reference: () => {
@@ -133,6 +133,7 @@ export const UserMessage = defineComponent({
133
133
  <el-popover
134
134
  ref='popoverRef'
135
135
  popper-class={[this.ns.b('popover'), this.semanticClass('popup')]}
136
+ popper-style={this.semanticStyle('popup')}
136
137
  placement='bottom'
137
138
  trigger='click'
138
139
  v-model:visible={this.showPopover}
@@ -678,6 +678,12 @@ export class AIChatUtil implements IApiAIChatUtil {
678
678
  );
679
679
  },
680
680
  };
681
+ // 文件最大上传大小限制
682
+ let uploadMaxSize = ibiz.config.common.aiUploadMaxSize;
683
+ if (editorParams.srfuploadmaxsize) {
684
+ uploadMaxSize = Number(editorParams.srfuploadmaxsize);
685
+ }
686
+ chatOptions.uploader.maxSize = uploadMaxSize;
681
687
  // 扩展工具栏点击
682
688
  chatOptions.extendToolbarClick = async (
683
689
  event: MouseEvent,
@@ -1401,6 +1407,13 @@ export class AIChatUtil implements IApiAIChatUtil {
1401
1407
  );
1402
1408
  },
1403
1409
  };
1410
+ // 文件最大上传大小限制
1411
+ let uploadMaxSize = ibiz.config.common.aiUploadMaxSize;
1412
+ if (params.hasOwnProperty('srfuploadmaxsize')) {
1413
+ uploadMaxSize = Number(params.srfuploadmaxsize);
1414
+ delete params.srfuploadmaxsize;
1415
+ }
1416
+ chatOptions.uploader.maxSize = uploadMaxSize;
1404
1417
  // 扩展工具栏点击
1405
1418
  chatOptions.extendToolbarClick = async (
1406
1419
  event: MouseEvent,