@ibiz-template/vue3-components 0.7.41-alpha.12 → 0.7.41-alpha.13
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/ibiz-markdown-editor-0VHzFa2l.js +1 -0
- package/dist/index-LzKAcXeH.js +4 -0
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/{wang-editor-TYKjfyR5.js → wang-editor-Iw-hqw1q.js} +1 -1
- package/dist/{xlsx-util-Q9msA8ef.js → xlsx-util-FnTIZeKq.js} +1 -1
- package/es/control/calendar/components/calendar-user/calendar-user.css +1 -1
- package/es/control/calendar/components/calendar-user/calendar-user.mjs +76 -2
- package/es/control/data-view/data-view.d.ts +1 -1
- package/es/control/data-view/index.d.ts +1 -1
- package/es/control/form/form/index.mjs +2 -0
- package/es/control/form/form-detail/form-iframe/form-iframe.css +1 -0
- package/es/control/form/form-detail/form-iframe/form-iframe.d.ts +29 -0
- package/es/control/form/form-detail/form-iframe/form-iframe.mjs +53 -0
- package/es/control/form/form-detail/form-iframe/form-iframe.provider.d.ts +13 -0
- package/es/control/form/form-detail/form-iframe/form-iframe.provider.mjs +21 -0
- package/es/control/form/form-detail/form-iframe/index.d.ts +25 -0
- package/es/control/form/form-detail/form-iframe/index.mjs +12 -0
- package/es/control/form/form-detail/form-item/form-item.css +1 -1
- package/es/control/form/form-detail/form-item/form-item.mjs +6 -4
- package/es/control/form/form-detail/index.d.ts +1 -0
- package/es/control/form/form-detail/index.mjs +1 -0
- package/es/control/form/index.mjs +1 -0
- package/es/control/gantt/gantt.d.ts +1 -1
- package/es/control/gantt/index.d.ts +1 -1
- package/es/control/grid/grid/grid.d.ts +1 -1
- package/es/control/grid/grid/index.d.ts +1 -1
- package/es/control/grid/grid/index.mjs +2 -0
- package/es/control/grid/grid-column/grid-field-column/grid-field-column.d.ts +4 -4
- package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +5 -8
- package/es/control/grid/virtualized-table/index.d.ts +136 -0
- package/es/control/grid/virtualized-table/index.mjs +18 -0
- package/es/control/grid/virtualized-table/virtualized-table.css +1 -0
- package/es/control/grid/virtualized-table/virtualized-table.d.ts +200 -0
- package/es/control/grid/virtualized-table/virtualized-table.mjs +325 -0
- package/es/control/grid/virtualized-table/virtualized-table.provider.d.ts +10 -0
- package/es/control/grid/virtualized-table/virtualized-table.provider.mjs +14 -0
- package/es/control/grid/virtualized-table/virtualized-table.util.d.ts +95 -0
- package/es/control/grid/virtualized-table/virtualized-table.util.mjs +191 -0
- package/es/control/index.mjs +1 -0
- package/es/control/kanban/index.d.ts +44 -1
- package/es/control/kanban/kanban.d.ts +56 -1
- package/es/control/kanban/kanban.mjs +36 -2
- package/es/control/list/index.d.ts +1 -1
- package/es/control/list/list.d.ts +1 -1
- package/es/control/list/list.mjs +1 -1
- package/es/control/search-bar/search-bar.mjs +3 -0
- package/es/control/tree/index.d.ts +1 -1
- package/es/control/tree/tree.d.ts +1 -1
- package/es/control/tree-grid/index.d.ts +1 -1
- package/es/control/tree-grid/tree-grid.d.ts +1 -1
- package/es/editor/array/ibiz-array/ibiz-array.css +1 -1
- package/es/editor/array/ibiz-array/ibiz-array.mjs +4 -1
- package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.d.ts +1 -1
- package/es/editor/data-picker/ibiz-transfer-picker/components/transfer/transfer.d.ts +1 -1
- package/es/editor/data-picker/ibiz-transfer-picker/ibiz-transfer-picker.d.ts +3 -2
- package/es/editor/date-range-select/date-range-select-picker/date-range-select.d.ts +5 -5
- package/es/editor/date-range-select/date-range-select.controller.mjs +9 -0
- package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.d.ts +1 -0
- package/es/editor/dropdown-list/ibiz-tree-picker/ibiz-tree-picker.d.ts +4 -3
- package/es/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.css +1 -1
- package/es/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.d.ts +10 -7
- package/es/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.mjs +5 -5
- package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +1 -1
- package/es/editor/slider/ibiz-slider/ibiz-slider.d.ts +3 -3
- package/es/editor/span/span/span.d.ts +1 -1
- package/es/editor/text-box/ibiz-input-ip/ibiz-input-ip.css +1 -1
- package/es/editor/text-box/ibiz-input-ip/ibiz-input-ip.d.ts +3 -77
- package/es/editor/text-box/ibiz-input-ip/ibiz-input-ip.mjs +167 -108
- package/es/editor/text-box/input/input.d.ts +4 -4
- package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.mjs +1 -1
- package/es/index.mjs +1 -0
- package/es/panel-component/panel-button/panel-button.controller.mjs +2 -1
- package/es/panel-component/panel-button/panel-button.mjs +1 -1
- package/es/util/app-util/app-util.d.ts +54 -2
- package/es/util/app-util/app-util.mjs +48 -1
- package/lib/control/calendar/components/calendar-user/calendar-user.cjs +76 -2
- package/lib/control/calendar/components/calendar-user/calendar-user.css +1 -1
- package/lib/control/form/form/index.cjs +2 -0
- package/lib/control/form/form-detail/form-iframe/form-iframe.cjs +58 -0
- package/lib/control/form/form-detail/form-iframe/form-iframe.css +1 -0
- package/lib/control/form/form-detail/form-iframe/form-iframe.provider.cjs +23 -0
- package/lib/control/form/form-detail/form-iframe/index.cjs +17 -0
- package/lib/control/form/form-detail/form-item/form-item.cjs +5 -3
- package/lib/control/form/form-detail/form-item/form-item.css +1 -1
- package/lib/control/form/form-detail/index.cjs +2 -0
- package/lib/control/form/index.cjs +6 -4
- package/lib/control/grid/grid/index.cjs +2 -0
- package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +3 -6
- package/lib/control/grid/virtualized-table/index.cjs +23 -0
- package/lib/control/grid/virtualized-table/virtualized-table.cjs +327 -0
- package/lib/control/grid/virtualized-table/virtualized-table.css +1 -0
- package/lib/control/grid/virtualized-table/virtualized-table.provider.cjs +16 -0
- package/lib/control/grid/virtualized-table/virtualized-table.util.cjs +193 -0
- package/lib/control/index.cjs +82 -80
- package/lib/control/kanban/kanban.cjs +34 -0
- package/lib/control/list/list.cjs +1 -1
- package/lib/control/search-bar/search-bar.cjs +3 -0
- package/lib/editor/array/ibiz-array/ibiz-array.cjs +4 -1
- package/lib/editor/array/ibiz-array/ibiz-array.css +1 -1
- package/lib/editor/date-range-select/date-range-select.controller.cjs +9 -0
- package/lib/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.cjs +5 -5
- package/lib/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.css +1 -1
- package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +1 -1
- package/lib/editor/text-box/ibiz-input-ip/ibiz-input-ip.cjs +166 -107
- package/lib/editor/text-box/ibiz-input-ip/ibiz-input-ip.css +1 -1
- package/lib/editor/upload/ibiz-file-upload/ibiz-file-upload.cjs +1 -1
- package/lib/index.cjs +112 -110
- package/lib/panel-component/panel-button/panel-button.cjs +1 -1
- package/lib/panel-component/panel-button/panel-button.controller.cjs +2 -1
- package/lib/util/app-util/app-util.cjs +47 -0
- package/package.json +4 -4
- package/dist/ibiz-markdown-editor-KyK5mBTS.js +0 -1
- package/dist/index-pyv7Wdpx.js +0 -4
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import { Router } from 'vue-router';
|
|
2
|
-
import { IAppUtil, IAuthResult, IAiChatParam } from '@ibiz-template/runtime';
|
|
2
|
+
import { IAppUtil, IAuthResult, IAiChatParam, IApiViewController } from '@ibiz-template/runtime';
|
|
3
3
|
import { IChatMessage } from '@ibiz-template/core';
|
|
4
4
|
export declare class AppUtil implements IAppUtil {
|
|
5
|
-
|
|
5
|
+
router: Router;
|
|
6
|
+
/**
|
|
7
|
+
* @description 视图缓存中心
|
|
8
|
+
* @type {Map<string, IApiViewController>}
|
|
9
|
+
* @memberof AppUtil
|
|
10
|
+
*/
|
|
11
|
+
viewCacheCenter: Map<string, IApiViewController>;
|
|
6
12
|
/**
|
|
7
13
|
* Creates an instance of AppUtil.
|
|
8
14
|
* @author tony001
|
|
@@ -109,4 +115,50 @@ export declare class AppUtil implements IAppUtil {
|
|
|
109
115
|
* @memberof AppUtil
|
|
110
116
|
*/
|
|
111
117
|
openAiChat(chartParams: IAiChatParam): Promise<IChatMessage[]>;
|
|
118
|
+
/**
|
|
119
|
+
* @description 当前路由转换成路由路径对象
|
|
120
|
+
* @param {boolean} [isRouteModal]
|
|
121
|
+
* @returns {*} {{
|
|
122
|
+
* appContext?: IParams;
|
|
123
|
+
* pathNodes: {
|
|
124
|
+
* viewName: string;
|
|
125
|
+
* context?: IParams;
|
|
126
|
+
* params?: IParams;
|
|
127
|
+
* srfnav?: string;
|
|
128
|
+
* }[];
|
|
129
|
+
* }}
|
|
130
|
+
* @memberof AppUtil
|
|
131
|
+
*/
|
|
132
|
+
route2routeObject(isRouteModal?: boolean): {
|
|
133
|
+
appContext?: IParams;
|
|
134
|
+
pathNodes: {
|
|
135
|
+
viewName: string;
|
|
136
|
+
context?: IParams;
|
|
137
|
+
params?: IParams;
|
|
138
|
+
srfnav?: string;
|
|
139
|
+
}[];
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* @description 路由路径对象转化为路由路径
|
|
143
|
+
* @param {{
|
|
144
|
+
* appContext?: IParams;
|
|
145
|
+
* pathNodes: {
|
|
146
|
+
* viewName: string;
|
|
147
|
+
* context?: IParams;
|
|
148
|
+
* params?: IParams;
|
|
149
|
+
* srfnav?: string;
|
|
150
|
+
* }[];
|
|
151
|
+
* }} routePath
|
|
152
|
+
* @returns {*} {string}
|
|
153
|
+
* @memberof AppUtil
|
|
154
|
+
*/
|
|
155
|
+
routeObject2String(routePath: {
|
|
156
|
+
appContext?: IParams;
|
|
157
|
+
pathNodes: {
|
|
158
|
+
viewName: string;
|
|
159
|
+
context?: IParams;
|
|
160
|
+
params?: IParams;
|
|
161
|
+
srfnav?: string;
|
|
162
|
+
}[];
|
|
163
|
+
}): string;
|
|
112
164
|
}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { getDeACMode, calcDeCodeNameById, ConfigService, UIActionUtil, SysUIActionTag } from '@ibiz-template/runtime';
|
|
2
2
|
import { createUUID } from 'qx-util';
|
|
3
3
|
import { IBizContext } from '@ibiz-template/core';
|
|
4
|
-
import { route2routePath, useUIStore } from '@ibiz-template/vue3-util';
|
|
4
|
+
import { route2routePath, useUIStore, routePath2string } from '@ibiz-template/vue3-util';
|
|
5
5
|
import { calcAiToolbarItemsByAc } from '../ai-util/ai-util.mjs';
|
|
6
6
|
|
|
7
7
|
"use strict";
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
+
var __publicField = (obj, key, value) => {
|
|
11
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
12
|
+
return value;
|
|
13
|
+
};
|
|
8
14
|
class AppUtil {
|
|
9
15
|
/**
|
|
10
16
|
* Creates an instance of AppUtil.
|
|
@@ -14,6 +20,12 @@ class AppUtil {
|
|
|
14
20
|
*/
|
|
15
21
|
constructor(router) {
|
|
16
22
|
this.router = router;
|
|
23
|
+
/**
|
|
24
|
+
* @description 视图缓存中心
|
|
25
|
+
* @type {Map<string, IApiViewController>}
|
|
26
|
+
* @memberof AppUtil
|
|
27
|
+
*/
|
|
28
|
+
__publicField(this, "viewCacheCenter", /* @__PURE__ */ new Map());
|
|
17
29
|
}
|
|
18
30
|
/**
|
|
19
31
|
* @description 路由是否初始化构建完成
|
|
@@ -441,6 +453,41 @@ class AppUtil {
|
|
|
441
453
|
});
|
|
442
454
|
});
|
|
443
455
|
}
|
|
456
|
+
/**
|
|
457
|
+
* @description 当前路由转换成路由路径对象
|
|
458
|
+
* @param {boolean} [isRouteModal]
|
|
459
|
+
* @returns {*} {{
|
|
460
|
+
* appContext?: IParams;
|
|
461
|
+
* pathNodes: {
|
|
462
|
+
* viewName: string;
|
|
463
|
+
* context?: IParams;
|
|
464
|
+
* params?: IParams;
|
|
465
|
+
* srfnav?: string;
|
|
466
|
+
* }[];
|
|
467
|
+
* }}
|
|
468
|
+
* @memberof AppUtil
|
|
469
|
+
*/
|
|
470
|
+
route2routeObject(isRouteModal) {
|
|
471
|
+
const routePath = route2routePath(this.router.currentRoute.value);
|
|
472
|
+
return routePath;
|
|
473
|
+
}
|
|
474
|
+
/**
|
|
475
|
+
* @description 路由路径对象转化为路由路径
|
|
476
|
+
* @param {{
|
|
477
|
+
* appContext?: IParams;
|
|
478
|
+
* pathNodes: {
|
|
479
|
+
* viewName: string;
|
|
480
|
+
* context?: IParams;
|
|
481
|
+
* params?: IParams;
|
|
482
|
+
* srfnav?: string;
|
|
483
|
+
* }[];
|
|
484
|
+
* }} routePath
|
|
485
|
+
* @returns {*} {string}
|
|
486
|
+
* @memberof AppUtil
|
|
487
|
+
*/
|
|
488
|
+
routeObject2String(routePath) {
|
|
489
|
+
return routePath2string(routePath);
|
|
490
|
+
}
|
|
444
491
|
}
|
|
445
492
|
|
|
446
493
|
export { AppUtil };
|
|
@@ -22,6 +22,14 @@ const CalendarUser = /* @__PURE__ */ vue.defineComponent({
|
|
|
22
22
|
timeList.value = useCalendarUser.getDayTime();
|
|
23
23
|
const popoverValue = vue.ref("");
|
|
24
24
|
const curPopover = vue.ref();
|
|
25
|
+
const scrollContainerRef = vue.ref();
|
|
26
|
+
const scrollTop = vue.ref(0);
|
|
27
|
+
const thumbHeight = vue.ref(0);
|
|
28
|
+
const enableScroll = vue.ref(false);
|
|
29
|
+
const orginY = vue.ref(0);
|
|
30
|
+
const realHeight = vue.ref(1);
|
|
31
|
+
const visibleHeight = vue.ref(1);
|
|
32
|
+
const isScroll = vue.ref(false);
|
|
25
33
|
vue.watch(() => props.selectedDay, () => {
|
|
26
34
|
if (props.selectedDay) {
|
|
27
35
|
weekday.value = useCalendarUser.calcCurWeek(new Date(props.selectedDay));
|
|
@@ -104,9 +112,62 @@ const CalendarUser = /* @__PURE__ */ vue.defineComponent({
|
|
|
104
112
|
}, [renderEvent(item)]);
|
|
105
113
|
})])]);
|
|
106
114
|
};
|
|
115
|
+
const onMouseMove = (event) => {
|
|
116
|
+
if (enableScroll.value) {
|
|
117
|
+
const y = event.clientY - orginY.value;
|
|
118
|
+
scrollTop.value += y;
|
|
119
|
+
orginY.value = event.clientY;
|
|
120
|
+
if (scrollContainerRef.value) {
|
|
121
|
+
scrollContainerRef.value.scrollTop = realHeight.value * (scrollTop.value / visibleHeight.value);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
event.preventDefault();
|
|
125
|
+
event.stopPropagation();
|
|
126
|
+
};
|
|
127
|
+
const onMouseUp = (event) => {
|
|
128
|
+
enableScroll.value = false;
|
|
129
|
+
event.preventDefault();
|
|
130
|
+
event.stopPropagation();
|
|
131
|
+
document.removeEventListener("mousemove", onMouseMove);
|
|
132
|
+
document.removeEventListener("mouseup", onMouseUp);
|
|
133
|
+
};
|
|
134
|
+
const onMouseDown = (event) => {
|
|
135
|
+
orginY.value = event.clientY;
|
|
136
|
+
enableScroll.value = true;
|
|
137
|
+
event.preventDefault();
|
|
138
|
+
event.stopPropagation();
|
|
139
|
+
document.addEventListener("mousemove", onMouseMove);
|
|
140
|
+
document.addEventListener("mouseup", onMouseUp);
|
|
141
|
+
};
|
|
142
|
+
const renderScrollbar = () => {
|
|
143
|
+
return vue.createVNode("div", {
|
|
144
|
+
"class": ns.b("scroll-bar")
|
|
145
|
+
}, [vue.createVNode("div", {
|
|
146
|
+
"class": ns.be("scroll-bar", "thumb"),
|
|
147
|
+
"onMousedown": onMouseDown
|
|
148
|
+
}, null)]);
|
|
149
|
+
};
|
|
150
|
+
const onScroll = (event) => {
|
|
151
|
+
var _a, _b, _c;
|
|
152
|
+
const realTop = ((_a = event.target) == null ? void 0 : _a.scrollTop) || 0;
|
|
153
|
+
realHeight.value = (_b = event.target) == null ? void 0 : _b.scrollHeight;
|
|
154
|
+
visibleHeight.value = (_c = event.target) == null ? void 0 : _c.clientHeight;
|
|
155
|
+
const realRatio = realTop / realHeight.value;
|
|
156
|
+
scrollTop.value = realRatio * visibleHeight.value;
|
|
157
|
+
};
|
|
107
158
|
const renderWeekContent = () => {
|
|
108
159
|
return vue.createVNode("div", {
|
|
109
|
-
"class": ns.b("content")
|
|
160
|
+
"class": ns.b("content"),
|
|
161
|
+
"style": {
|
|
162
|
+
["--".concat(ns.namespace, "-calendar-user-scroll-bar-thumb-height")]: "".concat(thumbHeight.value, "px"),
|
|
163
|
+
["--".concat(ns.namespace, "-calendar-user-scroll-bar-thumb-top")]: "".concat(scrollTop.value, "px")
|
|
164
|
+
}
|
|
165
|
+
}, [vue.createVNode("div", {
|
|
166
|
+
"class": ns.be("content", "wrapping"),
|
|
167
|
+
"ref": (el) => {
|
|
168
|
+
scrollContainerRef.value = el;
|
|
169
|
+
},
|
|
170
|
+
"onScroll": onScroll
|
|
110
171
|
}, [timeList.value.map((item) => {
|
|
111
172
|
return vue.createVNode("div", {
|
|
112
173
|
"class": ns.be("content", "time-item")
|
|
@@ -117,8 +178,21 @@ const CalendarUser = /* @__PURE__ */ vue.defineComponent({
|
|
|
117
178
|
"class": [ns.be("content", "week-item"), ns.e("cell")]
|
|
118
179
|
}, [renderEvent(day, item)]);
|
|
119
180
|
})]);
|
|
120
|
-
})]);
|
|
181
|
+
})]), isScroll.value && renderScrollbar()]);
|
|
121
182
|
};
|
|
183
|
+
vue.watch(() => scrollContainerRef.value, () => {
|
|
184
|
+
if (scrollContainerRef.value) {
|
|
185
|
+
realHeight.value = scrollContainerRef.value.scrollHeight;
|
|
186
|
+
visibleHeight.value = scrollContainerRef.value.clientHeight;
|
|
187
|
+
if (realHeight.value > visibleHeight.value) {
|
|
188
|
+
isScroll.value = true;
|
|
189
|
+
}
|
|
190
|
+
thumbHeight.value = visibleHeight.value * (visibleHeight.value / realHeight.value);
|
|
191
|
+
}
|
|
192
|
+
}, {
|
|
193
|
+
immediate: true,
|
|
194
|
+
deep: true
|
|
195
|
+
});
|
|
122
196
|
return {
|
|
123
197
|
ns,
|
|
124
198
|
renderWeekHeader,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-calendar-user{--ibiz-calendar-user-cell-min-height:60px;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-spacing-base);overflow:hidden}.ibiz-calendar-user__cell{min-height:var(--ibiz-calendar-user-cell-min-height);border-bottom:1px solid var(--ibiz-color-tertiary);border-left:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__cell:last-child{border-right:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__black{width:100%;height:100%}.ibiz-calendar-user .ibiz-calendar-user-more{flex-shrink:0;padding-left:var(--ibiz-spacing-tight);overflow:hidden;font-size:var(--ibiz-font-size-small);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-calendar-user .ibiz-calendar-user-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-calendar-user .ibiz-calendar-user-header{flex-shrink:0
|
|
1
|
+
.ibiz-calendar-user{--ibiz-calendar-user-cell-min-height:60px;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-spacing-base);overflow:hidden}.ibiz-calendar-user__cell{min-height:var(--ibiz-calendar-user-cell-min-height);border-bottom:1px solid var(--ibiz-color-tertiary);border-left:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__cell:last-child{border-right:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__black{width:100%;height:100%}.ibiz-calendar-user .ibiz-calendar-user-more{flex-shrink:0;padding-left:var(--ibiz-spacing-tight);overflow:hidden;font-size:var(--ibiz-font-size-small);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-calendar-user .ibiz-calendar-user-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-calendar-user .ibiz-calendar-user-header{flex-shrink:0}.ibiz-calendar-user-header__top{border-top:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user-header__time-item{display:flex;justify-content:space-between;width:100%}.ibiz-calendar-user-header__week-day{display:flex;flex:1;align-items:center;justify-content:center;width:100%}.ibiz-calendar-user-header__week-item{display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;overflow:hidden}.ibiz-calendar-user-header__time-text{display:flex;flex:1;align-items:center;justify-content:center}.ibiz-calendar-user .ibiz-calendar-user-content{position:relative;flex:1;width:100%;height:100%;overflow:hidden}.ibiz-calendar-user-content__time-item{display:flex;justify-content:space-between;width:100%}.ibiz-calendar-user-content__time-text{display:flex;flex:1;align-items:center;justify-content:center}.ibiz-calendar-user-content__week-item{display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;overflow:hidden}.ibiz-calendar-user-content__wrapping{width:100%;height:100%;overflow:auto}.ibiz-calendar-user-content__wrapping::-webkit-scrollbar{display:none}.ibiz-calendar-user-scroll-bar{position:absolute;top:var(--ibiz-calendar-user-scroll-bar-thumb-top);right:0;z-index:10;width:4px;height:100%;border-radius:var(--ibiz-border-radius-extra-small)}.ibiz-calendar-user-scroll-bar__thumb{width:4px;height:var(--ibiz-calendar-user-scroll-bar-thumb-height);cursor:pointer;background-color:#d3d3d3;border-radius:var(--ibiz-border-radius-extra-small)}
|
|
@@ -15,6 +15,7 @@ var index$6 = require('../form-detail/form-rawitem/index.cjs');
|
|
|
15
15
|
var index$7 = require('../form-detail/form-tab-panel/index.cjs');
|
|
16
16
|
var index$8 = require('../form-detail/form-tab-page/index.cjs');
|
|
17
17
|
var index$9 = require('../form-detail/form-button-list/index.cjs');
|
|
18
|
+
var index$a = require('../form-detail/form-iframe/index.cjs');
|
|
18
19
|
|
|
19
20
|
"use strict";
|
|
20
21
|
const IBizFormControl = vue3Util.withInstall(form.FormControl, function(v) {
|
|
@@ -29,6 +30,7 @@ const IBizFormControl = vue3Util.withInstall(form.FormControl, function(v) {
|
|
|
29
30
|
v.use(index$7.IBizFormTabPanel);
|
|
30
31
|
v.use(index$8.IBizFormTabPage);
|
|
31
32
|
v.use(index$9.IBizFormButtonList);
|
|
33
|
+
v.use(index$a.IBizFormIFrame);
|
|
32
34
|
});
|
|
33
35
|
|
|
34
36
|
exports.IBizFormControl = IBizFormControl;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue = require('vue');
|
|
6
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
7
|
+
var runtime = require('@ibiz-template/runtime');
|
|
8
|
+
require('./form-iframe.css');
|
|
9
|
+
|
|
10
|
+
"use strict";
|
|
11
|
+
const FormIFrame = /* @__PURE__ */ vue.defineComponent({
|
|
12
|
+
name: "IBizFormIFrame",
|
|
13
|
+
props: {
|
|
14
|
+
modelData: {
|
|
15
|
+
type: Object,
|
|
16
|
+
required: true
|
|
17
|
+
},
|
|
18
|
+
controller: {
|
|
19
|
+
type: runtime.FormIFrameController,
|
|
20
|
+
required: true
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
setup(props) {
|
|
24
|
+
const c = props.controller;
|
|
25
|
+
const ns = vue3Util.useNamespace("form-iframe");
|
|
26
|
+
vue3Util.useController(c);
|
|
27
|
+
const loading = vue.ref(true);
|
|
28
|
+
const url = vue.computed(() => {
|
|
29
|
+
return c.calcIFrameUrl();
|
|
30
|
+
});
|
|
31
|
+
const onLoad = () => {
|
|
32
|
+
loading.value = false;
|
|
33
|
+
};
|
|
34
|
+
return {
|
|
35
|
+
ns,
|
|
36
|
+
url,
|
|
37
|
+
loading,
|
|
38
|
+
onLoad
|
|
39
|
+
};
|
|
40
|
+
},
|
|
41
|
+
render() {
|
|
42
|
+
if (!this.controller.state.visible || !this.url) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return vue.withDirectives(vue.createVNode("div", {
|
|
46
|
+
"class": this.ns.b()
|
|
47
|
+
}, [vue.createVNode("iframe", {
|
|
48
|
+
"class": this.ns.e("iframe"),
|
|
49
|
+
"src": this.url,
|
|
50
|
+
"frameborder": "0",
|
|
51
|
+
"onLoad": () => this.onLoad(),
|
|
52
|
+
"onError": () => this.onLoad()
|
|
53
|
+
}, null)]), [[vue.resolveDirective("loading"), this.loading]]);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
exports.FormIFrame = FormIFrame;
|
|
58
|
+
exports.default = FormIFrame;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-form-iframe{width:100%;height:100%}.ibiz-form-iframe__iframe{width:100%;height:100%}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var runtime = require('@ibiz-template/runtime');
|
|
4
|
+
|
|
5
|
+
"use strict";
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __publicField = (obj, key, value) => {
|
|
9
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
10
|
+
return value;
|
|
11
|
+
};
|
|
12
|
+
class FormIFrameProvider {
|
|
13
|
+
constructor() {
|
|
14
|
+
__publicField(this, "component", "IBizFormIFrame");
|
|
15
|
+
}
|
|
16
|
+
async createController(detailModel, form, parent) {
|
|
17
|
+
const c = new runtime.FormIFrameController(detailModel, form, parent);
|
|
18
|
+
await c.init();
|
|
19
|
+
return c;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports.FormIFrameProvider = FormIFrameProvider;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
6
|
+
var runtime = require('@ibiz-template/runtime');
|
|
7
|
+
var formIframe = require('./form-iframe.cjs');
|
|
8
|
+
var formIframe_provider = require('./form-iframe.provider.cjs');
|
|
9
|
+
|
|
10
|
+
"use strict";
|
|
11
|
+
const IBizFormIFrame = vue3Util.withInstall(formIframe.FormIFrame, function(v) {
|
|
12
|
+
v.component(formIframe.FormIFrame.name, formIframe.FormIFrame);
|
|
13
|
+
runtime.registerFormDetailProvider("IFRAME", () => new formIframe_provider.FormIFrameProvider());
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
exports.IBizFormIFrame = IBizFormIFrame;
|
|
17
|
+
exports.default = IBizFormIFrame;
|
|
@@ -68,13 +68,15 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
68
68
|
const {
|
|
69
69
|
editorItems = []
|
|
70
70
|
} = this.c.model.editor || {};
|
|
71
|
-
editor = editorItems.map((item) => {
|
|
71
|
+
editor = editorItems.map((item, index) => {
|
|
72
72
|
const controller = this.c.form.details[item.id];
|
|
73
|
-
return vue.createVNode(compositeFormItem.CompositeFormItem, {
|
|
73
|
+
return [vue.createVNode(compositeFormItem.CompositeFormItem, {
|
|
74
74
|
"modelData": controller.model,
|
|
75
75
|
"controller": controller,
|
|
76
76
|
"attrs": this.attrs
|
|
77
|
-
}, null)
|
|
77
|
+
}, null), editorItems.length - 1 > index && vue.createVNode("span", {
|
|
78
|
+
"class": this.ns.e("composite-separator")
|
|
79
|
+
}, [vue.createTextVNode("-")])];
|
|
78
80
|
});
|
|
79
81
|
} else {
|
|
80
82
|
const editMode = (_d = (_c = (_b = this.c.editor) == null ? void 0 : _b.model) == null ? void 0 : _c.editorParams) == null ? void 0 : _d.editMode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-form-item{border-color:var(--ibiz-color-border);--ibiz-form-item-label-color:var(--ibiz-color-text-1);--ibiz-form-item-text-color:var(--ibiz-color-text-2);--ibiz-form-item-hover-color:var(--ibiz-color-text-0);--ibiz-form-item-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-form-item-readonly-color:var(--ibiz-color-disabled-text);--ibiz-form-item-border-color:transparent;--ibiz-form-item-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-placeholder-color:var(--ibiz-color-text-3);--ibiz-form-item-disabled-color:var(--ibiz-color-disabled-text);--ibiz-form-item-disabled-bg-color:var(--ibiz-color-disabled-fill);--ibiz-form-item-disabled-border-color:var(--ibiz-color-disabled-border);--ibiz-form-item-active-bg:var(--ibiz-color-fill-2);--ibiz-form-item-active-border:var(--ibiz-active-bg);--ibiz-form-item-focus-bg:var(--ibiz-color-fill-0);--ibiz-form-item-focus-border:var(--ibiz-color-focus-border);--ibiz-form-item-line-height:var(--ibiz-editor-default-line-height);--ibiz-form-item-font-weight:var(--ibiz-font-weight-regular);--ibiz-form-item-hover-edit-padding:var(--ibiz-spacing-none) 11px}.ibiz-form-item.is-compositeItem{--ibiz-form-item-compositeItem-gap:var(--ibiz-spacing-tight)}.ibiz-form-item.is-compositeItem .ibiz-form-item-container__editor{display:flex;gap:var(--ibiz-form-item-compositeItem-gap)}
|
|
1
|
+
.ibiz-form-item{border-color:var(--ibiz-color-border);--ibiz-form-item-label-color:var(--ibiz-color-text-1);--ibiz-form-item-text-color:var(--ibiz-color-text-2);--ibiz-form-item-hover-color:var(--ibiz-color-text-0);--ibiz-form-item-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-form-item-readonly-color:var(--ibiz-color-disabled-text);--ibiz-form-item-border-color:transparent;--ibiz-form-item-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-placeholder-color:var(--ibiz-color-text-3);--ibiz-form-item-disabled-color:var(--ibiz-color-disabled-text);--ibiz-form-item-disabled-bg-color:var(--ibiz-color-disabled-fill);--ibiz-form-item-disabled-border-color:var(--ibiz-color-disabled-border);--ibiz-form-item-active-bg:var(--ibiz-color-fill-2);--ibiz-form-item-active-border:var(--ibiz-active-bg);--ibiz-form-item-focus-bg:var(--ibiz-color-fill-0);--ibiz-form-item-focus-border:var(--ibiz-color-focus-border);--ibiz-form-item-line-height:var(--ibiz-editor-default-line-height);--ibiz-form-item-font-weight:var(--ibiz-font-weight-regular);--ibiz-form-item-hover-edit-padding:var(--ibiz-spacing-none) 11px}.ibiz-form-item.is-compositeItem{--ibiz-form-item-compositeItem-gap:var(--ibiz-spacing-tight)}.ibiz-form-item.is-compositeItem .ibiz-form-item__composite-separator{line-height:var(--ibiz-form-item-container-line-height)}.ibiz-form-item.is-compositeItem .ibiz-form-item-container__editor{display:flex;gap:var(--ibiz-form-item-compositeItem-gap)}
|
|
@@ -10,6 +10,7 @@ var index$6 = require('./form-rawitem/index.cjs');
|
|
|
10
10
|
var index$7 = require('./form-tab-panel/index.cjs');
|
|
11
11
|
var index$8 = require('./form-tab-page/index.cjs');
|
|
12
12
|
var index$9 = require('./form-button-list/index.cjs');
|
|
13
|
+
var index$a = require('./form-iframe/index.cjs');
|
|
13
14
|
var formItemContainer = require('./form-item/form-item-container/form-item-container.cjs');
|
|
14
15
|
var formPage_item = require('./form-page/form-page-item/form-page.item.cjs');
|
|
15
16
|
|
|
@@ -25,5 +26,6 @@ exports.IBizFormRawItem = index$6.IBizFormRawItem;
|
|
|
25
26
|
exports.IBizFormTabPanel = index$7.IBizFormTabPanel;
|
|
26
27
|
exports.IBizFormTabPage = index$8.IBizFormTabPage;
|
|
27
28
|
exports.IBizFormButtonList = index$9.IBizFormButtonList;
|
|
29
|
+
exports.IBizFormIFrame = index$a.IBizFormIFrame;
|
|
28
30
|
exports.IBizFormItemContainer = formItemContainer.IBizFormItemContainer;
|
|
29
31
|
exports.IBizFormPageItem = formPage_item.IBizFormPageItem;
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./search-form/index.cjs');
|
|
4
4
|
require('./form-detail/index.cjs');
|
|
5
|
-
var index$
|
|
6
|
-
var index$
|
|
5
|
+
var index$c = require('./edit-form/index.cjs');
|
|
6
|
+
var index$d = require('./form/index.cjs');
|
|
7
7
|
var index$1 = require('./form-detail/form-group-panel/index.cjs');
|
|
8
8
|
var formItemContainer = require('./form-detail/form-item/form-item-container/form-item-container.cjs');
|
|
9
9
|
var index$2 = require('./form-detail/form-item/index.cjs');
|
|
@@ -16,12 +16,13 @@ var index$7 = require('./form-detail/form-rawitem/index.cjs');
|
|
|
16
16
|
var index$8 = require('./form-detail/form-tab-panel/index.cjs');
|
|
17
17
|
var index$9 = require('./form-detail/form-tab-page/index.cjs');
|
|
18
18
|
var index$a = require('./form-detail/form-button-list/index.cjs');
|
|
19
|
+
var index$b = require('./form-detail/form-iframe/index.cjs');
|
|
19
20
|
|
|
20
21
|
"use strict";
|
|
21
22
|
|
|
22
23
|
exports.IBizSearchFormControl = index.IBizSearchFormControl;
|
|
23
|
-
exports.IBizEditFormControl = index$
|
|
24
|
-
exports.IBizFormControl = index$
|
|
24
|
+
exports.IBizEditFormControl = index$c.IBizEditFormControl;
|
|
25
|
+
exports.IBizFormControl = index$d.IBizFormControl;
|
|
25
26
|
exports.IBizFormGroupPanel = index$1.IBizFormGroupPanel;
|
|
26
27
|
exports.IBizFormItemContainer = formItemContainer.IBizFormItemContainer;
|
|
27
28
|
exports.IBizFormItem = index$2.IBizFormItem;
|
|
@@ -34,3 +35,4 @@ exports.IBizFormRawItem = index$7.IBizFormRawItem;
|
|
|
34
35
|
exports.IBizFormTabPanel = index$8.IBizFormTabPanel;
|
|
35
36
|
exports.IBizFormTabPage = index$9.IBizFormTabPage;
|
|
36
37
|
exports.IBizFormButtonList = index$a.IBizFormButtonList;
|
|
38
|
+
exports.IBizFormIFrame = index$b.IBizFormIFrame;
|
|
@@ -6,6 +6,7 @@ var runtime = require('@ibiz-template/runtime');
|
|
|
6
6
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
7
7
|
require('../grid-column/index.cjs');
|
|
8
8
|
var rowEditPopover = require('../row-edit-popover/row-edit-popover.cjs');
|
|
9
|
+
var index$6 = require('../virtualized-table/index.cjs');
|
|
9
10
|
var grid = require('./grid.cjs');
|
|
10
11
|
var grid_provider = require('./grid.provider.cjs');
|
|
11
12
|
var gridControl_util = require('./grid-control.util.cjs');
|
|
@@ -26,6 +27,7 @@ const IBizGridControl = vue3Util.withInstall(grid.GridControl, (v) => {
|
|
|
26
27
|
v.use(index$3.IBizGridFieldEditColumn);
|
|
27
28
|
v.use(index$4.IBizGridGroupColumn);
|
|
28
29
|
v.use(index$5.IBizDynamicGridFieldEditColumn);
|
|
30
|
+
v.use(index$6.IBizVirtualizedTableControl);
|
|
29
31
|
runtime.registerControlProvider(runtime.ControlType.GRID, () => new grid_provider.GridProvider());
|
|
30
32
|
});
|
|
31
33
|
|
|
@@ -39,12 +39,9 @@ const GridFieldColumn = /* @__PURE__ */ vue.defineComponent({
|
|
|
39
39
|
props.controller.openLinkView(props.row, event);
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
|
-
const CustomHtml =
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}, {
|
|
46
|
-
deep: true,
|
|
47
|
-
immediate: true
|
|
42
|
+
const CustomHtml = vue3Util.computedAsync(async () => {
|
|
43
|
+
const html = await props.controller.getCustomHtml(props.row);
|
|
44
|
+
return html;
|
|
48
45
|
});
|
|
49
46
|
const fieldValue = vue.computed(() => props.row.data[props.controller.fieldName]);
|
|
50
47
|
const formatValue = vue.computed(() => props.controller.formatValue(fieldValue.value));
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
6
|
+
var runtime = require('@ibiz-template/runtime');
|
|
7
|
+
var virtualizedTable = require('./virtualized-table.cjs');
|
|
8
|
+
var virtualizedTable_provider = require('./virtualized-table.provider.cjs');
|
|
9
|
+
|
|
10
|
+
"use strict";
|
|
11
|
+
const IBizVirtualizedTableControl = vue3Util.withInstall(
|
|
12
|
+
virtualizedTable.VirtualizedTableControl,
|
|
13
|
+
(v) => {
|
|
14
|
+
v.component(virtualizedTable.VirtualizedTableControl.name, virtualizedTable.VirtualizedTableControl);
|
|
15
|
+
runtime.registerControlProvider(
|
|
16
|
+
"GRID_VIRTUALIZED_TABLE",
|
|
17
|
+
() => new virtualizedTable_provider.VirtualizedTableProvider()
|
|
18
|
+
);
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
exports.IBizVirtualizedTableControl = IBizVirtualizedTableControl;
|
|
23
|
+
exports.default = IBizVirtualizedTableControl;
|