@ibiz-template/vue3-components 0.7.24-alpha.0 → 0.7.24-alpha.2
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.
- package/dist/{index-d_MgYoar.js → index--XeT2CTZ.js} +1 -1
- package/dist/index-UoIBnm4j.js +4 -0
- package/dist/{index-3r8aPzsK.js → index-_h-elF6t.js} +1 -1
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/{xlsx-util-7cpIakTB.js → xlsx-util-mYK_A5hQ.js} +1 -1
- package/es/common/action-toolbar/action-toolbar.mjs +2 -2
- package/es/control/context-menu/context-menu.mjs +1 -1
- package/es/control/data-view/data-view.css +1 -1
- package/es/control/data-view/data-view.d.ts +1 -0
- package/es/control/data-view/data-view.mjs +35 -5
- package/es/control/data-view/index.d.ts +1 -0
- package/es/control/drtab/drtab-control.util.d.ts +17 -0
- package/es/control/drtab/drtab-control.util.mjs +115 -0
- package/es/control/drtab/drtab.controller.d.ts +7 -0
- package/es/control/drtab/drtab.controller.mjs +13 -0
- package/es/control/drtab/drtab.css +1 -1
- package/es/control/drtab/drtab.d.ts +4 -0
- package/es/control/drtab/drtab.mjs +94 -33
- package/es/control/drtab/index.d.ts +4 -0
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +1 -0
- package/es/control/grid/grid/grid-control.util.mjs +3 -1
- package/es/control/grid/grid/grid.css +1 -1
- package/es/control/grid/grid/grid.d.ts +3 -0
- package/es/control/grid/grid/grid.mjs +43 -4
- package/es/control/grid/grid/index.d.ts +3 -0
- package/es/control/list/index.d.ts +1 -0
- package/es/control/list/list.css +1 -1
- package/es/control/list/list.d.ts +1 -0
- package/es/control/list/list.mjs +35 -7
- package/es/editor/switch/ibiz-switch/ibiz-switch.mjs +7 -2
- package/es/locale/en/index.d.ts +2 -1
- package/es/locale/en/index.mjs +2 -1
- package/es/locale/zh-CN/index.d.ts +2 -1
- package/es/locale/zh-CN/index.mjs +2 -1
- package/es/node_modules/.pnpm/@ibiz-template_core@0.7.18_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +218 -0
- package/lib/common/action-toolbar/action-toolbar.cjs +2 -2
- package/lib/control/context-menu/context-menu.cjs +1 -1
- package/lib/control/data-view/data-view.cjs +34 -4
- package/lib/control/data-view/data-view.css +1 -1
- package/lib/control/drtab/drtab-control.util.cjs +117 -0
- package/lib/control/drtab/drtab.cjs +93 -32
- package/lib/control/drtab/drtab.controller.cjs +13 -0
- package/lib/control/drtab/drtab.css +1 -1
- package/lib/control/grid/grid/grid-control.util.cjs +3 -1
- package/lib/control/grid/grid/grid.cjs +42 -3
- package/lib/control/grid/grid/grid.css +1 -1
- package/lib/control/list/list.cjs +34 -6
- package/lib/control/list/list.css +1 -1
- package/lib/editor/switch/ibiz-switch/ibiz-switch.cjs +6 -1
- package/lib/locale/en/index.cjs +2 -1
- package/lib/locale/zh-CN/index.cjs +2 -1
- package/lib/node_modules/.pnpm/@ibiz-template_core@0.7.18_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +221 -0
- package/package.json +6 -6
- package/dist/index-A47VV-n6.js +0 -4
|
@@ -143,7 +143,7 @@ const IBizActionToolbar = /* @__PURE__ */ defineComponent({
|
|
|
143
143
|
}, {
|
|
144
144
|
icon: () => createVNode("ion-icon", {
|
|
145
145
|
"class": this.ns.e("icon"),
|
|
146
|
-
"name": "ellipsis-vertical
|
|
146
|
+
"name": "ellipsis-vertical",
|
|
147
147
|
"title": ibiz.i18n.t("component.actionToolbar.more")
|
|
148
148
|
}, null)
|
|
149
149
|
}), createVNode(resolveComponent("el-popover"), {
|
|
@@ -178,7 +178,7 @@ const IBizActionToolbar = /* @__PURE__ */ defineComponent({
|
|
|
178
178
|
"class": this.ns.e("caption")
|
|
179
179
|
}, [this.caption, createVNode("ion-icon", {
|
|
180
180
|
"class": this.ns.e("caption-icon"),
|
|
181
|
-
"name": "ellipsis-vertical
|
|
181
|
+
"name": "ellipsis-vertical"
|
|
182
182
|
}, null)]),
|
|
183
183
|
dropdown: () => createVNode(resolveComponent("el-dropdown-menu"), null, {
|
|
184
184
|
default: () => [details.length > 0 && details.map((detail) => {
|
|
@@ -214,7 +214,7 @@ const ContextMenuControl = /* @__PURE__ */ defineComponent({
|
|
|
214
214
|
}, {
|
|
215
215
|
icon: () => createVNode("ion-icon", {
|
|
216
216
|
"class": this.ns.e("icon"),
|
|
217
|
-
"name": "ellipsis-vertical
|
|
217
|
+
"name": "ellipsis-vertical"
|
|
218
218
|
}, null)
|
|
219
219
|
}), createVNode(resolveComponent("el-popover"), {
|
|
220
220
|
"placement": "bottom-start",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-dataview{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;display:flex;flex-flow:column nowrap;align-items:stretch;justify-content:flex-start;height:100%}.ibiz-control-dataview__content{flex-grow:1;height:100%}.ibiz-control-dataview__pagination{flex-shrink:0}.ibiz-control-dataview-scroll{display:flex;flex-wrap:wrap;align-content:flex-start;padding:var(--ibiz-control-dataview-padding);overflow:auto}.ibiz-control-dataview-scroll>*{margin:calc(var(--ibiz-spacing-base-tight)/ 2)}.ibiz-control-dataview-item-col{padding:0 var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base-tight) 0}.ibiz-control-dataview-item{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;color:var(--ibiz-control-dataview-text-color);cursor:pointer}.ibiz-control-dataview-item:hover{background-color:var(--ibiz-control-dataview-hover-bg-color)}.ibiz-control-dataview-item.is-active{background-color:var(--ibiz-control-dataview-active-bg-color)}.ibiz-control-dataview-item-content{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px}.ibiz-control-dataview-item-content__top--title{text-align:center}.ibiz-control-dataview-item-content__top--description{min-width:150px;text-align:justify;text-justify:newspaper;word-break:break-all}.ibiz-control-dataview-item-content__bottom--actions{display:flex;justify-content:center}.ibiz-control-dataview-group-content{--ibiz-control-dataview-group-item-header-bg-color:transparent;--ibiz-control-dataview-group-item-header-padding:var(--ibiz-spacing-base-tight);--ibiz-control-dataview-group-item-header-border-color:var(--ibiz-color-border);--ibiz-control-dataview-group-item-caption-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-group-item-caption-font-size:var(--ibiz-font-size-header-5);--ibiz-control-dataview-group-item-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-dataview-group-item-content-bg-color:transparent;--ibiz-control-dataview-group-item-content-padding:var(--ibiz-spacing-tight);width:100%}.ibiz-control-dataview-group-content__item .el-collapse-item__content{display:flex;flex-wrap:wrap}.ibiz-control-dataview-group-content__item--empty{width:100%;text-align:center}.ibiz-control-dataview-group-content__item-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--ibiz-control-dataview-group-item-header-padding);border-bottom:1px solid var(--ibiz-control-dataview-group-item-header-border-color)}.ibiz-control-dataview-group-content__item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-control-dataview-group-item-caption-font-size);font-weight:var(--ibiz-control-dataview-group-item-caption-font-weight);color:var(--ibiz-control-dataview-group-item-caption-text-color)}.ibiz-control-dataview-group-content__item-content{display:flex;flex-wrap:wrap;padding:var(--ibiz-control-dataview-group-item-content-padding);background-color:var(--ibiz-control-dataview-group-item-content-bg-color)}.ibiz-control-dataview-group-content__item-content>*{margin:calc(var(--ibiz-spacing-base-tight)/ 2)}.ibiz-control-dataview-group-content__item-row{padding:var(--ibiz-control-dataview-group-item-content-padding)}.ibiz-control-dataview-group-content__item-col{padding:0 var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base-tight) 0}
|
|
1
|
+
.ibiz-control-dataview{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;display:flex;flex-flow:column nowrap;align-items:stretch;justify-content:flex-start;height:100%}.ibiz-control-dataview__content{flex-grow:1;height:100%}.ibiz-control-dataview__pagination{flex-shrink:0}.ibiz-control-dataview__load-more-button{width:calc(100% - var(--ibiz-spacing-base-tight));text-align:center}.ibiz-control-dataview-scroll{display:flex;flex-wrap:wrap;align-content:flex-start;padding:var(--ibiz-control-dataview-padding);overflow:auto}.ibiz-control-dataview-scroll>*{margin:calc(var(--ibiz-spacing-base-tight)/ 2)}.ibiz-control-dataview-item-col{padding:0 var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base-tight) 0}.ibiz-control-dataview-item{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;color:var(--ibiz-control-dataview-text-color);cursor:pointer}.ibiz-control-dataview-item:hover{background-color:var(--ibiz-control-dataview-hover-bg-color)}.ibiz-control-dataview-item.is-active{background-color:var(--ibiz-control-dataview-active-bg-color)}.ibiz-control-dataview-item-content{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px}.ibiz-control-dataview-item-content__top--title{text-align:center}.ibiz-control-dataview-item-content__top--description{min-width:150px;text-align:justify;text-justify:newspaper;word-break:break-all}.ibiz-control-dataview-item-content__bottom--actions{display:flex;justify-content:center}.ibiz-control-dataview-group-content{--ibiz-control-dataview-group-item-header-bg-color:transparent;--ibiz-control-dataview-group-item-header-padding:var(--ibiz-spacing-base-tight);--ibiz-control-dataview-group-item-header-border-color:var(--ibiz-color-border);--ibiz-control-dataview-group-item-caption-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-group-item-caption-font-size:var(--ibiz-font-size-header-5);--ibiz-control-dataview-group-item-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-dataview-group-item-content-bg-color:transparent;--ibiz-control-dataview-group-item-content-padding:var(--ibiz-spacing-tight);width:100%}.ibiz-control-dataview-group-content__item .el-collapse-item__content{display:flex;flex-wrap:wrap}.ibiz-control-dataview-group-content__item--empty{width:100%;text-align:center}.ibiz-control-dataview-group-content__item-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--ibiz-control-dataview-group-item-header-padding);border-bottom:1px solid var(--ibiz-control-dataview-group-item-header-border-color)}.ibiz-control-dataview-group-content__item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-control-dataview-group-item-caption-font-size);font-weight:var(--ibiz-control-dataview-group-item-caption-font-weight);color:var(--ibiz-control-dataview-group-item-caption-text-color)}.ibiz-control-dataview-group-content__item-content{display:flex;flex-wrap:wrap;padding:var(--ibiz-control-dataview-group-item-content-padding);background-color:var(--ibiz-control-dataview-group-item-content-bg-color)}.ibiz-control-dataview-group-content__item-content>*{margin:calc(var(--ibiz-spacing-base-tight)/ 2)}.ibiz-control-dataview-group-content__item-row{padding:var(--ibiz-control-dataview-group-item-content-padding)}.ibiz-control-dataview-group-content__item-col{padding:0 var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base-tight) 0}
|
|
@@ -42,6 +42,7 @@ export declare const DataViewControl: import("vue").DefineComponent<{
|
|
|
42
42
|
c: DataViewControlController<IDEDataView, import("@ibiz-template/runtime").IDataViewControlState, import("@ibiz-template/runtime").IMDControlEvent>;
|
|
43
43
|
ns: import("@ibiz-template/core").Namespace;
|
|
44
44
|
classNames: import("vue").ComputedRef<string[]>;
|
|
45
|
+
infiniteScroll: import("vue").Ref<IData | undefined>;
|
|
45
46
|
renderHasData: () => VNode;
|
|
46
47
|
renderNoData: () => VNode | undefined;
|
|
47
48
|
onPageChange: (page: number) => void;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { isVNode, computed, resolveComponent, createVNode, resolveDirective, withDirectives, defineComponent } from 'vue';
|
|
1
|
+
import { isVNode, computed, ref, watch, resolveComponent, createVNode, resolveDirective, withDirectives, defineComponent } from 'vue';
|
|
2
2
|
import { useControlController, useNamespace } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { DataViewControlController } from '@ibiz-template/runtime';
|
|
4
|
+
import { createUUID } from 'qx-util';
|
|
4
5
|
import './data-view.css';
|
|
5
6
|
import '../../util/index.mjs';
|
|
6
7
|
import { usePagination } from '../../util/pagination/use-pagination.mjs';
|
|
@@ -58,8 +59,24 @@ const DataViewControl = /* @__PURE__ */ defineComponent({
|
|
|
58
59
|
if (c.model.enablePagingBar === true) {
|
|
59
60
|
return true;
|
|
60
61
|
}
|
|
62
|
+
if (c.model.pagingMode !== 2) {
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
61
65
|
return c.state.items.length >= c.state.total || c.state.isLoading || c.state.total <= c.state.size;
|
|
62
66
|
});
|
|
67
|
+
const infiniteScroll = ref();
|
|
68
|
+
const infiniteScrollKey = ref(createUUID());
|
|
69
|
+
watch(() => c.state.curPage, () => {
|
|
70
|
+
var _a, _b;
|
|
71
|
+
if (c.state.curPage === 1 && (c.model.pagingMode === 2 || c.model.pagingMode === 3)) {
|
|
72
|
+
infiniteScrollKey.value = createUUID();
|
|
73
|
+
const containerEl = (_b = (_a = infiniteScroll.value) == null ? void 0 : _a.ElInfiniteScroll) == null ? void 0 : _b.containerEl;
|
|
74
|
+
if (containerEl) {
|
|
75
|
+
containerEl.lastScrollTop = 0;
|
|
76
|
+
containerEl.scrollTop = 0;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
});
|
|
63
80
|
const {
|
|
64
81
|
onPageChange,
|
|
65
82
|
onPageRefresh,
|
|
@@ -230,11 +247,21 @@ const DataViewControl = /* @__PURE__ */ defineComponent({
|
|
|
230
247
|
});
|
|
231
248
|
};
|
|
232
249
|
const renderHasData = () => {
|
|
250
|
+
let _slot4;
|
|
233
251
|
return withDirectives(createVNode("div", {
|
|
234
252
|
"class": [ns.b("scroll"), ns.e("content")],
|
|
235
253
|
"infinite-scroll-distance": 10,
|
|
236
|
-
"infinite-scroll-disabled": isLodeMoreDisabled.value
|
|
237
|
-
|
|
254
|
+
"infinite-scroll-disabled": isLodeMoreDisabled.value,
|
|
255
|
+
"ref": "infiniteScroll",
|
|
256
|
+
"key": infiniteScrollKey.value
|
|
257
|
+
}, [renderDataViewContent(), c.model.pagingMode === 3 && !(c.state.items.length >= c.state.total || c.state.isLoading || c.state.total <= c.state.size) && createVNode("div", {
|
|
258
|
+
"class": ns.e("load-more-button")
|
|
259
|
+
}, [createVNode(resolveComponent("el-button"), {
|
|
260
|
+
"text": true,
|
|
261
|
+
"onClick": () => c.loadMore()
|
|
262
|
+
}, _isSlot(_slot4 = ibiz.i18n.t("control.common.loadMore")) ? _slot4 : {
|
|
263
|
+
default: () => [_slot4]
|
|
264
|
+
})])]), [[resolveDirective("infinite-scroll"), () => c.loadMore()]]);
|
|
238
265
|
};
|
|
239
266
|
const renderNoData = () => {
|
|
240
267
|
const {
|
|
@@ -254,6 +281,7 @@ const DataViewControl = /* @__PURE__ */ defineComponent({
|
|
|
254
281
|
c,
|
|
255
282
|
ns,
|
|
256
283
|
classNames,
|
|
284
|
+
infiniteScroll,
|
|
257
285
|
renderHasData,
|
|
258
286
|
renderNoData,
|
|
259
287
|
onPageChange,
|
|
@@ -271,10 +299,12 @@ const DataViewControl = /* @__PURE__ */ defineComponent({
|
|
|
271
299
|
content = [this.c.state.noSort ? null : createVNode(resolveComponent("iBizSortBar"), {
|
|
272
300
|
"onSortChange": (item, order) => {
|
|
273
301
|
this.c.setSort(item.key, order);
|
|
274
|
-
this.c.load(
|
|
302
|
+
this.c.load({
|
|
303
|
+
isInitialLoad: this.c.model.pagingMode === 2 || this.c.model.pagingMode === 3
|
|
304
|
+
});
|
|
275
305
|
},
|
|
276
306
|
"sortItems": this.c.state.sortItems
|
|
277
|
-
}, null), items.length > 0 ? this.renderHasData() : this.renderNoData(), this.c.state.enablePagingBar ? createVNode(resolveComponent("iBizPagination"), {
|
|
307
|
+
}, null), items.length > 0 ? this.renderHasData() : this.renderNoData(), this.c.state.enablePagingBar && this.c.model.pagingMode === 1 ? createVNode(resolveComponent("iBizPagination"), {
|
|
278
308
|
"class": this.ns.e("pagination"),
|
|
279
309
|
"total": this.c.state.total,
|
|
280
310
|
"curPage": this.c.state.curPage,
|
|
@@ -31,6 +31,7 @@ export declare const IBizDataViewControl: import("@ibiz-template/vue3-util").Typ
|
|
|
31
31
|
c: import("@ibiz-template/runtime").DataViewControlController<import("@ibiz/model-core").IDEDataView, import("@ibiz-template/runtime").IDataViewControlState, import("@ibiz-template/runtime").IMDControlEvent>;
|
|
32
32
|
ns: import("@ibiz-template/core").Namespace;
|
|
33
33
|
classNames: import("vue").ComputedRef<string[]>;
|
|
34
|
+
infiniteScroll: import("vue").Ref<IData | undefined>;
|
|
34
35
|
renderHasData: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
35
36
|
[key: string]: any;
|
|
36
37
|
}>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { DRTabController } from './drtab.controller';
|
|
3
|
+
/**
|
|
4
|
+
* 获取显示内容
|
|
5
|
+
*
|
|
6
|
+
* @author ljx
|
|
7
|
+
* @date 2024-06-12 17:09:09
|
|
8
|
+
* @export
|
|
9
|
+
* @param {DRTabController} c
|
|
10
|
+
* @param {Ref<IData | undefined>} controlRef
|
|
11
|
+
* @param {IData} counterData
|
|
12
|
+
* @returns {*}
|
|
13
|
+
*/
|
|
14
|
+
export declare function useAppDRTab(c: DRTabController, controlRef: Ref<IData | undefined>, counterData: IData): {
|
|
15
|
+
visibleItems: Ref<IData>;
|
|
16
|
+
moreItems: Ref<IData>;
|
|
17
|
+
};
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { ref, watch, watchEffect, onUnmounted } from 'vue';
|
|
2
|
+
import { defaultNamespace } from '../../node_modules/.pnpm/@ibiz-template_core@0.7.18_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs';
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
function useAppDRTab(c, controlRef, counterData) {
|
|
6
|
+
let resizeObserver = null;
|
|
7
|
+
let lastDrTabWidth = 0;
|
|
8
|
+
const visibleItems = ref([]);
|
|
9
|
+
const moreItems = ref([]);
|
|
10
|
+
const calcDomWidth = (text, style = {}) => {
|
|
11
|
+
let domWidth = 0;
|
|
12
|
+
const dom = document.createElement("span");
|
|
13
|
+
const sonDom = document.createElement("span");
|
|
14
|
+
sonDom.innerHTML = text;
|
|
15
|
+
Object.assign(sonDom.style, style);
|
|
16
|
+
Object.assign(dom.style, {
|
|
17
|
+
width: "auto",
|
|
18
|
+
position: "absolute",
|
|
19
|
+
left: "-9999px"
|
|
20
|
+
});
|
|
21
|
+
dom.appendChild(sonDom);
|
|
22
|
+
document.body.appendChild(dom);
|
|
23
|
+
domWidth = dom.offsetWidth;
|
|
24
|
+
document.body.removeChild(dom);
|
|
25
|
+
return domWidth;
|
|
26
|
+
};
|
|
27
|
+
function updateVisibleItems() {
|
|
28
|
+
const { drTabPages, showMore } = c.state;
|
|
29
|
+
if (!controlRef.value || !showMore || drTabPages.length === 0) {
|
|
30
|
+
visibleItems.value = drTabPages;
|
|
31
|
+
moreItems.value = [];
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const totalDom = controlRef.value.$el;
|
|
35
|
+
const totalWidth = totalDom.offsetWidth;
|
|
36
|
+
let accumulatedWidth = 0;
|
|
37
|
+
let splitIndex = -1;
|
|
38
|
+
drTabPages.forEach((tab, index) => {
|
|
39
|
+
if (splitIndex === -1) {
|
|
40
|
+
const caption = tab.caption || "";
|
|
41
|
+
const counterNum = tab.counterId ? counterData[tab.counterId] : void 0;
|
|
42
|
+
const fontSize = "var(--".concat(defaultNamespace, "-font-size-regular)");
|
|
43
|
+
if (counterNum != null && !(!counterNum && counterNum !== 0) && !(tab.counterMode === 1 && counterNum <= 0)) {
|
|
44
|
+
const counterStyle = {
|
|
45
|
+
marginLeft: "var(--".concat(defaultNamespace, "-spacing-tight)"),
|
|
46
|
+
minWidth: "20px",
|
|
47
|
+
fontSize
|
|
48
|
+
};
|
|
49
|
+
const counterWidth = calcDomWidth(String(counterNum), counterStyle);
|
|
50
|
+
accumulatedWidth += counterWidth;
|
|
51
|
+
}
|
|
52
|
+
const tabStyle = {
|
|
53
|
+
padding: index === 0 ? "0 var(--".concat(defaultNamespace, "-spacing-base) 0 0") : "0 var(--".concat(defaultNamespace, "-spacing-base)"),
|
|
54
|
+
fontSize
|
|
55
|
+
};
|
|
56
|
+
const tabWidth = calcDomWidth(caption, tabStyle);
|
|
57
|
+
accumulatedWidth += tabWidth;
|
|
58
|
+
const moreStyle = {
|
|
59
|
+
padding: "0 0 0 var(--".concat(defaultNamespace, "-spacing-base)"),
|
|
60
|
+
fontSize
|
|
61
|
+
};
|
|
62
|
+
const moreWidth = calcDomWidth(
|
|
63
|
+
"".concat(ibiz.i18n.t("app.more"), " ^"),
|
|
64
|
+
moreStyle
|
|
65
|
+
);
|
|
66
|
+
if (accumulatedWidth + moreWidth > totalWidth) {
|
|
67
|
+
splitIndex = index;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
if (splitIndex !== -1) {
|
|
72
|
+
visibleItems.value = drTabPages.slice(0, splitIndex);
|
|
73
|
+
moreItems.value = drTabPages.slice(splitIndex);
|
|
74
|
+
} else {
|
|
75
|
+
visibleItems.value = drTabPages;
|
|
76
|
+
moreItems.value = [];
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
const calcDrTabWidth = () => {
|
|
80
|
+
if (window.ResizeObserver) {
|
|
81
|
+
const drTabDom = controlRef.value.$el;
|
|
82
|
+
if (drTabDom) {
|
|
83
|
+
resizeObserver = new ResizeObserver((entries) => {
|
|
84
|
+
const width = entries[0].contentRect.width;
|
|
85
|
+
if (width !== lastDrTabWidth) {
|
|
86
|
+
updateVisibleItems();
|
|
87
|
+
lastDrTabWidth = width;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
resizeObserver.observe(drTabDom);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
watch(
|
|
95
|
+
() => c.state.drTabPages,
|
|
96
|
+
() => {
|
|
97
|
+
updateVisibleItems();
|
|
98
|
+
},
|
|
99
|
+
{ deep: true }
|
|
100
|
+
);
|
|
101
|
+
const stop = watchEffect(() => {
|
|
102
|
+
if (controlRef.value) {
|
|
103
|
+
calcDrTabWidth();
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
onUnmounted(() => {
|
|
107
|
+
if (resizeObserver) {
|
|
108
|
+
resizeObserver.disconnect();
|
|
109
|
+
}
|
|
110
|
+
stop();
|
|
111
|
+
});
|
|
112
|
+
return { visibleItems, moreItems };
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export { useAppDRTab };
|
|
@@ -74,6 +74,13 @@ export declare class DRTabController extends ControlController<IDEDRTab, IDRTabS
|
|
|
74
74
|
* @memberof DRTabController
|
|
75
75
|
*/
|
|
76
76
|
onCreated(): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* 部件参数解析
|
|
79
|
+
*
|
|
80
|
+
* @protected
|
|
81
|
+
* @memberof ControlController
|
|
82
|
+
*/
|
|
83
|
+
protected handleControlParams(): void;
|
|
77
84
|
/**
|
|
78
85
|
* 通过计数器数据,计算项状态
|
|
79
86
|
*
|
|
@@ -84,6 +84,7 @@ class DRTabController extends ControlController {
|
|
|
84
84
|
initState() {
|
|
85
85
|
super.initState();
|
|
86
86
|
this.state.drTabPages = [];
|
|
87
|
+
this.state.showMore = false;
|
|
87
88
|
}
|
|
88
89
|
/**
|
|
89
90
|
* 创建完成
|
|
@@ -95,6 +96,18 @@ class DRTabController extends ControlController {
|
|
|
95
96
|
await super.onCreated();
|
|
96
97
|
await this.initCounter();
|
|
97
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* 部件参数解析
|
|
101
|
+
*
|
|
102
|
+
* @protected
|
|
103
|
+
* @memberof ControlController
|
|
104
|
+
*/
|
|
105
|
+
handleControlParams() {
|
|
106
|
+
super.handleControlParams();
|
|
107
|
+
if (this.controlParams.showmore) {
|
|
108
|
+
this.state.showMore = this.controlParams.showmore === "true";
|
|
109
|
+
}
|
|
110
|
+
}
|
|
98
111
|
/**
|
|
99
112
|
* 通过计数器数据,计算项状态
|
|
100
113
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-drtab__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab .el-tabs .el-tabs__header{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__active-bar{background-color:var(--ibiz-color-primary)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item:hover{color:var(--ibiz-color-text-0)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-active{color:var(--ibiz-color-primary)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:last-child{padding-right:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs.el-tabs--bottom .el-tabs__nav-scroll,.ibiz-control-drtab .el-tabs.el-tabs--top .el-tabs__nav-scroll{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__item{padding:0 var(--ibiz-spacing-base)}
|
|
1
|
+
.ibiz-control-drtab__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab .el-tabs .el-tabs__header{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__active-bar{background-color:var(--ibiz-color-primary)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item:hover{color:var(--ibiz-color-text-0)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-active{color:var(--ibiz-color-primary)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:last-child{padding-right:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs.el-tabs--bottom .el-tabs__nav-scroll,.ibiz-control-drtab .el-tabs.el-tabs--top .el-tabs__nav-scroll{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__item{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__nav-next,.ibiz-control-drtab .el-tabs__nav-prev{line-height:var(--el-tabs-header-height)}.ibiz-control-drtab-pane-label__text+.ibiz-control-drtab-pane-label__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab-more .el-tabs.el-tabs.el-tabs--top .el-tabs__header .el-tabs__nav-next,.ibiz-control-drtab-more .el-tabs.el-tabs.el-tabs--top .el-tabs__header .el-tabs__nav-prev{display:none}.ibiz-control-drtab-more .el-tabs.el-tabs.el-tabs--top .el-tabs__nav-wrap.is-scrollable{padding:var(--ibiz-spacing-none)}.ibiz-control-drtab-more-dropdown{height:100%}.ibiz-control-drtab-more-dropdown__link{position:relative;display:flex;align-items:center;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-drtab-more-dropdown__link svg{color:var(--ibiz-color-text-2);fill:var(--ibiz-color-text-2)}.ibiz-control-drtab-more-dropdown__link:hover{color:var(--ibiz-color-text-0)}.ibiz-control-drtab-more-dropdown__link:hover svg{color:var(--ibiz-color-text-0);fill:var(--ibiz-color-text-0)}.ibiz-control-drtab-more-dropdown__link::after{position:absolute;left:-16px;display:inline-block;width:100%;height:100%;content:""}.ibiz-control-drtab-more-dropdown-popper{width:240px}.ibiz-control-drtab-more-dropdown-popper__active{background-color:var(--ibiz-color-primary-active)}.ibiz-control-drtab-more-dropdown-popper__label{display:flex;align-items:center;width:100%;overflow:hidden}.ibiz-control-drtab-more-dropdown-popper__label--text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-drtab-more-dropdown-popper__label--counter{min-width:20px;margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab-more-dropdown-popper.el-popper.el-dropdown__popper .el-scrollbar .el-dropdown__list .ibiz-control-drtab-more-dropdown-popper__active.el-dropdown-menu__item{background-color:var(--ibiz-color-primary-active)}
|
|
@@ -22,8 +22,12 @@ export declare const DRTabControl: import("vue").DefineComponent<{
|
|
|
22
22
|
}, {
|
|
23
23
|
c: DRTabController;
|
|
24
24
|
ns: import("@ibiz-template/core").Namespace;
|
|
25
|
+
controlRef: import("vue").Ref<any>;
|
|
25
26
|
counterData: IData;
|
|
27
|
+
visibleItems: import("vue").Ref<IData>;
|
|
28
|
+
moreItems: import("vue").Ref<IData>;
|
|
26
29
|
handleTabChange: () => void;
|
|
30
|
+
handleMoreChange: (key: string) => void;
|
|
27
31
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
28
32
|
modelData: {
|
|
29
33
|
type: PropType<IDEDRTab>;
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ref, reactive, onUnmounted, watch, resolveComponent, createTextVNode, createVNode, defineComponent } from 'vue';
|
|
2
2
|
import { useControlController, useNamespace, getNestedRoutePath, route2routePath } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { useRouter, useRoute } from 'vue-router';
|
|
4
4
|
import { hasSubRoute } from '@ibiz-template/runtime';
|
|
5
5
|
import { isNil } from 'ramda';
|
|
6
6
|
import { DRTabController } from './drtab.controller.mjs';
|
|
7
7
|
import './drtab.css';
|
|
8
|
+
import { useAppDRTab } from './drtab-control.util.mjs';
|
|
8
9
|
|
|
9
10
|
"use strict";
|
|
10
|
-
function _isSlot(s) {
|
|
11
|
-
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
12
|
-
}
|
|
13
11
|
const DRTabControl = /* @__PURE__ */ defineComponent({
|
|
14
12
|
name: "IBizDrTabControl",
|
|
15
13
|
props: {
|
|
@@ -33,7 +31,12 @@ const DRTabControl = /* @__PURE__ */ defineComponent({
|
|
|
33
31
|
const c = useControlController((...args) => new DRTabController(...args));
|
|
34
32
|
const ns = useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
35
33
|
const router = useRouter();
|
|
34
|
+
const controlRef = ref();
|
|
36
35
|
const counterData = reactive({});
|
|
36
|
+
const {
|
|
37
|
+
visibleItems,
|
|
38
|
+
moreItems
|
|
39
|
+
} = useAppDRTab(c, controlRef, counterData);
|
|
37
40
|
const fn = (counter) => {
|
|
38
41
|
Object.assign(counterData, counter);
|
|
39
42
|
};
|
|
@@ -50,6 +53,10 @@ const DRTabControl = /* @__PURE__ */ defineComponent({
|
|
|
50
53
|
const handleTabChange = () => {
|
|
51
54
|
c.handleTabChange();
|
|
52
55
|
};
|
|
56
|
+
const handleMoreChange = (key) => {
|
|
57
|
+
c.state.activeName = key;
|
|
58
|
+
c.handleTabChange();
|
|
59
|
+
};
|
|
53
60
|
const route = useRoute();
|
|
54
61
|
let expViewRoutePath = "";
|
|
55
62
|
if (c.routeDepth) {
|
|
@@ -86,50 +93,104 @@ const DRTabControl = /* @__PURE__ */ defineComponent({
|
|
|
86
93
|
return {
|
|
87
94
|
c,
|
|
88
95
|
ns,
|
|
96
|
+
controlRef,
|
|
89
97
|
counterData,
|
|
90
|
-
|
|
98
|
+
visibleItems,
|
|
99
|
+
moreItems,
|
|
100
|
+
handleTabChange,
|
|
101
|
+
handleMoreChange
|
|
91
102
|
};
|
|
92
103
|
},
|
|
93
104
|
render() {
|
|
94
|
-
let _slot;
|
|
95
105
|
const {
|
|
96
106
|
isCreated,
|
|
97
|
-
drTabPages,
|
|
98
107
|
isCalculatedPermission
|
|
99
108
|
} = this.c.state;
|
|
109
|
+
const moreTab = this.moreItems.find((tab) => tab.tag === this.c.state.activeName) || {};
|
|
110
|
+
const more = createVNode(resolveComponent("el-dropdown"), {
|
|
111
|
+
"trigger": "click",
|
|
112
|
+
"class": this.ns.b("more-dropdown"),
|
|
113
|
+
"popper-class": this.ns.b("more-dropdown-popper")
|
|
114
|
+
}, {
|
|
115
|
+
default: () => {
|
|
116
|
+
return createVNode("div", {
|
|
117
|
+
"class": this.ns.be("more-dropdown", "link"),
|
|
118
|
+
"onClick": (e) => e.stopPropagation()
|
|
119
|
+
}, [createVNode("span", null, [ibiz.i18n.t("app.more"), createTextVNode(" ")]), createVNode("svg", {
|
|
120
|
+
"viewBox": "0 0 16 16",
|
|
121
|
+
"xmlns": "http://www.w3.org/2000/svg",
|
|
122
|
+
"height": "1em",
|
|
123
|
+
"width": "1em"
|
|
124
|
+
}, [createVNode("g", {
|
|
125
|
+
"stroke-width": "1",
|
|
126
|
+
"fill-rule": "evenodd"
|
|
127
|
+
}, [createVNode("path", {
|
|
128
|
+
"d": "M7.978 11.997l-.005.006L2.3 6.33l.83-.831 4.848 4.848L12.826 5.5l.83.83-5.673 5.673-.005-.006z"
|
|
129
|
+
}, null)])])]);
|
|
130
|
+
},
|
|
131
|
+
dropdown: () => {
|
|
132
|
+
return createVNode(resolveComponent("el-dropdown-menu"), null, {
|
|
133
|
+
default: () => {
|
|
134
|
+
return this.moreItems.map((item) => {
|
|
135
|
+
return createVNode(resolveComponent("el-dropdown-item"), {
|
|
136
|
+
"class": [this.c.state.activeName === item.tag ? this.ns.be("more-dropdown-popper", "active") : ""],
|
|
137
|
+
"onClick": () => this.handleMoreChange(item.tag)
|
|
138
|
+
}, {
|
|
139
|
+
default: () => [createVNode("span", {
|
|
140
|
+
"class": [this.ns.be("more-dropdown-popper", "label")]
|
|
141
|
+
}, [createVNode("span", {
|
|
142
|
+
"class": this.ns.bem("more-dropdown-popper", "label", "text"),
|
|
143
|
+
"title": item.caption || ""
|
|
144
|
+
}, [item.caption || ""]), item.counterId && this.counterData[item.counterId] != null && createVNode(resolveComponent("iBizBadge"), {
|
|
145
|
+
"class": this.ns.bem("more-dropdown-popper", "label", "counter"),
|
|
146
|
+
"value": this.counterData[item.counterId],
|
|
147
|
+
"counterMode": item.counterMode
|
|
148
|
+
}, null)])]
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
});
|
|
100
155
|
return createVNode(resolveComponent("iBizControlBase"), {
|
|
156
|
+
"ref": "controlRef",
|
|
101
157
|
"controller": this.c,
|
|
102
|
-
"class": this.ns.b()
|
|
158
|
+
"class": [this.ns.b(), this.moreItems.length > 0 ? this.ns.b("more") : ""]
|
|
103
159
|
}, {
|
|
104
160
|
default: () => [isCreated && isCalculatedPermission && createVNode(resolveComponent("el-tabs"), {
|
|
105
161
|
"modelValue": this.c.state.activeName,
|
|
106
162
|
"onUpdate:modelValue": ($event) => this.c.state.activeName = $event,
|
|
107
163
|
"onTabChange": this.handleTabChange
|
|
108
|
-
},
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
164
|
+
}, {
|
|
165
|
+
default: () => [this.visibleItems.map((tab) => {
|
|
166
|
+
const counterNum = tab.counterId ? this.counterData[tab.counterId] : void 0;
|
|
167
|
+
if (!tab.hidden) {
|
|
168
|
+
return createVNode(resolveComponent("el-tab-pane"), {
|
|
169
|
+
"class": this.ns.e("tab-item"),
|
|
170
|
+
"label": tab.caption + counterNum,
|
|
171
|
+
"disabled": tab.disabled,
|
|
172
|
+
"name": tab.tag
|
|
173
|
+
}, {
|
|
174
|
+
label: () => {
|
|
175
|
+
return createVNode("span", {
|
|
176
|
+
"class": this.ns.b("label")
|
|
177
|
+
}, [createVNode("span", {
|
|
178
|
+
"class": this.ns.be("label", "text")
|
|
179
|
+
}, [tab.caption]), !isNil(counterNum) && createVNode(resolveComponent("iBizBadge"), {
|
|
180
|
+
"class": this.ns.e("counter"),
|
|
181
|
+
"value": counterNum,
|
|
182
|
+
"counterMode": tab.counterMode
|
|
183
|
+
}, null)]);
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
return null;
|
|
188
|
+
}), this.moreItems.length > 0 && createVNode(resolveComponent("el-tab-pane"), {
|
|
189
|
+
"label": "",
|
|
190
|
+
"name": moreTab.tag
|
|
191
|
+
}, {
|
|
192
|
+
label: () => more
|
|
193
|
+
})]
|
|
133
194
|
})]
|
|
134
195
|
});
|
|
135
196
|
}
|
|
@@ -18,8 +18,12 @@ export declare const IBizDRTabControl: import("@ibiz-template/vue3-util").TypeWi
|
|
|
18
18
|
}, {
|
|
19
19
|
c: import("./drtab.controller").DRTabController;
|
|
20
20
|
ns: import("@ibiz-template/core").Namespace;
|
|
21
|
+
controlRef: import("vue").Ref<any>;
|
|
21
22
|
counterData: IData;
|
|
23
|
+
visibleItems: import("vue").Ref<IData>;
|
|
24
|
+
moreItems: import("vue").Ref<IData>;
|
|
22
25
|
handleTabChange: () => void;
|
|
26
|
+
handleMoreChange: (key: string) => void;
|
|
23
27
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
24
28
|
modelData: {
|
|
25
29
|
type: import("vue").PropType<import("@ibiz/model-core").IDEDRTab>;
|
|
@@ -14599,6 +14599,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
|
|
|
14599
14599
|
modelType?: string | undefined;
|
|
14600
14600
|
} | undefined;
|
|
14601
14601
|
enableAutoSave?: boolean | undefined;
|
|
14602
|
+
enableCustomized?: boolean | undefined;
|
|
14602
14603
|
infoFormMode?: boolean | undefined;
|
|
14603
14604
|
showFormNavBar?: boolean | undefined;
|
|
14604
14605
|
formFuncMode?: string | undefined;
|
|
@@ -73,7 +73,9 @@ function useITableEvent(c) {
|
|
|
73
73
|
return;
|
|
74
74
|
}
|
|
75
75
|
c.setSort(fieldName, order1);
|
|
76
|
-
c.load(
|
|
76
|
+
c.load({
|
|
77
|
+
isInitialLoad: c.model.pagingMode === 2 || c.model.pagingMode === 3
|
|
78
|
+
});
|
|
77
79
|
}
|
|
78
80
|
function handleRowClassName({ row }) {
|
|
79
81
|
let activeClassName = "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-grid{--ibiz-control-grid-text-color:var(--ibiz-color-text-0);--ibiz-control-grid-bg-color:transparent;--ibiz-control-grid-padding:var(--ibiz-spacing-none);--ibiz-control-grid-cell-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-control-grid-selection-padding:var(--ibiz-spacing-base-loose);--ibiz-control-grid-row-edit-bg-color:var(--ibiz-color-fill-2);--ibiz-control-grid-row-bg-color:var(--ibiz-color-bg-1);--ibiz-control-grid-row-bg-color-2:var(--ibiz-color-bg-0);--ibiz-control-grid-row-hover-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-row-select-color:var(--ibiz-color-primary-light-default);--ibiz-control-grid-row-expand-icon-margin:var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-tight);--ibiz-control-grid-now-header-height:auto;--ibiz-control-grid-header-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-header-cell-padding:var(--ibiz-control-grid-cell-padding);--ibiz-control-grid-header-height:auto;--ibiz-control-grid-header-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-header-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-header-font-weight:var(--ibiz-font-weight-regular);--ibiz-control-grid-content-text-color:var(--ibiz-control-grid-text-color);--ibiz-control-grid-content-row-height:48px;--ibiz-control-grid-page-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-page-height:50px;--ibiz-control-grid-page-padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base-tight);--ibiz-control-grid-footer-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-footer-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-footer-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-footer-font-weight:var(--ibiz-font-weight-bold);position:relative;width:100%;height:100%;padding:var(--ibiz-control-grid-padding);background-color:var(--ibiz-control-grid-bg-color)}.ibiz-control-grid .el-table{--el-table-header-bg-color:var(--ibiz-control-grid-header-bg-color);--el-table-current-row-bg-color:var(--ibiz-control-grid-row-select-color);--el-table-border-color:transparent}.ibiz-control-grid.is-empty .el-scrollbar .el-scrollbar__view{height:100%}.ibiz-control-grid.is-empty .el-table__empty-text{display:inline-block;height:100%}.ibiz-control-grid .el-table--border .el-table__cell{border-right:none}.ibiz-control-grid .el-table-fixed-column--left,.ibiz-control-grid .el-table-fixed-column--right{--el-bg-color:transparent}.ibiz-control-grid .el-table thead.is-group th.el-table__cell{background:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-page .ibiz-control-grid__table{height:calc(100% - var(--ibiz-control-grid-page-height))}.ibiz-control-grid.is-enable-group .el-table__indent{display:none}.ibiz-control-grid__table{width:100%;height:100%}.ibiz-control-grid__table .caret-wrapper{justify-content:center}.ibiz-control-grid__table .caret-wrapper>*+*{margin-top:var(--ibiz-spacing-super-tight)}.ibiz-control-grid__table .sort-caret{--el-text-color-placeholder:--ibiz-control-grid-header-text-color;position:initial;opacity:.6}.ibiz-control-grid__table.el-table .el-table__cell{padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr td{background:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:nth-child(2n) td{background-color:var(--ibiz-control-grid-row-bg-color-2)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:hover td{background-color:var(--ibiz-control-grid-row-hover-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.current-row td{background-color:var(--el-table-current-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.editing-row td{background-color:var(--ibiz-control-grid-row-edit-bg-color)}.ibiz-control-grid__table .el-table__header-wrapper .cell{height:var(--ibiz-control-grid-header-height);padding:var(--ibiz-control-grid-header-cell-padding);font-size:var(--ibiz-control-grid-header-font-size);font-weight:var(--ibiz-control-grid-header-font-weight);color:var(--ibiz-control-grid-header-text-color);word-break:break-word;white-space:pre-wrap}.ibiz-control-grid__table .el-table__header-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__header-wrapper .is-sortable.el-table__cell .cell{display:flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content)}.ibiz-control-grid__table .el-table__body-wrapper{color:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-0:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-1:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-2:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-3:var(--ibiz-control-grid-content-text-color);border-bottom:.1px solid var(--ibiz-color-border)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row{height:var(--ibiz-control-grid-content-row-height);cursor:pointer}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:0;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row .el-table__expand-icon{margin:var(--ibiz-control-grid-row-expand-icon-margin)}@-moz-document url-prefix(){.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:100%}}.ibiz-control-grid__table .el-table__body-wrapper .cell{display:flex;align-items:center;height:100%;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__cell.is-center{--ibiz-grid-column-text-align:center;--ibiz-grid-column-justify-content:center}.ibiz-control-grid__table .el-table__cell.is-left{--ibiz-grid-column-text-align:left;--ibiz-grid-column-justify-content:flex-start}.ibiz-control-grid__table .el-table__cell.is-right{--ibiz-grid-column-text-align:right;--ibiz-grid-column-justify-content:flex-end}.ibiz-control-grid__table .el-scrollbar__wrap{position:relative}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell{font-size:var(--ibiz-control-grid-footer-font-size);font-weight:var(--ibiz-control-grid-footer-font-weight);color:var(--ibiz-control-grid-footer-text-color);background-color:var(--ibiz-control-grid-footer-bg-color)}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell:first-child>div{display:inline;vertical-align:4px}.ibiz-control-grid__table .enable-order{position:relative;padding-left:var(--ibiz-spacing-base-tight);transition:transform .25s cubic-bezier(0,0,.2,1)}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon{padding:var(--ibiz-spacing-none)!important}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon .cell{display:none}.ibiz-control-grid__table .enable-order:hover .ibiz-control-grid__drag-icon .cell{display:flex}.ibiz-control-grid .el-table td.el-table__cell,.ibiz-control-grid .el-table th.el-table__cell.is-leaf{border-bottom:none}.ibiz-control-grid .ibiz-pagination{--ibiz-pagination-height:var(--ibiz-control-grid-page-height);--ibiz-pagination-text-color:var(--ibiz-control-grid-text-color);--ibiz-pagination-padding:var(--ibiz-control-grid-page-padding)}.ibiz-control-grid.is-single-select .el-table__header-wrapper .el-table__header thead>tr th:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-single-select .el-table__body-wrapper .el-table__body tbody>tr td:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-enable-customized .el-table__header-wrapper .el-table__header thead>tr th:last-child{padding-right:var(--ibiz-spacing-base-loose)}.ibiz-control-grid.is-enable-customized .ibiz-control-grid-setting-box{display:flex;align-items:center;justify-content:flex-start;position:absolute;top:0;right:0;z-index:1;height:var(--ibiz-control-grid-now-header-height);padding-right:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-customized .ibiz-grid-setting{cursor:pointer}.ibiz-control-grid-quick-toolbar{justify-content:center}.ibiz-control-grid-batch-toolbar{position:absolute;top:0;left:54px;z-index:99;display:none;width:calc(100% - 54px);height:var(--ibiz-control-grid-now-header-height);font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid-batch-toolbar.is-show{display:flex;align-items:center;justify-content:flex-start}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-separator{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-content{height:100%;display:flex;align-items:center;justify-content:flex-start}
|
|
1
|
+
.ibiz-control-grid{--ibiz-control-grid-text-color:var(--ibiz-color-text-0);--ibiz-control-grid-bg-color:transparent;--ibiz-control-grid-padding:var(--ibiz-spacing-none);--ibiz-control-grid-cell-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-control-grid-selection-padding:var(--ibiz-spacing-base-loose);--ibiz-control-grid-row-edit-bg-color:var(--ibiz-color-fill-2);--ibiz-control-grid-row-bg-color:var(--ibiz-color-bg-1);--ibiz-control-grid-row-bg-color-2:var(--ibiz-color-bg-0);--ibiz-control-grid-row-hover-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-row-select-color:var(--ibiz-color-primary-light-default);--ibiz-control-grid-row-expand-icon-margin:var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-tight);--ibiz-control-grid-now-header-height:auto;--ibiz-control-grid-header-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-header-cell-padding:var(--ibiz-control-grid-cell-padding);--ibiz-control-grid-header-height:auto;--ibiz-control-grid-header-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-header-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-header-font-weight:var(--ibiz-font-weight-regular);--ibiz-control-grid-content-text-color:var(--ibiz-control-grid-text-color);--ibiz-control-grid-content-row-height:48px;--ibiz-control-grid-page-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-page-height:50px;--ibiz-control-grid-page-padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base-tight);--ibiz-control-grid-footer-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-footer-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-footer-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-footer-font-weight:var(--ibiz-font-weight-bold);position:relative;width:100%;height:100%;padding:var(--ibiz-control-grid-padding);background-color:var(--ibiz-control-grid-bg-color)}.ibiz-control-grid .el-table{--el-table-header-bg-color:var(--ibiz-control-grid-header-bg-color);--el-table-current-row-bg-color:var(--ibiz-control-grid-row-select-color);--el-table-border-color:transparent}.ibiz-control-grid.is-empty .el-scrollbar .el-scrollbar__view{height:100%}.ibiz-control-grid.is-empty .el-table__empty-text{display:inline-block;height:100%}.ibiz-control-grid .el-table--border .el-table__cell{border-right:none}.ibiz-control-grid .el-table-fixed-column--left,.ibiz-control-grid .el-table-fixed-column--right{--el-bg-color:transparent}.ibiz-control-grid .el-table thead.is-group th.el-table__cell{background:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-page .ibiz-control-grid__table{height:calc(100% - var(--ibiz-control-grid-page-height))}.ibiz-control-grid.is-enable-group .el-table__indent{display:none}.ibiz-control-grid__table{width:100%;height:100%}.ibiz-control-grid__table .caret-wrapper{justify-content:center}.ibiz-control-grid__table .caret-wrapper>*+*{margin-top:var(--ibiz-spacing-super-tight)}.ibiz-control-grid__table .sort-caret{--el-text-color-placeholder:--ibiz-control-grid-header-text-color;position:initial;opacity:.6}.ibiz-control-grid__table.el-table .el-table__cell{padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr td{background:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:nth-child(2n) td{background-color:var(--ibiz-control-grid-row-bg-color-2)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:hover td{background-color:var(--ibiz-control-grid-row-hover-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.current-row td{background-color:var(--el-table-current-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.editing-row td{background-color:var(--ibiz-control-grid-row-edit-bg-color)}.ibiz-control-grid__table .el-table__header-wrapper .cell{height:var(--ibiz-control-grid-header-height);padding:var(--ibiz-control-grid-header-cell-padding);font-size:var(--ibiz-control-grid-header-font-size);font-weight:var(--ibiz-control-grid-header-font-weight);color:var(--ibiz-control-grid-header-text-color);word-break:break-word;white-space:pre-wrap}.ibiz-control-grid__table .el-table__header-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__header-wrapper .is-sortable.el-table__cell .cell{display:flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content)}.ibiz-control-grid__table .el-table__body-wrapper{color:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-0:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-1:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-2:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-3:var(--ibiz-control-grid-content-text-color);border-bottom:.1px solid var(--ibiz-color-border)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row{height:var(--ibiz-control-grid-content-row-height);cursor:pointer}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:0;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row .el-table__expand-icon{margin:var(--ibiz-control-grid-row-expand-icon-margin)}@-moz-document url-prefix(){.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:100%}}.ibiz-control-grid__table .el-table__body-wrapper .cell{display:flex;align-items:center;height:100%;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__cell.is-center{--ibiz-grid-column-text-align:center;--ibiz-grid-column-justify-content:center}.ibiz-control-grid__table .el-table__cell.is-left{--ibiz-grid-column-text-align:left;--ibiz-grid-column-justify-content:flex-start}.ibiz-control-grid__table .el-table__cell.is-right{--ibiz-grid-column-text-align:right;--ibiz-grid-column-justify-content:flex-end}.ibiz-control-grid__table .el-scrollbar__wrap{position:relative}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell{font-size:var(--ibiz-control-grid-footer-font-size);font-weight:var(--ibiz-control-grid-footer-font-weight);color:var(--ibiz-control-grid-footer-text-color);background-color:var(--ibiz-control-grid-footer-bg-color)}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell:first-child>div{display:inline;vertical-align:4px}.ibiz-control-grid__table .enable-order{position:relative;padding-left:var(--ibiz-spacing-base-tight);transition:transform .25s cubic-bezier(0,0,.2,1)}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon{padding:var(--ibiz-spacing-none)!important}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon .cell{display:none}.ibiz-control-grid__table .enable-order:hover .ibiz-control-grid__drag-icon .cell{display:flex}.ibiz-control-grid__load-more-button{padding:var(--ibiz-control-grid-header-cell-padding);text-align:center}.ibiz-control-grid .el-table td.el-table__cell,.ibiz-control-grid .el-table th.el-table__cell.is-leaf{border-bottom:none}.ibiz-control-grid .ibiz-pagination{--ibiz-pagination-height:var(--ibiz-control-grid-page-height);--ibiz-pagination-text-color:var(--ibiz-control-grid-text-color);--ibiz-pagination-padding:var(--ibiz-control-grid-page-padding)}.ibiz-control-grid.is-single-select .el-table__header-wrapper .el-table__header thead>tr th:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-single-select .el-table__body-wrapper .el-table__body tbody>tr td:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-enable-customized .el-table__header-wrapper .el-table__header thead>tr th:last-child{padding-right:var(--ibiz-spacing-base-loose)}.ibiz-control-grid.is-enable-customized .ibiz-control-grid-setting-box{display:flex;align-items:center;justify-content:flex-start;position:absolute;top:0;right:0;z-index:1;height:var(--ibiz-control-grid-now-header-height);padding-right:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-customized .ibiz-grid-setting{cursor:pointer}.ibiz-control-grid-quick-toolbar{justify-content:center}.ibiz-control-grid-batch-toolbar{position:absolute;top:0;left:54px;z-index:99;display:none;width:calc(100% - 54px);height:var(--ibiz-control-grid-now-header-height);font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid-batch-toolbar.is-show{display:flex;align-items:center;justify-content:flex-start}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-separator{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-content{height:100%;display:flex;align-items:center;justify-content:flex-start}
|
|
@@ -102,6 +102,9 @@ export declare const GridControl: import("vue").DefineComponent<{
|
|
|
102
102
|
renderBatchToolBar: () => VNode | undefined;
|
|
103
103
|
headerCssVars: IData;
|
|
104
104
|
renderDragIconColumn: () => JSX.Element;
|
|
105
|
+
isLodeMoreDisabled: import("vue").ComputedRef<boolean>;
|
|
106
|
+
infiniteScroll: import("vue").Ref<IData | undefined>;
|
|
107
|
+
infiniteScrollKey: import("vue").Ref<string>;
|
|
105
108
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
106
109
|
modelData: {
|
|
107
110
|
type: PropType<IDEGrid>;
|