@ibiz-template/vue3-components 0.6.8 → 0.6.10
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-Udkmmoqt.js +4 -0
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/wang-editor-Zc_Y0dGt.js +1 -0
- package/dist/{xlsx-util-Ivrrn3GI.js → xlsx-util-2FgdNqpT.js} +1 -1
- package/es/control/calendar/calendar.css +1 -1
- package/es/control/drbar/drbar.controller.d.ts +14 -0
- package/es/control/drbar/drbar.controller.mjs +57 -4
- package/es/control/drbar/drbar.css +1 -1
- package/es/control/drbar/drbar.d.ts +1 -0
- package/es/control/drbar/drbar.mjs +18 -2
- package/es/control/drbar/index.d.ts +1 -0
- package/es/control/exp-bar/calendar-exp-bar/calendar-exp-bar.d.ts +1 -1
- package/es/control/exp-bar/calendar-exp-bar/calendar-exp-bar.mjs +3 -3
- package/es/control/exp-bar/calendar-exp-bar/index.d.ts +1 -1
- package/es/control/exp-bar/chart-exp-bar/chart-exp-bar.d.ts +1 -1
- package/es/control/exp-bar/chart-exp-bar/chart-exp-bar.mjs +3 -3
- package/es/control/exp-bar/chart-exp-bar/index.d.ts +1 -1
- package/es/control/exp-bar/data-view-exp-bar/data-view-view-exp-bar.d.ts +1 -1
- package/es/control/exp-bar/data-view-exp-bar/data-view-view-exp-bar.mjs +3 -3
- package/es/control/exp-bar/data-view-exp-bar/index.d.ts +1 -1
- package/es/control/exp-bar/grid-exp-bar/grid-exp-bar.d.ts +1 -1
- package/es/control/exp-bar/grid-exp-bar/grid-exp-bar.mjs +3 -3
- package/es/control/exp-bar/grid-exp-bar/index.d.ts +1 -1
- package/es/control/exp-bar/list-exp-bar/index.d.ts +1 -1
- package/es/control/exp-bar/list-exp-bar/list-exp-bar.d.ts +1 -1
- package/es/control/exp-bar/list-exp-bar/list-exp-bar.mjs +3 -3
- package/es/control/exp-bar/render-util.d.ts +2 -2
- package/es/control/exp-bar/render-util.mjs +16 -3
- package/es/control/exp-bar/tree-exp-bar/index.d.ts +1 -1
- package/es/control/exp-bar/tree-exp-bar/tree-exp-bar.d.ts +1 -1
- package/es/control/exp-bar/tree-exp-bar/tree-exp-bar.mjs +3 -3
- package/es/control/form/form/form.mjs +16 -2
- package/es/control/form/form-detail/form-item/form-item.mjs +2 -1
- package/es/control/search-bar/filter-mode-select/filter-mode-select.d.ts +12 -0
- package/es/control/search-bar/filter-mode-select/filter-mode-select.mjs +6 -0
- package/es/control/search-bar/filter-tree/filter-tree.css +1 -1
- package/es/control/search-bar/filter-tree/filter-tree.d.ts +3 -3
- package/es/control/search-bar/filter-tree/filter-tree.mjs +90 -9
- package/es/control/toolbar/toolbar.mjs +12 -2
- package/es/editor/array/ibiz-array/ibiz-array.mjs +5 -5
- package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.mjs +3 -3
- package/es/editor/carousel/ibiz-carousel/ibiz-carousel.mjs +3 -3
- package/es/editor/cascader/ibiz-cascader/ibiz-cascader.mjs +3 -3
- package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +3 -3
- package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.mjs +3 -3
- package/es/editor/color-picker/ibiz-color-picker/ibiz-color-picker.mjs +3 -3
- package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
- package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +3 -3
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.css +1 -1
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +5 -5
- package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.css +1 -1
- package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.mjs +3 -3
- package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.css +1 -1
- package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +4 -4
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +5 -5
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +4 -4
- package/es/editor/html/wang-editor/wang-editor.css +1 -1
- package/es/editor/html/wang-editor/wang-editor.mjs +8 -2
- package/es/editor/list-box/ibiz-list-box/ibiz-list-box.mjs +5 -5
- package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.mjs +5 -5
- package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.mjs +3 -3
- package/es/editor/rate/ibiz-rate/ibiz-rate.mjs +3 -3
- package/es/editor/slider/ibiz-slider/ibiz-slider.mjs +3 -3
- package/es/editor/stepper/ibiz-stepper/ibiz-stepper.mjs +3 -3
- package/es/editor/switch/ibiz-switch/ibiz-switch.mjs +3 -3
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +3 -3
- package/es/editor/text-box/input/input.mjs +3 -3
- package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.mjs +3 -3
- package/es/editor/upload/ibiz-image-preview/ibiz-image-preview.mjs +3 -3
- package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.mjs +5 -5
- package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +3 -3
- package/es/view-engine/exp-view.engine.d.ts +2 -1
- package/es/view-engine/exp-view.engine.mjs +10 -0
- package/es/view-engine/index.mjs +5 -0
- package/es/view-engine/tab-search-view.engine.d.ts +61 -0
- package/es/view-engine/tab-search-view.engine.mjs +105 -0
- package/es/web-app/guard/auth-guard/auth-guard.d.ts +0 -7
- package/es/web-app/guard/auth-guard/auth-guard.mjs +24 -34
- package/lib/control/calendar/calendar.css +1 -1
- package/lib/control/drbar/drbar.cjs +18 -2
- package/lib/control/drbar/drbar.controller.cjs +57 -4
- package/lib/control/drbar/drbar.css +1 -1
- package/lib/control/exp-bar/calendar-exp-bar/calendar-exp-bar.cjs +3 -3
- package/lib/control/exp-bar/chart-exp-bar/chart-exp-bar.cjs +3 -3
- package/lib/control/exp-bar/data-view-exp-bar/data-view-view-exp-bar.cjs +3 -3
- package/lib/control/exp-bar/grid-exp-bar/grid-exp-bar.cjs +3 -3
- package/lib/control/exp-bar/list-exp-bar/list-exp-bar.cjs +3 -3
- package/lib/control/exp-bar/render-util.cjs +15 -2
- package/lib/control/exp-bar/tree-exp-bar/tree-exp-bar.cjs +3 -3
- package/lib/control/form/form/form.cjs +15 -1
- package/lib/control/form/form-detail/form-item/form-item.cjs +2 -1
- package/lib/control/search-bar/filter-mode-select/filter-mode-select.cjs +6 -0
- package/lib/control/search-bar/filter-tree/filter-tree.cjs +90 -9
- package/lib/control/search-bar/filter-tree/filter-tree.css +1 -1
- package/lib/control/toolbar/toolbar.cjs +12 -2
- package/lib/editor/array/ibiz-array/ibiz-array.cjs +4 -4
- package/lib/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.cjs +2 -2
- package/lib/editor/carousel/ibiz-carousel/ibiz-carousel.cjs +2 -2
- package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.cjs +2 -2
- package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +2 -2
- package/lib/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.cjs +2 -2
- package/lib/editor/color-picker/ibiz-color-picker/ibiz-color-picker.cjs +2 -2
- package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +2 -2
- package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
- package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +4 -4
- package/lib/editor/data-picker/ibiz-picker/ibiz-picker.css +1 -1
- package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.cjs +2 -2
- package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.css +1 -1
- package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +3 -3
- package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.css +1 -1
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +4 -4
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +3 -3
- package/lib/editor/html/wang-editor/wang-editor.cjs +8 -2
- package/lib/editor/html/wang-editor/wang-editor.css +1 -1
- package/lib/editor/list-box/ibiz-list-box/ibiz-list-box.cjs +4 -4
- package/lib/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.cjs +4 -4
- package/lib/editor/radio-button-list/ibiz-radio/ibiz-radio.cjs +2 -2
- package/lib/editor/rate/ibiz-rate/ibiz-rate.cjs +2 -2
- package/lib/editor/slider/ibiz-slider/ibiz-slider.cjs +2 -2
- package/lib/editor/stepper/ibiz-stepper/ibiz-stepper.cjs +2 -2
- package/lib/editor/switch/ibiz-switch/ibiz-switch.cjs +2 -2
- package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +2 -2
- package/lib/editor/text-box/input/input.cjs +2 -2
- package/lib/editor/upload/ibiz-file-upload/ibiz-file-upload.cjs +2 -2
- package/lib/editor/upload/ibiz-image-preview/ibiz-image-preview.cjs +2 -2
- package/lib/editor/upload/ibiz-image-upload/ibiz-image-upload.cjs +4 -4
- package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +2 -2
- package/lib/view-engine/exp-view.engine.cjs +10 -0
- package/lib/view-engine/index.cjs +5 -0
- package/lib/view-engine/tab-search-view.engine.cjs +107 -0
- package/lib/web-app/guard/auth-guard/auth-guard.cjs +22 -32
- package/package.json +8 -8
- package/dist/index-I0JaiEjL.js +0 -4
- package/dist/wang-editor-R2mUYWuB.js +0 -1
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { SysUIActionTag } from '@ibiz-template/runtime';
|
|
2
|
+
import { TabExpViewEngine } from './tab-exp-view.engine.mjs';
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
class TabSearchViewEngine extends TabExpViewEngine {
|
|
6
|
+
/**
|
|
7
|
+
* 搜索表单控制器
|
|
8
|
+
* @author lxm
|
|
9
|
+
* @date 2023-05-22 01:56:25
|
|
10
|
+
* @readonly
|
|
11
|
+
*/
|
|
12
|
+
get searchForm() {
|
|
13
|
+
return this.view.getController("searchform");
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* 搜索栏控制器
|
|
17
|
+
* @author lxm
|
|
18
|
+
* @date 2023-05-22 01:56:25
|
|
19
|
+
* @readonly
|
|
20
|
+
*/
|
|
21
|
+
get searchBar() {
|
|
22
|
+
return this.view.getController("searchbar");
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 分页导航面板控制器
|
|
26
|
+
* @author lxm
|
|
27
|
+
* @date 2023-05-22 01:56:25
|
|
28
|
+
* @readonly
|
|
29
|
+
*/
|
|
30
|
+
get tabExpPanel() {
|
|
31
|
+
return this.view.getController("tabexppanel");
|
|
32
|
+
}
|
|
33
|
+
async onCreated() {
|
|
34
|
+
await super.onCreated();
|
|
35
|
+
const { childNames } = this.view;
|
|
36
|
+
childNames.push("searchform", "searchbar");
|
|
37
|
+
}
|
|
38
|
+
async onMounted() {
|
|
39
|
+
await super.onMounted();
|
|
40
|
+
const controller = this.viewLayoutPanel.panelItems.view_searchform;
|
|
41
|
+
if (controller) {
|
|
42
|
+
const formExists = !!this.searchForm;
|
|
43
|
+
controller.state.keepAlive = formExists;
|
|
44
|
+
controller.state.visible = formExists;
|
|
45
|
+
}
|
|
46
|
+
const searchbarC = this.viewLayoutPanel.panelItems.view_searchbar;
|
|
47
|
+
if (searchbarC) {
|
|
48
|
+
const visible = this.searchBar && !!(this.searchBar.model.enableQuickSearch || this.searchBar.model.enableGroup || this.searchBar.model.enableFilter === true);
|
|
49
|
+
searchbarC.state.visible = visible;
|
|
50
|
+
}
|
|
51
|
+
if (this.searchForm) {
|
|
52
|
+
this.searchForm.evt.on("onSearch", () => {
|
|
53
|
+
this.calcViewParams();
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
if (this.searchBar) {
|
|
57
|
+
this.searchBar.evt.on("onSearch", () => {
|
|
58
|
+
this.calcViewParams();
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
|
|
63
|
+
async call(key, args) {
|
|
64
|
+
if (key === SysUIActionTag.SEARCH) {
|
|
65
|
+
await this.searchForm.search();
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
if (key === SysUIActionTag.RESET) {
|
|
69
|
+
await this.searchForm.reset();
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
if (key === SysUIActionTag.REFRESH) {
|
|
73
|
+
await this.calcViewParams();
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
return super.call(key, args);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* 获取搜索相关的查询参数
|
|
80
|
+
* @author lxm
|
|
81
|
+
* @date 2023-05-22 03:26:04
|
|
82
|
+
* @return {*} {IParams}
|
|
83
|
+
*/
|
|
84
|
+
getSearchParams() {
|
|
85
|
+
const params = {};
|
|
86
|
+
if (this.searchForm) {
|
|
87
|
+
Object.assign(params, this.searchForm.getFilterParams());
|
|
88
|
+
}
|
|
89
|
+
if (this.searchBar) {
|
|
90
|
+
Object.assign(params, this.searchBar.getFilterParams());
|
|
91
|
+
}
|
|
92
|
+
return params;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* 重新计算视图参数
|
|
96
|
+
* @author lxm
|
|
97
|
+
* @date 2024-03-18 05:00:02
|
|
98
|
+
*/
|
|
99
|
+
calcViewParams() {
|
|
100
|
+
this.tabExpPanel.state.expViewParams = this.getSearchParams();
|
|
101
|
+
this.tabExpPanel.refresh();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export { TabSearchViewEngine };
|
|
@@ -85,11 +85,4 @@ export declare class AuthGuard {
|
|
|
85
85
|
*/
|
|
86
86
|
initEnvironment(app: IApplication): Promise<void>;
|
|
87
87
|
throw401(): void;
|
|
88
|
-
/**
|
|
89
|
-
* 根据refreshToken获取新token
|
|
90
|
-
* @return {*}
|
|
91
|
-
* @author: zhujiamin
|
|
92
|
-
* @Date: 2024-03-05 11:38:20
|
|
93
|
-
*/
|
|
94
|
-
refreshToken(): Promise<void>;
|
|
95
88
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { RuntimeError,
|
|
1
|
+
import { RuntimeError, CoreConst, HttpError } from '@ibiz-template/core';
|
|
2
2
|
import { mergeDeepRight } from 'ramda';
|
|
3
3
|
import { AppHooks } from '@ibiz-template/vue3-util';
|
|
4
|
-
import { getCookie
|
|
4
|
+
import { getCookie } from 'qx-util';
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
7
|
var __defProp = Object.defineProperty;
|
|
@@ -103,11 +103,29 @@ class AuthGuard {
|
|
|
103
103
|
* @return {*} {Promise<void>}
|
|
104
104
|
*/
|
|
105
105
|
async appInit() {
|
|
106
|
-
|
|
107
|
-
|
|
106
|
+
try {
|
|
107
|
+
if (ibiz.env.isSaaSMode === true) {
|
|
108
|
+
await this.loadOrgData();
|
|
109
|
+
}
|
|
110
|
+
await this.loadAppData();
|
|
111
|
+
} catch (error) {
|
|
112
|
+
const responseStatus = error.status;
|
|
113
|
+
const remember = getCookie(CoreConst.TOKEN_REMEMBER);
|
|
114
|
+
const refreshToken = getCookie(CoreConst.REFRESH_TOKEN);
|
|
115
|
+
if (responseStatus === 401 && remember && refreshToken != null && refreshToken !== "") {
|
|
116
|
+
try {
|
|
117
|
+
await ibiz.auth.refreshToken();
|
|
118
|
+
if (ibiz.env.isSaaSMode === true) {
|
|
119
|
+
await this.loadOrgData();
|
|
120
|
+
}
|
|
121
|
+
await this.loadAppData();
|
|
122
|
+
} catch (refreshTokenError) {
|
|
123
|
+
throw error;
|
|
124
|
+
}
|
|
125
|
+
} else {
|
|
126
|
+
throw error;
|
|
127
|
+
}
|
|
108
128
|
}
|
|
109
|
-
await this.refreshToken();
|
|
110
|
-
await this.loadAppData();
|
|
111
129
|
await this.initModel();
|
|
112
130
|
await ibiz.auth.extendLogin();
|
|
113
131
|
await ibiz.hub.notice.init();
|
|
@@ -215,34 +233,6 @@ class AuthGuard {
|
|
|
215
233
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
216
234
|
});
|
|
217
235
|
}
|
|
218
|
-
/**
|
|
219
|
-
* 根据refreshToken获取新token
|
|
220
|
-
* @return {*}
|
|
221
|
-
* @author: zhujiamin
|
|
222
|
-
* @Date: 2024-03-05 11:38:20
|
|
223
|
-
*/
|
|
224
|
-
async refreshToken() {
|
|
225
|
-
const remember = getCookie(CoreConst.TOKEN_REMEMBER);
|
|
226
|
-
const token = getCookie(CoreConst.TOKEN);
|
|
227
|
-
const refreshToken = getCookie(CoreConst.REFRESH_TOKEN);
|
|
228
|
-
const cacheDay = remember ? 7 : 0;
|
|
229
|
-
if (!token && refreshToken != null && refreshToken !== "") {
|
|
230
|
-
const res = await ibiz.net.get("/uaa/refresh_token/".concat(refreshToken));
|
|
231
|
-
if (res.ok) {
|
|
232
|
-
setCookie(CoreConst.TOKEN, res.data.token, cacheDay, true);
|
|
233
|
-
const expiredDate = (/* @__PURE__ */ new Date()).getTime() + (res.data.expirein || 7199) * 1e3;
|
|
234
|
-
setCookie(CoreConst.TOKEN_EXPIRES, "".concat(expiredDate), cacheDay, true);
|
|
235
|
-
if (res.data.refresh_token) {
|
|
236
|
-
setCookie(
|
|
237
|
-
CoreConst.REFRESH_TOKEN,
|
|
238
|
-
res.data.refresh_token,
|
|
239
|
-
cacheDay,
|
|
240
|
-
true
|
|
241
|
-
);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
236
|
}
|
|
247
237
|
|
|
248
238
|
export { AuthGuard };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-calendar{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);width:100%;height:100%}.ibiz-control-calendar__calendar-item{display:flex;align-items:center;padding:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar__icon{width:10px;height:10px;margin-right:var(--ibiz-spacing-base-tight);border-radius:50%}.ibiz-control-calendar-content{display:flex;flex-direction:column;width:100%;height:100%}.ibiz-control-calendar-content .el-calendar{display:flex;flex-direction:column;height:100%}.ibiz-control-calendar-content .el-calendar__header{flex-wrap:wrap}.ibiz-control-calendar-content .el-calendar-table,.ibiz-control-calendar-content .el-calendar-table .el-calendar-day{width:100%;height:100%;cursor:pointer}.ibiz-control-calendar-content .el-calendar-table{flex:1;width:-moz-fit-content;width:fit-content}.ibiz-control-calendar-content .el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.ibiz-control-calendar-content .el-calendar__body{display:flex;flex:1;padding:0;overflow:auto}.ibiz-control-calendar-more{width:100%;font-size:var(--ibiz-font-size-small);border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-control-calendar-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);height:100%;padding:var(--ibiz-control-calendar-item-padding);margin-bottom:var(--ibiz-control-calendar-margin);overflow:hidden;font-size:var(--ibiz-control-calendar-font-size);color:var(--ibiz-control-calendar-text-color);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border:solid .5px transparent;border-radius:var(--ibiz-control-calendar-border-radius)}.ibiz-control-calendar-item:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item.is-active{background-color:var(--ibiz-control-calendar-active-bg-color);border:solid .5px var(--ibiz-control-calendar-border-color)}.ibiz-control-calendar-date-text{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);padding:var(--ibiz-control-calendar-item-padding);margin:0;text-align:center}.ibiz-control-calendar-day{height:-moz-fit-content;height:fit-content}.ibiz-control-calendar-content-title{line-height:var(--ibiz-editor-default-line-height)}.ibiz-control-calendar-content-header{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);display:flex;align-items:center}.ibiz-control-calendar-content-header>*+*{margin-left:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar-legend{display:flex;justify-content:flex-end;width:100%}.ibiz-control-calendar-legend>*+*{margin-left:var(--ibiz-spacing-base-loose)}.ibiz-control-calendar-timeline-content .el-timeline{padding-left:0}
|
|
1
|
+
.ibiz-control-calendar{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);width:100%;height:100%}.ibiz-control-calendar__calendar-item{display:flex;align-items:center;padding:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar__icon{width:10px;height:10px;margin-right:var(--ibiz-spacing-base-tight);border-radius:50%}.ibiz-control-calendar .ibiz-control-calendar-item{margin:0}.ibiz-control-calendar-content{display:flex;flex-direction:column;width:100%;height:100%}.ibiz-control-calendar-content .el-calendar{display:flex;flex-direction:column;height:100%}.ibiz-control-calendar-content .el-calendar__header{flex-wrap:wrap}.ibiz-control-calendar-content .el-calendar-table,.ibiz-control-calendar-content .el-calendar-table .el-calendar-day{width:100%;height:100%;min-height:90px;cursor:pointer}.ibiz-control-calendar-content .el-calendar-table{flex:1;width:-moz-fit-content;width:fit-content}.ibiz-control-calendar-content .el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.ibiz-control-calendar-content .el-calendar__body{display:flex;flex:1;padding:0;overflow:auto}.ibiz-control-calendar-more{width:100%;font-size:var(--ibiz-font-size-small);border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-control-calendar-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);height:100%;padding:var(--ibiz-control-calendar-item-padding);margin-bottom:var(--ibiz-control-calendar-margin);overflow:hidden;font-size:var(--ibiz-control-calendar-font-size);color:var(--ibiz-control-calendar-text-color);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border:solid .5px transparent;border-radius:var(--ibiz-control-calendar-border-radius)}.ibiz-control-calendar-item:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item.is-active{background-color:var(--ibiz-control-calendar-active-bg-color);border:solid .5px var(--ibiz-control-calendar-border-color)}.ibiz-control-calendar-date-text{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);padding-bottom:var(--ibiz-control-calendar-item-padding);margin:0;text-align:center}.ibiz-control-calendar-day{height:-moz-fit-content;height:fit-content}.ibiz-control-calendar-content-title{line-height:var(--ibiz-editor-default-line-height)}.ibiz-control-calendar-content-header{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);display:flex;align-items:center}.ibiz-control-calendar-content-header>*+*{margin-left:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar-legend{display:flex;justify-content:flex-end;width:100%}.ibiz-control-calendar-legend>*+*{margin-left:var(--ibiz-spacing-base-loose)}.ibiz-control-calendar-timeline-content .el-timeline{padding-left:0}
|
|
@@ -60,6 +60,17 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
60
60
|
const route = vueRouter.useRoute();
|
|
61
61
|
const defaultActive = vue.ref("");
|
|
62
62
|
let expViewRoutePath = "";
|
|
63
|
+
const opens = [];
|
|
64
|
+
vue.watch(() => c.state.isCreated, (_newVal, _oldVal) => {
|
|
65
|
+
if (props.showMode !== "horizontal") {
|
|
66
|
+
const {
|
|
67
|
+
drBarItems
|
|
68
|
+
} = c.state;
|
|
69
|
+
drBarItems.forEach((item) => {
|
|
70
|
+
opens.push(item.tag);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
});
|
|
63
74
|
if (c.routeDepth) {
|
|
64
75
|
expViewRoutePath = vue3Util.getNestedRoutePath(route, c.routeDepth);
|
|
65
76
|
}
|
|
@@ -87,6 +98,9 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
87
98
|
immediate: true
|
|
88
99
|
});
|
|
89
100
|
const renderMenuItems = (item) => {
|
|
101
|
+
if (!item.visible) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
90
104
|
if (item.children) {
|
|
91
105
|
let subtitle = "";
|
|
92
106
|
if (props.showMode === "horizontal") {
|
|
@@ -130,7 +144,8 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
130
144
|
ns,
|
|
131
145
|
handleSelect,
|
|
132
146
|
renderMenuItems,
|
|
133
|
-
defaultActive
|
|
147
|
+
defaultActive,
|
|
148
|
+
opens
|
|
134
149
|
};
|
|
135
150
|
},
|
|
136
151
|
render() {
|
|
@@ -148,7 +163,8 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
148
163
|
"class": this.ns.e("menu"),
|
|
149
164
|
"mode": this.showMode,
|
|
150
165
|
"default-active": this.defaultActive || defaultItem,
|
|
151
|
-
"onSelect": this.handleSelect
|
|
166
|
+
"onSelect": this.handleSelect,
|
|
167
|
+
"default-openeds": this.opens
|
|
152
168
|
}, _isSlot(_slot = drBarItems.map((item) => {
|
|
153
169
|
return this.renderMenuItems(item);
|
|
154
170
|
})) ? _slot : {
|
|
@@ -118,6 +118,50 @@ class DRBarController extends runtime.ControlController {
|
|
|
118
118
|
this.initDRBarItems();
|
|
119
119
|
await this.initCounter();
|
|
120
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* 计算关系界面组权限
|
|
123
|
+
*
|
|
124
|
+
* @param {IData} item 关系组成员
|
|
125
|
+
* @memberof DRBarController
|
|
126
|
+
*/
|
|
127
|
+
async calcPermitted(item) {
|
|
128
|
+
let permitted = true;
|
|
129
|
+
if (item.dataAccessAction) {
|
|
130
|
+
const app = await ibiz.hub.getApp(this.context.srfappid);
|
|
131
|
+
const data = this.getData().length > 0 ? this.getData()[0] : void 0;
|
|
132
|
+
permitted = await app.authority.calcByDataAccessAction(
|
|
133
|
+
item.dataAccessAction,
|
|
134
|
+
this.context,
|
|
135
|
+
data,
|
|
136
|
+
this.model.appDataEntityId
|
|
137
|
+
);
|
|
138
|
+
}
|
|
139
|
+
item.visible = permitted;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* 计算是否展示
|
|
143
|
+
*
|
|
144
|
+
* @param {IData} item 关系组成员
|
|
145
|
+
* @memberof DRBarController
|
|
146
|
+
*/
|
|
147
|
+
async calcDrBarItemsState() {
|
|
148
|
+
const arr = [];
|
|
149
|
+
this.state.drBarItems.forEach((group) => {
|
|
150
|
+
var _a, _b;
|
|
151
|
+
if ((_a = group.children) == null ? void 0 : _a.length) {
|
|
152
|
+
(_b = group.children) == null ? void 0 : _b.forEach((item) => {
|
|
153
|
+
arr.push(this.calcPermitted(item));
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
await Promise.all(arr);
|
|
158
|
+
this.state.drBarItems.forEach((group) => {
|
|
159
|
+
var _a;
|
|
160
|
+
if ((_a = group.children) == null ? void 0 : _a.length) {
|
|
161
|
+
group.visible = !group.children.every((item) => item.visible === false);
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
}
|
|
121
165
|
/**
|
|
122
166
|
* 加载完成
|
|
123
167
|
*
|
|
@@ -127,7 +171,8 @@ class DRBarController extends runtime.ControlController {
|
|
|
127
171
|
async onMounted() {
|
|
128
172
|
await super.onMounted();
|
|
129
173
|
if (this.form) {
|
|
130
|
-
this.form.evt.on("onLoadSuccess", () => {
|
|
174
|
+
this.form.evt.on("onLoadSuccess", async () => {
|
|
175
|
+
await this.calcDrBarItemsState();
|
|
131
176
|
this.handleFormChange();
|
|
132
177
|
this.doDefaultSelect();
|
|
133
178
|
});
|
|
@@ -209,7 +254,9 @@ class DRBarController extends runtime.ControlController {
|
|
|
209
254
|
caption: itemCaption,
|
|
210
255
|
sysImage: item.sysImage,
|
|
211
256
|
disabled: false,
|
|
212
|
-
counterId: item.counterId
|
|
257
|
+
counterId: item.counterId,
|
|
258
|
+
visible: true,
|
|
259
|
+
dataAccessAction: item.dataAccessAction || void 0
|
|
213
260
|
};
|
|
214
261
|
};
|
|
215
262
|
if (dedrbarGroups && dedrctrlItems) {
|
|
@@ -234,6 +281,7 @@ class DRBarController extends runtime.ControlController {
|
|
|
234
281
|
tag: group.id,
|
|
235
282
|
caption: itemCaption,
|
|
236
283
|
sysImage: group.sysImage,
|
|
284
|
+
visible: true,
|
|
237
285
|
children: groupItems.map((item) => getItemState(item))
|
|
238
286
|
});
|
|
239
287
|
} else if (groupItems.length === 1) {
|
|
@@ -348,7 +396,12 @@ class DRBarController extends runtime.ControlController {
|
|
|
348
396
|
* @return {*} {void}
|
|
349
397
|
*/
|
|
350
398
|
doDefaultSelect() {
|
|
351
|
-
var _a;
|
|
399
|
+
var _a, _b;
|
|
400
|
+
const viewForm = (_a = this.view.layoutPanel) == null ? void 0 : _a.panelItems.view_form;
|
|
401
|
+
if (viewForm) {
|
|
402
|
+
viewForm.state.visible = false;
|
|
403
|
+
viewForm.state.keepAlive = false;
|
|
404
|
+
}
|
|
352
405
|
if (!this.state.hideEditItem && !this.state.srfnav) {
|
|
353
406
|
this.setVisible("form");
|
|
354
407
|
return;
|
|
@@ -358,7 +411,7 @@ class DRBarController extends runtime.ControlController {
|
|
|
358
411
|
return;
|
|
359
412
|
}
|
|
360
413
|
const { drBarItems } = this.state;
|
|
361
|
-
let key = ((
|
|
414
|
+
let key = ((_b = drBarItems[0].children) == null ? void 0 : _b[0].tag) || drBarItems[0].tag;
|
|
362
415
|
if (this.routeDepth && this.state.srfnav) {
|
|
363
416
|
key = this.state.srfnav;
|
|
364
417
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-drbar .el-menu--horizontal.el-menu{border-bottom:none}.ibiz-control-drbar .el-menu-item{justify-content:space-between;line-height:unset}
|
|
1
|
+
.ibiz-control-drbar{height:100%}.ibiz-control-drbar .el-menu--horizontal.el-menu{border-bottom:none}.ibiz-control-drbar .el-menu-item{justify-content:space-between;line-height:unset}.ibiz-control-drbar__menu{height:100%}
|
|
@@ -42,14 +42,14 @@ const CalendarExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
42
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
43
43
|
const {
|
|
44
44
|
renderTitle,
|
|
45
|
-
|
|
45
|
+
renderSearchBar
|
|
46
46
|
} = renderUtil.useExpBarRender(c, ns);
|
|
47
47
|
renderUtil.useWatchRouteChange(c);
|
|
48
48
|
return {
|
|
49
49
|
c,
|
|
50
50
|
ns,
|
|
51
51
|
renderTitle,
|
|
52
|
-
|
|
52
|
+
renderSearchBar
|
|
53
53
|
};
|
|
54
54
|
},
|
|
55
55
|
render() {
|
|
@@ -62,7 +62,7 @@ const CalendarExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
62
62
|
} = state;
|
|
63
63
|
const slots = {
|
|
64
64
|
captionbar: this.renderTitle,
|
|
65
|
-
searchbar: this.
|
|
65
|
+
searchbar: this.renderSearchBar
|
|
66
66
|
};
|
|
67
67
|
if (isCreated) {
|
|
68
68
|
if (XDataModel) {
|
|
@@ -42,14 +42,14 @@ const ChartExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
42
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
43
43
|
const {
|
|
44
44
|
renderTitle,
|
|
45
|
-
|
|
45
|
+
renderSearchBar
|
|
46
46
|
} = renderUtil.useExpBarRender(c, ns);
|
|
47
47
|
renderUtil.useWatchRouteChange(c);
|
|
48
48
|
return {
|
|
49
49
|
c,
|
|
50
50
|
ns,
|
|
51
51
|
renderTitle,
|
|
52
|
-
|
|
52
|
+
renderSearchBar
|
|
53
53
|
};
|
|
54
54
|
},
|
|
55
55
|
render() {
|
|
@@ -61,7 +61,7 @@ const ChartExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
61
61
|
} = this.c;
|
|
62
62
|
const slots = {
|
|
63
63
|
captionbar: this.renderTitle,
|
|
64
|
-
searchbar: this.
|
|
64
|
+
searchbar: this.renderSearchBar
|
|
65
65
|
};
|
|
66
66
|
if (isCreated) {
|
|
67
67
|
if (XDataModel) {
|
|
@@ -42,14 +42,14 @@ const DataViewExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
42
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
43
43
|
const {
|
|
44
44
|
renderTitle,
|
|
45
|
-
|
|
45
|
+
renderSearchBar
|
|
46
46
|
} = renderUtil.useExpBarRender(c, ns);
|
|
47
47
|
renderUtil.useWatchRouteChange(c);
|
|
48
48
|
return {
|
|
49
49
|
c,
|
|
50
50
|
ns,
|
|
51
51
|
renderTitle,
|
|
52
|
-
|
|
52
|
+
renderSearchBar
|
|
53
53
|
};
|
|
54
54
|
},
|
|
55
55
|
render() {
|
|
@@ -61,7 +61,7 @@ const DataViewExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
61
61
|
} = this.c;
|
|
62
62
|
const slots = {
|
|
63
63
|
captionbar: this.renderTitle,
|
|
64
|
-
searchbar: this.
|
|
64
|
+
searchbar: this.renderSearchBar
|
|
65
65
|
};
|
|
66
66
|
if (isCreated) {
|
|
67
67
|
if (XDataModel) {
|
|
@@ -42,14 +42,14 @@ const GridExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
42
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
43
43
|
const {
|
|
44
44
|
renderTitle,
|
|
45
|
-
|
|
45
|
+
renderSearchBar
|
|
46
46
|
} = renderUtil.useExpBarRender(c, ns);
|
|
47
47
|
renderUtil.useWatchRouteChange(c);
|
|
48
48
|
return {
|
|
49
49
|
c,
|
|
50
50
|
ns,
|
|
51
51
|
renderTitle,
|
|
52
|
-
|
|
52
|
+
renderSearchBar
|
|
53
53
|
};
|
|
54
54
|
},
|
|
55
55
|
render() {
|
|
@@ -61,7 +61,7 @@ const GridExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
61
61
|
} = this.c;
|
|
62
62
|
const slots = {
|
|
63
63
|
captionbar: this.renderTitle,
|
|
64
|
-
searchbar: this.
|
|
64
|
+
searchbar: this.renderSearchBar
|
|
65
65
|
};
|
|
66
66
|
if (isCreated) {
|
|
67
67
|
if (XDataModel) {
|
|
@@ -42,14 +42,14 @@ const ListExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
42
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
43
43
|
const {
|
|
44
44
|
renderTitle,
|
|
45
|
-
|
|
45
|
+
renderSearchBar
|
|
46
46
|
} = renderUtil.useExpBarRender(c, ns);
|
|
47
47
|
renderUtil.useWatchRouteChange(c);
|
|
48
48
|
return {
|
|
49
49
|
c,
|
|
50
50
|
ns,
|
|
51
51
|
renderTitle,
|
|
52
|
-
|
|
52
|
+
renderSearchBar
|
|
53
53
|
};
|
|
54
54
|
},
|
|
55
55
|
render() {
|
|
@@ -61,7 +61,7 @@ const ListExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
61
61
|
} = this.c;
|
|
62
62
|
const slots = {
|
|
63
63
|
captionbar: this.renderTitle,
|
|
64
|
-
searchbar: this.
|
|
64
|
+
searchbar: this.renderSearchBar
|
|
65
65
|
};
|
|
66
66
|
if (isCreated) {
|
|
67
67
|
if (XDataModel) {
|
|
@@ -36,13 +36,26 @@ function useExpBarRender(c, ns) {
|
|
|
36
36
|
"class": [ns.be("caption", "text")]
|
|
37
37
|
}, [title])]);
|
|
38
38
|
};
|
|
39
|
-
const
|
|
39
|
+
const renderSearchBar = () => {
|
|
40
|
+
var _a, _b;
|
|
40
41
|
const {
|
|
41
42
|
model
|
|
42
43
|
} = c;
|
|
43
44
|
if (!model.enableSearch) {
|
|
44
45
|
return null;
|
|
45
46
|
}
|
|
47
|
+
const modelData = (_b = (_a = c.view.model.viewLayoutPanel) == null ? void 0 : _a.controls) == null ? void 0 : _b.find((item) => item.id === "searchbar");
|
|
48
|
+
if (modelData) {
|
|
49
|
+
const ctrlProps = {
|
|
50
|
+
context: c.context,
|
|
51
|
+
params: c.params
|
|
52
|
+
};
|
|
53
|
+
const comp = vue.resolveComponent("IBizControlShell");
|
|
54
|
+
return vue.h(comp, {
|
|
55
|
+
modelData,
|
|
56
|
+
...ctrlProps
|
|
57
|
+
});
|
|
58
|
+
}
|
|
46
59
|
return vue.createVNode(vue.resolveComponent("el-input"), {
|
|
47
60
|
"model-value": c.state.query,
|
|
48
61
|
"class": [ns.b("quick-search"), expBarNs.b("quick-search")],
|
|
@@ -59,7 +72,7 @@ function useExpBarRender(c, ns) {
|
|
|
59
72
|
};
|
|
60
73
|
return {
|
|
61
74
|
renderTitle,
|
|
62
|
-
|
|
75
|
+
renderSearchBar
|
|
63
76
|
};
|
|
64
77
|
}
|
|
65
78
|
function useWatchRouteChange(c) {
|
|
@@ -46,7 +46,7 @@ const TreeExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
46
46
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
47
47
|
const {
|
|
48
48
|
renderTitle,
|
|
49
|
-
|
|
49
|
+
renderSearchBar
|
|
50
50
|
} = renderUtil.useExpBarRender(c, ns);
|
|
51
51
|
renderUtil.useWatchRouteChange(c);
|
|
52
52
|
const navigational = vue.computed(() => {
|
|
@@ -57,7 +57,7 @@ const TreeExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
57
57
|
ns,
|
|
58
58
|
navigational,
|
|
59
59
|
renderTitle,
|
|
60
|
-
|
|
60
|
+
renderSearchBar
|
|
61
61
|
};
|
|
62
62
|
},
|
|
63
63
|
render() {
|
|
@@ -70,7 +70,7 @@ const TreeExpBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
70
70
|
} = state;
|
|
71
71
|
const slots = {
|
|
72
72
|
captionbar: this.renderTitle,
|
|
73
|
-
searchbar: this.
|
|
73
|
+
searchbar: this.renderSearchBar
|
|
74
74
|
};
|
|
75
75
|
if (isCreated) {
|
|
76
76
|
if (XDataModel) {
|
|
@@ -25,6 +25,19 @@ const FormControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
25
25
|
const slotProps = {
|
|
26
26
|
form: c
|
|
27
27
|
};
|
|
28
|
+
const renderAttrs = (model) => {
|
|
29
|
+
var _a;
|
|
30
|
+
const attrs = {};
|
|
31
|
+
(_a = model.controlAttributes) == null ? void 0 : _a.forEach((item) => {
|
|
32
|
+
if (item.attrName && item.attrValue) {
|
|
33
|
+
attrs[item.attrName] = runtime.ScriptFactory.execSingleLine(item.attrValue, {
|
|
34
|
+
...props.controller.getEventArgs(),
|
|
35
|
+
data: props.controller.data
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
return attrs;
|
|
40
|
+
};
|
|
28
41
|
const renderByDetailType = (detail) => {
|
|
29
42
|
if (detail.hidden) {
|
|
30
43
|
return;
|
|
@@ -33,7 +46,8 @@ const FormControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
33
46
|
const detailProps = {
|
|
34
47
|
modelData: detail,
|
|
35
48
|
controller: c.details[detailId],
|
|
36
|
-
key: detail.id
|
|
49
|
+
key: detail.id,
|
|
50
|
+
...renderAttrs(detail)
|
|
37
51
|
};
|
|
38
52
|
if (slots[detailId]) {
|
|
39
53
|
return vue.renderSlot(slots, detailId, {
|
|
@@ -51,7 +51,8 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
51
51
|
controlParams: this.controller.form.controlParams,
|
|
52
52
|
onFocus: (event) => this.c.onFocus(event),
|
|
53
53
|
onBlur: (event) => this.c.onBlur(event),
|
|
54
|
-
onEnter: (event) => this.controller.onEnter(event)
|
|
54
|
+
onEnter: (event) => this.controller.onEnter(event),
|
|
55
|
+
...this.$attrs
|
|
55
56
|
};
|
|
56
57
|
if (this.c.form.state.isLoaded) {
|
|
57
58
|
if (this.$slots.default) {
|
|
@@ -46,6 +46,12 @@ const FilterModes = [{
|
|
|
46
46
|
}, {
|
|
47
47
|
valueOP: runtime.ValueOP.RIGHT_LIKE,
|
|
48
48
|
label: "\u6587\u672C\u53F3\u5305\u542B(#%)"
|
|
49
|
+
}, {
|
|
50
|
+
valueOP: runtime.ValueOP.EXISTS,
|
|
51
|
+
label: "\u5B58\u5728(EXISTS)"
|
|
52
|
+
}, {
|
|
53
|
+
valueOP: runtime.ValueOP.NOT_EXISTS,
|
|
54
|
+
label: "\u4E0D\u5B58\u5728(NOTEXISTS)"
|
|
49
55
|
}];
|
|
50
56
|
const FilterModeSelect = /* @__PURE__ */ vue.defineComponent({
|
|
51
57
|
name: "IBizFilterModeSelect",
|