@ibiz-template/vue3-components 0.7.26 → 0.7.27
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-RwYoggQd.js → index-0TO7mjm5.js} +1 -1
- package/dist/index-Dq21zXhV.js +4 -0
- package/dist/{index-s7g1-ymW.js → index-g6o3vQXo.js} +1 -1
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/{xlsx-util-Rf5FMxyR.js → xlsx-util-qdXxbg2A.js} +1 -1
- package/es/common/action-toolbar/action-toolbar.mjs +1 -1
- package/es/common/custom-theme/custom-theme.mjs +1 -1
- package/es/common/data-import2/data-import2.mjs +4 -1
- package/es/control/context-menu/context-menu.mjs +2 -2
- package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.mjs +1 -1
- package/es/control/drtab/drtab-control.util.mjs +7 -11
- package/es/control/form/form-detail/form-button/form-button.mjs +1 -1
- package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
- package/es/control/form/form-detail/form-item/form-item-container/form-item-container.d.ts +28 -0
- package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +52 -7
- package/es/control/form/form-detail/form-item/form-item.mjs +4 -0
- package/es/control/grid/grid/grid-control.util.mjs +15 -11
- package/es/control/search-bar/search-bar.mjs +2 -2
- package/es/control/toolbar/export-excel/export-excel.mjs +2 -2
- package/es/control/toolbar/short-cut-button/short-cut-button.mjs +4 -1
- package/es/control/toolbar/toolbar.mjs +2 -2
- package/es/control/tree/index.d.ts +9 -0
- package/es/control/tree/tree.d.ts +9 -0
- package/es/control/tree/tree.mjs +5 -1
- package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +2 -2
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +4 -0
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +48 -3
- package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +2 -2
- package/es/editor/data-picker/picker-editor.controller.d.ts +2 -2
- package/es/editor/dropdown-list/dropdown-list-editor.controller.d.ts +6 -0
- package/es/editor/dropdown-list/dropdown-list-editor.controller.mjs +10 -1
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +1 -1
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +17 -4
- package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -1
- package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.d.ts +2 -0
- package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +33 -12
- package/es/editor/span/span/span.mjs +3 -1
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +12 -10
- package/es/editor/text-box/input/input.mjs +3 -0
- package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +1 -1
- package/es/locale/en/index.d.ts +3 -0
- package/es/locale/en/index.mjs +3 -0
- package/es/locale/zh-CN/index.d.ts +3 -0
- package/es/locale/zh-CN/index.mjs +3 -0
- package/es/panel-component/nav-tabs/nav-tabs.controller.mjs +3 -2
- package/es/panel-component/panel-button/panel-button.mjs +1 -1
- package/es/view-engine/edit-view.engine.mjs +3 -2
- package/es/view-engine/opt-view.engine.mjs +2 -1
- package/es/view-engine/pickup-tree-view.engine.mjs +1 -0
- package/es/web-app/attach-environment-config.mjs +2 -1
- package/lib/common/action-toolbar/action-toolbar.cjs +1 -1
- package/lib/common/custom-theme/custom-theme.cjs +1 -1
- package/lib/common/data-import2/data-import2.cjs +4 -1
- package/lib/control/context-menu/context-menu.cjs +2 -2
- package/lib/control/dashboard/custom-dashboard-container/custom-dashboard-container.cjs +1 -1
- package/lib/control/drtab/drtab-control.util.cjs +7 -11
- package/lib/control/form/form-detail/form-button/form-button.cjs +1 -1
- package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +51 -6
- package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
- package/lib/control/form/form-detail/form-item/form-item.cjs +4 -0
- package/lib/control/grid/grid/grid-control.util.cjs +15 -11
- package/lib/control/search-bar/search-bar.cjs +2 -2
- package/lib/control/toolbar/export-excel/export-excel.cjs +2 -2
- package/lib/control/toolbar/short-cut-button/short-cut-button.cjs +4 -1
- package/lib/control/toolbar/toolbar.cjs +2 -2
- package/lib/control/tree/tree.cjs +5 -1
- package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
- package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +2 -2
- package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +48 -3
- package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
- package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +2 -2
- package/lib/editor/dropdown-list/dropdown-list-editor.controller.cjs +10 -1
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +17 -4
- package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +31 -10
- package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -1
- package/lib/editor/span/span/span.cjs +2 -0
- package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +12 -10
- package/lib/editor/text-box/input/input.cjs +3 -0
- package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +1 -1
- package/lib/locale/en/index.cjs +3 -0
- package/lib/locale/zh-CN/index.cjs +3 -0
- package/lib/panel-component/nav-tabs/nav-tabs.controller.cjs +3 -2
- package/lib/panel-component/panel-button/panel-button.cjs +1 -1
- package/lib/view-engine/edit-view.engine.cjs +3 -2
- package/lib/view-engine/opt-view.engine.cjs +2 -1
- package/lib/view-engine/pickup-tree-view.engine.cjs +1 -0
- package/lib/web-app/attach-environment-config.cjs +2 -1
- package/package.json +7 -7
- package/dist/index-28jZm-aB.js +0 -4
- /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.26_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.27_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.26_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.27_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
|
@@ -21,5 +21,11 @@ export declare class DropDownListEditorController extends CodeListEditorControll
|
|
|
21
21
|
* @Date: 2024-03-12 14:33:14
|
|
22
22
|
*/
|
|
23
23
|
forceSelection: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* 预置项空白项名称
|
|
26
|
+
*
|
|
27
|
+
* @memberof DropDownListEditorController
|
|
28
|
+
*/
|
|
29
|
+
blankItemName: string;
|
|
24
30
|
protected onInit(): Promise<void>;
|
|
25
31
|
}
|
|
@@ -24,9 +24,15 @@ class DropDownListEditorController extends CodeListEditorController {
|
|
|
24
24
|
* @Date: 2024-03-12 14:33:14
|
|
25
25
|
*/
|
|
26
26
|
__publicField(this, "forceSelection", true);
|
|
27
|
+
/**
|
|
28
|
+
* 预置项空白项名称
|
|
29
|
+
*
|
|
30
|
+
* @memberof DropDownListEditorController
|
|
31
|
+
*/
|
|
32
|
+
__publicField(this, "blankItemName", "");
|
|
27
33
|
}
|
|
28
34
|
async onInit() {
|
|
29
|
-
var _a;
|
|
35
|
+
var _a, _b;
|
|
30
36
|
super.onInit();
|
|
31
37
|
if (this.model.editorType === "MDROPDOWNLIST") {
|
|
32
38
|
this.multiple = true;
|
|
@@ -34,6 +40,9 @@ class DropDownListEditorController extends CodeListEditorController {
|
|
|
34
40
|
if ((_a = this.editorParams) == null ? void 0 : _a.forceSelection) {
|
|
35
41
|
this.forceSelection = this.toBoolean(this.editorParams.forceSelection);
|
|
36
42
|
}
|
|
43
|
+
if ((_b = this.editorParams) == null ? void 0 : _b.blankItemName) {
|
|
44
|
+
this.blankItemName = this.editorParams.blankItemName;
|
|
45
|
+
}
|
|
37
46
|
}
|
|
38
47
|
}
|
|
39
48
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Ref } from 'vue';
|
|
2
|
-
import './ibiz-dropdown.scss';
|
|
3
2
|
import { DropDownListEditorController } from '../dropdown-list-editor.controller';
|
|
3
|
+
import './ibiz-dropdown.scss';
|
|
4
4
|
export declare const IBizDropdown: import("vue").DefineComponent<{
|
|
5
5
|
value: (StringConstructor | NumberConstructor)[];
|
|
6
6
|
controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<DropDownListEditorController>, undefined, undefined>;
|
|
@@ -44,10 +44,11 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
|
|
|
44
44
|
}
|
|
45
45
|
const list = [];
|
|
46
46
|
nodes.forEach((codeItem) => {
|
|
47
|
+
var _a;
|
|
47
48
|
codeListItems.value.push(codeItem);
|
|
48
49
|
const tempObj = {
|
|
49
50
|
label: codeItem.text,
|
|
50
|
-
value: codeItem.value.toString(),
|
|
51
|
+
value: (_a = codeItem.value) == null ? void 0 : _a.toString(),
|
|
51
52
|
color: codeItem == null ? void 0 : codeItem.color,
|
|
52
53
|
textCls: codeItem == null ? void 0 : codeItem.textCls,
|
|
53
54
|
sysImage: codeItem.sysImage,
|
|
@@ -72,7 +73,14 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
|
|
|
72
73
|
isLoading.value = true;
|
|
73
74
|
const codeList = await c.loadCodeList(props.data);
|
|
74
75
|
isLoadedCodeList.value = true;
|
|
75
|
-
|
|
76
|
+
if (c.blankItemName) {
|
|
77
|
+
items.value = [{
|
|
78
|
+
value: void 0,
|
|
79
|
+
text: c.blankItemName
|
|
80
|
+
}, ...codeList];
|
|
81
|
+
} else {
|
|
82
|
+
items.value = codeList;
|
|
83
|
+
}
|
|
76
84
|
for (let i = 0; i < items.value.length; i++) {
|
|
77
85
|
const _item = items.value[i];
|
|
78
86
|
if (_item.children) {
|
|
@@ -122,7 +130,11 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
|
|
|
122
130
|
}
|
|
123
131
|
return (_c = props.value) == null ? void 0 : _c.toString();
|
|
124
132
|
},
|
|
125
|
-
set(
|
|
133
|
+
set(_select) {
|
|
134
|
+
let select = _select;
|
|
135
|
+
if (c.blankItemName && !_select) {
|
|
136
|
+
select = void 0;
|
|
137
|
+
}
|
|
126
138
|
if (Array.isArray(select)) {
|
|
127
139
|
let selectArr = null;
|
|
128
140
|
if (select.length === 0) {
|
|
@@ -302,9 +314,10 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
|
|
|
302
314
|
}, this.$attrs), {
|
|
303
315
|
default: () => {
|
|
304
316
|
return this.items.map((item) => {
|
|
317
|
+
var _a;
|
|
305
318
|
return createVNode(resolveComponent("el-option"), {
|
|
306
319
|
"key": item.value,
|
|
307
|
-
"value": item.value.toString(),
|
|
320
|
+
"value": (_a = item.value) == null ? void 0 : _a.toString(),
|
|
308
321
|
"label": item.text,
|
|
309
322
|
"disabled": item.disableSelect === true,
|
|
310
323
|
"style": item.bkcolor ? this.ns.cssVarBlock({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-emoji-picker{display:flex;align-items:center;width:100%;height:100%}.ibiz-emoji-picker__button-content{display:flex;align-items:center;min-height:var(--ibiz-height-control-default)}.ibiz-emoji-picker__button-content--icon{margin-right:var(--ibiz-spacing-extra-tight);fill:var(--ibiz-color-primary-text)}.ibiz-emoji-picker__button.is-clear{position:relative;padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);
|
|
1
|
+
.ibiz-emoji-picker{display:flex;align-items:center;width:100%;height:100%}.ibiz-emoji-picker__button-content{display:flex;align-items:center;min-height:var(--ibiz-height-control-default)}.ibiz-emoji-picker__button-content--icon{margin-right:var(--ibiz-spacing-extra-tight);fill:var(--ibiz-color-primary-text)}.ibiz-emoji-picker__button.is-clear{position:relative;padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);color:var(--ibiz-color-text-0);background-color:transparent}.ibiz-emoji-picker__button.is-clear:hover .ibiz-emoji-picker__button-content--icon{display:block}.ibiz-emoji-picker__button.is-clear .ibiz-emoji-picker__button-content--icon{position:absolute;top:0;right:0;display:none;margin-right:0;font-size:var(--ibiz-font-size-regular);fill:var(--ibiz-color-text-3)}.ibiz-emoji-picker__button.is-clear .ibiz-emoji-picker__button-content--icon:hover{fill:var(--ibiz-color-primary)}.ibiz-emoji-picker--readonly{display:flex;align-items:center;line-height:32px}.ibiz-emoji-picker--readonly .ibiz-emoji-picker__button{padding:0;color:var(--ibiz-form-item-readonly-color);pointer-events:none;cursor:default}.ibiz-emoji-picker--readonly .ibiz-emoji-picker__button .ibiz-emoji-picker__button-content{display:none}.ibiz-emoji-picker--readonly .is-clear.ibiz-emoji-picker__button .ibiz-emoji-picker__button-content{display:flex}.ibiz-emoji-picker--readonly .is-clear.ibiz-emoji-picker__button .ibiz-emoji-picker__button-content--icon{display:none}.ibiz-emoji-picker-popper.el-popper.el-popper{width:auto;padding:0}.ibiz-form-item .ibiz-emoji-picker.is-show-default{padding:var(--ibiz-form-item-hover-edit-padding)}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker-form-default-content,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker-form-default-content{display:none}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker__button,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker__button{padding:8px 15px;pointer-events:auto;background-color:var(--ibiz-color-primary)}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker__button.is-clear,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker__button.is-clear{padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);background-color:transparent}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker__button-content,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker__button-content{display:flex}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker__button{padding:var(--ibiz-spacing-none);pointer-events:none;background:0 0}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker-form-default-content{display:flex;align-items:center;width:100%;font-family:Arial,sans-serif;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-text-color)}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker-form-default-content.is-clear{padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);background-color:transparent}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker__button-content{display:none}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-editable .ibiz-emoji-picker-form-default-content{display:none}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-editable .ibiz-emoji-picker__button-content{display:flex}
|
|
@@ -27,6 +27,8 @@ export declare const IBizEmojiPicker: import("vue").DefineComponent<{
|
|
|
27
27
|
c: DropDownListEditorController;
|
|
28
28
|
emoji: import("vue").Ref<string>;
|
|
29
29
|
visible: import("vue").Ref<boolean>;
|
|
30
|
+
emojiRef: import("vue").Ref<any>;
|
|
31
|
+
showFormDefaultContent: import("vue").ComputedRef<boolean>;
|
|
30
32
|
onSelect: (val: IData) => void;
|
|
31
33
|
onAddEmoji: (e: MouseEvent) => void;
|
|
32
34
|
onClearEmoji: (e: MouseEvent) => void;
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ref, computed, watch, createVNode, resolveComponent, defineComponent } from 'vue';
|
|
2
2
|
import { getDropdownProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
|
|
3
|
-
import { strToBase64, base64ToStr } from '@ibiz-template/core';
|
|
3
|
+
import { strToBase64, isBase64, base64ToStr } from '@ibiz-template/core';
|
|
4
4
|
import './ibiz-emoji-picker.css';
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
|
-
function _isSlot(s) {
|
|
8
|
-
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
9
|
-
}
|
|
10
7
|
const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
|
|
11
8
|
name: "IBizEmojiPicker",
|
|
12
9
|
props: getDropdownProps(),
|
|
@@ -16,8 +13,15 @@ const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
|
|
|
16
13
|
}) {
|
|
17
14
|
const ns = useNamespace("emoji-picker");
|
|
18
15
|
const c = props.controller;
|
|
16
|
+
const emojiRef = ref();
|
|
19
17
|
const emoji = ref("");
|
|
20
18
|
const visible = ref(false);
|
|
19
|
+
const showFormDefaultContent = computed(() => {
|
|
20
|
+
if (props.controlParams && props.controlParams.editmode === "hover" && !props.readonly) {
|
|
21
|
+
return true;
|
|
22
|
+
}
|
|
23
|
+
return false;
|
|
24
|
+
});
|
|
21
25
|
const onAddEmoji = (e) => {
|
|
22
26
|
e.stopPropagation();
|
|
23
27
|
e.preventDefault();
|
|
@@ -29,14 +33,24 @@ const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
|
|
|
29
33
|
emoji.value = "";
|
|
30
34
|
visible.value = false;
|
|
31
35
|
emit("change", "");
|
|
36
|
+
console.log("emojiRef", emojiRef.value);
|
|
37
|
+
emojiRef.value.click();
|
|
32
38
|
};
|
|
33
39
|
const onSelect = (val) => {
|
|
34
|
-
emoji.value = val.data;
|
|
35
40
|
visible.value = false;
|
|
41
|
+
emoji.value = val.data;
|
|
36
42
|
emit("change", strToBase64(val.data));
|
|
37
43
|
};
|
|
38
|
-
watch(() => props.value, (newVal) => {
|
|
39
|
-
|
|
44
|
+
watch(() => props.value, (newVal, oldVal) => {
|
|
45
|
+
if (newVal !== oldVal) {
|
|
46
|
+
if (!newVal) {
|
|
47
|
+
emoji.value = "";
|
|
48
|
+
} else if (Number.isNaN(Number(newVal)) && isBase64("".concat(newVal))) {
|
|
49
|
+
emoji.value = base64ToStr("".concat(newVal));
|
|
50
|
+
} else {
|
|
51
|
+
emoji.value = newVal.toString();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
40
54
|
}, {
|
|
41
55
|
immediate: true
|
|
42
56
|
});
|
|
@@ -77,12 +91,16 @@ const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
|
|
|
77
91
|
}
|
|
78
92
|
return content;
|
|
79
93
|
};
|
|
94
|
+
const renderFormDefaultContent = () => {
|
|
95
|
+
return createVNode("div", {
|
|
96
|
+
"class": [ns.b("form-default-content"), ns.is("clear", !!emoji.value)]
|
|
97
|
+
}, [emoji.value ? emoji.value : "-"]);
|
|
98
|
+
};
|
|
80
99
|
const renderReference = () => {
|
|
81
|
-
let _slot;
|
|
82
100
|
return createVNode(resolveComponent("el-button"), {
|
|
83
101
|
"class": [ns.e("button"), ns.is("clear", !!emoji.value)]
|
|
84
|
-
},
|
|
85
|
-
default: () => [
|
|
102
|
+
}, {
|
|
103
|
+
default: () => [showFormDefaultContent.value && renderFormDefaultContent(), renderButtonContent()]
|
|
86
104
|
});
|
|
87
105
|
};
|
|
88
106
|
return {
|
|
@@ -90,6 +108,8 @@ const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
|
|
|
90
108
|
c,
|
|
91
109
|
emoji,
|
|
92
110
|
visible,
|
|
111
|
+
emojiRef,
|
|
112
|
+
showFormDefaultContent,
|
|
93
113
|
onSelect,
|
|
94
114
|
onAddEmoji,
|
|
95
115
|
onClearEmoji,
|
|
@@ -98,7 +118,8 @@ const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
|
|
|
98
118
|
},
|
|
99
119
|
render() {
|
|
100
120
|
return createVNode("div", {
|
|
101
|
-
"
|
|
121
|
+
"ref": "emojiRef",
|
|
122
|
+
"class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : "", this.ns.is("active", this.visible), this.ns.is("show-default", this.showFormDefaultContent)]
|
|
102
123
|
}, [createVNode(resolveComponent("el-popover"), {
|
|
103
124
|
"trigger": "click",
|
|
104
125
|
"placement": "bottom-start",
|
|
@@ -2,7 +2,7 @@ import { ref, watch, computed, resolveComponent, createVNode, defineComponent }
|
|
|
2
2
|
import { getSpanProps, useNamespace, useCodeListListen, useFocusAndBlur } from '@ibiz-template/vue3-util';
|
|
3
3
|
import './span.css';
|
|
4
4
|
import { isNil } from 'ramda';
|
|
5
|
-
import { DataTypes } from '@ibiz-template/core';
|
|
5
|
+
import { DataTypes, isBase64, base64ToStr } from '@ibiz-template/core';
|
|
6
6
|
import dayjs from 'dayjs';
|
|
7
7
|
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
8
8
|
|
|
@@ -74,6 +74,8 @@ const IBizSpan = /* @__PURE__ */ defineComponent({
|
|
|
74
74
|
text.value = "".concat(newVal);
|
|
75
75
|
ibiz.log.error("".concat(newVal, " \u503C\u683C\u5F0F\u5316\u9519\u8BEF"));
|
|
76
76
|
}
|
|
77
|
+
} else if (Number.isNaN(Number(newVal)) && isBase64("".concat(newVal))) {
|
|
78
|
+
text.value = base64ToStr("".concat(newVal));
|
|
77
79
|
} else {
|
|
78
80
|
text.value = "".concat(newVal);
|
|
79
81
|
}
|
|
@@ -94,15 +94,6 @@ const IBizInputNumber = /* @__PURE__ */ defineComponent({
|
|
|
94
94
|
emit("focus", e);
|
|
95
95
|
setEditable(true);
|
|
96
96
|
};
|
|
97
|
-
const onBlur = (e) => {
|
|
98
|
-
emit("blur", e);
|
|
99
|
-
setEditable(false);
|
|
100
|
-
};
|
|
101
|
-
const handleKeyUp = (e) => {
|
|
102
|
-
if (e && e.code === "Enter") {
|
|
103
|
-
emit("enter", e);
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
97
|
const debounce = (func, wait) => {
|
|
107
98
|
let timeout;
|
|
108
99
|
return (...args) => {
|
|
@@ -117,9 +108,20 @@ const IBizInputNumber = /* @__PURE__ */ defineComponent({
|
|
|
117
108
|
}
|
|
118
109
|
emit("change", data);
|
|
119
110
|
}, 300);
|
|
111
|
+
const onBlur = (e) => {
|
|
112
|
+
emit("blur", e);
|
|
113
|
+
if (enablethousands.value) {
|
|
114
|
+
debouncedOnInput(currentVal.value);
|
|
115
|
+
}
|
|
116
|
+
setEditable(false);
|
|
117
|
+
};
|
|
118
|
+
const handleKeyUp = (e) => {
|
|
119
|
+
if (e && e.code === "Enter") {
|
|
120
|
+
emit("enter", e);
|
|
121
|
+
}
|
|
122
|
+
};
|
|
120
123
|
const onInput = (value) => {
|
|
121
124
|
currentVal.value = value;
|
|
122
|
-
debouncedOnInput(value);
|
|
123
125
|
};
|
|
124
126
|
return {
|
|
125
127
|
ns,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { isVNode, ref, computed, watch, onUnmounted, resolveComponent, createVNode, mergeProps, defineComponent } from 'vue';
|
|
2
2
|
import { getInputProps, getEditorEmits, useNamespace, useCodeListListen } from '@ibiz-template/vue3-util';
|
|
3
|
+
import { isBase64, base64ToStr } from '@ibiz-template/core';
|
|
3
4
|
import { createUUID } from 'qx-util';
|
|
4
5
|
import './input.css';
|
|
5
6
|
|
|
@@ -57,6 +58,8 @@ const IBizInput = /* @__PURE__ */ defineComponent({
|
|
|
57
58
|
if (newVal !== oldVal) {
|
|
58
59
|
if (newVal == null) {
|
|
59
60
|
currentVal.value = "";
|
|
61
|
+
} else if (Number.isNaN(Number(newVal)) && isBase64("".concat(newVal))) {
|
|
62
|
+
currentVal.value = base64ToStr("".concat(newVal));
|
|
60
63
|
} else {
|
|
61
64
|
currentVal.value = newVal.toString();
|
|
62
65
|
}
|
|
@@ -165,7 +165,7 @@ const IBizSearchCondEdit = /* @__PURE__ */ defineComponent({
|
|
|
165
165
|
}, this.$attrs), null), createVNode(resolveComponent("el-button"), {
|
|
166
166
|
"ref": "filterButtonRef",
|
|
167
167
|
"type": "primary",
|
|
168
|
-
"title": ibiz.i18n.t("app.edit"),
|
|
168
|
+
"title": ibiz.env.enableTitle ? ibiz.i18n.t("app.edit") : void 0,
|
|
169
169
|
"class": this.ns.b("filter"),
|
|
170
170
|
"onClick": () => this.triggerFilter()
|
|
171
171
|
}, {
|
package/es/locale/en/index.d.ts
CHANGED
package/es/locale/en/index.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { PanelItemController } from '@ibiz-template/runtime';
|
|
2
2
|
import { isNil, reject } from 'ramda';
|
|
3
|
+
import { nextTick } from 'vue';
|
|
3
4
|
import { NavTabsState } from './nav-tabs.state.mjs';
|
|
4
5
|
|
|
5
6
|
"use strict";
|
|
@@ -130,10 +131,10 @@ class NavTabsController extends PanelItemController {
|
|
|
130
131
|
};
|
|
131
132
|
this.state.tabItems.push(tempItem);
|
|
132
133
|
this.state.activeTab = tempItem.key;
|
|
133
|
-
|
|
134
|
+
nextTick(() => {
|
|
134
135
|
this.state.tabItems.pop();
|
|
135
136
|
this.state.activeTab = this.state.tabItems[this.state.tabItems.length - 1].key;
|
|
136
|
-
}
|
|
137
|
+
});
|
|
137
138
|
}
|
|
138
139
|
}
|
|
139
140
|
|
|
@@ -101,7 +101,7 @@ const PanelButton = /* @__PURE__ */ defineComponent({
|
|
|
101
101
|
}, [createVNode(resolveComponent("el-button"), {
|
|
102
102
|
"type": this.buttonType,
|
|
103
103
|
"text": this.isText,
|
|
104
|
-
"title": this.tooltip,
|
|
104
|
+
"title": ibiz.env.enableTitle ? this.tooltip : void 0,
|
|
105
105
|
"disabled": this.state.disabled,
|
|
106
106
|
"loading": this.state.loading,
|
|
107
107
|
"onClick": this.handleButtonClick
|
|
@@ -61,9 +61,10 @@ class EditViewEngine extends ViewEngineBase {
|
|
|
61
61
|
}
|
|
62
62
|
this.view.slotProps.toolbar.manualCalcButtonState = true;
|
|
63
63
|
modal.hooks.shouldDismiss.tapPromise(async (context) => {
|
|
64
|
+
var _a, _b;
|
|
64
65
|
const uiDomain = ibiz.uiDomainManager.get(this.view.context.srfsessionid);
|
|
65
|
-
const isChange = (this.form.state.modified || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
|
|
66
|
-
if (isChange && this.form.model.enableAutoSave && !uiDomain.dataModification) {
|
|
66
|
+
const isChange = (((_a = this.form) == null ? void 0 : _a.state.modified) || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
|
|
67
|
+
if (isChange && ((_b = this.form) == null ? void 0 : _b.model.enableAutoSave) && !uiDomain.dataModification) {
|
|
67
68
|
await this.form.immediateAutoSave();
|
|
68
69
|
} else if (isChange && context.allowClose == null) {
|
|
69
70
|
const isAllow = await ibiz.confirm.error({
|
|
@@ -30,8 +30,9 @@ class OptViewEngine extends ViewEngineBase {
|
|
|
30
30
|
}
|
|
31
31
|
this.view.slotProps.toolbar.manualCalcButtonState = true;
|
|
32
32
|
modal.hooks.shouldDismiss.tapPromise(async (context) => {
|
|
33
|
+
var _a;
|
|
33
34
|
const uiDomain = ibiz.uiDomainManager.get(this.view.context.srfsessionid);
|
|
34
|
-
const isChange = (this.form.state.modified || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
|
|
35
|
+
const isChange = (((_a = this.form) == null ? void 0 : _a.state.modified) || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
|
|
35
36
|
if (isChange && context.allowClose == null) {
|
|
36
37
|
const isAllow = await ibiz.confirm.error({
|
|
37
38
|
title: ibiz.i18n.t("viewEngine.closeRemind"),
|
|
@@ -39,6 +39,7 @@ class PickupTreeViewEngine extends TreeViewEngine {
|
|
|
39
39
|
this.view.slotProps.tree = {};
|
|
40
40
|
}
|
|
41
41
|
this.view.slotProps.tree.singleSelect = this.view.state.singleSelect;
|
|
42
|
+
this.view.slotProps.tree.checkStrictly = this.view.state.checkStrictly;
|
|
42
43
|
if (this.view.state.selectedData) {
|
|
43
44
|
this.selectData = this.view.state.selectedData.map((item) => {
|
|
44
45
|
return {
|
|
@@ -6,7 +6,8 @@ const envMap = /* @__PURE__ */ new Map([
|
|
|
6
6
|
["baseUrl", "BaseUrl"],
|
|
7
7
|
["remoteModelUrl", "remoteDynaPath"],
|
|
8
8
|
["dcSystem", "mockDcSystemId"],
|
|
9
|
-
["enablePermission", "enablePermissionValid"]
|
|
9
|
+
["enablePermission", "enablePermissionValid"],
|
|
10
|
+
["enableTitle", "enableTitle"]
|
|
10
11
|
]);
|
|
11
12
|
async function attachEnvironmentConfig() {
|
|
12
13
|
const env = window.Environment;
|
|
@@ -106,7 +106,7 @@ const IBizActionToolbar = /* @__PURE__ */ vue.defineComponent({
|
|
|
106
106
|
"text": true,
|
|
107
107
|
"size": "small",
|
|
108
108
|
"onClick": (e) => this.handleClick(detail, e),
|
|
109
|
-
"title": detail.tooltip,
|
|
109
|
+
"title": ibiz.env.enableTitle ? detail.tooltip : void 0,
|
|
110
110
|
"disabled": this.actionsState[detail.id].disabled,
|
|
111
111
|
"class": this.calcActionItemClass(detail)
|
|
112
112
|
}, {
|
|
@@ -126,7 +126,7 @@ const CustomTheme = /* @__PURE__ */ vue.defineComponent({
|
|
|
126
126
|
}, [c.predefineType.map((item) => {
|
|
127
127
|
return vue.createVNode(vue.resolveComponent("el-button"), {
|
|
128
128
|
"color": item.color,
|
|
129
|
-
"title": ibiz.i18n.t("control.common.customTheme.".concat(item.labelLang)),
|
|
129
|
+
"title": ibiz.env.enableTitle ? ibiz.i18n.t("control.common.customTheme.".concat(item.labelLang)) : void 0,
|
|
130
130
|
"onClick": () => {
|
|
131
131
|
handleThemeChange(item.codeName);
|
|
132
132
|
}
|
|
@@ -415,7 +415,10 @@ const DataImport2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
415
415
|
}, [vue.createVNode(vue.resolveComponent("el-button"), {
|
|
416
416
|
"onClick": this.onButtonImportClick,
|
|
417
417
|
"disabled": !this.selectValues.join(""),
|
|
418
|
-
"title":
|
|
418
|
+
"title": (
|
|
419
|
+
// eslint-disable-next-line no-nested-ternary
|
|
420
|
+
ibiz.env.enableTitle ? !this.selectValues.join("") ? ibiz.i18n.t("component.dataImport2.selectProperties") : "" : void 0
|
|
421
|
+
)
|
|
419
422
|
}, _isSlot(_slot2 = ibiz.i18n.t("component.dataImport2.import")) ? _slot2 : {
|
|
420
423
|
default: () => [_slot2]
|
|
421
424
|
})]) : ""])])])]), vue.createVNode(vue.resolveComponent("data-import2-table"), {
|
|
@@ -141,7 +141,7 @@ const ContextMenuControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
141
141
|
"text": true,
|
|
142
142
|
"size": "small",
|
|
143
143
|
"onClick": (e) => this.handleClick(detail, e),
|
|
144
|
-
"title": detail.tooltip,
|
|
144
|
+
"title": ibiz.env.enableTitle ? detail.tooltip : void 0,
|
|
145
145
|
"disabled": this.c.state.buttonsState[detail.id].disabled,
|
|
146
146
|
"class": this.calcActionItemClass(detail)
|
|
147
147
|
}, {
|
|
@@ -167,7 +167,7 @@ const ContextMenuControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
167
167
|
"text": true,
|
|
168
168
|
"size": "small",
|
|
169
169
|
"onClick": (e) => this.handleClick(detail, e),
|
|
170
|
-
"title": detail.tooltip,
|
|
170
|
+
"title": ibiz.env.enableTitle ? detail.tooltip : void 0,
|
|
171
171
|
"disabled": this.c.state.buttonsState[detail.id].disabled,
|
|
172
172
|
"class": this.calcActionItemClass(detail)
|
|
173
173
|
}, {
|
|
@@ -134,7 +134,7 @@ const CustomDashboardContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
134
134
|
"class": this.ns.b("build-btn")
|
|
135
135
|
}, [this.showTypeDir ? vue.createVNode("div", null, [vue.createVNode(vue.resolveComponent("el-button"), {
|
|
136
136
|
"class": this.ns.b("deisgn-btn"),
|
|
137
|
-
"title": ibiz.i18n.t("control.dashboard.customDashboardContainer.portalCustomPrompt"),
|
|
137
|
+
"title": ibiz.env.enableTitle ? ibiz.i18n.t("control.dashboard.customDashboardContainer.portalCustomPrompt") : void 0,
|
|
138
138
|
"onClick": this.openDesign
|
|
139
139
|
}, {
|
|
140
140
|
default: () => [vue.createVNode("ion-icon", {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var vue = require('vue');
|
|
4
|
-
var namespace = require('../../node_modules/.pnpm/@ibiz-template_core@0.7.
|
|
4
|
+
var namespace = require('../../node_modules/.pnpm/@ibiz-template_core@0.7.27_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');
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
7
|
function useAppDRTab(c, controlRef, counterData) {
|
|
@@ -36,9 +36,10 @@ function useAppDRTab(c, controlRef, counterData) {
|
|
|
36
36
|
const totalDom = controlRef.value.$el;
|
|
37
37
|
const totalWidth = totalDom.offsetWidth;
|
|
38
38
|
let accumulatedWidth = 0;
|
|
39
|
-
|
|
39
|
+
visibleItems.value = [];
|
|
40
|
+
moreItems.value = [];
|
|
40
41
|
drTabPages.forEach((tab, index) => {
|
|
41
|
-
if (
|
|
42
|
+
if (!tab.hidden) {
|
|
42
43
|
const caption = tab.caption || "";
|
|
43
44
|
const counterNum = tab.counterId ? counterData[tab.counterId] : void 0;
|
|
44
45
|
const fontSize = "var(--".concat(namespace.defaultNamespace, "-font-size-regular)");
|
|
@@ -66,17 +67,12 @@ function useAppDRTab(c, controlRef, counterData) {
|
|
|
66
67
|
moreStyle
|
|
67
68
|
);
|
|
68
69
|
if (accumulatedWidth + moreWidth > totalWidth) {
|
|
69
|
-
|
|
70
|
+
moreItems.value.push(tab);
|
|
71
|
+
} else {
|
|
72
|
+
visibleItems.value.push(tab);
|
|
70
73
|
}
|
|
71
74
|
}
|
|
72
75
|
});
|
|
73
|
-
if (splitIndex !== -1) {
|
|
74
|
-
visibleItems.value = drTabPages.slice(0, splitIndex);
|
|
75
|
-
moreItems.value = drTabPages.slice(splitIndex);
|
|
76
|
-
} else {
|
|
77
|
-
visibleItems.value = drTabPages;
|
|
78
|
-
moreItems.value = [];
|
|
79
|
-
}
|
|
80
76
|
}
|
|
81
77
|
const calcDrTabWidth = () => {
|
|
82
78
|
if (window.ResizeObserver) {
|
|
@@ -48,7 +48,7 @@ const FormButton = /* @__PURE__ */ vue.defineComponent({
|
|
|
48
48
|
"onClick": this.controller.onClick.bind(this.controller),
|
|
49
49
|
"loading": this.controller.state.loading,
|
|
50
50
|
"disabled": this.controller.state.disabled,
|
|
51
|
-
"title": this.modelData.tooltip
|
|
51
|
+
"title": ibiz.env.enableTitle ? this.modelData.tooltip : void 0
|
|
52
52
|
}, {
|
|
53
53
|
default: () => [vue.createVNode("div", {
|
|
54
54
|
"class": this.ns.b("content")
|
|
@@ -28,10 +28,23 @@ const IBizFormItemContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
28
28
|
labelWidth: {
|
|
29
29
|
type: Number,
|
|
30
30
|
default: 130
|
|
31
|
+
},
|
|
32
|
+
enableInputTip: {
|
|
33
|
+
type: Boolean
|
|
34
|
+
},
|
|
35
|
+
inputTip: {
|
|
36
|
+
type: String
|
|
37
|
+
},
|
|
38
|
+
inputTipUrl: {
|
|
39
|
+
type: String
|
|
40
|
+
},
|
|
41
|
+
inputTipClosable: {
|
|
42
|
+
type: Boolean
|
|
31
43
|
}
|
|
32
44
|
},
|
|
33
45
|
setup(props) {
|
|
34
46
|
const ns = vue3Util.useNamespace("form-item-container");
|
|
47
|
+
const tooltip = vue.ref();
|
|
35
48
|
const cssVars = vue.computed(() => {
|
|
36
49
|
if (props.labelWidth !== 130) {
|
|
37
50
|
return ns.cssVarBlock({
|
|
@@ -40,17 +53,49 @@ const IBizFormItemContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
40
53
|
}
|
|
41
54
|
return {};
|
|
42
55
|
});
|
|
56
|
+
const hiddenTooltip = () => {
|
|
57
|
+
if (tooltip.value) {
|
|
58
|
+
tooltip.value.hide();
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
const renderLabel = () => {
|
|
62
|
+
const classList = [ns.e("label"), ...props.labelClass || []];
|
|
63
|
+
if (props.enableInputTip) {
|
|
64
|
+
return vue.createVNode(vue.resolveComponent("el-tooltip"), {
|
|
65
|
+
"ref": "tooltip"
|
|
66
|
+
}, {
|
|
67
|
+
default: () => {
|
|
68
|
+
return vue.createVNode("div", {
|
|
69
|
+
"class": classList
|
|
70
|
+
}, [props.label]);
|
|
71
|
+
},
|
|
72
|
+
content: () => {
|
|
73
|
+
return vue.createVNode("div", {
|
|
74
|
+
"class": ns.em("label", "tooltip")
|
|
75
|
+
}, [props.inputTip || props.label, props.inputTipUrl && vue.createVNode("a", {
|
|
76
|
+
"href": props.inputTipUrl,
|
|
77
|
+
"target": "_blank"
|
|
78
|
+
}, [ibiz.i18n.t("component.formItemContainer.more")]), props.inputTipClosable && vue.createVNode("ion-icon", {
|
|
79
|
+
"name": "close-outline",
|
|
80
|
+
"onClick": hiddenTooltip
|
|
81
|
+
}, null)]);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
return vue.createVNode("div", {
|
|
86
|
+
"class": classList,
|
|
87
|
+
"title": props.label
|
|
88
|
+
}, [props.label]);
|
|
89
|
+
};
|
|
43
90
|
return {
|
|
44
91
|
ns,
|
|
45
|
-
cssVars
|
|
92
|
+
cssVars,
|
|
93
|
+
tooltip,
|
|
94
|
+
renderLabel
|
|
46
95
|
};
|
|
47
96
|
},
|
|
48
97
|
render() {
|
|
49
98
|
var _a, _b;
|
|
50
|
-
const label = vue.createVNode("div", {
|
|
51
|
-
"class": [this.ns.e("label"), ...this.labelClass || []],
|
|
52
|
-
"title": this.label
|
|
53
|
-
}, [this.label]);
|
|
54
99
|
const content = vue.createVNode("div", {
|
|
55
100
|
"class": [this.ns.e("content"), this.ns.em("content", "label-".concat(this.labelPos.toLowerCase()))]
|
|
56
101
|
}, [vue.createVNode("div", {
|
|
@@ -62,7 +107,7 @@ const IBizFormItemContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
62
107
|
return vue.createVNode("div", {
|
|
63
108
|
"class": [this.ns.b(), this.ns.m(this.labelPos.toLowerCase()), this.ns.is("required", this.required), this.ns.is("error", !!this.error)],
|
|
64
109
|
"style": this.cssVars
|
|
65
|
-
}, [this.labelPos === "LEFT" || this.labelPos === "TOP" ?
|
|
110
|
+
}, [this.labelPos === "LEFT" || this.labelPos === "TOP" ? this.renderLabel() : null, content, this.labelPos === "RIGHT" || this.labelPos === "BOTTOM" ? this.renderLabel() : null]);
|
|
66
111
|
}
|
|
67
112
|
});
|
|
68
113
|
|