@ibiz-template/vue3-components 0.7.41-alpha.12 → 0.7.41-alpha.14
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-1fHusiqt.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-z0RY8bO1.js} +1 -1
- package/dist/{xlsx-util-Q9msA8ef.js → xlsx-util-8Du1A340.js} +1 -1
- package/es/control/calendar/calendar.mjs +4 -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/drbar/drbar.controller.d.ts +6 -0
- package/es/control/drbar/drbar.controller.mjs +8 -0
- package/es/control/drbar/drbar.mjs +6 -0
- package/es/control/drtab/drtab-control.util.mjs +1 -1
- package/es/control/drtab/drtab.controller.d.ts +6 -0
- package/es/control/drtab/drtab.controller.mjs +9 -0
- package/es/control/drtab/drtab.mjs +13 -0
- 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/gantt.mjs +4 -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/tab-exp-panel/index.d.ts +1 -0
- package/es/control/tab-exp-panel/tab-exp-panel.css +1 -1
- package/es/control/tab-exp-panel/tab-exp-panel.d.ts +2 -1
- package/es/control/tab-exp-panel/tab-exp-panel.mjs +21 -2
- package/es/control/tree/index.d.ts +1 -1
- package/es/control/tree/tree.d.ts +1 -1
- package/es/control/tree/tree.mjs +4 -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/es/util/fullscreen/fullscreen-util.mjs +1 -1
- package/es/view-engine/custom-view.engine.d.ts +1 -1
- package/es/view-engine/custom-view.engine.mjs +5 -5
- package/es/view-engine/de-index-view-engine.mjs +1 -1
- package/es/view-engine/edit-view.engine.mjs +1 -1
- package/es/view-engine/md-custom-view.engine.d.ts +1 -1
- package/es/view-engine/md-custom-view.engine.mjs +5 -5
- package/es/view-engine/opt-view.engine.mjs +1 -1
- package/lib/control/calendar/calendar.cjs +4 -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/drbar/drbar.cjs +6 -0
- package/lib/control/drbar/drbar.controller.cjs +8 -0
- package/lib/control/drtab/drtab-control.util.cjs +1 -1
- package/lib/control/drtab/drtab.cjs +13 -0
- package/lib/control/drtab/drtab.controller.cjs +9 -0
- 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/gantt/gantt.cjs +4 -1
- 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/control/tab-exp-panel/tab-exp-panel.cjs +20 -1
- package/lib/control/tab-exp-panel/tab-exp-panel.css +1 -1
- package/lib/control/tree/tree.cjs +4 -1
- 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/lib/util/fullscreen/fullscreen-util.cjs +1 -1
- package/lib/view-engine/custom-view.engine.cjs +5 -5
- package/lib/view-engine/de-index-view-engine.cjs +1 -1
- package/lib/view-engine/edit-view.engine.cjs +1 -1
- package/lib/view-engine/md-custom-view.engine.cjs +5 -5
- package/lib/view-engine/opt-view.engine.cjs +1 -1
- package/package.json +5 -5
- package/dist/ibiz-markdown-editor-KyK5mBTS.js +0 -1
- package/dist/index-pyv7Wdpx.js +0 -4
- /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.12_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.14_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 +0 -0
- /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.12_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.14_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 +0 -0
|
@@ -284,7 +284,10 @@ const CalendarControl = /* @__PURE__ */ defineComponent({
|
|
|
284
284
|
if (!contextMenuC.model.detoolbarItems) {
|
|
285
285
|
return;
|
|
286
286
|
}
|
|
287
|
-
await contextMenuC.calcButtonState(item.deData || (item.deData ? item : void 0), targetCalendarItem.appDataEntityId
|
|
287
|
+
await contextMenuC.calcButtonState(item.deData || (item.deData ? item : void 0), targetCalendarItem.appDataEntityId, {
|
|
288
|
+
view: c.view,
|
|
289
|
+
ctrl: c
|
|
290
|
+
});
|
|
288
291
|
const menuState = contextMenuC.state.buttonsState;
|
|
289
292
|
const menus = calcContextMenuItems(contextMenuC.model.detoolbarItems, item, evt, menuState);
|
|
290
293
|
if (!menus.length) {
|
|
@@ -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)}
|
|
@@ -20,6 +20,14 @@ const CalendarUser = /* @__PURE__ */ defineComponent({
|
|
|
20
20
|
timeList.value = getDayTime();
|
|
21
21
|
const popoverValue = ref("");
|
|
22
22
|
const curPopover = ref();
|
|
23
|
+
const scrollContainerRef = ref();
|
|
24
|
+
const scrollTop = ref(0);
|
|
25
|
+
const thumbHeight = ref(0);
|
|
26
|
+
const enableScroll = ref(false);
|
|
27
|
+
const orginY = ref(0);
|
|
28
|
+
const realHeight = ref(1);
|
|
29
|
+
const visibleHeight = ref(1);
|
|
30
|
+
const isScroll = ref(false);
|
|
23
31
|
watch(() => props.selectedDay, () => {
|
|
24
32
|
if (props.selectedDay) {
|
|
25
33
|
weekday.value = calcCurWeek(new Date(props.selectedDay));
|
|
@@ -102,9 +110,62 @@ const CalendarUser = /* @__PURE__ */ defineComponent({
|
|
|
102
110
|
}, [renderEvent(item)]);
|
|
103
111
|
})])]);
|
|
104
112
|
};
|
|
113
|
+
const onMouseMove = (event) => {
|
|
114
|
+
if (enableScroll.value) {
|
|
115
|
+
const y = event.clientY - orginY.value;
|
|
116
|
+
scrollTop.value += y;
|
|
117
|
+
orginY.value = event.clientY;
|
|
118
|
+
if (scrollContainerRef.value) {
|
|
119
|
+
scrollContainerRef.value.scrollTop = realHeight.value * (scrollTop.value / visibleHeight.value);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
event.preventDefault();
|
|
123
|
+
event.stopPropagation();
|
|
124
|
+
};
|
|
125
|
+
const onMouseUp = (event) => {
|
|
126
|
+
enableScroll.value = false;
|
|
127
|
+
event.preventDefault();
|
|
128
|
+
event.stopPropagation();
|
|
129
|
+
document.removeEventListener("mousemove", onMouseMove);
|
|
130
|
+
document.removeEventListener("mouseup", onMouseUp);
|
|
131
|
+
};
|
|
132
|
+
const onMouseDown = (event) => {
|
|
133
|
+
orginY.value = event.clientY;
|
|
134
|
+
enableScroll.value = true;
|
|
135
|
+
event.preventDefault();
|
|
136
|
+
event.stopPropagation();
|
|
137
|
+
document.addEventListener("mousemove", onMouseMove);
|
|
138
|
+
document.addEventListener("mouseup", onMouseUp);
|
|
139
|
+
};
|
|
140
|
+
const renderScrollbar = () => {
|
|
141
|
+
return createVNode("div", {
|
|
142
|
+
"class": ns.b("scroll-bar")
|
|
143
|
+
}, [createVNode("div", {
|
|
144
|
+
"class": ns.be("scroll-bar", "thumb"),
|
|
145
|
+
"onMousedown": onMouseDown
|
|
146
|
+
}, null)]);
|
|
147
|
+
};
|
|
148
|
+
const onScroll = (event) => {
|
|
149
|
+
var _a, _b, _c;
|
|
150
|
+
const realTop = ((_a = event.target) == null ? void 0 : _a.scrollTop) || 0;
|
|
151
|
+
realHeight.value = (_b = event.target) == null ? void 0 : _b.scrollHeight;
|
|
152
|
+
visibleHeight.value = (_c = event.target) == null ? void 0 : _c.clientHeight;
|
|
153
|
+
const realRatio = realTop / realHeight.value;
|
|
154
|
+
scrollTop.value = realRatio * visibleHeight.value;
|
|
155
|
+
};
|
|
105
156
|
const renderWeekContent = () => {
|
|
106
157
|
return createVNode("div", {
|
|
107
|
-
"class": ns.b("content")
|
|
158
|
+
"class": ns.b("content"),
|
|
159
|
+
"style": {
|
|
160
|
+
["--".concat(ns.namespace, "-calendar-user-scroll-bar-thumb-height")]: "".concat(thumbHeight.value, "px"),
|
|
161
|
+
["--".concat(ns.namespace, "-calendar-user-scroll-bar-thumb-top")]: "".concat(scrollTop.value, "px")
|
|
162
|
+
}
|
|
163
|
+
}, [createVNode("div", {
|
|
164
|
+
"class": ns.be("content", "wrapping"),
|
|
165
|
+
"ref": (el) => {
|
|
166
|
+
scrollContainerRef.value = el;
|
|
167
|
+
},
|
|
168
|
+
"onScroll": onScroll
|
|
108
169
|
}, [timeList.value.map((item) => {
|
|
109
170
|
return createVNode("div", {
|
|
110
171
|
"class": ns.be("content", "time-item")
|
|
@@ -115,8 +176,21 @@ const CalendarUser = /* @__PURE__ */ defineComponent({
|
|
|
115
176
|
"class": [ns.be("content", "week-item"), ns.e("cell")]
|
|
116
177
|
}, [renderEvent(day, item)]);
|
|
117
178
|
})]);
|
|
118
|
-
})]);
|
|
179
|
+
})]), isScroll.value && renderScrollbar()]);
|
|
119
180
|
};
|
|
181
|
+
watch(() => scrollContainerRef.value, () => {
|
|
182
|
+
if (scrollContainerRef.value) {
|
|
183
|
+
realHeight.value = scrollContainerRef.value.scrollHeight;
|
|
184
|
+
visibleHeight.value = scrollContainerRef.value.clientHeight;
|
|
185
|
+
if (realHeight.value > visibleHeight.value) {
|
|
186
|
+
isScroll.value = true;
|
|
187
|
+
}
|
|
188
|
+
thumbHeight.value = visibleHeight.value * (visibleHeight.value / realHeight.value);
|
|
189
|
+
}
|
|
190
|
+
}, {
|
|
191
|
+
immediate: true,
|
|
192
|
+
deep: true
|
|
193
|
+
});
|
|
120
194
|
return {
|
|
121
195
|
ns,
|
|
122
196
|
renderWeekHeader,
|
|
@@ -175,8 +175,8 @@ export declare const DataViewControl: import("vue").DefineComponent<{
|
|
|
175
175
|
};
|
|
176
176
|
}>>, {
|
|
177
177
|
params: import("@ibiz-template/core").IApiParams;
|
|
178
|
-
mdctrlActiveMode: number;
|
|
179
178
|
singleSelect: boolean;
|
|
179
|
+
mdctrlActiveMode: number;
|
|
180
180
|
isSimple: boolean;
|
|
181
181
|
loadDefault: boolean;
|
|
182
182
|
}, {}>;
|
|
@@ -114,8 +114,8 @@ export declare const IBizDataViewControl: import("@ibiz-template/vue3-util").Typ
|
|
|
114
114
|
};
|
|
115
115
|
}>>, {
|
|
116
116
|
params: import("@ibiz-template/core").IApiParams;
|
|
117
|
-
mdctrlActiveMode: number;
|
|
118
117
|
singleSelect: boolean;
|
|
118
|
+
mdctrlActiveMode: number;
|
|
119
119
|
isSimple: boolean;
|
|
120
120
|
loadDefault: boolean;
|
|
121
121
|
}, {}>>;
|
|
@@ -210,4 +210,10 @@ export declare class DRBarController extends ControlController<IDEDRBar, IDRBarS
|
|
|
210
210
|
* @return {*} {Promise<void>}
|
|
211
211
|
*/
|
|
212
212
|
protected onDestroyed(): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* @description 设置激活项
|
|
215
|
+
* @param {string} name
|
|
216
|
+
* @memberof DRBarController
|
|
217
|
+
*/
|
|
218
|
+
setActive(name: string): void;
|
|
213
219
|
}
|
|
@@ -555,6 +555,14 @@ class DRBarController extends ControlController {
|
|
|
555
555
|
this.counter.destroy();
|
|
556
556
|
}
|
|
557
557
|
}
|
|
558
|
+
/**
|
|
559
|
+
* @description 设置激活项
|
|
560
|
+
* @param {string} name
|
|
561
|
+
* @memberof DRBarController
|
|
562
|
+
*/
|
|
563
|
+
setActive(name) {
|
|
564
|
+
this.handleSelectChange(name);
|
|
565
|
+
}
|
|
558
566
|
}
|
|
559
567
|
|
|
560
568
|
export { DRBarController };
|
|
@@ -78,7 +78,13 @@ const DRBarControl = /* @__PURE__ */ defineComponent({
|
|
|
78
78
|
});
|
|
79
79
|
c.setRouter(router);
|
|
80
80
|
const handleSelect = (key) => {
|
|
81
|
+
var _a;
|
|
81
82
|
c.handleSelectChange(key);
|
|
83
|
+
const drBarItem = (_a = c.model.dedrctrlItems) == null ? void 0 : _a.find((item) => item.id === key);
|
|
84
|
+
c.evt.emit("onTabChange", {
|
|
85
|
+
name: key,
|
|
86
|
+
item: drBarItem || c.state.drBarItems[0]
|
|
87
|
+
});
|
|
82
88
|
};
|
|
83
89
|
const route = useRoute();
|
|
84
90
|
let expViewRoutePath = "";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, watch, watchEffect, onUnmounted } from 'vue';
|
|
2
|
-
import { defaultNamespace } from '../../node_modules/.pnpm/@ibiz-template_core@0.7.41-alpha.
|
|
2
|
+
import { defaultNamespace } from '../../node_modules/.pnpm/@ibiz-template_core@0.7.41-alpha.14_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
3
|
|
|
4
4
|
"use strict";
|
|
5
5
|
function useAppDRTab(c, controlRef, counterData) {
|
|
@@ -220,4 +220,10 @@ export declare class DRTabController extends ControlController<IDEDRTab, IDRTabS
|
|
|
220
220
|
* @return {*} {Promise<void>}
|
|
221
221
|
*/
|
|
222
222
|
protected onDestroyed(): Promise<void>;
|
|
223
|
+
/**
|
|
224
|
+
* @description 设置激活项
|
|
225
|
+
* @param {string} name
|
|
226
|
+
* @memberof DRTabController
|
|
227
|
+
*/
|
|
228
|
+
setActive(name: string): void;
|
|
223
229
|
}
|
|
@@ -505,6 +505,15 @@ class DRTabController extends ControlController {
|
|
|
505
505
|
this.counter.destroy();
|
|
506
506
|
}
|
|
507
507
|
}
|
|
508
|
+
/**
|
|
509
|
+
* @description 设置激活项
|
|
510
|
+
* @param {string} name
|
|
511
|
+
* @memberof DRTabController
|
|
512
|
+
*/
|
|
513
|
+
setActive(name) {
|
|
514
|
+
this.state.activeName = name;
|
|
515
|
+
this.handleTabChange();
|
|
516
|
+
}
|
|
508
517
|
}
|
|
509
518
|
|
|
510
519
|
export { DRTabController };
|
|
@@ -76,12 +76,25 @@ const DRTabControl = /* @__PURE__ */ defineComponent({
|
|
|
76
76
|
(_a2 = c.counter) == null ? void 0 : _a2.offChange(fn);
|
|
77
77
|
});
|
|
78
78
|
c.setRouter(router);
|
|
79
|
+
const emitChange = () => {
|
|
80
|
+
var _a2;
|
|
81
|
+
const {
|
|
82
|
+
activeName
|
|
83
|
+
} = c.state;
|
|
84
|
+
const drBarItem = (_a2 = c.model.dedrtabPages) == null ? void 0 : _a2.find((item) => item.id === activeName);
|
|
85
|
+
c.evt.emit("onTabChange", {
|
|
86
|
+
name: activeName,
|
|
87
|
+
item: drBarItem || c.state.drTabPages[0]
|
|
88
|
+
});
|
|
89
|
+
};
|
|
79
90
|
const handleTabChange = () => {
|
|
80
91
|
c.handleTabChange();
|
|
92
|
+
emitChange();
|
|
81
93
|
};
|
|
82
94
|
const onTabChange = (key) => {
|
|
83
95
|
c.state.activeName = key;
|
|
84
96
|
c.handleTabChange();
|
|
97
|
+
emitChange();
|
|
85
98
|
};
|
|
86
99
|
const route = useRoute();
|
|
87
100
|
let expViewRoutePath = "";
|
|
@@ -11,6 +11,7 @@ import { IBizFormRawItem } from '../form-detail/form-rawitem/index.mjs';
|
|
|
11
11
|
import { IBizFormTabPanel } from '../form-detail/form-tab-panel/index.mjs';
|
|
12
12
|
import { IBizFormTabPage } from '../form-detail/form-tab-page/index.mjs';
|
|
13
13
|
import { IBizFormButtonList } from '../form-detail/form-button-list/index.mjs';
|
|
14
|
+
import { IBizFormIFrame } from '../form-detail/form-iframe/index.mjs';
|
|
14
15
|
|
|
15
16
|
"use strict";
|
|
16
17
|
const IBizFormControl = withInstall(FormControl, function(v) {
|
|
@@ -25,6 +26,7 @@ const IBizFormControl = withInstall(FormControl, function(v) {
|
|
|
25
26
|
v.use(IBizFormTabPanel);
|
|
26
27
|
v.use(IBizFormTabPage);
|
|
27
28
|
v.use(IBizFormButtonList);
|
|
29
|
+
v.use(IBizFormIFrame);
|
|
28
30
|
});
|
|
29
31
|
|
|
30
32
|
export { IBizFormControl, IBizFormControl as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-form-iframe{width:100%;height:100%}.ibiz-form-iframe__iframe{width:100%;height:100%}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
import { IDEFormIFrame } from '@ibiz/model-core';
|
|
3
|
+
import { FormIFrameController } from '@ibiz-template/runtime';
|
|
4
|
+
import './form-iframe.scss';
|
|
5
|
+
export declare const FormIFrame: import("vue").DefineComponent<{
|
|
6
|
+
modelData: {
|
|
7
|
+
type: PropType<IDEFormIFrame>;
|
|
8
|
+
required: true;
|
|
9
|
+
};
|
|
10
|
+
controller: {
|
|
11
|
+
type: typeof FormIFrameController;
|
|
12
|
+
required: true;
|
|
13
|
+
};
|
|
14
|
+
}, {
|
|
15
|
+
ns: import("@ibiz-template/core").Namespace;
|
|
16
|
+
url: import("vue").ComputedRef<string>;
|
|
17
|
+
loading: import("vue").Ref<boolean>;
|
|
18
|
+
onLoad: () => void;
|
|
19
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
20
|
+
modelData: {
|
|
21
|
+
type: PropType<IDEFormIFrame>;
|
|
22
|
+
required: true;
|
|
23
|
+
};
|
|
24
|
+
controller: {
|
|
25
|
+
type: typeof FormIFrameController;
|
|
26
|
+
required: true;
|
|
27
|
+
};
|
|
28
|
+
}>>, {}, {}>;
|
|
29
|
+
export default FormIFrame;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ref, computed, createVNode, resolveDirective, withDirectives, defineComponent } from 'vue';
|
|
2
|
+
import { useNamespace, useController } from '@ibiz-template/vue3-util';
|
|
3
|
+
import { FormIFrameController } from '@ibiz-template/runtime';
|
|
4
|
+
import './form-iframe.css';
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
const FormIFrame = /* @__PURE__ */ defineComponent({
|
|
8
|
+
name: "IBizFormIFrame",
|
|
9
|
+
props: {
|
|
10
|
+
modelData: {
|
|
11
|
+
type: Object,
|
|
12
|
+
required: true
|
|
13
|
+
},
|
|
14
|
+
controller: {
|
|
15
|
+
type: FormIFrameController,
|
|
16
|
+
required: true
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
setup(props) {
|
|
20
|
+
const c = props.controller;
|
|
21
|
+
const ns = useNamespace("form-iframe");
|
|
22
|
+
useController(c);
|
|
23
|
+
const loading = ref(true);
|
|
24
|
+
const url = computed(() => {
|
|
25
|
+
return c.calcIFrameUrl();
|
|
26
|
+
});
|
|
27
|
+
const onLoad = () => {
|
|
28
|
+
loading.value = false;
|
|
29
|
+
};
|
|
30
|
+
return {
|
|
31
|
+
ns,
|
|
32
|
+
url,
|
|
33
|
+
loading,
|
|
34
|
+
onLoad
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
render() {
|
|
38
|
+
if (!this.controller.state.visible || !this.url) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
return withDirectives(createVNode("div", {
|
|
42
|
+
"class": this.ns.b()
|
|
43
|
+
}, [createVNode("iframe", {
|
|
44
|
+
"class": this.ns.e("iframe"),
|
|
45
|
+
"src": this.url,
|
|
46
|
+
"frameborder": "0",
|
|
47
|
+
"onLoad": () => this.onLoad(),
|
|
48
|
+
"onError": () => this.onLoad()
|
|
49
|
+
}, null)]), [[resolveDirective("loading"), this.loading]]);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
export { FormIFrame, FormIFrame as default };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FormController, FormIFrameController, IFormDetailContainerController, IFormDetailProvider } from '@ibiz-template/runtime';
|
|
2
|
+
import { IDEFormIFrame } from '@ibiz/model-core';
|
|
3
|
+
/**
|
|
4
|
+
* 表单直接嵌入视图
|
|
5
|
+
*
|
|
6
|
+
* @export
|
|
7
|
+
* @class FormIFrameProvider
|
|
8
|
+
* @implements {IFormDetailProvider}
|
|
9
|
+
*/
|
|
10
|
+
export declare class FormIFrameProvider implements IFormDetailProvider {
|
|
11
|
+
component: string;
|
|
12
|
+
createController(detailModel: IDEFormIFrame, form: FormController, parent: IFormDetailContainerController | undefined): Promise<FormIFrameController>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FormIFrameController } from '@ibiz-template/runtime';
|
|
2
|
+
|
|
3
|
+
"use strict";
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __publicField = (obj, key, value) => {
|
|
7
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
8
|
+
return value;
|
|
9
|
+
};
|
|
10
|
+
class FormIFrameProvider {
|
|
11
|
+
constructor() {
|
|
12
|
+
__publicField(this, "component", "IBizFormIFrame");
|
|
13
|
+
}
|
|
14
|
+
async createController(detailModel, form, parent) {
|
|
15
|
+
const c = new FormIFrameController(detailModel, form, parent);
|
|
16
|
+
await c.init();
|
|
17
|
+
return c;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { FormIFrameProvider };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const IBizFormIFrame: import("@ibiz-template/vue3-util").TypeWithInstall<import("vue").DefineComponent<{
|
|
2
|
+
modelData: {
|
|
3
|
+
type: import("vue").PropType<import("@ibiz/model-core").IDEFormIFrame>;
|
|
4
|
+
required: true;
|
|
5
|
+
};
|
|
6
|
+
controller: {
|
|
7
|
+
type: typeof import("@ibiz-template/runtime").FormIFrameController;
|
|
8
|
+
required: true;
|
|
9
|
+
};
|
|
10
|
+
}, {
|
|
11
|
+
ns: import("@ibiz-template/core").Namespace;
|
|
12
|
+
url: import("vue").ComputedRef<string>;
|
|
13
|
+
loading: import("vue").Ref<boolean>;
|
|
14
|
+
onLoad: () => void;
|
|
15
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
16
|
+
modelData: {
|
|
17
|
+
type: import("vue").PropType<import("@ibiz/model-core").IDEFormIFrame>;
|
|
18
|
+
required: true;
|
|
19
|
+
};
|
|
20
|
+
controller: {
|
|
21
|
+
type: typeof import("@ibiz-template/runtime").FormIFrameController;
|
|
22
|
+
required: true;
|
|
23
|
+
};
|
|
24
|
+
}>>, {}, {}>>;
|
|
25
|
+
export default IBizFormIFrame;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { withInstall } from '@ibiz-template/vue3-util';
|
|
2
|
+
import { registerFormDetailProvider } from '@ibiz-template/runtime';
|
|
3
|
+
import { FormIFrame } from './form-iframe.mjs';
|
|
4
|
+
import { FormIFrameProvider } from './form-iframe.provider.mjs';
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
const IBizFormIFrame = withInstall(FormIFrame, function(v) {
|
|
8
|
+
v.component(FormIFrame.name, FormIFrame);
|
|
9
|
+
registerFormDetailProvider("IFRAME", () => new FormIFrameProvider());
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export { IBizFormIFrame, IBizFormIFrame as default };
|
|
@@ -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)}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isVNode, ref, createVNode, resolveComponent, h, defineComponent } from 'vue';
|
|
1
|
+
import { isVNode, ref, createVNode, createTextVNode, resolveComponent, h, defineComponent } from 'vue';
|
|
2
2
|
import { useNamespace } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { CompositeFormItem } from './composite-form-item/composite-form-item.mjs';
|
|
4
4
|
import './form-item.css';
|
|
@@ -64,13 +64,15 @@ const FormItem = /* @__PURE__ */ defineComponent({
|
|
|
64
64
|
const {
|
|
65
65
|
editorItems = []
|
|
66
66
|
} = this.c.model.editor || {};
|
|
67
|
-
editor = editorItems.map((item) => {
|
|
67
|
+
editor = editorItems.map((item, index) => {
|
|
68
68
|
const controller = this.c.form.details[item.id];
|
|
69
|
-
return createVNode(CompositeFormItem, {
|
|
69
|
+
return [createVNode(CompositeFormItem, {
|
|
70
70
|
"modelData": controller.model,
|
|
71
71
|
"controller": controller,
|
|
72
72
|
"attrs": this.attrs
|
|
73
|
-
}, null)
|
|
73
|
+
}, null), editorItems.length - 1 > index && createVNode("span", {
|
|
74
|
+
"class": this.ns.e("composite-separator")
|
|
75
|
+
}, [createTextVNode("-")])];
|
|
74
76
|
});
|
|
75
77
|
} else {
|
|
76
78
|
const editMode = (_d = (_c = (_b = this.c.editor) == null ? void 0 : _b.model) == null ? void 0 : _c.editorParams) == null ? void 0 : _d.editMode;
|
|
@@ -8,6 +8,7 @@ export { IBizFormRawItem } from './form-rawitem/index.mjs';
|
|
|
8
8
|
export { IBizFormTabPanel } from './form-tab-panel/index.mjs';
|
|
9
9
|
export { IBizFormTabPage } from './form-tab-page/index.mjs';
|
|
10
10
|
export { IBizFormButtonList } from './form-button-list/index.mjs';
|
|
11
|
+
export { IBizFormIFrame } from './form-iframe/index.mjs';
|
|
11
12
|
export { IBizFormItemContainer } from './form-item/form-item-container/form-item-container.mjs';
|
|
12
13
|
export { IBizFormPageItem } from './form-page/form-page-item/form-page.item.mjs';
|
|
13
14
|
|
|
@@ -14,5 +14,6 @@ export { IBizFormRawItem } from './form-detail/form-rawitem/index.mjs';
|
|
|
14
14
|
export { IBizFormTabPanel } from './form-detail/form-tab-panel/index.mjs';
|
|
15
15
|
export { IBizFormTabPage } from './form-detail/form-tab-page/index.mjs';
|
|
16
16
|
export { IBizFormButtonList } from './form-detail/form-button-list/index.mjs';
|
|
17
|
+
export { IBizFormIFrame } from './form-detail/form-iframe/index.mjs';
|
|
17
18
|
|
|
18
19
|
"use strict";
|
|
@@ -132,7 +132,7 @@ export declare const GanttControl: import("vue").DefineComponent<{
|
|
|
132
132
|
};
|
|
133
133
|
}>>, {
|
|
134
134
|
params: import("@ibiz-template/core").IApiParams;
|
|
135
|
-
mdctrlActiveMode: number;
|
|
136
135
|
singleSelect: boolean;
|
|
136
|
+
mdctrlActiveMode: number;
|
|
137
137
|
loadDefault: boolean;
|
|
138
138
|
}, {}>;
|
|
@@ -329,7 +329,10 @@ const GanttControl = /* @__PURE__ */ defineComponent({
|
|
|
329
329
|
if (!contextMenuC.model.detoolbarItems) {
|
|
330
330
|
return;
|
|
331
331
|
}
|
|
332
|
-
await contextMenuC.calcButtonState(nodeData._deData || (nodeData.srfkey ? nodeData : void 0), nodeModel.appDataEntityId
|
|
332
|
+
await contextMenuC.calcButtonState(nodeData._deData || (nodeData.srfkey ? nodeData : void 0), nodeModel.appDataEntityId, {
|
|
333
|
+
view: c.view,
|
|
334
|
+
ctrl: c
|
|
335
|
+
});
|
|
333
336
|
const menuState = contextMenuC.state.buttonsState;
|
|
334
337
|
const menus = calcContextMenuItems(contextMenuC.model.detoolbarItems, nodeData, evt, menuState);
|
|
335
338
|
if (!menus.length) {
|
|
@@ -83,8 +83,8 @@ export declare const IBizGanttControl: import("@ibiz-template/vue3-util").TypeWi
|
|
|
83
83
|
};
|
|
84
84
|
}>>, {
|
|
85
85
|
params: import("@ibiz-template/core").IApiParams;
|
|
86
|
-
mdctrlActiveMode: number;
|
|
87
86
|
singleSelect: boolean;
|
|
87
|
+
mdctrlActiveMode: number;
|
|
88
88
|
loadDefault: boolean;
|
|
89
89
|
}, {}>>;
|
|
90
90
|
export default IBizGanttControl;
|
|
@@ -226,8 +226,8 @@ export declare const GridControl: import("vue").DefineComponent<{
|
|
|
226
226
|
};
|
|
227
227
|
}>>, {
|
|
228
228
|
params: import("@ibiz-template/core").IApiParams;
|
|
229
|
-
mdctrlActiveMode: number;
|
|
230
229
|
singleSelect: boolean;
|
|
230
|
+
mdctrlActiveMode: number;
|
|
231
231
|
rowEditOpen: boolean;
|
|
232
232
|
isSimple: boolean;
|
|
233
233
|
loadDefault: boolean;
|
|
@@ -162,8 +162,8 @@ export declare const IBizGridControl: import("@ibiz-template/vue3-util").TypeWit
|
|
|
162
162
|
};
|
|
163
163
|
}>>, {
|
|
164
164
|
params: import("@ibiz-template/core").IApiParams;
|
|
165
|
-
mdctrlActiveMode: number;
|
|
166
165
|
singleSelect: boolean;
|
|
166
|
+
mdctrlActiveMode: number;
|
|
167
167
|
rowEditOpen: boolean;
|
|
168
168
|
isSimple: boolean;
|
|
169
169
|
loadDefault: boolean;
|
|
@@ -2,6 +2,7 @@ import { ControlType, registerControlProvider } from '@ibiz-template/runtime';
|
|
|
2
2
|
import { withInstall } from '@ibiz-template/vue3-util';
|
|
3
3
|
import '../grid-column/index.mjs';
|
|
4
4
|
import { IBizRowEditPopover } from '../row-edit-popover/row-edit-popover.mjs';
|
|
5
|
+
import { IBizVirtualizedTableControl } from '../virtualized-table/index.mjs';
|
|
5
6
|
import { GridControl } from './grid.mjs';
|
|
6
7
|
import { GridProvider } from './grid.provider.mjs';
|
|
7
8
|
export { useAppGridBase, useAppGridPagination, useGridDraggable, useGridHeaderStyle, useITableEvent } from './grid-control.util.mjs';
|
|
@@ -22,6 +23,7 @@ const IBizGridControl = withInstall(GridControl, (v) => {
|
|
|
22
23
|
v.use(IBizGridFieldEditColumn);
|
|
23
24
|
v.use(IBizGridGroupColumn);
|
|
24
25
|
v.use(IBizDynamicGridFieldEditColumn);
|
|
26
|
+
v.use(IBizVirtualizedTableControl);
|
|
25
27
|
registerControlProvider(ControlType.GRID, () => new GridProvider());
|
|
26
28
|
});
|
|
27
29
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ILayoutPanel, IPanel, IUIActionGroupDetail } from '@ibiz/model-core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { VNode } from 'vue';
|
|
3
|
+
import { GridRowState, GridFieldColumnController } from '@ibiz-template/runtime';
|
|
4
4
|
import './grid-field-column.scss';
|
|
5
5
|
export declare const GridFieldColumn: import("vue").DefineComponent<{
|
|
6
6
|
controller: {
|
|
@@ -17,7 +17,7 @@ export declare const GridFieldColumn: import("vue").DefineComponent<{
|
|
|
17
17
|
onTextClick: (event: MouseEvent) => void;
|
|
18
18
|
onInfoTextChange: (text: string) => void;
|
|
19
19
|
onActionClick: (detail: IUIActionGroupDetail, event: MouseEvent) => Promise<void>;
|
|
20
|
-
CustomHtml: Ref<string | undefined>;
|
|
20
|
+
CustomHtml: import("vue").Ref<string | undefined>;
|
|
21
21
|
fieldValue: import("vue").ComputedRef<any>;
|
|
22
22
|
formatValue: import("vue").ComputedRef<string>;
|
|
23
23
|
percent: import("vue").ComputedRef<string>;
|
|
@@ -25,7 +25,7 @@ export declare const GridFieldColumn: import("vue").DefineComponent<{
|
|
|
25
25
|
tooltip: import("vue").ComputedRef<string | undefined>;
|
|
26
26
|
zIndex: number | undefined;
|
|
27
27
|
columnType: string | undefined;
|
|
28
|
-
codeListItems: Ref<readonly import("@ibiz-template/core").IApiData[]>;
|
|
28
|
+
codeListItems: import("vue").Ref<readonly import("@ibiz-template/core").IApiData[]>;
|
|
29
29
|
hiddenEmpty: import("vue").ComputedRef<boolean>;
|
|
30
30
|
findLayoutPanel: () => IPanel | undefined;
|
|
31
31
|
renderPanelItemLayout: (item: IData, modelData: ILayoutPanel) => VNode;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { useNamespace, useCodeListListen } from '@ibiz-template/vue3-util';
|
|
1
|
+
import { computed, ref, resolveComponent, createVNode, defineComponent } from 'vue';
|
|
2
|
+
import { useNamespace, computedAsync, useCodeListListen } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { GridFieldColumnController, GridRowState, ValueExUtil } from '@ibiz-template/runtime';
|
|
4
4
|
import { isNotNil } from 'ramda';
|
|
5
5
|
import { showTitle } from '@ibiz-template/core';
|
|
@@ -35,12 +35,9 @@ const GridFieldColumn = /* @__PURE__ */ defineComponent({
|
|
|
35
35
|
props.controller.openLinkView(props.row, event);
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
const CustomHtml =
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
}, {
|
|
42
|
-
deep: true,
|
|
43
|
-
immediate: true
|
|
38
|
+
const CustomHtml = computedAsync(async () => {
|
|
39
|
+
const html = await props.controller.getCustomHtml(props.row);
|
|
40
|
+
return html;
|
|
44
41
|
});
|
|
45
42
|
const fieldValue = computed(() => props.row.data[props.controller.fieldName]);
|
|
46
43
|
const formatValue = computed(() => props.controller.formatValue(fieldValue.value));
|