@ibiz-template/vue3-components 0.7.18 → 0.7.19-alpha.1
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-xEEb4o9R.js +4 -0
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/{xlsx-util-wSE1X5Fm.js → xlsx-util-BWays6va.js} +1 -1
- package/es/control/app-menu/app-menu.mjs +2 -2
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +2 -0
- package/es/control/grid/grid/grid.mjs +10 -9
- package/es/control/search-bar/search-bar.mjs +2 -1
- package/es/control/toolbar/short-cut-button/short-cut-button.css +1 -0
- package/es/control/toolbar/short-cut-button/short-cut-button.mjs +1 -1
- package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/index.d.ts +1 -1
- package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.d.ts +1 -1
- package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.mjs +12 -7
- package/es/panel-component/user-action/user-action.mjs +7 -3
- package/es/util/app-popover/app-popover-component.css +1 -1
- package/es/view-engine/edit-view.engine.mjs +3 -1
- package/lib/control/app-menu/app-menu.cjs +2 -2
- package/lib/control/grid/grid/grid.cjs +9 -8
- package/lib/control/search-bar/search-bar.cjs +1 -0
- package/lib/control/toolbar/short-cut-button/short-cut-button.cjs +1 -1
- package/lib/control/toolbar/short-cut-button/short-cut-button.css +1 -0
- package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.cjs +11 -6
- package/lib/panel-component/user-action/user-action.cjs +7 -3
- package/lib/util/app-popover/app-popover-component.css +1 -1
- package/lib/view-engine/edit-view.engine.cjs +3 -1
- package/package.json +7 -7
- package/dist/index-iWPyEUNq.js +0 -4
|
@@ -234,8 +234,6 @@ const AppMenuControl = /* @__PURE__ */ defineComponent({
|
|
|
234
234
|
};
|
|
235
235
|
c.evt.on("onCreated", async () => {
|
|
236
236
|
saveConfigs.value = c.saveConfigs;
|
|
237
|
-
});
|
|
238
|
-
c.evt.on("onMounted", async () => {
|
|
239
237
|
const allItems = c.getAllItems();
|
|
240
238
|
const defaultActiveMenuItem = allItems.find((item) => {
|
|
241
239
|
return item.openDefault && !item.hidden;
|
|
@@ -255,6 +253,8 @@ const AppMenuControl = /* @__PURE__ */ defineComponent({
|
|
|
255
253
|
defaultOpens.value.push(item.id);
|
|
256
254
|
});
|
|
257
255
|
}
|
|
256
|
+
});
|
|
257
|
+
c.evt.on("onMounted", async () => {
|
|
258
258
|
const counterRefId = c.model.appCounterRefId;
|
|
259
259
|
if (counterRefId) {
|
|
260
260
|
counter = c.getCounter(counterRefId);
|
|
@@ -13,6 +13,8 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
|
|
|
13
13
|
load: (args?: import("@ibiz-template/runtime").IDataAbilityParams | undefined) => Promise<IData>;
|
|
14
14
|
save: (args?: import("@ibiz-template/runtime").FormSaveParams | undefined) => Promise<IData>;
|
|
15
15
|
remove: (args?: import("@ibiz-template/runtime").IDataAbilityParams | undefined) => Promise<boolean>;
|
|
16
|
+
autoSave: () => Promise<void>;
|
|
17
|
+
immediateAutoSave: () => Promise<void>;
|
|
16
18
|
wfSubmit: (args?: import("@ibiz-template/runtime").IDataAbilityParams | undefined) => Promise<void>;
|
|
17
19
|
wfStart: (args?: import("@ibiz-template/runtime").IDataAbilityParams | undefined) => Promise<void>;
|
|
18
20
|
getData: () => IData[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { resolveComponent, mergeProps, h, createVNode, createTextVNode, renderSlot, onUnmounted, defineComponent } from 'vue';
|
|
1
|
+
import { resolveComponent, mergeProps, h, createVNode, watch, createTextVNode, renderSlot, onUnmounted, defineComponent } from 'vue';
|
|
2
2
|
import { useControlController, useNamespace, useUIStore } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { ScriptFactory, GridController } from '@ibiz-template/runtime';
|
|
4
4
|
import { NOOP } from '@ibiz-template/core';
|
|
@@ -196,6 +196,11 @@ const GridControl = /* @__PURE__ */ defineComponent({
|
|
|
196
196
|
defaultSort,
|
|
197
197
|
summaryMethod
|
|
198
198
|
} = useAppGridBase(c, props);
|
|
199
|
+
watch(() => tableData.value, () => {
|
|
200
|
+
c.calcShowMode(tableData.value);
|
|
201
|
+
}, {
|
|
202
|
+
immediate: true
|
|
203
|
+
});
|
|
199
204
|
const {
|
|
200
205
|
renderPopover
|
|
201
206
|
} = useRowEditPopover(tableRef, c);
|
|
@@ -298,12 +303,8 @@ const GridControl = /* @__PURE__ */ defineComponent({
|
|
|
298
303
|
return;
|
|
299
304
|
}
|
|
300
305
|
const state = this.c.state;
|
|
301
|
-
const {
|
|
302
|
-
hideHeader,
|
|
303
|
-
enablePagingBar
|
|
304
|
-
} = this.c.model;
|
|
305
306
|
return createVNode(resolveComponent("iBizControlBase"), {
|
|
306
|
-
"class": [this.ns.is("show-header", !hideHeader), this.ns.is("enable-page", enablePagingBar), this.ns.is("enable-group", this.c.model.enableGroup), this.ns.is("single-select", state.singleSelect), this.ns.is("empty", state.items.length === 0), this.ns.is("enable-customized", this.c.model.enableCustomized)],
|
|
307
|
+
"class": [this.ns.is("show-header", !this.c.state.hideHeader), this.ns.is("enable-page", this.c.state.enablePagingBar), this.ns.is("enable-group", this.c.model.enableGroup), this.ns.is("single-select", state.singleSelect), this.ns.is("empty", state.items.length === 0), this.ns.is("enable-customized", this.c.model.enableCustomized)],
|
|
307
308
|
"controller": this.c,
|
|
308
309
|
"style": this.headerCssVars
|
|
309
310
|
}, {
|
|
@@ -312,7 +313,7 @@ const GridControl = /* @__PURE__ */ defineComponent({
|
|
|
312
313
|
"class": this.ns.e("table"),
|
|
313
314
|
"default-sort": this.defaultSort,
|
|
314
315
|
"border": true,
|
|
315
|
-
"show-header": !hideHeader,
|
|
316
|
+
"show-header": !this.c.state.hideHeader,
|
|
316
317
|
"show-summary": this.c.enableAgg,
|
|
317
318
|
"summary-method": this.summaryMethod,
|
|
318
319
|
"highlight-current-row": state.singleSelect,
|
|
@@ -339,7 +340,7 @@ const GridControl = /* @__PURE__ */ defineComponent({
|
|
|
339
340
|
append: () => {
|
|
340
341
|
return this.renderPopover();
|
|
341
342
|
}
|
|
342
|
-
}), enablePagingBar && createVNode(resolveComponent("iBizPagination"), {
|
|
343
|
+
}), this.c.state.enablePagingBar && createVNode(resolveComponent("iBizPagination"), {
|
|
343
344
|
"total": state.total,
|
|
344
345
|
"curPage": state.curPage,
|
|
345
346
|
"size": state.size,
|
|
@@ -347,7 +348,7 @@ const GridControl = /* @__PURE__ */ defineComponent({
|
|
|
347
348
|
"onChange": this.onPageChange,
|
|
348
349
|
"onPageSizeChange": this.onPageSizeChange,
|
|
349
350
|
"onPageRefresh": this.onPageRefresh
|
|
350
|
-
}, null), this.c.model.enableCustomized && !hideHeader && createVNode("div", {
|
|
351
|
+
}, null), this.c.model.enableCustomized && !this.c.state.hideHeader && createVNode("div", {
|
|
351
352
|
"class": this.ns.b("setting-box")
|
|
352
353
|
}, [createVNode(resolveComponent("iBizGridSetting"), {
|
|
353
354
|
"columnStates": state.columnStates,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { computed, ref, resolveComponent, createVNode, defineComponent } from 'vue';
|
|
2
|
-
import { useControlController, useNamespace } from '@ibiz-template/vue3-util';
|
|
2
|
+
import { useControlController, useLocalCacheKey, useNamespace } from '@ibiz-template/vue3-util';
|
|
3
3
|
import './search-bar.css';
|
|
4
4
|
import { SearchBarController } from '@ibiz-template/runtime';
|
|
5
5
|
|
|
@@ -26,6 +26,7 @@ const SearchBarControl = /* @__PURE__ */ defineComponent({
|
|
|
26
26
|
setup() {
|
|
27
27
|
var _a;
|
|
28
28
|
const c = useControlController((...args) => new SearchBarController(...args));
|
|
29
|
+
c.setStorageKeyFn(useLocalCacheKey(c.context, "SEARCH_BAR_SELECTED_GROUP", c.view.modal.routeDepth));
|
|
29
30
|
const ns = useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
30
31
|
let isSearch = false;
|
|
31
32
|
const onSearch = () => {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-short-cut-button__icon svg{width:var(--ibiz-font-size-regular);height:var(--ibiz-font-size-regular);font-size:var(--ibiz-font-size-regular)}
|
|
@@ -58,7 +58,7 @@ const IBizShortCutButton = /* @__PURE__ */ defineComponent({
|
|
|
58
58
|
"onClick": this.onClick
|
|
59
59
|
}, {
|
|
60
60
|
default: () => [this.item.showIcon && this.item.sysImage && createVNode("span", {
|
|
61
|
-
"class": this.ns2.b("icon")
|
|
61
|
+
"class": [this.ns2.b("icon"), this.ns.e("icon")]
|
|
62
62
|
}, [createVNode(resolveComponent("iBizIcon"), {
|
|
63
63
|
"icon": this.item.sysImage
|
|
64
64
|
}, null)]), this.item.showCaption && createVNode("span", {
|
|
@@ -10,7 +10,7 @@ export declare const IBizTreeGridExFieldColumn: import("@ibiz-template/vue3-util
|
|
|
10
10
|
}, {
|
|
11
11
|
ns: import("@ibiz-template/core").Namespace;
|
|
12
12
|
nodeColumn: import("vue").ComputedRef<import("@ibiz-template/runtime").TreeGridExNodeColumnController | undefined>;
|
|
13
|
-
fieldValue: import("vue").
|
|
13
|
+
fieldValue: import("vue").Ref<any>;
|
|
14
14
|
showText: import("vue").ComputedRef<any>;
|
|
15
15
|
clickable: import("vue").ComputedRef<any>;
|
|
16
16
|
tooltip: import("vue").ComputedRef<any>;
|
|
@@ -13,7 +13,7 @@ export declare const TreeGridExFieldColumn: import("vue").DefineComponent<{
|
|
|
13
13
|
}, {
|
|
14
14
|
ns: import("@ibiz-template/core").Namespace;
|
|
15
15
|
nodeColumn: import("vue").ComputedRef<import("@ibiz-template/runtime").TreeGridExNodeColumnController | undefined>;
|
|
16
|
-
fieldValue: import("vue").
|
|
16
|
+
fieldValue: import("vue").Ref<any>;
|
|
17
17
|
showText: import("vue").ComputedRef<any>;
|
|
18
18
|
clickable: import("vue").ComputedRef<any>;
|
|
19
19
|
tooltip: import("vue").ComputedRef<any>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ref, watch, computed, resolveComponent, createVNode, defineComponent } from 'vue';
|
|
2
2
|
import { useNamespace } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { TreeGridExFieldColumnController, TreeGridExRowState } from '@ibiz-template/runtime';
|
|
4
4
|
import { isNotNil } from 'ramda';
|
|
@@ -19,14 +19,19 @@ const TreeGridExFieldColumn = /* @__PURE__ */ defineComponent({
|
|
|
19
19
|
},
|
|
20
20
|
setup(props) {
|
|
21
21
|
const ns = useNamespace("tree-grid-ex-field-column");
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
});
|
|
25
|
-
const fieldValue = computed(() => {
|
|
22
|
+
const fieldValue = ref();
|
|
23
|
+
watch(() => props.row.data, () => {
|
|
26
24
|
if (props.row.data._nodeType !== "DE" && props.controller.isFirstShowColumn) {
|
|
27
|
-
|
|
25
|
+
fieldValue.value = props.row.data._text;
|
|
26
|
+
} else {
|
|
27
|
+
fieldValue.value = props.row.data[props.controller.name];
|
|
28
28
|
}
|
|
29
|
-
|
|
29
|
+
}, {
|
|
30
|
+
deep: true,
|
|
31
|
+
immediate: true
|
|
32
|
+
});
|
|
33
|
+
const nodeColumn = computed(() => {
|
|
34
|
+
return props.controller.nodeColumnControllerMap.get(props.row.data._nodeId);
|
|
30
35
|
});
|
|
31
36
|
const codeListText = ref("");
|
|
32
37
|
const onInfoTextChange = (text) => {
|
|
@@ -38,6 +38,10 @@ const UserAction = /* @__PURE__ */ defineComponent({
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
const onClick = async (event) => {
|
|
41
|
+
const e = {
|
|
42
|
+
...event
|
|
43
|
+
};
|
|
44
|
+
e.target = event.currentTarget;
|
|
41
45
|
const id = props.modelData.id;
|
|
42
46
|
const menuC = c.panel.view.getController("appmenu");
|
|
43
47
|
if (menuC) {
|
|
@@ -55,7 +59,7 @@ const UserAction = /* @__PURE__ */ defineComponent({
|
|
|
55
59
|
const tempParam = c.panel.params;
|
|
56
60
|
tempContext.srfappid = targetMenu.appId || ibiz.env.appId;
|
|
57
61
|
await ibiz.commands.execute(AppFuncCommand.TAG, targetMenu.appFuncId, tempContext, tempParam, {
|
|
58
|
-
event
|
|
62
|
+
event: e
|
|
59
63
|
});
|
|
60
64
|
}
|
|
61
65
|
}
|
|
@@ -70,11 +74,11 @@ const UserAction = /* @__PURE__ */ defineComponent({
|
|
|
70
74
|
render() {
|
|
71
75
|
return createVNode("div", {
|
|
72
76
|
"class": this.ns.b(),
|
|
73
|
-
"onClick": (event) => this.onClick(event),
|
|
74
77
|
"title": this.modelData.caption
|
|
75
78
|
}, [createVNode(resolveComponent("i-biz-icon"), {
|
|
76
79
|
"class": [this.ns.e("image")],
|
|
77
|
-
"icon": this.sysImage
|
|
80
|
+
"icon": this.sysImage,
|
|
81
|
+
"onClick": (event) => this.onClick(event)
|
|
78
82
|
}, null)]);
|
|
79
83
|
}
|
|
80
84
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-popover{position:absolute;top:0;left:0;z-index:1;display:none;width:-moz-max-content;width:max-content;background-color:var(--ibiz-color-bg-2);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-medium)}.ibiz-popover__arrow{position:absolute;width:8px;height:8px;background:var(--ibiz-color-bg-2);transform:rotate(45deg)}.ibiz-popover.is-show{display:block}.ibiz-popover__overlay{position:fixed;inset:0;background-color:transparent}
|
|
1
|
+
.ibiz-popover{position:absolute;top:0;left:0;z-index:1;display:none;width:-moz-max-content;width:max-content;background-color:var(--ibiz-color-bg-2);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-medium)}.ibiz-popover__arrow{position:absolute;width:8px;height:8px;z-index:-1;background:var(--ibiz-color-bg-2);transform:rotate(45deg)}.ibiz-popover.is-show{display:block}.ibiz-popover__overlay{position:fixed;inset:0;background-color:transparent}
|
|
@@ -63,7 +63,9 @@ class EditViewEngine extends ViewEngineBase {
|
|
|
63
63
|
modal.hooks.shouldDismiss.tapPromise(async (context) => {
|
|
64
64
|
const uiDomain = ibiz.uiDomainManager.get(this.view.context.srfsessionid);
|
|
65
65
|
const isChange = (this.form.state.modified || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
|
|
66
|
-
if (isChange &&
|
|
66
|
+
if (isChange && this.form.model.enableAutoSave) {
|
|
67
|
+
await this.form.immediateAutoSave();
|
|
68
|
+
} else if (isChange && context.allowClose == null) {
|
|
67
69
|
const isAllow = await ibiz.confirm.error({
|
|
68
70
|
title: ibiz.i18n.t("viewEngine.closeRemind"),
|
|
69
71
|
desc: ibiz.i18n.t("viewEngine.confirmClosePrompt")
|
|
@@ -236,8 +236,6 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
236
236
|
};
|
|
237
237
|
c.evt.on("onCreated", async () => {
|
|
238
238
|
saveConfigs.value = c.saveConfigs;
|
|
239
|
-
});
|
|
240
|
-
c.evt.on("onMounted", async () => {
|
|
241
239
|
const allItems = c.getAllItems();
|
|
242
240
|
const defaultActiveMenuItem = allItems.find((item) => {
|
|
243
241
|
return item.openDefault && !item.hidden;
|
|
@@ -257,6 +255,8 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
257
255
|
defaultOpens.value.push(item.id);
|
|
258
256
|
});
|
|
259
257
|
}
|
|
258
|
+
});
|
|
259
|
+
c.evt.on("onMounted", async () => {
|
|
260
260
|
const counterRefId = c.model.appCounterRefId;
|
|
261
261
|
if (counterRefId) {
|
|
262
262
|
counter = c.getCounter(counterRefId);
|
|
@@ -198,6 +198,11 @@ const GridControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
198
198
|
defaultSort,
|
|
199
199
|
summaryMethod
|
|
200
200
|
} = gridControl_util.useAppGridBase(c, props);
|
|
201
|
+
vue.watch(() => tableData.value, () => {
|
|
202
|
+
c.calcShowMode(tableData.value);
|
|
203
|
+
}, {
|
|
204
|
+
immediate: true
|
|
205
|
+
});
|
|
201
206
|
const {
|
|
202
207
|
renderPopover
|
|
203
208
|
} = useRowEditPopover.useRowEditPopover(tableRef, c);
|
|
@@ -300,12 +305,8 @@ const GridControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
300
305
|
return;
|
|
301
306
|
}
|
|
302
307
|
const state = this.c.state;
|
|
303
|
-
const {
|
|
304
|
-
hideHeader,
|
|
305
|
-
enablePagingBar
|
|
306
|
-
} = this.c.model;
|
|
307
308
|
return vue.createVNode(vue.resolveComponent("iBizControlBase"), {
|
|
308
|
-
"class": [this.ns.is("show-header", !hideHeader), this.ns.is("enable-page", enablePagingBar), this.ns.is("enable-group", this.c.model.enableGroup), this.ns.is("single-select", state.singleSelect), this.ns.is("empty", state.items.length === 0), this.ns.is("enable-customized", this.c.model.enableCustomized)],
|
|
309
|
+
"class": [this.ns.is("show-header", !this.c.state.hideHeader), this.ns.is("enable-page", this.c.state.enablePagingBar), this.ns.is("enable-group", this.c.model.enableGroup), this.ns.is("single-select", state.singleSelect), this.ns.is("empty", state.items.length === 0), this.ns.is("enable-customized", this.c.model.enableCustomized)],
|
|
309
310
|
"controller": this.c,
|
|
310
311
|
"style": this.headerCssVars
|
|
311
312
|
}, {
|
|
@@ -314,7 +315,7 @@ const GridControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
314
315
|
"class": this.ns.e("table"),
|
|
315
316
|
"default-sort": this.defaultSort,
|
|
316
317
|
"border": true,
|
|
317
|
-
"show-header": !hideHeader,
|
|
318
|
+
"show-header": !this.c.state.hideHeader,
|
|
318
319
|
"show-summary": this.c.enableAgg,
|
|
319
320
|
"summary-method": this.summaryMethod,
|
|
320
321
|
"highlight-current-row": state.singleSelect,
|
|
@@ -341,7 +342,7 @@ const GridControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
341
342
|
append: () => {
|
|
342
343
|
return this.renderPopover();
|
|
343
344
|
}
|
|
344
|
-
}), enablePagingBar && vue.createVNode(vue.resolveComponent("iBizPagination"), {
|
|
345
|
+
}), this.c.state.enablePagingBar && vue.createVNode(vue.resolveComponent("iBizPagination"), {
|
|
345
346
|
"total": state.total,
|
|
346
347
|
"curPage": state.curPage,
|
|
347
348
|
"size": state.size,
|
|
@@ -349,7 +350,7 @@ const GridControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
349
350
|
"onChange": this.onPageChange,
|
|
350
351
|
"onPageSizeChange": this.onPageSizeChange,
|
|
351
352
|
"onPageRefresh": this.onPageRefresh
|
|
352
|
-
}, null), this.c.model.enableCustomized && !hideHeader && vue.createVNode("div", {
|
|
353
|
+
}, null), this.c.model.enableCustomized && !this.c.state.hideHeader && vue.createVNode("div", {
|
|
353
354
|
"class": this.ns.b("setting-box")
|
|
354
355
|
}, [vue.createVNode(vue.resolveComponent("iBizGridSetting"), {
|
|
355
356
|
"columnStates": state.columnStates,
|
|
@@ -28,6 +28,7 @@ const SearchBarControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
28
28
|
setup() {
|
|
29
29
|
var _a;
|
|
30
30
|
const c = vue3Util.useControlController((...args) => new runtime.SearchBarController(...args));
|
|
31
|
+
c.setStorageKeyFn(vue3Util.useLocalCacheKey(c.context, "SEARCH_BAR_SELECTED_GROUP", c.view.modal.routeDepth));
|
|
31
32
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
32
33
|
let isSearch = false;
|
|
33
34
|
const onSearch = () => {
|
|
@@ -60,7 +60,7 @@ const IBizShortCutButton = /* @__PURE__ */ vue.defineComponent({
|
|
|
60
60
|
"onClick": this.onClick
|
|
61
61
|
}, {
|
|
62
62
|
default: () => [this.item.showIcon && this.item.sysImage && vue.createVNode("span", {
|
|
63
|
-
"class": this.ns2.b("icon")
|
|
63
|
+
"class": [this.ns2.b("icon"), this.ns.e("icon")]
|
|
64
64
|
}, [vue.createVNode(vue.resolveComponent("iBizIcon"), {
|
|
65
65
|
"icon": this.item.sysImage
|
|
66
66
|
}, null)]), this.item.showCaption && vue.createVNode("span", {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-short-cut-button__icon svg{width:var(--ibiz-font-size-regular);height:var(--ibiz-font-size-regular);font-size:var(--ibiz-font-size-regular)}
|
|
@@ -23,14 +23,19 @@ const TreeGridExFieldColumn = /* @__PURE__ */ vue.defineComponent({
|
|
|
23
23
|
},
|
|
24
24
|
setup(props) {
|
|
25
25
|
const ns = vue3Util.useNamespace("tree-grid-ex-field-column");
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
});
|
|
29
|
-
const fieldValue = vue.computed(() => {
|
|
26
|
+
const fieldValue = vue.ref();
|
|
27
|
+
vue.watch(() => props.row.data, () => {
|
|
30
28
|
if (props.row.data._nodeType !== "DE" && props.controller.isFirstShowColumn) {
|
|
31
|
-
|
|
29
|
+
fieldValue.value = props.row.data._text;
|
|
30
|
+
} else {
|
|
31
|
+
fieldValue.value = props.row.data[props.controller.name];
|
|
32
32
|
}
|
|
33
|
-
|
|
33
|
+
}, {
|
|
34
|
+
deep: true,
|
|
35
|
+
immediate: true
|
|
36
|
+
});
|
|
37
|
+
const nodeColumn = vue.computed(() => {
|
|
38
|
+
return props.controller.nodeColumnControllerMap.get(props.row.data._nodeId);
|
|
34
39
|
});
|
|
35
40
|
const codeListText = vue.ref("");
|
|
36
41
|
const onInfoTextChange = (text) => {
|
|
@@ -40,6 +40,10 @@ const UserAction = /* @__PURE__ */ vue.defineComponent({
|
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
const onClick = async (event) => {
|
|
43
|
+
const e = {
|
|
44
|
+
...event
|
|
45
|
+
};
|
|
46
|
+
e.target = event.currentTarget;
|
|
43
47
|
const id = props.modelData.id;
|
|
44
48
|
const menuC = c.panel.view.getController("appmenu");
|
|
45
49
|
if (menuC) {
|
|
@@ -57,7 +61,7 @@ const UserAction = /* @__PURE__ */ vue.defineComponent({
|
|
|
57
61
|
const tempParam = c.panel.params;
|
|
58
62
|
tempContext.srfappid = targetMenu.appId || ibiz.env.appId;
|
|
59
63
|
await ibiz.commands.execute(runtime.AppFuncCommand.TAG, targetMenu.appFuncId, tempContext, tempParam, {
|
|
60
|
-
event
|
|
64
|
+
event: e
|
|
61
65
|
});
|
|
62
66
|
}
|
|
63
67
|
}
|
|
@@ -72,11 +76,11 @@ const UserAction = /* @__PURE__ */ vue.defineComponent({
|
|
|
72
76
|
render() {
|
|
73
77
|
return vue.createVNode("div", {
|
|
74
78
|
"class": this.ns.b(),
|
|
75
|
-
"onClick": (event) => this.onClick(event),
|
|
76
79
|
"title": this.modelData.caption
|
|
77
80
|
}, [vue.createVNode(vue.resolveComponent("i-biz-icon"), {
|
|
78
81
|
"class": [this.ns.e("image")],
|
|
79
|
-
"icon": this.sysImage
|
|
82
|
+
"icon": this.sysImage,
|
|
83
|
+
"onClick": (event) => this.onClick(event)
|
|
80
84
|
}, null)]);
|
|
81
85
|
}
|
|
82
86
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-popover{position:absolute;top:0;left:0;z-index:1;display:none;width:-moz-max-content;width:max-content;background-color:var(--ibiz-color-bg-2);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-medium)}.ibiz-popover__arrow{position:absolute;width:8px;height:8px;background:var(--ibiz-color-bg-2);transform:rotate(45deg)}.ibiz-popover.is-show{display:block}.ibiz-popover__overlay{position:fixed;inset:0;background-color:transparent}
|
|
1
|
+
.ibiz-popover{position:absolute;top:0;left:0;z-index:1;display:none;width:-moz-max-content;width:max-content;background-color:var(--ibiz-color-bg-2);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-medium)}.ibiz-popover__arrow{position:absolute;width:8px;height:8px;z-index:-1;background:var(--ibiz-color-bg-2);transform:rotate(45deg)}.ibiz-popover.is-show{display:block}.ibiz-popover__overlay{position:fixed;inset:0;background-color:transparent}
|
|
@@ -65,7 +65,9 @@ class EditViewEngine extends runtime.ViewEngineBase {
|
|
|
65
65
|
modal.hooks.shouldDismiss.tapPromise(async (context) => {
|
|
66
66
|
const uiDomain = ibiz.uiDomainManager.get(this.view.context.srfsessionid);
|
|
67
67
|
const isChange = (this.form.state.modified || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
|
|
68
|
-
if (isChange &&
|
|
68
|
+
if (isChange && this.form.model.enableAutoSave) {
|
|
69
|
+
await this.form.immediateAutoSave();
|
|
70
|
+
} else if (isChange && context.allowClose == null) {
|
|
69
71
|
const isAllow = await ibiz.confirm.error({
|
|
70
72
|
title: ibiz.i18n.t("viewEngine.closeRemind"),
|
|
71
73
|
desc: ibiz.i18n.t("viewEngine.confirmClosePrompt")
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/vue3-components",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.19-alpha.1",
|
|
4
4
|
"description": "使用 rollup 编译 vue 组件或者 jsx",
|
|
5
5
|
"main": "lib/index.cjs",
|
|
6
6
|
"module": "es/index.mjs",
|
|
@@ -29,15 +29,15 @@
|
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@floating-ui/dom": "^1.5.3",
|
|
31
31
|
"@ibiz-template-plugin/ai-chat": "^0.0.5",
|
|
32
|
-
"@ibiz-template-plugin/gantt": "0.1.
|
|
32
|
+
"@ibiz-template-plugin/gantt": "0.1.6-alpha.0",
|
|
33
33
|
"@ibiz-template/core": "0.7.18",
|
|
34
34
|
"@ibiz-template/devtool": "0.0.1-dev.6",
|
|
35
|
-
"@ibiz-template/model-helper": "0.7.
|
|
36
|
-
"@ibiz-template/runtime": "0.7.
|
|
35
|
+
"@ibiz-template/model-helper": "0.7.19-alpha.1",
|
|
36
|
+
"@ibiz-template/runtime": "0.7.19-alpha.1",
|
|
37
37
|
"@ibiz-template/theme": "^0.7.0",
|
|
38
|
-
"@ibiz-template/vue3-util": "0.7.
|
|
38
|
+
"@ibiz-template/vue3-util": "0.7.19-alpha.1",
|
|
39
39
|
"@ibiz-template/web-theme": "^1.1.17",
|
|
40
|
-
"@ibiz/model-core": "^0.1.
|
|
40
|
+
"@ibiz/model-core": "^0.1.28",
|
|
41
41
|
"@imengyu/vue3-context-menu": "^1.3.5",
|
|
42
42
|
"@monaco-editor/loader": "^1.4.0",
|
|
43
43
|
"@wangeditor/editor": "^5.1.23",
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
"@ibiz-template/runtime": "^0.7.0",
|
|
102
102
|
"@ibiz-template/theme": "^0.7.0",
|
|
103
103
|
"@ibiz-template/vue3-util": "^0.7.0",
|
|
104
|
-
"@ibiz/model-core": "^0.1.
|
|
104
|
+
"@ibiz/model-core": "^0.1.28",
|
|
105
105
|
"@imengyu/vue3-context-menu": "^1.3.3",
|
|
106
106
|
"@monaco-editor/loader": "^1.3.3",
|
|
107
107
|
"@wangeditor/editor": "^5.1.23",
|